Příklady k přednášce 6 - Pozorovatel a výtupní ZV Michael Šebek Automatické řízení 08 6-4-8
Příklad: Pozorovatel pro kyvadlo naivně pro kyvadlo frekvencí ω 0 a rovnicemi x 0 x 0 navrhneme pozorovatel dvojitým x = ω0 0 x + pólem v, = -0ω 0 y = [ 0] x charakteritický polynom pozorovatele má tedy být ( ) ppoz ( ) = + 0ω0 = + 0ω0+ 00ω0 přitom obecně je det ( I ( A LC) ) 0 0 l = + l = det l l ω0 l ω0 = + + + + 0ω0 Z toho porovnáním L = 99ω 0 [ ] det 0 0 ω0 0 l Michael Šebek Pr-ARI-6-03 u PozorovatelKyvadlo.mdl
Pro ytém modelem Příklad: Pozorovatel pro orientaci atelitu 0 0 x = x u 0 0 + y = x [ 0] Jme již navrhli tavovou ZV umiťující jeho póly do, = ( ± j) čemuž odpovídá výledný přeno ωn =, ζ = 0.707 Pro pozorovatele zvolíme ωn = 5, ζ = 0.5 tedy póly ve 3,4 = 5( 0.5 ± j 3 ).5 ± j4.3 a charakteritickým polynomem ppoz = + 5+ 5 Vypočteme 5 L = 5 >> A=[0 ;0 0];B=[0;];C=[ 0];D=0; >> G=df(A,B,C,D); >> od=qrt(3)/*5; >> ppoz=(+.5+j*od)*(+.5-j*od) ppoz = 5 + 5 + ^ >> pcpoz=root(ppoz) pcpoz = -.5000 + 4.330i -.5000-4.330i >> % DUALITA TAM >> AA=A ;BB=C ;CC=B ; >> KK=acker(AA,BB,pcpoz) KK = 5.0000 5.0000 >> KK=place(AA,BB,pcpoz) KK = 5.0000 5.0000 >> % DUALITA ZPATKY >> L=KK' L = 5.0000 5.0000 >> Apoz=A-L*C Apoz = -5.0000.0000-5.0000 0 >> eig(apoz) an = -.5000 + 4.330i -.5000-4.330i Michael Šebek Pr-ARI-6-05 3
Pro orientaci atelitu rovnicemi (Fe5 Ex7.8 53) 0 0 x = x+ uy, = [ 0] x 0 0 jme již navrhli tavovou ZV Příklad: Orientace atelitu ZV z výtupu K = G () [.44] = >> A=[0 ;0 0];B=[0;];C=[ 0];D=0 >> G=df(A,B,C,D); >> b=g.num;a=g.den; >> ro=;aopt=pf(a*a'+ro*b*b'); >> pc=root(aopt); >> K=place(A,B,pc); >> od=qrt(3)/*5; >> pcpoz=[-.5+j*od,-.5-j*od]; >> AA=A';BB=C';CC=B'; >> L=(place(AA,BB,pcpoz)).'; a nezávile i pozorovatele 5 L = 5 pojení dává regulátor přenoy 5 40 5 + 5+ u () = y () + r () 33 + 6.4+ 33 + 6.4+ Areg=A-B*K-L*C; Fy=df(Areg,L,-K) Fy = -5-40 --------------- 33 + 6.4 + ^ >> Fr=-df(Areg,B,K) Fr = 5 + 5 + ^ --------------- 33 + 6.4 + ^ >> root(fy.den) an = -3.07 + 4.7734i -3.07-4.7734i Michael Šebek Pr-ARI-6-05 4
pokračování Automatické řízení - Kybernetika a robotika Připojme navržený regulátor k outavě F () = y F () = r 5 40 33+ 6.4+ 5 + 5+ 33+ 6.4+ G () = r F () r Fy () u G () y celkový přeno vypočteme z F ry celk Kde jou póly pozorovatele? GF () r () () = GF () () y >> Frycelk=G*Fr/(-G*Fy) Frycelk = 8.3e+^+3.3e+^3+90^4+^5+^6 --------------------------------------------/-------------- 8.3e+^+.5e+3^3+.4e+3^4+4.6e+^5+.e+^6+3^7+^8 >> Frycelk=coprime(G*Fr/(-G*Fy)) Frycelk = -------------- +.4 + ^ >> root(frycelk.den) an = -0.707 + 0.707i -0.707-0.707i Michael Šebek Pr-ARI-6-05 5
pokračování Automatické řízení - Kybernetika a robotika Pro jitotu vypočteme celkový přeno také ze tavových rovnic celkového ytému x A BK BK x B = + 0 e 0 A LC e r x y = [ C 0] e Výledek je tejný Zkume pro celkový ytém vypočítat matice řiditelnoti a pozorovatelnoti Celkový ytém je pozorovatelný, ale není řiditelný, neboť Pozorovatel není řiditelný! >> Acelk=[A-B*K,B*K;zero(,),A-L*C] Acelk = 0.0000 0 0 -.0000 -.44.0000.44 0 0-5.0000.0000 0 0-5.0000 0 >> Bcelk=[B;zero(,)] Bcelk = 0 0 0 >> Ccelk=[C,zero(,)] Ccelk = 0 0 0 >> Frycelk=df(Acelk,Bcelk,Ccelk) Frycelk = -------------- +.4 + ^ >> obv(acelk,ccelk) an =.0000 0 0 0 0.0000 0 0 -.0000 -.44.0000.44.44.0000-4.7696 -.0000 >> ctrb(acelk,bcelk) an = 0.0000 -.44.0000.0000 -.44.0000 0.0000 0 0 0 0 0 0 0 0 Michael Šebek Pr-ARI-6-03 6
pokračování Automatické řízení - Kybernetika a robotika Pro tejný počáteční tav outavy a pozorovatele je výtup totožný, pro různý p. e výtupy liší Pozorovatel je v celkovém ytému pozorovatelný, ale není řiditelný SatelliteAttitude.mdl Michael Šebek Pr-ARI-6-07 7
Pro outavu přenoem 35 +.7 + 00 ( )( ) Navrhněte tavový regulátor e pecifikacemi OS% = 0%, T S = Předpokládejte, že tavy nelze měřit, Proto navrhněte pozorovatel e pecifikacemi OS% = 0%, ω 0ω Volitelné póly umítěte 0x více nalevo než jou dominantní póly Příklad: Řízení polohy - azimutu antény n, poz n, reg Michael Šebek Pr-ARI-6-03 8
Pokračování: řízení polohy antény Stavová ZV Ze pecifikací OS% = 0%, T S = plyne ζ = 0.59, ω n, reg = 6.77 rad Z toho plyne, že charakteritický polynom muí mít pro dominantní póly faktor + 8+ 45.8 a amotné dominantní póly jou, = 4 ± j5.46 Soutava je 3. řádu, proto muíme ještě jeden pól zvolit Umítíme ho do nedominantní polohy 3 = 40 Tedy budeme tavovou ZV přiřazovat charakteritický polynom ( )( ) 3 + 8 + 45.8 + 40 = + 48 + 365.8 + 83 Pro outavu najdeme tavovou realizaci v normální formě řiditelnoti maticemi 0.7 7 0 A= 0 0, B 0 =, C = [ 0 0 35] 0 0 0 Michael Šebek Pr-ARI-6-03 9
Po zavedení tavové ZV bude mít výledná tavová matice tvar ( ) ( ) 0.7+ k 7+ k k3 A = 0 0 0 0 A charakteritický polynom Porovnáním požadovaným 3 + 48 + 365.8 + 83 Dotaneme matici tavové ZV Pokračování: řízení polohy antény 3 ( ) ( ) ( ) det I ( A BK) = + 0.7+ k + 7+ k + k [ k k k ] [ ] K = 3 = 53.7 94.8 83 3 Michael Šebek Pr-ARI-6-03 0
Návrh pozorovatele Převedeme model do normální formy pozorovatelnoti 0.7 7 0 A = 0 0 0 0 Tomu odpovídá tranformační matice T Pokračování: řízení polohy antény x= Tx ob C = [ 0 0 35] Cob = [ 0 0] = O Oob = = Po zavedení výtupní injekce do normálního tvaru má charakteritický polynom pozorovatele tvar 3 ( I A L C ) ( ) ( ) det ( ) = + 0.7+ l + 7+ l + l ob ob ob 0.7 0 = 7 0 0 0 0 3 Michael Šebek Pr-ARI-6-08 A ob 0 0 35 0 0 7.6784 0.0768 0.0008 0 35 0 0 0 0.0768 0.0008 0 35 0 0 074 0 0.0008 0 0
Ze pecifikace pro pozorovatele plyne faktor ( ) Potřebný třetí pól pozorovatele budeme volit 0x víc nalevo 3 = 400 Tedy je požadovaný charakteritický polynom pozorovatele celkem Porovnáním 3 + 0.7+ l + 7+ l + l ( ) ( ) 3 Pokračování: řízení polohy antény + 0.59 67.7 + 67.7 = + 80 + 4583 = + + + ( )( ) ( 40 j54.6)( 40 j54.6) 3 + 80 + 4583 + 400 = + 480 + 36580 + 833000 dotáváme L ob 378.3 = 364 833000 Nakonec muíme matici injekce ještě tranformovat do původních ouřadnic L 494 = TL ob =.57 0.86 Michael Šebek Pr-ARI-6-08
Pokračování: řízení polohy antény Automatické řízení - Kybernetika a robotika >> A=[-0.7-7 0; 0 0; 0 0]; >> B=[;0;0];C=[0 0 35]; >> creg=^3+48*^+365.8*+83, r=root(creg) creg =.8e+003 + 3.7e+00 + 48^ + ^3 r = -40.0000-4.0000 + 5.4589i -4.0000-5.4589i >> K=place(A,B,r) K =.0e+003 * -0.0537 0.948.830 >> cpoz=(^+80*+4583)*(+400), rpoz=root(cpoz) cpoz =.8e+006 + 3.7e+004 + 4.8e+00^ + ^3 rpoz =.0e+00 * -4.0000-0.4000 + 0.546i -0.4000-0.546i >> L=(place(A',C',rpoz))' L =.0e+003 *.493-0.006 0.0003 >> Abig=[A-B*K,B*K;zero(3,3),A-L*C]; >> Bbig=[B;zero(3,)];Cbig=[C,zero(,3)]; >> T=df(Abig,Bbig,Cbig) T.3e+003 ----------------------------------.8e+003 + 3.7e+00 + 48^ + ^3 >> tep(t) Michael Šebek Pr-ARI-6-03 3
Pokračování: řízení polohy antény Automatické řízení - Kybernetika a robotika >> A=[-0.7-7 0; 0 0; 0 0]; >> B=[;0;0];C=[0 0 35]; >> creg=^3+48*^+365.8*+83, r=root(creg) creg =.8e+003 + 3.7e+00 + 48^ + ^3 r = -40.0000-4.0000 + 5.4589i -4.0000-5.4589i >> K=place(A,B,r) K =.0e+003 * -0.0537 0.948.830 >> cpoz=(^+80*+4583)*(+400), rpoz=root(cpoz) cpoz =.8e+006 + 3.7e+004 + 4.8e+00^ + ^3 rpoz =.0e+00 * -4.0000-0.4000 + 0.546i -0.4000-0.546i >> L=(place(A',C',rpoz))' L =.0e+003 *.493-0.006 0.0003 >> Abig=[A-B*K,B*K;zero(3,3),A-L*C]; >> Bbig=[B;zero(3,)];Cbig=[C,zero(,3)]; >> T=df(Abig,Bbig,Cbig) T.3e+003 ----------------------------------.8e+003 + 3.7e+00 + 48^ + ^3 >> tep(t) Michael Šebek Pr-ARI-6-03 4