Homemade servodriver and servomotor -czyli Polak potrafi ;-)

Dyskusje dotyczące serwonapędów i napędów serwokrokowych.

Autor tematu
ksitau
Sympatyk forum poziom 2 (min. 50)
Sympatyk forum poziom 2 (min. 50)
Posty w temacie: 3
Posty: 66
Rejestracja: 11 mar 2005, 21:31
Lokalizacja: Warszawa

Homemade servodriver and servomotor -czyli Polak potrafi ;-)

#1

Post napisał: ksitau » 18 lut 2006, 15:49

Witam serdecznie,

Jakiś czas temu postanowiłem opracować i napisać program do sterowania silnikami analogowymi przy użyciu 2 linii: step i direction. Niestety nie miałem możliwości go jeszcze przetestować...

Jeśli ktoś jest chętny wykonać odpowiednią elektronikę, i sprawdzić jak program się sprawuje i pomóc w usunięciu potencjalnych błędów to proszę o kontakt, bądź rozwiążmy problem na forum...

Pozdrawiam,
Daniel

00000000000000000000000

i co, żadnych pytań? wszyscy wiedzą jak to działa? :-)
Załączniki
Sterownik do servo.tar.gz
elektronika
(32.23 KiB) Pobrany 763 razy

[Rozszerzenie c zostało wyłączone i nie będzie dłużej wyświetlane.]

tarcza - wzor ostateczny.JPG
Analogowa tarcza enkodera (dwa pierścienie, jeden analogowy, mówiący o aktualnej pozycji, a drugi "cyfrowy," mówiący o aktualnej połówce...)
tarcza - wzor ostateczny.JPG (15.27 KiB) Przejrzano 4675 razy



Tagi:

Awatar użytkownika

chomikaaa
Specjalista poziom 3 (min. 600)
Specjalista poziom 3 (min. 600)
Posty w temacie: 1
Posty: 988
Rejestracja: 19 cze 2004, 23:22
Lokalizacja: lodz

#2

Post napisał: chomikaaa » 24 mar 2006, 07:44

napisz cos wiecej zapodaj jakies zdjecia


Adalber
Specjalista poziom 3 (min. 600)
Specjalista poziom 3 (min. 600)
Posty w temacie: 2
Posty: 687
Rejestracja: 10 lip 2005, 15:13
Lokalizacja: Polska

#3

Post napisał: Adalber » 24 mar 2006, 08:55

Schemat to nic odkrywczego ,natomiast zasada działania enkodera pozostaje tajemnicą jaką to ma rozdzielczość ? z rysunku wynikałoby że 90stopni.


Autor tematu
ksitau
Sympatyk forum poziom 2 (min. 50)
Sympatyk forum poziom 2 (min. 50)
Posty w temacie: 3
Posty: 66
Rejestracja: 11 mar 2005, 21:31
Lokalizacja: Warszawa

#4

Post napisał: ksitau » 15 kwie 2006, 11:05

Enkoder ma rozdzielczość ograniczoną praktycznie tylko rozdzielczością przetwornika A/D (pomnożoną przez 2 - jak zauważycie są dwa pierścienie). W tym przypadku w zależności od jakości wydrukowanej tarczy rozdzielczość może sięgnąć ok 8000 kroków na obrót. Rysunek tarczy jest tylko rysunkiem poglądowym, aby to w pełni mogło zadziałać potrzebne będzie wygenerowanie mapy bitowej o odpowiednio dużej rozdzielczości z liniowym przejściem od białego, po przez odcień szarości do czarnego. Drugi pierścień w założeniu ma być w połowie biały i w połowie czarny, bo ma pokazywać aktualną połówkę tarczy.

Całość działa w ten sposób że kilkadziesiąt do kilkuset tysięcy razy na sekundę (w zależności od zastosowanego mikrokontrolera) próbkuję odczyt z obu pierścieni i na podstawie "poziomu jasności" z jednego pierścienia i "bieżącej połówki" z drugiego pierścienia wyliczam aktualne położenie enkodera. Zaletą tego rozwiązania jest jego stosunkowa prostota i możliwości pomiaru nawet do kilkudziesięciu tysięcy obrotów na sekundę i kontroler cały czas będzie wiedział "gdzie jest".

Zdjęć tego rozwiązania nie posiadam, przyczyna jest taka że po prostu na opracowaniu założeń, napisaniu kodu, jego kompilacji i symulacji na komputerze zakończyło się. Program nie został jeszcze przetestowany w praktyce (choć jest spora szansa że nie ma błędów i całość mogłaby ruszyć od "pierwszego uruchomienia" ;-) ).


upadły_mnich
ELITA FORUM (min. 1000)
ELITA FORUM (min. 1000)
Posty w temacie: 1
Posty: 1546
Rejestracja: 09 gru 2005, 11:52
Lokalizacja: Lublin

#5

Post napisał: upadły_mnich » 15 kwie 2006, 13:02

rozdzielczość teoretyczna to chyba jednak nie wszystko. Wydaje mi się, że przy analogowej metodzie określania położenia układ jest podatny na dodatkowe błędy i wymaga zdecydowanie lepszych przetworników.
Np. wystarczy drobna zmiana napięcia zasilania (choćby ułamek %) czy zmiana temperatury o kilka stopni itp. i już wkradają się błędy, których nie ma przy zliczaniu cyfrowym


mechanik
Czytelnik forum poziom 1 (min. 10)
Czytelnik forum poziom 1 (min. 10)
Posty w temacie: 1
Posty: 10
Rejestracja: 15 kwie 2006, 16:30
Lokalizacja: jasło

#6

Post napisał: mechanik » 15 kwie 2006, 16:42

przepraszam że przeszkadzam muwicie coś o sterowaniu analogowym bo mam ochtę coś takiego wykona ale nie wiem jak do tego się zabr.
posiadam silniki bardzo mocne pradu stałego i zasilacze tyrystorowe sterowane sygnałem analogowym +/- 10 v.
wszystko chciałbym sterowa parogramem np: MACH2 lub innm.
proszę o pomoc

[ Dodano: 2006-04-15, 16:43 ]
przepraszam że przeszkadzam muwicie coś o sterowaniu analogowym bo mam ochtę coś takiego wykona ale nie wiem jak do tego się zabr.
posiadam silniki bardzo mocne pradu stałego i zasilacze tyrystorowe sterowane sygnałem analogowym +/- 10 v.
wszystko chciałbym sterowa parogramem np: MACH2 lub innm.
proszę o wsparcie
ORDYNATOR


Adalber
Specjalista poziom 3 (min. 600)
Specjalista poziom 3 (min. 600)
Posty w temacie: 2
Posty: 687
Rejestracja: 10 lip 2005, 15:13
Lokalizacja: Polska

#7

Post napisał: Adalber » 15 kwie 2006, 19:18

Teoretycznie to wszystko będzie działać ,ale podaj przykład takiego przetwornika reagującego na światło odbite od tarczy o 4000 poziomach szarości .Jaką to musi mieć optykę i ile światła jest potrzebne aby przetwornik był taki szybki (wielkie obroty).Czym to będziesz oświetlał laserem ?


Autor tematu
ksitau
Sympatyk forum poziom 2 (min. 50)
Sympatyk forum poziom 2 (min. 50)
Posty w temacie: 3
Posty: 66
Rejestracja: 11 mar 2005, 21:31
Lokalizacja: Warszawa

#8

Post napisał: ksitau » 15 kwie 2006, 22:40

Nie, dlaczego od razu laser? Wystarczy kawałek szczeliny, a odcieni szarości mogłoby nawet być tylko 256 (szczelina byłaby wtedy szerokości jednego odcienia a suma światła padającego na fotodetektor byłaby średnią ważoną (proporcjonalnie) 2 sąsiadującyh odcieni. Jak chodzi o prędkość takiego fotodetektora (bo ufam że sprawdziliście już możliwości ad814) to dziś za parę groszy można kupić fotodiodę, która potrafi pracować w znacznie wyższych pasmach aniżeli 100kHz.
Co do wszystkich uwaga na temat zmian napięcia, wpływu indukcji i innych elementów zgadzam się. Jednak podstawową zaletą tego rozwiązania nie jest jego teoretyczna rozdzielczość tylko jego zdolność pomiaru przy bardzo dużych prędkościach obrotowych. Zatem po osadzeniu enkodera bezpośrednio na osi silnika DC o dużej liczbie obrotów o odpowiednim przełożeniu jego precyzja tak na prawdę zwiększa się (tyle razy ile wynosi przełożenie). Rozwiązaniem większości bolączek związanych z błedami pomiarów przy pracy w trudnych warunkach są zwykłe światłowody - ale to rozwiązanie dla nieco bardziej ambitnych i zasobnych. Dla kogoś komu zależy realnie na ok 400 - 800 kroków na obrót, dużych mocach i posuwach urządzeń to moje rozwiązanie w zupełności zaspokoi takie potrzeby bez żadnych dodatkowych komplikacji...

ODPOWIEDZ Poprzedni tematNastępny temat

Wróć do „Serwomotory / Serwonapędy / Napędy Serwokrokowe”