Sterownik serwa

Rozmowy na temat układów elektronicznych sterowania obrabiarek CNC

Autor tematu
Mariusz H.
Specjalista poziom 1 (min. 100)
Specjalista poziom 1 (min. 100)
Posty w temacie: 5
Posty: 241
Rejestracja: 15 cze 2004, 18:59
Lokalizacja: KrakĂłw/Bia?ystok

#11

Post napisał: Mariusz H. » 24 cze 2004, 14:03

Pomysł na wykonanie domowe enkodera.
A gdyby wykożystać wentylatorek z takiego silnika. Ma określoną ilość łopatek równomiernie rozmieszczonych, do tego prosta optyka (ze starej myszy), na początek chyba by wystarczyło. Kwestja tylko jak dokładne by to mogło być. chociarz przy przełożeniu powiedzmy 1:10 i około 30 łopatkach na wentylatorku to mamy około 300 kroków na obrót (więc prawie tyle co silnik krokowy)
Co do momentu to:
silnik krokowy - ok 1Nm
w przypadku serwa opisywanego przez poprzednika:
moment silnika ok 0,5 Nm po przełożeniu daje nam ok 5Nm. a cena to około 10% tego samego typu silnika krokowego.
Prędkość silnika krokowego ok 400ob/min
w przypadku serwa to ok 800-1000 ob/min (bez żadnych kombinacji i wymyślnego sterowania)
Po za tym można zastosować takie serwo jako wrzeciono i dobierać sobie dowolnie prędkość obrotową wrzeciona.



Tagi:


rchobby
Specjalista poziom 2 (min. 300)
Specjalista poziom 2 (min. 300)
Posty w temacie: 6
Posty: 441
Rejestracja: 31 maja 2004, 07:01
Lokalizacja: Białystok
Kontakt:

#12

Post napisał: rchobby » 24 cze 2004, 14:37

Enkoder musimy umieścić po stronie wyjścia a nie wejścia. Sprawdzamy obrót śruby a nie wału silnika. Pamiętaj że optyka ma spore opóźnienia. Enkodery pracują w okolicach 300-900RPM, czyli nie nadają się na wał silnika (6000-12000RPM). W swoim wywodzie z rozpędu też popełniłem ten błąd i umieściłem enkoder na wale. Ostatecznie interesuje nas obrót sruby i precyzyjny pomiar przesuwu.


damik
Znawca tematu (min. 80)
Znawca tematu (min. 80)
Posty w temacie: 3
Posty: 92
Rejestracja: 04 cze 2004, 14:09
Lokalizacja: ?l?sk

#13

Post napisał: damik » 24 cze 2004, 14:41

rchobby pisze:Do sprawdzenia koncepcji procesor nie ma znaczenia, dobry jest AVR bo ma programowanie PWM, 2313 lub attiny czy atmega. Może być tani 51 z flesh'em małe 2/4051 poprzez 89s8252 do nowości Atmela. Największym wyzwaniem będzie detekcja kierunku - optymalny i szybki algorytm oraz sterowanie silnikiem - kształt napięcia przy starcie i stopie.
Doszedłem do takich wniosków jeśli chodzi o silniki DC :

- sterowanie kirunkiem obrotów poprzez typowy tranzystorowy mostek H
- detekcja kierunku raczej chyba nie będzie potrzebna, bo ją zadajemy sami ...
- co do PWM, może nie być koniecze jeśli zastosujemy przekładnię i silnik zasterujemy pełnym napięciem...
- istotne może okazać się dorobienie układu hamowania np. poprzez zwieranie silnika poprzez klucz na tranzystorze, (po uprzednim odłączeniu sterowania oczywiście :wink: ) by nam się nie przekręcił siłą bezwładności.
- może trzeba jeszcze będzie dobrać rozdzielczość enkodera do zastosowanej przekładni i komutatora silnika...
- start i stop musi być zsynchronizowany z wejściem dla kroku w sterowniku i nie powinien być buforowany bo możemy mieć problemy z synchronizacją innych osi w maszynie...
Pozdrawiam
Damik


rchobby
Specjalista poziom 2 (min. 300)
Specjalista poziom 2 (min. 300)
Posty w temacie: 6
Posty: 441
Rejestracja: 31 maja 2004, 07:01
Lokalizacja: Białystok
Kontakt:

#14

Post napisał: rchobby » 24 cze 2004, 15:18

Damik ... Detekcja kierunku czujnika-enkodera. Masz rację silnik należy do nas. Czy PWM? W jakiś sposób trzeba zrobić start i stop, silnik startuje od zera i warto pomyśleć o tzw. soft start. Pamiętaj że podając Umax na silnik DC w spoczynku pracujesz w zwarciu. Podobnie stop, jak masz już z enkodera informacje o końcu drogi stopujesz. Hamulec, jeszcze nie mam zdania. Weź również pod uwagę że impulsy będą szły na bieżąco, czyli jeżeli jest następny bez sensu zatrzymywać silnik. Można również wprowadzić małe opóźnienie np. przy uruchomieniu programu najpierw przeczytać 10 sygnałów a dopiero potem uruchomić silnik, wiesz co robić kilka kroków naprzód. Trochę główkowania będzie oj będzie. Ale na początek tylko sterowanie 1 silnika, ukłony dla Mariusza, czy można zrobić serwo-wrzeciono. Jak wynik będzie przyszłościowy, to wtedy dalej.


Autor tematu
Mariusz H.
Specjalista poziom 1 (min. 100)
Specjalista poziom 1 (min. 100)
Posty w temacie: 5
Posty: 241
Rejestracja: 15 cze 2004, 18:59
Lokalizacja: KrakĂłw/Bia?ystok

#15

Post napisał: Mariusz H. » 24 cze 2004, 15:40

Optyka jest za wolna ??
Przecież w standardowych enkoderach albo w serwach jest i jest wystarczająco szybka, a obroty na enkoderach w serwach dochodzą nawet do 15000ob/min


damik
Znawca tematu (min. 80)
Znawca tematu (min. 80)
Posty w temacie: 3
Posty: 92
Rejestracja: 04 cze 2004, 14:09
Lokalizacja: ?l?sk

#16

Post napisał: damik » 24 cze 2004, 15:41

rchobby pisze:Można również wprowadzić małe opóźnienie np. przy uruchomieniu programu najpierw przeczytać 10 sygnałów a dopiero potem uruchomić silnik, wiesz co robić kilka kroków naprzód. Trochę główkowania będzie oj będzie. Ale na początek tylko sterowanie 1 silnika, ukłony dla Mariusza, czy można zrobić serwo-wrzeciono. Jak wynik będzie przyszłościowy, to wtedy dalej.
To będzie skomplikowane buforowanie sygnałów bo , musielibyśmy zsynchronizować wszystkie takty dla wszystkich osi oraz pamiętać czasy po jakich następują po sobie impulsy skoków i kierunków dla wszystkich sterowników.
bo jeśli tego nie zrobimy .... ojjjj koła nie będą kołami a i linie ukośne mogą nam się rozlecieć ... :wink:

Co do wrzeciona , to nie jestem pewien czy tu chodzi o typowe serwo , tu raczej przydałaby się jakaś logiczna stabilizacja obrotów ze sprzężeniem zwrotnym, gdzie zadawało by sie prędkość obrotów ... tylko że dla silników DC i AC będzie to nieco inna koncepcja ...
Pozdrawiam
Damik

Awatar użytkownika

ottop
Specjalista poziom 2 (min. 300)
Specjalista poziom 2 (min. 300)
Posty w temacie: 3
Posty: 346
Rejestracja: 07 cze 2004, 13:11
Lokalizacja: Bielsko-Biała
Kontakt:

#17

Post napisał: ottop » 25 cze 2004, 23:19

Wydaje mi się, że buforowanie jest w zupełności zbędne, przecież każdy ruch będziemy rozpoczynać z pewnym określonym przyśpieszeniem i kończyć z pewnym hamowaniem. W takim przypadku można by zrobić tak: sterownik otrzymuje impuls – silnik zaczyna obracać się z niewielką prędkością o zadany kąt. Jeśli w określonym czasie pojawi się kolejny impuls kroku – zwiększamy wsp. wypełnienia PWM i silnik szybciej obraca się o kolejny zadany kąt itd., analogiczna sytuacja podczas hamowania.

Natomiast jeśli chodzi o detekcję kierunku obrotu przydała by się mimo wszystko chociażby dla kontroli pozycji spoczynkowej – jeśli oś silnika została by obrócona np. przez śrubę sterownik automatycznie mógłby skorygować położenie – o ile wiem w ten sposób utrzymywana jest pozycja w typowych maszynach NC z napędem na silnikach prądu stałego.


rchobby
Specjalista poziom 2 (min. 300)
Specjalista poziom 2 (min. 300)
Posty w temacie: 6
Posty: 441
Rejestracja: 31 maja 2004, 07:01
Lokalizacja: Białystok
Kontakt:

#18

Post napisał: rchobby » 28 cze 2004, 09:28

http://elm-chan.org/works/smc/report_e.html
troche informacji o sterowaniu serwami, schemat i kody na 2313, ale silnik chyba fabryczny.

http://www.renco.com/106002.htm
o czujnikach, producent, warto zobaczyć zakładkę 'tech info'.


damik
Znawca tematu (min. 80)
Znawca tematu (min. 80)
Posty w temacie: 3
Posty: 92
Rejestracja: 04 cze 2004, 14:09
Lokalizacja: ?l?sk

#19

Post napisał: damik » 29 cze 2004, 00:55

Bardzo ciekawy ten link do układu serwa cyfrowego na ATMEL'ku 2313, tylko może być problem w zastosowanich CNC.
To serwo raczej było projektowane do układów regulacji w automatyce , np do sterowania jakiejś dyszy, przysłony itp.
Pozatym problematyczny jest tam jeszcze protokół komunikacji , raczej mogą być problemy z podłączeniem do jakiegoś programu sterującego maszynę...
Ale pomysł jest ciekawy i można się na nim w pewnym stopniu oprzeć , projektując jakiś układ sterowania pod CNC , tym bardziej że są dostępne źródła programu w ASM dla procka ...
Ostatnio zmieniony 30 cze 2004, 09:37 przez damik, łącznie zmieniany 1 raz.
Pozdrawiam
Damik


rchobby
Specjalista poziom 2 (min. 300)
Specjalista poziom 2 (min. 300)
Posty w temacie: 6
Posty: 441
Rejestracja: 31 maja 2004, 07:01
Lokalizacja: Białystok
Kontakt:

#20

Post napisał: rchobby » 30 cze 2004, 08:55

wiadomość skasowałem

rchobby

ODPOWIEDZ Poprzedni tematNastępny temat

Wróć do „Elektronika CNC”