Doplňky

Transkript

Doplňky
Doplňky k přednášce
24 – Diskrétní řízení
Diskrétní metody analogické spojitým
Michael Šebek
Automatické řízení 2013
21-4-13
Metody diskrétního návrhu
Automatické řízení - Kybernetika a robotika
• Metody diskrétního návrhu, které jsou stejné (velmi podobné) metodám
spojitého návrhu podrobně nepřednášíme, jenom je ukážeme na
příkladech
• Proto byly z hlavních přednáškových slajdů přesunuty sem
• Zde uvedené slajdy jsou hlavně pro ty studenty, kteří metody spojitého
návrhu neznají
• Ostatním mohou posloužit studentů jako opakování
Michael Šebek
ARI-24-2011
2
Stavová zpětná vazba – diskrétní verze
Automatické řízení - Kybernetika a robotika
• Skoro stejné jako ve spojitém případě:
Soustava, regulátor (stavová ZV) a výsledný systém
x=
Fx k + Guk
k +1
uk =
−Kx k + uC ,k
x k +1 =
GK ) x k + GuC ,k
(F−

Fnew
Úloha přiřazení charakteristického polynomu (pólů)
• Původní charakteristický polynom soustavy
det ( zI − F ) = z n + an −1 z n −1 +  + a1 z + a0
• chceme změnit na požadovaný charakteristický polynom
pnew ( z ) = z n + pn −1 z n −1 +  + p1 z + p0 = det ( zI − Fnew )
• Řešení - stejně, jako ve spojitém případě
• Např. Ackermannovým vzorcem
K = [ 0  0 1]C −1 pnew (F)
Michael Šebek
ARI-24-2011
3
Návrh stavové ZV ve zvláštním tvaru
Automatické řízení - Kybernetika a robotika
• Pokud je soustava v kanonickém tvaru řiditelnosti
 −an −1 −an − 2  −a1 −a0 
 1


0
0
0


=
G


 
 ,


 0
0
0 
 0
 0
 1
0
0 
F
1 
0 
 

 
0 
0 
• pak je v něm i celkový systém se ZV
Fnew
 −(an −1 + k1 ) −(an −2 + k2 )

1
0


F GK =
=−



0
0


0
0
 −(a1 + kn −1 ) −(a0 + kn ) 


0
0







0
0



1
0
• a k řešení stačí porovnat koeficienty
Michael Šebek
ARI-24-2012
=
k1 pn −1 − an −1

kn −=
p1 − a1
1
k=
p0 − a0
n
4
Řešení: Obecný případ transformací
Automatické řízení - Kybernetika a robotika
• Obecný případ můžeme vyřešit transformací souřadnic na triviální
případ, řešením triviálního případu a transformací zpět do
původních souřadnic
• Nejprve ze zadaných matic soustavy vypočteme její char. Polynom
det ( zI − F ) = z n + an −1 z n −1 +  + a1 z + a0
a z něj snadno napíšeme rovnice soustavy transformované do
 u (k )
  (k ) + G
1) Fx
x (k +=
kanonického tvaru
• z rovnic před a po transformaci teď najdeme transformační matici
 −1
x = T −1 x například pomocí matic řiditelnosti T −1 = CC
 FG

  … F n−1G
kde C G FG … F n−1G=
 a
C G
=

• v těchto souřadnicích snadno najdeme (řešením triviálního
případu) požadovanou ZV matici K
 −1
• a nakonec ji transformuje do souřadnic původních K = KT
Michael Šebek
ARI-24-2012
5
Jiný způsob výpočtu transformační matice
Automatické řízení - Kybernetika a robotika
• výpočet transformační matice pomocí matice řiditelnosti
a její inverze není numericky příliš spolehlivý
• ukážeme proto ještě alternativní postup
• díky zvláštní struktuře kanonického tvaru v něm má matice
řiditelnosti i její inverze také zvláštní tvar 
1 −a2 a22 − a1 


• např. pro soustavu řádu 3 je
C
=
−a
0 1
a také
• obecně je
Michael Šebek
1 a2
C −1 = 0 1
0 0
a1 
a2 
1 

0

1 an −1 an − 2
0 1 a
n −1

C −1 =  



0
0 0
0 0
0
ARI-24-2012
2
0
1



 a2 a1 
 a3 a2 
   

 1 an −1 
 0
1 
6
Jiný způsob výpočtu transformační matice
Automatické řízení - Kybernetika a robotika
• protože pro inverzi transformační matice je
 −1
T−1 = CC
• a přitom
=
C G FG … F n−1G 
• a právě odvozené
1 an −1
0 1

−1

C = 


0 0
0 0
an − 2  a2 a1 
an −1  a3 a2 

   

0  1 an −1 
0  0
1 
• dostáváme celkem
=
T−1 G FG + an −1G  F n −1G + an −1F n − 2G +  + a1G 
Michael Šebek
ARI-24-2012
7
Řešení Ackermannovým vzorcem
Automatické řízení - Kybernetika a robotika
Obecný případ můžeme vyřešit i přímo pomocí
Ackermannova vzorce
K = [ 0  0 1]C −1 pcl (F)
kde použijeme
• matici řiditelnosti
=
C G FG … F n−1G 
• a do požadovaného charakteristického polynomu
pcl ( z ) = z n + pn −1 z n −1 +  + p1 z + p0
• dosadíme matici soustavy
pcl (F) = F n + pn −1F n −1 +  + p1F + p0 I
Michael Šebek
ARI-24-2012
8
Pozorovatel pro diskrétní soustavu
Automatické řízení - Kybernetika a robotika
• Pokud chceme použít stavovou ZV,
ale nedokážeme měřit všechny
stavy, můžeme použít pozorovatele
• Pro diskrétní soustavu
x=
Fxk + Guk
k +1
xˆ=
Fxˆk + Guk
k +1
ˆ)
+ L( yk − yl
x k +1 =
Fx k + Guk , yk =
Hx k
• se pozorovatel skládá z
modelu soustavy a injekce z výstupu
xˆ k +1 = Fxˆ k + Guk + L( yk − yˆ k )
yˆ k = Hxˆ k
• Pro odchylku odhadování x= x − xˆ platí
x k +1 =
Fpoz x k
( F − LH ) xk =
h = 0.5
h =1
Michael Šebek
ARI-24-2012
h=2
9
Pozorovatel pro diskrétní soustavu
Automatické řízení - Kybernetika a robotika
• Vhodnou volbou matice L zajistíme,
aby matice pozorování
Fpoz= F − LH
• měla požadovaný charakteristický
polynom
x=
Fxk + Guk
k +1
xˆ=
Fxˆk + Guk
k +1
ˆ)
+ L( yk − yl
ppoz ( z ) = det ( zI − Fpoz ) = z n + an −1 z n −1 +  + a1 z + a0
• Jeho kořeny (póly pozorovatele) obvykle je volíme 2× až 6× rychlejší než
póly regulátoru. Jen když je šum senzoru tak silný, že je hlavním
problémem, volíme póly pozorovatele 2× pomalejší než póly regulátoru
Vše jako
• Při návrhu postupuje jako ve spojitém
 H 
ve
případě (tj. duálně k stav. ZV)
 HF 
spojitém

O=
• Např. užijeme duální Ackermannův vzorec
případě
  
L = ppoz (F)O −1 [ 0  0 1]
T
Michael Šebek
kde matice pozorovatelnosti
ARI-24-2012

n−1 
 HF 
10
Nepovinné: Luenbergerův redukovaný pozorovatel
Automatické řízení - Kybernetika a robotika
• Právě probraný pozorovatel s rovnicí xˆ k +1 = Fxˆ k + Guk + L( yk − yˆ k )
obsahuje zbytečné zpoždění, neboť jeho stav xˆk v čase k závisí jen
na měřeních provedených do času k-1
• Vůbec nevyužívá znalosti výstupu v čase k, který je také k dispozici
• Protože lze výstup přímo měřit (a považovat za jednu ze stavových
veličin), stačí vlastně odhadovat o 1 stav méně
• Je tedy výhodnější pozorovatel s rovnicí
xˆ k = Fxˆ k −1 + Guk −1 + L  yk − H ( Fx k −1 + Guk −1 ) 
=
( I − KH )( Fxˆ k −1 + Guk −1 ) + Lyk

Fx k −1
• Pro jeho chybu odhadu platí x k =
( F − LHF ) x k −1 =
• a volbou matice L opět můžeme nastavit libovolná vlastní čísla
Hxk =
• Dále yk − Hxˆ k =
( I − LH ) x k −1 a pokud vybereme L tak, aby
I − LH =
0 , je výstup odhadován bez chyby a můžeme eliminovat
jednu rovnici! Redukovaný pozorovatel neobsahuje model soustavy!
Michael Šebek
ARI-24-2012
11
Spojení pozorovatele a stavové ZV
Automatické řízení - Kybernetika a robotika
• Připojíme-li matici stavové ZV
ke stavům pozorovatele
(namísto stavů soustavy)
• Dostaneme klasickou ZV z výstupu
• Vše známe ze spojitého řízení tu platí:
• Takový regulátor má stavové rovnice
xˆ k +1 =( F − LH − GK ) xˆ k + Lyk + Grk
uk =
−Kxˆ k + rk
• A přenos
(
x=
Fxk + Guk
k +1
xˆ=
Fxˆk + Guk
k +1
+ L( yk − Hxˆk )
Vše jako ve
spojitém
případě
)
u ( z ) =−K ( zI − F + LH + GK ) Ly ( z ) + 1 − K ( zI − F + LH + GK ) G r ( z )
−1
−1
• Celkový systém má (ve stavech x, x ) hezké rovnice
takže jeho póly jsou:
GK   x k  G 
 x k +1  F − GK
+   rk póly regulace
 x   0



F − LH   x k   0 
 k +1  
+póly pozorování
Michael Šebek
ARI-24-2012
12
Přiřazení pólů polynomiálně
Automatické řízení - Kybernetika a robotika
regulátor soustava
u
q
b
Polynomiální řešení v z - stejné jako spojité
p
a
• Pro danou soustavu b( z ) a ( z )
a danou poloho pólů, vyjádřenou CL charakteristickým pol. c(z)
c( z )
• Vyřešíme rovnici a ( z ) p ( z ) + b( z )q ( z ) =
Polynomiální řešení v d
b( d ) a ( d ) , c ( d ) ⇒ a ( d ) p ( d ) + b( d ) q ( d ) =
c(d ) ⇒ q (d ) p (d )
• Podobné
Deadbeat polynomiálně - zvláštní případ přiřazení pólů
m
• V z volíme c( z ) = z , kde m ≥ (2× řád soustavy) – 1 , řešíme
y
a ( z ) p ( z ) + b( z ) q ( z ) =
zm
a vybereme řešení minimálního stupně ve q
• Při řešení v z −1 je to ještě jednodušší: Řešíme rovnici
a ( z −1 ) p ( z −1 ) + b( z −1 )q ( z −1 ) =
1
Michael Šebek
ARI-24-2012
13
Umístění pólů polynomiálně: v z
Automatické řízení - Kybernetika a robotika
regulátor soustava
Polynomiální řešení v z
u
y
q
b
p
a
• Je stejné, jako spojité řešení v s
• Pro danou soustavu b( z ) a ( z )
a danou poloho pólů, vyjádřenou CL charakter. polynomem c( z )
c( z ) a dostaneme q ( z ) p ( z )
• Vyřešíme a ( z ) p ( z ) + b( z )q ( z ) =
Michael Šebek
ARI-24-2012
14
Regulátor 2DOF
Automatické řízení - Kybernetika a robotika
• Pokud má řídicí systém referenční vstup
• Je přirozené použít regulátor se
dvěma stupni volnosti (2DOF)
q( z )
r( z)
u( z) =
−
y( z) +
yr ( z )
p( z )
p( z )
cx0
vx̂0
yr
r (s)
1 p( s)
u
b( s )
y
1 a( s)
q( s)
p ( z )u ( z ) =
− q ( z ) y ( z ) + r ( z ) yr ( z )
• pro kauzalitu musí být deg p ≥ deg [ q ( z ), r ( z ) ]
• klasické řízení odchylkou (1DOF) je zvláštní případ, kdy q( z ) = r ( z )
• při návrhu vypočteme ZV část ze známé rovnice
a ( z ) p ( z ) + b( z ) y ( z ) =
c( z )
• kde vhodně volíme CL charakteristický polynom
• ze srovnání se stavovým přístupem plyne, že c( z ) = cc ( z )co ( z )
• kde faktory jsou cc =
( z ) det ( zI − F + GK ) , co =
( z ) det ( zI − F + LH )
Michael Šebek
ARI-24-2012
15
Přímá větev
Automatické řízení - Kybernetika a robotika
• výsledný přenos celého systému je
b( z ) r ( z )
yr ( z )
a ( p ) p ( z ) + b( z ) q ( z )
b( z ) r ( z )
b( z ) r ( z )
=
yr ( z )
yr ( z )
c( z )
cc ( z )co ( z )
y( z) =
• přímou větev volíme např. tak, aby vykrátila póly
pozorovatele tj. co ( z ) | r ( z ) tedy například jako
r ( z ) = t0 co ( z )
y( z) =
t0 b ( z )
yr ( z )
cc ( z )
• pak jsou řídicí signály zavedeny tak, že negenerují odchylku pozorování
• konstantu t0 volíme tak, abychom zajistili požadované statické zesílení
• obvykle má být statické zesílení = 1, takže nastavíme t0 = cc (1) b(1)
Michael Šebek
ARI-24-2012
16
Diskrétní sledování – asymptotické a deadbeat
Automatické řízení - Kybernetika a robotika
Asymptotické sledování je u diskrétních systémů stejné jako u spojitých
• rovnice jsou stejné
ap + bq m,
f −t + br m,
m stabilní
=
=
• Podmínky jsou stejné
1) gcd(a, b) stabilní; 2) gcd( f − , b) = 1 ; 3) f − | a
• řešení je stejné v z i v z-1, až na to, že při řešení v z ještě musíme
vybrat m patřičně vysokého stupně
Na rozdíl od spojitého případu tu ale existuje varianta deadbeat , tedy
sledování za konečný počet kroků:
• Pokud postupujme v z, volíme m( z ) = z n −1
pokud v z-1, volíme m( z −1 ) = 1
• a vybereme řešení minimálních stupňů (nastává koincidence)
• řešení existuje, právě když gcd(a, b) = 1
ostatní podmínky jsou stejné.
Michael Šebek
ARI-24-2012
17