Corso di Controlli Automatici Proff. MD Di

Transcript

Corso di Controlli Automatici Proff. MD Di
Corso di Controlli Automatici
Pro¤. M. D. Di Benedetto e S. Di Gennaro
Esercitazione del 10/5/2011
Ing. Alessandro Borri, Prof. Giordano Pola
{alessandro.borri,giordano.pola}@univaq.it
1
Il teorema di assegnazione degli autovalori
Il problema dell’assegnazione degli autovalori con retroazione statica dallo stato consiste nel trovare,
se esiste, un controllore con retroazione lineare e statica dallo stato tale che il processo controllato
abbia gli autovalori coincidenti con dei valori desiderati.
Più formalmente, dato un sistema lineare tempo continuo:
dx=dt = Ax + Bu; x 2 Rn ; u 2 Rm ;
y = x; y 2 Rn ;
(1)
ed un polinomio di grado n:
p( ) =
n
+ an
1
n 1
+ ::: + a1 + a0 ,
il problema di assegnazione degli autovalori con retroazione statica dallo stato consiste nel trovare
un controllore u = Kx tale che gli autovalori del processo controllato:
dx=dt = (A + BK)x
y = x,
coincidano con le radici del polinomio p( ).
Il seguente risultato caratterizza completamente questo problema.
Teorema Il problema dell’assegnazione degli autovalori con retroazione statica dallo stato ha soluzione
se e solo se il sistema (1) è raggiungibile.
Inoltre, qualora le ipotesi di raggiungibilità siano veri…cate, è possibile sintetizzare un controllore
statico che risolva il problema in esame in modo esplicito. Detta g l’ultima riga dell’inversa della
matrice di raggiungibilità associata al sistema (1), il controllore
u=
g p(A) x,
(2)
risolve il problema dell’assegnazione degli autovalori con retroazione statica dallo stato. La formula
(2) è nota in letteratura come formula di Ackermann.
In questo paragrafo diremo che un autovalore è raggiungibile (risp. non raggiungibile) se è un
autovalore relativo ad una dinamica raggiungibile (risp. non raggiungibile). La raggiungibilità del
generico autovalore della matrice A si può valutare mediante il PBH test
raggiungibile ,
A
I
j B
= n.
In alternativa, nel caso in cui il rango della matrice di raggiungibilità associata al sistema (1) sia
r < n (sistema non raggiungibile), è possibile separare le dinamiche raggiungibili da quelle non
1
raggiungibili applicando una opportuna trasformazione di coordinate x
~ = T x nello spazio di stato
Rn che ci permetta di riscrivere il sistema
dx=dt = Ax + Bu
(3)
~x + Bu;
~
d~
x=dt = A~
(4)
in forma canonica di raggiungibilità:
dove:
A~ =
A11 2 Rr
lineare:
r
, B 1 2 Rr
m
A11
0
A12
A22
~=
,B
B1
0
,
e la coppia (A11 ; B1 ) è raggiungibile o, in modo equivalente, il sistema
dx1 =dt = A11 x1 + B1 u
(5)
è raggiungibile. Gli r autovalori di A11 e gli n r autovalori di A22 sono rispettivamente gli autovalori
raggiungibili e non raggiungibili della matrice A.
2
Esercizio 1 Sia dato il seguente sistema lineare tempo continuo
dx=dt = Ax + Bu; x 2 R3 ; u 2 R;
dove:
2
1
A=4 0
0
0
3
2
(6)
3
2 3
1
0
1 5;B = 4 0 5:
1
1
Si determini, se possibile, un controllore con retroazione statica dallo stato che assegni gli autovalori
del sistema controllato in 1 = 1 + j; 2 = 1 j; 3 = 2.
Svolgimento - La matrice di raggiungibilità del sistema (6)
2
0
1
1
R = B AB A2 B = 4 0
1
1
è
3
2
2 5:
3
E’facile veri…care che il rango di R è tre e pertanto il sistema (6) è raggiungibile: dunque è possibile
trovare un controllore che assegni gli autovalori come richiesto. Il polinomio p( ), le cui radici
coincidono con quelle richieste, è dato da
p( ) = (
1 )(
2 )(
3) =
=(
( 1 + j))(
( 1 j))(
= ( + 1 j)( + 1 + j)( + 2)
=
3
+4
2
+ 5
j2
=
3
+4
2
+ 6 + 4.
Utilizziamo dunque la formula di Ackermann (2) per
della matrice di raggiungibilità R è data da:
2
5=4
R 1 = 4 1=2
1=4
e pertanto g =
1=4
1=4
+2
( 2)) =
2j 2 =
sintetizzare il controllore u = Kx. L’inversa
3
1=4 1
1=2 0 5
1=4 0
0 . Da cui, calcolando
p(A) = A3 + 4A2 + 6A + 4I =
2
33
2
1
0
1
1
3
1 5 + 44 0
=4 0
0
2
1
0
2
3
15
6
19
7
7 5,
=4 0
0 14
21
0
3
2
32
2
1
1
1 5 + 64 0
1
0
3
2
1
1
1 5 + 44 0
1
0
0
3
2
otteniamo:
K=
=
1=4
g p(A) =
15
4
13
4
3
1=4
.
3
0
2
15
4 0
0
6
7
14
3
19
7 5=
21
0
1
0
3
0
0 5=
1
Esercizio 2 Dato il sistema lineare tempo continuo
dx=dt = Ax + Bu; x 2 R3 ; u 2 R;
dove:
2
A=4
4
2
2
(7)
3
2 3
0
0
2 5;B = 4 1 5;
2
0
2
6
2
si determini la classe dei controllori a retroazione statica dallo stato tali che il sistema controllato
abbia gli autovalori in 1 = 1; 2 = 2; 3 = 3.
Svolgimento - La matrice di raggiungibilità associata al sistema (7) è :
2
3
0
2 20
6 36 5 :
R = B AB A2 B = 4 1
0
2 20
(8)
E’ facile veri…care che il rango di R è due e pertanto le condizioni del teorema dell’assegnazione
dei autovalori con retroazione statica dallo stato non sono veri…cate: ciò implica che non è possibile
assegnare in modo arbitrario gli autovalori del processo controllato. D’altronde, qualora gli autovalori
relativi alle dinamiche non raggiungibili fossero tra quelli richiesti nella speci…ca, sarebbe possibile
comunque progettare un controllore tale che il processo controllato abbia autovalori in 1 = 1;
2; 3 = 3. Veri…chiamo dunque quali autovalori della matrice A sono raggiungibili e non
2 =
raggiungibili. Gli autovalori della matrice A sono:
A
1
=
A
2
2;
=
4;
A
3
Per mezzo del PBH test valutiamo quali degli autovalori di
02
2
A
A
j B
= @4 2
1I
2
02
0
A
A
j B
= @4 2
2I
2
02
2
A
A
j B
= @4 2
3I
2
=
6 .
A sono raggiungibili:
31
2 0 0
4 2 1 5A = 2;
2 0 0
31
2 0 0
2 2 1 5A = 3;
2 2 0
31
2 0 0
0 2 1 5A = 3;
2 4 0
2 è non raggiungibile mentre gli autovalori A
4 e A
6
e dunque l’autovalore A
3 =
1 =
2 =
sono raggiungibili. Come è ben noto dalla teoria dei sistemi lineari le dinamiche non raggiungibili
non sono accessibili al controllo e per questa ragione rimangono immutate nel processo controllato.
D’altronde l’autovalore A
1 = 2 e le restanti due dinamiche sono raggiungibili e come tali, è possibile
forzare in loro, il comportamento desiderato dalle speci…che stesse. Dalla discussione fatta, risulta
che è conveniente scrivere il sistema di partenza in forma canonica di raggiungibilità in modo da
estrarre le dinamiche raggiungibili cui applicare il teorema dell’assegnazione degli autovalori per
imporre gli autovalori restanti dalle speci…che:
1
=
1;
3
=
3:
Osservando la matrice di raggiungibilità in R è facile veri…care
è:
2
0
P = R(R) = R (V ) , V = 4 1
0
4
che il sottospazio di raggiungibilità
3
1
0 5.
1
Sulla base del sottospazio P è possibile costruire la matrice di trasformazione T che porti il sistema
(7) in forma canonica di raggiungibilità. Ricordiamo che:
T
1
V
=
v
,
2
3
1
dove v è un vettore che renda la matrice T 1 invertibile. Dunque per una scelta di v = 4 0 5 si ha
0
2
3
0 1 1
T 1 = 4 1 0 0 5;
0 1 0
da cui:
2
0
T =4 0
1
3
0
1 5.
1
1
0
0
Sulla base di T possiamo costruire la forma canonica di raggiungibilità associata al sistema (7):
~x + Bu;
~
d~
x=dt = A~
(9)
dove:
A~ = T AT
1
A11
0
=
~ = TB =
B
2
6
2
0
A12
=4
A22
2 3
1
= 4 0 5;
0
B1
0
Il sottosistema raggiungibile è:
3
2
2 5;
2
0
4
0
dx1 =dt = A11 x1 + B1 u,
(10)
dove:
6
2
A11 =
0
4
; B1 =
1
0
:
La matrice di raggiungibilità associata al sistema (10) è
R1 =
B1
A11 B1
1
0
=
6
2
.
Si noti che la matrice R1 è invertibile e pertanto possiamo applicare il teorema dell’assegnazione degli
autovalori con retroazione statica dallo stato al sistema (10), imponendo un polinomio caratteristico:
p( ) = ( + 1)( + 3) =
2
+ 4 + 3:
Si osservi che:
1
0
R1 1 =
3
1=2
da cui:
g1 =
0
1=2
:
Inoltre:
p(A11 ) = A11 2 + 4A11 + 3I =
5
15
12
0
3
:
Dunque, applicando la formula di Ackermann, si ottiene:
K1 =
g1 p(A11 )
0
=
=
6
1=2
3=2
15
12
0
3
:
Dunque applicando un controllore u = K1 x1 al sistema (10), otteniamo un sistema controllato i
cui autovalori coincidono in 1 = 1 e 3 = 3. La classe di controllori che veri…ca le speci…che
~x
~ =
dell’esercizio per il sistema in forma canonica di raggiungibilità (9) è data da u = K
~, dove K
6
3=2 k , k 2 R. In…ne, tenendo conto del cambiamento di coordinate si ottiene:
~x
~ x
u=K
~ = KT
=
6
3=2 k
=
k
6
2
0
4 0
1
3=2
k
6
1
0
0
3
0
1 5x
1
x; k 2 R.
Esercizio 3 (Homework con soluzione) Dato il sistema lineare tempo continuo:
dx=dt = Ax + Bu; x 2 R2 ; u 2 R;
dove:
a2
4
A=
1
a
a
1
1
;B =
1
(11)
; a 2 R,
si determinino tutti i valori del parametro a e la classe dei controllori a retroazione statica dallo
stato tali che il sistema controllato abbia gli autovalori coincidenti in 2.
Svolgimento - La matrice di raggiungibilità associata al sistema (11) è:
B
R=
AB
1 3 a2
1
1
=
;
da cui (R) = 2 se e solo se a 6= 2 e a 6= 2. Dunque per a 6= 2 e a 6= 2 le ipotesi del teorema di
assegnazione degli autovalori con retroazione statica dallo stato sono veri…cate e pertanto è possibile
assegnare ad arbitrio gli autovalori ed in particolare in 2. Per i valori di singolarità a = 2 e
a = 2 bisogna studiare gli autovalori non raggiungibili e veri…care se questi autovalori veri…cano
direttamente le speci…che. Vediamo in dettaglio ogni caso.
Caso 1 ) a 6= 2; a 6= 2.
In questo caso R è invertibile e possiamo quindi applicare la formula di Ackermann imponendo un
polinomio:
p( ) = ( + 2)2 = 2 + 4 + 4,
da cui:
a4
p(A) = A2 + 4A + 4I =
12a2 a + 36
a3 a2 + 7a
a2 + a 7
a2 3a + 1
,
Invertendo la matrice di raggiungibilità R si ottiene:
R
1
1 a2 3
1
1
1
=
a2
4
da cui:
g=
1
a2
1
4
1
:
:
Pertanto:
K=
=
=
=
g p(A)
1
a2
4
1
a2
(12)
4
4
1
a+2
1
a4
a3
a
1
2
12a
a + 36
a3 a2 + 7a
a3 + 11a2 + 8a
3a2 + 5a + 18
36
4
2
a +a 7
a2 3a + 1
4a + 8
.
Caso 2 ) a = 2.
In questo caso R è singolare e pertanto dobbiamo veri…care se l’autovalore non raggiungibile della
matrice A è in 2. Pertanto calcoliamo gli autovalori della matrice A nel caso in cui a = 2:
A
1
=
1;
A
2
= 2:
Siccome entrambi gli autovalori di A non coincidono in 2 ed uno di essi è non raggiungibile, in
questo caso le speci…che dell’esercizio non potranno essere soddisfatte.
Caso 3 ) a = 2.
7
Anche in questo caso R è singolare e pertanto dobbiamo veri…care se l’autovalore non raggiungibile
della matrice A è in 2. Innanzitutto occorre calcolare gli autovalori della matrice A nel caso in cui
a = 2:
A
A
1;
2 .
1 =
2 =
Per individuare l’autovalore non raggiungibile possiamo studiare la forma canonica di raggiungibilità.
La matrice di raggiungibilità R in questo caso è:
1
1
R=
1
1
,
e dunque
1
1
P = R(R) = R (v1 ) , v1 =
quindi scegliendo un vettore v2 =
0
1
;
linearmente indipendente da v1 , otteniamo:
T
1
1
1
0
1
,
1
1
0
1
.
=
da cui:
T =
Possiamo a questo punto calcolare la forma canonica di raggiungibilità:
~x + Bu,
~
d~
x=dt = A~
(13)
dove:
A~ = T AT
1
~ = TB =
B
A11
0
=
B1
0
A12
A22
1
0
=
=
1
0
1
2
;
.
In…ne, osservando la forma canonica di raggiungibilità, ci si accorge che l’autovalore non raggiungibile coincide con 2 e dunque in questo caso esiste un controllore che veri…chi la speci…ca, un
controllore cioè che forzi l’autovalore 1, relativo alla dinamica raggiungibile, in 2. Il sottosistema
raggiungibile è:
dx1 =dt = x1 + u,
e dunque scegliendo u = k1 x ed imponendo l’autovalore
dx1 =dt =
2 nel processo controllato otteniamo,
x1 + k1 x1 = ( 1 + k1 )x1 =
2x1 .
e dunque tale condizione è veri…cata se e solo se k1 = 1. La classe di controllori che veri…ca le
~x
~ =
speci…che per il sistema in forma canonica di raggiungibilità (13) è data da u = K
~, dove K
1 k ; k 2 R. In…ne, tenendo conto del cambiamento di coordinate, si ottiene:
~x
~ x
u=K
~ = KT
=
1 k
1
1
0
1
x=
1
k
k
x; k 2 R.
Possiamo in…ne riassumere i risultati: l’esercizio ha soluzione se e solo se a 6=
dei controllori richiesta è data da u = Kx dove:
8
1
a3 3a2 + 5a + 18
4 ; a 6= 2;
< a+2
K=
:
1 k k ;
a = 2:
8
2. Inoltre la classe
Esercizio 4 (Homework con soluzione) Dato il seguente schema di controllo:
u
dx1 / dt = A1 x1 + B1u + G1 y2
y1
y1 = x1
dx 2 / dt = A 2 x 2
y2
y2 = x2
dove:
A1 =
1
0
2
3
B1 =
a2 + a
0
;
2
;
a2
1
A2 =
G1 =
3
0
a3 + a2
2a3
4a4
a+1
2a (a + 1)
4a
;
7
; a 2 R.
Si chiede di:
(i) determinare tutti i valori di a a¢ nchè esista un controllore a retroazione statica lineare dallo
stato tale che il processo controllato abbia gli autovalori coincidenti in 3;
(ii) calcolare l’espressione di tale controllore.
Svolgimento - L’interconnessione del processo in …gura ha come rappresentazione con lo spazio
di stato:
8
dx1 =dt
A1 G1
x1
B1
>
>
=
+
u
<
dx2 =dt
0 A2
x2
0
(14)
y1
x1
>
>
=
:
:
y2
x2
Dall’analisi del sistema (14) ci si accorge che gli autovalori relativi alla matrice dinamica A2 sono
non raggiungibili e pertanto bisogna imporre che gli autovalori di A2 :
coincidano in
a2 ;
1;2
=1
2;2
= a3 + a2
4a
7;
3. Pertanto:
1;2
2;2
=
=
3 () a =
3 () a =
2; 2;
1; 2; 2:
Da questa analisi preliminare i valori ammissibili di a per cui contemporaneamente
3 sono:
2;2 =
a = 2; a = 2:
Inoltre il sottosistema:
8
<
dx1 =dt = A1 x1 + B1 u =
:
y1 = x1
1
0
2
3
x1 +
a2 + a
0
2
u
1;2
=
3 e
(15)
(16)
è in forma canonica di raggiungibilità e pertanto è evidente che c’è un autovalore non raggiungibile
in 2;1 = 3 che veri…ca direttamente la speci…ca ed un autovalore in 1;1 = 1, la cui raggiungibilità
dipende dalla matrice B1 parametrizzata da a: da ciò risulta evidente richiedere che l’autovalore
1;1 = 1 sia raggiungibile e pertanto che:
a2 + a
2 6= 0 , a 6=
9
2; a 6= 1.
(17)
Combinando le condizioni (15) e (17) si evince che il valore del parametro richiesto per soddisfare
le speci…che in (i) è a = 2.
La seconda parte dell’esercizio richiede di determinare un controllore che veri…chi le speci…che richieste nel punto (i). A tal …ne riscriviamo il sistema (16) per a = 2,
8
dx1;1 =dt
1
2
x1;1
4
<
=
+
u;
dx1;2 =dt
0
3
x1;2
0
:
y1 = x1 :
Focalizzando l’attenzione alla dinamica raggiungibile relativa alla variabile x1;1 ed imponendo un
controllore u = k1;1 x1;1 , la condizione richiesta al punto (i) impone:
dx1;1 =dt = x1;1 + 4k1;1 x1;1 = (1 + 4k1;1 )x1;1 =
da cui k1;1 =
data da:
3x1;1 ;
1. In…ne l’espressione generale del controllore che risolve la speci…ca al punto (i) è
u=
1 k1
k2
k3
10
x; k1 ; k2 ; k3 2 R:
Esercizio 5 (Homework con soluzione) Dato il sistema lineare tempo continuo:
dx=dt = Ax + Bu; x 2 R2 ; u 2 R,
(18)
dove:
A=
a4
1
(a2 + 1)
B=
2
1
7a2 2a
a
2a4 + 20a2 + 4a + 12
3a2 + 2a
6
;
; a 2 R,
si determini se esiste, un controllore con retroazione statica dallo stato, indipendente dal parametro
a, tale che il processo controllato abbia autovalori tutti a parte reale minore di 5.
Svolgimento - Il sistema (18) è parametrico in a ma si richiede un controllore che sia indipendente dal parametro e che veri…chi le speci…che. E’conveniente prima di tutto sintetizzare un
controllore parametrico in a, che veri…chi le speci…che e poi cercare un controllore "robusto" che
soddis… le speci…che per ogni valore di a 2 R. Calcoliamo innanzitutto la matrice di raggiungibilità:
#
"
2
2 a6a
2 +1
:
R = B AB =
2
1 a3a
2 +1
E’facile veri…care che il rango della matrice di R è uno per qualunque valore del parametro a 2 R e
pertanto le ipotesi del teorema dell’assegnazione degli autovalori con restroazione statica dallo stato
non sono veri…cate: ciò implica che esiste un autovalore non raggiungibile. Per calcolare gli autovalori
relativi alle dinamiche non raggiungibili e gli autovalori relativi alle dinamiche raggiungibili conviene
calcolare la forma canonica di raggiungibilità. Pertanto il sottospazio di raggiungibilità è:
2
1
P = R(R) = R
;
da cui è possibile costruire la matrice di trasformazione T che porti il sistema (18) in forma canonica
1
di raggiungibilità. Scegliendo un vettore v =
si ottiene:
0
1
T
2
1
=
1
0
da cui:
0
1
T =
1
2
.
Sulla base di T possiamo costruire la forma canonica di raggiungibilità associata al sistema (18):
~x + Bu,
~
d~
x=dt = A~
(19)
dove:
A~ = T AT
~ = TB =
B
1
=
B1
0
A11
0
=
A12
A22
1
0
=
1
a2 + 1
3a2
0
;
L’autovalore relativo alla dinamica non raggiungibile è:
non_ragg
=
11
(a2 + 6)
a
(a2 + 6)(a2 + 1)
;
e pertanto:
non_ragg
<
a2 < 1;
5 ()
dunque non_ragg < 5 per ogni valore di a 2 R e pertanto
sottosistema raggiungibile è:
3a2
dx1 =dt = 2
x1 + u.
a +1
non_ragg
veri…ca le speci…che. Il
(20)
Scegliendo un controllore u = k1 x1 e sostituendo in (20), otteniamo
dx1 =dt =
3a2
+ k1 x1 .
a2 + 1
Dunque l’autovalore relativo alla dinamica raggiungibile nel processo controllato è
Imponendo la speci…ca, si ottiene:
ragg
<
5 () k1 <
5
3a2
.
+1
a2
ragg
=
3a2
a2 +1 +k1 .
(21)
A questo punto è necessario scegliere un controllore e dunque un parametro k1 che veri…chi la
condizione (21). A tal …ne si osservi che:
a2
< 1; 8a 2 R,
a2 + 1
0
da cui scegliendo un qualsiasi:
k1 <
8
la speci…ca richiesta nell’esercizio è veri…cata.
Dunque la classe di controllori che veri…ca le speci…che per il sistema in forma canonica di raggiun~x
~ = k1 k2 ; k1 < 8; k2 2 R. In…ne, tenendo conto del
gibilità (19) è data da u = K
~, dove K
cambiamento di coordinate si ottiene
~x
~ x
u=K
~ = KT
=
k1
k2
0
1
=
k2
k1
2k2
1
2
x
x; k1 <
12
8; k2 2 R.