Sunteți pe pagina 1din 9

RSPUNSUL N DOMENIUL TIMPULUI AL SISTEMELOR DINAMICE LINIARE, CONTINUE, INVARIANTE N TIMP

1. Rspunsul n domeniul timp


Evoluia n timp a unui sistem dinamic liniar continuu, invariant n timp, reprezentat prin ecuaiile matriciale intrare - stare - iesire: x = Ax + B u n p m (1) y = Cx + Du, x ; y ; u pe intervalul t 0 este cauzat fie de asocierea unor condii iniiale pentru variabilele de stare x( 0) 0 (corespunznd unor acumulri energetice n sistem anterioare momentului de timp t = 0 ), fie de excitarea extern a sistemului prin intermediul semnalelor de intrare u ( t ) 0 Corespunztor se definesc urmtoarele componente ale rspunsului n domeniul timp: - rspunsul liber:este reprezentat de evoluia temporal a strii xl(t), respectiv a ieirii yl(t) (ca funcii de timp vectoriale) n condiiile izolrii sistemului de mediul exterior, u ( t ) = 0 ; rspunsul liber este determinat analitic cu ajutorul relaiei: x l (t ) = (t ) x(0), t 0 (2) y (t ) = C x l (t ), t 0 unde ( t ) = e At definete matricea de tranziie a strii. Remarcabil este faptul c forma evoluiei libere a sistemului este determinat explicit de condiiile iniiale asociate strii, x(0), respectiv de parametrii sistemului, eseniale fiind valorile proprii ale matricii de evoluie A: {i C , i = 1,.., n det( I n i A ) = 0} (3) (t ) =
t 1 d qi 1 e adj(I n A) ( r ) = q 1 i qj i =1 ( q i 1)! d i ( j ) r j =1 j i

(4)

unde qi este ordinul de multiplicitate algebric a valorii proprii i , iar r este numrul de valori proprii distincte. - rspunsul forat: definete evoluia temporal a strii xf(t), respectiv a ieirii yf(t) (ca funcii vectoriale) asociat unui sistem aflat la momentul t = 0 n repaus ( x(0) = 0) i excitat extern de ctre semnalele de intrare u ( t ) 0, t > 0 ; determinarea analitic a rspunsului forat face apel la relaiile: x f (t ) = e A (t ) Bu ()d, t > 0
0 t

(5)

y f (t ) = Cx f (t ) + Du (t ), t > 0 Aciunea simultan a condiiilor iniiale nenule x( 0) 0 i a excitaiei externe u ( t ) 0, t > 0 determin coexistena celor dou componente n rspunsul sistemului: x(t ) = x l (t ) + x f (t ) (6) y (t ) = y l (t ) + y f (t ) Determinarea rspunsului n domeniul timpului joac un rol important n faza de analiz a sistemelor dinamice liniare, punnd n eviden o serie de proprieti ale sistemului, aparent mascate de reprezentarea abstract (1). Evidenierea acestor proprieti se face explicit pe cele dou regimuri temporale specifice rspunsului n timp al sistemului: - regimul tranzitoriu: este o expresie a modificrii echilibrului (energetic) intern al sistemului; n cazul sistemelor stabile evoluia se realizeaz n sensul atingerii unei noi stri de echilibru, ceea ce corespunde formal unei durate finite a regimului tranzitoriu. - regimul permanent: este expresia dinamic la ieire a mrimii de intrare, conform structurii i parametrilor sistemului, n sensul c ieirea sistemului este similar ca

form de und cu intrarea; evident, n cazul rspunsului liber al sistemelor stabile regimul permanent corespunde situaiei reinstaurrii strii de repaus n sistem. n afara situaiilor generale de rspuns al sistemului la semnale oarecare de intrare, n analiza sistemelor apar anumite rspunsuri tipice dup cum urmeaz: Rspunsul indicial este rspunsul n domeniul timpului al unui sistem dinamic n condiii iniiale nule i pentru intrarea treapt unitar; se obinuiete ca pentru sistemele cu intrare vectorial s se ia n considerare situaiile n care treapta unitar se aplic pe rnd fiecrei intrri scalare, rezultnd un set de m rspunsuri indiciale. Rspunsul la impuls este rspunsul n domeniul timpului, n condiii iniiale nule i pentru intrarea de tip impuls Dirac; i aici se pot considera m rspunsuri corespunztoare aplicrii impulsurilor pe fiecare din componentele intrrii.

2. Funcii MATLAB pentru calculul rspunsului n domeniul timpului


MATLAB-ul dispune de un set de funcii care permit calculul rspunsurilor sistemelor dinamice (modelate prin ecuaii de tip (1)) la intrri tipice sau oarecare. Pentru toate aceste funcii este obligatorie definirea, nanite de a fi apelate, a unei variabile timp (notat t), reprezentnd un vector linie ce are drept componente momentele echidistante de timp n care se va face calculul rspunsului n domeniul timpului. t = [ 0 T 2 T 3T .... qT ], q N* (7) Dimensiunea vectorului t este egal cu numrul punctelor n care se calculeaz rspunsul sistemului. Pentru a nu denatura printr-un calcul numeric prost definit rspunsul sistemului dinamic, este necesar ca variabila t s fie corespunztor aleas, din dou puncte de vedere: - pasul eantionrii T se va alege astfel nct 1 1 T min , i = 1, n (8) 3 i i - lungimea intervalului de timp trebuie adoptat astfel nct 1 qT 3 max , i = 1, n Re i 0 Re i (9)

n relaiile (8) i (9) prin {i } s-a notat mulimea valorilor proprii ale sistemului (spectrul matricii de evoluie A). Aceste valori pot fi calculate cu ajutorul funciei MATLAB eig vp=eig(A); De multe ori se prefer alegerea variabilei t din considerente intuitive, ncercnd cteva perechi (q,T) pna se constat c rspunsul corespunde ca ntindere n timp i este "insensibil" la njumtirea lui T. Funciile MATLAB dedicate calculului rspunsului n timp al sistemelor dinamice liniare (operaie uzual denumit i simulare a sistemelor dinamice) sunt:

step
- calculeaz rspunsul unui sistem dinamic liniar multivariabil atunci cnd acestuia i se aplic un semnal de tip treapt unitar pe una din intrri, condiiile iniiale fiind considerate nule. - sintaxa de apelare: [Y,X]=step(A,B,C,D,iu,t); unde Y reprezint rspunsul indicial pentru un semnal treapt aplicat pe intrarea iu, iar X reprezint evoluia strilor sistemului n timp; Y va fi o matrice avnd numrul de coloane egal cu numrul de ieiri ale sistemului multivariabil i numrul de linii egal cu q + 1 (vezi (7)), iar X o matrice avnd numrul de coloane egal cu numrul variabilelor de stare ale sistemului i numrul de linii egal cu q + 1.

impulse

- calculeaz rspunsul unui sistem dinamic liniar multivariabil atunci cnd acestuia i se aplic un semnal de tip impuls Dirac pe una din intrri, condiiile iniiale fiind considerate nule. - sintaxa de apelare: [Y,X]=impulse(A,B,C,D,iu,t); unde Y reprezint rspunsul indicial pentru un impuls Dirac aplicat pe intrarea iu, iar X reprezint evoluia strilor sistemului n timp; Y va fi o matrice avnd numrul de coloane egal cu numrul de ieiri ale sistemului multivariabil i numrul de linii egal cu q + 1 (vezi (7)), iar X o matrice avnd numrul de coloane egal cu numrul variabilelor de stare ale sistemului i numrul de linii egal cu q + 1.

lsim
- calculeaz rspunsul unui sistem dinamic liniar multivariabil la intrri oarecare, considernd condiii iniiale oarecare. - sintaxa de apelare: [Y,X]=lsim(A,B,C,D,U,t,X0); unde Y reprezint rspunsul sistemului cu condiii iniiale X0 la intrarea U, iar X reprezint evoluia strilor sistemului n timp; Y va fi o matrice avnd numrul de coloane egal cu numrul de ieiri ale sistemului multivariabil i numrul de linii egal cu q + 1 (vezi (7)), iar X o matrice avnd numrul de coloane egal cu numrul variabilelor de stare ale sistemului i numrul de linii egal cu q + 1. Comanda multivariabil U este o matrice a intrrilor calculate la monentele de timp coninute de vectorul t: u2 (0) .. u m (0) u1 (0) U = .. .. .. .. u1 (qT ) u 2 (qT ) .. u m (qT ) Starea iniial X0 este un vector coloan (dimensiunea este egal cu numrul strilor sistemului) a crui prezen n sintaxa de apelare este opional; n absena sa condiiile iniiale sunt implicit considerate nule (X0 = 0). Pentru vizualizarea formelor de und ale rspunsului se poate utiliza funcia MATLAB plot: plot(t,Y,'w') respectiv plot(t,X,'w') n cazul sistemelor bidimensionale, avnd x = [ x1 x2 ]T 2 , este util analiza sistemului pe baza trasrii portretului de stare (curb plan reprezentnd evoluia conjugat n timp a celor dou variabile de stare - reprezentare n coordonate carteziene a perechilor de puncte ( x1 ( t ), x2 ( t )); t [ 0, t f ]). Trasarea portretului de stare este posibil cu funcia MATLAB plot apelat n forma: plot(x:,1),x(:,2).'w')

3. Exerciii rezolvate; probleme propuse Exerciiul 1


Se consider sistemul de poziionare a sculei achietoare a unei maini unelte (fig. 1), prezentat detaliat n laboratorul precedent, al crui model matematic intrare - stare ieire este: x1 10 0.5 x1 100 x = 50 0 x + 0 u 2 2 x1 y = [0 0.005] x2 S se determine evoluia ieirii i a vectorului de stare pentru un semnal de referin de tipul: a) yr ( t ) = u ( t ) = ( t )

b)

(vezi fig.2); t , t (0 sec,3 sec] 3, t (3 sec,6 sec] y r (t ) = u (t ) = 9 t , t (6 sec,9 sec] 0, t > 9 sec sistemul pornind din condiii iniiale nule. Yr(s) U(s) 10 Z(s) + + -1 0.1s+1 Regulator Y1(s) -1 Ue(s) -1 Um(s) 50/s N(s) Y(s)

Reostat prescriere

X2(s) X1(s) Amplificator Motor c.c. Lant cinematic Ym(s) 10 Reostat traductor

0.005

Amplificator Figura 1 u(t)

3 0 6

Figura 2 a) Problema solicit determinarea rspunsului complet al sistemului la referinele indicate; condiiile iniiale fiind nule, rspunsul complet va coincide cu rspunsul forat. Determinarea analitic a rspunsul unui sistem se bazeaz pe calculul matricei de tranziie. Pentru aceasta se utilizeaz relaia (3). Se gsesc valorile proprii : + 10 0. 5 det( I 2 A ) = 0 = 0 2 + 10 + 25 = 0 1 = 5; q1 = 2 50 rezultnd astfel matricea de tranziie de forma: e 5t (1 5t ) 0.5 d e t 0.5te 5t e At = = 5t d 1 50 + 10 e5t (1 + 5t ) =5 50te Folosind relaia (5), se determin rspunsul forat (complet n acest caz): t 5( t ) e (1 5(t )) 0.5(t )(t )e 5( t ) 100 x (t ) = x f (t ) = d 5( t ) e 5( t ) (1 + 5(t )) 0 0 50( t ) e 100te 5t x (t ) = ,t > 0 5t 5t e ) 200(1 5te

y ( t ) = Cx ( t ) = 1 e 5t ( 5t + 1), t > 0 n MATLAB, rspunsul sistemului se determin astfel: - se definesc matricile sistemului n modelat cu ecuaii de tip (1): a=[-10 0.5;-50 0];b=[-100;0];c=[0 0.005];d=0; - se definete vectorul de timp; t=0:0.05:4; - se obine rspunsul sistemului la intrarea treapt i variaia vectorului de stare n timp (condiiile iniiale fiind nule, se poate folosi funcia MATLAB step) [y, x]=step(a,b,c,d,1,t); Rspunsul obinut, inclusiv variaiile n timp ale componentelor vectorului de stare sunt prezentate n fig 3a,b,c.

n fig 3d este reprezentat portretul de stare corespunznd evoluiei n timp a sistemului.


starea x1 0 -1 -2 -3 -4 -5 -6 -7 -8 0 0.5 1 1.5 2 timp 2.5 3 3.5 4
starea x2 200 180 160 140 120 100 80 60 40 20 0 0 0.5 1 1.5 2 timp 2.5 3 3.5 4

a) variaia strii x1 n timp


iesirea sistemului

b)variaia strii x2 n timp


portret de stare

starea x2 200 180

1 0.8 0.6 0.4 0.2 0 0

160 140 120 100 80 60 40 20 0


0.5 1 1.5 2 timp 2.5 3 3.5 4

-8

-7

-6

-5

-4

-3

-2

-1

0 starea x1

c) ieirea sistemului

d) traiectoria de stare Figura 3

Pe traiectoriile temporale rezultate n urma simulrii se observ: - mrimea de ieire (poziia sculei achietoare) este reglat cu acuratee (eroare staionar nul), atingerea poziiei finale fiind obinut dup parcurgerea unui regim tranzitoriu de durat aproximativ de 1.5 sec; de asemenea se remarc faptul c reglarea se realizeaz fr suprareglare (evoluie aperiodic a ieirii ctre valoarea prescris) . - starea x2 (deplasarea unghiular a servomotorului de c. c.) sufer o evoluie similar, lucru firesc att timp ct ntre cele dou variabile y i x2 exist o relaie de direct proporionalitate. - starea x1 (tensiunea de ieire a regulatorului) se anuleaz n regim permanent, ceea ce corespunde opririi rotaiei motorului din momentul atingerii poziiei finale prescrise; starea x1 este egal i de semna opus cu tensiunea de comand a servomotorului de c.c. - portretul (traiectoria) de stare sugereaz evoluia sistemului ntre cele dou stri de echilibru [0 0] i [0 200]; traiectoria este parametrizat n timp, intervalul efectiv de parcurgere a traiectoriei fiind de 1.5 sec; pentru momentele de timp corespunznd regimului permanent (t > 1.5 sec) starea sistemului corespunde noului punct de echilibru [0 200]. b) - se definesc matricile sistemului la fel ca la punctul a) - se construiete convenabil vectorul de timp; t=0:0.05:15; - se construiete vectorul intrrii: for i=1:length(t), if t(i)<3,u(i)=t(i); elseif t(i)<6, u(i)=3; else if t(i)<9,u(i)=9-t(i); else u(i)=0;end;end;end; - se apeleaz funcia MATLAB lsim: [y, x]=lsim(a,b,c,d,u,t,[0 0]); Evoluia strilor sistemului i a ieirii sunt reprezentate grafic n fig. 4

starea x1 4 3 2 1 0 -1 -2 -3 -4 0 100 0 0 400 300 200 600 500

starea 2

5 timp

10

15

5 timp

10

15

a) variaia strii x1 n timp


iesirea sistemului 3 2.5 2

b)variaia strii x2 n timp


portretul de stare

starea x2 600 500 400 300


1.5 1 0.5 0 0 5 timp 10 15

200 100 0 -4 -3 -2 -1 0 1 2 3 4 starea x1

c) ieirea sistemului

d) traiectoria de stare Figura 4

Se observ c mrimea de ieire urmrete destul de fidel referina impus, regimurile tranzitorii fiind de durat mic,dup epuizarea acestora rspunsul sistemului intrnd n regim permanent (variaia ieirii este similar variaiei intrrii:de tip ramp pe intervalele de timp (0 ,3) i (6, 9) respectiv de tip constant pe intervalele de timp (3, 6) i (9, 15)). Palierele semnalului de ieire ( y ( t ) = 0 i y ( t ) = 3) corespund unei tensiuni de comand a servomotorului de c.c. (i unei tensiuni la ieirea regulatorului) nul. Din potretul de stare se pot observa cele dou stri de echilibru pe care le atinge sistemul: una corespunztoare palierului y ( t ) = 3, cnd x1 = 0; x2 = 600 i cealalt, starea final, corespunztoare palierului y ( t ) = 0 , cnd x1 = x2 = 0 .

Exerciiul 2
Se consider sistemul dinamic liniar multivariabil: 0 . 3.5 15 1 x= x + 0 1802u . . 8.7 16 0 0.31 0 2 y= x+ u . 0 0 1 143 a) s se determine i s se reprezinte grafic rspunsul liber al strii sistemului, din condiia iniial x( 0) = 1 1 b) s se determine i s se reprezinte grafic rspunsul sistemului i evoluia strilor pentru condiii iniiale nule i u ( t ) = 1 2 ( t )
T T

Pentru simularea sistemului n MATLAB n cele dou situaii propuse se definesc n prima etap matricile sistemului: a=[-3.5 -1.5;8.7 -1.6];b=[1 0;0 1.802];c=[-2 0;1 -1.43];c=[0.31 0;0 0]; i se caut valorile proprii ale matricei de evoluie: vp=eig(a) vp = -2.5500 + 3.4853i; -2.5500 - 3.4853i Pe baza valorilor proprii gsite se construiete convenabil vectorul de timp i se obin rspunsurile dorite. Reprezentarea grafic este posibil folosind plot

a) Comenzile MATLAB necesare obinerii rspunsului liber al sistemului (ieire i stare) sunt: t=0:0.05:4; [yl, xl]=lsim(a,b,c,d,zeros(length(t),2),t,[1 1]); plot(t,xl) plot(t,yl)
0.5 0 -0.5 -1 -1.5 -2 -2.5 0 iesirile sistemului 1.6 1.4 1.2 1 0.8 0.6 0.4 0.2 0 -0.2 0.5 1 1.5 2 timp 2.5 3 3.5 4 -0.4 0 0.5 1 1.5 2 timp 2.5 3 3.5 4 starile sistemului

a) variaia n timp a ieirilor sistemului b) variaia n timp a strilor sistemului Figura 5 - rspunsul liber al sistemului - exerciiul 2a) Starea de echilibru spre care tinde sistemul este x1 = x2 = 0 , stare n care ieirile sistemului sunt nule. b) Simularea n MATLAB este posibil folosind comenzile: t=0:0.05:4; u=[-ones(length(t),1),2*ones(length(t),1)]; [yf, xf]=lsim(a,b,c,d,u,t); plot(t,yf) plot(t,xf) Rspunsul forat al sistemului se mai poate afla i pe baza observaiei c el rezult, n virtutea liniaritii sistemului, din superpoziia rspunsurilor sistemului la intrrile 1 0 u1 (t ) = (t ); u 2 (t ) = (t ) 0 2 astfel: [y1,x1]=step(a,b,c,d,1,t); [y2,x2]=step(a,b,c,d,2,t); yf=-y1+2*y2; xf=-x1+2*x2;
0.6 0.4 0.4 0.2 0 -0.2 -0.4 -0.6 -0.8 -0.4 -1 -1.2 0 0.5 1 1.5 2 timp 2.5 3 3.5 4 -0.6 0 0.5 1 1.5 2 timp 2.5 3 3.5 4 0 -0.2 0.2 iesirile sistemului 0.6 starile sistemului

a) variaia n timp a ieirilor sistemului b) variaia n timp a strilor sistemului Figura 6 - rspunsul forat al sistemului - exerciiul 2b) Se observ c la ambele ieiri ale sistemului se instaleaz regimul permanent dup aproximativ 2 sec de la aplicarea intrrii. Acest regim permanent este caracterizat de starea de echilibru: x1 = 0. 4; x2 = 0. 2 .

Problema1
Se consider sistemul dinamic liniar multivariabil:

3 1 1 1 x= x + 0 4 u 2 0 1 0 1 0 y= x + 0 0u 1 2 a) determinai i reprezentai grafic evoluia liber a ieirilor i strilor sistemului


T pentru condiiile iniiale x( 0) = [1 0] ; reprezentai grafic portretul de stare. b) determinai rspunsul forat (ieiri, stri) al sistemului pentru

u ( t ) = 1 3 ( t ) ; reprezentai grafic portretul de stare. c) determinai i reprezentai grafic rspunsul complet al sistemului (ieiri, stri) pentru u ( t ) = 1 3 ( t ) i x( 0) = [1 0]T d) idem cu punctul b) pentru i u ( t ) = 0 n rest. sin 5t u(t ) = 2t , t [0,5] te
T

Problema 2
S se simuleze comportarea sistemului de suspensie a unui vehicol (figura 7) n cazul trecerii peste o denivelare (treapt) de nlime 0.1 m ( u ( t ) = 0.1 ( t ) )

Caroserie Suspensie k

M Amortizor

y=y=x2 y=x3

Sistemul este reprezentat n forma (1) prin urmtoarele ecuaii: k + k1 k k1 1 Pneu k1 x=u 0 1 x + 0 u x= 0 Cale de rulare k1 k1 0 0 M Figura 7 M y = [0 1 0]x Se dau: M = 250 kg; k = 12500 N / m; k1 = 25000 N / m; = 2500 Ns/ m . Se va relua simularea sistemului, analizndu-se: - efectul produs de creterea masei vehicolului de la 250 kg la 500 kg? - - efectul generat de dezumflarea cauciucului pna la atingerea unui coeficient de elasticitate k1 = 15000 N / m( M = 250 kg) ?
x1=x1

Problema 3
Se consider sistemul dinamic liniar: 10 5 1 0 x= x + 0 1u 5 0 1 0 y= x 0 1 a) determinai i reprezentai grafic rspunsurile indiciale ale sistemului; b) determinai i reprezentai grafic rspunsul complet al sistemului pentru u (t ) = [ 1 1] (t )
T

x ( 0) = [ 0 ] 1

Problema 4
S se urmreasc prin simulare numeric rspunsul indicial al sistemului sistemului 1 2 0 x= x + 0 u 5 1 1 0 y= x 0 1

pentru vectorii timp: a) t=0:0.1:5 b) t=0:1:5 c) t=0:0.1:55. Comentarii.

S-ar putea să vă placă și