Rodzaje silnikow elektrycznych i ich zalety ( oraz wady ).

Dyskusje dotyczące silników elektrycznych i falowników.
Awatar użytkownika

ursus_arctos
Lider FORUM (min. 2000)
Lider FORUM (min. 2000)
Posty w temacie: 7
Posty: 2083
Rejestracja: 11 cze 2011, 18:29
Lokalizacja: Warszawa / Lublin

#11

Post napisał: ursus_arctos » 23 lip 2013, 10:32

Tux, weź nie obrażaj ludzi, którzy niczego złego Ci nie zrobili. Czy dla Ciebie każdy, kto powie coś, czego nie zrozumiesz, jest głupi albo się popisuje?
Różnimy się tym, że ja to ZAIMPLEMENTOWAŁEM w swoim sterowniku. Takie rozwiązanie u mnie DZIAŁA. Zrobiłem TESTY z nieobciążonym napędem, w których serwo z WYŁĄCZONYM ENKODEREM zrobiło 5 obrotów w jedną stronę i tyleż w drugą, wracając do punktu początkowego z dokładnością do kilku stopni. Zrobiłem ten sam test, kiedy enkoder był przypięty, ale współczynniki PID były wyzerowane (czyli efektywnie sprzężenia nie było) i w żadnym momencie tego testu uchyb nie przekroczył 30 działek enkodera - ale ten uchyb nie miał absolutnie żadnego znaczenia dla sterownika; sterownik wiedział tylko, z jaką prędkością i przyśpieszeniem ma się w każdym momencie poruszać i starał się to wykonać korzystając zaprogramowanej charakterystyki silnika.
Każdy sterownik serwo, który ma wycisnąć maksimum możliwości z silnika będzie używał jakiejś formy predykcji - obecnie to jest norma bardziej niż wyjątek. Predykcja pozwala poprawić dynamiczną odpowiedź układu nie zwiększając podatności na oscylacje. Pozwala też zbudować regulator wyższego rzędu. Jak to działa możesz sobie poczytać w moim wątku o sterowniku serwo na STM32F4 oraz w wątku kolegi volkhen.



Tagi:


mc2kwacz
Lider FORUM (min. 2000)
Lider FORUM (min. 2000)
Posty w temacie: 6
Posty: 2920
Rejestracja: 27 maja 2013, 22:18
Lokalizacja: gdzieś

#12

Post napisał: mc2kwacz » 28 lip 2013, 16:15

Pomijając "na poziomie- inaczej" styl prowadzenia "rozmowy" przez tuxa, w tym przypadku ma on formalnie rację. Predykcja nie oznacza, że podejmuje się akcję przy zerowym uchybie i zerowej pierwszej pochodnej uchybu po czasie. Tylko że wykonuje się zaplanowaną akcję w momencie zadania uchybu (przez wprowadzenie nowej wartości zadanej). Przecież nie będziesz wykonywał akcji regulacyjnej zanim zadasz nową wartość :) A co by było, gdybyś jednaj postanowił nie zadawać tej wartości? Oscylacje niegasnące spowodowane "predykcją" w takim rozumieniu, jak to napisałeś ;)
W każdym procesie regulacji, bez względu na jego rodzaj kolejność działania jest następująca: wartość zadana > uchyb > akcja. Nawet jeśli z pozoru wydaje się, że to działa inaczej, np: zdeterminowane zakłócenie > akcja przy braku uchybu, to jest to tylko pozorna różnica, bo ZAWSZE gdzieś jest uchyb który dopiero powoduje akcję. Test to tylko kwestia porządnego (bardziej skomplikowanego) rozrysowania konkretnego mechanizmu regulacji, i odpowiedniego ponazywania wszystkich zjawisk w układzie regulacji.

Awatar użytkownika

ursus_arctos
Lider FORUM (min. 2000)
Lider FORUM (min. 2000)
Posty w temacie: 7
Posty: 2083
Rejestracja: 11 cze 2011, 18:29
Lokalizacja: Warszawa / Lublin

#13

Post napisał: ursus_arctos » 28 lip 2013, 16:56

Predykcja nie oznacza, że podejmuje się akcję przy zerowym uchybie i zerowej pierwszej pochodnej uchybu po czasie.
Dokładnie to oznacza. Przykładem może być tu stan ustalony ruchu ze stałą prędkością. Uchyb 0, pierwsza pochodna 0 (bo nadążamy) - a człon predykcyjny zadaje napięcie wyjściowe. Zadaniem predykcji jest utrzymanie stanu możliwie bliskiemu zerowego uchybu i jego pochodnej(ych).
Przecież nie będziesz wykonywał akcji regulacyjnej zanim zadasz nową wartość :) A co by było, gdybyś jednaj postanowił nie zadawać tej wartości? Oscylacje niegasnące spowodowane "predykcją" w takim rozumieniu, jak to napisałeś ;)
Predykcja nie może spowodować oscylacji, bo te mogą być wywołane wyłącznie działaniem ujemnych sprzężeń zwrotnych. Tu nie ma sprzężenia zwrotnego (stąd nazwa angielska feedforward, w odróżnieniu od feedback).
Co to znaczy, "jeżeli postanowiłbym nie zadawać wartości"? Jak serwo jest step/dir, to wprowadza się celowo pewne opóźnienie sterowania i z czasów ostatnich kilku sygnałów wylicza parametry ruchu.
Akurat mój sterownik w ogóle nie jest step/dir, tylko używa krzywych parametrycznych, które mogę w każdym punkcie zróżniczkować i mieć dokładne wartości pochodnych. Nawet, gdy zadam prędkość nie zmieniając położenia (co nie ma miejsca), to regulator PID poradzi sobie z tym problemem, traktując błąd wysterowania członu predykcyjnego jak dodatkowe obciążenie. Owszem, pojawi się szarpnięcie, ale nie musi wcale prowadzić do wystąpienia oscylacji.

Awatar użytkownika

tuxcnc
Lider FORUM (min. 2000)
Lider FORUM (min. 2000)
Posty w temacie: 7
Posty: 8074
Rejestracja: 26 lut 2011, 23:24
Lokalizacja: mazowieckie

#14

Post napisał: tuxcnc » 28 lip 2013, 17:12

ursus_arctos pisze:Przykładem może być tu stan ustalony ruchu ze stałą prędkością. Uchyb 0, pierwsza pochodna 0 (bo nadążamy) - a człon predykcyjny zadaje napięcie wyjściowe.
Ciało porusza się ze stałą prędkością jeśli nie działa na nie żadna siła.
Nie ma błędu - nie ma reakcji.
Wbij to sobie do głowy jeśli nie potrafisz zrozumieć.

.


mc2kwacz
Lider FORUM (min. 2000)
Lider FORUM (min. 2000)
Posty w temacie: 6
Posty: 2920
Rejestracja: 27 maja 2013, 22:18
Lokalizacja: gdzieś

#15

Post napisał: mc2kwacz » 28 lip 2013, 17:56

Ursus, pomieszanie z poplątaniem :roll:
Nie możesz brać wartości zadanej z jednej parafii a uchybu z drugiej. Uchyb i wartość zadana mają zawsze to samo mianowanie. Jeśli wartością zadaną jest stałą prędkość, i osiągnęliśmy zerowy uchyb statyczny (prędkość chwilowa równa zadanej) i jego zerową pochodną (brak przyspieszeń), czyli STAN USTALONY W PUNKCIE DOCELOWYM, to nie ma nawet mowy o żadnej predykcji. Prędkość jest utrzymywana przez człon całkujący.

O predykcji można mówić wtedy, gdy np wiemy, że będziemuy potrzebowali zmienić wartość prędkości do v1 w czasie t1, i Z DOŚWIADCZENIA wiemy, że do tego będzie potrzebny np wzrost napięcia na silniku do wartości u1. I wtedy, W MOMENCIE gdy przestawiamy wartość zadaną na v1 (powodując pojawienie się uchybu), wykonujemy (na podstawie znajomości cech obiektu a nie wyników analizy matematycznej) zabieg odpowiednio szybkiego podnoszenia napięcia. A ewentualne działanie regulatora PID czy podobnego albo wyłączamy chwilowo albo używamy jako korektor. Możliwości są duże, wszystko zależy od struktury.
Podsumowując - uchyb się pojawia(!!!)

Próbę predykcji bez uchybu, która może prowadzić zarówno do poprawy jak i do pogorszenia efektów regulacji, można porównać do innego przykładu.
Mamy prędkość ustaloną, ustaloną wartość zasilającego napięcia, które tę prędkość zapewnia. Ale planujemy włączyć drugą maszynę na tej samej linii i spodziewamy się że napięcie usiądzie i prędkość spadnie. Więc włączając drugą maszynę, jednocześnie ręcznie podkręcamy napięcie silnika (predykcja). I jeśli mamy duże doświadczenie, może nawet prędkość nie drgnie (idealna predykcja). Ale co jeśli okaże się, że włączana maszyna ma przepalony bezpiecznik? Albo inny czynnik, który spowoduje, że napięcie jednak NIE siądzie? Albo zmieni się zupełnie inaczej? Wtedy zamiast utrzymania stałej prędkości, doprowadzimy niepotrzebnie do jej zwiększenia/zmniejszenia, czyli zdestabilizujemy układ.

Dobrym przykładem na ułomność takiej "predykcji na pałę", jest obrona karnego przez bramkarza. Bramkarz obserwuje piłkarza, poza tym zna jego styl. I zwykle daje się wyprowadzić w pole, bo tak naprawdę nie jest w stanie przewidzieć ani stylu, ani wysokości, ani kierunku strzału, ani nawet którą nogą zostanie oddany.

Dlatego takich rzeczy się nie robi w automatyce. Predykcja nie opiera się na ZAMIARZE, tylko na ZMIERZONYM uchybie. Uchybem dla predykcji w tym przypadku może być szybki pomiar napięcia zasilającego, który wykaże spdek tego napięcia, zanim jeszcze będzie to miało jakikolwiek wpływ na bezwładność silnika. Ale JEST REALNY UCHYB w układzie regulacji. Tyle że w innym członie i związany z inną wartością zadaną. W tym przypadku wartością napięcia, które z docelową prędkością jest powiązane w sposób analityczny (matematycznie policzalny).

P.S.
Oscylacje w układzie regulacji (jeśli są), nie są skutkiem ujemnego, tylko dodatniego członu sprzężenia zwrotnego, konkretniej od przebiegu charakterystyki amplitudowo-fazowej. Elementarz.
P.S.2.
Nie ma znaczenia jakie są zastosowane metody regulacji na poziomie sprzętowym, tylko jaka jest matematyczna interpretacja ich działania.

Awatar użytkownika

tuxcnc
Lider FORUM (min. 2000)
Lider FORUM (min. 2000)
Posty w temacie: 7
Posty: 8074
Rejestracja: 26 lut 2011, 23:24
Lokalizacja: mazowieckie

#16

Post napisał: tuxcnc » 28 lip 2013, 18:20

mc2kwacz pisze:Ursus, pomieszanie z poplątaniem :roll:
Nie możesz brać wartości zadanej z jednej parafii a uchybu z drugiej.
Przyszedł mi do głowy prosty przykład.
Sterujemy elektrozaworem o regulowanym przepływie utrzymując stałą prędkość napełniania zbiornika.
Czyli przykładowo chcemy żeby poziom wody rósł o centymetr na minutę.
Jeżeli regulator się ustali, to oczywiście woda się leje, ale zawór stoi w miejscu !
Nie ma błędu, zawór nie zmienia położenia, bo przepuszcza dokładnie tyle ile potrzeba.

Nawiasem mówiąc, od predykcji uchybu jest w regulatorze PID człon D.
Ursus najwyraźniej chce w swoim cudownym regulatorze zaimplementować nie predykcję tylko jasnowidzenie ...

.


mc2kwacz
Lider FORUM (min. 2000)
Lider FORUM (min. 2000)
Posty w temacie: 6
Posty: 2920
Rejestracja: 27 maja 2013, 22:18
Lokalizacja: gdzieś

#17

Post napisał: mc2kwacz » 28 lip 2013, 18:49

Nie można nazwać działania członu D predykcją. Można tak to tłumaczyć "edukacyjnie", dla lepszego zrozumienia, ale w sensie automatyki to nie jest predykcja.
Predykcja jest wtedy, gdy regulator wykonuje czynność regulacyjną na podstawie znajomości właściwości obiektu, zjawiska i symptomów, które zapowiadają nadejście konkretnych sytuacji. Na przykład mamy coś zrobić, gdy pojazd ruszy, proporcjonalnie do prędkości. I zależy nam, żeby to się zadziało natychmiast. Jednak mamy ograniczoną informację o ruchu. Na przykład nie 100 a 2 impulsy na obrót koła. Ale nie możemy sobie pozwolić, żeby czekać na 2 kolejne impulsy które określą prędkość. Dlatego jesteśmy zmuszeni podjąć akcję już po pierwszym impulsie, zakładając, że za chwilę (i to w miarę konkretną, znając możliwości przyspieszania maszyny), przyjdzie kolejny impuls a potem kolejny... Jednak oczywiście jest to działanie życzeniowe. Bo może się okazać, że maszyna drgnęła, pojawił się akurat impuls, ale wcale nie zamierza jechać dalej.

Predykcja jest też wtedy, gdy np zmieniamy ustawienia temperatury wody, i wiemy że przy zastosowaniu danego regulatora nastąpi przesterowanie (przegrzanie), bo układ jest silnie nieliniowy z jakiegoś powodu, i regulator PID go "nie chwyta". I wtedy możemy predykcyjnie przeciwdziałać. Czyli np przerwać podgrzewanie zanim zrobi to regulator.
Jest to w pewnym sensie wróżenie. Czasami przydatne, czasami niezbędne. A czasami lepiej tego nie robić.

Awatar użytkownika

ursus_arctos
Lider FORUM (min. 2000)
Lider FORUM (min. 2000)
Posty w temacie: 7
Posty: 2083
Rejestracja: 11 cze 2011, 18:29
Lokalizacja: Warszawa / Lublin

#18

Post napisał: ursus_arctos » 28 lip 2013, 20:57

Nawiasem mówiąc, od predykcji uchybu jest w regulatorze PID człon D.
Ursus najwyraźniej chce w swoim cudownym regulatorze zaimplementować nie predykcję tylko jasnowidzenie ...
Ja nie chcę przwidywać uchybu. Człon feedforward przewiduje wysterowanie członu wykonawczego (np. napięcie na silniku) na podstawie aktualnych nastaw. Czy to tak trudno pojąć? Uchyb nie ma nic do tego.
Predykcja jest wtedy, gdy regulator wykonuje czynność regulacyjną na podstawie znajomości właściwości obiektu
Do tego miejsca było dobrze.
A dalej jest mowa o estymacji stanu układu, a nie o żadnej predykcji.

Predykcja jest prosta, jak budowa cepa - przykład:
Wiemy, że silnik ma 100rpm/V. Wiemy, że w danym momencie chcemy, żeby się kręcił 1000rpm, dajemy 10V. Od razu, na nic nie czekając. Jak pojawi się uchyb, wkroczy sprzężenie zwrotne (na przykład PID) i poprawi. Przyczyn uchybu może być dużo (zaburzenia zewnętrzne - czyli po prostu obciążenie, zła estymacja parametrów układu, zmienne opory ruchu, fluktuacje napięcia zasilającego, niedokładność PWM, etc, etc).

Nie wymyśliłem tego. Można to przeczytać:
Servo control in general can be broken into two fundamental classes of problems. The first class deals with command tracking. It addresses the question of how well does the actual motion follow what is being commanded. The typical commands in rotary motion control are position, velocity, acceleration and torque. For linear motion, force is used instead of torque. The part of servo control that directly deals with this is often referred to as "Feedforward" control. It can be thought of as what internal commands are needed such that the user's motion commands are followed without any error, assuming of course a sufficiently accurate model of both the motor and load is known.

The second general class of servo control addresses the disturbance rejection characteristics of the system. Disturbances can be anything from torque disturbances on the motor shaft to incorrect motor parameter estimations used in the feedforward control. The familiar "P.I.D." (Proportional Integral and Derivative position loop) and "P.I.V." (Proportional position loop Integral and proportional Velocity loop) controls are used to combat these types of problems. In contrast to feedforward control, which predicts the needed internal commands for zero following error, disturbance rejection control reacts to unknown disturbances and modeling errors. Complete servo control systems combine both these types of servo control to provide the best overall performance.
Link do całości: http://www.automation.com/library/artic ... on-control


mc2kwacz
Lider FORUM (min. 2000)
Lider FORUM (min. 2000)
Posty w temacie: 6
Posty: 2920
Rejestracja: 27 maja 2013, 22:18
Lokalizacja: gdzieś

#19

Post napisał: mc2kwacz » 28 lip 2013, 21:44

ursus_arctos pisze:Do tego miejsca było dobrze.
A dalej jest mowa o estymacji stanu układu, a nie o żadnej predykcji.
Masz słuszność, tak się to fachowo nazywa.
A więc, wracając do pierwszej mojej wypowiedzi, uważam że mówiłeś o estymacji. Na dodatek uruchomionej bliżej nieokreśloną potrzebą - nic się nie dzieje a dokonujemy operacji na sygnale wyjściowym.
Najpierw musi być uchyb. Uchyb pojawia się automatycznie, gdy wartość zadana jest inna od uzyskanej, bo jest to wynik matematycznego odejmowanie.
Jak rozumiem spieramy się o to, czy ZAMIAR zmiany sygnału zadanego można nazwać tak samo jak faktyczna zmianę. Moim zdaniem nie można i to nie jest zagadnienie z automatyki, tylko raczej z mechaniki kwantowej (światy równoległe) ;)

Awatar użytkownika

ursus_arctos
Lider FORUM (min. 2000)
Lider FORUM (min. 2000)
Posty w temacie: 7
Posty: 2083
Rejestracja: 11 cze 2011, 18:29
Lokalizacja: Warszawa / Lublin

#20

Post napisał: ursus_arctos » 28 lip 2013, 23:47

Jak rozumiem spieramy się o to, czy ZAMIAR zmiany sygnału zadanego można nazwać tak samo jak faktyczna zmianę
Nie, traktuje się go inaczej - na przykład nie podlega sprzężeniom zwrotnym ;)
Moim zdaniem nie można i to nie jest zagadnienie z automatyki, tylko raczej z mechaniki kwantowej (światy równoległe) ;)
Jak najbardziej w tym wszechświecie jest pełno rozwiązań, które z tego korzystają.
wracając do pierwszej mojej wypowiedzi, uważam że mówiłeś o estymacji.
Nie, nie mówiłem. Z estymacją są zupełnie innej natury problemy (różniczkowanie skwantowanego sygnału jest jednym z większych) - ale to jest grubszy i odrębny temat. Do tego są filtry typu Kalman czy FIR albo jeszcze inne wynalazki.

ODPOWIEDZ Poprzedni tematNastępny temat

Wróć do „Silniki Elektryczne / Falowniki”