Sunteți pe pagina 1din 12

ECOLE NATIONALE DES INGENIEURS DE CARTHAGE

Matière : Analyse et Identifications des


Systèmes

Compte rendue TP 2
Principe de la décomposition canonique de Kalman

Groupe : 2éme Mécatronique B

Réalisé par :
SMIDA HAMZA ZAYEN HAIFA

Année Universitaire : 2015/2016


I. OBJETCTIF

 Mettre en œuvre le principe de la décomposition canonique de Kalman pour les systèmes


linéaire stationnaires.
 Application de deux exemples intéressants et l’étude commandabilité et l’observabilité à
travers le logiciel MATLAB

II. TRAVAIL DEMANDE


A. EXEMPLE 1
Une représentation d’état dans le cas continu est définie par :
𝒙̇ (𝒕) = 𝑨 𝒙(𝒕) + 𝑩 𝒖(𝒕)
{
𝒚(𝒕) = 𝑪 𝒙(𝒕) + 𝑫 𝒖(𝒕)
avec x le vecteur d’état, u la commande, y la sortie mesuré, A la matrice d’état, B la matrice de
commande, C la matrice d’observation et D la matrice de transmission directe.
On considère les matrices suivantes :
−2 1 0 1
𝐴 = ( 0 −1 1) ; 𝐵 = (1) ; 𝐶 = (1 0 0) Et D=0.
0 0 0 1

0. Entrer le système à étudier :


A= [-2 1 0; 0 -1 1; 0 0 0]
B= [1;1;1]
C= [1 0 0]
D= 0
Les résultats affichés sont :

A=
-2 1 0
0 -1 1
0 0 0

B=
1
1
1

C=
1 0 0

D=
0
1. Pour déterminer la fonction de transfert du système il faut taper les
commandes suivantes sur MATLAB

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

H=tf(num,den)

les résultats obtenus sont :

num =
0 1.0000 2.0000 1.0000
den =
1 3 2 0
Transfer function:
s^2 + 2 s + 1
-----------------
s^3 + 3 s^2 + 2 s
Maintenant on va étudier la Commandabilité et l’Observabilité de notre système
On commence par la commandablité : Un système est dit commandable si pour tout intervalle de temps
, et tous points , avec , il existe une commande appliquée sur ,
telle que .

La condition nécessaire et suffisante de commandabilité ci-après est appelée le Critère de Kalman pour la
commandabilité. Le système considéré est commandable si et seulement si :

2. La Matrice du commandabilité :
Co=ctrb (A, B)

Co =
1 -1 2
1 0 0
1 0 0

3. Calcule du rang de Co :
Rank (Co)
Ans =
2
Le rang de la matrice de commandabilité est égale à 2 mais notre système est de
rang 3, donc notre système n’est pas totalement commandable.

On va chercher par la suite la partie commandable dans notre système

4. Décomposition du système en partie commandable et partie non


commandable :
[ABAR, BBAR, CBAR, T, K] = ctrbf (A, B, C)
ABAR =
-1.0000 0.0000 -0.0000
-1.1547 -1.6667 0.4714
-0.4082 1.1785 -0.3333

BBAR =
-0.0000
-0.0000
1.7321

CBAR =
0.0000 -0.8165 0.5774

T=
0.0000 0.7071 -0.7071
-0.8165 0.4082 0.4082
0.5774 0.5774 0.5774

K=
1 1 0
5. En utilisant la commande help du MATLAB pour la fonction utiliser ctrbf
on a trouvé les parties commandables ainsi que celle non commandables et
pour les extraire des matrices totales obtenue à travers ctrbf on va faire
comme la suite :
i. Parties commandables
Ac=ABAR (2:3, 2:3)
BC=BBAR (2:3, 1)
Cc=CBAR (1, 2:3)

Ac =
-1.6667 0.4714
1.1785 -0.3333

Bc =
-0.0000
1.7321

Cc =
-0.8165 0.5774
ii. Parties non commandables
Anc=ABAR(1,1)
Bnc=BBAR(1,1)
Cnc=CBAR(1,1)

Anc =
-1.0000
Bcn=
0
Cnc =
5.5511e-017

6. La fonction de transfert de la partie commandable en utilisant la même


méthode qu’au début :
[num,den]=ss2tf(Ac,BC,Cc,D)
H=tf(num,den)

num =
0 1.0000 1.0000

den =
1.0000 2.0000 -0.0000

Transfer function:
s+1
---------------------
s^2 + 2 s - 1.11e-016

En suite on va etudie l’Observabilité : Un système est dit observable si l'observation de ses entrées et
sorties pendant un intervalle de temps fini permet de déterminer l'état initial , et donc, par
intégration de l'équation d'état, de connaître à tout instant appartenant à l'intervalle . La
condition nécessaire et suffisante d'observabilité ci-après est appelé le Critère de Kalman pour
l'observabilité. Le système considéré est observable si et seulement si :
7. La matrice d'observabilité :

Ob=obsv(A,C)

Ob =
1 0 0
-2 1 0
4 -3 1

8. Calcule du rang de Ob :
Rank (Ob)

Ans =
3

Le rang de la matrice d’Observabilité est égale à 3 et notre système est de rang 3,


donc notre système est totalement Observable.

On va chercher par la suite la partie Observable et non Observable dans notre


système
Le système est totalement observable donc on n’a pas besoin de le décomposer.

9. Décomposition des systèmes en partie observables et partie non


observable :
[ABAR, BBAR, CBAR, T, K] = OBSVF (A, B, C)

ABAR =
0 0 0
1 -1 0
0 1 -2

BBAR =
1
1
1

CBAR =
0 0 1

T=
0 0 1
0 1 0
1 0 0

K=
1 1 1
10. En utilisant la commande help du MATLAB pour la fonction utiliser
OBSVF on a trouvé les parties observables ainsi que celle non observables
et pour les extraire des matrices totales obtenue à travers OBSVF on va
faire comme la suite :

i. La partie observable :
ABAR =
0 0 0
1 -1 0
0 1 -2
BBAR =
1
1
1

CBAR =
0 0 1

11. La fonction de transfert de la partie observable:

[num,den]=ss2tf(ABAR,BBAR,CBAR,D)

H=tf(num,den)

num =
0 1.0000 2.0000 1.0000
den =
1 3 2 0

Transfer function:
s^2 + 2 s + 1
-----------------
s^3 + 3 s^2 + 2 s

12. Comparison:

La fonction de transfert du système est la même que celle de la partie observable.


La fonction de transfert du système n’est pas la même que celle de la partie commandable.

Lorsque un système est observable la fonction de transfert du système est la même que celle
d’observabilité.
B. EXEMPLE 2 :

On considère le système linéaire continu invariant défini par :


𝑥̇ 1 (𝑡) = −3.5𝑥1 (𝑡) + 3𝑥2 (𝑡) + 𝑥3 (𝑡) + 3𝑢(𝑡)
𝑥̇ 2 (𝑡) = −𝑥1 (𝑡) + 𝑥2 (𝑡) + 1.5𝑢(𝑡)
𝑥̇ 3 (𝑡) = −1.25𝑥1 (𝑡) + 1.5𝑥2 (𝑡) − 0.5𝑥3 (𝑡) + 2𝑢(𝑡)
𝑦(𝑡) = −𝑥1 (𝑡) + 2𝑥2 (𝑡)

0. Entrer le système à étudier :


A=[-3.5 3 1; -1 1 0; -1.25 1.5 -0.5]
B=[3;1.5;2]
C=[-1 2 0 ]
D=0
On obtient les resultats suivants:

A=
-3.5000 3.0000 1.0000
-1.0000 1.0000 0
-1.2500 1.5000 -0.5000

B=
3.0000
1.5000
2.0000

C=
-1 2 0

D=
0

1. Fonction de transfert du système :


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

num =
0 0.0000 1.0000 1.0000

den =
1.0000 3.0000 2.0000 0.0000

Transfer function:
4.441e-016 s^2 + s + 1
------------------------------
s^3 + 3 s^2 + 2 s + 4.441e-016
2. La matrice de commandabilité:
Co=ctrb (A, B)

Co =
3.0000 -4.0000 7.0000
1.5000 -1.5000 2.5000
2.0000 -2.5000 4.0000

3. Le rang de la matrice de commandabilité:


Rank(Co)

Ans =
3

Le rang de la matrice d’Commandabilité est égale à 3 et notre système est de


rang 3, donc notre système est totalement commandable.

On va chercher par la suite la partie commandable et celle non commandable


dans notre système
Le système est totalement commandable donc on n’a pas besoin de le décomposer.

4. Décomposition des systèmes en partie commandable et partie non


commandable :
[ABAR, BBAR, CBAR, T, K] = CTRBF (A, B, C)

ABAR =
-0.9592 0.6376 0.0000
0.6056 -0.7785 0.1148
-1.0426 4.8290 -1.2623

BBAR =
0.0000
-0.0000
3.9051

CBAR =
0.1429 2.2315 -0.0000

T=

0.4286 0.2857 -0.8571


-0.4756 0.8780 0.0549
0.7682 0.3841 0.5121

K=
1 1 1
5. En utilisant la commande help du MATLAB pour la fonction utiliser CTRBF
on a trouvé les parties observables ainsi que celle non observables et pour les
extraire des matrices totales obtenue à travers CTRBF on va faire comme la
suite :
i. La partie observable :

ABAR =
-0.9592 0.6376 0.0000
0.6056 -0.7785 0.1148
-1.0426 4.8290 -1.2623

BBAR =
0.0000
-0.0000
3.9051

CBAR =
0.1429 2.2315 -0.0000

6. La fonction de transfert de la partie commandable:


[num,den]=ss2tf(ABAR,BBAR,CBAR,D)
H=tf(num,den)

num =
0 -0.0000 1.0000 1.0000

den =
1.0000 3.0000 2.0000 0.0000

Transfer function:
-2.665e-015 s^2 + s + 1
------------------------------
s^3 + 3 s^2 + 2 s + 5.375e-016

7. La matrice d'observabilité :

Ob=obsv(A,C)
Ob =
-1.0000 2.0000 0
1.5000 -1.0000 -1.0000
-3.0000 2.0000 2.0000
8. Calcule du rang de Ob :
Rank (Ob)

Ans =
2
Le rang de la matrice de observabilité est égale à 2 mais notre système est de
rang 3, donc notre système n’est pas totalement observable.

On va chercher par la suite la partie observable dans notre système

9. Décomposition de système en partie observables et partie non observable :


[ABAR, BBAR, CBAR, T, K] = OBSVF (A, B, C)

ABAR =
-1.0000 -1.3416 4.5467
0.0000 -1.3000 1.5167
-0.0000 0.6000 -0.7000

BBAR =
3.8333
0.7454
0

CBAR =
0.0000 0.0000 2.2361

T=
0.6667 0.3333 0.6667
0.5963 0.2981 -0.7454
-0.4472 0.8944 0

K=
1 1 0

10. Les modes observables et les modes non observables:


i. Les modes observables :
Ao=ABAR (2:3, 2:3)
Bo=BBAR (2:3, 1)
Co=CBAR (1, 2:3)

Ao =
-1.3000 1.5167
0.6000 -0.7000

Bo =
0.7454
0

Co =
0 2.2361
ii. Les modes non observables :
Ano=ABAR (1, 1)
Bno=BBAR (1, 1)
Cno=CBAR(1,1)

Ano =
-1.0000

Bno =
3.8333

Cno =
3.3307e-016

11. La fonction de transfert de la partie observable:


[num ,den]=ss2tf (Ao, Bo, Co, D)
H=tf(num,den)

num =
0 0.0000 1.0000

den =
1.0000 2.0000 0

Transfer function:
2.22e-016 s + 1
---------------
s^2 + 2 s

12. Comparaison:
La fonction de transfert du système est la même que celle de la partie commandable.
La fonction de transfert du système n’est pas la même que celle de la partie observable.

Lorsque un système est commandable la fonction de transfert du système est la même que celle
d’commandabilité.

III. Conclusion General :


 Si un système est totalement commandable la fonction de transfert de ce système est la
même que celle de commandabilité et si un système est totalement observable la
fonction de transfert de ce système est la même que celle d’observabilité.

 On peut extraire d’un système partiellement commandable la partie commandable et


non commandable et la même chose s’applique pour les système observable.

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