Příklady k přednášce 5 - Stavové metody Michael Šebek Automatické řízení 8 9-4-8
Příklad: Naivní návrh stavové ZV Naivní přístup je schůdný jen pro jednoduché případy, obvykle. řádu Uvažme soustavu (kyvadlo s frekvencí ω ) a umístěme dvojnásobný pól do polohy u ω + s -ω (čímž zdvojnásobíme přirozenou frekvenci a zvýšíme tlumení z na ). ps () ( s+ ω ) s + 4ωs+ 4ω Tedy požadujeme charakteristický polynom výsledného systému Výsledný charakteristický polynom je obecně s s det ( si ( A BK) ) det [ k k ] det s ω k+ ω s+ k s ks+ k ω + + Porovnáme obecné koeficienty s požadovanými a tím dostaneme koeficienty ZV k+ ω 4ω k 3ω K 3ω 4ω k ω k 4ω 4 Michael Šebek Pr-ARI-5-3
Příklad: Naivní návrh stavové ZV V Matlabu pro ω >> omega; A[ ;-omega^ ]; B[; ];Ceye(); D[;]; pendss(a,b,c,d) A - B u C y y D u y y >> K[3*omega^ 4*omega] K 3 4 >> AnewA-B*K Anew -4-4 >> pend_fbss(anew,b,c,d); >> impulse(pend,pend_fb,7),new,new ( ) ( ) ( ), new ( ), new Michael Šebek Pr-ARI-5-3 3
Příklad: Stavové ZV ve zvláštním tvaru Dynamika pohybu nohy příšery při natáčení Jurského parku (BiDo ed P.6): Model je v normální tvaru řiditelnosti, cíle je přiřadit póly do s, ± j u + Po zavedení stavové ZV dostaneme stavovou matici CL smyčky k k [ k k] Která má charakteristický polynom p ( new s ) s + ( + k ) s+ k Jelikož požadovaný charakteristický polynom je p s s+ + j s+ j s + s+ ( ) ( )( ) 4 8 CL dostáváme porovnáním k, k 8 Zkouška: 4 8 [ 8] Michael Šebek 4
Jak najít transformační matic pro převod do kan. tvaru? T, B TB, A TA T Průhledný delší postup - výpočet T : con con con n. Vypočteme matici řiditelnosti C B AB A B. Napíšeme kanonický tvar (vypočteme charakteristický polynom a dosadíme koeficienty do známé struktury matic Acon, Bcon ) n 3. Vypočteme matici řiditelnosti Ccon Bcon AconBcon A conbcon v nových souřadnicích 4. Vypočteme transformační matici T CC con Méně průhledný kratší postup - výpočet T : n. Jako výše C B AB A B. Vypočteme poslední řádek matice T jako n 3. Vypočteme matici T n n ta n ta t [ ] C n Michael Šebek 5 t n Systém musí být plně řiditelný, jinak nejde převést
Vysvětlení druhého postupu Postup využívá zvláštního tvaru matic A con, B con Ukážeme to na systému 3. řádu, obecně je to stejné Matici T - rozepíšeme po řádcích, které označíme takto Protože Acon T AT AconT T A tak a a3 a a3 a a3 t t t t A t t 3 3 Bcon T B t t B t 3 tb 3 3 t t B t AB tb tab 3 ta 3 t ta ta 3 T T t t t 3 ta 3 ta 3 t 3 B AB A B t C [ ] t3 [ ] C t3 3 Michael Šebek Pr-ARI-5-3 6
Příklad: Obecný případ Zadání: Výletní loď Asia Star k redukci kývání do stran (roll) používá plováky a stabilizátory a řídicí systém z obrázku SWATH Small-Waterplane-Area-Twin-Hull Z diagramu plyne stavový popis 3 3 Najděte stavovou ZV, aby výsledný systém měl póly + r+ d 8 6 s ± j, s 5, 3 Michael Šebek Pr-ARI-5-5 7
Řešení pomocí zvláštního tvaru Zadaná data A, B 8 6 pcl() s s+ + j s+ + 3 s + 9s + 68s+ ( )( j)( s 5) Z toho je char. polynom soustavy ( s )( ) as s s s 3 ( ) + + 6s s + + 8 Matice v kanonickém tvaru řiditelnosti můžeme napsat rovnou A con 6, Bcon >> pformat rootc >> A[ ; - ; -8],B[;;6] A - -8 B 6 >> adet(s*eye(3)-a) a s(s+8)(s+) >> s-+j*;ss';s3-5; >> pcl(s-s)*(s-s)*(s-s3) pcl (s++i)(s+-i)(s+5) >> Acon[-a{},-a{},-a{};,,;,,], Bcon[;;] Acon - -6 Bcon Michael Šebek Pr-ARI-5-5 8
Řešení pomocí zvláštního tvaru Výpočet transformační matice. Pomocí zadané a kanonického tvaru C 6 48 384 84 Ccon T CC T 6. nebo druhým způsobem, při němž vypočteme nejdříve T a pak teprve kanonický tvar con >> CON[B A*B A*A*B] CON - 6-48 384 >> CONcon[Bcon,Acon*Bcon,Acon*Acon*Bcon] CONcon - 84 - >> TCON/CONcon T 6 >> CONT[B A*B A*A*B];CONTiinv(CONT); >> t3conti(3,:); >> Ti[t3*A^;t3*A;t3];Tinv(Ti); >> AconTi*A*T,BconTi*B; Michael Šebek Pr-ARI-5-5 9
Příklad: Obecný případ pomocí zvláštního tvaru Návrh v kanonické formě A K con new,con [ 9 5 ] 9 68 Transformace vektoru zpětné vazby do původních souřadnic K K T con ( I A ) new [.833.5] Zkouška Anew A BK 6 7 7 det s ( s+ 5)( s+ + j)( s+ j) >> Kconpcl{:-:}-a{:-:} Kcon 9 5 >> AnewconAcon-Bcon*Kcon Anewcon 9-68 eig(anewcon) ans -5 + i - + i - - i >> >> KKcon/T K..833.5 >> AnewA-B*K Anew - -6-7 -7 >> eig(anew) ans -5 + i - + i - - i Michael Šebek Pr-ARI-5-5
Příklad: Obecný případ Ackermannovým vzorce Výpočet pomocí Ackermannova vzorce K [.83.5] >> KKCON\mvalue(pcl,A) KK 6. 8... 3.667.8667..833.5 >> KKKK(3,:) KK..833.5 V CSTb jsou na to funkce acker a place >> KKKacker(A,B,[s,s,s3]) KKK..833.5 >> KKKKplace(A,B,[s,s,s3]) KKKK..833.5 Michael Šebek Pr-ARI-5-3
Soustava (Fe5s479) 7 A B z [ ] C D Analýza nula v s z póly v s -3, s -4, neřiditelný pro z -3, -4 Specifikace návrhu umístit póly do s, ζωn ± jωn ζ tj. požadovaný CL charakteristický polynom p s + ζω s+ ω CL n n Gs () Příklad: Tepelný systém >> syms s z k k dzeta omegan >> A[-7 ;- ],B[;-z],C[ ], D,K[k k] >> GC/(s*eye()-A)*B+D;Gfactor(G) G (s-z)/(s+4)/(s+3) s z ( s+ 4)( s+ 3) >> Cont[B A*B] Cont [, -7-z] [ -z, -] >> det(cont) ans --7*z-z^ >> factor(det(cont)) ans -(z+4)*(z+3) >> pcls^+*dzeta*omegan*s+omegan^ pcl s^+*dzeta*omegan*s+omegan^ Michael Šebek Pr-ARI-5-5
Návrh naivní metodou CL charakteristický polynom pnew det ( si ( A BK) ) s + ( k zk + 7) s+ kz k(7z+ ) porovnáme s požadovaným pcl s + ζωns+ ωn dostaneme rovnice k zk ζω 7 + n kz k(7z ) ωn a z nich k k z z (7 ζωn) + ωn ( z + 3)( z + 4) ζω ω ζω ( z + 3)( z + 4) (4 n 37 n) + ( n 7) Tepelný systém - pokračování >> pnewdet(s*eye()-(a-b*k));pclcollect(pcl,s) pnews^+(k-z*k+7)*s+-z*k-7*z*k-*k >> rozcollect(pcl-pcl,s) roz (k-z*k+7-*dzeta*omegan)*s -*k+-z*k-7*z*k-omegan^ >> KKsolve('k-z*k+7-*dzeta*omegan', '-*k+-z*k-7*z*k-omegan^',k,k) >> [NK,DK] numden(kk.k) >> [NK,DK] numden(kk.k) >> Nkcollect(NK,z) >> Nkcollect(NK,z) >> Dkfactor(DK) >> knk/dk k ((-37-omegan^+4*dzeta*omegan)*z-84 +4*dzeta*omegan) /(z+4)/(z+3) >> knk/dk k((7-*dzeta*omegan)*z-omegan^+) /(z+4)/(z+3) Michael Šebek 3
Koeficienty stavové ZV jsou k k z z (4 n 37 n) ( n 7) ζω ω + ζω ( z + 3)( z + 4) (7 ζωn) + ωn ( z + 3)( z + 4) Analýza výsledku zřejmě ZV zesílení roste, když se nula z blíží -3 nebo -4, tj. když soustava ztrácí řiditelnost Když se ztrácí řiditelnost, řídicí systém má stále těžší práci Velikost ZV zesílení také roste, s rostoucím ω n To opět ukazuje, že když chceme posunout póly daleko od původních hodnot, musíme použít velká zesílení Michael Šebek Pr-ARI-5-3 4
příklady: Stavová ZV nemění nuly Asia Star >> A[ ; - ; -8]; B[;;6]; C[ ]; >> Gsdf(A,B,C) G.e+ ----------------- 6s + s^ + s^3 >> KKKplace(A,B,[-+*j,--*j,-5]) KKK..833.5 >> AnewA-B*KKK Anew. -.. -6. -7. -7. >> Gnewsdf(Anew,B,C) Gnew.e+ ----------------------------.e+ + 68s + 9s^ + s^3 Tepelný systém >> A[-7 ;- ];B[;-]; C[ ]; Gsdf(A,B,C) G - + s ------------- + 7s + s^ >> proots([ 4]) p -. +.73i -. -.73i >> Kplace(A,B,p) K -3.8.6 >> AnewA-B*K Anew -3..4-9.6. >> Gnewsdf(Anew,B,C) Gnew - + s ------------ 4 + s + s^ V obou případech se nuly se nezměnily, nevznikly, nezanikly, ale póly ano Michael Šebek Pr-ARI-5-3 5
Soustava s přenosem Specifikace Třetí pól zvolíme tak, aby vykrátil nulu soustavy Návrh 5 4 + uy, [ ] % OS 9.5%, T.74s s 5.4 ± j7. s Jak toho využít - krácení nul Výsledný přenos Tcelk () s s +.8s + 8 s+ 5.4 + j7. s+ 5.4 j7. Pokud soustava nemá nuly (a tedy není co krátit), volíme další potřebné CL póly dostatečně nalevo, [.8 3 45] ( )( ) s3 5 K 5.8 35 45 Michael Šebek Pr-ARI-5-3 6 A celk Gs () s s ( s + 5) ( + )( s+ 4)
Příklad: ustálená odezva Soustava s maticemi A,, B C [ ] umístění pólů do -,- >> A[ ; -];B[;];C[ ];J; >> Kaplace(A,B,[-,-]) K.. >> Gsdf(A-B*K,B,C), step(g) G ------------ + 3s + s^ K [ ] r y umístění do -.5,-.5 K [ 3.75 3] >> Kplace(A,B,[-.5,-.5]) K 3.75 3. >> Gsdf(A-B*K,B,C), step(g) fb -------------- 3.7 + 4s + s^ Michael Šebek Pr-ARI-5-3 7
Příklad: řešení pomocí FF Ustálené zesílení můžeme napravit přímovazebním členem r FF M + + u soustava F + Gu H y G() ( ) G() C A BK B M F() G() M K stavová ZV Pokračování příkladu r >> Grdf(G) G / + 3s + s^ >> M/value(G,) M. >> FM*G F / + 3s + s^ >> step(f) >> MM-/(C/(A-B*K)*B) MM. y Michael Šebek Pr-ARI-5-3 8
Pro soustavu Navrhneme 5 3, [ ] + u y nejprve stavovou zpětnou vazbu, aby OS% %, T S.5s a pak integrální řízení Stavová ZV Požadavkům odpovídá výsledný charakteristický pol. s + 6s+ 83. Model je v kanonické formě, takže po zavedení ZV bude char. pol. s + ( 5+ k) s+ ( 3+ k) Porovnáním dostaneme K [ k k] [ 8.] Po aplikaci ZV 6 83. ( A BK) + Bu + u y C Ale e step ss [ ] ( ) Příklad: Integrální řízení, + C A BK B.55.9945 Michael Šebek Pr-ARI-5-3 9
Integrální řízení Přidáme integrátor a dostaneme systém 3.řádu Protože soustava nemá nuly, tak do požadovaného charakteristického polynomu přidáme jeden pól hodně vlevo ( )( ) Výsledný systém má (viz další slajd) charakteristický polynom Porovnáním dostaneme Příklad: Integrální řízení + 6 + 83. + + 6 + 783. + 83 3 s s s s s s ( ) ( ) s + 5+ k s + 3+ k s KI 3 k k K I, 78., 83 Alternativně můžeme postupovat třeba Ackermannovým vzorcem pro velký (celkový) systém K K K 78. 83 celk [ ] [ ] Michael Šebek Pr-ARI-5-3 I
Soustava je v kanonické formě, řešení je snadné: Celkový systém se zpětnými vazbami A jeho charakteristický polynom Příklad: Integrální řízení 5 3 [ k k] KI + r I [ ] I ( k+ 5) ( k + 3) KI + r, y [ ] I I s+ ( k+ 5) ( k + 3) K det ( si Abig ) det s s 3 ( 5) ( 3) ( 5 ) ( 3 ) s+ k + s + k + s K s + + k s + + k s K I I I Michael Šebek Pr-ARI-5-3
Výpočet Ackermannovým vzorcem Příklad: Integrální řízení >> A[-5-3; ];B[;];C[ ]; Abig[A,zeros(,);-C,],Bbig[B;] Abig -5-3 - Bbig >> CON[Bbig,Abig*Bbig,Abig^*Bbig] CON -5-5 - >> p_celk(s+)*(s^+6*s+83.) p_celk.8e+4 +.8e+3s +.e+s^ + s^3 >> roots(p_celk) ans -8. +.933i -8. -.933i -. >> Kcelk[ ]*inv(con)*mvalue(p_celk,abig) Kcelk.e+4 *..78 -.83 >> polesroots(p_celk) poles.e+ * -. -.8 +.9i -.8 -.9i >> place(abig,bbig,poles) ans.e+4 *..78 -.83 Michael Šebek Pr-ARI-5-3
Příklad: Integrální řízení Simulace >> Cbig[C ],Bref[;;] Cbig Bref >> Tsdf((Abig-Bbig*Kcelk),Bref,Cbig).83e+4 ----------------------------------------------.83e+4 +.783e+3s + 6.s^ + s^3 >> step(t) >> Tdcvalue(T,) Tdc >> -Cbig*inv(Abig-Bbig*Kcelk)*Bref ans. >> e_infty+cbig*inv(abig-bbig*kcelk)*bref e_infty.e-6 T() s e 83 + 6 + 783. + 83 3 s s s ( K ) + C A B B step, ss big big big celk ref Michael Šebek Pr-ARI-5-4 3