You are on page 1of 24

Capitolo 4 Assegnazione degli autovalori

4.1 Assegnazione degli autovalori mediante retroazione dallo stato

n requisito fondamentale della controreazione ` e la stabilit` a del sistema complessivo. Spesso lo scopo della controreazione ` e solo quello di stabilizzare il sistema controllato o quantomeno di aumentarne i margini di stabilit` a. Infatti un requisito importante ` e che la stabilit` a sia garantita anche in presenza di variazioni dei parametri del sistema. Per proteggere il sistema dal rischio di instabilit` a a causa di variazioni parametriche ` e ragionevole imporre che gli autovalori della matrice dinamica del sistema controreazionato siano interni ad un opportuno cerchio di raggio r < 1, con r tanto pi` u ` piccolo quanto pi` u si vuole robustezza. E quindi naturale chiedersi quale sia linuenza che la controreazione possa avere sugli autovalori del sistema complessivo. Il seguente teorema risponde alla precedente domanda.

Teorema dellassegnazione degli autovalori mediante retroazione dallo stato Se la coppia (A, B ) ` e raggiungibile, cio` e se rango B AB . . . An1 B = n allora comunque si scelga un polinomio di grado n p() = n + an1 n1 + + a1 + a0 esiste una matrice K di dimensioni m n tale che pA+BK () = det (I A BK ) = p()

75

76

CAPITOLO 4. ASSEGNAZIONE DEGLI AUTOVALORI

Posto si ha

Proviamo il teorema solo per il caso di un sistema con un solo ingresso, cio` e consideriamo il caso m = 1. Allora la matrice B si riduce ad un vettore colonna di dimensioni n 1 e la matrice K ad un vettore riga di dimensioni 1n. Poich` e la coppia (A, B ) ` e raggiungibile, allora esiste una trasformazione 1 di coordinate T che, nel nuovo spazio di stato x = T x, porta il sistema nella forma canonica di raggiungibilit` a: 0 1 0 ... 0 0 0 0 1 ... 0 0 . . . ... . T AT 1 = . TB = . . . . 0 0 0 0 ... 1 0 1 2 . . . n1 1 KT 1 = 0 0 . . . k1 k2 . . . k n 1 0 . . . 0 1 ... ... ... 0 0

T (A + BK ) T 1

Di conseguenza, poich` e2 det (I T (A + BK ) T 1 ) = det (I (A + BK )) si ha det(I A BK ) = n + (n1 kn )n1 + . . . + (1 k2 ) + 0 k1


1

0 0 0 ... 1 0 + k1 1 + k2 2 + k3 . . . n1 + kn

Sia pA () = n + n1 n1 + + 1 + 0 Allora la trasformazione che porta il sistema 1

il polinomio caratteristico della matrice A. nella forma canonica di raggiungibilit` a` e: 1 2 . . . n1 1 2 3 . . . 1 0 . . . . . . . T = . . . . . n1 ... 0 0 1 0 ... 0 0
2

AB

...

An1 B

Infatti det I T (A + BK ) T 1 = det T (I (A + BK )) T 1 = = det(T ) det (I (A + BK )) det(T 1 ) = det (I (A + BK ))

4.1. ASSEGNAZIONE DEGLI AUTOVALORI

77

Tale polinomio pu` o essere sempre reso uguale al polinomio desiderato p() ponendo ki = i1 ai1 per i = 1, . . . , n. In conclusione, scegliendo K= 0 a0 1 a1 . . . n1 an1 T (4.1) si ha che pA+BK () = p(). Il precedente risultato mostra che se un sistema ` e raggiungibile e tutte le sue variabili di stato sono disponibili come uscite del sistema, cio` e sono misurabili, allora ` e possibile trovare una controreazione statica dallo stato, cio` e un controllore non dinamico u (k ) = K y (k ) = K x (k ) KI Rmn (4.2)

tale che gli autovalori della matrice dinamica del sistema a ciclo chiuso coincidano con n numeri pressati qualsiasi. Infatti, se il sistema controllato ` e x(k + 1) = A x(k ) + B u(k ) y (k ) = x (k ) ed il controllore ` e quello dato dallequazione (4.2), il sitema a ciclo chiuso diventa x(k + 1) = A x(k ) + B Kx(k ) = (A + BK ) x(k ) y (k ) = x (k ) e, per il teorema precedente, la matrice K pu` o essere scelta in modo tale che il polinomio caratteristico pA+BK () coincida con un qualsivoglia polinomio p(). Lo schema di controllo considerato ` e quello mostrato in gura 4.1:

u(k) K

Sistema da controllare

y(k)

x(k)

Figura 4.1: Schema di controllo con retroazione statica dallo stato. ` inoltre possibile dimostrare che tale controllore esiste solo se il sistema E ` e raggiungibile, cio` e che la raggiungibilit` a` e condizione necessaria e suciente anch e si possano assegnare ad arbitrio gli autovalori del sistema a ciclo

78

CAPITOLO 4. ASSEGNAZIONE DEGLI AUTOVALORI

chiuso mediante una retroazione statica dallo stato. Per dimostrare questo si assuma che la coppia (A, B ) non sia raggiungibile. Allora esiste una trasformazione di coordinate T tale che, nelle nuove coordinate, le matrici del sistema assumono la seguente forma: T AT 1 = Posto quindi KT 1 = si ha T (A + BK ) T 1 = K1 K2 A11 A12 0 A22 TB = B1 0

A11 + B1 K1 A12 + B1 K2 0 A22

Di conseguenza il polinomio caratteristico del sistema a ciclo chiuso ` e det(I A BK ) = det(I A11 B1 K1 ) det(I A22 ) e non pu` o essere assegnato arbitrariamente in quanto ha un fattore sso indipendente dalla scelta di K . Inoltre, nel caso di sistemi con un solo ingresso e se la coppia (A, B ) ` e raggiungibile, la matrice K che assegna un dato polinomio caratteristico p() ` e unica. Infatti, in tale caso, si pu` o scrivere3 det (I A BK ) = det (I A) det I (I A)1 BK

= det (I A) det 1 K (I A)1 B

(4.3)

e di conseguenza, se esistessero due diversi vettori riga K1 e K2 tali che det (I A BK1 ) = det (I A BK2 ) = p() allora dalla (4.3) si avrebbe necessariamente (K1 K2 ) (I A)1 B = 0
3 Per dimostrare i passaggi seguenti si ricordi che date due matrici A, B I R nn si ha det(AB ) = det(A) det(B ). Inoltre date due matrici A I R nm e B I Rmn si ha det(I + AB ) = det(I + BA). Infatti

det(I + AB ) = det = det I B A I

I 0 A I + AB I 0 A I

= det = det

I A

B I

I 0

B I

I + BA B 0 I

= det(I + BA)

4.1. ASSEGNAZIONE DEGLI AUTOVALORI o equivalentemente, antitrasformando, (K1 K2 ) Ak1 B = 0 Quindi dovrebbe essere (K 1 K 2 ) B AB . . . An1 B =0 k > 0

79

Poich` e il sistema ` e raggiungibile, allora necessariamente K1 = K2 . Esempio 14 Si consideri il modello di Samuelson di un sistema economico nazionale ( si veda il sistema (A.4)) e si ponga = 0.3 e = 0.4. Il modello del sistema diventa quindi x(k + 1) = 0.3 0 .3 0.28 0.12 1 1 x (k ) + 0.3 0.12 u (k ) = A x (k ) + B u ( k ) (4.4)

y (k ) =

x (k ) + u (k )

dove le componenti dello stato sono, nellordine, i consumi C (k ) e gli investimenti I (k ), lingresso u(k ) ` e la spesa totale dello stato S (k ) e luscita y (k ) ` e il prodotto interno P (k ). Supponendo di conoscere in ogni periodo lo stato del sistema, si vuole trovare una legge di controllo statica a retroazione dallo stato, cio` e u(k ) = S (k ) = k1 C (k ) + k2 I (k ) = Kx(k ) tale che il prodotto interno nazionale P (k ) cresca linearmente al passare del tempo. Per fare questo dobbiamo imporre che la matrice dinamica del sistema a ciclo chiuso abbia un autovalore di molteplicit` a 2 in = 1, o equivalen2 temente che pA+BK () = p() = ( 1) = 2 2 + 1 = 2 + a1 + a0 . Prima di tutto verichiamo che la coppia (A, B ) sia raggiungibile: det B AB = det 0.3 0.1260 0.12 0.0696 = 0.0360 = 0

Siccome il polinomio caratteristico della matrice A ` e pA () = 2 + 1 + 0 = 2 0.42 + 0.12 allora la matrice T di cambio di coordinate che porta il sistema nella forma canonica di raggiungibilit` a` e: T = 0.42 1 1 0
1

0.3 0.1260 0.12 0.0696

1 3

10 25 10 0

80

CAPITOLO 4. ASSEGNAZIONE DEGLI AUTOVALORI

per cui, usando la formula (4.1), si ha K= 0.12 1 2 0.42 1 3 10 25 10 0 = 7 3 22 3

Calcolando A + BK si ha infatti A + BK = Quindi x(k ) = (A + BK )k x(0) = e di conseguenza u (k ) = Si ha dunque P (k ) = 1 1 x (k ) + u (k ) = 25 10 C (0) + I (0)(1 + k ) 3 3 k1 k2 ` e quello di 7 3 22 3 x (k ) = 7 3 35k + 44 6 x(0) 1 2 .5 k 0 1 x(0) 1 2 .5 0 1

che come voluto cresce linearmente con k . Un altro metodo per calcolare il vettore riga K = imporre pA+BK () = p(). In questo caso si ha: A + BK = 0.3 0 .3 0.28 0.12 + = Quindi 0.3 0.12 k1 k2

0.3 (1 + k1 ) 0.3 (1 + k2 ) 0.28 + 0.12 k1 0.12 (1 + k2 )

pA+BK () = 2 [0.3 (1 + k1 ) + 0.12 (1 + k2 )] + 0.12 (1 + k2 ) da cui imponendo 0.3 (1 + k1 ) + 0.12 (1 + k2 ) = 2 si ottiene K= 7 3 22 3 0.12 (1 + k2 ) = 1

4.1. ASSEGNAZIONE DEGLI AUTOVALORI

81

4.1.1

La formula di Ackermann

Come mostrato precedentemente, data una coppia (A, B ) raggiungibile, la matrice K tale che pA+BK () sia uguale ad un polinomio assegnato p() = n + an1 n1 + + a1 + a0 ` e K= con 1 2 . . . 0 a0 1 a1 . . . n1 an1 2 . . . n1 3 . . . 1 . . . . . . ... 0 0 ... 0 1 0 . . . 1 T

e dove i coecienti i sono i coecienti del polinomio caratteristico pA () = n + n1 n1 + + 1 + 0 della matrice A. Se lordine del sistema ` e piccolo (n 3) allora, come visto nel precedente esempio, la matrice K pu` o essere calcolata ponendo4 K= k1 k2 k3

T = n1 1

0 0

B AB . . . An1 B

ed imponendo che i coecienti del polinomio pA+BK (), che sono funzioni di k1 , k2 e k3 , siano uguali ai coecienti del polinomio p() che si vuole assegnare. Un altro metodo per calcolare la matrice K ` e quello di utilizzare la seguente formula, detta formula di Ackermann: K= 0 0 ... 0 1 B AB . . . An1 B
1

p(A)

Dimostriamo questa formula assumendo per semplicit` a n = 3. Possiamo quindi scrivere p(A + BK ) = (A + BK )3 + a2 (A + BK )2 + a1 (A + BK ) + a0 I e (A + BK )2 = A2 + ABK + BK (A + BK ) (A + BK )3 = A3 + A2 BK + ABK (A + BK ) + BK (A + BK )2
4

(4.5)

(4.6)

Assumiamo per esempio n = 3.

82

CAPITOLO 4. ASSEGNAZIONE DEGLI AUTOVALORI

Sostituendo le (4.6) nella (4.5) si ha p(A + BK ) = p(A) + a1 BK + a2 BK (A + BK ) + BK (A + BK )2 + a2 ABK + ABK (A + BK ) + A2 BK Poich` e pA+BK () = p(), allora p(A + BK ) = 0 cosicch` e dalla precedente equazione si ricava p(A) = B a1 K + a2 K (A + BK ) + K (A + BK )2 AB (a2 K + K (A BK )) A2 BK che in forma matriciale pu` o essere scritta come B AB A2 B a1 K + a2 K (A BK ) + K (A BK )2 a2 K + K (A BK ) K

p (A ) =

Poich` e la coppia (A, B ) ` e raggiungibile allora la matrice di raggiungibilit` a ` e invertibile per cui, moltiplicando ambo i membri della precedente equazione per 1 0 0 1 B AB A2 B si ottiene 0 0 1 B AB A2 B
1

p(A) = K

che ` e proprio la formula di Ackermann che si voleva dimostrare essere esatta. Esempio 15 Utilizziamo la formula di Ackermann per calcolare il vettore K considerato nel precedente esempio: K= dove p(A) = A2 2A + I = Si ha quindi K= 0 1 0.3 0.1260 0.12 0.0696
1

0 1

0.3 0.1260 0.12 0.0696

p(A)

0.4060 0.4740 0.4424 0.6904

0.4060 0.4740 0.4424 0.6904

7 3

22 3

4.2. OSSERVATORI

83

u(k)

Sistema da controllare

y(k)

Osservatore

x ^(k)
Figura 4.2: Schema di un osservatore dello stato di un sistema.

4.2

Osservatori asintotici dello stato

In questo paragrafo si mostrer` a come sia possibile costruire dei dispositivi capaci di fornire una stima x (k ) dellevoluzione dello stato x(k ) di un sistema assegnato a partire dalle misure delle sequenze di ingresso u(k ) e di uscita y (k ) del sistema stesso. Lo schema di tali dispositivi ` e riportato in gura 4.2:

4.2.1

Un semplice osservatore

Si consideri il sistema x(k + 1) = Ax(k ) + Bu(k ) y (k ) = Cx(k ) (4.7)

Si assuma che il sistema abbia dimensione n, che il vettore di uscita abbia dimensione p e che il sistema sia osservabile. Una semplice soluzione al problema di stimare lo stato x(k ) del sistema ` e quella di costruire una copia del sistema, cio` e z (k + 1) = Az (k ) + Bu(k ) (4.8) Gli ingressi u(k ) del sistema sono noti in quanto sono i controlli che vengono forniti al sistema originale. Inoltre, poich` e il sistema (4.8) ` e un modello da noi costruito, il suo stato z (k ) pu` o essere misurato. Se z (0) = x(0), allora lo stato del modello sar` a identico allo stato del sistema originale per qualunque valore di k . Se z (0) = x(0) allora il modello produrr` a un errore e(k ) = z (k ) x(k ) tale che e(k + 1) = Ae(k )

84

CAPITOLO 4. ASSEGNAZIONE DEGLI AUTOVALORI

Tale errore tender` a a zero al passare del tempo solo se il sistema originario ` e asintoticamente stabile e comunque, anche in tale caso, la velocit` a di convergenza a zero ` e determinata dallautovalore dominante della matrice A. Questa limitazione pu` o essere superata dal seguente approccio.

4.2.2

Losservatore di Luenberger

Si consideri il seguente osservatore z (k + 1) = Az (k ) + Bu(k ) + G (y (k ) Cz (k )) (4.9)

dove la matrice G ` e una matrice n p ancora da specicare. Losservatore ` e un sistema di dimensione n il cui vettore di stato ` e z (k ). Gli ingressi dellosservatore sono di due tipi. Il primo tipo sono le uscite y (k ) del sistema originario, il secondo sono una copia degli ingressi u(k ) del sistema originario. Si noti che tale osservatore ` e una generalizzazione del semplice osservatore introdotto precedentemente. Infatti, se z (k ) = x(k ), allora y (k ) = Cx(k ) = Cz (k ) e losservatore (4.9) si riduce ad essere una copia del sistema originario. Posto y (k ) = Cx(k ) e sottraendo la (4.7) dalla (4.9) si ha che e(k + 1) = (A GC ) e(k ) (4.10)

Se z (0) = x(0) allora z (k ) = x(k ) per qualunque valore di k . Lo stato dellosservatore ` e quindi identico allo stato del sistema. Se z (0) = x(0) allora lerrore e(k ) = z (k ) x(k ) tende a zero al passare del tempo se il sistema (4.10) ` e asintoticamente stabile e, in tale caso, la velocit` a di convergenza a zero ` e determinata dallautovalore dominante della matrice A GC . Gli autovalori della matrice A GC dipendono dalla scelta della matrice G e in proposito vale il seguente teorema: Teorema 2 Dato il sistema osservabile (4.7), un osservatore identit` a del tipo (4.9) pu` o essere costruito e i coecienti del polinomio caratteristico dellosservatore possono essere scelti arbitrariamente. Losservatore qui introdotto, proposto da Luenberger, viene anche detto osservatore identit` a in quanto il suo stato z (k ) tende allintero stato x(k ) del sistema originario. La stima dello stato x (k ) ` e quindi x (k ) = z (k ) (4.11)

Esempio 16 Si consideri il problema di stimare la popolazione di bovini di una nazione a partire dalla sola misura annuale del numero di mucche con

4.2. OSSERVATORI

85

pi` u di tre anni di et` a. Si consideri per ora la sola popolazione femminile la cui evoluzione pu` o essere descritta dal seguente modello: 0 0 3 4 u 1 (k ) 0 0 0 x(k ) + u2 (k ) = Ax(k ) + Bu(k ) x(k + 1) = 0 0 0 u 3 (k ) u 4 (k ) 0 0 y (k ) = 0 0 0 1 x(k ) = c x(k ) dove lingresso ` e un vettore a quattro componenti e rappresenta il bilancio tra le macellazioni, le esportazioni e le importazioni per ogni classe di et` a (supposte note) e B = I . La popolazione femminile di bovini ` e stata divisa in quattro classi di et` a: x1 (k ) denota il numero di individui con meno di un anno di et` a (vitelle) allinizio dellanno k -esimo, x2 (k ) denota il numero di individui con et` a compresa fra 1 e 2 anni (giovenche) allinizio dellanno k -esimo, x3 (k ) denota il numero di individui con et` a compresa fra 2 e 3 anni (giovenche e mucche) allinizio dellanno k -esimo e x4 (k ) denota il numero di individui con et` a maggiore ai 3 anni (mucche) allinizio dellanno k -esimo. Il modello tiene conto del fatto che gli individui sotto i due anni non sono in grado di riprodursi mentre durante il terzo anno di vita solo alcune giovenche sono in grado di riprodursi. I coecienti del sistema sono i seguenti: s = 47, 18%, 3 = 0.3482, 4 = 0.9850, 0 = 0.9477 (e quindi 3 = 0.1557 e 4 = 0.4404) e = 0.9834. Si noti per prima cosa che il sistema ` e osservabile. Infatti, si ha: c cA cA2 cA3 0 0 0 1 0 0 0 2 2 2 3 3 3 3

|O| =

= 6 = 0

Un osservatore identit` a pu` o quindi essere facilmente implementato scegliendo T o opportunamente la matrice G = g1 g2 g3 g4 . Ad esempio, si pu` trovare G tale che det (zI A + Gc) = z 4 . A tal ne, imponendo z 0 3 g1 4 z 0 g2 0 z g3 0 0 z + g 4

|zI A + Gc| =

z 0 g2 g3 z z 0 z + g 4

0 3 g1 4 z g3 + 0 z + g 4

86

CAPITOLO 4. ASSEGNAZIONE DEGLI AUTOVALORI z 2 [z (z + g4 ) + g3 ] + 2 g2 z + 2 [ (g1 4 ) 3 (z + g4 )] =

z 4 + (g4 ) z 3 + g3 z 2 + 2 (g2 3 ) z + 3 (g1 4 ) 2 3 (g4 ) = z 4 si ottiene GT = Losservatore che si ottiene 0 0 0 z (k + 1) = 0 0 0 4 3 0 ` e il seguente: 3 0 0 3 z (k ) + u (k ) + 0 0 0

e la stima x (k ) = z (k ) converge allo stato del sistema in quattro anni. La gura 4.3 mostra landamento dello stato del sistema (dove lunit` a di misura delle T ordinate sono un migliaio di capi) quando x(0) = 1700 1880 900 5690 e gli ingressi sono costanti e pari a u1 (k ) = 160, u2 (k ) = 610, u3 (k ) = 820 e u4 (k ) = 730.
3000

4 3 y (k ) 0

1700 2300

1000 1500

200 6300

5300 0 1 2 3 4 5 6 7 8 9

Figura 4.3: Stato del sitema: x1 (k ) (alto), x2 (k ), x3 (k ), x4 (k ) (basso). La gura 4.4 mostra invece lerrore di osservazione x (k ) x(k ) quando T x (0) = 2000 2000 1000 5690 .

4.2. OSSERVATORI
400

87

0 400

0 400

0 400

0 0 1 2 3 4 5

Figura 4.4: Errore di osservazione: lerrore ` e gracato in rosso quando ` e nullo.

4.2.3

Osservatori di ordine ridotto

Losservatore identit` a precedentemente illustrato ricostruisce tutte le n variabili di stato del sistema originario anche se p di queste variabili possono essere esattamente calcolate direttamente dalle p uscite del sistema (ammesso che le uscite siano indipendenti). Ad esempio, come mostrato in gura 4.4, losservatore identit` a produce una stima x 4 (k ) della variabile x4 (k ), convergente a x4 (k ) in quattro passi, pur essendo questa variabile nota con esattezza in quanto x4 (k ) = y (k ). ` quindi plausibile supporre che si possa in genere costruire un osservatore E di dimensione n p invece che n e che lo stato x(k ) del sistema originario possa quindi essere stimato tramite le n p variabili di stato dellosservatore e le p uscite del sistema. In eetti questo ` e vero e si mostrer` a ora come ci` o ` e possibile. Si consideri quindi un sistema osservabile del tipo (4.7) e si assuma che la matrice C di dimensione p n abbia rango p. Questo corrisponde ad assumere che le p uscite del sistema siano linearmente indipendenti. Sia V

88

CAPITOLO 4. ASSEGNAZIONE DEGLI AUTOVALORI

una qualsiasi matrice (n p) n tale che la matrice T = V C

sia nonsingolare e possa quindi essere usata come matrice di cambio di coordinate. Tale matrice esiste sempre in quanto la matrice C ha rango p. Si consideri quindi il cambio di coordinate x (k ) = T x (k ) e si partizioni il nuovo vettore di stato x (k ) nel seguente modo x (k ) = w (k ) y (k )

dove, grazie alla scelta di T , le ultime p componenti dello stato x (k ) sono uguali alle p uscite del sistema e w(k ) ` e un vettore di dimensione n p. Nelle nuove variabili di stato il sistema (4.7) pu` o essere scritto nel seguente modo w(k + 1) y (k + 1) dove A11 A21 = A11 A21 A12 A22 w (k ) y (k ) B1 B2 + B1 B2 u(k )

A12 A22

= T AT 1 ;

= TB

Sottraendo dalle prime n p equazioni le ultime p equazioni premoltiplicate per una matrice E di dimensioni (n p) p e ancora da denire, si ottiene: w(k + 1) Ey (k + 1) = (A11 EA21 ) w(k )+ (A12 EA22 ) y (k ) + (B1 EB2 ) u(k ) La precedente equazione alle dierenze pu` o essere riscritta come w(k + 1) Ey (k + 1) = (A11 EA21 ) (w(k ) Ey (k )) + (A11 E EA21 E + A12 EA22 ) y (k )+ (B1 EB2 ) u(k ) e posto v (k ) = w(k ) Ey (k ) si ha v (k + 1) = (A11 EA21 ) v (k )+ (A11 E EA21 E + A12 EA22 ) y (k )+ (B1 EB2 ) u(k )

(4.12)

4.2. OSSERVATORI

89

In queste equazioni, v (k ) non ` e noto mentre y (k ) e u(k ) sono noti e sono gli ingressi al sistema (4.12). Un semplice osservatore delle n p variabili in v (k ) pu` o quindi essere costruito facendo una copia del sistema (4.12), e cio` e z (k + 1) = (A11 EA21 ) z (k )+ (A11 E EA21 E + A12 EA22 ) y (k )+ (B1 EB2 ) u(k )

(4.13)

La dinamica dellerrore di osservazione e(k ) = z (k ) v (k ) si ottiene sottraendo la (4.12) dalla (4.13) e si ha che e(k + 1) = (A11 EA21 ) e(k ) (4.14)

Quindi lo stato z (k ) dellosservatore tende a v (k ) al passare del tempo se il sistema (4.14) ` e asintoticamente stabile e, in tale caso, la velocit` a di convergenza ` e determinata dallautovalore dominante della matrice A11 EA21 . Lo stato w(k ) del sistema pu` o quindi essere stimato ricordando che v (k ) = w(k ) Ey (k ): w(k ) = z (k ) + Ey (k ) Una stima x (k ) dello stato originario x(k ) sar` a dunque data da x (k ) = T 1 z (k ) + Ey (k ) y (k )

Si noti inne che gli autovalori della matrice A11 EA21 dipendono dalla scelta della matrice E e in proposito vale il seguente teorema: Teorema 3 Dato il sistema osservabile (4.7) di dimensione n e con p uscite linearmente indipendenti, un osservatore di dimensione n p pu` o essere costruito e i coecienti del polinomio caratteristico dellosservatore possono essere scelti arbitrariamente. Losservatore cos` ottenuto viene detto osservatore ridotto ed ha quindi la seguente forma: z (k + 1) = (A11 EA21 ) z (k )+ (A11 E EA21 E + A12 EA22 ) y (k )+ (B1 EB2 ) u(k ) x (k ) =T 1 z (k ) + Ey (k ) y (k )

90

CAPITOLO 4. ASSEGNAZIONE DEGLI AUTOVALORI

Un osservatore ridotto pu` o quindi essere facilmente implementato scegliendo T opportunamente la matrice E = e1 e2 e3 . Ad esempio, si pu` o trovare 3 E tale che det (zI A11 + EA21 ) = z . A tal ne, imponendo |zI A11 + EA21 | = z 0 e1 3 z e2 0 z + e3 =

Esempio 17 Si voglia costruire un osservatore ridotto per il sistema considerato nellesempio precedente. In questo caso si pu` o scegliere la matrice V in modo tale che T = I e quindi 0 0 3 4 1 0 0 0 0 0 0 1 0 0 A11 A12 0 ; B1 = = 0 0 0 0 1 0 0 A21 A22 B2 0 0 0 0 0 1

si ottiene

z 3 + e3 z 2 + 2 e2 z + 2 [e1 3 ] = z 3 ET = 3 / 0 0

z z (z + e3 ) + 2 e2 + 2 [e1 3 ] =

Losservatore che si 0 0 z (k + 1) = 0 0

ottiene ` e il seguente: 3 1 0 0 0 4 3 y (k ) 0 z (k ) + 0 1 0 0 u (k ) + 3 0 0 0 0 1 0

e permette di ricostruire esattamente lo stato del sistema in tre anni. La gura 4.5 mostra lerrore di osservazione x (k ) x(k ) nelle stesse condizioni e per le stesse triettorie dellesempio 16. Lerrore x 4 (k ) x4 (k ) = 0 k non viene ovviamente gracato. Esempio 18 Consideriamo ancora il sistema descritto precedentemente e supponiamo di avere come ulteriore uscita del sistema la misura del latte prodotto durante una intera annata; cio` e y (k ) = Cx(k ) = 0 0 3 4 0 0 0 1 x (k )

3 y (k ) z 1 (k ) + z 2 (k ) x (k ) = z 3 (k ) y (k )

4.2. OSSERVATORI
400

91

0 400

0 400

0 0 1 2 3 4 5

Figura 4.5: Errore di osservazione: lerrore ` e gracato in rosso quando ` e nullo. dove i coecienti 3 = 0.0546 e 4 = 0.1567 denotano la produzione annuale media di un bovino della classe 3 e 4 rispettivamente. In questo caso ` e possibile implementare un osservatore ridotto del secondo ordine. A tal ne si noti che dalle uscite ` e possibile direttamente avere una misura di x3 (k ) e x4 (k ). Infatti si ha: x 3 (k ) = 4 1 y 1 (k ) y 2 (k ) 3 3 x 4 (k ) = y 2 (k ) x2 (k ). In 0 0 4 1

Rimane quindi da ricostruire landamento nel tempo di x1 (k ) e questo caso si ha 1 0 0 1 0 0 0 0 1 0 0 0 1 0 B1 = T = TB = 0 0 3 0 0 3 4 ; B2 0 0 0 1 0 0 0 e A11 A21 A12 A22 = 0 0 0 0 0 3 0
3 3

T AT

0
4 3 3

3 4 4 3 0 2 4 34 4 3

92

CAPITOLO 4. ASSEGNAZIONE DEGLI AUTOVALORI

Poich` e la matrice A11 ha gi` a tutti gli autovalori nellorigine, allora un osservatore ridotto pu` o essere facilmente implementato scegliendo E = 0. Losservatore che si ottiene ` e il seguente: z (k + 1) = A11 z (k ) + B1 u(k ) + A12 y (k ) x (k ) = T 1 cio` e z (k + 1) = 0 0 0 z (k ) + 1 0 0 0 0 1 0 0 u (k ) +
3 3
3 4 4 3 0

z (k ) y (k )

y (k )

x (k ) =

1 3

z 1 (k ) z 2 (k ) 4 y 1 (k ) 3 y 2 (k ) y 2 (k )

e permette di ricostruire esattamente lo stato del sistema in due anni. La gura 4.6 mostra lerrore di osservazione x (k ) x(k ) nelle stesse condizioni e per le stesse triettorie dellesempio 16. Gli errori x 3 (k ) x3 (k ) = x 4 (k ) x4 (k ) = 0 k non vengono ovviamente gracati.

400

0 400

0 0 1 2 3 4 5

Figura 4.6: Errore di osservazione: lerrore ` e gracato in rosso quando ` e nullo.

4.3. ASSEGNAZIONE DEGLI AUTOVALORI

93

4.3

Assegnazione degli autovalori mediante retroazione dalluscita

Luso principale di un osservatore ` e quello di stimare lo stato x(k ) di un sistema per poi poterlo utilizzare nel controllare il sistema stesso. In particolare, in un sistema controllato (assumendo sia possibile eettuare retroazione statica dallo stato) con legge di controllo u (k ) = K x (k ) se lo stato x(k ) non ` e misurabile, allora la stima x (k ) dello stato pu` o essere usata al posto di x(k ) nella legge di controllo. Lo schema di controllo ` e allora quello riportato in gura 4.7:

u(k) K

Sistema da controllare

y(k)

Osservatore

x ^(k)
Figura 4.7: Schema di controllo composto da un osservatore dello stato ed una retroazione statica. Supponiamo di utilizzare un osservatore identit` a; allora il controllore diventa un controllore dinamico le cui equazioni si possono facilmente ricavare dalle equazioni (4.9) e (4.11): z (k + 1) = (A + BK GC ) z (k ) + Gy (k ) u (k ) = K z (k )

(4.15)

Le equazioni dinamiche del sistema a ciclo chiuso sono date allora dalle equazioni dinamiche del sistema controllato x(k + 1) = Ax(k ) + Bu(k ) = Ax(k ) + BKz (k ) e dalle equazioni dinamiche del controllore z (k + 1) = (A + BK GC ) z (k ) + GCx(k )

94

CAPITOLO 4. ASSEGNAZIONE DEGLI AUTOVALORI Le precedenti equazioni possono essere scritte in forma matriciale come x(k + 1) z (k + 1) = A BK GC A + BK GC = x(k ) z (k )

Ricordando che e(k ) = z (k ) x(k ) si pu` o fare il seguente cambio di coordinate x (k ) e (k ) = 1 0 1 1 x (k ) z (k ) =T x( k ) z (k )

cosicch e le equazioni della dinamica del sistema a ciclo chiuso diventano x(k + 1) e(k + 1) =T A BK GC A + BK GC A + BK BK 0 A GC T 1 x(k ) e(k ) =

x (k ) e (k )

La precedente espressione della matrice dinamica del sistema a ciclo chiuso evidenzia che gli autovalori del sistema a ciclo chiuso sono lunione degli autovalori della matrice A + BK e degli autovalori della matrice A GC . Si noti che gli autovalori della matrice A + BK sono gli autovalori della matrice dinamica del sistema a ciclo chiuso che si ottiene, assumendo lo stato misurabile, con un controllore a retroazione statica dallo stato, e gli autovalori della matrice A GC sono quelli della matrice dinamica dellosservatore. Questo ` e quello che si chiama principio di separazione: grazie a questo principio ` e possibile progettare in maniera indipendente losservatore ed il controllore a reatroazione statica dallo stato essendo sicuri che gli autovalori del sistema a ciclo chiuso ottenuto utilizzando il controllore (4.15) saranno esattamente lunione degli autovalori scelti nella progettazione dellosservatore e della controreazione. Il principio di separazione vale anche se si utilizza un osservatore di ordine ridotto. In questo caso le equazioni dinamiche del sistema a ciclo chiuso sono: x(k + 1) e(k + 1) = A + BK 0 A11 EA21 = x(k ) e(k )

per cui, anche in questo caso, ` e possibile progettare in maniera indipendente losservatore ridotto ed il controllore a reatroazione statica dallo stato. Si noti inne come il controllo (4.15) possa essere ricondotto ad uno schema del tipo considerato in gura 1.9. A tale scopo si introduca lingresso di

4.3. ASSEGNAZIONE DEGLI AUTOVALORI riferimento yd (k ) nelle equazioni del controllore: z (k + 1) = (A + BK GC ) z (k ) + Gy (k ) Gyd (k ) = = (A + BK GC ) z (k ) G(yd (k ) y (k )) u (k ) = K z (k ) La funzione di trasferimento G(z ) del controllore ` e quindi G(z ) = K (zI A BK + GC )1 G

95

e lo schema di controllo ` e quello riportato in gura 4.8. Ridisegnando lo

u(k) K

Sistema da controllare

y(k)

{ Osservatore +

yd(k)

x ^(k)
Figura 4.8: Schema di controllo composto da un osservatore dello stato ed una retroazione statica. schema come in gura 4.9 si nota immediatamente che ci si ` e riportati ad uno schema del tipo considerato in gura 1.9.

yd(k) +
Osservatore {

u(k) K

y(k)

P(z)

Figura 4.9: Schema di controllo composto da un osservatore dello stato ed una retroazione statica. Possiamo allora vericare il principio di separazione, per semplicit` a lo facciamo nel caso scalare, calcolando i poli della funzione di trasferimento

96

CAPITOLO 4. ASSEGNAZIONE DEGLI AUTOVALORI

del sistema a ciclo chiuso. Si ha allora G(z ) = k (z a bk + gc)1 g = Ricordando che P (z ) = c (z a)1 b = si ha kg z a bk + gc

cb za

Il principio di separazione ` e quindi vericato immediatamente guardando il denominatore di W (z ). Il caso vettoriale viene considerato nel prossimo esempio. Esempio 19 Si consideri il modello di interazione domanda oerta multidimensionale descritto nellesempio 6 la cui funzione di trasferimento ` e P (z ) = z2 0.1 z + z + 0 .2

cbkg cbkg (z a)(z a bk + gc) = W (z ) = cbkg (z a + gc)(z a bk ) 1 (z a)(z a bk + gc)

Se si vuole progettare un controllore che produca errore costante in tempo nito per un qualsiasi riferimento costante, allora bisogna imporre che tutti i poli del sistema a ciclo chiuso siano in z = 0. Infatti, in tale modo, il sistema si comporta come una serie di quattro ritardi e, quando il riferimento ` e costante, luscita diventa costante esattamente dopo quattro passi. Per progettare il controllore bisogna quindi calcolare i vettori K e G. Si ha 0 0 K= 6 1 = A + BK = 2 0 e 0.4 0.1 T G = 1 2 = A GC = 1.6 0.4 ed ` e facile vericare che le matrici A + BK e A GC hanno entrambe un autovalore in z = 0 con molteplicit` a 2. La funzione di trasferimento del controllore ` e quindi: G(z ) = K (zI A BK + GC )1 G = = 6 1 z1 0 4 z
1

1 2

8z + 2 z (z 1)

4.3. ASSEGNAZIONE DEGLI AUTOVALORI e la funzione di trasferimento del sistema a ciclo chiuso diventa W (z ) = P (z )G (z ) 8z + 2 = 1 + P (z )G (z ) z4

97

Si noti che il controllore ha un polo in z = 1 e quindi rende il sistema complessivo di tipo 1. Allo stesso risultato si poteva arrivare mediante un procedimento di sintesi diretta come mostrato nellesempio 7.

98

CAPITOLO 4. ASSEGNAZIONE DEGLI AUTOVALORI