15 - Stavové metody
Michael Šebek
Automatické řízení 2013
22-5-13
Stavová zpětná vazba
Automatické řízení - Kybernetika a robotika
Když můžeme měřit celý stav systému (všechny složky stavového vektoru),
• pak je můžeme využít k řízení
u = −Kx + r
− [ k1
k2
 x1 
x 
 kn ]  2  + r

 
 xn 
soustava
r
++
u
=
x Ax + Bu
x
y
C
−K
regulátor
Na rozdíl od dosud probíraných regulátorů:
• vstupem regulátoru je vektor – je potřeba více senzorů
• využíváme víc informace než při ZV z výstupu
• do regulátoru vstupuje jiný signál, než který chceme řídit
• regulátor není dynamický, je jen „proporcionální“
Je stavový regulátor je složitější nebo jednodušší než dynamická
ZV z výstupu?
Michael Šebek
ARI-15-2013
2
Zpětnovazební systém
Automatické řízení - Kybernetika a robotika
x Ax + Bu dosadíme u =
• Když do =
−Kx + r , dostaneme
x = Ax + Bu = Ax + B ( −Kx + r ) = ( A − BK ) x + Br
• Rovnice výsledného systému je
( A − BK ) x + Br
x =
• Zavedení stavové zpětné vazby změnilo původní matici systému
=
x Ax + Bu
=
x ( A - BK ) x + Br
• Výstupní rovnice y = Cx se nezměnila
• Jak moc můžeme matici ZV změnit?
A new
 a11
a
=A − BK = 21
 

 an1
a12  a1n   b1 
a22  a2 n  b2 
−
[k
     1
  
an 2  ann  bn 
k2  kn ]
Z porovnání hodností je zřejmé, že všechny prvky libovolně změnit nemůžeme
Michael Šebek
ARI-15-2013
3
Co tedy umí stavová zpětná vazba?
Automatické řízení - Kybernetika a robotika
• I když se to na první pohled nezdá, platí
Věta
• Vhodnou volbou prvků K můžeme libovolně (až na komplexně
sdružené dvojice) umístit vlastní čísla matice A new= A − BK
• a to právě když soustava je úplně řiditelná.
Jinými slovy
• Můžeme libovolně umístit póly výsledného systému
(právě když soustava je úplně řiditelná)
det ( sI − A )
det ( sI − A new=
) det ( sI − ( A − BK ) )
• Porovnejte s metodou RL: Ta všechny póly libovolně umístit nedokáže. Proč?
• Póly opravdu jen posouvá, ale nepřidává – srovnej s dynamickou výstupní ZV
Všimněte si ještě:
• Nutná a postačující podmínka je úplná řiditelnost
• Právě proto je tento pojem tak důležitý
Michael Šebek
ARI-15-2013
4
Umístění pólů - Naivně a v kanonickém tvaru
Automatické řízení - Kybernetika a robotika
• Pro 1. a 2. řád řešíme - naivně - přímo z rovnice
det ( sI − A new=
) det ( sI − ( A − BK ) )
Pro vyšší řády to obvykle nejde, protože vycházejí příliš složité rovnice.
• Pro soustavu v kanonické formě řiditelnosti
A
 −an −1 −an − 2  −a1 −a0 
 1


0
0
0


=
B


 
 ,



0
0
0
0


 0
 1
0
0 
1 
0 
 
 
 
0 
0 
det ( sI − A ) = s n + an −1s n −1 +  + a1s + a0
je řešení jednoduché, neboť i výsledný systém je v tomto zvláštním tvaru
Michael Šebek
ARI-15-2013
5
Pokračování: Umístění pólů v kanonickém tvaru
Automatické řízení - Kybernetika a robotika
• opravdu je A new =
A − BK =
 −an −1
 1

 

 0
 0
−an − 2  −a1
 0
0

 
0
0


0
1
−a0  1  [ k1  kn ]
0  0 
  −  
  
0   0   −( a + k ) −( a + k )
1
2
n −1
n−2




0  0
1
0

=



0
0


0
0
• a výsledný charakteristický polynom je
 −(a1 + kn −1 ) −(a0 + kn ) 

0
0







0
0



1
0

c( s) = det ( sI − Anew ) = s n + ( an −1 + k1 ) s n −1 +  + ( a1 + kn −1 ) s + ( a0 + kn )
• prvky matice K vybereme tak, aby se koeficienty
polynomu rovnaly požadovaným
c( s ) = s n + cn −1s n −1 +  + c1s + c0
Michael Šebek
ARI-15-2013
k1 cn −1 − an −1
=

kn −1= c1 − a1
k=
c0 − a0
n
6
Řešení pro obecný tvar
Automatické řízení - Kybernetika a robotika
x = Tx con
Pokud soustava není v normálním tvaru řiditelnosti,
můžeme problém řešit převodem do tohoto tvaru
A = TA con T−1
1. Pomocí matice řiditelnosti vypočteme
B = TB con
transformační matici T
2. Převedeme naše rovnice s maticemi A, B do kanonické formy řiditelnosti
−1
=
A con T=
AT,
B con T−1B
3.
4.
Vypočteme matici stavové ZV pro tuto formu K con
Matici ZV transformujeme zpátky do původních souřadnic transformací
K = K con T−1
Odvození transformace pro matici zpětné vazby
x con =
( Acon − Bcon K con ) xcon + Bcon r
x =
T ( A con − B con K con ) T −1x + TB con r
=
( A − BK
con
T−1 ) x + Br
=
( A − BK ) x + Br
Michael Šebek
ARI-15-2013
7
Ackermannův vzorec
Automatické řízení - Kybernetika a robotika
Kompaktní řešení:
• Je-li soustava v obecném tvaru s maticemi A, B a požadujeme-li výsledný
CL charakteristický polynom
c( s ) = s n + cn −1s n −1 +  + c1s + c0
• pak je matice stavové zpětné vazby dána Ackermannovým vzorcem
K = [ 0  0 1]C −1c( A)
• kde C =  B AB  A n−1B  je matice řiditelnosti soustavy
• a matice c( A) = A n + cn −1A n −1 +  + c1A + c0 I n vznikne dosazením
původní matice soustavy do požadovaného CL charakteristického polynomu
Poznámky:
• Výpočet matice řiditelnosti a tudíž ani Ackermannův vzorec není numericky
moc spolehlivý a funguje tak do řádu 10
• Nepoužívej inverzi, ale „lomítko“ (řešení soustavy rovnic)
• V Matlabu lépe naprogramován ve funkci place ,
ale ta funguje jen pro jednonásobné požadované póly
Michael Šebek
8
Vlastnosti: Stavová ZV nemění nuly
Automatické řízení - Kybernetika a robotika
• Z definice plyne, že nuly systému bez ZV
 sI − A
det 
(tedy s maticemi A, B, C ) jsou řešením rovnice
 −C
• zatímco nuly systému s ZV (tedy s
 sI − ( A − BK )
det 
maticemi A-BK, B, C ) jsou řešením rovnice
−C

• Jenže obě matice mají stejný determinant:
B
=0

0
B
=0

0
  sI − A B   I 0  
 sI − A B 
 sI − A + BK B 
 sI − ( A − BK ) B 
=
det 
det
=
det
=
det


 K I  




−
C
0
−
C
0
−
C
0
−
C
0












takže oba systémy mají stejné nuly! (Pokud má systém více vstupů nebo
výstupů, matice není čtvercová, det neexistuje, ale závěry jsou stejné)
• Tedy stavová zpětná vazba nuly systému neovlivní! - srovnej s výstupní ZV
• Jelikož má výsledný ZV systém stejné nuly jako soustava (a ty známe
dopředu), můžeme stabilní nuly soustavy zahrnout mezi požadované
CL póly a tím je z výsledného přenosu „vykrátit“.
• To využijeme zejména když ze specifikací neplyne poloha všech CL pólů
a my stejně musíme nějaké další volit.
Michael Šebek
9
Vlastnosti: Problémy s ustálenou odezvou
Automatické řízení - Kybernetika a robotika
• Stavová ZV dobře mění dynamiky, ale už neumožňuje nezávisle ovlivnit
ustálenou odezvu - často vede na nenulovou ustálenou odchylku na skok
• Stejnosměrné zesílení soustavy (bez ZV)
(
P(0) =−
C( sI A) −1 B + D
)
s =0
=
−CA −1B + D
• se po zavedení stavové zpětné vazby se změní na
(
T (0) =
C( sI − ( A − BK )) −1 B + D
)
s =0
=
−C( A − BK ) −1 B + D
u
r
málokdy je jednotkové
=
x Fx + Gu
M +
+
• Můžeme to napravit
−K
přímovazebním členem M = 1 T (0)
• Pak je zřejmě
=
Tcelk (0) M
=
(0)T (0) T=
(0) T (0) 1
• Ale toto řešení není robustní, neboť změna parametrů
(soustavy nebo ZV) změní výsledné zesílení na ne-jednotkové
Michael Šebek
ARI-15-2013
y
x
H
10
Integrální řízení
Automatické řízení - Kybernetika a robotika
• Robustní způsob, jak při stavové ZV zajistit jednotkové ustálené zesílení
• Do struktury soustavy se stavovou ZV,
xI =−Cx + r =r − y
přidáme integrátor regulační odchylky
• V ustáleném stavu pak bude xI , ss =0 ⇒ yss =rss
• Rovnice „rozpojeného systému“
y
x
u
jsou
r
x
x

K
=
x
Ax
+
B
u
C
∫
++
−
=
x Ax + Bu
y = Cx
−K
xI =
−Cx + r
I
I
I
• a kompaktně
Michael Šebek
 x   A 0   x  B 
0 
=
 x   −C 0   x  +  0  u + 1  r
 I  
 
 I 
x
y = [C 0]  
 xI 
ARI-15-2013
11
Integrální řízení
Automatické řízení - Kybernetika a robotika
• Když subsystémy „spojíme,“
u
r
x
x
−K +
=
x Ax + Bu
∫
−
tedy zavedeme stavovou ZV
+
od všech stavů celého systému
−K
x
u=
−Kx − K I xI =
− [K K I ]  
 xI 
• dostaneme
 x   A − BK −BK I   x  0 
x
=
+ =
r,
y [C 0]  
 x   −C




0   xI   1 
 I 
 xI 
I
I
y
x
I
C
• Matici „velké“ stavové ZV [ K K I ] navrhneme standardními metodami,
ale pro „velký“ systém s maticemi
 A 0  B 
 −C 0  ,  0 

  
• Funguje to podobně jako integrační složka složka v PID regulátoru
Michael Šebek
ARI-15-2013
12
Internal Model Control
Automatické řízení - Kybernetika a robotika
Obecněji:
• Pro sledování rampy obdobně přidáme 2 integrátory,
pro sledování paraboly 3 apod.
Ještě obecněji:
• Pro robustní sledování průběhu generovaného nějakým generátorem
(= splňujícího nějakou diferenciální rovnici)
• Přidáme obdobně tento generátor k systému
• Tato obecná metoda se jmenuje řízení s vnitřním modelem
(Internal Model Control – IMC)
Michael Šebek
ARI-15-2013
13
Download

null