100% ont trouvé ce document utile (2 votes)
421 vues49 pages

Commande des systèmes multivariables

Transféré par

Katla Arbi
Copyright
© Attribution Non-Commercial (BY-NC)
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
100% ont trouvé ce document utile (2 votes)
421 vues49 pages

Commande des systèmes multivariables

Transféré par

Katla Arbi
Copyright
© Attribution Non-Commercial (BY-NC)
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd

POLYCOPI

E DE TRAVAUX
PRATIQUES
-
Master - M ecatronique - 1
` ere
Ann ee (S7)
Universit e de Franche-Comt e ` a Besancon
COMMANDE DES SYST
`
EMES MULTIVARIABLES (CSM)
Micky RAKOTONDRABE
t el : 03 81 40 28 03
mail : mrakoton@[Link]
document t el echargeable sur
[Link]

[Link]/[Link]
1
Table des mati` eres
1 POUTRE PI EZO ELECTRIQUE ` A 2DDL : COMMANDE PAR PLACEMENT DE P OLES
ET COMMANDE LIN EAIRE QUADRATIQUE 5
1.1 Le syst` eme . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
1.1.1 Cr eation du syst` eme . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
1.1.2 P oles et valeurs propres . . . . . . . . . . . . . . . . . . . . . . . . . 7
1.1.3 Simulation du syst` eme . . . . . . . . . . . . . . . . . . . . . . . . . . 7
1.2 Commande par retour d etat par placement de p oles . . . . . . . . . . . . . . . 7
1.2.1 Commandabilit e . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
1.2.2 Mise en equation du syst` eme boucl e . . . . . . . . . . . . . . . . . . . 8
1.2.3 Calcul de la matrice de retour K
c
. . . . . . . . . . . . . . . . . . . . 8
1.2.4 Calcul du pr eltre L . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
1.2.5 Simulation du syst` eme boucl e . . . . . . . . . . . . . . . . . . . . . . 9
1.3 Commande optimale Lin eaire Quadratique (LQ) . . . . . . . . . . . . . . . . . 9
1.3.1 Satisfaction des conditions . . . . . . . . . . . . . . . . . . . . . . . . 10
1.3.2 Calcul de la matrice de retour K
c
. . . . . . . . . . . . . . . . . . . . 10
1.3.3 Simulation du syst` eme boucl e . . . . . . . . . . . . . . . . . . . . . . 10
2 SYST` EME HYDRAULIQUE ` A TROIS BACS : COMMANDE PAR PLACEMENT DE P OLES
ET OBSERVATEUR DE LUENBERGER 11
2.1 Le syst` eme . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
2.1.1 Cr eation du syst` eme . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
2.1.2 P oles et valeurs propres . . . . . . . . . . . . . . . . . . . . . . . . . 13
2.1.3 Simulation du syst` eme . . . . . . . . . . . . . . . . . . . . . . . . . . 13
2.2 Commande par retour d etat par placement de p oles . . . . . . . . . . . . . . . 13
2.2.1 Commandabilit e . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
2.2.2 Mise en equation du syst` eme boucl e . . . . . . . . . . . . . . . . . . . 14
2.2.3 Calcul de la matrice de retour K
c
. . . . . . . . . . . . . . . . . . . . 14
2.2.4 Calcul du pr eltre L . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
2.2.5 Simulation du syst` eme boucl e . . . . . . . . . . . . . . . . . . . . . . 14
2.3 Observateur complet ou observateur de Luenberger . . . . . . . . . . . . . . . 14
2.3.1 Observabilit e . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
2.3.2 Mise en equation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
2.3.3 Calcul du gain de lobservateur K
o
. . . . . . . . . . . . . . . . . . . 17
2
2.3.4 Simulation du syst` eme avec observateur . . . . . . . . . . . . . . . . . 17
2.4 Observateur et commande par placement de p oles . . . . . . . . . . . . . . . . 17
3 H ELICOPT` ERE : RETOUR D ETAT AVEC ACTION INT EGRALE ET OBSERVATEUR
R EDUIT 18
3.1 Le syst` eme . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
3.1.1 Cr eation du syst` eme . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
3.1.2 P oles et valeurs propres . . . . . . . . . . . . . . . . . . . . . . . . . 19
3.1.3 Simulation du syst` eme . . . . . . . . . . . . . . . . . . . . . . . . . . 20
3.2 Commande par retour d etat avec action int egrale . . . . . . . . . . . . . . . . 20
3.2.1 Commandabilit e . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
3.2.2 Calcul de la matrice de retour K par placement de p oles . . . . . . . . 22
3.2.3 Simulation du syst` eme boucl e . . . . . . . . . . . . . . . . . . . . . . 23
3.3 Observateur r eduit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
3.3.1 Cr eation des sous-syst` emes . . . . . . . . . . . . . . . . . . . . . . . . 25
3.3.2 Observabilit e . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
3.3.3 Calcul du gain de lobservateur K
o
. . . . . . . . . . . . . . . . . . . 26
3.3.4 Impl ementation de lobservateur r eduit et de la commande . . . . . . . 26
4 AVION : COMMANDE MODALE ET ESTIMATEUR DE LUENBERGER 27
4.1 Le syst` eme . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
4.1.1 Cr eation du syst` eme . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
4.1.2 P oles et valeurs propres . . . . . . . . . . . . . . . . . . . . . . . . . 28
4.1.3 Simulation du syst` eme . . . . . . . . . . . . . . . . . . . . . . . . . . 29
4.2 Commande modale . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
4.2.1 Commandabilit e . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
4.2.2 Calcul de la matrice de retour K
c
et du pr eltre L . . . . . . . . . . . . 32
4.2.3 Simulation du syst` eme boucl e . . . . . . . . . . . . . . . . . . . . . . 32
4.3 Observateur complet ou observateur de Luenberger . . . . . . . . . . . . . . . 33
4.3.1 Observabilit e . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
4.3.2 Calcul du gain de lobservateur K
o
. . . . . . . . . . . . . . . . . . . 33
4.4 Observateur et commande modale . . . . . . . . . . . . . . . . . . . . . . . . 34
A Alg` ebre lin eaire 35
A.1 Taille dune matrice . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
A.2 Rang dune matrice . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
A.3 Op erateurs transpos ee et adjoint . . . . . . . . . . . . . . . . . . . . . . . . . 36
A.4 Matrices particuli` eres . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
A.4.1 Matrice identit e . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
A.4.2 Matrice nulle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
A.5 Valeurs propres et vecteurs propres . . . . . . . . . . . . . . . . . . . . . . . . 37
A.6 Spectre et rayon spectral . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38
A.7 Comatrice . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38
A.8 Inverse dune matrice . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
3
A.9 Pseudo-inverse dune matrice . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
B Outils de base pour les mod` eles d etat 41
B.1 Ordre du syst` eme . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
B.2 Stabilit e . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
B.3 Commandabilit e . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
B.4 Observabilit e . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
C Quelques fonctions de MATLAB 43
C.1 Calcul de base . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
C.2 Calcul matriciel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
C.3 Quelques fonctions de base utilis ees en Automatique . . . . . . . . . . . . . . 46
C.4 Quelques fonctions danalyse et de synth` ese utilis ees en Automatique . . . . . 48
4
Chapitre 1
POUTRE PI

EZO

ELECTRIQUE
`
A 2DDL :
COMMANDE PAR PLACEMENT DE
P

OLES ET COMMANDE LIN

EAIRE
QUADRATIQUE
1.1 Le syst` eme
Une poutre pi ezo electrique est une poutre qui, lorsquon applique une tension electrique sur
ses electrodes, echit. Une poutre ` a deux degr es de libert es (2ddl) echit dans les deux axes x ou
y selon que la tension soit appliqu ee sur les electrodes dans lun ou dans lautre axe (Fig. 1.1).


x
y
poutre pizolectrique
FIG. 1.1 Photo dune poutre pi ezo electrique.
Le mod` ele d etat lin eaire dune poutre pi ezo electrique est :
_
dX
dt
= AX + BU
Y = CX + DU
(1.1.1)
5
La premi` ere equation sappelle equation d etat tandis que la deuxi` eme equation de sortie.
On a :
X est le vecteur d etat,
Y est le vecteur de sortie,
U est le vecteur de commande,
A sappelle matrice d etat,
B sappelle matrice de commande,
C sappelle matrice de sortie,
et D sappelle matrice de liaison directe. D est une matrice nulle dans toute la suite.
On a :
Y =
_

x

y
_
U =
_
U
x
U
y
_
X =
_
_
_
_

x
v
x

y
v
y
_
_
_
_
(1.1.2)
et :
A =
_
_
_
_
0 1 0 0
3.949 10
7
251.4 0 0
0 0 0 1
0 0 2.744 10
7
314.3
_
_
_
_
B =
_
_
_
_
0 0
31595372 9479408
0 0
23324224 6860066
_
_
_
_
C =
_
1 0 0 0
0 0 1 0
_
(1.1.3)
La Fig. 1.2-a montre le sch ema fonctionnel de la poutre tandis que la Fig. 1.2-b donne le
sch ema-bloc d etaill e.
6
U
U
Ux x
y Uy
Y
Y
X
dX
AX BU
dt
Y CX DU

= +

= +

dX
AX BU
dt
Y CX DU

= +

= +


B
A
C
X

(a)
(b)
+
+
FIG. 1.2 Sch ema fonctionnel et sch ema-bloc.
1.1.1 Cr eation du syst` eme
Cr eer le syst` eme d etat appel e Get de r ealisation (A,B,C,0) dans Matlab puis dans Simulink.
1.1.2 P oles et valeurs propres
En utilisant Matlab :
calculer les p oles du syst` eme G,
calculer les valeurs propres de la matrice A. Que peut-on dire sur les valeurs propres de
A et les p oles du syst` eme,
` a partir de ces valeurs, que peut-on dire sur la stabilit e du syst` eme.
1.1.3 Simulation du syst` eme
Dans Matlab, simuler la r eponse indicielle, la r eponse impulsionnelle et le diagramme de
Bode du syst` eme,
dans Simulink, simuler la r eponse indicielle du syst` eme.
1.2 Commande par retour d etat par placement de p oles
Dans le but dam eliorer les performances et de rejeter les effets des perturbations eventuelles,
on souhaite commander le syst` eme d etat G. Pour cela, on utilise le sch ema-bloc de la Fig. 1.3.
Dans cette gure, on a :
la consigne (ou r ef erence) not ee Y
c
,
la matrice de retour (ou matrice de retour d etat) not ee K
c
,
et le pr eltre (ou la matrice de pr eltre) not e L.
7
U Y Yc
X
B
A
Kc
L C
X

+ +
+
-
systme
FIG. 1.3 Sch ema-bloc du syst` eme boucl e.
1.2.1 Commandabilit e
Avant de synth etiser un syst` eme de commande, il est important de savoir si le syst` eme est
commandable ou pas. D enir la commandabilit e dun syst` eme.
En utilisant Matlab :
calculer la matrice de commandabilit e not ee C
o
,
d eterminer le rang de la matrice C
o
,
en d eduire si le syst` eme est commandable ou pas.
1.2.2 Mise en equation du syst` eme boucl e
A partir de la Fig. 1.3, donner le nouveau mod` ele d etat, cest-` a-dire, le mod` ele d etat du
syst` eme boucl e.
1.2.3 Calcul de la matrice de retour K
c
dapr` es le nouveau mod` ele d etat, d eterminer lutilit e de la matrice de retour K
c
?
choisir des valeurs propres pour la nouvelle matrice d etat (ABK
c
). Pour cela, vous
partez des valeurs propres de A. Pourquoi ce choix ?
calculer K
c
avec Matlab.
1.2.4 Calcul du pr eltre L
Lorsque le r egime est permanent (p = 0 ou t ou encore
dX
dt
= 0), donner lexpres-
sion de la sortie Y en fonction de la consigne Y
c
,
an dannuler lerreur statique, cest-` a-dire Y = Y
c
, que doit etre la matrice L? calculer
L avec Matlab.
8
1.2.5 Simulation du syst` eme boucl e
En utilisant Matlab, simuler la r eponse indicielle, la r eponse impulsionnelle et le dia-
gramme de Bode du syst` eme boucl e,
de m eme, en utilisant Simulink, simuler la r eponse indicielle du syst` eme boucl e,
commenter sur les performances du syst` eme boucl e par rapport au syst` eme G.
Remarque : si les performances du r egime transitoire ne vous conviennent pas, nh esitez pas
` a modier les valeurs propres de (ABK
c
) puis ` a recalculer K
c
et L.
1.3 Commande optimale Lin eaire Quadratique (LQ)
Dans la section pr ec edente, nous avons choisi nous-m emes les p oles (ou valeurs propres)
du syst` eme boucl e an de pouvoir calculer la matrice de retour K
c
, do` u le nom de placement
de p oles. Dans cette section, un algorithme d etermine automatiquement les p oles du syst` eme
boucl e selon un crit` ere, le correcteur K
c
sen d eduira par la suite. Ce crit` ere sappuie sur la
minimisation de l energie de sortie Y ainsi que l energie de lentr ee U. L energie etant une
forme quadratique des variables concern ees, la fonction de co ut ` a minimiser est donc :
J =
_

0
_
Y
T
Q
y
Y + U
T
RU
_
dt (1.3.1)
o` u Q
y
est une matrice sym etrique d enie positive et R une matrice sym etrique d enie po-
sitive. Les el ements du diagonal de Q
y
(resp. R) permettent de mettre en avant les sorties y
i
de
Y (resp u
i
de U).
Puisquon sint` eresse ` a une commande par retour d etat, il est int eressant de mettre le co ut
J d enie par l equa. 1.3 en fonction de l etat X. En utilisant Y = CX et Y
T
= X
T
C
T
, on
obtient :
J =
_

0
_
X
T
QX + U
T
RU
_
dt (1.3.2)
avec Q = C
T
Q
y
C.
Si les el ements de Q (resp. de R) permettent de pond erer les el ements de X (resp. de U)
entre eux, on poura introduire un coefcient suppl ementaire qui pond` ere l energie de sortie
(ou de l etat) par rapport ` a l energie de lentr ee. L energie totale ` a minimiser devient donc :
J =
_

0
_
X
T
QX + U
T
RU
_
dt (1.3.3)
Si la paire (A, B) est commandable et la paire (A, C) observable, il existe une solution
unique P, matrice sym etrique d enie positive, solution de lEquation Alg ebrique de Riccati
suivante :
A
T
P + PA + QPBR
1
B
T
P = [0] (1.3.4)
9
Ainsi, la matrice de retour d etat qui minimise J est donn ee par :
K
c
= R
1
B
T
P (1.3.5)
1.3.1 Satisfaction des conditions
Dans les questions pr ec edentes, on a vu que (A, B) est commandable. V erier que (A, C)
est observable.
1.3.2 Calcul de la matrice de retour K
c
Choisir les matrices Q et R ainsi que le coefcient ,
calculer la matrice de retour K
c
,
calculer egalement le pr eltre L.
1.3.3 Simulation du syst` eme boucl e
En utilisant Matlab, simuler la r eponse indicielle, la r eponse impulsionnelle et le dia-
gramme de Bode du syst` eme boucl e,
de m eme, en utilisant Simulink, simuler la r eponse indicielle du syst` eme boucl e,
commenter sur les performances du syst` eme boucl e par rapport au syst` eme G.
Remarque : si les performances du r egime transitoire ne vous conviennent pas, nh esitez pas
` a modier les matrices Q et R ainsi que le coefcient puis ` a recalculer K
c
et L.
10
Chapitre 2
SYST
`
EME HYDRAULIQUE
`
A TROIS
BACS : COMMANDE PAR PLACEMENT
DE P

OLES ET OBSERVATEUR DE
LUENBERGER
2.1 Le syst` eme
On consid` ere le syst` eme hydraulique ` a 3 bacs de la Fig. 2.1. Le mod` ele d etat de ce syst` eme
est :
_
dX
dt
= AX + BU
Y = CX + DU
(2.1.1)
On a :
Y =
_
x
1
x
3
_
U =
_
U
1
U
2
_
X =
_
_
x
1
x
2
x
3
_
_
(2.1.2)
et :
A =
_
_
0.332 0.332 0
0.332 0.664 0.332
0 0.332 0.524
_
_
B =
_
_
0.764 0
0 0
0 0.764
_
_
C =
_
1 0 0
0 0 1
_
(2.1.3)
dans lesquelles :
11
les niveaux deau x
1
, x
2
et x
3
constituent le vecteur d etats du syst` eme,
et les d ebits U
1
et U
2
constotuent le vecteur dengtr ee.





x1
U1
U2
x2
x3
FIG. 2.1 Un syst` eme hydraulique ` a 3 bacs.
Les Fig. 2.2 repr esentent le sch ema fonctionnel et le sch ema-bloc d etaill e du syst` eme.
U
U
U1 x1
x3 U2
Y
Y
X
dX
AX BU
dt
Y CX DU

= +

= +

dX
AX BU
dt
Y CX DU

= +

= +


B
A
C
X

(a)
(b)
+
+
FIG. 2.2 Sch ema fonctionnel et sch ema-bloc d etaill e.
12
2.1.1 Cr eation du syst` eme
Cr eer le syst` eme d etat appel e Get de r ealisation (A,B,C,0) dans Matlab puis dans Simulink.
2.1.2 P oles et valeurs propres
En utilisant Matlab :
calculer les p oles du syst` eme G,
calculer les valeurs propres de la matrice A. Que peut-on dire sur les valeurs propres de
A et les p oles du syst` eme,
` a partir de ces valeurs, que peut-on dire sur la stabilit e du syst` eme.
2.1.3 Simulation du syst` eme
Dans Matlab, simuler la r eponse indicielle, la r eponse impulsionnelle et le diagramme de
Bode du syst` eme,
dans Simulink, simuler la r eponse indicielle du syst` eme.
2.2 Commande par retour d etat par placement de p oles
Dans le but dam eliorer les performances et de rejeter les effets des perturbations eventuelles,
on souhaite commander le syst` eme d etat G. Pour cela, on utilise le sch ema-bloc de la Fig. 2.3.
Dans cette gure, on a :
la consigne (ou r ef erence) not ee Y
c
,
la matrice de retour (ou matrice de retoure d etat) not ee K
c
,
et le pr eltre (ou la matrice de pr eltre) not e L.
U Y Yc
X
B
A
Kc
L C
X

+ +
+
-
systme
FIG. 2.3 Sch ema-bloc du syst` eme boucl e.
13
2.2.1 Commandabilit e
Avant de synth etiser un syst` eme de commande, il est int eressant de connatre si le syst` eme
est commandable ou pas.
En utilisant Matlab :
calculer la matrice de commandabilit e not ee C
o
,
d eterminer le rang de la matrice C
o
,
en d eduire si le syst` eme est commandable ou pas.
2.2.2 Mise en equation du syst` eme boucl e
A partir de la Fig. 2.3, donner le nouveau mod` ele d etat, cest-` a-dire, le mod` ele d etat du
syst` eme boucl e.
2.2.3 Calcul de la matrice de retour K
c
dapr` es le nouveau mod` ele d etat, d eterminer lutilit e de la matrice de retour K
c
?
choisir des valeurs propres pour la nouvelle matrice d etat (ABK
c
). Pour cela, vous
partez des valeurs propres de A. Pourquoi ce choix ?
calculer K
c
avec Matlab.
2.2.4 Calcul du pr eltre L
Lorsque le r egime est permanent (p = 0 ou t ou encore
dX
dt
= 0), donner lexpres-
sion de la sortie Y en fonction de la consigne Y
c
,
an dannuler lerreur statique, cest-` a-dire Y = Y
c
, que doit etre la matrice L? calculer
L avec Matlab.
2.2.5 Simulation du syst` eme boucl e
En utilisant Matlab, simuler la r eponse indicielle, la r eponse impulsionnelle et le dia-
gramme de Bode du syst` eme boucl e,
de m eme, en utilisant Simulink, simuler la r eponse indicielle du syst` eme boucl e,
commenter sur les performances du syst` eme boucl e par rapport au syst` eme G.
Remarque : si les performances du r egime transitoire ne vous convient pas, nh esiter pas ` a
modier les valeurs propres de (ABK
c
) puis ` a recalculer K
c
et L.
2.3 Observateur complet ou observateur de Luenberger
Dans la section pr ec edente, an de pouvoir utiliser la commande par retour d etat, nous
avons suppos e que lensemble des etats (les el ements de X) etait accessible ` a la mesure. Cepen-
dant, ce nest pas toujours le cas. Entre autres, ici, nous consid erons que seule la sortie Y est
14
mesurable. Ainsi, x
2
nest pas mesurable.
On souhaite donc reconstruire le vecteur d etat X ` a partir des el ements disponibles. La
premi` ere id ee qui vient ` a lesprit pour reconstruire X est de simuler le mod` ele. Si d

X est l etat
estim e (observ e, ou reconstruit), le simulateur aura pour equation :
_
d

X
dt
= A

X + BU

Y = C

X
(2.3.1)
Or, une telle simulation nest pas convenable si lon veut avoir une bonne estimation de X :
le proc ed e r eel et le simulateurs nont pas les m emes conditions initiales, cela d ecalerait
d

X par rapport ` a X,
les param` etres A, B et C du mod` ele sont toujours soumis ` a incertitudes, cela donnerait
de faux r esultats sur d

X,
si le syst` eme est instable
1
, il est impossible de simuler d

X.
Pour eviter ces probl` emes, on introduit donc un terme correcteur dans le mod` ele l equa. 2.3.1.
Ainsi, le mod` ele de lobservateur est d eni par :
_
d

X
dt
= A

X + BU + Ko
_
Y

Y
_

Y = C

X
(2.3.2)
dans laquelle :
d

X est (le vecteur d) l etat estim e,
d

Y est la sortie estim ee,


K
o
est le (la matrice de) gain de lobservateur.
Lobservateur utilise comme entr ee les el ements disponibles Y et U (Fig. 2.4). Comme on
reconstruira lensemble des el ements du vecteur d etat, cet observateur sappelle observateur
complet ou observateur de Luenberger
2
.
1
Le mod` ele d etat de r ealisation (A, B, C, D) est instable si une au moins des valeurs propres de A est ` a partie
r eelle positive.
2
D u ` a David G. Luenberger, 1966.
15
U Y
X
B
A
C
X

+
+
systme
observateur

X
FIG. 2.4 Utilisation dun observateur pour reconstruire l etat X.
La Fig. 2.5 repr esente le sch ema-bloc d etaill e de lobservateur ainsi que du syst` eme.
U Y
X

B
A
C
X

+
-
+
+
B
A
Ko
C
+
+
+
systme
observateur

FIG. 2.5 Sch ema-bloc d etaill e de lobservateur et du syst` eme.


16
2.3.1 Observabilit e
An de synth etiser un observateur pour un syst` eme, il est important de connatre si le
syst` eme est observable ou pas. D enir lobservabilit e dun syst` eme.
En utilisant Matlab, calculer la matrice dobservabilit e not ee O
b
,
puis, d eterminer le rang de la matrice O
b
,
en d eduire si le syst` eme est observable ou pas.
2.3.2 Mise en equation
A partir du mod` ele du syst` eme d enie par l equa. 2.1.1 (avec D = [0]) et du mod` ele de
lobservateur d enie par l equa. 2.3.2, donner lexpression de
d
x
dt
telle que lerreur destimation

x
est d enie par :

x
= X

X (2.3.3)
2.3.3 Calcul du gain de lobservateur K
o
dapr` es l equation de lerreur obtenue pr ec edemment, ` a quoi sert exactement le gain de
lobservateur K
o
?
choisir des valeurs propres pour la matrice (AK
o
C). Pour cela, vous partez des valeurs
propres de (ABK
c
) choisies dans les questions pr ec edentes. Pourquoi ce choix ?
calculer K
o
avec Matlab.
2.3.4 Simulation du syst` eme avec observateur
En utilisant Simulink, appliquer un echelon ` a lentr ee du syst` eme et comparer le vecteur
d etat X ainsi que l etat estim e d

X. Pour cela, mettre des conditions initiales diff erentes de
z ero dans le syst` eme. Essayer egalement de mettre des valeurs diff erentes pour les param` etres
A, B et C dans le syst` eme r eelle (non pas dans lobservateur) an de simuler lincertitude, par
exemple on pourra utiliser :
A =
_
_
0.335 0.33 0.01
0.331 0.66 0.331
0 0.33 0.52
_
_
B =
_
_
0.76 0
0 0
0 0.77
_
_
C =
_
0.998 0 0
0 0 1.02
_
(2.3.4)
2.4 Observateur et commande par placement de p oles
Combiner maintenant lobservateur pr ec edemment calcul e ainsi que la commande par pla-
cement de p oles synth etis ee auparavant dans Simulink puis simuler le syst` eme boucl e.
17
Chapitre 3
H

ELICOPT
`
ERE : RETOUR D

ETAT
AVEC ACTION INT

EGRALE ET
OBSERVATEUR R

EDUIT
3.1 Le syst` eme
On consid` ere lh elicopt` ere de la Fig. 3.1, o` u d esigne langle de lacet (angle autour de laxe
z) et d esigne langle de tangage (angle autour de laxe y).

rotor de queue
(pour le lacet )
rotor principal
(pour le tangage )
y
(a)
(b)
z
FIG. 3.1 Un h elicopt` ere
Ce syst` eme est non-lin eaire. Toutefois, autour dun point de fonctionnement, lh elicopt` ere
peut etre mod elis e par un syst` eme lin eaire de mod` ele d etat :
18
_
dX
dt
= AX + BU
Y = CX
(3.1.1)
On a :
Y =
_

_
U =
_
U
1
U
2
_
X =
_
_
_
_
_
_
_
_
v

_
_
_
_
_
_
_
_
(3.1.2)
et :
A =
_
_
_
_
_
_
_
_
0 1 0 0 0 0
1.347 0 0.12 0 2.32 1.1
0 0 0 1 0 0
0.21 0 1.87 0 0.23 3
1 0 0 0 0 0
0 0 1 0 0 0
_
_
_
_
_
_
_
_
B =
_
_
_
_
_
_
_
_
1.1 0.8
18 2
0.7 1.2
3 21
0 0
0 0
_
_
_
_
_
_
_
_
C =
_
0 0 0 0 1 0
0 0 0 0 0 1
_
(3.1.3)
dans lesquelles :
les etats v
i
et
i
indiquent respectivement la vitesse et lacc el eration angulaires associ ees
` a langle i ( i {, } ),
et les entr ees el ementaires U
1
et U
2
d esignent des signaux de commande.
Les Fig. 3.2 repr esentent le sch ema fonctionnel et le sch ema-bloc d etaill e du syst` eme.
3.1.1 Cr eation du syst` eme
Cr eer le syst` eme d etat appel e Get de r ealisation (A,B,C,0) dans Matlab puis dans Simulink.
3.1.2 P oles et valeurs propres
En utilisant Matlab :
calculer les p oles du syst` eme G,
calculer les valeurs propres de la matrice A. Que peut-on dire sur les valeurs propres de
A et les p oles du syst` eme,
` a partir de ces valeurs, que peut-on dire sur la stabilit e du syst` eme.
19
U
U
U1
U2
Y
Y
X
dX
AX BU
dt
Y CX DU

= +

= +

dX
AX BU
dt
Y CX DU

= +

= +


B
A
C
X

(a)
(b)
+
+
FIG. 3.2 Sch ema fonctionnel et sch ema-bloc d etaill e.
3.1.3 Simulation du syst` eme
Dans Matlab, simuler la r eponse indicielle, la r eponse impulsionnelle et le diagramme de
Bode du syst` eme,
dans Simulink, simuler la r eponse indicielle du syst` eme.
3.2 Commande par retour d etat avec action int egrale
On sint eresse dans cette section ` a la commande de lh elicopt` ere pour diff erentes raisons :
le stabiliser,
obtenir de meilleures performances de suivi de consigne : erreur statique nulle, dynamique
sans oscillation, etc.
rejeter les effets des perturbations eventuelles.
On a vu que la matrice de retour K
c
permet dam eliorer la dynamique du syst` eme boucl e.
Pour annuler lerreur statique, nous avons utilis e le pr eltre L. Dans ce sujet, nous remplacerons
ce pr eltre par une action int egrale. En effet, lutilisation dun pr eltre nassure pas toujours ler-
reur statique nulle si le mod` ele nest pas parfaitement connu. Le sch ema-bloc du syst` eme boucl e
utilis e est repr esent e par la Fig. 3.3, dans lequel K
i
d esigne la matrice de gain de lint egrateur.
20
U
Z Y Yc
X
B
A
Kc
C
X

+ +
+ -

-
-
systme
Ki
FIG. 3.3 Sch ema-bloc du syst` eme boucl e.
Dapr` es la Fig. 3.3, on a :
_
_
_
dX
dt
= AX + BU
Y = CX
dZ
dt
= Y
c
CX
(3.2.1)
En prenant comme nouveau vecteur d etat
_
X
Z
_
, on obtient le nouveau mod` ele d etat,
appel e syst` eme augment e, suivant :
_

_
d
dt
_
X
Z
_
=
_
A [0]
C [0]
__
X
Z
_
+
_
B
[0]
_
U +
_
[0]
I
_
Y
c
Y =
_
C [0]
_
_
X
Z
_
(3.2.2)
Par ailleurs, toujours dapr` es la Fig. 3.3, on a :
U = (K
c
X + K
i
Z) (3.2.3)
cest-` a-dire :
U =
_
K
c
K
i
_
_
X
Z
_
(3.2.4)
Ainsi, on a un mod` ele d etat d eni par l equa. 3.2.2 et boucl e par un gain de retour K =
_
K
c
K
i
_
. Les matrices du syst` eme augment e sont :
A
aug
=
_
A [0]
C [0]
_
B
aug
=
_
B
[0]
_
C
aug
=
_
C [0]
_
(3.2.5)
Le syst` eme boucl e aura pour repr esentation :
21
_

_
d
dt
_
X
Z
_
=
_
A [0]
C [0]
__
X
Z
_

_
B
[0]
_
_
K
c
K
i
_
_
X
Z
_
+
_
[0]
I
_
Y
c
Y =
_
C [0]
_
_
X
Z
_
(3.2.6)
ou encore :
_

_
d
dt
_
X
Z
_
=
_
ABK
c
BK
i
C [0]
__
X
Z
_
+
_
[0]
I
_
Y
c
Y =
_
C [0]
_
_
X
Z
_
(3.2.7)
Le but est donc de chercher le gain de retour K =
_
K
c
K
i
_
pour obtenir de valeurs
propres convenables pour la nouvelle matrice d etat not ee A, telle que :
A =
_
ABK
c
BK
i
C [0]
_
(3.2.8)
En ce qui concerne lerreur statique, on peut la calculer lorsque
d
dt
_
X
Z
_
= [0]. Appli-
quant cette condition au syst` eme d equa. 3.2.2, on obtient :
_
_
_
(ABK
c
) X = BK
i
Z
CX = Y
c
Y = CX
(3.2.9)
Les deux derni` eres equations du syst` eme d equa. 3.2.9 afrme que Y = Y
c
, cest-` a-dire
lerreur statique est automatiquement nulle.
3.2.1 Commandabilit e
En utilisant Matlab :
calculer la matrice de commandabilit e not ee C
o
du syst` eme,
d eterminer le rang de la matrice C
o
,
en d eduire si le syst` eme est commandable ou pas.
3.2.2 Calcul de la matrice de retour K par placement de p oles
Cr eer les matrices du syst` eme augment e A
aug
, B
aug
et C
aug
avec Matlab,
quelle est la dimension de la matrice d etat A?
proposer des valeurs propres pour la matrice d etat A,
en utilisant la fonction place de Matlab, en d eduire la matrice de retour K,
en d eduire la matrice de retour K
c
et le gain de lint egrateur K
i
.
22
3.2.3 Simulation du syst` eme boucl e
En utilisant Simulink, simuler la r eponse du syst` eme boucl e pour une consigne de type
echelon egale ` a Y
c
=
_

c

c
_
=
_
30

50

_
appliqu ee ` a linstant
_
10s
30s
_
.
Remarque : si les performances du r egime transitoire ne vous conviennent pas, nh esitez pas
` a modier les valeurs propres et recalculer la matrice K.
3.3 Observateur r eduit
Dans la section 2.3, nous avons utilis e un observateur pour estimer le vecteur d etat. Cet
observateur, appel e observateur de Luenberger ou observateur complet, estime lensemble du
vecteur X. Toutefois, si une partie de ce vecteur est d ej` a mesur ee par le biais de la sortie Y , il
nest pas n ecessaire dutiliser un obsrevateur complet. Dans cette partie, on sint eresse ` a estimer
un observateur r eduit pour estimer la partie non-mesur ee de X.
Soit le syst` eme d ecrit par :
_
dX
dt
= AX + BU
Y = CX
(3.3.1)
dans lequel la matrice de sortie est du type :
C =
_
[0] I
_
(3.3.2)
Alors, on peut partitionner le vecteur d etat X en 2 : la partie non-mesur ee not ee V et la
partie mesur ee not ee Y . On peut r e- ecrire le syst` eme d eni par l equa. 3.3.1 comme suit :
_

_
dX
dt
=
d
dt
_
V
Y
_
=
_
A
11
A
12
A
21
A
22
__
V
Y
_
+
_
B
1
B
2
_
U
Y =
_
[0] I
_
_
V
Y
_
(3.3.3)
Dapr` es le mod` ele pr ec edent, on a :
_
_
_
dV
dt
= A
11
V + A
12
Y + B
1
U
dY
dt
= A
21
V + A
22
Y + B
2
U
(3.3.4)
cest-` a-dire :
_
_
_
dV
dt
= A
11
V + (A
12
Y + B
1
U)
_
dY
dt
A
22
Y B
2
U
_
= A
21
V
(3.3.5)
cette derni` ere est equivalente ` a un mod` ele d etat (r eduit par rapport au syst` eme d equa. 3.3.1),
de vecteur d etat V , de sortie
_
dY
dt
A
22
Y B
2
U
_
et dentr ee (A
12
Y + B
1
U) :
23
_
_
_
dV
dt
= A
11
V + entree
sortie = A
21
V
(3.3.6)
Ainsi, on peut estimer l etat V en utilisant lobservateur de Luenberger (voir section 2.3).
Comme V est une partie de X, on parle dobservateur r eduit. La Fig. 3.5 pr esente le sch ema
fonctionnel.
U Y
X
B
A
C
X

+
+
systme
observateur
rduit

X=

V
Y



FIG. 3.4 Sch ema fonctionnel du yst` eme avec observateur r eduit.
Lobservateur a pour mod` ele :
_

_
d

V
dt
= A
11

V + entree + K
o
_
sortie

sortie
_

sortie = A
21

V
(3.3.7)
cest-` a-dire :
d

V
dt
= A
11

V + (A
12
Y + B
1
U) + K
o
__
dY
dt
A
22
Y B
2
U
_
A
21

V
_
(3.3.8)
ou encore :
d

V
dt
= (A
11
K
o
A
21
)

V + (A
12
Y + B
1
U) + K
o
_
dY
dt
A
22
Y B
2
U
_
(3.3.9)
Le gain K
o
est le gain de lobservateur r eduit. Cette equation n ecessite la d erivation de Y ,
ce qui est un inconv enient. On se propose donc de r ealiser le changement de variable suivant :
24
Z =

V K
o
Y
dZ
dt
=
d

V
dt
K
o
dY
dt
(3.3.10)
En appliquant ce changement de variable dans l equa. 3.3.9, on a :
dZ
dt
+K
o
dY
dt
= (A
11
K
o
A
21
) (Z + K
o
Y )+(A
12
Y + B
1
U)+K
o
dY
dt
+K
o
(A
22
Y B
2
U)
(3.3.11)
Apr` es simplication et mise en forme, on obtient le mod` ele suivant pour notre observateur :
_
_
_
dZ
dt
= (A
11
K
o
A
21
) Z + ((A
11
K
o
A
21
) K
o
+ A
12
K
o
A
22
) Y + (B
1
K
o
B
2
) U

V = Z + K
o
Y
(3.3.12)
La Fig. 3.5 donne le sch ema-bloc d etaill e du syst` eme avec lobservateur r eduit.
U
Y X

B
A
C
X

+
+
+
+
+
+
+
B1-KoB2
Ko
A11-KoA21
(A11-KoA21)Ko+A12-KoA22
systme
observateur
rduit

X=

V
Y




FIG. 3.5 Syst` eme avec observateur r eduit.
3.3.1 Cr eation des sous-syst` emes
Avec Matlab, cr eer les sous-matrices A
11
, A
12
, A
21
, A
22
, B
1
et B
2
.
3.3.2 Observabilit e
Le syst` eme r eduit a pour mod` ele le syst` eme d equa. 3.3.6. An de pouvoir observer sont
etat V , il est important de connatre si ce syst` eme est observable ou non.
25
En utilisant Matlab :
calculer la matrice dobservabilit e not ee O
b
,
puis, d eterminer le rang de la matrice O
b
,
en d eduire si le syst` eme est observable ou pas.
3.3.3 Calcul du gain de lobservateur K
o
Choisir des valeurs propres pour la matrice (A
11
K
o
A
21
). Pour cela, vous partez des
valeurs propres de (ABK
c
) choisies dans la synth` ese de la commande dans la section
pr ec edente. Pourquoi ce choix ?
calculer K
o
avec Matlab.
3.3.4 Impl ementation de lobservateur r eduit et de la commande
Impl ementer sous Simulink lobservateur r eduit,
le syst` eme n etant pas stable, impl ementer egalement dans le m eme chier la commande
synth etis ee dans la section pr ec edente,
simuler le syst` eme avec observateur et commande. Pour cela, mettre des conditions ini-
tiales non-nulles dans le syst` eme. Essayer egalement de mettre des valeurs diff erentes
pour les param` etres A, B et C dans le syst` eme r eelle (non pas dans lobservateur) an de
simuler lincertitude, par exemple on pourra utiliser :
A =
_
_
_
_
_
_
_
_
0 1.1 0 0 0 0.02
1.35 0 0.2 0 2.3 1
0 0 0 1 0 0
0.2 0 1.89 0 0.21 3
1.1 0.05 0 0 0 0
0 0 1 0 0 0
_
_
_
_
_
_
_
_
B =
_
_
_
_
_
_
_
_
1.2 0.8
18.1 2
0.71 1.2
3.1 20
0 0
0 0
_
_
_
_
_
_
_
_
C =
_
0 0 0 0 1 0
0 0 0 0 0 1
_
(3.3.13)
26
Chapitre 4
AVION : COMMANDE MODALE ET
ESTIMATEUR DE LUENBERGER
4.1 Le syst` eme
On consid` ere lavion de la Fig. 4.1, o` u d esigne langle de lacet (angle autour de laxe z),
d esigne langle de tangage (angle autour de laxe y) et v d esigne la vitesse longitudinale (suivant
laxe x de lavion).
x
y
z


v
FIG. 4.1 Un avion.
Le mod` ele de lavion peut etre approxim e par un syst` eme lin eaire de mod` ele d etat :
_
dX
dt
= AX + BU
Y = CX
(4.1.1)
On a :
Y =
_
_

v
_
_
U =
_
_
U
1
U
2
U
3
_
_
X =
_
_
_
_
_
_

v
_
_
_
_
_
_
(4.1.2)
27
et :
A =
_
_
_
_
_
_
0 1 0 0 0
3 1.2 1.1 1.3 24
0 0 0 1 0
2.1 1.8 9 5.5 2
0 0.8 0 0.4 3.3
_
_
_
_
_
_
B =
_
_
_
_
_
_
0 0 0
1.1 0.1 0.2
0 0 0
0.2 1.3 0
0.05 0.1 3
_
_
_
_
_
_
C =
_
_
1 0 0 0 0
0 0 1 0 0
0 0 0 0 1
_
_
(4.1.3)
dans lesquelles :
les etats v
i
indiquent la vitesse angulaire associ ee ` a langle i ( i {, } ),
et les entr ees el ementaires U
1
, U
2
U
3
d esignent des signaux de commande.
Les Fig. 4.2 repr esentent le sch ema fonctionnel et le sch ema-bloc d etaill e du syst` eme.
U
U
U1

v
U2
U3
Y
Y
X
dX
AX BU
dt
Y CX DU

= +

= +

dX
AX BU
dt
Y CX DU

= +

= +


B
A
C
X

(a)
(b)
+
+
FIG. 4.2 Sch ema fonctionnel et sch ema-bloc d etaill e.
4.1.1 Cr eation du syst` eme
Cr eer le syst` eme d etat appel e Get de r ealisation (A,B,C,0) dans Matlab puis dans Simulink.
4.1.2 P oles et valeurs propres
En utilisant Matlab :
calculer les p oles du syst` eme G,
28
calculer les valeurs propres de la matrice A. Que peut-on dire sur les valeurs propres de
A et les p oles du syst` eme,
` a partir de ces valeurs, que peut-on dire sur la stabilit e du syst` eme.
4.1.3 Simulation du syst` eme
Dans Matlab, simuler la r eponse indicielle, la r eponse impulsionnelle et le diagramme de
Bode du syst` eme,
dans Simulink, simuler la r eponse indicielle du syst` eme.
4.2 Commande modale
La commande modale consiste ` a calculer une commande dans la base modale (base des
valeurs propres). Reprenons le syst` eme d etat :
_
dX
dt
= AX + BU
Y = CX + DU
(4.2.1)
Soit T la matrice de transformation modale qui transforme la matrice A en une matrice
diagonale not ee . On a :
=
_
_
_
_
_
_

1
0 0
0
2
0
.
.
.
.
.
.
.
.
.
0 0
n
_
_
_
_
_
_
= T
1
AT (4.2.2)
o` u
i
sont les valeurs propres de A.
En appliquant le changement de variable X = TZ sur le mod` ele d eni par le syst` eme
d equa. 4.2.1, on obtient :
_
dZ
dt
= T
1
ATZ + T
1
BU
Y = CTZ + DU
(4.2.3)
cest-` a-dire, on obtient le mod` ele d etat dans la base modale :
_
dZ
dt
= Z + U
Y = Z + DU
(4.2.4)
Dans cette nouvelle base, on a :
Z qui est le vecteur d etat correspondant, dont les el ements sont appel es coordonn ees
modales,
= T
1
AT qui est la matrice d etat,
= T
1
B qui est la matrice dentr ee,
= CT qui est la matrice de sortie,
29
et D qui est la matrice de liaison directe.
Appelons q le nombre dentr ee, egal au nombre de sortie, du syst` eme :
q = dim(U) = dim(Y ) (4.2.5)
Naturellement, lordre du syst` eme not e n (telle que n = dim(X) = dim(Z)) est sup erieur
ou egal au nombre dentr ees :
n q (4.2.6)
Lobjectif de la commande modale consid er ee ici consiste ` a imposer une valeur propre (ou
un p ole) entr ee el ementaire entree
i
et etat el ementaire etat
i
. Pour cela, il a fallu d ecoupler le
syst` eme, do` u lanalyse et la synth` ese dans la base modale. Comme n q, on partitionne l etat
Z en deux parties :
Z =
_
Z
q
Z
nq
_
(4.2.7)
o` u Z
q
est le vecteur compos e des q etats el ementaires dont on souhaite am eliorer les perfor-
mances par placement de p oles et Z
nq
les n q etats restant.
L equation d etat du syst` eme d equa. 4.2.4 devient donc :
d
dt
_
Z
q
Z
nq
_
=
_

q
[0]
[0]
nq
__
Z
q
Z
nq
_
+
_

q

nq
_
U (4.2.8)
cest-` a-dire :
_
dZ
q
dt
=
q
Z
q
+
q
U
dZ
nq
dt
=
nq
Z
nq
+
nq
U
(4.2.9)
On souhaite placer les p oles de la premi` ere equation d etat du syst` eme d equations pr ec edent.
Le placement se fera plus facilement, par identication, vu que l equation est dans la base mo-
dale. Proposons les p oles suivant :
P
cq
=
_
_
_
_
_

c1
0 0
0
c2
0
.
.
.
.
.
.
.
.
.
0 0
cq
_
_
_
_
_
(4.2.10)
alors on peut ecrire :
dZ
q
dt
=
q
Z
q
+
q
U = P
cq
Z
q
(4.2.11)
cest-` a-dire :

q
U = (
q
P
cq
) Z
q
(4.2.12)
30
On peut donc dire que la commande U ` a appliquer, pour obtenir les valeurs propres d enies
dans P
cq
, doit etre :
U =
1
q
(
q
P
cq
) Z
q
(4.2.13)
Or, le vecteur d etat disponible nest pas Z mais le vecteur X. A partir du changement de
variable Z = T
1
X, on a :
Z
q
= T
1
q
X (4.2.14)
On obtient nalement :
U =
1
q
(
q
P
cq
) T
1
q
X (4.2.15)
La Fig. 4.3 repr esente le sch ema-bloc du syst` eme boucl e et la matrice de retour est donc
donn ee par :
Kc =
1
q
(
q
P
cq
) T
1
q
(4.2.16)
Consid erant D = [0]
1
Le pr eltre L est calcul ee ` a partir de la relation suivante :
L =
_
C (BK
c
A)
1
B
_
1
(4.2.17)
U Y Yc
X
B
A
Kc
L C
X

+ +
+
-
systme
FIG. 4.3 Sch ema-bloc du syst` eme boucl e.
Remarques. Dans la commande modale, nous avons plac e les q premi` eres valeurs propres du
syst` eme boucl e. On d emontre ici que cela ninuence pas sur les nq valeurs propres restantes
et que ces derni` eres sont egales aux n q valeurs propres du syst` eme ` a commander.
En introduisant U =
1
q
(
q
P
cq
) Z
q
dans les deux equa. 4.2.9, on a :
1
Il est toujours possible de se ramener au cas o` u D = [0] en faisant un changement de variable sur Y .
31
_
dZ
q
dt
= P
cq
Z
q
dZ
nq
dt
=
nq
Z
nq
+
nq

1
q
(
q
P
cq
) Z
q
(4.2.18)
ou encore :
d
dt
_
Z
q
Z
nq
_
=
_
P
cq
[0]

nq

1
q
(
q
P
cq
)
nq
__
Z
q
Z
nq
_
=
bf
_
Z
q
Z
nq
_
(4.2.19)
Les valeurs propres du syst` eme en boucle ferm ee sont les solutions du polyn omes ca-
ract eristique donn e par :
det (
bf
I
bf
) = det (P
cq
) det (
nq
) (4.2.20)
Il apparat donc que les q premi` eres valeurs propres (ou p oles) du syst` eme en boucle ferm ee
sont les valeurs propres d enies dans P
cq
tandis que les n q restantes sont celles donn ees par

nq
, ces derni` eres etant celles du syst` eme ` a commander.
4.2.1 Commandabilit e
En utilisant Matlab :
calculer la matrice de commandabilit e not ee C
o
de lavion,
d eterminer le rang de la matrice C
o
,
en d eduire si le syst` eme est commandable ou pas.
4.2.2 Calcul de la matrice de retour K
c
et du pr eltre L
quelle est la valeur de q pour le cas de lavion ?
calculer la matrice des valeurs propres et la matrice de transformation modale T de
lavion,
calculer T
1
et en d eduire ,
d eduire des calculs pr ec edents les matrices
q
,
q
et T
1
q
,
proposer la matrice P
cq
des q premi` eres valeurs propres pour le syst` eme boucl e,
calculer la matrice de retour K
c
,
calculer le pr eltre L.
4.2.3 Simulation du syst` eme boucl e
Impl ementer sous Simulink le correcteur puis simuler la r eponse indicielle du syst` eme
boucl e,
commenter sur les performances du syst` eme boucl e.
Remarque : si les performances du r egime transitoire ne vous conviennent pas, nh esitez pas
` a modier les valeurs propres de dans P
cq
puis ` a recalculer K
c
et L, ou changer compl` etement
les q etats ` a commander.
32
4.3 Observateur complet ou observateur de Luenberger
Le vecteur d etat X, ou du moins une partie de ses el ements, nest pas directement mesu-
rable. Il est donc n ecessaire de lestimer. Pour cela, on utilise lobservateur complet ou observa-
teur de Luenberger vu dans la section 2.3. La Fig. 4.4 pr esente le sch ema-bloc de lavion et de
lobservateur.
U Y
X

B
A
C
X

+
-
+
+
B
A
Ko
C
+
+
+
systme
observateur

FIG. 4.4 Sch ema-bloc d etaill e de lobservateur et du syst` eme.


4.3.1 Observabilit e
An de synth etiser un observateur pour un syst` eme, il est important de savoir si le syst` eme
est observable ou pas. D enir lobservabilit e dun syst` eme.
En utilisant Matlab, calculer la matrice dobservabilit e not ee O
b
,
puis, d eterminer le rang de la matrice O
b
,
en d eduire si le syst` eme est observable ou pas.
4.3.2 Calcul du gain de lobservateur K
o
Choisir des valeurs propres pour la matrice (AK
o
C). Pour cela, vous partez des valeurs
propres du syst` eme en boucle ferm ee donn ees dans les questions pr ec edentes, ces valeurs
propres etant donn ees par P
cq
et
nq
. Pourquoi ce choix ?
calculer K
o
avec Matlab.
33
4.4 Observateur et commande modale
Combiner maintenant lobservateur pr ec edemment calcul e ainsi que la commande modale
synth etis ee auparavant dans Simulink. Appliquer un echelon ` a lentr ee du syst` eme et comparer
le vecteur d etat X ainsi que l etat estim e

X. Pour cela, mettre des conditions initiales diff erentes
de z ero dans le syst` eme.
34
Annexe A
Alg` ebre lin eaire
A.1 Taille dune matrice
La taille (dimension) dune matrice est not ee (n, m) (ou dim(A) = (n, m)), n etant le
nombre de lignes et m le nombre de colonnes :
A =
_
_
_
_
_
_
a
11
a
12
a
1m
a
21
a
22

.
.
.
.
.
.
.
.
.
a
n1
a
nm
_
_
_
_
_
_
(A.1.1)
Si la matrice est carr ee, cest-` a-dire m = n, on parle dune matrice carr ee de taille ou dordre
n. La matrice A est rectangulaire si elle nest pas carr ee.
A.2 Rang dune matrice
Soit une matrice de taille (n, m). Le rang de la matrice A not e rang (A) est la taille maxi-
male des sous-matrices carr ees inversibles extraites de A. On a les propri et es suivantes :
rang (A) min(n, m)
rang (A + B) rang (A) + rang (B)
rang (AB) min(rang (A) , rang (B))
(A.2.1)
Si A est une matrice carr ee dordre n et inversible, alors :
rang (A) = n (A.2.2)
35
A.3 Op erateurs transpos ee et adjoint
Soit A C
n.m
une matrice complexe de taille (n, m).
La transpos ee, not ee A
T
et de taille (m, n), de la matrice A est obtenue en echangeant les
lignes et les colonnes de A. Exemple :
A =
_
_
j 9
1 2 j
3 0
_
_
(A.3.1)
alors :
A
T
=
_
j 1 3
9 2 j 0
_
(A.3.2)
Ladjoint dune matrice complexe not e A

est la matrice transpos ee et conjugu ee (transcon-


jugu ee) correspondante :
A(j)

= A(j)
T
(A.3.3)
exemple :
A

=
_
j 1 3
9 2 + j 0
_
(A.3.4)
On a :
(AK
o
C)
T
= A
T
C
T
K
T
o
(A.3.5)
A.4 Matrices particuli` eres
A.4.1 Matrice identit e
La matrice identit e, dordre n et not ee I
n
, est une matrice carr ee diagonale dont les el ements
du diagonal sont 1 :
I
n
=
_
_
_
_
_
_
1 0 0
0 1
.
.
.
0
.
.
.
.
.
.
.
.
.
.
.
.
0 0 1
_
_
_
_
_
_
(A.4.1)
36
A.4.2 Matrice nulle
La matrice nulle, de taille (n, m), est une matrice dont tous les el ements sont nuls.
[0] = 0
nm
=
_
_
_
_
_
0 0 0
0 0 0
.
.
.
.
.
.
0 0 0
_
_
_
_
_
(A.4.2)
A.5 Valeurs propres et vecteurs propres
Les valeurs propres, not ees
i
(i = 1 n), dune matrice carr ee A dordre n sont les
racines du polyn ome suivant :
det (I
n
A) = 0 (A.5.1)
o` u lop erateur det () d esigne le d eterminant. Le polyn ome det (I
n
A) sappelle po-
lyn ome caract eristique de A.
On a la propri et e suivante :

i
(A) =
i
_
A
T
_
(A.5.2)
On note la matrice diagonale dont les el ements sont les valeurs propres
i
de A :
=
_
_
_
_
_
_

1
0 0
0
2
0
.
.
.
.
.
.
.
.
.
0 0
n
_
_
_
_
_
_
(A.5.3)
Achaque valeur propre
i
, on associe un vecteur propre v
i
telle que la matrice Ase comporte
comme un scalaire :
Av
i
=
i
v
i
(A.5.4)
Par ailleurs, on peut retrouver la matrice ` a partir de A gr ace ` a une matrice de transforma-
tion T, appel ee matrice de transformation modale :
= T
1
AT (A.5.5)
les colonnes de la matrice de transformation modale T etant les vecteurs propres v
i
de A :
T =
_
v
1
v
2
v
n
_
(A.5.6)
37
A.6 Spectre et rayon spectral
Le spectre indique lensemble des valeurs propres
i
(A) de la matrice carr ee A.
Le rayon spectral not e (A) est le plus grand des modules des
i
:
(A) = max |
i
(A)| (A.6.1)
A.7 Comatrice
Soit la matrice carr ee A :
A =
_
_
_
_
_
_
a
11
a
12
a
1n
a
21
a
22
.
.
.
a
2n
.
.
.
.
.
.
.
.
.
.
.
.
a
n1
a
n2
a
nn
_
_
_
_
_
_
(A.7.1)
Alors la comatrice de A est :
com(A) =
_
_
_
_
_
_
A
11
A
12
A
1n
A
21
A
22
.
.
.
A
2n
.
.
.
.
.
.
.
.
.
.
.
.
A
n1
A
n2
A
nn
_
_
_
_
_
_
(A.7.2)
o` u les coefcients A
ij
, appel es cofacteurs de A, se calculent comme suit :
A
ij
= (1)
i+j
m
ij
(A) (A.7.3)
Dans lexpression pr ec edente, m
ij
(A) est appel e mineur de A et est egal au d eterminant de
la sous-matrice obtenue en eliminant la i
` eme
ligne et la j
` eme
colonne de A (Fig. A.1).
38
11 12 1 1
21 22 2
1
1 2
j n
n
i ij in
n n nj nn
a a a a
a a a
a a a A
a a a a





=













ij
A






=







sous-matrice
FIG. A.1 Construction de la sous-matrice an de calculer le mineur m
ij
(A).
A.8 Inverse dune matrice
Soit la matrice carr ee A de taille n d enie pr ec edemment. A est inversible, ou r eguli` ere ou
encore non-singuli` ere, si et seulement si son d eterminant est non-nul :
det (A) = 0 (A.8.1)
Cela revient ` a dire que son rang est complet :
rang (A) = n (A.8.2)
La matrice inverse, ou simplement linverse, de A est d enie par :
A
1
=
1
det (A)
(com(A))
T
(A.8.3)
On a la relation suivante :
AA
1
= A
1
A = I
n
(A.8.4)
39
A.9 Pseudo-inverse dune matrice
Linverse dune matrice ne sappliquant que sur les matrices carr ees, on utilise la pseudo-
inverse pour la g en eralisation. La pseudo-inverse, appel ee egalement pseudo-inverse de Moore-
Penrose, dune matrice M de taille (n, m) est not ee M
+
et a les propri et es suvantes :
MM
+
M = M
M
+
MM
+
= M
+
_
MM
+
_

= MM
+
_
M
+
M
_

= M
+
M
(A.9.1)
D ecomposons la matrice M par M = BC, avec B de taille (n, k) et C de taille (k, m).
Alors, on peut calculer M
+
par :
M
+
= C

(CC

)
1
(B

B)
1
B

(A.9.2)
40
Annexe B
Outils de base pour les mod` eles d etat
Soit le syst` eme d ecrit par le mod` ele d etat suivant :
_
dX
dt
= AX + BU
Y = CX + DU
(B.0.1)
La premi` ere equation sappelle equation d etat tandis que la deuxi` eme equation de sortie.
On a :
X est le vecteur d etat,
Y est le vecteur de sortie,
U est le vecteur de commande,
A sappelle matrice d etat,
B sappelle matrice de commande,
C sappelle matrice de sortie,
et D sappelle matrice de liaison directe.
B.1 Ordre du syst` eme
Lordre du syst` eme est egal ` a la dimension du vecteur d etat X, ou encore ` a lordre de la
matrice carr ee A. On a :
n = dim(X) (B.1.1)
B.2 Stabilit e
Le syst` eme de r ealisation (A, B, C, D) est strictement stable si et seulement si toutes les
valeurs propres not ees
i
de la matrice d etat A sont ` a parties r eelles strictement n egatives :
Re (
i
(A)) < 0 (B.2.1)
41
Les valeurs propres de A sont egalement les p oles du syst` eme.
B.3 Commandabilit e
Soit la matrice de commandabilit e d enie par :
C
o
=
_
B AB A
2
B A
n1
B

(B.3.1)
Le syst` eme de r ealisation (A, B, C, D) est commandable si le rang de C
o
est egal ` a lordre
du syst` eme :
rang (C
o
) = n (B.3.2)
B.4 Observabilit e
Soit la matrice dobservabilit e d enie par :
O
b
=
_

_
C
CA
CA
2
.
.
.
CA
n1
_

_
(B.4.1)
Le syst` eme de r ealisation (A, B, C, D) est observable si le rang de O
b
est egal ` a lordre du
syst` eme :
rang (O
b
) = n (B.4.2)
42
Annexe C
Quelques fonctions de MATLAB
C.1 Calcul de base
a = cos(5)
a = 0.283662185463226
b = (3 1.5 exp(12)) / log (5)
b = 151685.992508581
log 10 (1e 5)
5
sin(pi/2)
1
tan(pi)
1 .22464679914735e 016
(Normalement z ero, mais il y a la pr ecision num erique de MATLAB)
atan(inf)
1 .5707963267949
_
=

2
_
C.2 Calcul matriciel
A =
_
3 2 5 8; 1 5 6 2; 4 58 100 1e5

43
A =
_
_
3 2 5 8
1 5 6 2
4 58 100 10
5
_
_
c = A(3, 2)
c = 58
V = A(:, 2)
V =
_
_
2
5
58
_
_
U = A(3, :)
U =
_
4 58 100 10
5
_
M = (2 : 3, 2 : 4)
M =
_
5 6 2
58 100 10
5
_
A B
multiplication de deux matrices
A. B
multiplication el ement par el ement
A + B
addition
AB
soustraction
An
A A A... A (n fois), A doit etre carr ee
A

adjoint (transpos ee conjugu ee) de A


transpose (A)
44
transpos ee de A. Cette fonction ne fait pas la conjugu ee, contrairement ` a la fonction pr ec edente
inv(A)
inverse de A (si A carr ee)
pinv(A)
pseudo-inverse de A (si A rectangulaire)
A/B
division ` a gauche de A par B
A\B
division ` a droite de A par B
A./B
division el ement par el ement de A par B, division ` a gauche
A.\B
division el ement par el ement de A par B, division ` a droite
A/c
division des el ements de A par un scalaire c
A c
multiplication des el ements de A par un scalaire c
A + c
addition des el ements de A par un scalaire c
Ac
soustraction des el ements de A par un scalaire c
ones(n, m)
matrice de taille n m d el ements 1
zeros(n, m)
45
matrice de taille n m d el ements 0
eye(n, m)
matrice de taille n m et dont la premi` ere diagonale est 1, le reste des el ements sont 0
rank(A)
rang de la matrice A
det(A)
d eterminant de la matrice A
size(A)
taille (dimension) de la matrice A
length(V )
taille (dimension) dun vecteur V . Si V est une matrice, la fonction renvoye max (size (V ))
[T, ] = eig (A)
donne la matrice de transformation modale T et la matrice des valeurs propres de A
A = diag (V )
cr eation dune matrice diagonale A dont les el ements du diagonal sont fournis par le vecteur
V
C.3 Quelques fonctions de base utilis ees en Automatique
G = tf ([num], [den])
cr eation dune fonction de transfert. Les param` etres [num] et [den] sont des vecteurs conte-
nant les coefcients du num erateur et du d enominateur
G = tf([ 3 2 ], [ 0.1 1.2 1 ])
G =
3p+2
0.1p
2
+1.2p+1
G = ss(A, B, C, D)
46
cr eation dun mod` ele d etat de r ealisation (A, B, C, D). Si D est une matrice nulle, on peut
ecrire G = ss(A, B, C, 0)
eig (A)
calcul des valeurs propres de la matrice d etat A
pole (G)
calcul des p oles du syst` eme G. Le syst` eme Gpeut etre une fonction de transfert ou egalement
un mod` ele d etat
zero (G)
calcul des z eros du syst` eme G. Le syst` eme Gpeut etre une fonction de transfert ou egalement
un mod` ele d etat
G
etat
= ss(G
transfert
)
cr eation dun mod` ele d etat ` a partir de la fonction de transfert G
transfert
G
transfert
= tf(G
etat
)
cr eation dune fonction de transfert ` a partir du mod` ele d etat G
etat
impulse(G)
tracage de la r eponse impulsionnelle de G
step(G)
tracage de la r eponse indicielle de G
bode(G)
tracage du diagramme de BODE de G
nyquist(G)
tracage du diagramme de NYQUIST de G
nichols(G)
tracage du diagramme de BLACK-NICHOLS de G
bodemag(G)
47
tracage de la magnitude (diagramme de BODE en amplitude) de BODE de G
plot(t, y)
tracage dune courbe dont labscisse est donn ee par le vecteur t et lordonn ee par y
grid
mise en place dune grille sur la courbe
hold on
garder la derni` ere gure an de tracer sur celle-ci une autre courbe
plot(t, y,

)
tracage dune courbe y en fonction de t avec une couleur rouge. la fonction help plot permet
dafcher la liste des couleurs ainsi que dautres options
xlabel(

t(s)

)
mise en place de titre t(s) sur laxe des abscisses
ylabel(

y(m` etre)

)
mise en place de titre y(m` etre) sur laxe des ordonn ees
title(

Courbe de r eponse

)
mise en place de titre Courbe de r eponse sur la gure
legend(

, etc)
mise en place de l egendes des diff erentes courbes sur la gure
C.4 Quelques fonctions danalyse et de synth` ese utilis ees en Auto-
matique
C
o
= ctrb (A, B)
calcul de la matrice de commandabilit e C
o
=
_
B AB A
2
B A
n
B

O
b
= obsv (A, C)
calcul de la matrice dobservabilit e O
b
=
_
C CA CA
2
CA
n

T
48
K
c
= place (A, B, P
c
)
calcul de la matrice de retour d etat K
c
par placement de p oles, les p oles etant d enis dans
le vecteur P
c
et sont les valeurs propres de la matrice (ABK
c
)
[Kc, P, P
c
] = lqr (A, B, Q, R)
calcul de la matrice de retour d etat K
c
optimale par la synth` ese Lin eaire Quadratique (LQ).
La fonction donne egalement la matrice P solution de l equation alg ebrique de Riccati ainsi que
les valeurs propres de (ABK
c
) dans le vecteur P
c
49

Vous aimerez peut-être aussi