Pływające chińskie servo - problem pid?

Sterowanie analogowe CSMIO-A

Dyskusje dotyczące serwonapędów i napędów serwokrokowych.
Awatar użytkownika

Autor tematu
CrappoidTab
Nowy użytkownik, używaj wyszukiwarki
Nowy użytkownik, używaj wyszukiwarki
Posty w temacie: 5
Posty: 6
Rejestracja: 25 mar 2024, 14:19

Pływające chińskie servo - problem pid?

#1

Post napisał: CrappoidTab » 25 mar 2024, 19:16

Witam szanownych forumowiczów,

Czy wam też serva delikatnie "pływają" trzymając pozycje w miejscu? U mnie zakres ruchu wału silnika wynosi ponad +-5 stopni.
Przy śrubie o skoku 10mm daje 0.1mm! Przy osi obrotowej to już w ogóle niedopuszczalne.
Ten problem występuje prawie jednakowo na wszystkich 4 osiach tylko przy sterowaniu analogowym.
Przy sterowaniu step/dir silniki trzymają pozycje sztywno, ale nie po to kupiłem CISMO-A żeby teraz używać step/dir.

Mój sprzęt:
Ploter samoróbka 3osie + 4-obrotowa
AASD20 - Chiński sterownik servo - Control mode=speed
90st_m04025 - Chiński silnik servo AC 1kw 10.000imp/obr
CISMO-IP-A kontroler - sterowanie analogowe
Mach4

Strojenie PID za pomocą pluginu CS-Labs (CSMIO-A) w Mach4 tutaj nic nie pomaga. Dotyczy ono przyśpieszeń i hamowania maszyny w trakcie pracy. Kontroler nie ma jednak wpływu na PID w sterowniku silnika.
Podejrzewam, że fabryczne ustawienie PID w tych chińskich sterownikach dostosowane jest do ciężkich obciążeń, a przy bardzo małym albo braku obciążenia korekta pozycji jest zbyt "luźna".
Sterownik pozwala na manualną zmianę parametrów PID i nie ma komunikacji z komputerem ani softu do jego strojenia. Parametry trzeba wprowadzić manualnie.
Wątpię aby sygnał analogowy z kontrolera CSMIO-A aż tak pływał (30cm kabel ekranowany) i żeby to było problemem.
Co ciekawe, pomimo że silnik lekko pływa to w Mach4 DRO ni drgnie.. kiedy dezaktywuje maszynę i delikatnie ruszę wałem silnika to reaguje bardzo czule.
Ogólnie maszyna działa. Mimo, że amatorska to jest dosyć sztywna i prawie bez luzów więc te pływanie jest dosyć irytujące.
Jak stoi w miejscu to przyłożony czujnik zegarowy płynnie pływa w zakresie -+0.05mm we wszystkich osiach.
Delikatne korekty obrotu śruby widać gołym okiem.
Czy to normalne? co o tym sądzicie?

https://youtu.be/oIOYvoCyUaQ



Tagi:


bdgr
Specjalista poziom 1 (min. 100)
Specjalista poziom 1 (min. 100)
Posty w temacie: 2
Posty: 111
Rejestracja: 16 paź 2017, 15:21
Lokalizacja: Poznań

Re: Pływające chińskie servo - problem pid?

#2

Post napisał: bdgr » 25 mar 2024, 20:37

CrappoidTab pisze:
25 mar 2024, 19:16
Ten problem występuje prawie jednakowo na wszystkich 4 osiach tylko przy sterowaniu analogowym.
Przy sterowaniu step/dir silniki trzymają pozycje sztywno, ale nie po to kupiłem CISMO-A żeby teraz używać step/dir.
....
AASD20 - Chiński sterownik servo - Control mode=speed
CISMO-IP-A kontroler - sterowanie analogowe
czyli sterowanie serwopaka pozycją przez step-dir działa elegancko
a jak przejdziesz na sterowanie szybkością to się robi problem?
CrappoidTab pisze:
25 mar 2024, 19:16
nie po to kupiłem CISMO-A żeby teraz używać step/dir.
Niby czemu?
To brzmi jak strzelanie sobie w stopę, na własne życzenie. Masz działające rozwiązanie, po dołożeniu przekombinowane zadwania sygnału analogowo przestało działać dobrze. Wróć do step-dir i szafa gra. Jak możesz drożej sprzedać CSMIO-A i taniej dostać bez DAC i 4-20mA to tak zrób bo karta z z FPGA jest warta swej ceny.

Informacja o wymaganej pozycji jest cyfrowa tak jak w kontrolerze (CSMIO) jak i w serwopaku. Step-dir jako protokół do przesyłania jej jest...taki sobie, ale zamiana go na analogowy w tej sytuacji może wyjść tylko gorzej. Dokładasz zbędne konwersji DAC i ADC (z ich czasem i błędami), i zbierasz szum po drodze, jest wolniej gorzej i drożej.
Te kontrolery z analogowym wyjściem to są generalnie po to żeby użyć rzeczywiście analogowych serwonapędów DC w staarych maszynach, z oryginalnymi silnikami szczotkowymi. Serwonapędy do silników bezszczotkowych są już cyfrowe, po co im i sobie to robić?


maciek95k
Specjalista poziom 3 (min. 600)
Specjalista poziom 3 (min. 600)
Posty w temacie: 3
Posty: 780
Rejestracja: 31 mar 2017, 23:04
Lokalizacja: Kraków

Re: Pływające chińskie servo - problem pid?

#3

Post napisał: maciek95k » 25 mar 2024, 20:58

Jest trochę zalet zastosowania IP-A.
Możliwość zastosowania liniału pomiarowego, pełne sprzężenie zwrotne po stronie programu sterującego (kontrola czy osie się nie rozjechały co raz mi się niestety zdażyło na step/dir) itd.

Jeśli chodzi o problem pływających osi - podstawowa i najważniejsza sprawa przy IP-A to serwa muszą być ustawione "na ostro". Czyli nie możesz tam mieć żadnych ramp, przyspieszeń itd. Rampy powinny być skonfigurowane po stronie Macha / SimCnc i CSMIO IP-A. Od tego bym zaczął kombinowanie bo miałem podobny problem. Oś reaguje za wolno więc następuje przeregulowanie po stronie IP-A. Samo auto strojenie też wtedy nie przebiegnie prawidłowo.

Awatar użytkownika

Autor tematu
CrappoidTab
Nowy użytkownik, używaj wyszukiwarki
Nowy użytkownik, używaj wyszukiwarki
Posty w temacie: 5
Posty: 6
Rejestracja: 25 mar 2024, 14:19

Re: Pływające chińskie servo - problem pid?

#4

Post napisał: CrappoidTab » 25 mar 2024, 21:29

maciek95k pisze:
25 mar 2024, 20:58
Jest trochę zalet zastosowania IP-A.
Możliwość zastosowania liniału pomiarowego, pełne sprzężenie zwrotne po stronie programu sterującego (kontrola czy osie się nie rozjechały co raz mi się niestety zdażyło na step/dir) itd.

Jeśli chodzi o problem pływających osi - podstawowa i najważniejsza sprawa przy IP-A to serwa muszą być ustawione "na ostro". Czyli nie możesz tam mieć żadnych ramp, przyspieszeń itd. Rampy powinny być skonfigurowane po stronie Macha / SimCnc i CSMIO IP-A. Od tego bym zaczął kombinowanie bo miałem podobny problem. Oś reaguje za wolno więc następuje przeregulowanie po stronie IP-A. Samo auto strojenie też wtedy nie przebiegnie prawidłowo.
Kolega maciek95k widzę kuma o co chodzi.
Rzecz w tym, że nie wiem jak te serwa ustawić "na ostro". Nie mam doświadczenia w regulowaniu PID. Wiem jak PID działa w teorii, ale kombinowanie parametrami PID na ślepo nie bardzo mi się widzi. Strojenie oscyloskopem to sado-masohizm. Normalnie jest soft do takich rzeczy, no ale to nie Yaskawa tylko chińczyk za ułamek ceny.
Jakieś porady jak kombinować z parametrami PID? Od czego zacząć? W którą stronę iść? Co robić jak żyć?


KARABIN
Specjalista poziom 1 (min. 100)
Specjalista poziom 1 (min. 100)
Posty w temacie: 1
Posty: 214
Rejestracja: 17 lut 2015, 19:08
Lokalizacja: PODKARPACIE

Re: Pływające chińskie servo - problem pid?

#5

Post napisał: KARABIN » 25 mar 2024, 21:37

Masz tu manual do sterownika.
Załączniki
Manual do sterownika servo(1).pdf
(4.01 MiB) Pobrany 38 razy

Awatar użytkownika

Autor tematu
CrappoidTab
Nowy użytkownik, używaj wyszukiwarki
Nowy użytkownik, używaj wyszukiwarki
Posty w temacie: 5
Posty: 6
Rejestracja: 25 mar 2024, 14:19

Re: Pływające chińskie servo - problem pid?

#6

Post napisał: CrappoidTab » 25 mar 2024, 21:42

KARABIN pisze:
25 mar 2024, 21:37
Masz tu manual do sterownika.
Dziękuję. Ale już mam.
Wiem jak się zmienia parametry PID w tym sterowniku.
Manual niestety nie tłumaczy jak dobierać te parametry. Szklanej kuli nie mam.


maciek95k
Specjalista poziom 3 (min. 600)
Specjalista poziom 3 (min. 600)
Posty w temacie: 3
Posty: 780
Rejestracja: 31 mar 2017, 23:04
Lokalizacja: Kraków

Re: Pływające chińskie servo - problem pid?

#7

Post napisał: maciek95k » 25 mar 2024, 22:07

Strona 66. Parametry od 146 do 152. Musisz zerknąć jaki typ rampy masz ustawiony i jakie czasy rampy. Na początek bym ustawił rampę trapezoidalną i sprawdzić co się dzieje. Jeśli są tam wartości X na przyspieszeniach, zmniejszyłbym je następnie o połowę i sprawdził ponownie co i jak. Pamiętaj że przy takich zmianach często trzeba zrobić reset napędu tj. Wyłączyć i włączyć zasilanie. Pida na razie nie ruszaj. Chyba że już coś zmieniałeś i wpisywałeś. Szczególnie do części rożniczkującej tj. D. Ona zapewne zostanie na koniec na 0 ustawiona.

Dodane 1 minuta 6 sekundy:
Nie potrzebujesz do strojenia oscyloskopu. W plugienie csmio masz wyświetlanie przebiegu i aktualny sygnał błędu.


bdgr
Specjalista poziom 1 (min. 100)
Specjalista poziom 1 (min. 100)
Posty w temacie: 2
Posty: 111
Rejestracja: 16 paź 2017, 15:21
Lokalizacja: Poznań

Re: Pływające chińskie servo - problem pid?

#8

Post napisał: bdgr » 25 mar 2024, 22:28

maciek95k pisze:
25 mar 2024, 20:58
Jest trochę zalet zastosowania IP-A.
Możliwość zastosowania liniału pomiarowego
one nie są zazwyczaj po jakimś szeregowym interfejsie?
maciek95k pisze:
25 mar 2024, 20:58
pełne sprzężenie zwrotne po stronie programu sterującego (kontrola czy osie się nie rozjechały co raz mi się niestety zdażyło na step/dir)
Porządne rozwiązanie to jakiś fieldbus (do motion nie widziałem nic lepszego niż ethercat) i protokół aplikacji z feedbackiem pozycji (standard to CiA402). Serwopaki wychodzą póki co zauważalnie drożej ale za to karta FPGA jak CSMIO czy Mesa się robi zbędna
maciek95k pisze:
25 mar 2024, 20:58
pełne sprzężenie zwrotne po stronie programu sterującego
a chwila, zamknięte sprzężenie zwrotne bo enkodery są podpięte bezpośrednio pod CSMIO? to faktycznie ma sens

Awatar użytkownika

Autor tematu
CrappoidTab
Nowy użytkownik, używaj wyszukiwarki
Nowy użytkownik, używaj wyszukiwarki
Posty w temacie: 5
Posty: 6
Rejestracja: 25 mar 2024, 14:19

Re: Pływające chińskie servo - problem pid?

#9

Post napisał: CrappoidTab » 26 mar 2024, 00:39

maciek95k pisze:
25 mar 2024, 20:58
pełne sprzężenie zwrotne po stronie programu sterującego
a chwila, zamknięte sprzężenie zwrotne bo enkodery są podpięte bezpośrednio pod CSMIO? to faktycznie ma sens
[/quote]

Bingo!
Nawet jak zdezaktywuje maszynę/serwa i poruszę ręką silnikiem, na DRO w Machu4 pokazuje na bieżąco pozycje z enkoderów na serwach. Nie jest to co prawda rozwiązanie równe co liniały które pokazują faktyczną pozycje stołu a nie położenia wału silnika, ale na maszynie która ma bardzo znikome luzy to moim zdaniem to rozwiązanie jest najlepsze w tej cenie.

Dodane 23 minuty 49 sekundy:
maciek95k pisze:
25 mar 2024, 22:07
Strona 66. Parametry od 146 do 152. Musisz zerknąć jaki typ rampy masz ustawiony i jakie czasy rampy. Na początek bym ustawił rampę trapezoidalną i sprawdzić co się dzieje. ...........
maciek95k:
Dzięki za naprowadzenie na trop. Coś tak przeczuwałem żeby zacząć od ustawień niezwiązanych bezpośrednio z PIDem.
W dziale na który mnie naprowadziłeś do ustawień "Speed control parameters" na samym początku (4.3.3) jest Pn146 "Speed instruction deceleration mode" który ma 3 opcje: 0:Do not use, 1:Use speed instruction S curve, 2:Linear
a pod spodem niepozorna notatka: In speed control mode and the external position loop, this parameter must be set to 0.
Ustawienie fabryczne było na 1. Zmieniłem to na 0 i Bingo!
Problem rozwiązany.
Ponownie przeprowadziłem tuning CSMIO w Machu4 i wahania spadły do poziomu niezauważalnego z 0.1 do 0.01
Serwa teraz trzymają pozycje jak należy i już prawie nie pływają. Trzymają o wiele sztywniej. Jak dla mnie wystarczy. Kultura pracy zauważalnie wzrosła..
Wniosek następujący:
Tak jak kolega maciek95k zasugerował, należy "zdeaktywować" regulacje deceleracji PID w tym sterowniku. Wtedy CISMO nie dostaje szajby i sprawnie przejmuje kontrolę. Dzięki!


maciek95k
Specjalista poziom 3 (min. 600)
Specjalista poziom 3 (min. 600)
Posty w temacie: 3
Posty: 780
Rejestracja: 31 mar 2017, 23:04
Lokalizacja: Kraków

Re: Pływające chińskie servo - problem pid?

#10

Post napisał: maciek95k » 26 mar 2024, 10:43

Żeby zrozumieć co się działo:
Kontroler pozycji zadawał jakąś pozycję która nie została osiągana bo serwodriver szedł po rampie (reagował bardzo wolno z punktu widzenia regulatora pozycji w CSMIO). Więc regulator pozycji mówiąc kolokwialnie dodawał do pieca. Jak już ruszyło - następowało przeregulowanie i w drugą stronę to samo. Sam z tym kiedyś walczyłem. W mojej opinii nie jest to wystarczająco dobrze zaznaczone w instrukcji CSMIO (chyba gdzieś jest ale łatwo to pominąć :) ).
CrappoidTab pisze:Nie jest to co prawda rozwiązanie równe co liniały które pokazują faktyczną pozycje stołu a nie położenia wału silnika,

Liniały z Ali to nie jest duży koszt więc w przyszłości możesz sobie zawsze dorzucić : )

ODPOWIEDZ Poprzedni tematNastępny temat

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