Vous êtes sur la page 1sur 15

Module : AUTOMATIQUE LINEAIRE-REPRESENTATION DETAT

TRAVAUX DIRIGS ASSISTS PAR


ORDINATEUR-TDAO N2

Dpartement de physique applique


Master Sciences et Techniques
ATSII

COMPTE RENDU DU TP2 :


RESOULUTION DE LEQAUTION DTAT

REALISER PAR :

ENCADR PAR
PROFESSEUR :

BERKATI Redwane
DARIB Abdelhamid

Dr.Abdelfettah BARAZZOUK

Anne universitaire : 20162017


Semestre 1

Table des matires


II)

But
.3

II.1)
Enonc
.3
a) La dtermination de lvolution temporelle de
ltat3
a.1) Mthode de la matrice
exponentielle........3
a.2) Mthode de la diagonalisation de la matrice
[A].4
b) implantation du modle du systme sur SIMULINK et
la visualisation des variable dtat
..5
c) Lvolution des variables xi(t) partir des expressions
analytiques7
d) Programme de calcul symbolique de
MATLAB ..10

TDAO N1-Automatique linaire : Reprsentation dtat

Page 2

TDAO N1-Automatique linaire : Reprsentation dtat

Page 3

II)

But :

Le but de ce TDAO est de rsoudre lquation dtat dun


systme linaire invariant en exploitant les possibilits du logiciel
MATLAB/SIMULINK. Lobjectif est de dterminer lexpression
analytique du vecteur dtat du systme laide de deux
mthodes diffrentes prsentes dans le cours.

II.1) Enonc:

[][

][ ] [ ] [ ]

x 1 2 2 0 x 1 1 0
u
x 2 = 0
0
1 x2 + 0 1 1
0 3 4 x 3 1 1 u 2
x 3

[]

X (0)= 1
2

Avec :

et

[ ]

u= 20 . E (t)
10

E(t) tant lchelon unitaire.

a) La dtermination de lvolution temporelle de ltat


a.1) Mthode de la matrice exponentielle :
On a le vecteur dentre est compose de constants en
chelon unitaire :
M } . x ( 0 ) }diag +{ {[ M ] . [ ]

Alors :

x (t)={ {[ M ] . [ ]

} . { [ M ]1 . [ B ] . u }diag }

}. { [ M ]1 . [ B ] . u }diag } 1 +{[ M ] . {

[]

1
1

[ ] =[M ] . [ A ] . [ M ] ; 1= 1
1

[]
1 . t

et

e
e = e . t
e . t
2

En exploitant le logiciel MATLAB pour ralis le programme


qui nous aide dterminer lvolution temporelle de x (t) du
systme sous forme analytique par la mthode de lexponentielle,
il faut juste saisir les matrice [A], [B] et les vecteurs x ( 0 ) et u
pour obtenir les rsultats finales.
Alors le programme est le suivant :
TDAO N1-Automatique linaire : Reprsentation dtat

Page 4

fprintf('------SELON LA METHODE DE DIAGONALISATION DE LA MATRICE


[A]-------\n');
r=size(A);%calcul de la dimension de la matrice A
a=r(1,1);
[M,D]=eig(A);%calcul de la matrice modale M et la matrice diagonal D
M1=inv(M);%calcul de l'inverse du matrice modale M
D1=inv(D);%calcul de l'inverse du matrice diagonale D
K1=-(M)*(D1)*diag((M1)*(B)*(U))*ones(a,1);
K2=(M)*diag((M1)*(X0))+(M)*(D1)*diag((M1)*(B)*(U));
for j=1:a
fprintf('x%d=%5.3f',j,K1(j,1));
for i=1:a
fprintf('+(%5.3f)exp(%5.3f*t)',K2(j,i),D(i,i));
end
fprintf('\n');
end

Donc le programme affiche les rsultats sous la forme :


>> question_a_1
------SELON LA METHODE DE DIAGONALISATION DE LA MATRICE [A]-------

x1=-13.333+(-52.000)exp(-2.000*t)+(55.000)exp(-1.000*t)+(10.333)exp(3.000*t)
x2=23.333+(0.000)exp(-2.000*t)+(-27.500)exp(-1.000*t)+(5.167)exp(3.000*t)
x3=-10.000+(0.000)exp(-2.000*t)+(27.500)exp(-1.000*t)+(-15.500)exp(3.000*t)
>>

a.2) Mthode de la diagonalisation de la matrice [A] :

On pose :

x ( t )=[M ] z ( t )

Donc :

z ( t )=[ D ] z ( t ) + [ M ] . [ B ] u (t)

O : [D] est la matrice diagonale des valeurs propres de [A].


De la mme faon que dans a.1) on ralise un
programme qui donne lvolution de x(t) on se basant sur la
mthode de la diagonalisation de la matrice [A] :
Voil le programme :
fprintf('-------------------------VOICI LES
SOLUTIONS-------------------------\n');
fprintf('-------------SELON LA METHODE DE LA MATRICE
EXPONENTIELLE------------\n');
TDAO N1-Automatique linaire : Reprsentation dtat

Page 5

r=size(A);%calcul de la dimension de la matrice A


a=r(1,1);
[M,D]=eig(A);%calcul de la matrice modale M et la matrice diagonal D
M1=inv(M); %calcul de l'inverse du matrice modale M
D1=inv(D); %calcul de l'inverse du matrice diagonale D
K=-(M)*(D1)*(M1)*(B)*(U);
K1=(M)*diag((M1)*(X0));
K2=(M)*(D1)*diag((M1)*(B)*(U));
for j=1:a
fprintf('x%d=%5.3f',j,K(j,1));
for i=1:a
fprintf('+(%5.3f)exp(%5.3f*t)',K1(j,i)+K2(j,i),D(i,i));
end
fprintf('\n');
end
fprintf('-------------REALISE PAR GROUPE : DARIB &
BERKATI------------\n');

Donc le programme affiche les rsultats sous la forme :


>> question_a2
-------------------------VOICI LES SOLUTIONS-------------------------------------SELON LA METHODE DE LA MATRICE EXPONENTIELLE------------

x1=-13.333+(-52.000)exp(-2.000*t)+(55.000)exp(-1.000*t)+(10.333)exp(3.000*t)
x2=23.333+(0.000)exp(-2.000*t)+(-27.500)exp(-1.000*t)+(5.167)exp(3.000*t)
x3=-10.000+(0.000)exp(-2.000*t)+(27.500)exp(-1.000*t)+(-15.500)exp(3.000*t)
-------------REALISE PAR GROUPE : DARIB & BERKATI----------->>

b) implantation du modle du systme sur SIMULINK et la


visualisation des variable dtat
partir de lquation dtat en implantant le modle du
systme sur SIMULINK :

TDAO N1-Automatique linaire : Reprsentation dtat

Page 6

Visualisation des variables stats :

TDAO N1-Automatique linaire : Reprsentation dtat

Page 7

TDAO N1-Automatique linaire : Reprsentation dtat

Page 8

c) Lvolution des variables xi(t) partir des expressions


analytiques
A partir des rsultats obtenus dans la question a) :

Visualisation des variables stats :

TDAO N1-Automatique linaire : Reprsentation dtat

Page 9

Comparaison
On comparant la mthode qui utilise l'quation d'tat pour
visualiser les variables dtats et celle qui utilise les expressions
analytiques, on trouve les rsultats suivantes :

TDAO N1-Automatique linaire : Reprsentation dtat

Page 10

Visualisation des variables stats :

TDAO N1-Automatique linaire : Reprsentation dtat

Page 11

Remarque

On constate que les courbes obtenues sont peu prs les


mme,avec une petite diffrence ngligeable.
d) Programme de calcul symbolique de MATLAB :
La fonction expm de MATLAB permet de dterminer les
solutions analytiques se qui confirme les rsultats obtenus par les
deux mthodes de la question a)
Alors le programme est le suivant :
fprintf('--------------------VOICI LES
SOLUTIONS--------------------\n')
fprintf('---------SELON lA METHODE DE LA MATRICE
EXPONENTIELLE------\n')
TDAO N1-Automatique linaire : Reprsentation dtat

Page 12

fprintf('-------------ET ON UTILISANT LA FONCTION EXPM


---------------\n');
fprintf('-------------VOILA VOTRE MATRICE A ---------------\n');
A
fprintf('-------------VOILA VOTRE MATRICE B ---------------\n');
B
fprintf('-------------VOILA VOTRE VECTEUR DE COMMANDE U
---------------\n');
U
fprintf('-------------VOILA VOTRE D ETAT INITIAL X0
---------------\n');
X0
%calcul de l'inverse du matrice A
fprintf('-------------VOILA LINVERSE DE LA MATRICE
A---------------\n');
n=size(A);
A1=inv(A)
%calcul de la matrice exponnetielle
fprintf('-------------VOILA LA MATRICE
EXPONENTIELLE---------------\n');
syms t x1(t) x2(t) x3(t)
x=expm(A*t);
simplify(x)
%calcul de la solution libre
fprintf('-------------VOILA LA SOLUTION LIBRE---------------\n');
Xl(t)=ans*[X0]
%calcul de la solution force
fprintf('-------------VOILA LA SOLUTION FORCE---------------\n');
I=eye(n);
R=ans-[I];
Xf(t)=[A1]*[R]*[B]*[U]
%calcul de la solution globale
fprintf('-------------VOILA LA SOLUTION GLOBALE---------------\n');
x(t)=Xl+Xf;
simplify(x(t));
Y=simplify(x(t));
pretty(Y)
fprintf('---------REALISE PAR LE GROUPE: DARIB & BERKATI------\n')

Donc le programme affiche les rsultats sous la


forme :
>> question_d_TDAO2
--------------------VOICI LES SOLUTIONS----------------------------SELON LA METHODE DE LA MATRICE EXPONENTIELLE------------------ET ON UTILISANT LA FONCTION EXPM ---------------------------VOILA VOTRE MATRICE A --------------A=
-2 -2
0
0
0
1
0 -3 -4
-------------VOILA VOTRE MATRICE B --------------TDAO N1-Automatique linaire : Reprsentation dtat

Page 13

B=
1
0
0
1
1
1
-------------VOILA VOTRE VECTEUR DE COMMANDE U --------------U=
20
10
-------------VOILA VOTRE D ETAT INITIAL X0 --------------X0 =
0
1
2
-------------VOILA LINVERSE DE LA MATRICE A--------------A1 =
-0.5000 1.3333 0.3333
0 -1.3333 -0.3333
0 1.0000
0
-------------VOILA LA MATRICE EXPONENTIELLE--------------ans =
[ exp(-2*t), -exp(-3*t)*(3*exp(2*t) - 4*exp(t) + 1), -exp(-3*t)*(exp(t) - 1)^2]
[
0,
(3*exp(-t))/2 - exp(-3*t)/2,
exp(-t)/2 - exp(-3*t)/2]
[
0,
(3*exp(-3*t))/2 - (3*exp(-t))/2, (3*exp(-3*t))/2 - exp(-t)/2]
-------------VOILA LA SOLUTION LIBRE--------------Xl(t) =
- 2*exp(-3*t)*(exp(t) - 1)^2 - exp(-3*t)*(3*exp(2*t) - 4*exp(t) + 1)
(5*exp(-t))/2 - (3*exp(-3*t))/2
(9*exp(-3*t))/2 - (5*exp(-t))/2
-------------VOILA LA SOLUTION FORCE--------------Xf(t) =
30*exp(-t) - 10*exp(-2*t) - (20*exp(-3*t))/3 + 15*exp(-3*t)*(exp(t) - 1)^2 + 5*exp(3*t)*(3*exp(2*t) - 4*exp(t) + 1) - 40/3
(20*exp(-3*t))/3 - 30*exp(-t) +
70/3
30*exp(-t) - 20*exp(-3*t) - 10

>>

TDAO N1-Automatique linaire : Reprsentation dtat

Page 14

TDAO N1-Automatique linaire : Reprsentation dtat

Page 15

Vous aimerez peut-être aussi