sterownik serva elm-chan

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

acetylenek
Specjalista poziom 2 (min. 300)
Specjalista poziom 2 (min. 300)
Posty w temacie: 7
Posty: 577
Rejestracja: 12 mar 2006, 21:46
Lokalizacja: Kraków/Olkusz

#91

Post napisał: acetylenek » 29 lis 2010, 14:59

Czy ten sterownik nie ma wady polegajacej na koniecznosci recznej regulacji zaleznej od obciazenia? nie powinna sie ona odbywac automatycznie?
Ten czy inny sterownik PID "nie ma wad" w porównaniu z krokówką. :mrgreen:

To nie tak. Chodzi o to że należy dobrać parametry do dynamiki napędu i obciążenia (w uproszczeniu jaki silnik porusza przez jaką przekładnie jaką masą). Dla maszyny typu frezarka dynamika napędu i obciążenia jest - nie biorąc pod uwagę masy przedmiotu obrabianego - stała. Zmienne obciążenie o jakim ja myślę wprowadza frez i jest ono w stosunku do bezwładności układu małe.

W procesie projektowania napędu dobiera się tak silnik i przekładnie aby silnik nie "walczył" z bezwładnością poruszanego układu (czyli raczej większe przełożenia - co w praktyce może równie dobrze oznaczać śruba bezpośrednio na wale silnika).


Oczywiście silniki krokowe mają swoje zalety i miejsce gdzie są bardzo dobrym rozwiązaniem lecz na pewno nie tam gdzie występują zmienne obciążenia np. w obróbce skrawaniem.

W tym zdaniu chodziło mi o to że silnik krokowy jest bardzo dobrym rozwiązaniem w układach w których nie występuje zmiana obciążenia, jest ono znane i silnik jest do niego dobrany np. drukarkach, skanerach, zaworach czy zasuwach o małej dynamice - wentylacja itp. W takich warunkach trudno jest "zgubić krok" a jeśli by taka sytuacja miała miejsce to by oznaczało błędnie dobrany napęd.

Tolerancja na zmiany obciążenia (dynamiki obciążenia widzianej od strony silnika) w układach serwo jest duża ale nie nieskończona. Zakres nastaw regulatora PID jest tak ogromny że nie ma możliwości zrobienia uniwersalnych wartości. Parametry muszą być choć wstępnie dobrane do silnika (razem z enkoderem bo jego zmiana też wszystko zmienia) i obciążenia. Mogą one być bardziej nastawione na w kierunku:
- dużej stabilności (nie wystąpi wzbudzenie układu i oscylacje napędu - nie chodzi tu o drgania).
-małego przesterowania .
-minimalnego czasu reakcji.

Przykład:
Sterowanie pozycją głowicy w dysku twardym - nie przeszkadza nam duże przesterowanie natomiast potrzebny nam jest minimalny czas dojścia (to że głowica sobie przeleci punku docelowy w niczym nie wadzi)

Obróbka wiórowa - zależy nam na małym przesterowaniu bo przekroczenie punktu docelowego wiąże się ze zmianą wymiaru obrabianego przedmiotu.

Taki napęd może być "miękki" lub "sztywny" można np. ustawić tylko wzmocnienie proporcjonalne a pozostałe na zero wtedy uchyb (różnica między wartością pozycji zadanej o aktualną) będzie proporcjonalny do obciążenia (tak jakby między silnikiem a śrubą była sprężyna).

Teraz jeszcze eksperyment myślowy.

Dajemy bardzo dużą masę bezpośrednio na wał silnika krokowego zadajemy impulsy i co się dzieje? Co możemy zrobić aby to zmienić ? - nic tylko zdjęć tą "masę" np. poprzez przekładnie (przekładnia zmienia dynamikę widzianą przez silnik).

Dajemy bardzo dużą masę na silnik serwo zadajemy impulsy i co się dzieje?
Może być rożnie ale przeważnie (jeśli sterownik był ustawiony dla tego silnika i mniejszej "masy") będzie oscylował tzn. kręcił się w prawo i lewo. Jest jednak coś co można z tym zrobić zmienić nastawy regulatora PID i sytuacja będzie opanowana.


Czy ktos juz przetestowal ten sterownik w praktyce?
Tak w moim wykonaniu pracowały (pewnie jeszcze pracują) kilka lat w tokarce u jednego z kolegów z forum. Tylko w moim stopień mocy jest scalony LMD18200 i mocno zmodyfikowany program. Z tym że tu nie chodzi o wykonanie tylko o samą idee sterowania z regulatorem PID.



Tagi:


faniron
Specjalista poziom 2 (min. 300)
Specjalista poziom 2 (min. 300)
Posty w temacie: 1
Posty: 320
Rejestracja: 12 lut 2006, 18:56
Lokalizacja: Dolnośląskie

#92

Post napisał: faniron » 29 lis 2010, 21:24

Potwierdzam, moja przygoda z serwami rozpoczęła się od sterownika kolegi Acetylenek. Zastosowałem je do tokarki TSB-20. Wcześniej tokarka pracowała na krokówkach 1,9 Nm

Tutaj są filmy, na których widać różnicę w pracy tokarki na krokówkach i na serwach ze sterownikami kolegi Acetylenek:

https://www.cnc.info.pl/topics65/porown ... vt2620.htm


kamilkamil1
Sympatyk forum poziom 2 (min. 50)
Sympatyk forum poziom 2 (min. 50)
Posty w temacie: 38
Posty: 62
Rejestracja: 12 mar 2009, 16:53
Lokalizacja: Sandomierz

#93

Post napisał: kamilkamil1 » 29 lis 2010, 21:45

Mam pytanie czy można zmienić w programie mnożnik kroku pod Atmega8 ? jak tak to który parametr jest za to odpowiedzialny ?


luzak
Sympatyk forum poziom 2 (min. 50)
Sympatyk forum poziom 2 (min. 50)
Posty w temacie: 2
Posty: 58
Rejestracja: 20 paź 2010, 23:29
Lokalizacja: biala podlaska
Kontakt:

#94

Post napisał: luzak » 30 lis 2010, 15:12

acetylenek pisze:.. Z tym że tu nie chodzi o wykonanie tylko o samą idee sterowania z regulatorem PID.
Wlasnie tego dotyczylo moje pytanie - ten sterownik to tylko demonstracja idei, czy gotowe rozwiazanie, ktorego mozna uzywac w praktyce?
Co do zasadnoci uzywania serva, nie mam zadnych watpliwosci - silniki krokowe sa uzywane bardzie z powodu latwosci ich uzycia, niz parametrow.
Przy okazji zapytam - jakie sa zalety stosowania silnikow bezszczotkowych w podobnym rozwiazaniu?


kamilkamil1
Sympatyk forum poziom 2 (min. 50)
Sympatyk forum poziom 2 (min. 50)
Posty w temacie: 38
Posty: 62
Rejestracja: 12 mar 2009, 16:53
Lokalizacja: Sandomierz

#95

Post napisał: kamilkamil1 » 30 lis 2010, 22:31

Witam, czy jest ktoś w stanie mi pomóc ? Jeżeli pomnożył bym wartość rejestru z licznika np. przez 4 to wtedy powinien pokonać cztery razy większą drogę tak? tylko gdzie to ustawić ? w INT0_INT: ? Przesyłam kawałek kodu.
Załączniki
licznik.txt
(644 Bajtów) Pobrany 321 razy


acetylenek
Specjalista poziom 2 (min. 300)
Specjalista poziom 2 (min. 300)
Posty w temacie: 7
Posty: 577
Rejestracja: 12 mar 2006, 21:46
Lokalizacja: Kraków/Olkusz

#96

Post napisał: acetylenek » 01 gru 2010, 00:32

To w pełni sprawne gotowe rozwiązanie czego dowodem jest stosowanie z powodzeniem w produkcji na tokarce u kolegi faniron.

Wykonanie - mam na myśli jaki procek (Tiny czy ATmega 8) i stopień mocy,komunikacja z optoizolacją czy bez itd. ale główny program i zasada takie same (albo z tym samym rdzeniem programu).


kamilkamil1
Ja ten kod prawie na pamięć znałem swego czasu, jeśli zadajesz takie pytanie to nawet jak Ci odpowiem to Ci nic to nie da - posiedzisz nad tym chwilkę i będziesz miał wszystko jasne i będziesz mógł modyfikować co zechcesz.


kamilkamil1
Sympatyk forum poziom 2 (min. 50)
Sympatyk forum poziom 2 (min. 50)
Posty w temacie: 38
Posty: 62
Rejestracja: 12 mar 2009, 16:53
Lokalizacja: Sandomierz

#97

Post napisał: kamilkamil1 » 01 gru 2010, 10:08

"acetylenek" wiem że to najlepsze rozwiązanie ale nie znam kompletnie asemblera i trochę mi zajmie czasu zanim się nauczę, a maszyna prawie gotowa, żeby chociaż były komentarze a tu po rosyjsku :) proszę chociaż o wskazanie miejsca i co zmienić.


acetylenek
Specjalista poziom 2 (min. 300)
Specjalista poziom 2 (min. 300)
Posty w temacie: 7
Posty: 577
Rejestracja: 12 mar 2006, 21:46
Lokalizacja: Kraków/Olkusz

#98

Post napisał: acetylenek » 01 gru 2010, 11:08

Ja się tym zajmowałem parę lat temu i szczerze nie chce mi się szukać w programie gdzie to jest. Jeszcze musiałbym to sprawdzić czy działa bo jak by Ci nie zadziałało to na pewno byś się zapytał o co chodzi i zejdzie mi kilka godzin a śnieg pada :shock: i trzeba odśnieżać.

Twoje pytanie jest tak naprawdę prośbą "zrób mi program tak jak chcę bo ja nie umiem i nie chcę się uczyć".

Poza tym o co tyle hałasu na pewno musisz zmieniać ten mnożnik. Sprawdź jak i czy w ogóle będzie działać na oryginalnym programie a potem go modyfikuj.


kamilkamil1
Sympatyk forum poziom 2 (min. 50)
Sympatyk forum poziom 2 (min. 50)
Posty w temacie: 38
Posty: 62
Rejestracja: 12 mar 2009, 16:53
Lokalizacja: Sandomierz

#99

Post napisał: kamilkamil1 » 01 gru 2010, 13:40

Nie prosiłem o gotowy program tylko o wskazówkę gdzie szukać i co próbować zmieniać, bardzo bym chciał się nauczyć programować w asemblerze ale na wszystko trzeba mieć dużo czasu i jeden człowiek nie będzie specjalistą we wszystkim, dlatego umieściłem to pytanie do kolegów którzy już coś próbowali z tym robić i chcieli by pomóc :)
Poza tym o co tyle hałasu na pewno musisz zmieniać ten mnożnik. Sprawdź jak i czy w ogóle będzie działać na oryginalnym programie a potem go modyfikuj.
Ale jaki mnożnik? w oryginalnym programie pod attin2313 był to parametr P6 ale pod Atmege8 już się go nie ustawia.


acetylenek
Specjalista poziom 2 (min. 300)
Specjalista poziom 2 (min. 300)
Posty w temacie: 7
Posty: 577
Rejestracja: 12 mar 2006, 21:46
Lokalizacja: Kraków/Olkusz

#100

Post napisał: acetylenek » 01 gru 2010, 17:24

Ten który chcesz zmieniać (chcesz mnożyć impulsy wejściowe żeby dla jednego imp. silnik obrócił się o np. 4 działki enkodera - czy coś pomyliłem?)

Nie zmienia to faktu czy potrzebny na początku jest taki zabieg czy nie można by zmontować wszystkiego tak jak jest? Może się okazać że coś innego będzie nie tak.

ODPOWIEDZ Poprzedni tematNastępny temat

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