Badanie stabilności liniowych układów sterowania ver. 26.2-6 (26-2-7 4:6). Badanie stabilności liniowych układów sterowania poprzez analizę równania charakterystycznego. Układ zamknięty liniowy i stacjonarny opisany równaniem () jest stabilny, jeżeli dla skończonej wartości zakłócenia przy dowolnych wartościach początkowych jego odpowiedź ustalona przyjmuje skończone wartości. Transmitancja operatorowa tego układu ma postać: () Stąd jego równanie charakterystyczne: (2) (3) Warunkiem koniecznym i dostatecznym na to, żeby układ zamknięty był stabilny jest, aby pierwiastki równania charakterystycznego (3) miały ujemne części rzeczywiste. Rozwiązanie tego równania wystarczy, więc dla stwierdzenia czy dany układ liniowy jest stabilny. Jednak w praktyce ta metoda nie zawsze jest dogodna i wystarczająca. Z tego względu zostały opracowane metody pozwalające na badanie stabilności bez rozwiązywania równania charakterystycznego. Są to tzw. kryteria stabilności. Kryteria te dzielą się na: algebraiczne do, których należą kryteria Routha i Hurwitza oraz częstotliwościowe Michajłowa i Nyquista. a) Polecenia wprowadzające (przydatne) G=tf([],[ 2 25 25]) %tworzy obiekt step(g) %wykreśla charakterystykę skokową obiektu G impulse(g) %wykreśla charakterystykę impulsową obiektu G roots([ 2 25 25])%oblicza pierwiastki równania s 3 +2s 2 +25s+25= iopzmap(g) %tworzy mapę biegunów i zer dla transmitancji G b) Badanie stabilności układu zamkniętego dla obiektu i dwóch różnych regulatorów PI G=zpk([],[-5-5 -],) %tworzy obiekt (podajemy zera, bieguny i wzmocnienie) C=pid(2.9,7.) %tworzy regulator PI: Kp=2.9 Ki=7. CL=feedback(G*C,) %tworzy układ zamknięty (ukł. regulacji) C2=pid(29,7.) %tworzy regulator PI: Kp=29 Ki=7. CL2=feedback(G*C2,) %tworzy układ zamknięty (ukł. regulacji) pzplot(cl,cl2) %tworzy mapę zer i biegunów dla układu zamkniętego grid %grid z = zero(cl2) %zera układu CL2 p = pole(cl2) %bieguny układu CL2 Wszystkie bieguny układu CL znajdują się w lewej półpłaszczyźnie > układ CL jest stabilny. Część biegunów układu CL2 znajduje się w prawej półpłaszczyźnie > układ CL2 jest niestabilny. Strona z
Dla sprawdzenia (CL stabilny, CL2 niestabilny) można wygenerować odpowiedzi skokowe dla układów CL i CL2. step(cl) %generuje odpowiedź skokową układu regulacji CL step(cl2) %generuje odpowiedź skokową układu regulacji CL2.4 CL 3 x 25 CL2.2 2.8.6.4 -.2-2.5.5 2 2.5-3 2 3 4 5 6 7 8 9 Strona 2 z
2. Kryterium Hurwitza Warunkiem koniecznym i dostatecznym stabilności układu liniowego i stacjonarnego jest, aby wszystkie współczynniki wielomianu charakterystycznego transmitancji tego układu istniały i były dodatnie, a ponadto ażeby wyznacznik Δ n zwany wyznacznikiem Hurwitza oraz jego podwyznaczniki Δ 2, Δ 3,, Δ n- były dodatnie. Jeżeli którykolwiek współczynnik jest ujemny lub równy zeru albo którykolwiek podwyznacznik jest ujemny to układ jest niestabilny. Jeśli dowolny z podwyznaczników jest równy zeru to oznacza, że równanie charakterystyczne układu ma między innymi pierwiastki urojone i wtedy układ jest na granicy stabilności. Na jego wyjściu występują drgania o ustalonej amplitudzie. Strona 3 z
a) Zbadać stabilność układu zamkniętego, którego równanie charakterystyczne ma postać: M(s)=s 5 +6s 4 +4s 3 +7s 2 +s+2= Warunek konieczny jest spełniony, ponieważ wszystkie współczynniki równania charakterystycznego są >. Warunek dostateczny sprawdzamy wartość wyznacznika Hurwitza, który ma postać: 6 7 2 4 5 = 6 7 2 4 6 7 2 D_5=([6 7 2 ; 4 ; 6 7 2 ; 4 ; 6 7 2]) %deklaruje elementy wyznacznika Hurwitza (D_5) Delta_5=det(D_5) %oblicza wartość wyznacznika Hurwitza = -5846 Ujemna wartość wyznacznika Hurwitza wskazuje na to, że badany układ jest niestabilny. Nie jest potrzebne badanie pozostałych wyznaczników. b) Określić stabilność układu regulacji, jeżeli transmitancja układu otwartego ma postać Go=(2s 2 +)/(s 3 +s+2): Go=tf([2 ],[ 2]) %deklaruje transmitancję układu otwartego Num=([ 2 ]) %deklaruje współczynniki wielomianu licznika Go Den=([ 2]) %deklaruje współczynniki wielomianu mianownika Go M=Num+Den %wylicza współczynniki wielomianu charakterystycznego M(s)=Lo(s)+Mo(s) -> M= 2 3 (M= a 3 a 2 a a ) Warunek konieczny jest spełniony ponieważ wszystkie współczynniki równania charakterystycznego M(s) są >: a =3>, a =>, a 2 =2>, a 3 =>. Sprawdzenie warunku dostatecznego: Δ = a 2 =2> Δ 2 = a 2 a 3 a a = 2 3 = 2 3 = < D_2=([2 ;3 ]) %deklaruje elementy wyznacznika D_2 Delta_2=det(D_2) %oblicza wartość wyznacznika = - a 2 a 3 2 Δ 3 = a a a 2 = 3 2 = =-3< a 3 D_3=[2 ;3 2; 3] %deklaruje elementy wyznacznika D_3 Delta_3=det(D_3) %oblicza wartość wyznacznika = -3 Ponieważ wartości wyznaczników drugiego i trzeciego stopnia są ujemne, to układ regulacji jest niestabilny. Strona 4 z
3. Kryterium Nyquista Kryterium Nyquista pozwala na badanie stabilności jednowymiarowego układu zamkniętego na podstawie przebiegu wykresu funkcji G o (jω) układu otwartego na płaszczyźnie zmiennej zespolonej. Sformułowane przez Nyquista kryterium stabilności przedstawia się następująco: A) Jeżeli układ otwarty jest stabilny to układ zamknięty jest też stabilny wtedy i tylko wtedy, gdy wykres charakterystyki G o (jω) przy wzroście ω od do, nie obejmuje punktu o współrzędnych (-, j). B) Jeżeli układ otwarty nie jest stabilny i jego transmitancja ma r biegunów w prawej półpłaszczyźnie zmiennej zespolonej to układ zamknięty jest stabilny wtedy i tylko wtedy, gdy wykres charakterystyki G o (jω) przy wzroście ω od do, obejmuje punkt (-,j) r/2 razy. W pewnych przypadkach wygodniej jest posługiwać tzw. regułą lewej strony, która mówi, że układ zamknięty jest stabilny, jeżeli przy wzroście ω od do, punkt (-,j) znajduje się w obszarze po lewej stronie wykresu G o (jω). W praktycznych zastosowaniach kryterium Nyquista jest szczególnie przydatne w przypadku, gdy układ otwarty jest stabilny. Można wtedy korzystać z przebiegu charakterystyki G o (jω) układu otwartego zdjętej doświadczalnie, co pozwala na badanie stabilności także układu, którego opis matematyczny nie jest znany. a) Badanie stabilności układu zamkniętego za pomocą kryterium Nyquista dla obiektu i regulatora P o zmiennym wzmocnieniu k P. Gob=tf([],[ 2 2 ]) %obiekt o transmitancji Gob(s) Gr=tf([2],[ ]) %regulator typu P o wzmocnieniu Kp=2 Gr2=tf([3],[ ]) %regulator typu P o wzmocnieniu Kp=3 Gr3=tf([4],[ ]) %regulator typu P o wzmocnieniu Kp=4 Go=Gr*Gob %układ otwarty z regulatorem Gr Go2=Gr2*Gob %układ otwarty z regulatorem Gr2 Go3=Gr3*Gob %układ otwarty z regulatorem Gr3 nyquist(go,go2,go3) %charakterystyki Nyquista dla trzech układów otwartych Układ regulacji jest stabilny, układ regulacji 2 jest na granicy stabilności, układ regulacji 3 jest niestabilny. Strona 5 z
b) Sprawdzenie punktu a) poprzez analizę położenia biegunów. Transmitancja układu otwartego: Go(s)=Gr(s)*Gob(s)=k P *(/(s 3 +2s 2 +2s+)) Transmitancja układu zamkniętego: Równanie charakterystyczne: M z (s)= s 3 +2s 2 +2s+k P += Przykład z Go: M=[ 2 2 3] %równanie charakterystyczne układu zamkniętego gdzie k P =2 roots(m) %zwraca pierwiastki równania charakterystycznego -.85 -.947 +.2837i -.947 -.2837i Wszystkie trzy pierwiastki równania charakterystycznego dla k P =2 mają części rzeczywiste ujemne układ zamknięty jest stabilny. Przykład z Go2: M=[ 2 2 4] %równanie charakterystyczne układu zamkniętego gdzie k P =3 roots(m) %zwraca pierwiastki równania charakterystycznego -2.. +.442i. -.442i W tym przypadku występują pierwiastki urojone sprzężone, zatem układ zamknięty jest na granicy stabilności. Przykład z Go4: M=[ 2 2 5] %równanie charakterystyczne układu zamkniętego gdzie k P =4 roots(m) %zwraca pierwiastki równania charakterystycznego -2.59.755 +.5228i.755 -.5228i Tym razem występują pierwiastki zespolone sprzężone, których części rzeczywiste są dodatnie, wobec tego układ zamknięty jest dla tego przypadku niestabilny. Strona 6 z
Odpowiedzi skokowe dla trzech analizowanych układów zamkniętych (CL, CL2, CL3): Gob=tf([],[ 2 2 ]) Gr=tf([2],[ ]) CL=feedback(Gob*Gr,) step(cl) Gr2=tf([3],[ ]) CL2=feedback(Gob*Gr2,) step(cl2) Gr3=tf([4],[ ]) CL3=feedback(Gob*Gr3,) step(cl3).4 CL.4 CL2.2.2.8.6.8.6.4.4.2.2 2 3 4 5 6 5 5 2 25 3 35 4 45 5 8 x 25 6 CL3 4 2-2 -4-6 -8 2 3 4 5 6 7 8 Strona 7 z
c) Badanie stabilności układu zamkniętego za pomocą kryterium Nyquista dla obiektu oraz regulatora PI o stałym wzmocnieniu k P = i zmiennych stałych całkowania T i. Stałe całkowania T i =, T i 2=2, T i 3=.8. Transmitancja regulatora Gr=k P (+(/T i s)) Gob=tf([],[ 2 2 ]) %generuje transmitancję obiektu Gr=tf([ ],[ ]) %tworzy regulator PI (K P =, T i =) Go=Gr*Gob %generuje transmitancję układu otwartego Gr2=tf([2 ],[2 ]) %tworzy regulator PI (K P =, T i =2) Go2=Gr2*Gob %generuje transmitancję układu otwartego Gr3=tf([.8 ],[.8 ]) %tworzy regulator PI (K P =, T i =.8) Go3=Gr3*Gob %generuje transmitancję układu otwartego nyquist(go,go2,go3) %kreśli charakterystyki Nyquista dla trzech układów otwartych.5 Nyquist Diagram Go Go2 Go3 -.5 Imaginary Axis - -.5-2 -2.5-3 -3.5-4 -.8 -.6 -.4 -.2 - -.8 -.6 -.4 -.2 Real Axis Układ zamknięty 2 jest stabilny, układ zamknięty jest na granicy stabilności, układ zamknięty 3 jest niestabilny. Strona 8 z
Odpowiedzi skokowe dla trzech analizowanych układów zamkniętych (CL, CL2, CL3): Gob=tf([],[ 2 2 ]) %generuje transmitancję obiektu Gr=tf([ ],[ ]) %generuje regulator PI (K P =, T i =) CL=feedback(Gr*Gob,) %generuje transmitancję układu zamkniętego z PI (K P =, T i =) Gr2=tf([2 ],[2 ]) %generuje regulator PI (K P =, T i =2) CL2=feedback(Gr2*Gob,) %generuje transmitancję układu zamkniętego z PI (K P =, T i =2) Gr3=tf([.8 ],[.8 ]) %generuje regulator PI (K P =, T i =.8) CL3=feedback(Gr3*Gob,) %generuje transmitancję układu zamkniętego z PI (K P =, T i =.8) step(cl) %generuje odpowiedź skokową układu regulacji CL step(cl2) %generuje odpowiedź skokową układu regulacji CL2 step(cl3) %generuje odpowiedź skokową układu regulacji CL3.8.6 CL.4.2 CL2.4.2.8.8.6.6.4.4.2.2 2 4 6 8 2 5 5 2 25 3 35 4 2 x 2 CL3.5.5 -.5 - -.5 5 5 2 25 3 35 4 45 5 Strona 9 z
Położenie zer (o) i biegunów (x) dla trzech układów regulacji (CL, CL2, CL3): pzplot(cl,cl2,cl3) %generuje położenie zer i biegunów dla trzech układów regulacji CL, CL2 i CL3.5 Pole-Zero Map CL CL2 CL3 Imaginary Axis (seconds - ).5 -.5 - -.5 -.6 -.4 -.2 - -.8 -.6 -.4 -.2.2 Real Axis (seconds - ) Strona z