Documente online.
Zona de administrare documente. Fisierele tale
Am uitat parola x Creaza cont nou
 HomeExploreaza
upload
Upload




Reprezentarea sistemelor automate

tehnica mecanica


apelurile urmatoare duc la determinarea matricilor ce definesc ecuatiile de stare ale sistemului. Mentionam ca aceasta reprezentare nu este unica.


Exemplu.


Se considera sistemul descris de urmatoarele ecuatii de stare:



Sa se determine functia de transfer a sistemului: G(s)=Y(s)/U(s).


A=[0 1 0;0 0 1;-1 -2 -3];B=[10;0;0];

C=[1 0 0];D=[0];

[n,m]=sstf(A,B,C,D,1)

[n,m]=ss2tf(A,B,C,D,1)

n =


m =


printsys(n,m)

num/den =

10 s^2 + 30 s + 20


s^3 + 3 s^2 + 2 s + 1


De asemenea, [z,p] = ss2tf(A, B, C, D, 1) converteste ecuatia de stare n functia de transfer sub forma factorizata(pune īn evidenta polii si zerourile functiei de transfer).


[z,p]=ss2zp(A,B,C,D,1)

z =



p =

-0.3376 + 0.5623i

-0.3376 - 0.5623i



Transformari ale starii

Diagonalizarea matricii A


Unul din motivele diagonalizarii matricii A, presupun nd ca avem valori proprii distincte, este ca acestea sunt toate localizate pe diagonala principala. Rezulta deci ca matricea de tranzitie a starilor este de asemenea diagonala, cu elementele de pe diagonala .

D ndu-se sistemul liniar , unde A are valori proprii distincte, este de dorit a se gasi matricea nesingulara P astfel nc t aplic nd transformarea:



sa transforme ecuatia de stare de mai sus n forma canonica



cu a dat de matricea diagonala:


=P-1AP si =P-1B


n general, sunt c teva metode de a gasi matricea P. Astfel, matricea P poate fi formata prin utilizarea valorilor proprii ale matricii A.


Exemplu. Fie sistemul descris de ecuatiile de stare:


[P,L]=eig(A); L este matricea valorilor proprii

P este matricea corespunzatoare vectorilor proprii

a=inv(P)*A*P;

b=inv(P)*B;


P =





a =





b =





Transformari nesingulare ale starii


n ecuatia de stare a unui sistem liniar invariant īn timp:



daca matricea


S=[B AB A2B . . . An-1B]


este nesingulara, atunci exista o transformare nesingulara:


(t)=Px(t) sau x(t)=P-1


care transforma ecuatia de stare de mai sus n forma:


unde:


=PAP-1 si =PB


Matricea P este data de:


unde:


P1=[0 0 . . . 1][B AB AB2 . . . An-1B]-1


Exemplu.


Fisierul ss2phv.m este dezvoltat pentru a ndeplini transformarea de mai sus.

[a,b]=ss2phv(A,B) va returna a si b, reprezentānd matricile ecuatiei de stare, dupa transformarea nesingulara a starii.


A = [0 1 0; 3 0 2;- 12 -7 -6];

B=[-1; 2;3];

[a,b]=ss2phv(A,B)

a =




b =





Solutia ecuatiei de stare


Solutia ecuatiei de stare liniara, neomogena:



poate fi obtinuta prin abordarea transformatei Laplace:


sX(s) - x(0) = AX(s) + BU(s)

sau:

X(s)=f(s) x(0)+f(s) BU(s)

unde:

F(s)=(sI-A)-1

f(t)=L-1[F(s)


este cunoscuta ca matricea de tranzitie a starilor. Astfel, solutia ecuatiei de stare este:


x(t)=L-1 F s x L-1 F s B U s


Putem, de asemenea, exprima ecuatia de mai sus n functie de f(t) si integrala de convolutie.

Daca A este nesingulara, atunci ecuatia de mai sus poate fi simplificata pentru a da raspunsurile la impuls, treapta si rampa.

Pentru intrare de tip impuls, raspunsul este:


x(t)=f t x f t BK


Pentru intrarea treapta u(t) = K, raspunsul este:


x(t)=f(t) x(0)+A-1[f(t)-I] B K


Pentru intrarea rampa u(t) = Kt, raspunsul este:


x(t)=f(t) x(0)+(A2)-1[f(t)-I-At]B K


Transformata Laplace a matricii de tranzitie a starii, F(s)


F(s) este obtinut din algoritmul Faddeeva, dat de:


F(s)=(sI-A)-1=

unde matricile E sunt:


En-1=I En-1-k =AEn-k+an-kI , k=1,2,3,...,n-1


Fisierul ltstm este dezvoltat pentru a calcula F(s) n concordanta cu algoritmul de mai sus.


Exemplu:


A=[-2 -1; 2 -5];

ltstm(A)


Matricile E, īn ordinea descrescatoare a puterilor lui s sunt:


E =



E =



a =



Deci:


Evaluarea lui F(s) din valorile caracteristice ale lui A. Metoda Cayley - Hamilton.


Teorema Cayley-Hamilton stabileste ca daca ecuatia caracteristica a unei matrici patratice A este:


ln a ln-1 an


atunci A satisface ecuatia matriciala:


An+a An-1+. . . +anI=0


Deci, fiecare matrice patratica satisface propria sa ecuatie caracteristica.

Fie:

eAt=K1(t)I+K2(t)A+ . . . +Kn(t)An-1


Se poate arata ca o ecuatie scalara, echivalenta cu ecuatia de mai sus, este satisfacuta c nd A este nlocuit de l, astfel:


unde valorile l sunt valori proprii distincte ale matricii A. Cānd doua valori proprii sunt egale, de exemplu c nd l l , atunci al treilea r nd al matricii de mai sus este nlocuit de:


Fisierul strm.m este dezvoltat baz ndu-se pe metoda Cayley-Hamilton. Aceasta functie evalueaza matricea de tranzitie a starii n forma nchisa. Valorile proprii multiple sunt de multiplicitate 2. Exemplul urmator demonstreaza utilizarea aceste functii.


Exemplu. Sa se determine matricea de tranzitie a starilor pentru sistemul de la exemplul anterior.


A=[-2 -1; 2 -5];

ltstm(A)

f(s) = inv(SI - A) = P / q where,

P = s**(n-1)E(n-1) + S**(n-2)E(n-2) + . . . + E(0)

q = a(n)s**n + a(n-1)s**n-1 + a(1)s + . . . + a(0)

a(i) = coefficients of the characteristic equation q


The E matrices in descending power of s are :


E =



E =



a =



Deci,


Rezultatul este urmatorul:



Determinarea solutiei ecuatiei de stare


Procedura practica pentru gasirea raspunsului n timp al unui sistem este utilizarea simularii digitale. Reprezentarea n spatiul starilor ne permite sa simulam un sistem pe calculator.

O prima posibilitate de aflare a solutiilor este utilizarea functiilor ode23 si ode45.

Pentru sistemele liniare continue n timp, documentatia aferenta pentru MATLAB , Control System Toolbox, furnizeaza functiile [y,x] = impulse(A, B, C, D, iu, t) si [y,x] = step(A, B, C, D, iu, t) care obtin raspunsul la impuls si raspunsul la treapta utilizānd ecuatia de stare. Functia [y, x] = lsim[A, B, C, u, t] simuleaza ecuatia de stare cu intrare arbitrara.


Exemplu. Pentru un sistem descris de:


se da:

Se cere sa se determine x(t)si y(t), r(t) fiind intrare de tip treapta.


A=[0 1 0;0 0 1;-6 -11 -6];

B=[1;1;1]; C=[1 1 0]; D=0;

x0=[1 0.5 -0.5]; t=0: .05:4;

u=ones(1, lenght(t)); %genereaza un vector u

[y,x]=lsim(A,B,C,D,u,t,x0);

plot(t,x,t,y)

title('Solutiile ecuatiei de stare')

xlabel('Timp - sec')

text(3.8,1.8,'y'), text(3.8,2.6,'x1'), text(3.8,-0.8,'x2') text(3.8,-1.4,'x3')


Fig. 2.2..Reprezentarea grafica a semnalelor din sistem.


Exemplu.

Pentru sistemul anterior sa se traseze y(t) si x(t), intrarea sistemului fiind r(t)=sin(2pt)


A=[0 1 0;0 0 1;-6 -11 -6];

B=[1;1;1]; C=[1 1 0]; D=0;

x0=[1 0.5 -0.5]; t=0: .05:4;

u=sin(2*pi*t); %genereaza un vector u

[y,x]=lsim(A,B,C,D,u,t,x0);

plot(t,x,t,y)

title('Solutiile ecuatiei de stare')

xlabel('Timp - sec')

text(.1,1.7,'y'), text(.1,1.25,'x1'), text(.1,.55,'x2'), text(.1,-1,'x3')


Fig. 2.3. Evolutia starii sistemului.

Transfigurarea schemelor bloc


Fisierul blkbuild (MATLAB Control System Toolbox) si functia connect convertesc diagrame bloc la modele īn spatiul starilor. Blocurile functiei de transfer sunt numerotate secvential de la 1 la nr. de blocuri. Functia nblocks defineste numarul total de blocuri si bldblock converteste fiecare bloc la o reprezentare īn spatiul starilor nelegata (neconectata).

Expresia [A,B,C,D]=connect(a,b,c,d,q,iu,iy) conecteaza blocurile īn concordanta cu o matrice predefinita q care specifica interconectarile. Primul element al fiecarui rānd al matricei q este numarul blocului. Restul elementelor indica sursa blocurilor ce intra īn sumator. Cānd intrarea īn sumator este negativa numarul blocului este introdus cu semnul minus. Elementele in si iy sunt doi vectori linie, memorānd blocurile de intrare si iesire. Īn final, pentru a obtine functia de transfer globala, [num,den]=ss2tf(A,B,C,D,iu) calculeaza functia de transfer de la intrarea iu.


Exemplu. Sa se determine reprezentarea intrare-stare-iesire a sistemului din figura urmatoare:



Fig.2.4..Schema bloc functionala a sistemului


n1= 1; d1=1; % coeficientii fiecarei functii de transfer ( numaarator si numitor )

n2=.5; d2=1; n3= 4; d3=[1 4]; n4= 1; d4=[1 2]; n5= 1; d5=[1 3]; n6= 2; d6=1; n7= 5; d7=1;

n8= 1; d8=1;

nblocks=8;    %numarul de blocuri

blkbuild

q=[1 0 0 0 0 % q=matricea configuratiei








iu = [1]; % intrarea sistemului

iy = [8]; % iesirea sistemului

[A ,B,C,D]=connect(a,b,c,d,q,iu,iy)

%realizeaza conexiunea īntre blocuri si determina %reprezentarea intrare-stare-iesire

[num,den]=ss2tf(A,B,C,D,1)

Deci functia de transfer a sistemului este data de:



Control System Toolbox contine 4 functii care sunt utilizate īn constructia unui model. append combina functionalitatea a doua sisteme īn spatiul starilor formānd un model mai complex. Functiile parallel si series conecteaza doua sisteme īn spatiul starilor īn paralel, respectiv īn serie. Īn final, functia ode genereaza matricile A,B,C,D pentru un sistem de ordin doi.


Document Info


Accesari: 4026
Apreciat: hand-up

Comenteaza documentul:

Nu esti inregistrat
Trebuie sa fii utilizator inregistrat pentru a putea comenta


Creaza cont nou

A fost util?

Daca documentul a fost util si crezi ca merita
sa adaugi un link catre el la tine in site


in pagina web a site-ului tau.




eCoduri.com - coduri postale, contabile, CAEN sau bancare

Politica de confidentialitate | Termenii si conditii de utilizare




Copyright © Contact (SCRIGROUP Int. 2024 )