Sunteți pe pagina 1din 5

Laboratorul 8. Proprietati structurale ale sistemelor.

Denitia 1. Controlabilitatea unui sistem liniar = (A, B, C, D) este o proprietate ce depinde numai de perechea (A,B). Pe scurt, este controlabil daca sistemul poate condus in timp nit din starea initiala nula in orice stare x Rn , prin aplicarea unei comenzi adecvate. Perechea (A, B) este controlabila daca si numai daca rang R = n unde R = B AB . . . An1 B (1)

adica matricea de controlabilitate R Rnmn este epica (are rang intreg pe linii). Denitia 2. Observabilitatea unui sistem liniar = (A, B, C, D) este o proprietate ce depinde numai de perechea (C, A). Sistemul este observabil daca starea initiala poate determinata din prelucrarea marimilor de iesire. Perechea (C, A) este observabila daca si numai daca C CA (2) rang Q = n unde Q = . . . CAn1 Cu alte cuvinte matricea de observabilitate de mai sus Q Rnpn este monica, adica are rang intreg pe coloane. Denitia3. O realizare (A, B, C, D) a unui sistem dinamic se numeste minimala daca dimensiunea matricii A este cea mai mica posibil intre toate sistemele echivalente intrare-iesire. Teorema1. O realizare (A, B, C, D) este minimala daca si numai daca (A, B) este controlabila si (C, A) este observabila. Lema. Transformarile de echivalenta intre doua realizari pastreaza proprietatile structurale; daca A = T AT 1 , B = T B, C = CT 1 , D = D, atunci R = T R si Q = QT 1 , cu T nesingulara. Exercitiul 1. Fie sistemul liniar cu mai multe intrari si iesiri dat de urmatoarea matrice de transfer: H(s) =
1 s+11 s s+21 1 s+12 1 s+22 s s+13 1 s+23

Introduceti modelul acestui sistem in MATLAB, folosind functia MATLAB tf. Deoarece sistemul are mai multe intrari si mai multe iesiri functia tf va primi ca parametrii matricea numaratorilor si matricea numitorilor. H=tf({1 1 [1 0] ; [1 0] 1 1 },{[1 11] [1 12] [1 13]; [1 21] [1 22] [1 23] }) Indicatie. Daca obiectul H este de tip tfm (adica matrice de transfer) atunci matricea numaratorilor respectiv numitorilor pot adresate cu apelul H.num respectiv H.den. Daca dorim o realizare pe stare (A, B, C, D) a sistemului dat prin matricea de transfer, functia ss apelata cu un singur parametru de iesire (de exemplu sys=ss(H) ) intoarce un obiect sys de tip sistem , ale carui componente pot despachetate cu apelul: A=sys.a , B=sys.b etc. a) Gasiti o realizare pe stare a sistemului folosind ss. Este aceasta realizare controlabila si observabila ? Vericati.

b) Desenati pe acelasi grac raspunsul la impuls Dirac al sistemului descris de functia de transfer de pe pozitia (i, j) a lui H(s) impreuna cu raspunsul sistemului H pe iesirea j cand pe intrarea i s-a aplicat impuls Dirac. Celelate intrari uk , k = i, se presupun egale cu zero. Indicatie. Pentru raspunsul sistemului MIMO folositi functia impulse cu apelul [Y,T]=impulse(H), pentru care structura Y returnata este o matrice de vectori a carei semnicatie este descrisa explicit in helpul MATLAB. c) Pentru realizarea pe stare obtinuta mai sus gasiti o matrice patrata oarecare, T=rand (size(A),size(A)), cu T inversabila. Folosind functia ss2tfm gasiti un model de tip matrice de transfer al sistemului = (T AT 1 , T B, CT 1 , D). Ce constatati ? Exercitiul 2. Iesirea sistemului x = Ax + Bu ; y = Cx + Du este data de y(t) = CeAt x0 +
0 t

(3)

CeA(t ) Bu( )d

(4)

Primul termen din membrul drept al lui (4) se numeste raspunsul liber al sistemului asociat conditiei initiale x0 (y (t) = CeAt x0 t 0), cel de-al doilea termen din membrul drept deneste componenta fortata yf (t) = H(t) u(t) t 0. Se poate scrie ca y(t) = y (t) + yf (t) t 0 (5)

Cerinte. Sa se calculeze raspunsul liber y (t) al sistemului H(s) de la Exercitiul 1 pentru starea initiala Xi=[1 1 1 1 1 1] folosind functia initial apelata astfel: [Yl,T,X]=initial(sys,Xi) unde sys este realizarea pe stare a lui H. Sa se calculeze apoi raspunsul la intrare de tip treapta (pe toate canalele de intrare) (u(t) = [1 1 1]T t 0), mai intai cu conditii initiale nule (yf (t) -vezi mai sus) folosind functia MATLAB lsim. Construiti mai intai vectorul semnalului de intrare astfel u=ones(length(T),3) cu vectorul de timp T de la apelul anterior al lui initial. Apoi apelati Yf=lsim(sys,u,T). Calculati apoi raspunsul sistemului la intrarea u de mai sus de aceasta data cu starea initiala Xi=[1 1 1 1 1 1] (pentru care ati calculat raspunsul liber y (t)). Apelul esteY=lsim(sys,u,T,Xi) Vericati apoi (5) trasand pe acelasi grac raspunsul liber Yl si respectiv Y-Yf. Secventa MATLAB este: hold on plot(T,Yl) plot(T,Y-Yf) hold off Ce constatati?

Exemple.
Tranzitia unei stari din x0 la momentul t0 = 0 in x(t) la un moment t > 0 , dupa cum rezulta din (3) este data de expresia x(t) = eAt x0 +
0 t

eA(t ) Bu( )d

(6)

Daca o stare x Rn este controlabila in sensul Denitiei 1 atunci exista o comanda u() care sa transfere starea initiala x0 = 0 (adica originea) in starea x(t) = x, astfel ca (6) devine:
t

x=
0

eA(t ) Bu( )d

(7)

Denitia 4. Cu notatiile de la curs, se numeste gramian de controlabilitate al sistemului = (A, B, C, D) matricea simetrica
t

Lc (t) :=
0

eA(t ) B B T eA

T (t )

Reamintim un rezultat important discutat la curs, anume ca t > 0 are loc ImLc (t) = ImR Astfel, daca x este o stare controlabila, adica x ImR rezulta ca exista z astfel incat x = L c (t)z, pe care introdusa in (7) genereaza
t

x=
0

eA(t ) Bu( ) [B T eA

T (t )

z]d

(8)

Comparand (7) cu (8) rezulta ca expresia comenzii care duce sistemul in starea x este u( ) := B T eA
T (t )

0 t

(9)

In eventualitatea in care x este o stare necontrolabila, adica x ImR , atunci exista intotdeauna / un unic z astfel incat Lc (t)z este proiectia ortogonala a lui x pe subspatiu controlabil ImR. Pentru acest z se poate arata ca comanda data de expresia din (9) conduce sistemul in starea data de proiectia ortogonala a lui x pe subspatiu controlabil. Aceasta situatie este ilustrata printr-un exemplu MATLAB in sierul laborator8a.m, pentru o realizare necontrolabila a sistemului : H(s) =
5s2 +25s+30 s3 +6s2 +11s+6 9s2 +45s+54 s3 +6s2 +11s+6 3s2 +15s+18 s3 +6s2 +11s+6 2s2 +3s9 s3 +6s2 +11s+6 9s2 45s54 s3 +6s2 +11s+6 2s2 +5s3 s3 +6s2 +11s+6

Subspatiul controlabil al acestei realizari a lui H(s) este de dimensiune doi (deci este un plan) si este gurat in spatiul starilor cu culoarea albastra. Originea ( starea [0 0 0] T ) este gurata cu verde, iar starea tinta cu rosu.

Fie = (A, B, C, D) o realizare controlabila a unui sistem stabil.Fie gramianul asimptotic L c := limt Lc (t) . Deoarece realizarea este controlabila ImLc = ImR = Rn . Cum Lc simetrica si nesingulara rezulta ca exista o transformare de similaritate ortogonala U astfel incat L c sa aibe forma diagonala: 3

cu toti i > 0 i = 1 : n si eventual ordonate astfel incat 1 2 n Consideram acum sistemul echivalent pe stare via transformarea de similaritate denita de U de mai sus A := U AU T ; B := U B; C := CU T ; D = D si respectiv starile (evident controlabile) date de vectorii ei := [0 0 . . . 1 . . . 0]T cu 1 pe pozitia i. Fie ui comanda care duce sistemul in starea ei . Dupa cum s-a demonstrat la curs energiile comenzilor sunt date de 1 ui (t) 2 dt = i 0 si au semnicatia de nivele energetice ale sistemului (energia comenzii necesara pentru a aduce originea in starea x = ei .) Aceasta situatie este exemplicata in MATLAB in sierul laborator8b.m pentru o realizare controlabila a sistemului 5s2 +25s+30 7s2 +28s+21 Pentru aceasta realizare gramianul de controlabilitate are forma diagonala. Originea este gurata cu un punct de culoare verde, iar starile-tinta ei := [0 0 . . . 1 . . . 0]T cu 1 pe pozitia i, unde i = 1 : 3 sunt gurate cu rosu. Este trasata si histograma energiilor comenzilor. Concluzia este ca directiile date de vectorii proprii asociati valorilor proprii mai mici in modul reprezinta directii mai greu controlabile, in sensul ca este nevoie de o energie mai mare pentru a conduce sistemul in aceste directii. Exercitiul 3. Scrieti in MATLAB algoritmi de calcul ecient al matricilor de controlabilitate si de observabilitate ale sistemului de la Exercitiul 1. Calculati R si Q folosind ctrlb si obsv.
s+1+ Exercitiul 4. Pentru H(s) = (s+1)(s+2) determinati o realizare de stare controlabila, pentru = 107 , 1015 , eps, 0. Calculati in ecare caz in parte rangul lui Q. Comentati rezultatele.

1 . . . . . . 2 U Lc U T =

.. . n

H(s) =

s3 +6s2 +11s+6 9s2 +45s+54 s3 +6s2 +11s+6 3s2 +15s+18 s3 +6s2 +11s+6

s3 +6s2 +11s+6

5s2 +20s+15 s3 +6s2 +11s+6

Exercitiul 5. Determinati o realizare de stare pentru H(s) =


s+1 s2 +4s+3 s+3 s2 +2s+1

Retineti ordinul matricii A. Obtineti apoi o realizare minimala folosind functia minreal. Ce s-a intimplat cu ordinul matricii A? Este noua realizare controlabila? Dar observabila? Calculati matricea de transfer a realizarii obtinute (ss2tfm). Exercitiul 6. Fie un sistem avand matricea A= 1 1 + 1 1

Sa se reprezinte traiectoria de stare a sistemului x = Ax in cazul = 0 si pentru x(0) = 4 1 1 .

Ce implicatie are faptul ca sistemul este asimptotic stabil? Indicatie. Se implementeaza mai intai function dx=lin2(t,x,A) dx=Ax si se executa [T,Y]=ode23(@lin2,[0 5],[-1 1], ,A) . Considerati si alte valori pentru x(0) si reprezentati traiectoriile astfel obtinute pe acelasi grac. Determinati grac spectrul lui A pentru valori oarecare ale lui , in ecare din urmatoarele situatii: || < 1, || < 2, || < 7. Alegeti in ecare caz aproximativ 10 valori distincte pentru . Care este cea mai mica valoare a modulului lui (||max ) pentru care A este inca stabila. Exercitiul 7.(facultativ) Implementati in SIMULINK urmatoarea reprezentare a unui sistem liniar: x = Ax + Bu ; y = Cx + Du (10)