Föreläsning 2 Anders Helmersson andersh@isy.liu.se ISY/Reglerteknik Linköpings universitet
Vad gör vi i dag Normer Representation av system Lyapunovekvationer Gramianer Balansering Modellreduktion
Lågförstärkningssatsen G Om G är stabilt och G < 1 så är det återkopplade systemet stabilit om 1. Vilken norm ska vi använda?
Normer p-normer för vektorer: x p = ( ) 1/p x i p i Vanligast, p = 1: summan av absolutbeloppen; p = 2: längden av vektorn x; p = : maximum av absolutbeloppen. Inducerade normer A 2 = sup x =0 Ax 2 x 2 = σ(a) maximala singulära värdet.
Singulära värden Singulärvärdesuppdelning där A = UΣV, U U = I, V V = I σ 1 σ 2 Σ =... σn där σ 1 σ 2... σ n 0. A A = (UΣV ) UΣV = VΣU UΣV = VΣ 2 V Således fås (A A)V = VΣ 2, vilket innebär att Σ 2 är egenvärdena till A A. Dock ingen bra numerisk metod för att beräkna Σ.
Representation av system Tillståndsform ẋ y = Ax + Bu = Cx + Du (1) Överföringsfunktion G(s) = C(sI A) 1 B + D (2) Ibland skriver vi detta som [ ] [ ẋ A B = y C D ] [ x u ] (3) eller [ A B G = C D ] (4)
Serie- och parallellkoppling Seriekoppling: Parallellkoppling: [ ] A1 B G 1 = 1 C 1 D 1 G 1 G 2 = G 1 + G 2 = [ ] A2 B G 2 = 2 C 2 D 2 A 1 B 1 C 2 B 1 D 2 0 A 2 B 2 C 1 D 1 C 2 D 1 D 2 A 1 0 B 1 0 A 2 B 2 C 1 C 2 D 1 + D 2 (5) (6) (7)
Lyapunov-ekvationer Den linjära ekvationen A T X + XA + Q = 0 (8) är en Lyapunov-ekvation. Den har en entydig lösning om A och A inte har några gemensamma egenvärden. Detta gäller till exempel om A har alla sina egenvärden i vänster halvplan. I Matlab kan vi lösa denna ekvation med X = lyap (A, Q);,
Observerbarhetsgramianen L o Observerbarhetsgramianen definieras som Betrakta följande system (u = 0): {ẋ = Ax Inför V o (x) = x T L o x och derivera A T L o + L o A + C T C = 0. (9) y = Cx V o (x) = ẋ T L o x + x T L o ẋ = x T A T L o x + x T L o Ax = x T (A T L o + L o A) x = x T C T Cx = y T y = y 2 2 }{{} C T C
Observerbarhetsgramianen L o Integrera V o T 0 T V o dt = V o (x(t)) V o (x(0)) = y(t) 2 2 dt. 0 Om vi förutsätter att systemet är stabilt och T så går y(t) mot noll: Alltså V o (x(0)) = x T (0)L o x(0) = T 0 y(t) 2 2 dt Gramianen, L o, innehåller information om hur mycket ett visst tillstånd syns i utsignalen.
Styrbarhetsgramianen L c Styrbarhetsgramianen definieras som AL c + L c A T + BB T = 0. (10) Inför nu V c (x) = x T Lc 1 x. Detta är ett mått på den minsta energi i insignalen som krävs för att uppnå detta tillstånd x. Som tidigare, derivera V c med ẋ = Ax + Bu: V c (x) = ẋ T Lc 1 x + x T Lc 1 ẋ = (Ax + Bu) T Lc 1 x + x T Lc 1 (Ax + Bu) = u T B T Lc 1 x + x T Lc 1 Bu + x T (A T Lc 1 + Lc 1 A) x }{{} = (B T L 1 c Lc 1 BB T Lc 1 x + u) T (B T L 1 x + u) + u T u u T u c
Styrbarhetsgramianen L c Styrlagen u opt = B T Lc 1 x ger minsta energin. Signalenergin för att uppnå ett givet tillstånd (med start i x( ) = 0) ges av u 2 = V c (x) + u + B T L 1 c x 2 (11) Alltså är u V c (x) med likhet för u = u opt.
Balansering En representation av ett system är inte unik. [ ] A B G = C D kan också skrivas som [ TAT 1 TB G = CT 1 D ] (12) (13) Vid en transformations påverkas också gramianerna: ˆL o = T T L o T 1 (14) och ˆL c = TL c T T (15)
Balansering Välj nu T listigt så att ˆL o = ˆL c = Σ = σ 1 σ 2... σn (16) Det gäller då att σ 2 i = λ i (ˆL o ˆL c ) = λ i (L o L c ). (17) Vi kan hitta en transformation så att detta uppnås. Faktorisera först L o och L c, t ex med Cholesky-uppdelning: L o = U T o U o och L c = U T c U c. Beräkna sedan med singularvärdesuppdelning: UΣV T = U o U T c, där UUT = VV T = I. Transformationsmatrisen ges sedan av T = Σ 1 2 U T U o.
Exempel på balansering 5 0 1 1 G(s) = (s + 1)(s + 5) = 1 1 0 = 0 1 0 med Σ = diag[σ 1, σ 2 ] = diag[0.1124, 0.0124]. I Matlab görs detta t ex genom 0.5946 1.34 0.3656 1.34 5.40 0.3656 0.3656 0.3656 0 σ 2 är litet i förhållande till σ 1. Om vi tar bort motsvarande tillstånd x 2, så blir felet bestämt av 2σ 2 : G Ĝ 1 2σ 2, Ĝ 1 (s) = [ 0.5946 0.3656 0.3656 0 ] (18)
Exempel på balansering Singular Values 10 15 20 G G 1 G G 1 2σ 2 25 Singular Values (db) 30 35 40 45 50 55 60 10 1 10 0 10 1 10 2 Frequency (rad/sec)
Modellreduktion Modellreduktion kan göras genom att trunkera de tillstånd som motsvarar de minsta Hankelsingulära värdena: G n Ĝ r 2 n i=r+1 σ i (19) Vi kan halvera denna övre gräns genom en annan algoritm som även modifierar D-matrisen: σ r+1 G n Ĝ r n σ i (20) i=r+1
Med modifierat D optimal Hankel Singular Values 10 15 G G 1 G G 1 =σ 2 20 25 Singular Values (db) 30 35 40 45 50 55 60 10 1 10 0 10 1 10 2 Frequency (rad/sec)
H 2 -normen e G z Låt e = δ (dirac-spik) eller vitt brus Energi i utsignalen: ẋ = Ax + Bδ(t 0) }{{} x=b V(x) = x T (0)L o x(0) = B T L o B = G 2 2 = CL c C T
H 2 -normen e G z I MIMO-fallet gäller G 2 2 = tr B T L o B = tr CL c C T
H -normen H -normen beskriver den maximala förstärkning för ett stabilt system, G, över alla frekvenser, ω. Det vill säga L -normen gäller även för instabila system. G = max G(jω) (21) ω H -normen kan inte beräknas direkt men man kan testa om G < γ.
H -normen [ A B G(s) = C D ] = D + C(sI A) 1 B Antag att G < γ. Om G är SISO så är Φ(jω) = γ 2 σ (G(jω)) 2 = γ 2 G(jω) G(jω) > 0, för alla ω. Om γ G så har Φ(jω) minst ett nollställe för ω R.
H -normen Φ(s) = γ 2 G (s)g(s) = γ 2 G( s) T G(s) där Detta ger [ G A T C (s) = T ] Φ(s) = B T D T A 0 B C T C A T C T D D T C B T γ 2 I D T D Krav 1: γ > σ(d) = λ max (D T D). Om Φ(s) har ett nollställe på imaginära axeln så måste Φ 1 (s) ha en pol på imaginära axeln.
Inversen av system För att komma vidare behöver vi kunna invertera system på tillståndsform. Inversen av ett system kan skrivas som [ ] 1 [ G 1 A B A BD 1 C BD 1 (s) = = C D D 1 C D 1 ] ty...
Inversen av system G 1 (s)g(s) = = = = I I 0 0 I 0 0 0 I A BD 1 C BD 1 C BD 1 D 0 A B D 1 C D 1 C D 1 D A BD 1 C BD 1 C B I I 0 0 A B 0 I 0 D 1 C D 1 C I 0 0 I A BD 1 C A BD 1 C 0 0 A B D 1 C D 1 C I A BD 1 C 0 0 0 A B I D 1 C 0 I I I 0 0 I 0 0 0 I
H -normen Inversen av ett system kan skrivas som ] 1 [ A BD 1 C BD 1 = C [ A B ] D D 1 C D 1 Låt H vara A-matrisen för inversen av Φ(s): [ H = [ = A 0 C T C A T ] [ A + BR 1 D T C C T C + C T DR 1 D T C B C T D ] ( γ 2 I D D) T 1 [ D T C B T ] }{{} R BR 1 B T ] A T C T DR 1 B T Om H har egenvärden på den imaginära axeln så är γ G.
Exempel på H -normen Låt G(s) = 1 1+0.1s+s 2 : γ eig H 10 ±1j, ±0.9950j 10.1 ±0.0066 ± 0.9975j 10.0125 ±ɛ ± 0.9974j 1/(s 2 +s/10+1) 30 20 10 Singular Values (db) 0 10 20 30 40 10 1 10 0 10 1 Frequency (rad/sec)
Inducerad norm H -normen kan också beskrivas som en inducerad L 2 - eller l 2 -norm: Om γ > G så är max u T t=0 ( ) y T (t)y(t) γ 2 u T (t)u(t) < 0. för systemet [ x(t + 1) y(t) ] [ A B = C D ] [ x(t) u(t) ].
Inducerad norm Inför en lyapunovfunktion, V(x) = x T Px, där P = P T är positivt definit: = = = T ( ) y T (t)y(t) γ 2 u T (t)u(t) t=0 T t=0 T t=0 T t=0 ( ) y T (t)y(t) γ 2 u T (t)u(t) +!V(x(T + 1)) V(x(0)) + V(x(0)) V(x(T + 1)) ( ) y T (t)y(t) γ 2 u T (t)u(t) + V(x(t + 1)) V(x(t)) + V(x(0)) V(x(T + 1)) [ x(t) u(t) ] T ([ A T PA P PB B T P γ 2 I + V(x(0)) V(x(T + 1)) ] [ C T + D T ] [ C D ] ) [ x(t) u(t) ] T
Inducerad norm Se till att [ A T PA P PB B T P γ 2 I ] [ C T + D T ] [ C D ] < 0 genom att hitta ett lämpligt P = P T > 0. Det minsta γ för vilket vi kan hitta ett sådant P ger en övre gräns på G.