Vous êtes sur la page 1sur 156

Commande des systèmes linéaires continus

Méthodes de l'espace d'état

N. Goléa
Université d'Oum el Bouaghi, 04000 Algérie.

Version 2019
1

Chapitre 1

Représentation d'état des systèmes dynamiques

1. Introduction
La modélisation est un aspect très important de la commande des systèmes. Avant toute
analyse ou synthèse, le concepteur doit être capable d’obtenir le modèle du système
considéré et capable d’adapter le modèle obtenu aux besoins de l’utilisation.
Les objectifs de ce chapitre sont:
1) Définir les trois représentations possibles pour les modèles des systèmes linéaires
dynamiques, à savoir, les équations différentielles, les fonctions de transfert et les
équations d'état. L’accent sera mis beaucoup plus sur la représentation d’état.
2) Établir les modèles d'état de systèmes physiques types: électriques, mécaniques,
électromécaniques, hydrauliques et thermiques.
3) Obtenir des modèles d'état linéarisés pour des systèmes non linéaires au voisinage de
points de fonctionnement spécifiés.
4) Produire des exemples Simulink/Matlab pour appréhender l’aspect simulation des
systèmes dynamiques.

2. Définitions d (t )

Définition 1. Un système est défini comme une u1(t ) y1(t )


combinaison d'éléments qui agissent de concert u2(t ) États internes x (t ) y2(t )
pour exécuter un certain objectif. Un système  
Paramètres ym (t )
ur (t )
interagit avec son environnement ou d'autres
systèmes à travers ses entrées et ses sorties
(figure 1.1). Le comportement du système est Figure 1.1: Schéma bloc d'un système.
régit aussi par ses états internes et ses
paramètres. u(t ) y(t )

Définition 2. Un système est dit


linéaire si la réponse de ce système à t t
une combinaison linéaire de signaux
d'entrée est égale à la combinaison u(t - t 0 ) y(t - t0 )
linéaire des réponses à chacune de ses
entrées isolées. Comme exemple, si on
applique en entrée (au système de la t t
figure 1.1):
Figure 1.2. Propriété d'invariance (système LTI).
u(t ) = au1 (t ) + bu2 (t ) (1.1)

et si on obtient en sortie:
y(t ) = ay1 (t ) + by2 (t ) (1.2)

Alors le système est dit linéaire. Cette propriété des systèmes linéaires est aussi appelée

N. Goléa © 2019 1-1


2
principe de superposition.
Définition 3. Un système linéaire est dit stationnaire ou invariant dans le temps (LTI) si la
réponse du système à un signal u(t ) différé d'un temps t0 est la même que la réponse y(t )
du système mais différée de t0 .

Cette propriété des systèmes invariants est aussi appelée principe de permanence. Un
système peut être linéaire et/ou invariant dans le temps: les deux propriétés sont
indépendantes. Un système LTI est aussi appelé système à paramètres constants localisés ou
à constantes localisées (p. ex. équation différentielle ordinaire avec coefficients constants).
Exemple 1. Système LTV.
La masse de la fusée (figure 1.3) diminue au cours de
son ascension, pour une même propulsion,
l'accélération augmente avec le temps: m(t )g

P
x = -g (1.3) P
m(t )

Le système fusée est linéaire et variant dans le temps


(LTV). Figure 1.3. Fusée: système LTV.

3. Modèles mathématiques
Un modèle mathématique est un ensemble d'équations décrivant complètement les relations
entre les variables d'un système. Il est utilisé comme un outil d'analyse et de conception des
algorithmes de commande. La tâche pour laquelle il doit être utilisé a des implications
fondamentales sur le choix d'une forme particulière du modèle du système. En d'autres
termes, si un modèle peut être considéré comme un outil, c’est un outil spécialisé, développé
spécifiquement pour une application particulière. Construire des modèles mathématiques
universelles, même pour des systèmes de complexité modérée, est peu pratique et peu
économique.
La richesse de la représentation des systèmes dynamiques par le modèle mathématique,
conditionne naturellement la synthèse des lois de commande. Trois types de modélisations
sont couramment employés.
3.1 Modélisation par équations différentielles
Les équations différentielles constituent un outil fondamental dans la description des lois
physiques. Cette représentation est apparue comme la première approche pour la
modélisation et la compréhension des systèmes. Cependant, il lui est attaché tout de même
les inconvénients suivants:
1) Représentation minimale du système (seulement la partie observable).
2) Difficulté de résolution des équations différentielles d'ordres élevés.
3) Ne fournit pas la structure entière du système.
La représentation par équation différentielle d'un système LTI d'ordre n est:
. .
y (n) + a1 y (n-1) + a2 y (n-2) + ... + an-1 y+ an y = b0u(m) + b1u(m-1) + ... + bm-1 u+ bmu (1.4)

Dans un système physiquement réalisable nous avons m £ n .


3.2 Modélisation par fonctions de transfert
C'est le rapport entre les transformés de Laplace des grandeurs de sorties et des grandeurs

N. Goléa © 2019 1-2


3
d'entrées du système. L'avantage de cette méthode réside dans son traitement dans le
domaine fréquentiel. Elle permet de calculer les pôles et les zéros du système et par suite la
déduction de sa stabilité et de son comportement. Cependant, elle présente les inconvénients
suivants:
1) La variable de Laplace s interdit l'utilisation de méthodes numériques.
2) Les systèmes non linéaires sont difficilement décrits par des fonctions de transfert.
3) Compensation d'un pôle instable par un zéro.
4) L’hypothèse des conditions initiales nulles, bien qu'elles aient leur influence directe sur le
régime transitoire.
La fonction de transfert d'un système mono-entrée, mono-sortie est décrite par:
Y ( s) b0 s m + b1 s m-1 + ... + bm-2 s 2 + bm-1 s + bm
G( s) = = (1.5)
U ( s) s n + a1 s n-1 + ... + an-2 s 2 + an-1 s + an

avec m £ n .
La transformée de Laplace directe et inverse permettent le passage de la représentation par
équation différentielle vers la représentation par fonction de transfert est inversement. Dans
la suite, on ne traitera que de la représentation par fonction de transfert vue sa large
utilisation dans ce domaine.
3.3 Modélisation par équations d'état
La représentation par les équations d'état permet d'unifier le cadre de l'étude des systèmes
dynamiques continus ou discrets. Le concept d'état est utilisé chaque fois que des
informations sur des variables internes sont nécessaires pour prendre une décision
concernant un système. La théorie de contrôle moderne, développée à partir des années 1960
et basée sur la notion d'état, diffère de la théorie classique dans la mesure où la première est
applicable aux systèmes multi-variables, qui peuvent être linéaires ou non linéaires,
invariants ou variants dans le temps, tandis que la second est valable uniquement pour les
systèmes linéaire invariant dans le temps mono-variable. Aussi, la théorie moderne de
contrôle est essentiellement une approche dans le domaine temporel, alors que la théorie
classique est une approche dans le domaine fréquentiel. Avant de poursuivre, nous
donnerons les définitions de l'état.
Variables d'état
Les variables d'état d'un système dynamique sont l'ensemble des variables qui déterminent
l'état du système dynamique. Si n variables x1 , x2 ,..., xn sont nécessaires pour décrire
complètement le comportement d'un système dynamique (de sorte que, lorsque une entrée
est donnée pour t ³ t0 et l'état initial est spécifié à t = t0 , l'état futur du système est
complètement déterminé), alors ces n variables sont l'ensemble de variables d'état.
Vecteur d'état
Les n variables d'état x1 , x2 ,..., xn nécessaires pour décrire complètement le comportement
d'un système donné, peuvent être considéré comme n composantes d'un vecteur
xT = [ x1 x2 ... xn ] Î Â n . Ce vecteur x est appelé "vecteur d'état". Le vecteur d'état est un
vecteur qui détermine l'état du système x(t ) pour tout t ³ t0 , quand l'état est donné à t = t0
et l'entrée u(t ) est spécifiée pour t ³ t0 .
Espace d'état
L'espace de dimension n dont les coordonnés sont les axes x1 , x2 , ... , xn est appelé un

N. Goléa © 2019 1-3


4
espace d'état. Chaque état peut être représenté par un point dans l'espace d'état.
Équations d'état
Dans l'analyse dans l'espace d'état, nous sommes concernés par trois types de variables:
variables d'entrée, variables de sortie et variables d'état.
En supposant qu'un système multi-variable nécessite n intégrateurs; et en supposant aussi
qu'il y'a r entrées u1 (t ), u2 (t ),..., ur (t ) et m sorties y1 (t ), y2 (t ),..., ym (t ) . Les n sorties des
intégrateurs sont les variables d'état x1 (t ), x2 (t ),..., xn (t ) . Alors le système peut être décrit
par:
x (t ) = Ax(t ) + Bu(t ) (1.6)
D
y(t ) = Cx(t ) + Du(t ) (1.7)
x (0)
+
avec les définitions: u + x x + y
B ò C
é x1 (t )ù éu1 (t )ù é y1 (t ) ù +
ê ú ê ú ê ú
ê x2 (t )ú êu2 (t )ú ê y2 (t ) ú A
ê
x(t ) = ê ú ê ú ê ú
 ú , u(t ) = ê  ú , y(t ) = ê  ú ,
ê ú ê ú ê ú Figure 1.4: Schéma bloc de la représentation
ê x (t )ú êu (t )ú ê y (t )ú
ëê n ûú ëê r ûú ëê m ûú d'état d'un système LTI.

Où x(t ) est le vecteur d'état, u(t ) est le vecteur d'entrée (vecteur de commande), y(t ) est
vecteur de sortie. Les matrices intervenant dans la représentation d’état sont: A (n ´ n) dite
matrice d'état ou matrice d'évolution, B (n ´ r ) dite matrice d'entrée ou de commande, C
(m ´ n) dite matrice de sortie ou d'observation, et D dite matrice de transmission ou
d'anticipation.
L'équation (1.6) est l'équation d'état et l'équation (1.7) est l'équation de sortie.
La représentation par un schéma bloc des équations (1.6)-(1.7) est montrée dans la figure 1.4.

4. Modèles de systèmes physiques


La dynamique des systèmes physiques résulte du transfert, de la perte et du stockage de
l'énergie. Les variables mises en jeux sont (voir tableau 1.1):
1. Les variables de flux, tels que la vitesse v, w pour les systèmes mécaniques, le courant i
pour les systèmes électriques, le débit qv pour les systèmes hydrauliques et le débit
calorifique qc pour les systèmes thermiques.

2. Les variables d’effort, tels que la force F ou le couple T pour les systèmes mécaniques, la
tension v pour les systèmes électriques, la pression P pour les systèmes hydrauliques et
la température T pour les systèmes thermiques.
On notera que l’application d’effort produit un flux (circulation) et la présence d’un flux
produit un effort. Aussi, le produit effort×flux est une puissance, comme indiqué dans le
tableau 1.1
Les éléments qui constituent les systèmes physiques sont de deux types:
1. Les éléments qui dissipent de l'énergie, tels que le frottement ou l’amortissement pour les
systèmes mécaniques, la résistance pour les systèmes électriques, hydrauliques et
thermiques.

N. Goléa © 2019 1-4


5

Tableau 1.1. Éléments de base des systèmes physiques et leurs relations.

Systèmes Mécanique (translation) Mécanique (rotation) Électrique Hydraulique Thermique


Variable de flux Vitesse v Vitesse angulaire w Courant i Débit, q Débit thermique q

Élément à stockage de flux Masse, m Inertie, J bobine, L Inertance, I

Équation de l’élément F = mv T = J w v = Li P = Iq

Énergie emmagasinée Cinétique Cinétique Champ magnétique Cinétique

Équation de l’énergie Ec = mv2 /2 Ec = J w 2 /2 Em = Li 2 /2 Ec = Iq 2 /2

Variable d’effort Force F Couple T Tension v Pression P Température T

Élément à stockage d’effort ressort, k Ressort de torsion, k Capacité, C Capacité hydraulique, C Capacité thermique, C

Équation de l’élément v = F / k w = T / k i = Cv q = CP qc = CT

Énergie emmagasinée Potentille Potentille Champ électrique Potentille Thermique

Équation de l’énergie E p = F 2 /2k E p = T 2 /2k Ee = Cv2 /2 E p = CP 2 /2 Et = C .T 2 /2

Élément dissipateur amortisseur, frottement b Amortisseur rotationnel, b Résistance, R Résistance hydraulique, R Résistance thermique, R

Équation de l’élément F = b.v T = b.w i = v/R qv = P / R q =T /R

Puissance dissipée F .v = F 2 / b = b.v2 T .w = T 2 / b = b.w 2 i.v = Ri 2 = v2 / R q.P = R.q 2 = P 2 / R q.T = R.q 2 = T 2 / R

N. Goléa © 2019 1-5


6
2. Les éléments de stockage d'énergie sont classés en:
a. Éléments de stockage d’effort, tels que la masse (ou l’inertie) pour les systèmes
mécaniques, la bobine pour les systèmes électriques, l’inertance pour les systèmes
hydrauliques. Les systèmes thermiques n’ont pas d’élément de ce type.
b. Éléments de stockage de flux, tels que le ressort pour les systèmes mécaniques, le
condensateur pour les systèmes électriques, la capacitance pour les systèmes
hydrauliques, et la capacité thermique les systèmes thermiques.
Pour les objectifs de la modélisation linéaire des systèmes physiques, des éléments idéals
avec un comportement linéaires seront considérés, comme montrés par les relations du
tableau 1.1. Des éléments de comportements plus complexes seront considérés dans le cadre
de la modélisation des systèmes non linéaires.

4.1 Systèmes mécaniques en translation


Exemple 2. Deux corps en translation
y1 y2
Soit le système mécanique de la figure 1.5. k
Les déplacements sont mesurés à partir de F
la position du repos. Si on considère m M
Fr
comme entrée du système u = F et d = Fr
b
comme la perturbation, alors les équations
de mouvement sont données par:
Figure 1.5: Système mécanique en translation.
my1 = -k( y1 - y2 ) - b( y1 - y 2 ) - d
My2 = u - k( y2 - y1 ) - b( y 2 - y 1 )

Pour les systèmes mécaniques, les variables d'état, généralement utilisées, sont les positions
et les vitesses. Ainsi pour: x1 = y1 , x2 = y 1 , x3 = y2 , x4 = y 2 , on obtient les équations des
variables d'état:
x 1 = x2
k b k b 1
x 2 = - x1 - x2 + x3 + x4 - d
m m m m m
x 3 = x4
k b k b 1
x 4 = x1 + x2 - x 3 - x4 + u
M M M M M
Sous forme matricielle, nous avons l'équation d'état:
é 0 1 0 0 ù
é x 1 ù ê ú é x1 ù é 0 ù é 0 ù
ê ú ê k b k b úê ú ê ú ê ú
ê x 2 ú ê- m - m m m úú êê x2 úú + êê 0 úú u + êê- m úú d
1
ê ú= ê
ê x ú ê 0 0 0 1 úú êê x3 úú êê 0 úú ê 0 ú
ê 3ú ê ê ú
ê x ú ê k ú êx ú ê 1 ú ê 0 ú
êë 4 úû ê b -k - b ú ê ú
ë û ë û
4 ê M ú ê
ë úû
ëê M M M M ûú
= Ax + Bu + Bd d

Pour la sortie y = y2 , l`équation de sortie est:

y = [0 0 1 0 ] x + [0 ]u = Cx + Du

Remarque 1. La représentation d'état donne une information supplémentaire, qui est la


vitesse de déplacement.

N. Goléa © 2019 1-6


7
Simulation
Matlab fournit un environnement très efficace et rapide pour la simulation des modèles des
systèmes physiques. Une parmi les différentes possibilités offertes par Matlab est comme
suit:
1) Créer un fichier script pour définir les paramètres du système et les matrices de la
représentation d'état (figure 1.6.a).
2) Créer un modèle graphique des équations d'état obtenues dans l'environnement
Simulink. Avec Simulink, on peut créer un modèle graphique explosé (figure 1.6.c) à
caractère pédagogique, ou bien exploiter les matrices déjà définies dans le fichier scripte
pour obtenir un modèle graphique compact (figure 1.6.b), ce qui plus simple et plus
pratique.

u 1/s 1/s
1/s 1/s
%Exemple 2
M=100;m=10;b=0.2;k=4
A=[0 1 0 0;
-k/m -b/m k/m b/m;
0 0 0 1;
k/M b/M -k/M -b/M];
B=[0 0 0 1/M]';
Bd=[0 -1/m 0 0]';
C=[0 0 1 0];

a) b)

1/s
u

c)
Figure 1.6. Simulation: a) fichier script, b) schéma Simulink détaillé, c) forme matricielle.
Exemple 3. Suspension mécanique.
La figure 1.7 montre le schéma du système de suspension d'une voiture. Comme la voiture se
déplace, le mouvement vertical agit comme une excitation du système de suspension. Le
déplacement u au point de contact est l'entrée du système et le déplacement vertical y est
sa sortie.
L'équation de mouvement est donnée par:
y m
my = -b( y - u ) - k( y - u)

Ce qui peut être arrangé comme: k b

b b k k
y = - y + u - y + u u
m m m m

Figure 1.7. Suspension mécanique


N. Goléa © 2019 1-7
8

Le choix des variables d'état n'est pas direct, puisqu'il faut éliminer u de l'équation d'état.
On va procéder autrement. Comme le système est d'ordre 2, nous avons besoin de deux
intégrations pour récupérer la sortie y , d'où

æ b b k k ö æ b b æ k k öö
y = òò ççç- y + u - y + u÷÷÷ = ò çç- y + u + ò ççç- y + u÷÷÷÷÷÷
è m m m m ø çè m m è m m øø

Les variables d'état sont les sorties des deux intégrateurs, soit:
æ k k ö
x1 = ò ççç- y + u÷÷÷
è m m ø %Exemple 2
m=10;b=0.1;k=2
æ b b ö
x2 = ò ççç- y + u + x1 ÷÷÷ A=[0 -k/m;
è m m ø l -b/m];
B=[k/m b/m]';
Après dérivation des états, on obtient: C=[0 1];D=0;
Sys=ss(A,B,C,D)
k k k k x0=[1 -1]';
x 1 = - y + u = - x2 + u T=10; t=0:0.01:T
m m m m
u=1;
b b b b
x 2 = - y + u + x1 = - x2 + u + x1 [y,t,x]=lsim(Sys,u,t,x0)
m m m m Plot(t,y,t,x(1,t),t,x(2,t))
Ainsi, les équations d'état sont données par: Figure 1.7. Simulation de l'exemple 3.

é x 1 ù é0 - mk ù é mk ù
ê ú=ê ú + ê úu
ê x 2 ú ê1 - mb ú êê b úú
ë û ë û ëmû
é x1 ù
y = [ 0 1 ] ê ú + [ 0 ]u
ê x2 ú
ë û
Nous verrons dans le chapitre 2 des méthodes systématiques pour obtenir la représentation
d'état à partir des deux autres représentations.
4.2 Systèmes mécaniques en rotation
Exemple 4. Un système mécanique en rotation est montré sur la figure 1.8. L'entrée est le
couple appliqué T et la sortie est le déplacement angulaire q . Les paramètres du système
sont le moment d'inertie J , le coefficient de frottement visqueux b , et k le coefficient du
couple de torsion (fourni par l'arbre flexible).
L'équation de mouvement du système est donnée par: k
b
J q = -kq - bq + T J
Soit encore: q
T
k b T
q = - q - q + Figure 1.8. Rotation avec axe flexible.
J J J
Pour obtenir la représentation d'état du système, on prendra les variables d'état
x1 = q, x2 = q et u = T , y = q , d'où:

x 1 = x2
k b 1
x 2 = - x1 - x2 + u
J J J
Soit sous forme matricielle:

N. Goléa © 2019 1-8


9

é 0 1 ù é0ù
ê ú ê ú b2
x = ê k b ú x + ê1 úu
ê- - ú ê ú
ëê J J ûú ëê J ûú b1
y = [1 0 ] x q2
J1
k
Exemple 5. Un système mécanique de deux corps en q1
rotation, sous l'effet de la vitesse angulaire f f
aplasique sur l'arbre, est montré sur la figure 1.9. Les a)
paramètres du système sont les moments d'inertie
J1 , J 2 , les coefficients de frottement visqueux b1 , b2
et le coefficient de flexibilité de l'arbre k . b1(q1 - q2 ) J2
b2q2
Les équations de mouvement sont données par: b1(q1 - q2 )
J1
J1q1 = k (f - q1 ) - b1 (q1 - q2 )
k ( f - q1 )
J 2q2 = b1 (q1 - q2 ) - b2q2

Qui peuvent être arrangées comme: b)


Figure 1.9. Rotation sous effet de vitesse.
k b b k
q1 = - q1 - 1 q1 + 1 q2 + f a) schéma, b) diagramme des corps libres.
J1 J1 J1 J1
b b + b2 
q2 = 1 q1 - 1 q2
J2 J2

Le système est représenté par deux équations différentielles d'ordre 2, donc il est clair que
c'est un système d'ordre 4.
Si on considère comme entrée du %code Matlab
système u = f , et les positions et les J1=0.1;J2=0.01;b1=0.1;
vitesses comme variables d'état, b2=0.3;k=2
A=[0 1 0 0;
x1 = q1 , x2 = q1 , x3 = q2 , x4 = q2 , on -k/J1 -b1/J1 0 b1/J1;
obtient la représentation d'état, 0 0 0 1;
0 b1/J2 0 -(b1+b2)/J2];
x 1 = x2 B=[0 k/J1 0 0]';
C=[1 0 0 0;
k b b k 0 0 1 0];
x 2 = - x1 - 1 x2 + 1 x4 + u
J1 J1 J1 J1 a)
x 3 = x4

b1 b + b2 u 1 1
x 4 = x2 - 1 x4 1 1 s s
J2 J2 s s

y1 = x1
y2 = x 3
Sous forme matricielle, avec le
vecteur d'état x = [ x1 x2 x3 x4 ] ,
nous avons l'équation d'état: b)
Figure 1.10. Simulation: a) fichier script, b) schéma Simulink.

N. Goléa © 2019 1-9


10

é x 1 ù éê 0 1 0 0 ù éx ù é0 ù
úê 1ú ê ú
ê ú ê k ú êx ú ê k ú
ê x 2 ú ê- J - b1
0 b1
ú ê 2 ú ê J1 ú
ê ú=ê 1 J1 J1
ú + u
ê x ú ê 0 0 0 1 ú ê x3 ú ê 0 ú
ê 3ú ê ê
úê ú ê úú ê ú
ê ú
êë x 4 úû ëê 0 0 - b1J+2b2 ú êë x4 úû êë 0 úû
b1
J2 û
é x1 ù
ê ú
é y1 ù é1 0 0 0ù ê x2 ú
ê ú=ê úê ú
ê y 2 ú ê0 0 1 0ú ê x 3 ú
ë û ë ûê ú
êx ú
êë 4 úû

4.3 Systèmes électriques


Exemple 6. Circuit passif.
Considérons le circuit électrique de la figure 1.11.a. Pour établir les équations d'état des
circuits électriques, on prendra, en général, les tensions des condensateurs et les courants
dans les bobines comme variables d'état, comme sur la figure 1.11.b. Ainsi, avec
x1 = v1 , x2 = v2 , x3 = i2 , et les lois de Kirchhoff, on obtient:

ve - x1 C2 i
= C1 x 1 + x3 R i
2
R
C2 x 2 = x3 i1 v2
Lx 3 = x1 - x2 ve C1 v1 L vL

Si on considère la sortie y = v3 et l'entrée


a)
u = ve , on obtient:
R i C2
x x u
x 1 = - 1 - 3 + x 3 = C 2x 2
RC1 C1 RC1 C 1x1 x2
x u C1 x1 L Lx 3
x 2 = 3
C2
b)
x1 - x2
x 3 =
L Figure 1.11: Circuit passif. a) grandeurs électriques,
b) variables d'état.

et
%code Matlab
y = Lx 3 = x1 - x2 close all
C1=1e-5;C2=1e-4;R1=50;L=1e-3,
Dans la forme matricielle, les équations A=[-1/(R*C1) 0 -1/C1;
précédentes peuvent être écrites comme: 0 0 -1/C2;
1/L -1/L 0];
é x 1 ù éê- RC1 1 0 - C11 ù é x1 ù é RC1 1 ù
úê ú ê ú
B=[1/(R*C1) 0 0]';
ê ú ê ú ê ú C=[1 -1 0];
ê ú ê ú
ê x2 ú = êê 0 C2 ú ê x 2 ú + ê 0 ú u
1
0 D=0;
ê x ú ê 1 úê ú ê ú Sys=ss(A,B,C,D)
ë û ë L
3 - 1
L 0 ú x
ûë û ë û
3 ê 0 ú
x0=[0 1]';
T=5; t=0:0.01:T
Simulation
u=10;
Pour simuler les systèmes LTI en utilisant [y,t,x]=lsim(Sys,u,t,x0)
un fichier Matlab script, on procède Plot(t,y,t,x(1,t),t,x(2,t) ),t,x(3,t))
comme suite (figure 1.12): Figure 1.12: simulation du circuit de la figure 1.11.

N. Goléa © 2019 1-10


11
1. Introduire les paramètres du système.
2. Définir les matrices A, B, C et D.
3. Créer un objet modèle d'état avec la commande ss.
4. Simuler le modèle obtenu en utilisant la commande lsim (il faut fournir le temps de
simulation, les conditions et le signal d'entrée).
Exemple 7. Circuit électrique actif.
Le circuit amplificateur de la figure 1.13 est utilisé comme régulateur en automatique. Sous
l'hypothèse d'un amplificateur opérationnel idéal qui fonctionne en mode linéaire, nous
avons v+ = v- et i+ = i- = 0 . Comme v+ = 0 alors v- = 0 .
On définit l'entrée et la sortie du système comme: R3
ve = u, vs = y . R2

À partir de la maille d'entrée, nous avons: C2


-
ve
R1C1 x 1 = u - x1 R1 C1 + vs

D'où
R2 + R3 1 a)
x 2 = - x2 - y
R2 R3C2 R2C2 x2
R3
À partir de la maille externe, nous avons: R2
C 2x 2
y = u - x1 - x2 - ( R1 + R2 )C1 x 1 C2
C 1x1
-
u
En remplaçant avec l'expression de x 1 , on obtient: R1 C1 + y
x1
R2 R
y= x1 - x2 - 2 u
R1 R1 b)

À partir de la maille de sortie, nous avons: Figure 1.13: Circuit actif: a) grandeurs
électriques, b) variables d'état.
æx ö R + R3
y = -x2 - R2 çç 2 + C2 x 2 ÷÷÷ = - 2 x2 - R2C2 x 2 %code Matlab exemple 7
çè R3 ÷ø R3 C1=1e-5;C2=1e-4;R1=1e5;
R2=1e5,R3=1e4;
D'où: A=[-1/(R1*C1) 0;
-1/(R1*C2) 1/(R3*C2)];
R2 + R3 1
x 2 = - x2 - y B=[1/(R1*C1) 1/(R1*C2)]';
R2 R3C2 R2C2 C=[R2/R1 -1];
D=-R2/R1;
En remplaçant avec l'expression de y , on obtient: Sys=ss(A,B,C,D)
x0=[0 1]';
1 1 1 T=5; t=0:0.01:T
x 2 = - x1 - x2 + u u=2*sin(t);
C2 R1 C2 R3 C2 R1
[y,t,x]=lsim(Sys,u,t,x0)
Plot(t,y,t,x(1,t),t,x(2,t))
Sous forme matricielle, les équations d'état sont:
Figure 1.14: simulation du circuit de la
é x 1 ù êé- R11C1 0 ù é x1 ù é R11C1 ù
ú ê ú + ê úu figure 1.13.
ê ú=ê
ê x 2 ú ê- C 1R
ë û ë 21 - C21R3 úú êë x2 úû êê R11C2 úú
û ë û
é x1 ù é R2 ù
y = éê RR12 -1ùú ê ú + ê- ú u
ë û ê x2 ú ê R ú
ë û ë 1û

N. Goléa © 2019 1-11


12
4.4 Système électromécanique
Les systèmes électromécaniques associent les énergies électrique et mécanique. Dans les
applications de mouvement, ces dispositifs permettent la transformation des grandeurs
électriques en grandeurs mécaniques (p. ex. les moteurs). Dans les applications de
génération de l'énergie électrique, ces dispositifs la transforment les grandeurs mécaniques
en grandeurs électriques (p. ex. les alternateurs).
Exemple 8. Électrovanne
Un schéma de principe simplifié d'une électrovanne est dans la figure 1.15. L'électrovanne de
masse m , est formée d’une bobine de résistance R et une inductance L , qui produit une
force électromagnétique F = ki . La vanne valve et le roulement linéaire produit une force de
résistance au mouvement by . ´ ´
y
L'équation de la partie électrique est donnée par: m F
´ ´
Li + Ri = v i b
v
L'équation de la partie mécanique est donnée par:
my + by = F = ki Figure 1.15. Principe d'une électrovanne.

Pour la partie mécanique, Il est clair que les variables d'état sont le déplacement et la vitesse
de la vanne, x1 = y, x2 = y . Pour la partie électrique, la variable d'état est le courant dans la
bobine x3 = i . ainsi,

x 1 = x2
b k
x 2 = - x2 + x 3
m m
R 1
x 3 = - x3 + v
L L
y = x1

Dans la forme matricielle, les équations précédentes peuvent être écrites comme:
é x 1 ù é 0 10 ù é x1 ù é 0 ù Roulement
ê ú ê úê ú ê ú Stator (aimants)
ê x 2 ú = ê 0 kúê ú ê ú
m ú ê x2 ú + ê 0 ú u
-b
ê ú ê m Enroulement
ê x ú ê -R0 0 û ë x3 úû êë L1 úû
ú ê d'armature
ë 3û ë L
é x1 ù
ê ú Alimentation
y = [1 0 0 ] ê x2 ú
ê ú
êx ú
ë 3û
Exemple 9. Machine à courant continu
Une machine à courant continu (CC) à Commutateur Balais
Rotor
aimants permanents est schématisée sur
la figure 1.16. Le rotor alimenté en
Figure 1.16. Machine CC à aimants permanents.
courant continu est en rotation, à la
vitesse angulaire wm , sous l'effet d'un couple proportionnel au flux, produit par les aimants
installés sur le stator, et le courant qui le parcourt Cm = kmi . Cette rotation produit une force
contre-électromotrice proportionnelle à la vitesse de rotation eb = kb wm .

Le schéma équivalent du moteur avec la charge entraînée est montré sur la figure 1.17. La

N. Goléa © 2019 1-12


13

charge, d'inertie Jc et reliée au moteur à travers un réducteur de vitesse de rapport


r = N 2 / N1 , tourne à la vitesse angulaire w et produit un couple résistant Cr et un couple de
frottement bc w qui viennent s'opposer à ce mouvement.

Le réducteur de vitesse est caractérisé par la relation entrée-sortie


N1wm = N 2w (1.8)

soit
wm = rw (1.9)

De plus, si le réducteur est sans pertes, alors nous avons C1wm = C2 w , d'où C2 = rC1 .

Les équations mécaniques du moteur et de la charge sont données par:


J m w m = Cm - bm wm - C1 (1.10)

J c w = C2 - bc w - Cr (1.11)

Si on utilise la relation (1.9) dans l'équation mécanique du moteur (1.10) et en multipliant le


résultat par r , on obtient:

r 2 J m w = rCm - r 2bm w - rC1 (1.12)

L'addition de cette dernière équation à l'équation mécanique de la charge (1.11) produit:


J w = rCm - bw - Cr = rkmi - bw - Cr (1.13)

Avec J = J c + r 2 J m , b = bc + r 2bm .

L'équation électrique du rotor est donnée par:

Li = -Ri - ea + v = -Ri - kb wm + v = -Ri - rkb w + v (1.14)

Si on considère la tension de l'induit comme entrée v = u , la vitesse angulaire comme sortie


y = w et le couple de charge comme perturbation d = Cr , et les variables d'état: x1 = i et
x2 = w , on obtient le modèle d'état:

é R rkb ù
é x 1 ù êê- L - L úú é x1 ù éê 1 ùú é 0 ù
ê ú=ê ê ú + L u + ê ú
ê x 2 ú ê rkm ú êx ú ê ú ê 1úd
-
ê Jú (1.15)
ë û
êë J - b úú ë 2 û êë 0 úû ë û
J û
y = [ 0 1] x

Si on est concerné par la position du moteur, on peut ajouter un troisième état x3 = q = ò w ,


d'où le modèle d'état :
é R rk ù
ê- - b 0ú
é x 1 ù ê L L ú é x ù éê 1 ùú é 0 ù
ê ú ê rk ú ê 1ú êLú ê ú
ê x 2 ú = ê m - b ê ú
ê ú ê J 0úú êê x2 úú + ê 0 ú u + ê -1 ú d
J ê ú ê J ú (1.16)
ê x ú ê úê ú ê ú
ê 0 ú
ë 3û ê 0 1 0ú ë x3 û ê 0 ú ë û
ê ú ë û
êë úû
y = [ 0 0 1] x

N. Goléa © 2019 1-13


14

%Modèle de la machine CC
R=1; L=0.05; bm=0;
Jm=0.001; Jc=0.1;
bc=0.0001; kb=0.05;
km=0.05; r=10;
J=Jc+r^2*Jm;
b=bc+r^2*bm; k1= r*kb;
k2=r*km;
A=[0 -R/L –k1/L;
0 –b/J k2/J;
0 1 0]
B=[0 0 1/L]'
C=[0 0 1]; D=0;

a) b)
Figure 1.18. Simulation de la machine CC: a) script, b) schéma Simulink.

4.5 Systèmes hydrauliques


Les systèmes hydrauliques sont caractérisés par plusieurs grandeurs de base : la pression P
(N/m² = Pascal) et le débit volumique q = V (m3/sec), ou le débit massique qm = m 
(kg/sec), où V (m 3 ) et m(kg) sont le volume et la masse du fluide reliés par la relation
m = rV avec r (kg/m3) la densité du fluide.

La pression est définie comme étant la force par unité de surface exercée par le fluide,
F
P= (1.17)
A
Au niveau de la mer pour une température ambiante, la pression atmosphérique,
habituellement abrégée en Pa , est de 1.0133´105
Pascal.  Pa

Pression hydrostatique
La pression hydrostatique est la pression qui existe
h
dans un fluide au repos (figure 1.19). Elle est causée
par le poids du fluide. Par exemple, la pression A
hydrostatique au fond d'une colonne de fluide de
hauteur h est égale à F / A = mg / A = rVg / A = r gh , Figure 1.19. Pression hydrostatique.
où g est l'accélération de la gravité.

Si la pression atmosphérique au-dessus de la colonne de liquide est Pa , alors la pression


totale en bas de la colonne est égale à r gh + Pa .
Conservation de masse et conservation de volume
Pour les fluides incompressibles, la conservation de la masse équivaut la conservation de
volume, car la densité du fluide est constante. Si nous connaissons la densité r et le débit
volumique q , nous pouvons calculer le débit massique : qm = rq , dont l‘unité SI est kg/sec.

La conservation différentielle de la masse peut être énoncée comme suite. Pour un réservoir
contenant un fluide de masse m , la variation de masse dans le réservoir doit être égale au
débit de masse total d'entrée moins le débit de masse total de sortie. Soit,

N. Goléa © 2019 1-14


15

m = å qme - å qms (1.19)


i j

 = rV , alors,
Pour un fluide incompressible, r est constant, et donc m

rV = å rqe - å rqs (1.20)


i j

Ainsi, la loi de conservation de volume est donnée par :

V = å qe - å qs (1.21)
i j

Donc (1.21) est une conservation du volume du fluide, et cela équivaut à la conservation de la
masse de l’équation (1.19), lorsque le fluide est incompressible.
Capacitance
La capacitance d'un fluide est la relation entre la masse de fluide stockée et la pression
résultante. À un point de référence particulier ( P0 , m0 ), la pente est C , où

dm
C= (1.22)
dP ( P0 , m0 )

Ainsi, la capacité C du fluide est le rapport entre le changement de la masse stockée et le


changement de pression.
La pression au fond du réservoir est égale à:
V rg t 1 t
P (t ) = r gh = r g
A
=
A ò 0q (l) dl = C ò 0q (l) dl (1.23)

La grandeur C = A / r g (m4 sec 2/ kg) s'appelle la capacitance du liquide. Ainsi :


dP
q =C (1.24)
dt
Résistance hydraulique q R
R = (P2 - P1 )/ q
On définit la résistance du fluide R comme P1 P2
é dP ù (a )
R=ê ú (1.25) q R2 q q R = R1 + R2
ê dq ú R1
ë û q=q0 , P = P0

Ainsi, la résistance est la pente de la courbe à un (b )


débit de référence q0 et une pression de
référence P0 . Les valeurs de q0 et P0 dépendent R1 q1 1 1 1
= +
de l'application particulière. R R1 R2
q q qv
Dans beaucoup d’applications, la relation (1.25)
R2
est non linaire de la forme:
q2 (c )
q = k P , P = q 2 / k2 (1.26)
Figure 1.20. Résistance hydraulique équivalente.
Ainsi, la dérivée est donnée par
q
dP = 2 dq (1.27)
k2

N. Goléa © 2019 1-15


16
La résistance au point spécifié est donnée par
dP 2q0
R= = (1.28)
dq P = P0 ,q =q0
k2

Dans un nombre limité de cas, tels que le débit dans les canalisations dans certaines
conditions, la relation est linéaire de sorte que P = Rq .

Exemple 10. Système à 2 réservoirs. qe


La conservation de volume produit:

A1h1 = -qs1
A2h2 = qs1 + qe - qs 2 h1 A1 h2 A2
R1 R2 qs 2
Le débit à la sortie du réservoir 1 est
donnée par: qs 1

1 1 a)
q s1 = ( P1 - P2 ) = (r gh1 - r gh2 )
R1 R1 q1
Le débit à la sortie du réservoir 1 est q2
R1
donnée par:
C1 R2 C2 qe
P rg
qs 2 = 2 = h2
R2 R2
b)
Ainsi, on obtient:
Figure 1.21. a) Système hydraulique à 2 réservoirs, b)
schéma électrique équivalent.
rg rg
A1h1 = - h1 + h2 %système hydraulique figure 1.22
R1 R1 A1=2; A2=5; rho=1.94; g=9.81;
rg æ1 1ö R1=20; R2=50; qe=0.3; h01=1;
A2h2 = h1 - r g çç + ÷÷÷ h2 + qe h02=10;
R1 è R1 R2 ÷ø
ç C1=A1/(rho*g); C2=A2/(rho*g);
a1=1/(C1*R1); a2=1/(C2*R1);
Ou encore: a3=1/C2*(1/R1+1/R2); b=1/A2;
A=[-a1 a1;
1 1
h1 = - h1 + h2 a2 -a3]
C1 R1 C1 R1 B=[0 b]';
C=[1 0];D=0;
1 1æ1 1ö 1
h2 = h1 - ççç + ÷÷÷ h2 + qe
C2 R1 C2 è R1 R2 ø÷ A2

Avec C1 = A1 / r g ,C2 = A2 / r g .

Pour obtenir les équations d’état, on


prendra la notation: x1 = h1 , x2 = h2 ,
y = h1 , u = qe . Ainsi, nous avons:
Figure 1.22. Simulation du système hydraulique de la
figure 1.21.

N. Goléa © 2019 1-16


17
Pa
é-1 / C1 R1 1 / C1 R1 ù
é x ù ê ú é x1 ù é 0 ù
ê 1ú = ê (1 / ú
R1 + 1 / R2 ) ê ú + ê úu P2
ê x 2 ú ê 1 / C2 R1 - ú ê x2 ú ê1 / A2 ú
ë û ê C2 ú ë û ë û
ë û A R2 x
q2
é x1 ù R1 q1
y = [1 0 ] ê ú Pa
ê x2 ú P1 P3 m
ë û P4

Exemple 11. Actionneur hydraulique Figure 1.23. Actionneur hydraulique.

Les actionneurs hydrauliques sont largement utilisés avec des pressions élevées pour obtenir
des forces élevées lors du déplacement de grandes charges ou pour obtenir des accélérations
élevées. Le fluide de travail peut être un liquide, comme on le trouve couramment dans les
machines de construction, ou de l'air, comme dans les unités cylindre-piston à air
fréquemment utilisées dans les équipements de fabrication et de traitement des pièces.
La figure 1.23 montre un piston et un cylindre à double effet. L'appareil déplace la masse de
charge m en réponse aux sources de pression P1 et P2 . Pour modéliser le système, on
supposera que le fluide est incompressible, que les résistances sont linéaires et que la masse
du piston est comprise dans m .
%système hydraulique figur 1.23
Les pressions débits sont:
A =2;m =20;R1 =12;R2=5;x01=1;
P1 + Pa - P3 = R1q1 x02=0; a=A^2/m*(R1+R2); b=A/m;
A=[0 1;
P4 - P2 - Pa = R2q2 0 -a]
B=[0 b]';
Comme le débit est conservé, nous avons: C=[1 0];D=0;
q1 = q2 = Ax

D'où:
P1 + Pa - P3 = R1 Ax
P4 - P2 - Pa = R2 Ax
D'où:
P1 + P4 - P2 - P3 = ( R1 + R2 ) Ax

Avec la loi de mouvement: Figure 1.24. Simulation du système hydraulique


de la figure 1.23.
mx = A( P3 - P4 )

Nous avons

A( P3 - P4 ) = A( P1 - P2 ) - ( R1 + R2 ) A2 x

Soit

mx = A( P1 - P2 ) - ( R1 + R2 ) A2 x

Pour obtenir la représentation d'état, on prendra, x1 = x , x2 = x et u = P1 - P2 , d’où:

x 1 = x2
A2 A
x 2 = - ( R1 + R2 ) x2 + u
m m
D’où

N. Goléa © 2019 1-17


18

é0 1 ù é0ù
é x 1 ù ê ú é x1 ù ê ú
ê ú=ê ú ê ú + ê úu
ê x 2 ú ê0 - A ( R1 + R2 ) ú ê x2 ú ê A ú
2

ë û ê ú ë û êë m úû
ë m û
T V , m, c p
é x1 ù
y = [1 0 ] ê ú
ê x2 ú
ë û Figure 1.25. Capacité thermique.
4.6 Systèmes thermiques
Dans un système thermique l'énergie est stockée et transférée sous forme de chaleur. Des
exemples de systèmes thermiques comprennent les systèmes de chauffage et de
refroidissement et les procédés de mélange dans lesquels de la chaleur doit être ajoutée ou
retirée pour maintenir une température de réaction optimale.
Les systèmes thermiques fonctionnent en raison des différences de température, car l'énergie
thermique circule d'un objet ayant la température la plus élevée vers un objet ayant la
température la plus basse. La conservation de l'énergie thermique constitue la base des
modèles de systèmes thermiques, ainsi que les concepts de résistance thermique et de
capacité thermique.
Les lois régissant les systèmes thermiques sont typiquement exprimées comme relations
entre les quantités: Température T (Kelvin) et débit de chaleur q (watt) définie comme la
variation de l'énergie thermique E stockée:

q = E (1.29)
Capacité thermique
Pour un corps (figure 1.25) de masse m et de chaleur spécifique c p , l'énergie thermique E
stockée dans l'objet à une température T est:
E = mc p (T - T0 ) (1.30)

où T0 est une température de référence choisie arbitrairement. En effet, seul le changement


de l'énergie thermique stockée affecte la dynamique d'un système thermique.
La capacité thermique relie la température d'un objet à la quantité d'énergie thermique
stockée. Elle est définie comme:
dE
C= = mc p = V rc p (1.31)
dT
La capacité thermique C peut être interprétée comme la quantité d'énergie thermique
requise pour élever la température d'un objet de 1 . Ainsi, dans le SI, les unités de C sont
J/C° ou J/K.
La notion de capacité thermique s’applique aux solides comme aux fluides (liquide ou gaz).
Exemple 12. Mélangeur thermique qe ,Te

Le liquide à une température Te est pompé à un débit


V ,T
volumique qe constant dans un récipient de mixage
q s ,T
(figure 1.26). On suppose que les pertes de chaleur sont
négligeables. Le volume du récipient est V et le liquide
qu’il contient est bien mélangé, de température homogène Figure 1.26. Mélangeur thermique.
T . La chaleur spécifique et la densité du liquide sont c p
et r .

N. Goléa © 2019 1-18


19
On désire développer un modèle pour l’évolution dans le temps Rayonnement
de la température T , avec Te comme entrée.

Le supplément d'énergie E qui pénètre le récipient est : Convection

E = mc p (T - T0 ) = rVc p (T - T0 )

La conservation d'énergie implique que: la variation de Conduction


l'énergie thermique dans le récipient est égale au débit de
chaleur entrant moins le débit de chaleur sortant, soit: Figure 1.27. Modes de transfert
de chaleur
E = rVc pT = rqe c p (Te - T0 ) - rqe c p (T - T0 )

Comme r,V , qe , c p sont constantes, alors

q q
T = - e T + e Te
V V
Modes de transfert de chaleur
Le transfert de chaleur peut se produire selon un ou plusieurs modes, comme illustré par la
figure 1.27.
Conduction: Le transfert de chaleur par conduction se produit par diffusion de chaleur à
travers une substance. Cette diffusion se produit lorsque des molécules transfèrent une
partie de leur énergie cinétique à des molécules adjacentes plus lentes.
Convection: Le mécanisme de convection est dû au transport de fluide, (exemples, dans l'eau
bouillante et dans les courants d'air thermiques). La convection se produit également dans
un fluide situé sur une surface solide dont la température est différente de celle du fluide.
Rayonnement: Le transfert de chaleur par rayonnement s'opère en infrarouge. Les lampes
chauffantes sont des exemples courants de ce type de transfert. Le chauffage par
rayonnement solaire en est un autre exemple.
Résistance thermique
Le transfert de chaleur entre deux objets est causé par une différence de température. Ainsi,
la différence de température dans les systèmes thermiques joue le même rôle que la
différence de tension dans les systèmes électriques et nous utilisons donc le concept de
résistance thermique de manière similaire à la résistance électrique.
Loi de refroidissement de Newton
La loi de Newton sur le refroidissement est un modèle linéaire du débit thermique en
fonction de la différence de température. La loi, utilisée à la fois pour les modèles de
convection et de conduction, est exprimée comme suit:
DT
qc = (1.32)
R
où qc est le débit de chaleur, R la résistance thermique et DT la différence de température.
En SI, qc a les unités de J/sec, qui est un watt (W).

Pour la conduction à travers un matériau d'épaisseur l , une formule approximative de la


résistance conductrice est
l
R= (1.33)
kA

N. Goléa © 2019 1-19


20

où k est la conductivité thermique du matériau et A la surface.


La résistance thermique pour la convection se produisant à la limite d’un fluide et d’un solide
est donnée par
1
R= (1.34)
hA
où h est le coefficient de convection de l'interface fluide-solide et A est la surface concernée.
Le coefficient de convection pourrait être une fonction compliquée des caractéristiques
d'écoulement du fluide. Dans de nombreux cas d’importance pratique, le coefficient a été
déterminé avec une précision acceptable.
Lorsque deux corps sont en contact, le transfert de chaleur par rayonnement se produit par
un échange mutuel d'énergie thermique par émission et absorption. Le rayonnement
thermique, tel que l'énergie solaire, produit de la chaleur lorsqu'il frappe une surface capable
de l'absorber. Le rayonnement peut également être réfléchi ou réfracté et les trois
mécanismes peuvent se produire sur une même surface. Le taux de transfert de chaleur net
dépend de la différence de température corporelle élevée à la quatrième puissance
(conséquence de la loi dite de Stefan-Boltzmann).

qc = b (T14 - T24 ) (1.35)

Les températures corporelles absolues sont T1 et T2 , et b est un facteur intégrant les autres
effets. La détermination de b , comme le coefficient de convection, est trop complexe pour
être prise en compte ici, mais de nombreux résultats sont disponibles dans la littérature.
Le modèle de rayonnement est non linéaire et nous ne pouvons donc pas définir de
résistance thermique spécifique. Cependant, nous pouvons utiliser un modèle linéarisé si le
changement de température n'est pas trop important. Notez que la résistance thermique
linéaire est un cas particulier de la définition plus générale de la résistance thermique:
1
R= (1.36)
dqc / dT

Par exemple, supposons que T2 soit constante, alors,

1 1
R= = (1.37)
dqc / dT1 4bT13

Lorsque (1.38) est évaluée à une température T1 donnée, on obtient une valeur pour la
résistance linéarisée.
Transfert de chaleur par une paroi
Considérons une paroi d'épaisseur l , comme indiqué sur la figure 1.28.a. Les températures
des objets (solides ou liquides) de chaque côté de la paroi sont T1 et T2 . Si T1 > T2 , la chaleur
circule de gauche à droite. Les températures T1 et T2 des objets adjacents resteront
constantes si les objets sont suffisamment grands (On peut facilement visualiser cela avec un
bâtiment; la température de l'air extérieur n'est pas affectée de manière significative par le
transfert de chaleur à travers les murs du bâtiment car la masse de l'atmosphère est très
grande).
Si le matériau de la paroi est homogène, la répartition de la température, à l'état d'équilibre,
dans la paroi ressemblera éventuellement à celle indiquée dans la figure 1.28.b. La loi de
Fourier sur la conduction thermique stipule que le taux de transfert de chaleur par unité de
surface dans une substance homogène est directement proportionnel au gradient négatif de

N. Goléa © 2019 1-20


21
la température. La constante de proportionnalité
est la conductivité thermique k. Dans le cas illustré
à la figure 1.28.b, le gradient négatif est
DT = (T1 - T2 ) et le débit de transfert de chaleur A
T1 T T2
est donc:
kA
qc = DT (1.38)
l l
où A est la surface de la paroi. La comparaison avec a)
l /2 l /2
(1.32) montre que la résistance thermique est
T1
donnée par (1.33), avec DT = (T1 - T2 ) .
T
Dans des conditions transitoires, le profil de T2
qc 1 qc 2
température n'est pas linéaire et doit être obtenu
T1 T
en résolvant une équation différentielle partielle T2
R m
(appelée modèle à paramètres répartis). Pour 1 R 2

obtenir une équation différentielle ordinaire (un b)


modèle à paramètres localisés), qui soit plus facile R1 R2
à résoudre, nous devons sélectionner un point dans qc 1 qc 2
la paroi et utiliser sa température comme T2
température représentative de l'objet. Dans des T1 T
conditions stables, la température moyenne se
situe au centre. On considère donc que toute la
masse m de la paroi est concentrée sur son axe, et c)
on envisage le transfert de chaleur par conduction Figure 1.28. Modèle de transfert de chaleur dans
sur un trajet de longueur l/2 entre la température une paroi.
T1 et la température T . Ainsi, la résistance
thermique de ce chemin est R1 = l / 2kA . De même, pour le chemin de T vers T2 , la
résistance thermique est R2 = l / 2kA . Ces résistances et la masse localisée m sont
représentées à la figure 1.28.b.
La figure 1.28.b permet de déduire le modèle suivant en appliquant la conservation de
l'énergie thermique. En supposant que T1 > T > T2 , on obtient

dT 1 1
C = qc1 - qc 2 = (T1 - T ) - (T - T2 ) (1.39)
dt R1 R2

La capacité thermique est C = mc p .

Ce système est analogue au circuit illustré à la figure 1.28.c, où les tensions v , v1 et v2 sont
analogues aux températures T , T1 et T2 . Notons que le courant i1 est analogue au débit de
chaleur dans la masse m par le chemin conducteur gauche et que le courant i2 est analogue
au débit de chaleur hors de la masse m par le chemin conducteur droit. Le courant i3 est le
courant net dans la capacité (i3 = i1 - i2 ) et augmente la tension v . Le courant i3 est analogue
au débit thermique net dans la masse m , ce qui augmente la température T de masse.
Résistances thermiques série et parallèle
Si la masse m de la paroi est très petite ou si la valeur de c p est si petite que le produit mc p
est négligeable, alors l a capacité thermique C est également très petite. En régime établi, on
peut avoir dT / dt = 0 . Dans ces deux cas, la masse absorbe une quantité négligeable
d'énergie calorifique. Par conséquent, le débit calorifique qc1 dans le chemin gauche doit être

N. Goléa © 2019 1-21


22

égal au débit qc 2 dans le chemin droit. Autrement dit, si C = 0 ,

1 1
qc1 = (T1 - T ) = qc 2 = (T - T2 ) (1.40)
R1 R2

La solution de ces équations est


R2T1 + R1T2
T= (1.41)
R1 + R2

T1 - T2 T - T2
qc1 = qc 2 = = 1 (1.42)
R1 + R2 R

Cette dernière solution montre que les résistances R1 et R2 sont équivalentes à la résistance
simple R = R1 + R2 .

Ainsi, les résistances thermiques sont en série si elles transmettent le même débit thermique;
dans ce cas, elles sont équivalentes à une résistance unique égale à la somme des résistances
individuelles.
On peut également montrer que les résistances thermiques sont en parallèle si elles
présentent la différence de température. Si tel est le cas, elles sont équivalentes à une seule
résistance donnée par,
1 1 1
= + + ... (1.43)
R R1 R2

En pratique, pour obtenir un modèle plus simple, la formule de résistance en série est parfois
utilisée même dans les applications où la capacité thermique n'est pas petite ou dans des
conditions transitoires.
Exemple 13. Bain de refroidissement
La dureté et d'autres propriétés d'un métal peuvent Tb
être améliorées par le refroidissement rapide qui se
produit lors de la trempe, un procédé dans lequel un To T
objet chauffé est placé dans un bain liquide (figure
1.29). Si la capacité thermique du bain liquide n'est pas
grande, l'énergie calorifique transférée du métal
modifiera la température du bain et nous aurons Figure 1.29. Bain de refroidissement.
besoin d'un modèle pour décrire sa dynamique.
La température To à l'extérieur du bain est supposée constante, et le débit de chaleur se
propage du métal vers le bain, T > Tb . La résistance de convection entre le métal et le bain
est R1 . La résistance de convection/conduction combinée de la paroi du bain et de la surface
du liquide est R2 . Les capacités du cube et du bain liquide sont respectivement C et Cb .

On cherche à établir un modèle de la température du métal et de la température du bain.


1. bain sans perte de chaleur par rapport à l'environnement (c'est-à-dire, R2 = ¥ ).

Pour le métal, la conservation de l'énergie donne:


dT 1
C = - (T - Tb )
dt R1

et pour le bain:

N. Goléa © 2019 1-22


23

dTb 1
Cb = (T - Tb )
dt R1

Notons le signe opposé du débit de chaleur dans les deux équations, car le flux de chaleur
sortant du métal doit être identique à celui dans le bain.
Pour obtenir la représentation d'état, on prendra x1 = T et x2 = Tb , d’où:

1 1
x 1 = - x1 + x2
CR1 CR1
1 1
x 2 = x1 - x2
Cb R1 Cb R1

D’où
é 1 1 ù
ê- ú
é x 1 ù ê CR1 CR1 ú é x1 ù
ê ú=ê úê ú
ê x 2 ú ê 1 1 ú êë x2 úû
ë û ê - ú
ê Cb R1 C1 Rb úû
ë
2. bain avec perte de chaleur par rapport à l'environnement (c'est-à-dire, R2 est finie). Alors,
nous devons maintenant prendre en compte le débit de chaleur entrant ou sortant du bain.
Supposons que T > Tb > To , ainsi, la chaleur circule du métal dans le bain puis dans
l’environnement. De la conservation de l'énergie,
dT 1
C = - (T - Tb )
dt R1

dTb 1 1
Cb = (T - Tb ) - (Tb - To )
dt R1 R2

Pour obtenir la représentation d'état, on prendra x1 = T , x2 = Tb et d = To , d’où:

1 1
x 1 = - x1 + x2
CR1 CR1
1 1 æ1 1ö 1
x 2 = x1 - ççç + ÷÷÷ x2 + d
Cb R1 Cb è R1 R2 ø÷ Cb R2

D’où
é-1 / CR1 1 / CR1 ù
é x 1 ù ê ú é x1 ù é0 ù
ê ú=ê 1 / R1 + 1 / R2 ú ê ú + ê úd
ê x 2 ú ê 1 / Cb R1 - ú ê x2 ú ê1 / Cb R2 ú
ë û ê Cb ú ë û ë û
ë û

5. Système non linéaire et linéarisation


La modélisation des systèmes non linéaires suit les mêmes principes physiques développés
pour les systèmes linéaires. Dans ce qui suit, nous allons aborder l’établissement des modèles
pour des systèmes non linéaires typiques. Par la suite, nous aborderons la technique utilisée
pour obtenir des modèles linéaires pour ces systèmes à des points de fonctionnement bien
définis.
5.1 Linéarisation du système autour d'un point d'équilibre

N. Goléa © 2019 1-23


24
La forme générale de la représentation d’état d’un système non linéaire est donnée par:
x = f ( x , u)
(1.44)
y = h( x , u)

avec
é x1 ù éu1 ù é f1 ( x , u) ù é y1 ù éh1 ( x , u) ù
ê ú ê ú ê ú ê ú ê ú
ê x2 ú êu2 ú ê f2 ( x , u)ú ê y2 ú êh2 ( x , u) ú
x = êê úú Î R , u = êê úú Î R , f ( x , u) = êê ú ê ú ê ú
ú Î R , y = ê ú Î R , h( x , u) = ê úÎR
n m n p p
ê ú ê ú ê ú ê ú ê ú
êx ú êu ú ê f ( x , u)ú êy ú êh ( x , u)ú
êë n úû êë m úû ëê n ûú ëê p ûú êë p úû

Les vecteurs de fonctions f ( x , u) et h( x , u) sont supposées dérivables.

Définition 4. Un point ( x , u ) est un point de fonctionnement, si f ( x , u) = 0 . Si de plus


u = 0 , alors c’est un point d'équilibre.
Remarquons tout d'abord que si x = x et u = u , alors x = 0 , c'est-à-dire que le système
n'évolue plus si on maintient la commande u = u et s'il est dans l'état x = x . Dans ce cas, la
sortie y a pour valeur y = h ( x , u ) .

Définition 5. Soit f ( x ) : Rn  R, une fonction différentiable. Au voisinage d'un point


x Î Rn le développement de Taylor au premier ordre de f ( x ) autour de x produit:

df
f ( x)  f ( x )+ ( x )( x - x ) (1.45)
dx
avec
é df1 df1
 df1 ù
ê dx1 dx2 dxn ú
ê ú
ê df2 df2
 df2 ú
df
( x ) = êê dx1 dx2 dxn ú
ú (1.46)
dx ê     ú
ê ú
ê dfn dfn dfn ú
 dx
êë dx1 dx2 ú
n û x=x

Cette matrice est appelée matrice jacobienne.


En utilisant ce principe, la linéarisation du modèle (1.44) autour du point ( x , u ) produit:
. df df
x  f ( x ,u ) + ( x , u )( x - x ) + ( x , u )(u - u )
dx du
(1.47)
dh dh
y  h ( x , u ) + ( x , u )(u - u )+ ( x , u )(u - u )
dx du
Avec
é df1 df1

df1 ù é df1 df1

df1 ù
ê dx1 dx2 dxn ú ê du1 dx2 dum ú
ê ú ê ú
ê df2
 dx2n úú ê df2
df2 df df2 df 2 ú
df ê df ê  dum ú
( x , u ) = ê dx1 dx2
ú , ( x , u ) = ê du1 dx2
ú
dx ê     úú du ê     úú
ê ê
ê dfn dfn dfn ú ê dfn dfn dfn ú
ê dx  dx ú ê du  ú
ë 1 dx2 n û ( x ,u ) ë 1 dx2 dum û ( x ,u )

N. Goléa © 2019 1-24


25

é dh1 dh1

dh1 ù é dh1 dh1

dh1 ù
ê dx1 dx2 dxn ú ê du1 du2 dum ú
ê ú ê ú
ê dh2
 dx2n úú ê dh2
dh2 dh dh2 dh2 ú
dh ê dh ê  dum ú
( x , u ) = ê dx1 dx2
ú , ( x , u ) = ê du1 du2
ú (1.48)
dx ê     ú ú du ê     úú
ê ê
ê dhp dhp dhp ú ê dhp dhp dhp ú
ê dx  dxn ú ú ê du  ú
ëê 1 dx2 û ( x ,u ) ëê 1 du2 dum ûú ( x ,u )

On prendra la notation x = x - x , u = u - u , y = y - h ( x , u ) pour les variables incrémentales,


et
df df dh dh
A= ( x , u ) , B = ( x , u ) ,C = ( x , u ) , D = ( x , u ) (1.49)
dx du dx du
où A, B,C , D sont respectivement de dimension n ´ n , n ´ m , p ´ n et p ´ m .

Autour du point ( x , u ) , le comportement du système s'approxime donc par les équations


d'état:
.
x = f ( x , u ) + Ax + Bu (1.50)
y = Cx + Du

Le modèle (1.50) est appelé modèle affine de (1.44) au point ( x , u ) .

Si de plus ( x , u ) est un point de fonctionnement, alors f ( x , u ) = 0 , ainsi nous aurons:


.
x = Ax + Bu (1.51)
y = Cx + Du

Le modèle ainsi formé est appelé modèle linéarisé du système (1.44) autour du point de
fonctionnement ( x , u ) .

Exemple 14. Soit le système non linéaire:

x 1 = x12 + x1 x2
x 2 = x22 + x1 x2 - u

Pour u = 1 , la solution des équations à l’équilibre:

0 = x12 + x1 x2
0 = x22 + x1 x2 - 1

produit les points de fonctionnement: ( x1 , x2 , u ) = (0,1,1) ,(0,-1,1) .

La linéarisation du système non linéaire est donnée par:


.
x = Ax + Bu

avec xT = [ x1 x2 ], x1 = x1 - x1 , x2 = x2 - x2 , u = u - u et

é ¶x1 ¶x1 ù
é ¶x1 ù
ê ¶x1 ¶ x2 ú é2x1 + x2 x1 ù é0ù
A= ê  ú = ê ú , B = êê ¶u úú = ê ú
ê ¶x2 ¶x 2 ú ê x2 2x2 + x1 úû êë ¶u2 ûú( x ,u ) êë-1úû
¶x
êë ¶x1 ¶x2 úû x ,u ë
( )

N. Goléa © 2019 1-25


26

Pour le point ( x1 , x 2 , u ) = (0,1,1) , la linéarisation est:

. é1 0ù é0ù
x = ê ú x + ê ú u
ê1 2ú ê-1ú
ë û ë û
Pour le point ( x1 , x2 , u ) = (0,- 1,1) , la linéarisation est:

. é-1 0 ù é0ù
x = ê ú x + ê ú u
ê-1 -2ú ê-1ú
ë û ë û
%linéarisation du système de l'exemple 14
% variables d'état
syms x1 x2 u real;
% vecteur d'état
x= [x1; x2];
% eqs d'état du system non linéaire, dx/dt=f(x,u)
f1 = x1^2+x1*x2;
f2 = x2^2+x1*x2-u;
f=[f1; f2];
% calcul des jacobiennes
A.symbolic = jacobian(f, x)
B.symbolic = jacobian(f, u)
% points de fonctionnement.
% xbar = sym([0;1]);
xbar = sym([0;-1]);
ubar = sym(1);
% calcul des matrices A, B
A.algebraic = simplify(subs(A.symbolic,{x1 x2 u},[xbar(1) xbar(2) ubar]));
B.algebraic = simplify(subs(B.symbolic,{x1 x2 u},[xbar(1) xbar(2) ubar]));
% calcul des valeurs numeriques
A.eval = eval(A.algebraic);
B.eval = eval(B.algebraic);

Figure 1.30. Linéarisation du système de l'exemple 14.


Exemple 15. Pendule simple
On considère le pendule de la figure 1.31, où l est la longueur, m la masse, J l’inertie du
pendule et b le coefficient de frottement.. L'entrée de ce système est le couple u exercé sur le
pendule. La sortie est y(t ) , la distance entre la masse m et l'axe vertical.
D'après le principe fondamental de la dynamique:
..
J q = -bq - lmg sin q + u
.
En prenant comme variables d'état x1 = q, x2 = q , les équations q l
d'état du pendule sont:
x 1 = x2 = f1 ( x , u) y
-bx2 - lmg sin x1 + u
x 2 = = f2 ( x , u)
J mg
Et la sortie est: Figure 1.31. Pendule simple.

y = l sin x1 = h( x )

Sous forme vectorielle:

N. Goléa © 2019 1-26


27

é x 1 ù é f1 ( x , u) ù éê x2 ù
ê ú=ê ú = ê -bx - lmg sin x + u úú
ê ú ê ú
ë x 2 û ë f2 ( x , u)û êêë ú
2 1
J úû
y = h( x ) = l sin x1

Physiquement, si u = 0 le pendule ne peut s’arrêter qu’au point inférieur x = ( x1 , x2 ) = (0,0)


ou au point supérieur x = ( x1 , x2 ) = (p,0) , qui sont de ce fait des points d’équilibre.

L’utilisation des formules (1.49) permet de calculer:


é 0 1 ù é0ù
ê ú
( x , u ) = êê 1 úú ,C =
df df dh dh
A= ( x , u ) = ê -gml cos x -b ú , B = ( x ) = [l cos x1 0 ], D = (x ) = 0
dx ê 1 ú du êJ ú dx du
ëê J J ûú ë û
Ainsi, le modèle linéarisé du pendule est donné par:
é 0 1 ù é0ù
ê ú
x = ê -gml cos x -b ú x + êê 1 úú u
.

ê 1 ú êJ ú
êë J J úû ë û
y = [l cos x1 0 ] x

Avec
é x1 ù é x1 - x1 ù
x = ê ú = ê ú , u = u - u = u, y = y - y = y - l sin x1
ê x2 ú ê x2 - x2 ú
ë û ë û
%linéarisation du pendule de l'exemple 15
% parametres
syms g l m b J real;
% variables d'état
syms x1 x2 u real;
% vecteur d'état
x= [x1; x2];
% eqs d'état du pendule, dx/dt = f(x,u)
f1 = x2;
f2 = (-m*l*g*sin(x1)-b*x2+u)/J;
f=[f1; f2];
% eqs de sortie du pendule, y = h(x,u)
h= l*sin(x1);
% calcul des jacobiennes
A.symbolic = jacobian(f, x)
B.symbolic = jacobian(f, u)
C.symbolic = jacobian(h, x)
D.symbolic = jacobian(h, u)
% points de fonctionnement.
% xbar = sym([0;0]);
xbar = sym([pi;0]);
% compute matrices A, B, C, D
A.algebraic = simplify(subs(A.symbolic,{x1 x2},[xbar(1) xbar(2)]));
B.algebraic = simplify(subs(B.symbolic,{x1 x2},[xbar(1) xbar(2)]));
C.algebraic = simplify(subs(C.symbolic,{x1 x2},[xbar(1) xbar(2)]));
D.algebraic = simplify(subs(D.symbolic,{x1 x2},[xbar(1) xbar(2)]));

Figure 1.32. Linéarisation du pendule de l'exemple 15.

Au point ( x , u ) = (0,0,0) , le modèle linéarisé est donné par les équations d'état:

N. Goléa © 2019 1-27


28

é 0 1 ù é0ù
. ê ú ê ú
x = ê -gml -b ú x + ê 1 ú u
ê ú ê ú
ëê J J ûú ëJû
y = [l 0 ] x

Au point ( x , u ) = ( p, 0, 0) , le modèle linéarisé est donné par les équations d'état:

é 0 1 ù é0ù
ê ú
x = ê gml -b ú x + êê 1 úú u
.

ê ú êJú
êë J J úû ë û
y = [-l 0 ] x

Remarque. Les deux modèles linéarisés décrivent le comportement local du pendule au


voisinage du point d’équilibre considéré. Ceci revient à dire que le modèle linéarisé n’est
valide qu’au point de fonctionnement pour lequel il a été calculé.
Exemple 16. Circuit non linéaire.
Soit le circuit de la figure 1.33.a, avec D une diode tunnel dont la caractéristique non linéaire
est donnée à la figure 1.33.b.
Lx 2
Avec les variables d'état x1 = vC , x2 = iL , on obtient: x2 R i

Lx 2 = E - Rx2 - x1 E
L
x1 C D
Cx1
x2 = Cx 1 + i = Cx 1 + h ( x1 )
a)
D'où i = h(x1 )

1 1
x 1 = - h ( x1 ) + x2 -1
R2
C C
1 R 1 x1
x 2 = - x1 - x2 + E a b c d
L L L
1
Si le point de fonctionnement est situé dans l'intervalle R1

a - b , alors la non linéarité h( x1 ) est approximée par b)


x1 / R1 . Ainsi, le circuit est approché par celui de la figure Lx 2
x2 R i
1.33.c, dont les équations d'état sont:
L C
E R1
é x 1 ù êé- CR
1 1 ù
ú éê x1 ùú + éê 0 ùú E
x1
Cx1
ê ú=ê 1 C
ú
ê x 2 ú ê - 1
ë û ë L - RL ûú êë x2 úû êë L1 úû c)
Lx 2
Si le point de fonctionnement est situé dans l'intervalle x2 R i
c - d , alors la non linéarité h( x1 ) est approximée par L
E C x1 -R2
i0 - ( x1 - v0 ) / R2 . Ainsi le circuit est approché par celui de Cx1
la figure 1.33.d. Si on définit les variables d'état d)
x1 = x1 - v0 , x2 = x2 - i0 et E = E - v0 - Ri0 , on obtient Figure 1.33. Circuit non linéaire.
les équations d'état:
é  ù é 1 1 ù
1 ù é 0 ù
ê x1 ú = ê CR2 C ú éx 
ê  ú ê ú êê x úú + êê 1 úú E
êë x2 úû êë- L - L úû ë 2 û ë L û
1 R

Exemple 17. Lévitation magnétique

N. Goléa © 2019 1-28


29
Pour se positionner sur son guide, un train à grande vitesse utilise la lévitation magnétique
dont le principe est montré sur la figure 1.34. Le système est composé d'un électro-aimant
caractérisé par une résistance et une inductance et alimenté par une tension v . Une force
magnétique F = k(i / y )2 est appliquée à une pièce mobile. La position y de la pièce mobile
est mesurée par un capteur optique.

AN: R = 25W , L = 0.5H , m = 1.75kg , k = 2.9 ´10-4 Nm² / A² , g = 9.81m / s² .

L'équation de mouvement et l'équation électrique sont données par:


my = mg - F = mg - k(i / y )2 Electro-aimant R i
di
L = -Ri + u
dt L v
Avec les variables d'état x1 = y , x2 = y , x3 = i et u = v ,
nous avons: y
F
x 1 = x2
Pièce mobile
k
x 2 = g - ( x3 / x1 )2
m
R 1 mg
x 3 = - x3 + u Figure 1.34. Lévitation magnétique.
L L
Et
y = x1

Pour la position d'équilibre y = x1 = 4mm , nous avons ;

0 = x2
k
0= g- ( x3 / x1 )2
m
R 1
0 = - x3 + u
L L

mg
D'où x2 = 0 , x3 = x1 = 0.97 A et u = Rx3 = 24.25V .
k
Le modèle linéaire autour du point ( x1 , x2 , x3 , u ) = (0.004,0,0.97,24.25)

x = Ax + Bu
y = Cx
Avec
é x1 ù é x1 - x1 ù é x1 - 0.004 ù
ê ú ê ú ê ú
x = êê x2 úú = êê x2 - x2 úú = êê x2 ú , u = u - u = u - 24.25, y = y - y = y - 0.004
ú
ê x ú ê x - x ú ê x - 0.97 ú
ë 3û ë 3 3û ë 3 û
é 0 1 0 ù
ê ú é 0 1 0 ù é 0 ù é 0ù
ê kx 2 ú
kx3 ú êê ú ê ú ê ú
A = êê2 33 0 -2 2ú
ú
= ê4873 0 -20ú , B = 0 ú = ê0ú ,C = [1 0 0 ]
ê
ê ú ê ú
ê mx1 mx1 ú ê
0 0 -50úû ê1 / L ú ê 2ú
ê 0 ú
0 -R / L ûú ë ë û ë û
ëê

N. Goléa © 2019 1-29


30
%linéarisation du système de l'exemple 17
% paramètres
syms R L m k g real;
% variables d'état
syms x1 x2 x3 u real;
% vecteur d'etat
x= [x1; x2; x3];
% eqs d'état du system non-lineaire, dx(t)/dt = f(x,u)
f1 = x2;
f2 = g-k/m*(x3/x1)^2;
f3 = (-R*x3+u)/L;
f=[f1; f2; f3];
% eqs de sortie du system non-lineaire , y(t) = h(x,u)
h= x1;
% calcul des jacobiennes
A.symbolic = jacobian(f, x)
B.symbolic = jacobian(f, u)
C.symbolic = jacobian(h, x)
D.symbolic = jacobian(h, u)
% point de fonctionnement.
xbar = sym([0.004;0;0.97]);ubar = sym(24.25);
% compute matrices A, B, C, D
A.algebraic = simplify(subs(A.symbolic,{R L m k g x1 x2 x3 u}, ...
[sym(25) sym(0.5) sym(1.75) sym(2.9e-4) sym(9.81) xbar(1) xbar(2) xbar(3) ubar]));
B.algebraic = simplify(subs(B.symbolic,{R L m k g x1 x2 x3 u}, ...
[sym(25) sym(0.5) sym(1.75) sym(2.9e-4) sym(9.81) xbar(1) xbar(2) xbar(3) ubar]));
C.algebraic = simplify(subs(C.symbolic,{R L m k g x1 x2 x3 u}, ...
[sym(25) sym(0.5) sym(1.75) sym(2.9e-4) sym(9.81) xbar(1) xbar(2) xbar(3) ubar]));
D.algebraic = simplify(subs(D.symbolic,{R L m k g x1 x2 x3 u}, ...
[sym(25) sym(0.5) sym(1.75) sym(2.9e-4) sym(9.81) xbar(1) xbar(2) xbar(3) ubar]));
% compute numerical values
A.eval = eval(A.algebraic);
B.eval = eval(B.algebraic);
C.eval = eval(C.algebraic);
D.eval = eval(D.algebraic);
% Modèle linéarizé
linsys = ss(A.eval, B.eval, C.eval, D.eval)

Figure 1.35. Linéarisation du système de lévitation magnétique.


Exemple 18. Système pendule-chariot
Le système considéré est un pendule simple monté
sur un chariot (figure 1.34). Le pendule de longueur
2l et de masse m dont l'axe de suspension est lié au
l
chariot de masse M et soumis à une force F , peut se q
déplacer sur un axe horizontal. Initialement le
système est au repos, les frottements situés au niveau
de l'axe de rotation sont négligés, les frottements dus mg l
au déplacement du chariot sont notés Fc .
F
Pour obtenir les équations d'état de ce système, nous M
allons faire appel à la formulation de Lagrange-Euler.
Étant donné un système à n degré de liberté ou ayant Fc
n coordonnées généralisées, une énergie potentielle
E p et une énergie cinétique Ec , la formulation de Figure 1.36. Système pendule – chariot.

Lagrange Euler s'écrit comme:

d çæ ¶L ÷ö ¶L
ç ÷- = ui , i = 1..n (1.52)
dt çè ¶q i ø÷÷ ¶qi

N. Goléa © 2019 1-30


31

où qi est i-ième coordonnée généralisée, q i est la première dérivée de qi , L = Ec - E p est le


Lagrangien du système, est ui est la i-ième force généralisée qui agit sur qi .

Les énergies cinétique et potentielle du système pendule - chariot sont données par
1 1 1
EC = mV 2 + J q 2 + Mx 2
2 2 2 (1.53)
E p = mgl cos q

où le vecteur vitesse est

V 2 = x 2 + (lq)2 + 2lq x cos q (1.54)

D'où
1 1
Ec = (m + M ) x 2 + (ml 2 + J )q 2 + mlq x cos q (1.55)
2 2
On procède aux calculs nécessaires,
¶L
= (m + M ) x + mlq cos q
¶x
(1.56)
¶ ¶L
= (m + M ) x + mlq cos q - mlq 2 sin q
¶t ¶x
¶L
Puisque = 0 , nous avons
¶x
¶ ¶L ¶L
- = F - Fc (1.57)
¶t ¶x ¶x
Donc

(m + M ) x + mlq cos q - mlq 2 sin q = F - Fc (1.58)

De même
¶L
= (ml 2 + J )q + mlx cos q
¶q (1.60)
¶ ¶L
= (ml 2 + J )q + mlx cos q - mlq x sin q
¶t ¶q
et
¶L
= -mlq x sin q + m lg sin q (1.61)
¶q
Avec,
¶ ¶L ¶L
- =0 (1.62)
¶t ¶q ¶q
On obtient:

(ml 2 + J )q + mlx cos q - mgl sin q = 0 (1.63)

Enfin, les équations de mouvement du pendule-chariot sont:

N. Goléa © 2019 1-31


32

(ml 2 + J )q + mlx cos q - mgl sin q = 0


(1.64)
(m + M ) x + mlq cos q - mlq 2 sin q = F - Fc
Soit encore sous forme matricielle:
é ù é x ù é mgl sin q ù é0ù
ê ml cos q (ml + J )ú ê ú = ê
2
ú ê ú
ê(m + M ) ml cos q ú ê qú êmlq 2 sin q ú + ê1 ú ( F - Fc ) (1.65)
ë û ëê ûú ëê ûú ë û
Par inversion, on abouti à:
é x ù é ml cos q (ml 2 + J )ù-1 æç é mgl sin q ù é0ù ö
ê ú=ê ú çê ú + ê ú ( F - Fc )÷÷÷ (1.66)
ê ú ê ç
ú ê 2 ú ê ú ÷ø÷
ëê q ûú ë(m + M ) ml cos q û çè êëmlq sin q úû ë1 û
Ou sous forme plus développée:
é .2
(ml 2 + J ) lm q sin q ù é ù
é x ù êê l 2m2 1-cos2 q +mMl 2 + J (m+M ) - l 2m2 1-cos2 q +mMl 2 + J (m+M ) úú ê l 2m2 (1-cos2 q)+mMl 2 + J (m+M ) ú
gl 2m2 cos q sin q ml 2 + J

ê ú=ê ( ) ( ) ê
ú+ê ú ( F - Fc ) (1.67)
ê qú ê ú ê2 2 -lm cos q ú
êë úû ( M +m) glm sin q l 2m2q 2 cos q sin q
ê l 2m2 (1-cos2 q)+mMl 2 + J (m+M ) - l 2m2 (1-cos2 q)+mMl 2 + J (m+M ) ú ë l m (1-cos q)+mMl + J (m+M ) úû
2 2

ë û
Si on considère le voisinage du point (0, 0, 0, 0) , q très petite, alors les approximations
cos q » 1 et sin q » q sont valides, d’où on obtient, en première approximation:
é ml 2 + J lm q. 2 q ù é ml 2 + J ù
é x ù ê ( 2 ) - gl 2m2q ú
ê ú = ê mMl + J (m+M ) mMl + J (m+M ) ú + êê mMl + J (m+M ) úú ( F - Fc )
2 2

ê qú ê (M +m) glmq ú (1.68)


ú ê 2 ú
-lm
êë úû ê 2 l 2m2q 2q
êë mMl + J (m+M ) - mMl 2 + J (m+M ) úû êë mMl + J (m+M ) úû
. .
Avec les variables d'état x1 = x , x2 = x , x3 = q, x4 = q , les équations d'état non linéaires du
système pendule - chariot sont données par:
é x2 ù é 0 ù
é x 1 ù ê ú ê
ê ú ê (ml + J )lm 2
gl 2m2 ú ê ml 2 + J úú
ê x 2 ú ê mMl 2 + J (m+M ) x3 x4 - mMl 2 + J (m+M ) x3 ú ê mMl 2 + J (m+M ) ú
2
ê ú ê ú+ê ú ( F - Fc )
ê x ú = ê x ú ê 0 ú
(1.69)
ê ú ê 3 4 ú ê ú
ê x ú ê (M +m) glm ú ê - ú
ëê 4 ûú ê 2 2ú lm
x - 2
2 2
l m
x x ê mMl + J (m+M ) úû
ëê mMl + J (m+M ) 3 mMl + J (m+M ) 3 4 ûú ë
2

Enfin, si on opère un développement de Taylor du premier ordre des termes non linéaires
autour du point d'équilibre (0,0,0,0) , nous aurons les équations d'état linéaires du système
pendule - chariot données par:
é0 0ù
ú é x1 ù éê ù é ù
1 0 0 0
é x 1 ù ê ú ê ú
ê ú ê gl 2m2 ú ê ú ê ml 2 + J ú ê ml + J ú
0 -
2
ê x 2 ú ê0 0ú ê x ú ê 2
ê ú=ê mMl 2 + J (m+ M )
ú ê 2 ú + ê mMl + J (m+M ) úú u - êê mMl + J (m+M ) úú Fc
2

ê x ú ê0 (1.70)
ê 3ú ê 0 0 1 úú êê x3 úú ê 0 ú ê 0 ú
ê x ú ê ú ê x ú êê ú ê ú
0ú êë 4 úû ëê mMl 2 + J (m+M ) ûúú ê 2 ú
( M +m) glm -lm -
êë 4 úû ê0 0 ê
lm
úû
ë mMl 2 + J (m+ M ) û ë mMl + J ( m+ M )

Où u = F est le signal de commande. Le dernier terme dans (1.19) représente la


perturbation introduite par les forces de frottement sur les roues du chariot.

Pour les valeurs des paramètres physiques M = 2Kg , m = 0.1Kg , l = 0.5m, g = 9.81m / sec2 et

N. Goléa © 2019 1-32


33

J = ml 2 / 3 , nous avons le modèle linéaire suivant:


é x 1 ù é0 1 0 0ù é x1 ù é 0 ù é 0 ù
ê ú ê úê ú ê ú ê ú
ê x 2 ú ê0 0 -0.3633 0ú ê x2 ú ê 0.4938 ú ê 0.4938 ú
ê ú ê úê ú+ê úu- ê ú
ê x ú = ê0 0 0 1 úú êê x3 úú êê 0 ú ê 0 ú Fc (1.71)
ê 3ú ê ú ê ú
ê x ú ê0 0úûú êëê x4 úûú êëê-0.7407úûú ê-0.7407ú
ëê 4 ûú ëê 0 15.26 ëê ûú

N. Goléa © 2019 1-33


34

Chapitre 2

Changement de représentation

1. Introduction
A l'issu du premier chapitre, nous vu que les systèmes LTI peuvent être représentés par des
équations différentielles, par des fonctions de transfert et par les équations d'état. Dans
beaucoup de situations il est utile de changer de représentation, c-à-d passer de l'une de ces
représentations vers une autre, et ceci pour les besoins du calcul ou pour révéler des
propriétés qui n'apparaissent que dans la représentation en question.
L'objectif de ce chapitre est de détailler et de mettre en œuvre les méthodes de calcul qui
permettent le passage:
1. de l'équations différentielle vers la représentation d'état
2. de la fonction de transfert vers la représentation d'état
3. de la représentation d'état vers la fonction de transfert
4. d'une représentation d'état quelconque vers une représentation d'état canonique.
2. Définitions
Soit le système défini par les équations d'état:
x = Ax + Bu
(2.1)
y = Cx + Du

Avec A Î Â n´n , B Î Â n´1 ,C Î Â1´n , D Î Â .


Définition 1. Polynôme caractéristique

Le déterminant de la matrice [ sI - A] Î Â n´n , avec s Î  un scalaire, est donné par:

sI - A = s n + a1 s n-1 + a2 s n-2 + ... + an-1 s + an (2.2)

Ce polynôme de degré n est appelé polynôme caractéristique de la matrice A . Les


constantes ai , i = 1,.., n , sont appelés coefficients du polynôme caractéristique.

Définition 2. Valeurs propres


Le polynôme caractéristique de la matrice A possède n solutions (racines), tel que
sI - A = ( s - l1 )( s - l2 )...( s - ln-1 )( s - ln ) (2.3)

avec
li I - A = 0, i = 1,2,..., n (2.4)

Les racines li , i = 1,.., n sont appelées valeurs propres de la matrice A (ou valeurs propres du
système (2.1)). On notera les propriétés suivantes:

N. Goléa © 2019 1
35

- tr ( A) = l1 + l2 + ... + ln .

- A = l1l2 ...ln-1ln

Définition 3. Zéros
zi est un zéro du système (2.1), ssi, il est solution du déterminant:

zi I - A -B
=0 (2.5)
C D

Exemple 1. Soit le système donné par:


é4 2ù é1ù
A= ê ú , B = ê ú , C = [ 0 2 ], D = 0
ê 2 1ú ê1ú
ë û ë û
Son polynôme caractéristique est :
s - 4 -2
sI - A = = s 2 - tr ( A) s + A = s 2 - 5s = s ( s - 5)
-2 s - 1

Les valeurs propres sont l1 = 0, l2 = 5 .

Pour déterminer les zéros du système, on calcule déterminant:


s - 4 -2 -1
sI - A -B
= -2 s - 1 -1 = 2( s - 2)
C D
0 2 0

D'où le zéro du système est z1 = 2 .

Pour D = 1 , noud avons:


s - 4 -2 -1
sI - A -B
= -2 s - 1 -1 = s 2 - 3s - 4 = ( s + 1)( s - 4)
C D
0 2 1

D'où les zéros du système sont z1 = -1, z2 = 4 .

En fait, un D ¹ 0 indique la présence d'une dérivée d'ordre n de u , ce qui implique que le


système possède n zéros.
Exemple 2. Soit le système donné par:
é-1 1 1ù é1ù
ê ú ê ú
A = êê-1 -1 1úú , B = êê-1úú ,C = [0 2 1]
ê0 0 2úû ê2ú
ë ë û
Son polynôme caractéristique est :
s + 1 -1 -1
sI - A = 1 s +1 -1 = s 3 - tr ( A) s 2 + tr (adj ( A)) s - A
0 0 s-2
= s - 2s - 4 = ( s - 2)( s 2 + 2s + 2)
3

N. Goléa © 2019 2
36

Les valeurs propres sont l1 = -1 + j , l2 = -1 - j ,


l3 = 2 .
% Code Matlab
Pour déterminer les zéros du système, on calcule A=[-1 1 1;-1 -1 1;0 0 2];
déterminant: B=[1 -1 2]';
C=[0 2 1]; D=1;
s + 1 -1 -1 -1 % ---------------
sI - A -B 1 s +1 -1 1 Val_prop=eig(A)
= = 8s + 12 % ---------------
C D 0 0 s - 2 -2 Poly_car=poly(A)
0 2 1 0 Val_prop=roots(Poly_car)
% ---------------
D'où le zéro du système est z1 = -3 / 2 . sys=ss(A,B,C,D)
% ---------------
Pour D = 1 , noud avons: Val_prop=pole(sys)
zeros=zero(sys)
s + 1 -1 -1 -1 % ---------------
[Val_prop,zeros]=pzmap(sys)
sI - A -B 1 s + 1 -1 1
= = s3 + 6s + 8 Figure 2.1. Calcul des valeurs propres et
C D 0 0 s - 2 -2 des zéros.
0 2 1 1
D'où les zéros du système sont z1 = 0.5536 - j 2.63 , z2 = 0.5536 + j 2.63 , z3 = -1.11 .

Matlab offre plusieurs commandes pour le calcul des valeurs propres et des zéros d'un
système comme indiquer sur la figure 2.1. On peut calculer les valeurs propres de A avec la
commande eig. On peut aussi passer par le calcul du polynôme caractéristique de A avec la
commande poly, puis calculer les racines du polynôme caractéristique avec la commande
roots. Une autre façon de faire est de définir un objet système sys, puis calculer ses zéros
avec la commande zero et calculer ses valeurs propres avec la commande pole. Il est
possible aussi de calculer les valeurs propres et les zéros du système avec la commande
pzmap.

3. De l'équation différentielle vers la représentation d'état


Les équations différentielles sont la représentation naturelle des systèmes dynamiques, et
ceci est dû essentiellement au fait que presque toutes les lois de la physique sont des
relations différentielles. Dans cette section, nous allons développer les méthodes utilisées
pour obtenir une représentation d'état à partir d'une représentation par équation
différentielle.
La forme générale d'un système LTI décrit par une équation différentielle d'ordre n est:

y (n) + a1 y (n-1) + a2 y (n-2) + ... + an-1 y + an y = b0u( n) + b1u(n-1) + ... + bn-1u + bnu (2.6)

Notons que, que si u(t ) est causal, alors la connaissance de y(0), y (0),, y (n-1) (0) et de
l'entrée u(t ) pour t ³ 0 détermine complètement le comportement futur du système.

Nous commencerons par un cas plus simple, celui d'un système sans zéros, avant d'attaquer
le cas général.
3.1 Système d'ordre n sans zéros
Considérons le système LTI représenté par une équation différentielle d'ordre n :

y (n) + a1 y (n-1) + a2 y (n-2) + ... + an-1 y + an y = bu (2.7)

N. Goléa © 2019 3
37

Avec les n variables d'état sélectionnées comme: x1 = y , x2 = y ,..., xn-1 = y ( n-2) , xn = y (n-1) ,
l'équation (2.7) peut être écrite comme:
x 1 = x2
x 2 = x3

(2.8)
xn-1 = xn
x n = -an x1 - ... - a1 xn + bu
y = x1

Soit sous forme matricielle:


é x ù é 0 1 0  0 ùé x ù
ê 1 ú ê ú ê 1 ú é0ù
ê x 2 ú ê 0 0 1  0 ú ê x2 ú ê ú
ê ú ê úê ú êú
ê ú=ê      úê  ú+ê úu (2.9)
ê ú ê úê ú ê0ú
ê x ú ê 0 0 0  1 úú êê xn-1 úú êê úú
ê n-1 ú ê
ê x ú ê-a -a êbú
ëê n ûú ëê n n-1 -an-2  -a1 úûú êëê xn úûú ë û

é x1 ù
ê ú
ê x2 ú
ê ú
y = [1 0  0 0 ] êê  úú
êx ú
ê n-1 ú
êx ú
êë n úû
Notons que la matrice D dans l'équation (2.9) est égale à zéro.
Exemple 3. Soit le système décrit par:
% Code Matlab
y ( 4) + 2 y(3) - y (2) + 3 y - 12 y = -3u %eq diff
a1=2;a2=-1;a3=3;a4=-12;b=-3;
Avec les variables d'état: x1 = y , x2 = y , A=[0 1 0 0;
0 0 1 0;
x3 = y, x4 = y (3) , on peut écrire: 0 0 0 1;
-a4 –a3 –a2 –a1];
x 1 = x2 B=[0 0 0 b]';
x 2 = x3 C=[1 0 0 0]; D=0;
Syst=ss(A,B,C,D)
x 3 = x4
x 4 = y (4) = -2 y (3) + y (2) - 3 y + 12 y - 3u
= 12x1 - 3x2 + x3 - 2x4 - 3u
y = x1
Soit sous la forme matricielle:
é x 1 ù é 0 1 0 0 ù é x1 ù é 0 ù
ê ú ê úê ú ê ú
ê x 2 ú ê 0 0 1 0 ú ê x2 ú ê 0 ú
ê ú ê ú ê ú + ê úu
ê ú=ê 0 1 úú êê x3 úú êê 0 úú
ê x3 ú ê 0 0
ê x ú ê12 -3 1 -2úûú êëê x4 úûú êëê-3úûú
ëê 4 ûú ëê
y = [1 0 0 0 ] x Figure 2.2. Exemple 3: a) script Matlab, b) Simulink.

avec la matrice D = 0 .

N. Goléa © 2019 4
38
3.2 Système d'ordre n avec zéros
Pour simplifier la démonstration, on considère un système LTI d'ordre 4 représenté par une
équation différentielle:

y (4) + a1 y (3) + a2 y (2) + a3 y + a4 y = b0u(4) + b1u(3) + b2u(2) + b3u + b4u (2.10)

Le problème principal dans la définition des variables d'état dans ce cas est la présence des
termes dérivées de l'entrée du côté droit de l'équation (2.10). Le choix des variables d'état
doit éliminer les dérivées de u des équations d'état.
a. Forme contrôlable
On définit la variable auxiliaire v tel que:

v(4) + a1v(3) + a2v(2) + a3v + a4v = u (2.11)

et

y = b0v(4) + b1v(3) + b2v(2) + b3v + b4v (2.12)


..
Avec la définition des variables d'état x1 = v, x2 = v , x3 = v, x4 = v(3) , nous avons:

x 1 = x2
x 2 = x3
(2.13)
x 3 = x4
x 4 = v(4) = -a4v - a3v - a2v(2) - a1v(3) + u = -a4 x1 - a3 x2 - a2 x3 - a1 x4 + u

D'un autre côté, l'utilisation de (2.12) dans (2.11) produit:


y = b0 (-a4 x1 - a3 x2 - a2 x3 - a1 x4 + u) + b1 x4 + b2 x3 + b3 x2 + b4 x1 (2.14)

Soit, après arrangement:


y = (b4 - b0a4 ) x1 + (b3 - b0a3 ) x2 + (b2 - b0a2 ) x3 + (b1 - b0a1 ) x4 + b0u (2.15)

Les équations (2.13) et (2.14) peuvent être mises sous la forme matricielle:
é x 1 ù é 0 1 0 0 ù é x1 ù é0ù
ê ú ê úê ú ê ú
ê x 2 ú ê 0 0 1 0 ú ê x 2 ú ê0 ú
ê ú=ê úê ú ê ú
ê x ú ê 0 0 0 1 ú ê x ú + ê0 ú u
ê ú ê 3 ú ê 3ú ê ú
ê x ú ê-a -a -a -a ú ê x ú ê1 ú
êë 4 úû êë 4 3 2 1 ûú êë 4 úû ëê úû (2.16)
é x1 ù
ê ú
ê x2 ú
y = éë(b4 - b0a4 ) (b3 - b0a3 ) (b2 - b0a2 ) (b1 - b0a1 )ùû êê úú + b0u
ê x3 ú
êx ú
êë 4 úû
Remarque 1. La représentation (2.14) est appelée forme canonique contrôlable ou forme
compagne ligne (puisque la dernière ligne de la matrice A est composée des cœfficients du
polynôme caractéristique). Si on inverse la numérotation des variables d'état, on abouti à une
deuxième forme compagne ligne avec les coefficients du polynôme caractéristique sur la
première ligne de A .
Remarque 2. Si b0 = 0 , alors (2.16) se réduit à:

N. Goléa © 2019 5
39

é x 1 ù é 0 1 0 0 ù é x1 ù é0ù
ê ú ê úê ú ê ú
ê x 2 ú ê 0 0 1 0 ú ê x 2 ú ê0 ú
ê ú=ê ú ê ú + ê úu (2.17)
ê x ú ê 0 0 0 1 úú êê x3 úú êê0úú
ê 3ú ê
ê x ú ê-a -a -a -a ú ê x ú ê1 ú
êë 4 úû êë 4 3 2 1 úû êë 4 úû êë úû

y = [ b4 b3 b2 b1 ] x % eq diff vers forme contrôlable


a1=2;a2=-1;a3=3;a4=-12;
Exemple 4. Soit le système: b0=2;b1=-2;b2=4;b3=-5;b4=-3;
A=[0 1 0 0;
.
y (4) + 2 y (3) - y (2) + 3 y- 12 y 0 0 1 0;
0 0 0 1;
.
= 2u(4) - 2u(3) + 4u(2) - 5 u- 3u -a4 –a3 –a2 –a1];
B=[0 0 0 1]; D=b0;
Par inspection, nous avons: a1 = 2 , C=[b4-b0*a4 b3-b0*a3 b2-b0*a2 b1-b0*a1];
Syst=ss(A,B,C,D)
a2 = -1 , a3 = 3 , a4 = -12 ,
b1 = -2 , b0 = 2 , b2 = 4 , b3 = -5 et
b4 = -3 .

Après calcul nous avons:


é x 1 ù é 0 1 0 0 ù é x1 ù é0ù
ê ú ê úê ú ê ú
ê x 2 ú ê 0 0 1 0 ú ê x2 ú ê0ú
ê ú=ê úê ú ê ú
ê x ú ê 0 0 0 1 ú ê x ú + ê0ú u
ê ú ê3 ú ê 3ú ê ú
ê x ú ê12 -3 1 -2ú ê x ú ê1 ú
êë 4 úû êë úû êë 4 úû êë úû
y = [ 21 -11 6 -6 ] x + 2 u
Figure 2.3. Exemple 4: forme contrôlable.
b. Forme observable
Nous commencerons par mettre l'équation (2.10) sous la forme:

y (4) = b0u(4) + (b1u(3) - a1 y (3) ) + (b2u(2) - a2 y (2) ) + (b3u - a3 y ) + (b4u - a4 y ) (2.18)

Pour obtenir la sortie, on doit intégrer 4 fois, soit:


é é é(b u - a y ) + (b u - a y )ù ù ù
y = b0u + ò ê(b1u - a1 y ) + ò ê(b2u - a2 y ) + ò êë 3 3 ò 4 4 úû úû úû (2.19)
ë ë
Comme déjà indiquer, les variables d'état sont les sorties des intégrateurs, ainsi:

x1 = ò (b4u - a4 y )

x2 = ò ((b3u - a3 y ) + x1 )
(2.20)
x3 = ò ((b2u - a2 y ) + x2 )

x4 = ò ((b1u - a1 y ) + x3 )

Ce qui donne comme équation de sortie:


y = x4 + b0u (2.21)

Après dérivation de (2.20) nous aurons:

N. Goléa © 2019 6
40

x 1 = -a4 y + b4u
x 2 = -a3 y + b3u + x1
(2.22)
x 3 = -a2 y + b2u + x2
x 4 = -a1 y + b1u + x3

En remplaçant, avec (2.21), dans les équations (2.22), nous obtiendrons:


x 1 = -a4 x4 + (b4 - a4 b0 ) u
x 2 = -a3 x4 + x1 + (b3 - a3b0 ) u
(2.23)
x 3 = -a2 x4 + x2 + (b2 - a2b0 ) u
x 4 = -a1 x4 + x3 + (b1 - a1b0 ) u

Ce qui peut se mettre sous la forme matricielle:


0 0 -a4 ù é x1 ù é(b4 - a4 b0 )ù
é x 1 ù é0
ê ú ê úê ú ê ú
0 0 -a3 ú ê x2 ú êê(b3 - a3b0 )úú
ê x 2 ú ê1
ê ú=ê úê ú+ u
ê x ú ê0
ê 3ú ê 1 0 -a2 úú êê x3 úú êê(b2 - a2b0 )úú
ê x ú ê0
êë 4 úû êë0 1 -a1 úúû êêë x4 úúû êëê (b1 - a1b0 ) úûú
(2.24)
é x1 ù
ê ú
ê x2 ú
y = [0 0 0 1] êê úú + b0u
ê x3 ú
ê ú
ëê x4 ûú
Remarque 3. La représentation (2.24) est appelée forme canonique observable ou forme
compagne colonne (puisque la dernière colonne de la matrice A est composée des
cœfficients du polynôme caractéristique). Si on inverse la numérotation des variables d'état,
on abouti à une deuxième forme compagne colonne avec les coefficients du polynôme
caractéristique sur la première colonne de A .
Remarque 4. Si b0 = 0 , alors (2.24) se réduit à:

é x 1 ù é0 0 0 -a4 ù é x1 ù é b4 ù
ê ú ê úê ú ê ú % eq diff vers forme observable
ê x 2 ú ê1 0 0 -a3 ú ê x2 ú ê b3 ú
ê ú=ê ú ê ú + ê úu a1=2;a2=-1;a3=3;a4=-12;
ê x ú ê0
ê 3ú ê 1 0 -a2 úú êê x3 úú êê b2 úú (2.23) b0=2;b1=-2;b2=4;b3=-5;b4=-3;
ê ú ê 0 1 -a1 ûúú ëêê x4 ûúú ëêê b1 ûúú
A=[0 0 0 -a4;
ëê x 4 ûú ëê0 1 0 0 –a3 ;
y = [0 0 0 1] x 0 1 0 -a2 ;
0 0 1 –a1];
Exemple 5. Soit le système de C=[0 0 0 1]; D=b0;
B=[b4-b0*a4 b3-b0*a3 b2-b0*a2 b1-b0*a1]';
l'exemple 4. Après calcul nous avons:
Syst=ss(A,B,C,D)
x 1 = 12x4 + 21u
x 2 = -3x4 + x1 - 11u
x 3 = x4 + x2 + 6u
x 4 = -2x4 + x3 - 6u

D'où, l'on peut écrire:

Figure 2.3. Exemple 5: forme observable.

N. Goléa © 2019 7
41

é x 1 ù é0 0 0 12 ù é x1 ù é 21 ù
ê ú ê úê ú ê ú
ê x 2 ú ê1 0 0 -3ú ê x2 ú ê-11ú
ê ú=ê úê ú+ê úu
ê x ú ê0 1 0 1 úú êê x3 úú êê 6 úú
ê 3ú ê
ê x ú ê0 0 1 -2úûú êêë x4 úúû êëê -6 úûú
êë 4 úû êë
y = [0 0 0 1] x + [ 2 ]u

4. De la fonction de transfert vers la représentation d'état


Plusieurs techniques sont valables pour obtenir la représentation d'état à partir de la
fonction de transfert des systèmes. Pour simplifier les calculs, nous ne considérerons que le
cas mono-entrée, mono-sortie. Considérons donc la fonction de transfert d'un système
mono-entrée, mono-sortie:
Y ( s) N ( s) b0 s 4 + b1 s 3 + b2 s 2 + b3 s + b4
G( s) = = = 4 (2.25)
U ( s) D( s) s + a1 s 3 + a2 s 2 + a3 s + a4

Dans ce qui suit, nous donnerons la représentation d'état de (2.25) dans les formes
canoniques suivantes : contrôlable, observable et modale.
4.1 Forme contrôlable
Pour le système (2.25), nous introduisons la variable auxiliaire (état partiel) V ( s) tel que:

D( s)V ( s) = U ( s) (2.26)

N ( s)V ( s) = Y ( s) (2.27)

U (s ) 1 V (s ) Y (s )
4 3 2 b0s 4 + b1s 3 + b2s 2 + b3s + b4
s + a1s + a 2s + a 3s + a 4

Figure 2.4. Définition de la variable auxiliaire V ( s) .

À partir de (2.26), nous avons:

s 4V ( s) + a1 s 3V ( s) + a2 s 2V ( s) + a3 sV ( s) + a4V ( s) = U ( s) (2.28)

Par la suite, on définit les variables d'état comme suit:


X1 ( s) = V ( s)
X2 ( s) = sV ( s)
(2.28)
X3 ( s) = s 2V ( s)
X4 ( s) = s 3V ( s)
Soit, après multiplication avec s :
sX1 ( s) = sV ( s) = X2 ( s)
sX2 ( s) = s 2V ( s) = X3 ( s)
sX3 ( s) = s 3V ( s) = X4 ( s) (2.29)
sX4 ( s) = s V ( s) = -a1 s V ( s) - a2 s V ( s) - a3 sV ( s) - a4V ( s) + U ( s)
4 3 2

= -a1 X4 ( s) - a2 X3 ( s) - a3 X2 ( s) - a4 X1 ( s) + U ( s)

A partir de (2.26) nous avons:

N. Goléa © 2019 8
42

Y ( s) = b0 s 4V ( s) + b1 s 3V ( s) + b2 s 2V ( s) + b3 sV ( s) + b4V (s)
= b0 (-a1 X4 ( s) - a2 X3 ( s) - a3 X2 (s) - a4 X1 ( s) + U (s)) (2.30)
+b1 X4 ( s) + b2 X3 ( s) + b3 X2 (s) + b4 X1 (s)

Soit, après arrangement:


Y ( s) = (b4 - b0a4 ) X1 ( s) + (b3 - b0a3 ) X2 ( s) + (b2 - b0a2 ) X3 ( s) + (b1 - b0a1 ) X4 ( s) + b0U ( s) (2.31)

La TL inverse de (2.29) et (2.31) fournit l'équation d'état:


x 1 = x2
x 2 = x3
(2.32)
x 3 = x4
x 4 = -a4 x1 - a3 x2 - a2 x3 - a1 x4 + u
et l'équation de sortie:
y = (b4 - a4 b0 ) x1 + (b3 - a3b0 ) x2 + (b1 - a1b0 ) x4 + b0u (2.33)

Soit, sous forme vectorielle:


é x ù é 0 1 0 0 ù é x1 ù é0ù
ê 1ú ê úê ú ê ú
ê x 2 ú ê 0 0 1 0 ú ê x 2 ú ê0ú
ê ú ê ú ê ú + ê úu
ê ú=ê 1 úú êê x3 úú êê0úú (2.34)
ê x3 ú ê 0 0 0
ê ú ê úê ú ê ú
ëê x 4 ûú ëê-a4 -a3 -a2 -a1 ûú ëê x4 ûú ëê1 ûú
y = [ b4 - a4 b0 b3 - a3b0 b2 - a2b0 b1 - a1b0 ] x + b0u

Exemple 6. Soit le système décrit par:


% G(s) vers forme contrôlable
Y ( s ) 2 s - 2s + 4 s - 5 s - 3
4 3 2 num=[2 -2 4 -5 -3]
= 4 den=[1 2 -1 3 -12]
U ( s) s + 2s 3 - s 2 + 3s - 12 G=tf(num,den)
[A,B,C,D]=tf2ss(num,den)
Avec la notation: a1 = 2, a2 = -1 , a3 = 3 , a4 = -12 , Sys=ss(A,B,C,D);
b0 = 2, b1 = -2 , b2 = 4, b3 = -5 et b4 = -3 , nous >>
avons les équations d'état: 2s^4 - 2s^3 + 4s^2 - 5s - 3
G = ----------------------------------
é x ù é 0 1 0 0 ù é x1 ù é0ù s^4 + 2s^3 - s^2 + 3s - 12
ê 1ú ê úê ú ê ú A=
ê x ú ê 0 0 1 0 ú ê x2 ú ê0ú
ê 2ú = ê ú ê ú + ê úu -2 1 -3 12
ê ú ê úê ú ê ú 1 0 0 0
ê x 3 ú ê 0 0 0 1 ú ê x 3 ú ê0 ú 0 1 0 0
ê ú ê úê ú ê ú
ëê x 4 ûú ëê12 -3 1 -2ûú êë x4 úû ëê1 úû 0 0 1 0
y = [ 21 -11 6 -6 ] x + [ 2]u B= 1
0
Sous Matlab, la commande tf2ss permet d'obtenir 0
la forme contrôlable. Remarquez que l'ordre des 0
C = -6 6 -11 21; D = 2
états est inversé.
Figure 2.4. Exemple 6: forme observable.
4.2 Forme observable
La fonction de transfert (2.48) peut être arrangée comme:

( s4 + a1 s3 + a2 s2 + a3 s + a4 )Y (s) = (b0 s 4 + b1 s3 + b2 s2 + b3 s + b4 )U (s) (2.35)

En rassemblant les termes du même ordre, nous obtiendrons:

N. Goléa © 2019 9
43

s 4 (Y ( s) - b0U ( s)) = s 3 (b1U ( s) - a1Y ( s)) + s 2 (b2U ( s) - a2Y ( s))


(2.36)
+s (b3U ( s) - a3Y ( s)) + (b4U ( s) - a4Y ( s))

Ensuite, on divise par s 4 , pour obtenir:


1 1
Y ( s) = b0U ( s) + éë(b1U ( s) - a1Y ( s)) + éë(b2U ( s) - a2Y ( s))
s s (2.37)
1é 1
+ ë(b3U ( s) - a3Y ( s)) + [ b4U ( s) - a4Y ( s)] ]ùû ûùú
s s
On définit les variables d'état comme les sorties des 4 intégrateurs successifs, soit:
1
X1 ( s) = (b4U ( s) - a4Y ( s))
s
1
X2 ( s) = (b3U ( s) - a3Y ( s) + X1 ( s))
s
(2.38)
1
X3 ( s) = (b2U ( s) - a2Y ( s) + X2 ( s))
s
1
X4 ( s) = (b1U ( s) - a1Y ( s) + X3 ( s))
s
La sortie est ainsi donnée par:
Y ( s) = b0U ( s) + X4 ( s) (2.39)

En multipliant les équations (2.38) par s et en remplaçant avec (2.39), on obtient:


sX1 ( s) = -a4 X4 ( s) + (b4 - a4 b0 )U ( s)
sX2 ( s) = -a3 X4 ( s) + X1 ( s) + (b3 - a3b0 )U ( s)
(2.40)
sX3 ( s) = -a2 X4 ( s) + X2 ( s) + (b2 - a2b0 )U ( s)
sX4 ( s) = -a1 X4 ( s) + X3 ( s) + (b1 - a1b0 )U ( s)

Dans le domaine temporel, les équations d'état sont:


x 1 = -a4 x4 + (b4 - a4 b0 ) u
x 2 = x1 - a3 x4 + (b3 - a3b0 ) u
(2.41)
x 3 = x2 - a2 x4 + (b2 - a2b0 ) u
x 4 = x3 - a1 x4 + (b1 - a1b0 ) u

et
y = x4 + b0u (2.42)

Les équations (2.41)-(2.42) peuvent être mises sous la forme matricielle:


é x 1 ù é0 0 0 -a4 ù é x1 ù é(b4 - a4 b0 )ù
ê ú ê úê ú ê ú
ê x ú ê1 0 0 -a3 ú ê x2 ú êê(b3 - a3b0 )úú
ê 2ú = ê úê ú+ u
ê ú ê
ê x 3 ú ê0 1 0 -a2 úú êê x3 úú êê(b2 - a2b0 )úú (2.43)
ê ú ê
ëê x 4 ûú ëê0 0 1 -a1 ûúú ëêê x4 ûúú ëêê(b1 - a1b0 ) ûúú
y = [0 0 0 1] x + b0u

Exemple 7. Le système de l'exemple 6 peut être écrit comme:

N. Goléa © 2019 10
44

é x 1 ù é0 0 0 12 ù é x1 ù é21 ù
ê ú ê úê ú ê ú
ê x ú ê1 0 0 -3ú ê x2 ú ê-11ú
ê 2ú = ê úê ú+ê úu
ê x 3 ú ê0 1 0 1 úú êê x3 úú êê6 úú
ê ú ê
ê ú ê 0 1 -2úûú ëêê x4 ûúú êëê-6 úûú
êë x 4 úû êë0
y = [0 0 0 1] x + [ 2 ]u

4.3 Forme modale


Pour l'obtention de la forme d'état modale, à partir de la fonction de transfert (2.48), nous
allons considérer deux situations possibles. La première est lorsque tous les pôles de (2.48)
sont simples (distincts), et la deuxième est lorsque (2.48) possède des pôles multiples.
a. Pôles simples
Cette forme est appelée forme modale, puisque les pôles du système (modes) apparaissent
sur la diagonale. La forme modale est très importante pour l'étude de beaucoup de
caractéristiques des systèmes linéaires et pour la résolution des équations d'état.
Exemple 8. Pôles simples
Soit le système décrit par:
Y ( s) 2s 4 + 5s 3 - 57 s 2 + 8s + 300
G( s) = = (2.44)
U ( s) s 4 - s 3 - 16 s 2 + 4 s + 48

Les pôles du système sont: p1 = 2, p2 = -2, p3 = -3 et p4 = 4 .

La décomposition en fractions simples donne:


Y ( s) c1 c2 c3 c4
= c0 + + + + (2.45)
U ( s) ( s + 2) ( s - 2) ( s + 3) ( s - 4)
avec
c0 = lim G( s) = 2
s¥

c1 = lim ( s + 2)G( s) = 2
s-2

c 2 = lim ( s - 2)G( s) = -4 (2.46)


s-2

c 3 = lim ( s + 3)G( s) = 6
s-2

c 4 = lim ( s - 4)G( s)
s-2

Ainsi, nous avons


Y ( s) 2 4 6 3
= 2+ - + + (2.47)
U ( s) s +2 s-2 s +3 s-4

Les variables d'état sont définies comme:

N. Goléa © 2019 11
45

1
X1 ( s) = U ( s)
( s + 2)
1
X2 ( s) = U ( s)
( s - 2)
(2.48)
1
X3 ( s) = U ( s)
( s + 3)
1
X4 ( s) = U ( s)
( s - 4)
Ce qui donne pour la sortie:
Y ( s) = 2U ( s) + 2X1 ( s) - 4 X2 ( s) + 6 X3 ( s) + 3X4 ( s) (2.49)

À l'aide de la TL inverse, on obtient:


x 1 = -2 x1 + u
x 2 = 2x2 + u
x 3 = -3 x3 + u (2.50) % G(s) vers forme modale
x 4 = 4 x4 + u n=4
num=[2 5 -57 8 300]
y = 2x1 - 4 x2 + 6 x3 + 3x4 + 2u den=[1 -1 -16 4 48]
G=tf(num,den)
Ce qui produit les équations d'état: %décompos en fractions simples
[coef,poles,c0]=residue(num,den)
é x ù é-2 0 0 0ù é x1 ù é1ù
ê 1ú ê úê ú ê ú %détermination de A,B,C,D
ê x ú ê 0 2 0 0ú ê x2 ú ê1ú A=diag(poles)
ê 2ú ê ú ê ú + ê úu
ê x ú = ê 0 0 -3 0úú êê x3 úú êê1úú
B=ones(1,n)'
ê 3ú ê C=coef'
ê x ú ê 0 0 4 ûúú ëêê x4 ûúú ëêê1ûúú
êë 4 ûú ëê 0 D=c0
(2.51) Sys = ss(A,B,C,D);
é x1 ù
ê ú %-------------------------
ê x2 ú %utilisation de la commande canon
y = [ 2 -4 6 3] êê úú + 2u Sys = canon(G,'modal');
ê x3 ú Figure 2.5. Exemple 8: Forme modale.
êx ú
ëê 4 ûú
Matlab fournit la commande residue pour opérer la décomposition en fractions simples.
Avec les cœfficients obtenus, on peut facilement établir le modèle d'état. La commande
canon peut aussi être utilisée, mais un résultat différent pour B et C .
b. Pôles multiples
Le cas des pôles multiples nécessite une modification de la définition des variables d'état,
comme illustré par l'exemple qui suit.
c. Exemple 9. Soit le système décrit par:

Y ( s) 2s5 + 16 s 4 + 49 s 3 + 72s 2 + 50s + 9


G( s) = = (2.52)
U ( s) s5 + 10 s 4 + 39s 3 + 74 s 2 + 68s + 24

Les pôles du système sont: un pôle triple p1 = -2 et deux pôles simples p2 = -3, p3 = -1 .

La décomposition en fractions simples donne:


c1 c2 c3 c4 c5
G( s) = c0 + + + + + (2.53)
( s + 2)
3
( s + 2)
2
( s + 2) ( s + 3) ( s + 1)

N. Goléa © 2019 12
46
avec
c0 = lim G( s) = 2
s¥

c1 = lim ( s + 2) G( s) = -3
3
s-2

d ( s + 2) G( s)
3

c 2 = lim = -2
s-2 ds (2.54)
d 2 ( s + 2) G( s)
3

c 3 = lim = -2
s-2 ds2
c 4 = lim ( s + 3)G( s) = 3
s-3

c 5 = lim ( s + 1)G( s) = 2
s-1

D'où:
Y ( s) 3 2 1 3 2
= 2+ 3 + 2 + - - (2.55)
U( s) ( s + 2 ) ( s + 2) s + 2 s + 3 s + 1
Soit encore:
3 2 1 3 2
Y ( s) = 2U( s) + 3 U ( s) + 2 U ( s) + U( s) - U( s) - U( s) (2.56)
( s + 2 ) ( s + 2 ) ( s + 2 ) ( s + 3) ( s + 1)

Pour les pôles simples, on définit les variables d'état:


1
X 4 ( s) = U( s)
( s + 3) % G(s) vers forme de Jordan
(2.57) n=5
1
X5 ( s) = U( s) num=[2 16 49 72 50 9]
( s + 1) den=[1 10 39 74 68 24]
[coef,poles,c0]=residue(num,den)
et pour le pôle triple: A=diag(poles);
1 B=ones(1,n)'; C=coef'; D=c0;
X 3 ( s) = U( s) % création des blocks de Jordan
( s + 2) for i=1:n-1
1 1 if A(i+1,i+1)==A(i,i)
X 2 ( s) = 2 U ( s) = X 3 ( s) (2.58) A(i,i+1)=1
( s + 2) ( s + 2) B(i)=0
1 1 end;
X1 ( s) = 3 U ( s) = X2 ( s) end;
( s + 2) ( s + 2) Sys = ss(A,B,C,D)
Ce qui donne pour la sortie: Figure 2.6. Exemple 9: forme de Jordan.

Y ( s) = 3X1 ( s) + 2X2 ( s) + X3 ( s) - 3X4 ( s) - 2X5 (s) + 2U( s) (2.59)

En utilisant la TL inverse, on trouve:


x 1 = -2x1 + x2
x 2 = -2x2 + x3
x 3 = -2x3 + u
(2.60)
x 4 = -3x4 + u
x 5 = -x5 + u
y = 3x1 + 2x2 + x3 - 3 x4 - 2x5 + 2u

N. Goléa © 2019 13
47
Ce qui produit les équations d'état:
é x ù é-2 1 0 0 0ù é x1 ù é0ù
ê 1ú ê úê ú ê ú
ê x 2 ú ê 0 -2 1 0 0 ú ê x 2 ú ê0 ú
ê ú ê úê ú ê ú
ê x ú = ê 0 0 -2 0 0úú êê x3 úú + êê1 úú u
ê 3ú ê (2.61)
ê x ú ê 0 0 0 -3 0úú êê x4 úú êê1 úú
ê 4ú ê
ê x ú ê 0 1 úûú êëê x5 úûú êëê1 úûú
ëê 5 ûú ëê 0 0 0
y = [ 3 2 1 -3 -2] x + 2u

La première sous-matrice 3´ 3 est un bloc de Jordan associé au pôle -2 de multiplicité 3 .


d. Pôles complexes
La présence de pôles complexes conjugués peut être traitée comme le cas des pôles simples,
mais cette approche donnera lieu à une représentation d'état avec des quantités complexes
difficiles à manipuler. Une approche consiste à traiter les pôles réels comme déjà développé
dans les deux cas précédents, et traiter les pôles complexes par les méthodes de la forme
contrôlable ou la forme observable, ce que nous voir à travers l'exemple suivant.
e. Exemple 10. Pôles complexes
Soit le système décrit par:
Y ( s) 2s 4 + 12s 3 + 36 s 2 + 56 s + 36
G( s) = = 4 (2.62)
U ( s) s + 7 s 3 + 18s 2 + 22s + 12

Les pôles du système sont: p1 = -2 , p2 = -3 , p3 = -1 + j , p4 = -1 - j .

La décomposition en fractions simples donne:


Y ( s) c c c s + c4 2 6 2s + 4
= c0 + 1 + + 2 + 2 3 = 2+ - + (2.63)
U ( s) s+2 s + 3 s + 2s + 2 s + 2 s + 3 s 2 + 2s + 2

D'où, nous avons


2 6 2s + 4
Y ( s) = 2U ( s) + U ( s) - U ( s) + 2 U ( s) (2.64)
s+2 s+3 s + 2s + 2
Pour les pôles réels, on prendra les variables d'état:
% G(s) avec pôles complexes
1 n=4;
X1 ( s) = U ( s) num=[2 12 36 56 36];
( s + 2) den=[1 7 18 22 12]
(2.65)
1 [coef,poles,b0]=residue(num,den)
X2 ( s) = U ( s) A=diag(poles);
( s + 3) B=ones(1,n)'; C=coef'; D=b0;
Sys=ss(A,B,C,D)
En utilisant la TL inverse, on trouve: >>
x 1 = -2x1 + u A = -3 0 0 0
(2.66) 0 -2 0 0
x 2 = -3x2 + u 0 0 -1+1i 0
0 0 0 -1-1i
Ou encore B = 1
1
é x 1 ù é-2 0 ù é x1 ù é1ù
ê ú=ê ú ê ú + ê úu (2.67) 1
ê x 2 ú ê 0 -3ú ê x2 ú ê1ú 1
ë û ë ûë û ë û C=-6 2 1+1i 1-1i; D =2
Pour les pôles complexes, on définit la sous-
Figure 2.7. Exemple 10: pôles complexes.

N. Goléa © 2019 14
48
fonction de transfert:
2s + 4
Y1 ( s) = U ( s) (2.68)
s 2 + 2s + 2
Ce qui donne pour la sortie:
Y ( s) = 2U ( s) + 2X1 ( s) - 6 X2 ( s) + Y1 ( s) (2.69)

La sous-fonction de transfert des pôles complexes peut facilement se mettre sous la forme
observable:
é x 3 ù é0 -2ù é x3 ù é4 ù
ê ú=ê ú ê ú + ê úu
ê x 4 ú ê1 -2ú ê x4 ú ê 2ú
ë û ë ûë û ë û (2.70)
é x3 ù
y1 = [0 1] ê ú = x4
ê x4 ú
ë û
et
y = 2x1 - 6 x2 + x4 + 2u (2.71)

Ce qui donne les équations d'état:


é x 1 ù é-2 0 0 0 ù é x1 ù é1 ù
ê ú ê úê ú ê ú
ê x ú ê 0 -3 0 0 ú ê x 2 ú ê1 ú
ê 2ú = ê ú ê ú + ê úu
ê ú ê 0 -2úú êê x3 úú êê4 úú (2.72)
ê x3 ú ê 0 0
ê x ú ê 0 1 -2ûúú êëê x4 úûú ëêê 2ûúú
ëê 4 ûú ëê 0
y1 = [ 2 -6 0 1] x + 2u

5. De la représentation d'état vers la fonction de transfert


La transformée de Laplace des équations (2.1)-(2.2) produit:
sX ( s) - x(0) = AX ( s) + BU ( s)
(2.73)
Y ( s) = CX ( s) + DU ( s)

Pour obtenir la fonction de transfert de (2.73), nous supposons que x(0) = 0 . Ainsi, nous
avons
( sI - A) X ( s) = BU ( s) (2.74)

Comme ( sI - A) est toujours inversible, la multiplication des deux côtés (2.74) par ( sI - A)-1
donne:

X ( s) = ( sI - A)-1 BU ( s) (2.75)

En substituant l'équation (2.75) dans l'équation (2.73b), nous obtenons:

Y ( s) = [C ( sI - A)-1 B + D]U ( s) (2.76)

Enfin, nous avons:


Y ( s)
G( s) = = C ( sI - A)-1 B + D (2.77)
U ( s)

Cette dernière équation est la fonction de transfert en terme de A , B , C et D .

N. Goléa © 2019 15
49
Notons que (2.77) peut être réécrite comme : % des eqs d'état vers G(s)
n=2
adj[ sI - A] A=[4 2; 2 1];B=[1 1]';C=[0 2];D=1;
G( s) = C B+ D (2.78) % calcul numérique
sI - A [num,den]=ss2tf(A,B,C,D)
G=tf(num,den)
Exemple 11. Fonction de transfert à partir des % calcul symbolique
équations d'état syms s
Soit le système donné par: G=C*inv(s*eye(n)-A)*B+D
simplify(G)
é4 2ù é1ù >>
A= ê ú , B = ê ú , C = [ 0 2 ], D = 1 G=(s^2-3*s-4)/(s*(s-5))
ê 2 1ú ê1ú
ë û ë û
Figure 2.8. Exemple 11: fonction de transfert.
Les calculs sont comme suite:
és - 4 -2 ù
[ sI - A] = êê ú
ë -2 s - 1úû

s-4 -2
sI - A = = s ( s - 5)
-2 s -1

é s -1 2 ù
adj [ sI - A] = ê ú
ê 2 s - 4 úû
ë
Enfin,
és -1 2 ù é1ù
[0 2] êê úê ú
adj [ sI - A] ë 2 s - 4 úû êë1úû 2( s - 2) ( s + 1)( s - 4)
G ( s) = C B+ D = +1 = +1 =
sI - A s ( s - 5) s ( s - 5) s ( s - 5)

On peut aussi exploiter la méthode de calcul des zéros de la représentation d'état:


s-4 -2 -1
sI - A -B -2 s - 1 -1
C D 0 2 1 ( s + 1)( s - 4)
G (s) = = =
sI - A s ( s - 5) s ( s - 5)

Exemple 12. Fonction de transfert du circuit électrique du chap. 1.


Les équations d'état du circuit électrique établies au chapitre 1 sont:

é x ù é- 1 - C11 ù é x1 ù é RC1 1 ù
0
ê 1 ú êê RC1 úê ú ê ú
ê ú 1 úê ú ê ú
ê x2 ú = ê 0 0 C2 ú ê x 2 ú + ê 0 ú u
ê x ú êê 1 - L1
ú ê ú
0 ûú ëê x3 ûú ëê 0 ûú
ë 3û ë L
é x1 ù
ê ú
y = [1 -1 0 ] êê x2 úú
êx ú
ë 3û
Sa fonction de transfert se calcule comme suit:

N. Goléa © 2019 16
50

é s + RC1 0 ù 1
ê 1 ú C1

[ sI - A ] = êê 0 s - úú 1
C2
ê -1 1
s úû
ë L L

% G(s) exemple 12
1 2 1 æç 1 1ö 1
sI - A = s3 + s + çç + ÷÷÷ s + n=3
RC1 L è C1 C2 ø÷ LRC1C2 syms s R C1 C2 L real
A=[-1/(R*C1) 0 -1/C1;
é s2 + 1 1
- Cs1 ù
ê LC2 LC1 ú 0 0 1/C2;
ê ú 1/L -1/L 0];
C2 ( s + RC1 )
ê
adj[ sI - A ] = LC2 1
s2 + RC1 1 s + LC1 1 1 1 ú
ê ú B=[1/(R*C1) 0 0]';C=[1 -1 0];D=0;
ê 1 ú G=C*inv(s*eye(n)-A)*B+D
ê Ls - L1 ( s + RC1 1 ) s + RC1 s ú
2 1
ë û expand(G)
>>
D'où: G=(C2*L*s^2)/(C1*C2*L*R*s^3
+C2*L*s^2 +(C1+C2)*R*s+1)
é s2 + 1 ù
ê LC2 ú
Figure 2.9. Exemple 12: fonction de transfert.
1 ê 1 ú
adj[ sI - A] B = RC1 ê LC2 ú,
ê ú
ê s1 ú
ëê L ûú
é s2 + 1 ù
ê LC2 ú
ê 1 ú
Cadj[ sI - A] B = RC1 [1 -1 0 ] ê LC2
1
ú= s2
RC1
ê ú
ê1 s ú
ëê L ûú
Enfin:
1
RC1 s2
G( s) =
s 3 + RC1 1 s 2 + L1 ( C11 + C12 ) s + LRC11C2

Exemple 13. Système multi-variable


La représentation d'état de la machine CC du chapitre 1 est donnée par:
é R ù
ê- -r kLb 0ú
é x 1 ù ê ê L ú éx ù é 1 ù é0 ù
ê ú ê k ú ê 1ú êLú ê ú
ê x 2 ú = ê r Jm - b úê ú ê ú % G(s) exemple 13
ê ú ê 0ú ê x2 ú + ê0 ú u + êê- 1J úú d n=3
ê ú J úê ú ê ú ê0 ú
ë x 3 û êê 0
syms s R L kb km J b r real
0úú ë 3 û êë úû
x 0 êë úû
1 A=[-R/L -r*kb/L 0;
ê ú r*km/J -b/J 0;
ë û
0 1 0]; B1=[1/L 0 0]';
y = [ 0 0 1] x Bd=[0 -1/J 0]'; C=[0 0 1];
Gyu=C*inv(s*eye(n)-A)*B
Les calculs nécessaires pour établir ses fonctions Gyd=C*inv(s*eye(n)-A)*Bd
de transfert sont: simplify(Gyu)
simplify(Gyd)
és + R rkb
0ùú
ê L L >>
ê rkm ú Gyu=(km*r)/(s*(J*L*s^2 +
[ sI - A] = ê - J s + Jb 0ú (J*R+L*b)*s + R*b+kb*km*r^2))
ê ú
ê 0 -1 sú Gyd=-(R+L*s)/(s*(J*L*s^2 +
êë úû (J*R+L*b)*s +R*b+kb*km*r^2))
æR b ÷ö 2 Rb + r 2kb km
sI - A = s 3 + ççç + ÷s + s Figure 2.10. Exemple 13: fonction de transfert.
èL J ø÷ JL

N. Goléa © 2019 17
51

é s 2 + 1 bs - rkb s 0 ù
ê J L ú
ê rkm ú
adj [ sI - A] = ê J s s +Ls
2 R
0 ú
ê ú
ê rkm s+ L R
s + ( L + J ) s + JL ( Rb + r kb km )úú
2 R b 1 2
êë J û

C.adj [ sI - A] = éê Jm
ë
rk
s + RL s 2 + ( LR + Jb ) s + JL
1
( Rb + r 2kbkm )ùúû
La fonction de transfert entrée-sortie:

Y ( s ) C .adj [ sI - A] B rkm
Gyu ( s ) = = = JL
U ( s) sI - A (
s s 2 + ( RL + Jb ) s + Rb+JL
r 2kb km
)
La fonction de transfert perturbation-sortie:
Y ( s ) C.adj [ sI - A] Bd - 1J ( s + RL )
Gyd ( s ) = = =
D ( s) sI - A (
s s 2 + ( RL + Jb ) s + Rb+JL
r 2kb km
)
Ainsi, la sortie est définie comme:
Y ( s ) = Gyu ( s )U ( s ) + Gyd ( s ) D ( s )
rkm
- 1J ( s + RL )
= JL
U ( s) + D( s)
(
s s 2 + ( RL + Jb ) s + Rb+JL ) (
s s 2 + ( RL + Jb ) s + Rb+JL )
2 2
r kb km r kb km

6. Changement de représentation d'état


Considérons le système linéaire donné par les équations d'état:
x = Ax + Bu
(2.79)
y = Cx + Du

Avec A Î Â n´n , B Î Â n´r ,C Î Â m´n , D Î Â m´r .

Si on opère le changement de variables x = Tz , où T est une matrice de passage ou de


transformation (c'est-à-dire carrée et inversible), alors, l'utilisation de x = Tz dans
l'équation d'état (2.79) produit:
Tz = ATz + Bu
(2.80)
y = CTz + Du

La multiplication de l'équation d'état (2.80) par T -1 donne:


z = T -1 ATz + T -1 Bu
(2.81)
y = CTz + Du
Si on pose
A = T -1 AT
B = T -1 B
(2.82)
C = CT
D=D

N. Goléa © 2019 18
52
Le système (2.81) s'écrit alors comme:
z = Az + Bu
(2.83)
y = Cz + Du
qui est bien une représentation d'état.
Ainsi, un système linéaire possède autant de représentations d'état qu'il existe de matrices de
passage T . Bien sûr certaines représentations sont préférables suivant l'application visée.
Remarque 5. Si nous disposons de deux représentations d'état données par (2.79) et (2.83),
sensées représenter un même système, la matrice de passage qui relie ces deux
représentations peut être obtenue en résolvant le système d'équations algébriques:
T A = AT
TB = B (2.84)
C = CT

où les n2 inconnues sont les coefficients tij de la matrice de passage T . Puisque ce système
d'équations est linéaire en les coefficients tij , sa résolution est aisée.

6.1 Forme contrôlable


Nous allons illustrer le passage d'une représentation d'état quelconque vers la forme
canonique contrôlable à travers le système (2.79) d'ordre 4, dont le polynôme caractéristique
est donné par:

l I - A = l 4 + a1l 3 + a2l 2 + a1l + a4 (2.85)

La forme contrôlable correspondante est donnée par:

z = Az + Bu (2.86)
avec
é 0 1 0 0 ù é0 ù
ê ú ê ú
ê 0 0 1 0 ú ê0 ú
A = êê ú ,B = ê ú (2.87)
ê 0 0 0 1 úú ê0 ú
ê ú
ê-a -a -a -a ú ê1ú
êë 4 3 2 1 ûú êë ûú

Si on écrit la matrice de transformation comme T = [t1 t2 t3 t4 ] , où ti , i = 1,2,3,4 sont les


vecteurs colonnes de T , et en utilisant les relations (2.84), nous aurons:
é 0 1 0 0 ù
ê ú
ê 0 0 1 0 ú
[t1 t2 t3 ê
t4 ] ê ú = A[t1 t2 t3 t4 ]
0 0 0 1 ú
ê ú
ê-a -a -a -a ú
ëê 4 3 2 1 úû
(2.88)
é0 ù
ê ú
ê0 ú
[t1 t2 t3 t4 ] êê úú = B
ê0 ú
ê1 ú
êë úû
Ce qui peut être décomposé comme:

N. Goléa © 2019 19
53
-a4t4 = At1
t1 - a3t4 = At2
(2.89)
t2 - a2t4 = At3
t3 - a1t4 = At4

et
t4 = B (2.90)

De l'équation (2.90) nous avons déjà t4 = B . Ainsi, en partant de la dernière équation de


(2.89), nous avons:
t3 = a1t4 + At4 = a1 B + AB
t2 = a2t4 + At3 = a2 B + A(a1 B + AB)
= a2 B + a1 AB + A2 B (2.91)
t1 = a3t4 + At2 = a3 B + A(a2 B + a1 AB + A B) 2

= a3 B + a2 AB + a1 A2 B + A3 B

Par suite, le résultat (2.91) peut être arrangé comme:


é a3 ù é a2 ù
ê ú ê ú
ê a2 ú ê a1 ú
t1 = éë B AB A B A Bùû êê úú , t2 = éë B AB A B A Bùû êê úú
2 3 2 3

ê a1 ú ê1ú
ê1ú ê0ú
ëê ûú ëê ûú
(2.92)
é a1 ù é 1ù
ê ú ê ú
3 ùê ú
ê1ú ê0ú
3 ùê ú
é é
t3 = ë B AB A B A Bû ê ú , t4 = ë B AB A B A Bû ê ú
2 2

ê0ú ê0ú
ê0ú ê0ú
ëê ûú êë úû
En utilisant le résultat (2.92), la matrice T peut être écrite comme:
é a3 a2 a1 1ù
ê ú
ê a2 a1 1 0ú
T = éë B AB A B A Bùû êê
2 3 ú (2.93)
ê a1 1 0 0úú
ê1 0úúû
êë 0 0

Exemple 14. Soit le système:


é 1 0 2ù é 1ù
ê ú ê ú
A = êê 1 -1 1úú , B = êê 0úú , C = [ 0 1 0 ]
ê 0 -1 0 ú ê 1ú
ë û ë û
Le polynôme caractéristique est l I - A = l 3 + 1 . D'où a1 = 0, a2 = 0, a3 = 1 . La matrice de
passage est solution d:
-a3t3 = At1
t1 - a2t3 = At2
t2 - a1t3 = At3

N. Goléa © 2019 20
% calcul numérique 54
n=3
é 1ù
ê ú A=[1 0 2; 1 -1 1; 0 -1 0];
t3 = B = êê 0úú B=[1 0 1]';C=[0 1 0];D=0;
ê 1ú % formules (2.82) et (2.93)
ë û M=[B A*B A^2*B]; M=ctrb(A,B); det(M)
a=poly(A); a(1)=[];
Donc: W=[a(2) a(1) 1; a(1) 1 0;1 0 0]
é 3ù T=M*W
ê ú Ab=T\A*T;Bb=T\B;Cb=C*T;
t2 = a1 B + AB = êê 2úú % commande ss2ss
ê 0ú Sys = ss(A,B,C,D);
ë û Sysb=ss2ss(Sys,inv(T))
é 3ù % calcul symbolique
ê ú A=sym([1 0 2; 1 -1 1; 0 -1 0]);
t1 = a2 B + A ( a1 B + AB) = êê 1 úú B=sym([1 0 1]'); C=sym([0 1 0]);
ê-2ú D=sym(0);
ë û
M=[B A*B A^2*B]; det(M)
Ainsi nous avons a=sym(charpoly(A)); a(1)=[];
W=[a(2) a(1) 1; a(1) 1 0; 1 0 0]
é 3 3 1ù T=M*W
ê ú
T = êê 1 2 0úú
Ab=T\A*T;Bb=T\B;Cb=C*T;
ê-2 0 1ú Figure 2.11. Exemple 14: forme contrôlable.
ë û
D'une manière directe, on peut montrer que:
é a2 a1 1ù é 1 3 3 ù é 0 0 1 ù é 3 3 1ù
ê ú ê úê ú ê ú
T = éë B AB A Bùû êê a1
2
1 0úú = êê 0 2 1 úú êê 0 1 0úú = êê 1 2 0úú
ê1 0 0úû êë 1 0 -2úû êë 1 0 0úû êë-2 0 1úû
ë
On vérifie que:
é 2 -3 -2ù é 1 0 2ù é 3 3 1ù é 0 1 0ù
1 êê úê úê ú ê ú
-1
A = T AT = ê-1 5 1 úú êê 1 -1 1úú êê 1 2 0úú = êê 0 0 1úú
7ê úê úê ú ê ú
ë 4 -6 3 û ë 0 -1 0û ë-2 0 1û ë-1 0 0û
é 2 -3 -2ù é 1ù é 0ù
1 êê úê ú ê ú
-1
B = T B = ê-1 5 1 úú êê 0úú = êê 0úú
7ê úê ú ê ú
ë 4 -6 3 û ë 1û ë 1û
é 3 3 1ù
ê ú
C = CT = [ 0 1 0 ] êê 1 2 0úú = [1 2 0 ]
ê-2 0 1ú
ë û
Sous Matlab, on peut programmer les formules de transformation ou utiliser la commande
ss2ss. Il faut remarquer que Matlab utilise la relation z = Tx , soit x = T -1 z , aussi pour un
résultat correct, on doit fournir la matrice inverse T -1 . Noter que la matrice peut être
calculée directement avec la commande M=ctrb(A,B). Le calcul numérique produit un
résultat avec les erreurs d'arrondi, alors que le calcul symbolique produit exactement le
résultat obtenu manuellement.
Exemple 15. Soit le système:
é0 1 0ù é0ù
ê ú ê ú
A = êê 0 0 1úú , B = êê 0úú , C = [1 1 0 ]
ê-2 -1 5ú ê 1ú
ë û ë û

N. Goléa © 2019 21
55
La matrice de contrôlabilité est donnée par:
é0 0 1 ù
ê ú
é 2 ù
M = ëê B AB A B ûú = êê0 1 5 úú
ê1 5 24 ú
ë û
Comme M = -1 ¹ 0 , on peut opérer le passage vers la forme contrôlable.

Le polynôme caractéristique est l I - A = l 3 - 5l 2 + l + 2 , d'où a1 = -5, a2 = 1, a3 = 2 . Ainsi,


on obtient:
éa2 a1 1 ù é 1 -5 1 ù
ê ú ê ú
W = êê a1 1 0úú = êê-5 1 0úú
ê1 0 0úû êë 1 0 0úû
ë
Ce qui donne:
é 0 0 1 ù é 1 -5 1ù é 1 0 0ù
ê úê ú ê ú
T = MW = êê 0 1 5 úú êê-5 1 0úú = êê 0 1 0úú
ê 1 5 24 ú ê 1 0 0úû êë 0 0 1úû
ë ûë
D'où nous avons: A = A , B = B et C = C .

Ce résultat était prévisible puisque le système est déjà sous la forme contrôlable.
Généralisation. Pour généraliser le résultat précédent, on considère le système (2.79)
d'ordre n . Le polynôme caractéristique de la matrice A est donné par:
l I - A = l n + a1l n-1 + a2l n-2 + ... + an-1l + an (2.94)

Sa transformation sous la forme contrôlable via la matrice T donne la forme suivante:


é 0 1 0 ... 0 ù é0ù
ê ú ê ú
ê 0 0 1  ú êú
ê ú ê ú
ê
x = ê     0 ú x + êê úú u
ú (2.95)
ê 0 0 ... 0 1 úú ê0ú
ê ê ú
ê-a -a ú
... -a2 -a1 úû ê 1ú
ëê n n-1 ëê ûú
où la matrice de transformation T est donnée par: T = MW avec

M = éë B AB  A n-1 Bùû ,
é an-1 an-2  a1 1ù
ê ú
ê an-2  a1 1 0ú
ê ú (2.96)
W = êê    0  úú
ê a 1  ú
ê 1 ú
ê 1 0  0 0úûú
ëê
Remarque 6. Pour que T soit inversible, il faut que M (appelée matrice de contrôlabilité)
soit inversible, car W est, d'après sa structure, toujours inversible.
6.2 Forme observable
Pour commencer, considérons le système (2.79) d'ordre 4. La forme observable

N. Goléa © 2019 22
56
correspondante est donnée par:
z = Az + Bu
(2.97)
y = Cz

avec
é0 0 0 -a4 ù
ê ú
ê1 0 0 -a3 ú
A = êê ú , C = [ 0 0 0 1] (2.98)
ê0 1 0 -a2 úú
ê0 0 1 -a1 úûú
ëê
D'un autre côté, nous pouvons écrie (2.82) comme:
AT -1 = T -1 A
(2.99)
CT -1 = C

Si on écrit la matrice de transformation inverse comme:


é t1 ù
ê ú
êt 2 ú
T = êê úú
-1
(2.100)
ê t3 ú
êt ú
ëê 4 ûú
où ti , i = 1, 2, 3, 4 sont les vecteurs lignes de T -1 . Alors, l'utilisation des relations (2.99),
produit:
é0 0 0 -a4 ù é t1 ù é t1 ù
ê úê ú ê ú
ê1 0 0 -a3 ú êt2 ú êt2 ú
ê úê ú=ê úA
ê0 1 0 -a2 úú êêt3 úú êêt3 úú
ê
ê0 -a1 úúû êêët4 úúû êêët4 úúû
êë 0 1
(2.101)
é t1 ù
ê ú
êt 2 ú
C = [ 0 0 0 1] êê úú
êt 3 ú
êt ú
ëê 4 ûú
Ce qui peut être décomposé comme suit:
t4 = C
t3 = a1t4 + t4 A
(2.102)
t 2 = a2 t 4 + t 3 A
t1 = a3t4 + t2 A

Ainsi, en partant de la première équation de (2.102), nous avons:


t3 = a1t4 + t4 A = a1C + CA
t2 = a2t4 + t3 A = a2C + ( a1C + CA) A = a2C + a1CA + CA 2 (2.103)
t1 = a3t4 + t2 A = a3C + ( a2C + a1CA + CA ) A = a3C + a2CA + a1CA + CA
2 2 3

Par suite, le résultat (2.103) peut être arrangé comme:

N. Goléa © 2019 23
57

é C ù é C ù
ê ú ê ú
ê CA ú ê CA ú
t1 = [ a3 a2 a1 1] êê 2 úú , t2 = [ a2 a1 1 0 ] êê 2 úú
êCA ú êCA ú
ê 3ú ê 3ú
êëCA úû êëCA úû
(2.104)
é C ù é C ù
ê ú ê ú
ê CA ú ê CA ú
t3 = [ a1 1 0 0 ] ê 2 ú , t4 = [1 0 0 0 ] ê 2 úú
ê ú ê
êCA ú êCA ú
ê 3ú ê 3ú
ëêCA ûú ëêCA ûú
En utilisant le résultat (2.104), la matrice T -1 peut être écrite comme:
éa3 a2 a1 1 ù êé C úù
ê ú
êa2 a1 1 0ú êê CA úú
T -1 = êê ú = WN T (2.106)
ê a1 1 0 0úú êêCA2 úú
ê1 ê ú
ëê 0 0 0úûú êCA3 ú
ë û
-1 -1
Remarque 7. Pour que la matrice T = (WN T ) = ( N T ) W -1 existe, il faut que N T (matrice
d'observabilité transposé) soit inversible, car W est, d'après sa structure, toujours inversible.
Exemple 16. Soit le système:
é0 1 0ù é0ù
ê ú ê ú
ê
A=ê 0 0 1ú , B = êê 0úú , C = [1 1 0 ]
ú
ê-2 -1 5ú ê 1ú
ë û ë û
La matrice NT est donnée par:
é C ù é 0 1 0ù
ê ú ê ú
N = êê CA úú = êê 1 -1 1úú
T

êCA 2 ú ê 0 0 1ú
ë û ë û

avec le déterminant NT = -1 .

La matrice W est donnée par:


é 0 0 1ù
ê ú
W = êê 0 1 0úú
ê 1 0 0ú
ë û
D'où nous obtenons:
é 0 0 1ù é 0 1 0 ù é 0 0 1ù
ê úê ú ê ú
T = WN = êê 0 1 0úú êê 1 -1 1úú = êê 1 -1 1úú ,
-1 T

ê 1 0 0 ú ê 0 0 1ú ê 0 1 0 ú
ë ûë û ë û
é-1 1 1ù
ê ú
T = êê 0 0 1úú
ê 1 0 0ú
ë û

N. Goléa © 2019 24
58
On peut facilement vérifier que: % calcul numérique
n=3
é0 0 -1ù A=[0 1 0; 0 0 1; -2 -1 5];
ê ú B=[0 0 1]';C=[1 1 0]; D=0;
A = T AT = êê 1
-1
0 0 úú % formules (2.82) et (2.106)
ê0 1 0 úû NT=[C; C*A; C*A^2]; NT=obsv(A,C);
ë
det(NT)
C = CT = [ 0 0 1] a=poly(A); a(1)=[];
W=[a(2) a(1) 1; a(1) 1 0; 1 0 0]
Exemple 17. Soit le système: Tinv=W*NT; T=inv(Tinv)
Ab=Tinv*A*T;Bb=Tinv*B;Cb=C*T;
é0 1 0ù é0ù % commande ss2ss
ê ú ê ú
A = êê 0 0 1úú , B = êê 0úú , C = [1 1 0 ] Sys = ss(A,B,C,D);
Sysb=ss2ss(Sys,Tinv)
ê-2 -1 5ú ê 1ú
ë û ë û % calcul symbolique
A=sym([0 1 0;0 0 1;-2 -1 5]);
Après calcul, nous avons: B=sym([0 0 1]'); C=sym([1 1 0]);
D=sym(0);
é C ù
ê ú é1 1 0ù NT=[C; C*A; C*A^2]; det(NT)
ê CA ú ê ú a=sym(charpoly(A)); a(1)=[];
N = êê 2 úú = êê 0
T
1 1úú , W=[a(2) a(1) 1; a(1) 1 0; 1 0 0]
êCA ú ê-2 -1 6 ú Tinv=W*NT; T=inv(Tinv)
êCA 3 ú ë û
ëê ûú Ab=Tinv*A*T;Bb=Tinv*B;Cb=C*T;
é a2 a1 1ù é 1 -5 1ù Figure 2.12. Exemple 17: forme observable.
ê ú ê ú
W = êê a1 1 0úú = êê-5 1 0úú
ê 1 0 0ú ê 1 0 0úû
ë û ë
La matrice de transformation inverse est :
é 1 -5 1ù é 1 1 0ù é-1 -5 1ù é-1 -5 1ù é-1 1 -1 ù
ê úê ú ê ú ê ú 1 êê ú
T -1 ê ú
= ê-5 1 0ú ê 0ê 1 1ú = ê-5 -4 1ú , T = ê-5 -4 1ú = - ê 1 -1 -4 úú
ú ê ú ê ú
ê1 5ê
ë 0 0úû êë-2 -1 6 úû êë 1 1 0úû ê1
ë 1 0úû ú
ë-1 -4 -21û
On peut vérifier que:
é-1 -5 1ù é 0 1 0ù é-1 1 -1 ù é 0 0 -2ù
ê úê ú -1 ê ú ê ú
A = T AT = êê-5 -4 1úú êê 0
-1
0 1úú ê 1 -1 -4 ú = ê 1 0 -1ú
ê ú ê ú
ê1 1 0 ú ê-2 -1 5ú 5 ê-1 -4 -21ú ê 0 1 5 ú
ë ûë û ë û ë û
é-1 -5 1ù é 0ù é 1ù
ê úê ú ê ú
B = T -1 B = êê-5 -4 1úú êê 0úú = êê 1úú
ê1 1 0úû êë 1úû êë 0úû
ë
é-1 1 -1 ù
-1 êê ú
C = CT = [1 1 0 ] ê 1 -1 -4 úú = [ 0 0 1]
5 ê ú
ë-1 -4 -21û
Généralisation
Pour généraliser le résultat précédent, on considère le système d'ordre n donné par:
x = Ax + Bu
(2.107)
y = Cx + Du

Le polynôme caractéristique est donné par:

N. Goléa © 2019 25
59

l I - A = l n + a1l n-1 + a2l n-2 + ... + an-1l + an (2.108)

Sa transformation sous la forme observable (ou forme compagne colonne) via la matrice T
donne la forme suivante:
z = Az + Bu
(2.109)
y = Cz + Du
avec
é0 0  0 -an ù
ê ú
ê1 0  0 -an-1 ú
ê ú
A = êê 0 1   -an-2 úú , C = [ 0 ... 0 1] (2.110)
ê  0  úú
ê
ê0  -a1 úûú
ëê 0. 1
-1
La matrice de transformation est donnée par la formule: T = (WNT ) , avec W déjà définie
dans (2.96), et:
é C ù
ê ú
ê CA ú
ê ú
N T = êê CA2 úú
ê ú
ê  ú
ê n-1 ú
êëCA úû
(2.111)
Remarque 8. Pour que T soit inversible, il faut que N T (appelée matrice d'observabilité
transposée) soit inversible.
6.3 Forme modale
La forme modale est intéressante du fait qu'elle met en évidence les valeurs propres (modes)
du système et facilite ainsi l'étude de la stabilité. Elle facilite aussi l'étude des propriétés de
contrôlabilité et d'observabilité du système (comme on le verra par la suite).
a. Valeurs propres simples
Considérons le système linéaire d'ordre n donné par:
.
x = Ax + Bu (2.112)
Si ce système possède n valeurs propres distinctes l1 , l2 ,.., ln , données par la solution de:

l I - A = l n + a1l n-1 + a1l n-1 + .. + an-1l + an = 0 (2.113)

Alors, les vecteurs propres associés à ces valeurs propres vérifiés les équations suivantes:
Avi = li vi , i = 1..n (2.114)

D'où les vecteurs propres sont solution des équations,


[ A - li I ]vi = 0, i = 1..n (2.115)

Remarque 10. Le rang de la matrice [ A - li I ] est égal à (n- 1) , donc il y a (n- 1) solutions

N. Goléa © 2019 26
60

possibles, et comme les valeurs propres l1 , l2 ,.., ln sont distinctes, alors les vecteurs propres
v1 , v2 ,.., vn sont linéairement indépendants.

Si la matrice de transformation T est choisie de la forme:


T = [ v1 v2 ... vn ] (2.116)

La matrice T est non singulière, et la forme modale est donnée par:


él 0  0 ù
ê 1 ú
ê 0 l2   ú
-1 ê
A = T AT = ê ú , B = T -1 B, C = CT , D = D (2.117)
   0 ú
ê ú
ê0  0 l ú
ëê n úû

Cette forme est appelée aussi forme diagonale, puisque, comme A a n valeurs propres
distinctes, elle peut être transformée sous forme diagonale.
Plusieurs méthodes analytiques et numériques sont disponibles pour calculer les vecteurs
propres. Dans ce qui suit, on développera la méthode analytique directe et la méthode basée
sur la matrice adjointe.
Exemple 18. Soit le système donné par:
é-1 1ù é 1ù
A=ê ú , B = ê ú , C = [1 1] ,
ê-8 5ú ê 2ú
ë û ë û
Le polynôme caractéristique est donné par:
l +1 -1
lI - A = = l 2 - 4l + 3
8 l-5

Les valeurs propres sont les racines du polynôme caractéristique, soit, l1 = 1, l2 = 3.

Les vecteurs propres associés à ces valeurs propres sont donnés par les solutions de:
[ A - l1 I ]v1 = 0
[ A - l2 I ]v2 = 0
Soit:
é-2 1 ù é v11 ù é 0ù é 1ù
ê ú ê ú = ê ú  v1 = ê ú
ê-8 4 úû êë v12 úû êë 0 úû ê 2ú
ë ë û
é-4 1ù é v21 ù é 0ù é 1ù
ê ú ê ú = ê ú  v2 = ê ú
ê-8 ú ê ú ê ú
2û ë v22 û ë 0 û ê 4ú
ë ë û
Ce qui donne:
é 1 1 ù -1 1 é 4 -1ù
T = [ v1 v2 ] = ê ú ,T = ê ú
ê 2 4ú 2 êë-2 1 úû
ë û
On peut montrer que
é 3 0ù
A = T -1 AT = ê ú
ê 0 1ú
ë û

N. Goléa © 2019 27
61

1 é 4 -1ù é 1ù é 1ù
B = T -1 B = ê úê ú=ê ú
2 êë-2 1 úû êë 2úû êë 0úû

é1 1ù
C = CT = [1 1] ê ú = [3 5]
ê2 4ú
ë û
Exemple 19. Soit le système donné par:
é-2 1 -1ù é1ù
ê ú ê ú
A = êê-1 0 1 úú , B = êê-1úú , C = [ 2 -1 1]
ê-2 2 -1ú ê0ú
ë û ë û
Le polynôme caractéristique est:
-2 - l 1 -1
A - l I = -1 -l 1 = -( s + 1)(s + 3)( s - 1)
-2 2 -1 - l

Les valeurs propres sont : l1 = -1, l2 = -3, l3 = 1 . Les vecteurs propres associés à ces valeurs
propres sont donnés par :
é-1 1 -1ù é v11 ù é 0ù
ê úê ú ê ú
1. [ A - l1 I ] v1 = êê-1 1 1 úú êê v12 úú = êê 0úú
ê-2 2 0 ú ê v ú ê 0ú
ë û ë 13 û ë û
Ou encore:
-v11 + v12 - v13 = 0
-v11 + v12 + v13 = 0
-2v11 + 2v12 = 0

Si on fixe v11 = v12 = 1  v13 = 0 . Une solution possible est:

é 1ù
ê ú
v1 = êê 1úú
ê 0ú
ë û
é 1 1 -1ù é v21 ù é 0ù
ê úê ú ê ú
2. [ A - l2 I ] v2 = êê-1 3 1 úú êê v22 úú = êê 0úú
ê-2 2 2 ú ê v ú ê 0ú
ë û ë 23 û ë û
Soit:
v21 + v22 - v23 = 0
-v21 + 3v22 + v23 = 0
-2v21 + 2v22 + 2v23 = 0

Si on fixe v22 = 0  -v21 + v23 = 0 . Une solution possible est:

N. Goléa © 2019 28
62
% forme modale
é 1ù n=3
ê ú
v2 = êê 0úú
A=[-2 1 -1; -1 0 1;-2 2 -1];
B=[1 -1 0]'; C=[2 -1 1];D=0;
ê 1ú
ë û % calcul numérique
lambda=roots(poly(A))
é-3 1 -1ù é v31 ù é 0ù v1=null(A-lambda(1)*eye(n))
ê úê ú ê ú v2=null(A-lambda(2)*eye(n))
3. [ A - l3 I ] v3 = êê-1 -1 1 úú êê v32 úú = êê 0úú v3=null(A-lambda(3)*eye(n))
ê-2 2 -2ú ê v ú ê 0ú T=[v1 v2 v3]
ë û ë 33 û ë û Ab=T\A*T;Bb=T\B;Cb=C*T;
Soit: % commande ss2ss
Sys=ss(A,B,C,D);
-3v31 + v32 - v33 = 0 Sysb=ss2ss(Sys,inv(T))
% commande canon
-v31 - v32 + v33 = 0 Sys=ss(A,B,C,D);
-2v31 + 2v32 - 2v33 = 0 Sysb=canon(Sys,'modal')
% commande eig
Si on fixe v31 = 0 d’où v32 - v33 = 0 . J=eig(A)
[T,J]=eig(A)
Une solution possible est: [T,J]=eig(vpa(A))
% commande jordan
é0ù Ab=jordan(A)
ê ú
v3 = êê 1úú [T,Ab]=jordan(A)
Bb=T\B;Cb=C*T;
ê 1ú
ë û Figure 2.13. Exemple 19: forme modale.
La matrice modale est :
é1 1 0ù é-1 -1 1 ù
ê ú -1 1 ê ú
T = êê1 0 1 úú ,T = - êê-1 1 -1úú
ê0 1 1 ú 2ê ú
ë û ë 1 -1 -1û
Ce qui donne:
é-1 -1 1 ù é-2 1 -1ù é1 1 0ù é-1 0 0ù
1 êê úê úê ú ê ú
A = T AT = - ê-1 1 -1úú êê-1 0 1 úú êê1 0 1 úú = êê 0 -3 0úú
-1
2ê úê úê ú ê
ë 1 -1 -1û ë-2 2 -1û ë0 1 1 û ë 0 0 1úû

é-1 -1 1 ù é1 ù é0 ù
1 êê úê ú ê ú
B = T B = - ê-1 1 -1úú êê-1úú = êê1 úú
-1
2ê úê ú ê ú
ë 1 -1 -1û ë0 û ë-1û
é1 1 0ù
ê ú
C = CT =[ 2 -1 1] êê1 0 1 úú =[1 3 0 ]
ê ú
ë0 1 1 û
Matlab propose plusieurs commandes pour le calcul de la forme modale. On peut
programmer le calcul des valeurs et vecteurs propres, ou on peut utiliser la commande eig
ou canon. La commande jordan fournit un résultat plus précis.
Pour la méthode de la matrice adjointe, on commence par calculer la matrice adjointe:

N. Goléa © 2019 29
63

él 2 - l - 2 -l - 1 l + 1 ùú
ê
ê ú
adj [ A - l I ] = ê l - 3 l - 3l
2
3-l ú
ê ú
ê 2l - 2 2 - 2l l 2 - 2l + 1úû
ë
En remplaçant avec la valeur propre li , i = 1,2,3 dans l'une des colonnes de adj[ A - l I ] on
obtient le vecteur propre associé vi , i = 1,2,3 . Ainsi:

é 2 ù é ù é0 ù
êl1 - l1 - 2ú ê 0 ú ê ú
ê l - 3 ú = ê-4 ú  v = ê1 ú
ê 1 ú ê ú 1 ê ú
ê 2l - 2 ú ê-4 ú ê1 ú
êë 1 úû ë û ë û
é 2 ù é ù é1ù
êl2 - l2 - 2ú ê-2ú ê ú
ê l - 3 ú = ê-2ú  v = ê1ú
ê 2 ú ê ú 2 ê ú
ê 2l - 2 ú ê 0 ú ê0ú
êë 2 úû ë û ë û
é 2 ù é ù é1 ù
êl3 - l3 - 2ú ê4 ú ê ú
ê l - 3 ú = ê 0 ú  v = ê0 ú
ê 3 ú ê ú 3 ê ú
ê 2l - 2 ú ê4 ú ê1 ú
ëê 3 ûú ë û ë û
D'où, on obtient:
é 1 1 1ù
ê ú
T = êê 1 0 1úú
ê-1 1 2ú
ë û
b. Valeurs propres multiples (Forme de Jordan)
Si le polynôme caractéristique (2.113) admet n solutions (valeurs propres) non distinctes,
alors la matrice A n'est pas forcément diagonalisable.
Si la matrice A admit k valeurs propres li , i = 1, 2,.., k , ayant un ordre de multiplicité ni tel
que n1 + n2 + .. + nk = n , la matrice de Jordan quasi-diagonale associée à A est de la forme:

é J1 (l1 ) 0 ... 0 ù
ê ú
ê 0  ú
ê ú
ê  J (l )   ú
ê q1 1 ú
A = T AT = êê 
-1
 ú
ú (2.117)
ê J (l ) ú
ê 1 k ú
ê ú
ê  0 ú
ê ú
êë 0  0 J qk (lk )úû

où chaque J qi (li ) est un block de Jordan associé à la valeur propre li . Le nombre de blocks
de Jordan noté qi associés à la valeur propre li est égal à la dimension l'espace propre E(li )
engendré par cette valeur propre, et qui est donnée par:
dim [ E(li ) ] = n - ri (2.118)

avec ri = rg [ A - li I ] (rg signifié rang de la matrice).

N. Goléa © 2019 30
64

D'autre par la somme des dimensions des blocks de Jordan associés à une valeur propre li
est égale à sa multiplicité ni .

La construction de la matrice de Jordan suit les étapes suivantes:


1) Déterminer les valeurs propres de multiplicité supérieure à 1.
2) Déterminer pour ces valeurs propres le nombre de blocks de Jordan associés et leurs
dimensions. Trois cas possible se présentent:
a) Dégénérescence simple: qi = 1 ce qui donne lieu à un seul block pour une valeur
propre.
b) Dégénérescence partielle: 1 < qi < ni ce qui donne plus d'un block de Jordan pour une
valeur propre.
c) Dégénérescence totale: qi = ni ce qui donne lieu à ni blocks de dimension ( 1´1) pour
une valeur propre. La matrice de Jordan est alors diagonale.
Exemple 20. Dégénérescence simple
Soit le système:
é-2 1 0 ù é 1 -1ù
ê ú ê ú
A = êê-1 0 1 úú , B = êê 0 1 úú , C = [1 1 0 ]
ê 0 0 -1ú ê0 2 ú
ë û ë û
Son équation caractéristique est
-2 - l 1 0
A - l I = -1 -l 1 = (1 + l )3
0 0 -1 - l

Ce qui donne une valeur propre l1 = -1 de multiplicité n1 = n = 3.

Le rang de la matrice
é-1 1 0ù
ê ú
[ A - l1 I ] = êê-1 1 1úú
ê 0 0 0ú
ë û
est r1 = 2. Ce qui implique que le nombre de blocks de Jordan associés à l1 est
q1 = n - r1 = 1. Donc, on est dans le cas de la dégénérescence simple et avec un seul block de
dimension 3. La matrice de Jordan est alors:
él1 1 0 ù é-1 1 0ù
ê ú ê ú
A = êê 0 l1 1 úú = êê 0 -1 1 úú
ê0 0 l ú ê 0 0 -1úû
ë 1û ë

Pour le calcul des vecteurs propres, on utilisera la relation de transformation AT = T A , où


T = [ v1 v2 v3 ] est la matrice de transformation construite à partir des vecteurs propres
associés à l1 .

La relation AT = T A est développée comme:

N. Goléa © 2019 31
65

él1 1 0 ù
ê ú
A [ v1 v2 v3 ] = [ v1 v2 v3 ] êê 0 l1 1 úú
ê0 0 l ú
ë 1û

Soit encore, sous forme décomposée:


Av1 = v1l1
Av2 = v2l1 + v1
Av3 = v3l1 + v2

Qu'on peut écrire aussi comme:


[ A - l1 I ]v1 = 0
[ A - l1 I ]v2 = v1
[ A - l1 I ] v3 = v2
On voit facilement que v1 est solution de la première équation, que v2 est fonction de v1 et
que v3 est fonction de v2 .

En introduisant la valeur de l1 nous avons:

é-1 1 0ù
ê ú
ê-1 1 1ú v1 = 0
ê ú
ê 0 0 0ú
ë û

Soit v1 = [1 1 0 ] .
T

Pour la deuxième équation:


é-1 1 0ù é 1ù
ê ú ê ú
ê-1 1 1ú v2 = ê 1ú
ê ú ê ú
ê 0 0 0ú ê0ú
ë û ë û

Soit v2 = [ 0 1 0 ] .
T

Pour la troisième équation:


é-1 1 0ù é0ù
ê ú ê ú
ê-1 1 1ú v3 = ê 1ú
ê ú ê ú
ê 0 0 0ú ê0ú
ë û ë û

Soit v3 = [ 0 0 1] .
T

La matrice T est alors:


é 1 0 0ù é 1 0 0ù
ê ú -1 ê ú
T = êê 1 1 0úú ; T = êê-1 1 0úú
ê 0 0 1ú ê 0 0 1ú
ë û ë û
D'où, on peut transformer le système sous la forme modale:

N. Goléa © 2019 32
66
é 1 0 0ù é-2 1 0 ù é 1 0 0ù é-1 1 0ù
ê úê úê ú ê ú
A = T AT = ê-1 1 0ú ê-1 0 1 ú ê 1 1 0ú = ê 0 -1 1 úú
-1 ê ú ê ú ê ú ê
ê 0 0 1ú ê 0 0 -1ú ê 0 0 1ú ê 0 0 -1úû
ë ûë ûë û ë
é 1 -1ù
ê ú
B = T B = êê-1 2 úú
-1

ê0 2 úû
ë
C = CT = [ 2 1 0 ]

Pour la méthode de la matrice adjointe, on procède comme suit:


La matrice adjointe est donnée par:
él 2 + l l +1 1 ù
ê ú
ê ú
adj [ A - l I ] = ê-l - 1 l + 3l + 2
2
l+2 ú
ê ú
ê 0 0 l 2 + 2l + 1úû
ë
Comme le remplacement avec la valeur l = -1 dans la première et deuxième colonnes de
adj [ A - l I ] produit des vecteurs nuls, on utilisera la troisième colonne pour avoir:

é 1 ù é1 ù
ê ú ê ú
ê
v1 = ê l + 2 ú ú = êê1 úú
ê 2 ú ê 0ú
ëêl + 2l + 1úû l=-1 ë û
é 1 ù é 0 ù é0ù
d êê ú
ú
ê ú ê ú
v2 = ê l+2 ú = êê 2 úú = êê2úú
dl ê 2 ú ê ú ê ú
êël + 2l + 1úû l=-1 ë2l + 2û l=-1 ë0û

Et
é 0 ù é0 ù
d êê ú ê ú
v3 = ê 2 úú = êê0úú
dl ê ú ê ú
ë2l + 2û l=-1 ë2û
Après simplification, nous avons:
é1 0 0ù
ê ú
T = êê1 1 0úú
ê0 0 1 ú
ë û
Exemple 21. Dégénérescence partielle
Soit la matrice d'évolution:
é-2 -1 -1ù
ê ú
A = êê 1 0 1 úú
ê0 0 -1úû
ë
Son équation caractéristique est

N. Goléa © 2019 33
67

-2 - l -1 -1
A - lI = 1 -l 1 = -(l + 1)3
0 0 -1 - l

Qui admet une valeur propre triple l1 = -1 de multiplicité n1 = n = 3. Le rang de la matrice

é-1 -1 -1ù
ê ú
[ A - l1 I ] = êê 1 1 1 úú
ê0 0 0 úû
ë
est r1 = 1 . Ce qui implique que le nombre de blocks de Jordan associés à l1 est
q1 = n - r1 = 2. Donc, on est dans le cas de la dégénérescence partielle, avec deux blocks de
Jordan de dimensions ( 2 ´ 2) et (1´1) . La matrice de Jordan est alors

é-1 1 0ù
ê ú
A = êê 0 -1 0 úú
ê0 0 -1úû
ë

é-1 0 0ù
ê ú
A = ê 0 -1 1 úú
ê
ê0 0 -1úû
ë
é-2 - l -1 -1 ù
ê ú
ê
[ A - lI ] = ê 1 -l 1 úú
ê 0 0 -1 - l úû
ë
é-1 -1 -1ù év11 ù é0ù
ê úê ú ê ú
[ A - l1 I ]v1 = êê 1 1 1 úú êêv12 úú = êê0úú
ê 0 ûú ëêv13 ûú ëê0ûú
ë0 0

Ou encore:
v11 + v12 + v13 = 0

Une solution possible est:


é1ù
ê ú
v1 = êê 0 úú
ê-1ú
ë û
é-1 -1 -1ù év21 ù é0ù
ê úê ú ê ú
[ A - l1 I ]v2 = ê 1 1 1 úú êêv22 úú = êê0úú
ê
ê 0 ûú ëêv23 ûú ëê0ûú
ë0 0

Ou encore:
v21 + v22 + v23 = 0

Une solution possible est:

N. Goléa © 2019 34
68

é1ù
ê ú
v2 = êê-1úú
ê0ú
ë û
[ A - l1 I ]v3 = v2
é-1 -1 -1ù év31 ù é 1 ù
ê úê ú ê ú
ê1 1 1 úú êêv32 úú = êê-1úú
ê
ê0 0 0 úû êëv33 úû êë 0 úû
ë
Ou encore:
-v31 - v32 - v33 = 1

Une solution possible est:


é1ù
ê ú
v3 = êê-1úú
ê-1ú
ë û
La matrice d e transformation est alors:
é1 1 1ù é1 1 0ù
ê ú -1 ê ú
ê ú ê
T = ê 0 -1 -1ú ,T = ê 1 0 1 úú
ê-1 0 -1ú ê-1 -1 -1ú
ë û ë û
D'où
é1 1 0 ù é-2 -1 -1ù é 1 1 1 ù é-1 0 0ù
ê úê úê ú ê ú
A = T AT = êê 1
-1
0 1 úú êê 1 0 1 úú êê 0 -1 -1úú = êê 0 -1 1 úú
ê-1 -1 -1ú ê 0 0 -1úû êë-1 0 -1úû êë 0 0 -1úû
ë ûë
Exemple 22. Dégénérescence totale
Soit la matrice d'évolution:
é1 2 2ù
ê ú
A = êê 1 2 -1úú
ê-1 1 4 ú
ë û
Son équation caractéristique est
1-l 2 2
A - lI = A = 1 2-l -1 = -(l - 1)(l - 3)2
-1 1 4 -l

Ce qui donne une valeur propre simple l1 = 1 et une valeur propre l2 = 3 de multiplicité
n2 = 2 . Le rang de la matrice

é-2 2 2ù
ê ú
[ A - 3I ] = êê 1 -1 -1úú
ê-1 1 1 úû
ë

N. Goléa © 2019 35
69

est r2 = 1 . Ce qui implique que le nombre de blocks de Jordan associés à l2 est


q2 = n - r2 = 2 . Donc, on est dans le cas de la dégénérescence totale,. La matrice de Jordan
est alors:
é 1 0 0ù
ê ú
A = êê 0 3 0úú
ê 0 0 3ú
ë û
Les vecteurs propres associés sont les solutions des équations:
[ A - l1 I ] v1 = 0
[ A - l2 I ] v2 = 0
[ A - l2 I ] v3 = 0
En introduisant la valeur de l1 nous avons:

0 2 2
1 1 -1 v1 = 0
-1 1 3

Soit v1 = [ 2 -1 1] .
T

Pour la deuxième équation:


é-2 2 2ù
ê ú
ê 1 -1 -1ú v2 = 0
ê ú
ê-1 1 1 ú
ë û

Soit v2 = [1 1 0 ] .
T

Pour la troisième équation:


é-2 2 2ù
ê ú
ê 1 -1 -1ú v3 = 0
ê ú
ê-1 1 1 úû
ë

Soit v3 = [1 0 1] .
T

La matrice T est alors:


é 2 1 1ù é 1 -1 -1ù
ê ú -1 1 ê ú
T = ê-1 1 0ú ,T = êê 1
ê ú 1 -1úú
ê 1 0 1ú 2ê
ë û ë-1 1 3 úû

D'où, on peut transformer la matrice A sous la forme modale:


é 1 -1 -1ù é 1 2 2 ù é 2 1 1ù é1 0 0ù
1 êê úê úê ú ê ú
-1
A = T AT = ê 1 1 -1úú êê 1 2 -1úú êê-1 1 0úú = êê0 3 0úú

ë-1 1 3 úû êë-1 1 4 úû êë 1 0 1úû êë0 0 3úû

Remarque 11. Pour le cas des valeurs propres multiples, les commandes eig et canon ne

N. Goléa © 2019 36
70
donnent pas le résultat escompté. Sous Matlab, il est nécessaire d'utiliser la commande
jordan pour obtenir la forme de Jordan.

7. Équivalence des représentations d'état


Les deux représentation d'états (2.103) et (2.108) sont équivalentes, puisqu'elles ont les
mêmes valeurs propres (c-à-d le même comportement du point de vue stabilité), et les
mêmes propriétés de contrôlabilité et d'observabilité.
Cette propriété peut être démontrée par le calcul des fonctions de transfert des deux
représentation et montrer qu'elles sont les mêmes.
Soit pour le système d'origine (2.79):
-1
G( s) = C [ sI - A ] B + D (2.119)

Pour le système transformé (2.81), nous avons:


-1
G( s) = C éëê sI - Aùûú B + D (2.120)

En utilisant les relations (2.107), on obtient:


-1 -1
G( s) = CT éë sTT -1 - TAT -1 ùû T -1 B + D = CT éëT ( sI - A)T -1 ùû T -1 B + D
-1
(2.121)
= CTT -1 [( sI - A)] TT -1 B + D = C [ sI - A ] B + D = G( s)
-1

Ce qui prouve que les deux représentations sont équivalentes.


Exemple 23. Soit le système:
é 6 2 2ù é 1ù
ê ú ê ú
A = ê-2 2 0ú , B = êê 0úú , C = [1 -1 2 ]
ê ú
ê 0 0 2ú ê 1ú
ë û ë û
Dont les trois représentations canoniques sont:
é0 1 0ù é0ù
ê ú ê ú
ê
A=ê 0 0 1 ú , B = êê 0úú , C = [ 32 -16 3 ]
ú
ê 32 -32 10ú ê 1ú
ë û ë û
é 0 0 32 ù é 32 ù
ê ú ê ú
A = ê 1 0 -32ú , B = êê-16 úú , C = [ 0 0 1]
ê ú
ê 0 1 10 ú ê 3 ú
ë û ë û
et
é 4 1 0ù é-1ù
ê ú 1 ê ú
A = êê 0 4 0 úú ; B = êê 2 úú , C = [16 8 12 ]
ê 0 0 2ú 4ê ú
ë û ë1û
Les fonctions de transfert des quatre représentations sont identiques:
s3 + 3s2 - 16 s + 32
G( s) = C( sI - A)-1 B = G( s) = C( sI - A)-1 B =
( s - 4 ) ( s - 2)
2

Ce qui prouve l'équivalence des quatre représentations.

N. Goléa © 2019 37
71

Chapitre 3

Réponse et stabilité des systèmes LTI

1. Introduction
Quelle que soit la forme adoptée pour la représentation d'état, un système linéaire
invariant est décrit par un ensemble de n équations différentielles du premier ordre.
Pour évaluer le comportement d'un système, il faut donc résoudre ces équations d'état et
simuler le résultat pour une entrée u(t ) donnée.

Un autre aspect très important de l'étude des systèmes est la stabilité. La stabilité d'un
système peut être détecté à travers l'inspection de l'expression de sa réponse. Cependant,
il existe des méthodes qui permettent de cerner la stabilité d'un système sans recourir au
calcul de sa réponse.
L'objectif de ce chapitre est axé sur les trois points suivants:
1. calcul de l'expression analytique de la réponse d'un système LTI, et ceci en utilisant
des méthodes temporelles et de Laplace. Dans ce point, il sera mis en évidence les
propriétés et les méthodes de calcul de la matrice de transition.
2. calcul des réponses d'un système LTI pour différentes signaux tests à l'entrée: libre,
impulsionnelle, échelon, rampe.
3. déterminer le type de stabilité du système par inspection de ses valeurs propres et par
la méthode Lyapunov.

2. Solution générale de l'équation d'état


Considérons le système d‘ordre n décrit par :
x (t ) = Ax(t ) + Bu(t )
(3.1)
y(t ) = Cx(t ) + Du(t )

Avec A Î Â n´n , B Î Â n´m ,C Î Â r´n , D Î Â r´m .


Le problème de la réponse du système (3.1) consiste à déterminer, pour un état initial
x(t0 ) = [ x1 (t0 ) x2 (t0 ) ... xn (t0 )] et une entrée donnée u(t ) , l'expression temporelle de
T

x(t ) .

Si on écrit l'équation (3.1) comme:


.
x(t ) - Ax(t ) = Bu(t ) (3.2)

et on multiplie les deux côtés de (3.2) par e- At , on obtient:


. d - At
e- At [ x(t ) - Ax(t )] = [e x(t )] = e- At Bu(t ) (3.3)
dt
L'intégration de l'équation (3.3) entre t0 et t donne:

N. Goléa © 2019 3-1


72
t
t
e- At x(t ) = e- At x(t ) - e- At0 x(t0 ) = ò e- At Bu(t )dt (3.4)
t0
t0

En multipliant les deux côtés de (3.4) par e At il advient:


t

x(t ) = e A(t-t0 ) x(t0 ) + ò e A(t-t ) Bu(t )dt (3.5)


t0

L'équation (3.5) exprime la réponse d'état x(t ) comme une somme de deux termes, le
premier terme est dû à l'état initial x(t0 ) , et le second terme est dû au signal d'entrée
u(t ) . D'où le premier terme est appelé réponse d'état pour une entrée nulle ou réponse
libre; de même, le deuxième terme est appelé réponse d'état un état initiale nul ou
réponse forcée.

Si on utilise la notation f(t ) = e At (d'où f(t - t0 ) = e A(t-t0 ) ), on remarque, qu'on peut


écrire (3.5) comme:
t

x(t ) = f(t - t0 ) x(t0 ) + ò f(t - t )Bu(t )dt (3.6)


t0

Remarque 1. La réponse forcée représente une intégrale de convolution f(t ) * Bu(t )


entre f(t ) et Bu(t ) .

La réponse en sortie peut être calculée à partir de l'équation de sortie et de (3.6), ce qui
donne :
t

y(t ) = Cx(t ) + Du(t ) = Cf(t - t0 ) x(t0 ) + C ò f(t - t )Bu(t )dt (3.7)


t0

Le premier terme représente la réponse libre du système qui est due aux conditions
initiales x(t0 ). Le deuxième terme représente la réponse forcée due à l'action de l'entrée
de commande u(t ) .

3. Propriétés et calcul de la matrice de transition


3.1 Propriétés
At
La matrice f(t ) = e est désignée sous le nom de matrice de transition car elle établie la
correspondance entre l'état du système à l'instant t et son état à l'instant t0 . La matrice
de transition f(t ) possède les propriétés suivantes :

1) f(0) = e A0 = I n

2) f-1 (t ) = f(-t ) = e- At (ainsi f(t ) est inversible "t )

3) f(t1 + t2 ) = e A(t1 +t2 ) = e At1 e At2 = f(t1 )f(t2 ) = f(t2 )f(t1 )

4) [f(t )]n = f(nt ) = e nAt

5) f(t2 - t1 )f(t1 - t0 ) = f(t1 - t0 )f(t2 - t1 ) = f(t2 - t0 )

N. Goléa © 2019 3-2


73

6) f (t ) = Af(t ) = f(t ) A ( f(t ) et A commutent par rapport à la multiplication


matricielle).
3.2 Calcul de la matrice de transition
Le calcul de la matrice de transition f (t ) pose le problème majeur de la solution des
équations d'état, puisqu'il faut évaluer la valeur temporelle de l'exponentiel matricielle.
Plusieurs algorithmes sont proposés dans la littérature pour résoudre ce problème.
a. Méthode de la Transformée de Laplace
La propriété de dérivation:

f (t ) = Af(t ) (3.8)

représente une équation différentielle matricielle avec la condition initiale f(0) = I .


L’utilisation de la TL produit:
sF ( s ) - I n = AF ( s ) (3.9)

Avec F ( s ) = TL éëf (t )ùû .

Ainsi, nous avons


[ sI - A]F ( s ) = I n (3.10)

Ce qui donne:
-1
F ( s ) = [ sI n - A] (3.11)

Enfin, on peut écrire (3.11) comme:

-1 adj[ sI n - A]
F ( s ) = [ sI n - A] = (3.12)
sI n - A

Exemple 1. Soit la matrice d'évolution:


é-2 0 ù
A= ê ú
ê 1 -1ú
ë û
On commence par la détermination de F ( s ) .

és + 2 0 ù
[ sI - A] = êê ú
ë -1 s + 1úû
s+2 0
sI - A = = ( s + 1)( s + 2)
-1 s + 1
és + 1 0 ù
adj [ sI - A] = ê ú
ê 1 s + 2úû
ë
Ainsi

-1 1 és + 1 0 ù éê s+1 2 0ù
ú
F ( s ) = [ sI - A] = ê ú=
( s + 1)( s + 2) êë 1 s + 2úû êê ( s+1)(1 s+2) 1 ú
s+1 ú
ë û
Pour déterminer f (t ) , on commence par la décomposition de F ( s ) en fractions simples:

N. Goléa © 2019 3-3


74

é 1

F ( s ) == êê 1 s+2 1 1 ú
ú
ë s+1 - s+2 s+1 û

Enfin, l'utilisation de la TL inverse donne:


é e-2t 0 ùú
f (t ) = êê -t -2t ú
ëêe - e e-t ûú

Exemple 2. Soit la matrice d'évolution


é-2 1 -1ù
ê ú
A = êê-1 0 1 úú
ê-2 2 -1ú
ë û
On commence par la détermination de F ( s) .

és + 2 -1 1 ù
ê ú
[ sI - A] = êê 1 s -1 úú
ê 2 -2 s + 1úû
ë
s+2 -1 1
sI - A = 1 s -1 = ( s + 1)( s + 3)( s - 1)
2 -2 s + 1
é( s + 2)( s - 1) s -1 -( s - 1)ùú
ê
ê ú
adj [ sI - A] = ê -( s + 3) s ( s + 3) s+3 ú
ê ú
ê -2( s + 1) 2( s + 1) ( s + 1) úû
2
ë
Ainsi
é s+2
ù
ê 1 - (s+3)1 s+1 ú
ê (s+3)( s+1) (s+3)( s+1) ( )ú
-1 adj[ sI - A] ê ú
F ( s ) = [ sI - A] = = ê- s-1 1 s+1 s 1 ú
sI - A ê ( )( ) ( s-1)( s+1) ( s-1)( s+1) ú
ê ú
ê- 2 2 s+1 ú
êë (s+3)( s-1) ( s+3)( s-1) ( s+3)( s-1) úû

La décomposition de F ( s ) en fractions simples produit:

é 1 + 1 1
- 2(s1+3) 1
- 2( s1+1) ùú
ê 2( s+1) 2(s+3) 2( s+1) 2( s+3) % Calcul de e^(At)
ê ú
F ( s ) = ê 2( s1+1) - 2( s1-1) 1
+ 2(s1+1) 1
- 2(s1+1) ú syms s t;
ê 2( s-1) 2( s-1) ú n=3;
ê 1 - 1 1
- s+1 3 1
+ 1 ú A = [-2 1 -1;-1 0 1;-2 2 -1];
êë s+3 s+1 s +1 2( s-1) 2( s + 3) úû
% définir Phi(s)=(sI-A)^-1.
Phi=inv(s*eye(n)-A)
L'utilisation de la TL inverse donne: % matrice de transition.
ée-t + e-3t e-t - e-3t e-3t - e-t ùú
phi=ilaplace(Phi,s,t)
ê
1 ê -t
f (t ) = ê e - e t e t + e-t e t - e-t úú Figure 3.1. Calcul de f(t ) par la TL
2 ê -3t ú inverse: méthode analytique.
ê e - et
ë e t - e-3t e t + e-3t úû

N. Goléa © 2019 3-4


75
Cette méthode peut être implémentée sous Matlab comme sur la figure 3.1.

Méthode de Leverrier
Dans les deux exemples précédents, nous avons calculé analytiquement la matrice
-1
[ sI - A] ; ce qui est très laborieux pour des matrices de grandes dimensions.
L'algorithme de Leverrier permet de calculer systématiquement la matrice inverse, et peut
même être programmé.
On commence par noter que pour une matrice A Î Â n´n , le polynôme caractéristique
sI - A est donné par:

sI - A = s n + a1 s n-1 + a2 s n-2 + ... + an (3.13)

La matrice ajointe peut être écrite comme:

adj [ sI - A] = Is n-1 + H1 s n-2 + H 2 s n-3 +  + H n-2 s + H n-1 (3.14)

où:
H1 = A + a1 I
H 2 = AH1 + a2 I
 (3.15)
H n-1 = AH n-2 + an-1 I
H n = AH n-1 + an I = 0

Notons que a1 , a2 ,... , an sont les coefficients du polynôme caractéristique donnés par
l'équation (3.13). Les ai peuvent être également déterminés par l'utilisation de la trace (La
trace d'une matrice n ´ n est la somme de ses éléments diagonaux) comme suite:
a1 = -tr ( A)
1
a2 = - tr ( AH1 )
2
1
a3 = - tr ( AH 2 ) (3.16)
3

1
an = - tr ( AH n-1 )
n
Par la substitution de l'équation (3.51) dans l'équation (3.50) et substituant l'équation
résultante dans l'équation (3.48), on obtient l'inverse de [ sI - A] . La méthode actuelle est
commode pour la solution par ordinateur.
Exemple 3. Reprenons le système de l'exmple 1:
é-2 0 ù
A= ê ú
ê 1 -1ú
ë û
Le polynôme caractéristique sI - A est donné par:

sI - A = s 2 + a1 s + a2

La matrice ajointe peut être écrite comme:

N. Goléa © 2019 3-5


76

adj éë( sI - A)ùû = Is + H1

D'après (3.15) et (3.16), nous avons:


a1 = -tr ( A) = 3

é-2 0 ù é1 0ù é1 0ù
H1 = A + a1 I = ê ú + 3ê ú=ê ú
ê 1 -1ú ê0 1 ú ê1 2ú
ë û ë û ë û

1 1 æ é-2 0 ú÷ù ö÷
a2 = - tr ( AH1 ) = - tr ççç ê ÷= 2
2 2 èç êë 0 -2ú÷
û ÷ø
D'où nous avons:

sI - A = s 2 + a1 s + a2 = s 2 + 3s + 2 = ( s + 1)( s + 2) ,

é1 0ù é1 0ù
adj [ sI - A] = Is + H1 = ê ús+ê ú,
ê0 1 ú ê1 2ú
ë û ë û
et

-1 é1 0ù s é1 0ù 1
[ sI - A] = êê ú
ú

ê
ú
ú
ë0 1 û ( s + 1)( s + 2) ë1 2û ( s + 1)( s + 2)
La décomposition produit:
s 1 2
=- +
( s + 1)( s + 2) s +1 s + 2
1 1 1
= -
( s + 1)( s + 2) s +1 s + 2

D'où l'on peut écrire:


-1
éa3 (t )ù êé1 l1 l12 úù éê e l1t ùú é1 -2 4 ù-1 êée-2t úù é 4 12 -16ù éêe ùú
-2t
ê ú ê ê ú ê úê
êa2 (t )ú = ê1 l2 l22 úú êê el2t úú = ê1 2 4 ú êê e 2t úú = 1 ê-4 4 0 úú ê e 2t ú
ú
ê ú ê ú ê ú ê ú ê ú 16 ê ê ú
ê a (t )ú ê0 1 2l ú ê l2t ú ê0 1 4 ú ê 2t ú ê 1 -1 4 úû ê te 2t ú
êë 1 úû ë 2
û ëte û ë û ë te û ë ë û
é 1 e-2t + 3 e 2t - te 2t ù
ê 4 4 ú
ê 1 -2t ú
=ê 1 2t
4 e - 4 e ú
ê 1 -2t 1 2t 1 2t ú
ê 16 e - 16 e + 4 te ú
ë û
Par la TL inverse, nous avons:
é0 0ù -t é 1 0ù -2t é e-2t 0 ùú
f (t ) = ê úe + ê úe = ê
ê1 1 ú ê-1 0ú ê -t -2t ú
ë û ë û ëêe - e e-t ûú

Exemple 4. Reprenons le système de l'exmple 2:


é-2 1 -1ù
ê ú
A = êê-1 0 1 úú
ê-2 2 -1ú
ë û

N. Goléa © 2019 3-6


77
Le polynôme caractéristique est donné par:
% Méthode de Leverrier
sI - A = s 3 + a1 s 2 + a2 s + a3 syms s t;
n=3;
La matrice ajointe peut être écrite comme: A = [-2 1 -1;-1 0 1;-2 2 -1];
%algorithme
adj éë( sI - A)ùû = Is 2 + H1 s + H 2 a1=-trace(A)
H1=A+a1*eye(n)
D'après (3.15) et (3.16), nous avons: a2=-trace(A*H1)/2
H2=A*H1+a2*eye(n)
a1 = -tr ( A) = 3 a3=-trace(A*H2)/3
Det=s^3+a1*s^2+a2*s+a3
é-2 1 -1ù é1 0 0ù é 1 1 -1ù Adj=eye(n)*s^2+H1*s+H2
ê ú ê ú ê ú
H1 = A + a1 I = êê-1 0 1 úú + 3 êê0 1 0úú = êê-1 3 1 úú Phi=Adj/Det
phi=ilaplace(Phi,s,t)
ê-2 2 -1ú ê0 0 1 ú ê-2 2 2 ú
ë û ë û ë û
Figure 3.2. Calcul de f(t ) par la TL
æ ö
ç é-1 -1 1ùú÷÷ inverse: méthode de Leverrier.
1 1 çç êê ÷
ú÷÷ = -1
a2 = - tr ( AH1 ) = - tr ççê-3 1 3ú÷
2 2 çê ÷
çè ë-2 2 2ú÷
û ø÷
é-1 -1 1ù é1 0 0ù é-2 -1 1ù
ê ú ê ú ê ú
H 2 = AH1 + a2 I = êê-3 1 3úú - êê0 1 0úú = êê-3 0 3úú
ê-2 2 2úû êë0 0 1 úû êë-2 2 1úû
ë
æ 0 0ù ÷ö
ç é3
1 1 çç êê ú÷÷
a3 = - tr ( AH 2 ) = - tr ççê0 3 0ú÷ ú÷÷÷ = -3
3 3 çê ú÷
çè 0 0 3û ÷ø
ë
D'où nous avons:

sI - A = s 3 + a1 s 2 + a2 s + a3 = s 3 + 3s 2 - s - 3 = ( s + 1)( s + 3)( s - 1)

é1 0 0ù é 1 1 -1ù é-2 -1 1ù
ê ú 2 ê ú ê ú
adj [ sI - A] = Is + H1 s + H 2 = êê0 1 0úú s + êê-1 3 1 úú s + êê-3 0 3úú
2

ê0 0 1 ú ê-2 2 2 ú ê-2 2 1ú
ë û ë û ë û
et
é1 0 0ù é 1 1 -1ù é-2 -1 1ù
ê ú s2 ê ú s ê ú 1
-1
[ sI - A] ê ú
= ê0 1 0ú ê ú
+ ê-1 3 1 ú + êê-3 0 3úú
ê0 0 1ú ( s 1)( s 3)( s 1) ê-2 2 2 ú ( s 1)( s 3)( s 1) ê-2 2 1ú ( s 1)( s 3)( s - 1)
+ + - + + - + +
ë û ë û ë û
La décomposition produit:

s2 1 1 9
= - +
( s + 1)( s + 3)( s - 1) 8( s - 1) 4 ( s + 1) 8( s + 3)
s 1 1 3
= + -
( s + 1)( s + 3)( s - 1) 8( s - 1) 4 ( s + 1) 8( s + 3)
1 1 1 1
= - +
( s + 1)( s + 3)( s - 1) 8( s - 1) 4 ( s + 1) 8( s + 3)

Ainsi, nous avons:

N. Goléa © 2019 3-7


78

-1 1 1 1 1 1 1
[ sI - A] = [ I + H1 + H 2 ] + [-I + H1 - H 2 ] + [ 9 I - 3H1 + H 2 ]
8 ( s - 1) 4 ( s + 1) 8 ( s + 3)
é 0 0 0ù é1 1 -1ù é1 -1 1 ù
1 êê ú 1 1 ê ú 1 1 ê ú 1
= ê-1 1 1 úú + êê1 1 -1úú + êê0 0 0úú
2ê ú ( s - 1) 2 ê0 0 0 ú ( s + 1) 2 ê1 -1 1 ú ( s + 3)
ë-1 1 1 û ë û ë û

Par la TL inverse, nous avons:


é 0 0 0ù é1 1 -1ù é1 -1 1 ù
1 êê ú t 1ê ú -t 1 ê ú
f (t ) = ê-1 1 1 úú e + êê1 1 -1úú e + êê0 0 0úú e-3t
2ê ú 2ê ú 2ê ú
ë-1 1 1 û ë0 0 0 û ë1 -1 1 û
ée-t + e-3t e-t - e-3t e-3t - e-t ù
ê ú
1 ê -t ú
= ê e - et e t + e-t e t - e-t ú
2 ê -3t ú
ê e - et
ë e t - e-3t e t + e-3t úû

b. Méthodes temporelles
Méthode de Cayley-Hamilton
Théorème 1. (Cayley-Hamilton) Toute matrice carrée est solution de son polynôme
caractéristique.
En d'autres termes, si sI n - A est le polynôme caractéristique de la matrice A Î Rn´n
c'est-à-dire,

sI n - A = s n + a1 s n-1 +  + an-1 s + an (3.17)

Alors :

An + a1 An-1 +  + an-1 A + an I n = 0 (3.18)

A partir de cette expression, on peut voir que:

An = -a1 An-1 -  - an-1 A - an I n (3.19)

Il est donc clair que toute puissance de la matrice supérieure ou égale à n pourra s'écrire
de façon unique en fonction de An-1 ,.., A, I n :

An+k = Fk ( An-1 ,.., A, I n ) = fk(1) An-1 + fk(2) An-2 +  + fk(n-1) A + fk(n) I n (3.20)

Exemple 5. Soit la matrice d'évolution:


é-2 1 -1ù
ê ú
A = êê-1 0 1 úú
ê-2 2 -1ú
ë û
Dont le polynôme caractéristique est :

sI - A = s 3 + 3s 2 - s - 3

On peut vérifier que

N. Goléa © 2019 3-8


79

A3 + 3A2 - A - 3I = 0
Ainsi
é-14 13 -13ù
ê ú
A = -3A + A + 3I = êê -1 0
3 2
1 úú
ê-14 14 -13ú
ë û
On peut aussi voir que:
é 41 -40 40ù
ê ú
A = -3A + A + 3 A = -3(-3 A + A + 3I ) + A + 3A = 10 A - 9 I = êê 0
4 3 2 2 2 2
1 0 úú
ê40 -40 41ú
ë û
et:

A5 = -3A4 + A3 + 3A2 = -3(10 A2 - 9 I ) + (-3A2 + A + 3I ) + 3A2


é-122 121 -121ù
ê ú
= -30 A + A + 30 I = êê -1
2
0 1 úú
ê ú
ë-122 122 -121û
L'utilisation du développement en série de Taylor, permet d'écrire:
A2t 2 Akt k
f (t ) = e At = I n + At + + ... + + (3.21)
2! k!
Ce qui peut être mis sous la forme:

f (t ) = an (t ) I n + an-1 (t ) A + ... + a1 (t ) An-1 (3.22)

Les coefficients ai (t ) , i = 1..n sont obtenus à partir des relations:

elit = an (t ) + an-1 (t )li + ... + a1 (t )lin-1 (3.23)

où li , i = 1..n sont les valeurs propres distinctes de la matrice A .

On obtient ainsi n équations algébriques linéaires qui déterminent de façon unique les
coefficients ai :

é el1t ù é1 l1 l12  l1n-1 ù é a (t ) ù


ê ú ê úê n ú
êe l2t ú ê n-1 ú ê
t ú
2 ú ê n-1 ( )ú
ê ú=ê 1 l l 2
 l a
ê ú ê
2 2
ú (3.24)
ê  ú ê    ú êê  úú
ê ltú ê ú
êe n ú ê1 ln ln2  lnn-1 ú êêë a1 (t ) úûú
ë û ë û
Dans ce cas il suffit d'inverser la matrice de Van Der Monte, soit:
-1
é an (t ) ù éê1 l1 l12  l1n-1 ùú éê el1t ùú
ê ú
êan-1 (t )ú êê1 l l 2  l n-1 úú êêel2t úú
ê ú
ê  ú = êê   (3.25)
2 2 2
ú ê ú
ê ú ê   ú ê  ú
ê a (t ) ú ê ú ê ú
êë 1 úû ë1 ln ln2  lnn-1 úû êëelnt úû

Exemple 6. On reprend la matrice d'évolution:

N. Goléa © 2019 3-9


80

é-2 1 -1ù
ê ú
A = êê-1 0 1 úú
ê-2 2 -1ú
ë û
Dont les valeurs propres sont : l1 = -1,l2 = -3 et l3 = 1 .

À partir de (3.25), nous avons:


-1
éa3 (t )ù êé1 l1 l12 úù êé el1t úù é1 -1 1 ù-1 êé e-t úù é-12 2 -6ù êé e úù
-t é3e t + 6e-t - e-3t ù
ê ú
ê ú ê ê ú ê ú
êa2 (t )ú = ê1 l2 l22 úú êêel2t úú = ê1 -3 9ú êêe-3t úú = 1 ê 8 0 -8 ú êêe-3t úú = 1 êê 4e t - 4e-t ú
ú
ê ú ê ú ê ú ê ú ê ú -16 ê úê ú 8 ê ú
ê a (t )ú ê ê ú ê ú
ëê 1 ûú ë1 l3 l3 úû êëe úû ë1 1 1 û êë e úû ë 4 -2 -2û êë e úû
l3t - -
2 t t
ê e - 2e + e ú
t t 3t
ë û
et à partir de (3.21):
f (t ) = a3 (t ) I + a2 (t ) A + a1 (t ) A2
é1 0 0ù é-2 1 -1ù é 5 -4 4 ù
1 ê ú 1 ê ú 1 t ê ú
= (3e + 6e - e ) ê0 1 0ú + (4e - 4e ) ê-1 0 1 ú + (e - 2e + e ) ê 0 1 0 úú
t -t -3t ê ú t -t ê ú -t -3t ê
8 ê0 0 1 ú 8 ê-2 2 -1ú 8 ê4 -4 5 ú
ë û ë û ë û
ée-t + e-3t e-t - e-3t e-3t - e-t ù
ê ú
= êê e-t - e t e t - e-t úú
1
e t + e-t
2 ê -3t ú
ê e - et
ë e t - e-3t e t + e-3t úû

% Méthode de Cayley-Hamilton
syms t real
n=3;
A = [-2 1 -1;-1 0 1;-2 2 -1];
%algorithme
Valp=eig(A)
VanderM=[1 Valp(1) Valp(1)^2;
1 Valp(2) Valp(2)^2;
1 Valp(3) Valp(3)^2];
Modes=[exp(Valp(1)*t) exp(Valp(2)*t) exp(Valp(3)*t)]';
alfa=inv(VanderM)*Modes
phi=alfa(1)*A^2+alfa(2)*A+alfa(3)*eye(n)
simplify(phi)
Figure 3.3. Calcul de f(t ) par la méthode de Cayley-Hamilton.

Si les valeurs propres ne sont pas toutes simples, il faut obtenir des équations
supplémentaires linéairement indépendantes de (3. ). Pour ce faire, il faut dériver
l’équation (3.1) par rapport à la valeur propre multiple li :

delkt
= telkt = an (t ) 0 + an-1 (t ) + 2an-2 (t )lk + ... + (n - 1) a1 (t )lkn-2 (3.26)
dlk

Alors par exemple pour une matrice ayant l1 comme valeur propre simple et l2 comme
valeur propre double:
é e l1t ù é1 l1 l12 ùú éa3 (t )ù
ê ú ê
ê e l2t ú = ê1 l úê ú
ê ú ê 2 l22 ú êêa2 (t )úú (3.27)
ê l2t ú ê ú
ête ú ê0 1 2l2 ú êêë a1 (t )úúû
ë û ë û

N. Goléa © 2019 3-10


81
Exemple 7. Soit la matrice d'évolution:
é-2 1 1ù
ê ú
A = êê 0 3 1úú
ê 0 -1 1ú
ë û

Son équation caractéristique est l I - A = (l + 2)(l - 2)2 , ce qui donne une valeur propre
simple l1 = -2 et une valeur propre l2 = 2 de multiplicité 2.

L'utilisation de (3.27) produit:


-1
éa3 (t )ù éê1 l1 l12 ùú éê el1t ùú é1 -2 4 ù-1 éêe-2t ùú
ê ú ê ú ê
êa2 (t )ú = êê1 l2 ú
l22 ú êê el2t úú = êê1 2 4 úú ê e 2t ú
ú
ê ú
ê a (t )ú êê0 1 ú ê ú
2l2 ú êtel2t ú êë0 1 4 úû ê te 2t ú
ê ú
ëê 1 ûú ë û ë û ë û
é -2t ù
é 4 12 -16ù êe ú ê 4 e + 4 e - te ùú
é 1 -2t 3 2t 2t

1 êê ú ê 2t ú ê ú
= -4 4 0 úú ê e ú = ê 4e -4e
1 2t 1 -2t
ú
16 êê ê ú
ú ê te 2t ú ê 1 e-2t - 1 e 2t + 1 te 2t úú
ê
ë 1 - 1 4 ûë û ë 16 16 4 û
À partir de (3.21):

f (t ) = a3 (t ) I + a2 (t ) A + a1 (t ) A2
é1 0 0ù é-2 1 1ù
ê ú æ 1 -2t 3 2t ö êê
2t ÷
úæ1 1 ö
= êê0 1 ú ç
0ú çç e + e - te ÷÷ + ê 0 3 1úú ççç e 2t - e-2t ÷÷÷
ê è4 4 ø ê úè4 4 ø
ë0 0 1úû ë 0 -1 1û
é-2 1 1ù
ê ú æ 1 -2t 1 2t 1 2t ö
+ê 0ê 3 1úç ÷
ú çèç16 e - 16 e + 4 te ÷ø÷
ê0 -1 1úû
ë
ée-2t 1 -2t 1 -2t ù
4e -4e 4e -4e
1 2t 1 2t
ê ú
ê ú
=ê 0 e 2t + te 2t te 2t ú
ê ú
ê 0 -te 2t e 2t - te 2t úû
ë
Méthode de la forme modale
Une autre méthode pour déterminer la matrice de transition est d'exploiter la forme
modale.
L'utilisation de la transformation x = Tz , avec T la matrice des vecteurs propres associés
aux valeurs propres de A , pemet de passer à la forme modale:
z = Az + Bu
(3.28)
y = Cz
avec
A = T -1 AT
B = T -1 B (3.29)
C = CT

N. Goléa © 2019 3-11


82

Si les valeurs propres li , i = 1..n de la matrice A sont distinctes alors,

él1 0  0 ù
ê ú
ê 0 l2   ú
ê
A= ê ú (3.30)
   0 ú
ê ú
ê0  0 l ú
ëê n úû

et
ée l1t 0  0 ùú
ê
ê 0 el2t   úú
e At = êê ú (3.31)
ê    0 ú
ê ú
ê 0  0 elnt úû
ë
La solution de (3.28.a) est donnée par:
t
z(t ) = e At z(0) + ò e A(t-t ) Bu(t )dt (3.32)
0

D'un autre coté, x(t ) est donné par:


t
x(t ) = Tz(t ) = Te At z(0) + ò Te A(t-t ) Bu(t )dt (3.33)
0

En notant que z(0) = T -1 x(0) , on peut écrire:


t
x(t ) = Te AtT -1 x(0) + ò Te A(t-t )T -1 Bu(t )dt (3.34)
0

En comparant avec la solution du système dans sa représentation d'origine:


t
x(t ) = e At x(0) + ò e A(t-t ) Bu(t )dt (3.35)
0

On déduit la relation suivante:

e At = Te AtT -1 (3.36)
Exemple 8. Soit le système donné par:
é-3 1ù é0 ù
A= ê ú , B = ê ú ,C = [1 1],
ê-2 0 ú ê1 ú
ë û ë û
Les valeurs propres sont l1 = -1,l2 = -2 . En utilisant la transformation x = Tz avec:

é 1 1ù é-2 2 ù
T = ê 2 ú ,T -1 = ê ú
ê1 1ú ê 2 -1ú
ë û ë û
On peut transformer le système sous la forme modale:

N. Goléa © 2019 3-12


83

é-1 0 ù
A = T -1 AT = ê ú
ê 0 -2ú
ë û
é2ù
B = T -1 B = ê ú
ê-1ú
ë û
C = CT = éë 2 2ùû
3

La solution de la nouvelle représentation d'état est donnée par:


t
z(t ) = e At z(0) + ò e A(t-t ) Bu(t )dt
0

avec
é z (0)ù é x (0)ù é-2 2 ù é 1 ù é-4 ù
ê 1 ú = T -1 ê 1 ú = ê úê ú ê ú
ê z (0)ú ê x (0)ú ê 2 -1ú ê-1ú = ê 3 ú
ë 2 û ë 2 û ë ûë û ë û
et :
ée-t 0 ùú
e At = êê -2tú
ëê 0 e ûú

D'où
ée-t 0 úù é-4 ù êée-t 0 úù t êée t 0 úù é 2 ù é-4e-t ù ée-t 0 úù t êé 2e t úù
z(t ) = êê ú
ê ú+
ê úò ê ú
ê ú dt = ê ú+ê
ê -2t ú ê -2t ú ò ê 2t ú
dt
êë 0 e-2t úû êë 3 úû êë 0 e-2t úû 0 êë 0 e 2t úû êë-1úû êë 3e úû êë 0 e úû 0 êë-e úû
0 ùú éê 2e t - 2 ùú éê-4e-t ùú ê 2(1 - e ) ú éê 2 - 6e-t ùú
é-4e-t ù ée-t é -t ù

= êê -2t úú + êê úê =
ú ê ú + ê ú=ê ú
ëê 3e ûú ëê 0 e-2t ûú êë 12 - 12 e 2t úû ëê 3e-2t ûú êê 12 (e-2t - 1)úú êë 72 e-2t - 12 úû
ë û
D'un autre coté, x(t ) est donné par:

é 1 1ù é 2 - 6e-t ù é 72 e-2t - 3e-t + 12 ù


x(t ) = Tz(t ) = ê 2 ú êê -2t ú=ê ú
ê1 1ú 7 e - 1 ú ê 7 e-2t - 6e-t + 3 ú
ë û êë 2 2 ûú ëê 2 2 ûú

et :
é 2 - 6e-t ù
y(t ) = Cz(t ) = éë 32 2ùû êê -2t ú = 7e-2t - 9e-t + 2

7
ëê 2 e - 2 ûú

On peut vérifier que:


é 1 1ù ée-t 0 ùú é-2 2 ù éê 2e-2t - e-t e-t - e-2t ùú
e At = Te AtT -1 = ê 2 ú êê ú
ê ú=
ê ú
ê ú e-2t úû ëê 2 -1ûú êë2e-2t - 2e-t 2e-t - e-2t úû
ë1 1û êë 0
Si les valeurs propres li , i = 1..n de la matrice A ne sont pas distinctes, alors, on peut
écrire:

A= J +L (3.37)
avec la matrice diagonale:

N. Goléa © 2019 3-13


84

él1 0  0 ù
ê ú
ê 0 l2   ú
J = êê ú
ú (3.38)
ê   0ú
ê0  0 l ú
êë n úû

et la matrice nilpotente L , c-à-d, Lk = 0, k £ n .


Maintenant, nous pouvons écrire:

e At = e( J +L)t = e Jt e Lt (3.39)
L'utilisation du développement en série de Taylor, permet d'écrire:
L2t 2 Lk-1t k-1 Lkt k
e Lt = I n + Lt + + ... + + + (3.40)
2! (k - 1)! k!

Comme Lk = 0 , le développement se limite à l'ordre k - 1 , soit:

L2t 2 Lk-1t k-1


e Lt = I n + Lt + + ... + (3.41)
2! (k - 1)!
Exemple 9. Soit la matrice d'évolution
é-2 -1 -1ù
ê ú
A = êê 1 0 1 úú
ê0 0 -1úû
ë
dont le polynôme caractéristique est A - l I = -(l + 1)3 d'où l1 = -1 de multiplicité 3.

Nous avons au chapitre 2 que sa forme de Jordan est:


é-1 0 0ù
ê ú
A = êê 0 -1 1 úú
ê0 0 -1úû
ë
Et que la matrice de transformation est:
é1 1 1ù é1 1 0ù
ê ú -1 ê ú
ê ú ê
T = ê 0 -1 -1ú ,T = ê 1 0 1 úú
ê-1 0 -1ú ê-1 -1 -1ú
ë û ë û

Pour calculer e At , on remarque que A peut s'écrire comme:


é-1 0 0 ù é0 0 0 ù
ê ú ê ú
A = J + L = êê 0 -1 0 úú + êê0 0 1 úú
ê0 0 -1úû êë0 0 0úû
ë
Avec
ée-t 0 0 ùú
ê
e Jt = êê 0 e-t 0 úú
ê ú
ê 0
ë 0 e-t úû

N. Goléa © 2019 3-14


85
Et
é1 0 0ù é0 0 0ù é1 0 0ù
ê ú ê ú ê ú
e Lt
= I + Lt = ê0 1 0ú + ê0 0 1 ú t = êê0 1 t úú
ê ú ê ú
ê0 0 1 ú ê0 0 0 ú ê0 0 1 ú
ë û ë û ë û
Ainsi, on obtient:
ée-t 0 0 ùú é1 0 0ù éêe-t 0 0 ùú
ê ê ú
e At
=e eJt Lt
= êê 0 e -t
0 úú êê0 1 t úú = êê 0 e -t
te-t úú
ê ú ê ú
ê0
ë 0 e-t úû êë0 0 1úû êë 0 0 e-t úû

D'où, on peut avoir:

1 ù éêe 0 ùú é 1 0 ù éêe - te -te-t ùú


-t -t -t
é1 1 0 1 -te-t
ê ú ê ê ú
e At = Te AtT -1 = êê 0 -1 -1úú , ê 0 e-t te-t úú êê 1 0 1 úú = êê te-t e-t + te-t te-t úú
ê-1 0 -1ú êê 0 ú
e-t úû êë-1 -1 -1úû êë
ê ú
e-t úû
ë û ë 0 0 0

Interpolation sur le spectre de At

Le spectre d'une matrice A est l'ensemble de ses valeurs propres. Lorsque la matrice A
admit n valeurs propres distinctes, l'exponentiel de la matrice A s'exprime sous la forme
suivante:
n n A - lj I
e At = å e lit (3.42)
i =1 j =1 li - l j
j ¹i

Exemple 10. Soit la matrice d'évolution


é0 -1ù
A= ê ú
ê1 0 ú
ë û
dont les valeurs propres sont j ,- j . Alors e At est donnée par:

A - l2 I l1t A - l1 I l2t
e At = e + e
l1 - l2 l2 - l1

Soit:
é0 -1ù é1 0ù é0 -1ù é1 0ù
ê ú+ jê ú ê ú- j ê ú
ê1 0 ú ê0 1 ú jt ê1 0 ú ê0 1 ú - jt
e At = ë û ë û e + ë û ë ûe
2j -2 j
é 12 - j12 ù é 1 1 ù é 1 e jt + 1 e- jt 1
e- jt - 21j e jt ùú écos t - sin t ù
= êê 1 ú e jt + ê 2 ú e- jt = ê 2 2 2j
ú = êê ú
2j
1 ú ê- 1 1 ú ê 1 jt 1 - jt
ëê j 2 2 úû ëê 2 j 2 ûú ê e - 2j e 2e + 2e
1 jt 1 - jt
ú ë sin t cost úû
ë 2j û
Exemple 11. Soit la matrice d'évolution:

N. Goléa © 2019 3-15


86

é-2 1 -1ù
ê ú
A = êê-1 0 1 úú
ê-2 2 -1ú
ë û
Dont les valeurs propres ne sont : l1 = -1,l2 = -3 et l3 = 1 . Alors e At est donnée par

A - l2 I A - l3 I l1t A - l1 I A - l3 I l2t A - l1 I A - l2 I l3t


e At = e + e + e
l1 - l2 l1 - l3 l2 - l1 l2 - l3 l3 - l1 l3 - l2

D'où
é-2 -2 2ù é4 -4 4 ù é 0 0 0ù
1 êê ú -t 1 ê ú -3t 1 ê ú
e At
= - ê-2 -2 2úú e + êê0 0 0úú e + êê-4 4 4 úú e t
4ê 8ê 8ê
ë0 0 0úû ú
ë4 -4 4 û
ú
ë-4 4 4 û
et
ée-t + e-3t e-t - e-3t e-3t - e-t ùú
ê
1 ê -t
e At = ê e - et e t + e-t e t - e-t úú
2 ê -3t ú
ê e - et
ë e t - e-3t e t + e-3t úû

4. Calcul des réponses d'un système LTI


4.1 Méthode temporelle
Le calcul des réponses d'un système, en repos ou pour différentes signaux tests à l'entrée,
est essentiel pour évaluer sa stabilité ou pour apprécier son comportement dans
différentes situations.
La solution générale (3.5) avec t0 = 0 est donnée par:
t
x(t ) = e At x(0) + ò e A(t -t ) Bu(t )dt (3.43)
0

a. Réponse libre

La réponse libre est calculée à partir des conditions initiales x(0) et une entrée nulle
u(t ) = 0 , soit:

x(t ) = e At x(0) (3.44)

Qui dépend clairement de la matrice de transition et des conditions initiales.

b. Réponse forcée

La réponse forcée est calculée à partir des conditions initiales x(0) = 0 et une entrée non
nulle:
t
x(t ) = ò e A(t-t ) Bu(t )dt (3.45)
0

Qui dépend de la matrice de transition et du signal d'entrée.

N. Goléa © 2019 3-16


87
On distingue trois signaux qui sont souvent utilisés pour tester la réponse d'un système.
Réponse impulsionnelle
La réponse impulsionnelle est donnée pour une entrée u(t ) = r0d(t ) , soit:
t
x(t ) = ò e A(t-t ) Br0d(t )dt (3.46)
0

Comme e A(t-t ) Bd(t ) = e At Bd(t ) , on obtient le résultat:


t t
x(t ) = r0 ò e Bd(t )dt = r0e B ò d(t )dt = r0e At B
At At
(3.47)
0 0

Réponse indicielle
La réponse indicielle pour une entrée constante ( u(t ) = r0 ) est donnée par :
t t
x(t ) = ò e A(t-t ) Br0 dt = r0e At ò e- At dt B (3.48)
0 0

Si A est non singulière, alors


t

òe
- At
dt = -A-1 éêëe- At - I ùúû = - éêëe- At - I ùúû A-1 (3.49)
0

D'où, nous avons:

x(t ) = -r0e At éëêe- At - I ùûú A-1 B = r0 éëêe At - I ùûú A-1 B (3.50)

Réponse à une rampe


La réponse indicielle pour une entrée rampe u(t ) = r0t est donnée par :
t t
x(t ) = ò e A(t-t ) Br0 t dt = r0e At ò e- At t dt B (3.51)
0 0

Si A est non singulière, alors


t

òe
- At
t dt = A-2 éêëe- At - I - At ùúû = éêëe- At - I - At ùúû A-2 (3.52)
0

D'où, nous avons:

x(t ) = r0e At éëêe- At - I - At ùûú A-2 B = r0 éëê I - ( I + At ) e At ùûú A-2 B (3.53)

Exemple 12. Soit le système:


é x ù é-2 0 ù é x1 ù é1ù é x1 (0)ù é 1 ù
ê 1ú = ê ú ê ú + ê ú u, ê ú=ê ú
ê ú ê úê ú ê ú ê ú ê ú
ë x 2 û ë 1 -1û ë x2 û ë1û ë x2 (0)û ë-1û
y = [ 0 1] x

La matrice de transition est donnée par:

N. Goléa © 2019 3-17


88
% Calcul temporel des réponses
é e-2t 0 ùú
f(t ) = e At = êê -t
syms t v real
-2t ú n=2;
ëêe - e e-t ûú
A=[-2 0; 1 -1]; x0 = [1;-1];
B=[1;1]; C=[0 1]; D=0;
La réponse libre ( u(t ) = 0 ) est donnée par : % matrice de transition
phi=expm(A*t)
é e-2t 0 ùú é1 ù éê e-2t ùú
phiv=expm(-A*v);
xl (t ) = f(t ) x(0) = êê -t ú
ê ú=
ê ú
% réponse libre
ëêe - e
-2t
e-t ûú ëê-1ûú ëê-e-2t ûú xl=phi*x0
% réponse impulsionnelle
La réponse impulsionnelle ( u(t ) = d(t ) et x(0) = 0 ) ximp=phi*B
% réponse à u=1,t>=0
est donnée par : xechelon=phi*int(phiv,v,0,t);
simplify(xechelon)
é e-2t 0 ùú é1ù éê e-2t ù
x(t ) = e At B = êê -t ú
ê ú= % réponse à u=t
ú ê ú
êëe - e
-2t
e-t úû ëê1ûú êë2e-t - e-2t úû xramp=phi*int(v*phiv,v,0,t);
simplify(xramp)
La réponse indicielle ( u(t ) = 1 et x(0) = 0 ) est Figure 3.4. Calcul des réponses de
donnée par : l'exemple 12.

On commence par les calculs:


é e 2t 0 úù - At é 2t 0 úù é1ù êé e 2t úù
e- At = êê t = ê e ê ú
ú , e B ê t ú =ê ú
ëêe - e
2t
e t ûú ëêe - e
2t
e t ûú êë1úû ëê2e t - e 2t ûú

ú dt = ê 2 (
t t é 2t ù é 1 e 2t - 1) ù
ê e ú
ò ò ê2e t - e 2t ú
- At
e Bd t = ê t 1 2t 3 ú
0 0 êë úû ê
ë2e - 2 e - 2 úû
D'où:

é e-2t 0 úù êé 12 (e - 1) úù éê 1 -2t ù
2t
2-2e
t 1
ê ú
òe
- At
x(t ) = e At
Bdt = ê -t ú ê ú = ê ú
êëe - e
-2t
e-t úû ê2e t - 12 e 2t - 23 ú êë 12 e-2t - 2e-t + 32 úû
0 ë û
La réponse à une rampe unité ( u(t ) = t et x(0) = 0 ) est donnée par :
t é 2t ù é t e 2t ù é ù
2 te - 4 e + 4
t t 1 2t 1 2t 1
ê e ú t dt = ê ú dt = ê ú
ò ò ê2e t - e 2t ú ò
- At
e Bt d t = ê
ê t 2t ú 7ú
êë2t e - t e úû êë2te - 2 te - 2e + 4 e + 4 úû
t 1 2t t 1 2t
0 0 êë úû 0

D'où:
t é e-2t 0 ùú éê 2 te - 4 e + 4
1 2t 1 2t 1 ù é
ú=ê
1 1 -2t
2t + 4e - 14 ù
ú
x(t ) = e At ò e- At Bt dt = êê -t -t ú ê
-2t 7ú ê3 -t 1 -2t 7ú
0 ëêe - e e ûú ëê2te - 2 te - 2e + 4 e + 4 úû êë 2 t + 2e - 4 e - 4 úû
t 1 2t t 1 2t

Exemple 13. Soit le système:


é x 1 ù é-2 1 -1ù é x1 ù é 1 ù é x1 (0)ù é1ù
ê ú ê úê ú ê ú ê ú ê ú
ê x 2 ú = ê-1
ê ú ê 0 1 úú êê x2 úú + êê-1úú u, êê x2 (0)úú = êê1úú
ê x ú ê-2
ë 3û ë 2 -1úû êë x3 úû êë 0 úû êëê x3 (0)úûú êë2úû
y = [ 2 -1 1] x

La matrice de transition est donnée par:

N. Goléa © 2019 3-18


89

ée-t + e-3t e-t - e-3t e-3t - e-t ùú


ê
= êê e-t - e t e t - e-t úú
1
f(t ) = e At e t + e-t
2 ê -3t ú
ê e - et
ë e t - e-3t e t + e-3t úû

La réponse libre ( u(t ) = 0 ) est donnée par :

ée-t + e-3t e-t - e-3t e-3t - e-t ùú é1ù éê e-3t ùú


ê ê ú
1 ê -t
x(t ) = f(t ) x(0) = ê e - e t e t + e-t e t - e-t úú êê1úú = êê e t ú
ú
2 ê -3t ú
-3t ê 2ú
ê ú
ê e - et
ë e t - e-3t e + e úû ë û êëe + e úû
t t -3t

La réponse impulsionnelle ( u(t ) = d(t ) et x(0) = 0 ) est donnée par :

ée-t + e-3t e-t - e-3t e-3t - e-t ùú é 1 ù éê e-3t ùú


ê ê ú
x(t ) = e At B = êê e-t - e t e t - e-t úú êê-1úú = êê -e t úú
1
e t + e-t
2 ê -3t ú ê ú
ê e - et
ë e t - e-3t e t + e-3t úû êë 0 úû êëe-3t - e t úû

La réponse indicielle ( u(t ) = 1 et x(0) = 0 ) est donnée par :

é e t + e 3t e t - e 3t e 3t - e t ùú
ê
e- At = êê e t - e-t e-t - e t úú
1
e -t + e t
2 ê 3t ú
ê e - e -t e -t - e 3 t e-t + e 3t úû
ë
é e t + e 3t e t - e 3t e 3t - e t ùú é 1 ù éê e 3t úù
ê ê ú
e- At B = êê e t - e-t e-t - e t úú êê-1úú = êê -e-t úú
1
e -t + e t
2 ê 3t ú ê ú
ê
ëe - e
-t
e -t - e 3 t e-t + e 3t ûú ëê 0 ûú ëêe 3t - e-t úû

é e 3t ù é 1 e 3t - 1 ù
t t ê ú ê 3 3 ú
ê -e-t ú dt = ê e - 1 úú
òe Bdt = ò
- At -t
ê ú ê
ê 3t ú ê -t 1 3t 4 ú
0 0
ê e - e -t ú êe + 3 e - 3 ú
ë û ë û
D'où
ée-t + e-3t e-t - e-3t e-3t - e-t ùú éê 13 e 3t - 13 ùú éê 13 - 13 e-3t ùú
t ê
x(t ) = e At ò e- At Bdt = êê e-t - e t e t - e-t úú êê e-t - 1 úú = êê ú
1
e t + e-t 1 - et ú
2 ê -3t ú ê -t 1 3t 4 ú ê 4 1 -3t ú
0
ê e - et
ë e t - e-3t t -3t
e + e úû êëe + 3 e - 3 úû êë 3 - 3 e - e úû t

La réponse à une rampe unité ( u(t ) = t et x(0) = 0 ) est donnée par :

é e 3t ù é t e 3t ù é ù
3 te - 9 e + 9
1 3t 1 3t 1
t t ê ú t ê ú ê ú
ê -e-t ú t dt = ê -t e-t ú dt = ê ú
òe Bt dt = ò ò
- At
ê ú ê ú ê e-t + te-t - 1 ú
ê 3t ú ê 3t ú ê 1 3t 1 3t ú
0 0
ê e - e -t ú 0
ête - te ú -t -t -t
ê- 9 e + 3 te + e + te - 9 ú 8
ë û ë û ë û

N. Goléa © 2019 3-19


90
ée-t + e-3t e-t - e-3t e-3t - e-t ùú éê ù
3 te - 9 e + 9
1 3t 1 3t 1
t ê ú
x(t ) = e At ò e- At Bt dt = êê e-t - e t -t ú ê ú
1
e t + e-t e -e ú ê
t -t
e + te - 1-t
ú
2 ê -3t úê ú
0
ê e - et
ë e t - e-3t e t + e-3t úû êë- 19 e 3t + 13 te 3t + e-t + te-t - 89 úû
é 1 t - 1 + 1 e-3t ù
ê 3 9 9 ú
=êê t + 1 - et ú
ú
ê4 -3t
ú
ê3 t -e + 9 e + 9ú
t 1 8
ë û
4.2 Méthode de la transformée de Laplace
Un résultat équivalent peut être obtenu en utilisant la transformée de Laplace. Pour ce
faire, on applique la transformée de Laplace à l'équation d'état (3.1) pour obtenir:
sX ( s) - x(0) = AX ( s) + BU ( s) (3.54)

où X ( s) = TL[ x(t )] , U ( s) = TL[u(t )] .

D'où, après arrangement:


[ sIn - A] X (s) = x(0) + BU (s) (3.55)
-1
En multipliant les deux côtés de cette dernière équation par [ sI n - A] , on obtient :
-1 -1
X ( s) = [ sI n - A] x(0) + [ sI n - A] BU ( s) (3.56)

Notons que :
-1
F( s) = [ sI n - A] = TL[e At ] = L[f (t )] (3.57)

D'où, on obtient que:


X ( s) = F( s) x(0) + F( s)BU ( s) (3.58)

La sortie est alors donnée par:


Y ( s) = CX ( s) + DU ( s) = CF( s) x(0) + [CF( s)B + D ]U ( s) (3.59)

La réponse x(t ) est obtenue en utilisant la TL inverse sur (3.58), soit:


t
x(t ) = TL-1 [F( s)] x(0) + TL-1 [F( s)BU ( s)] = f (t ) x(0) + ò f(t - t )Bu(t )dt (3.60)
0

Remarque 2. On peut toujours décaler l'instant initial de 0 vers t0 pour avoir le cas
général.
Remarque 3.
1) La réponse libre est obtenue pour un état initial x(0) et une entrée nulle:

X ( s) = F( s) x(0) (3.61)

2) La réponse impulsionnelle est obtenue pour un état initial nul et une entrée
u(t ) = d (t ) (soit U ( s) = 1 ):

X ( s) = F( s)B (3.62)

N. Goléa © 2019 3-20


91
La réponse impulsionnelle en sortie est alors:
Y ( s) = CF( s)B + D (3.63)

3) La réponse indicielle est obtenue pour un état initial nul et une entrée u(t ) = 1, t ³ 0
(soit U ( s) = 1 / s ):

1
X ( s) = F( s)B (3.64)
s
La réponse indicielle en sortie est alors:
1
Y ( s) = [CF( s)B + D ] (3.65)
s
4) La réponse à une rampe est obtenue pour un état initial nul et une entrée
u(t ) = t , t ³ 0 (soit U ( s) = 1 / s 2 ):

1
X ( s) = F( s) x(0) + F( s)B (3.66)
s2
La réponse à une rampe en sortie est alors:
1
Y ( s) = [CF(s)B + D ] (3.67)
s2
Exemple 12. Soit le système suivant:
é x 1 ù é-2 0 ù é x1 ù é1ù é x1 (0)ù é 1 ù
ê ú=ê ú ê ú + ê ú u, ê ú=ê ú
ê x 2 ú ê 1 -1ú ê x2 ú ê1ú ê x2 (0)ú ê-1ú
ë û ë ûë û ë û ë û ë û
y = [ 0 1] x

Nous avons,
és + 2 0 ù
[ sI - A] = êê ú
ë -1 s + 1úû
sI - A = ( s + 2)( s + 1)
-1 1 és + 1 0 ù
[ sI - A] = ê ú
( s + 2)( s + 1) êë 1 s + 2úû

La réponse libre est donnée par:

1 és + 1 0 ùé 1 ù
X ( s ) = F ( s ) x (0) = ê úê ú
( s + 2)( s + 1) êë 1 s + 2úû êë-1úû
1 é s + 1 ù é s+1 2 ù
= ê ú=ê ú
( s + 2)( s + 1) ëê-( s + 1)ûú ëê- s+1 2 ûú
Soit, après TL inverse:
é x1 (t )ù é e-2t ù
ê ú=ê ú
ê x2 (t )ú ê-e-2t ú
ë û êë úû
La réponse impulsionnelle est donnée par:

N. Goléa © 2019 3-21


92

-1 1 és +1 0 ù é1ù
X ( s ) = F ( s ) B = [ sI - A] B = ê úê ú
( s + 2)( s + 1) ë 1 ê s + 2úû êë1úû
1 é s + 1ù é s+1 2 ù é s+1 2 ù
= ê ú = ê s +3 ú = ê ú
( s + 2)( s + 1) êë s + 3úû êëê (s+2)(s+1) úúû êë s+2 1 - s+1 2 úû
D'où:
é x1 (t )ù é e-2t ù
ê ú=ê ú
ê x2 (t )ú ê2e-t - e-2t ú
ë ê
û ë úû
La réponse indicielle est:

1 -1 1 és + 1 0 ù é1ù
X ( s ) = F ( s ) B = [ sI - A] B = ê úê ú
s ê
s ( s + 2)( s + 1) ë 1 s + 2úû êë1úû

é s + 1ù éê s( s+2) ùú êé 2 s - 2(s+2) úù
1 1 1
1 ê ú=ê
= ú = ê ú
s ( s + 2)( s + 1) êë s + 3úû ê s s+(s1+3s)+2 ú ê 23s - s+2 1 + 2( s1+2) ú
êë ( )( ) úû ë û
D'où:
é x (t )ù é 1 -2t
2-2e
1 ù
ê 1 ú=ê ú
ê x2 (t )ú ê 1 -2t -t ú
û êë 2 e - 2e + 2 úû
3
ë
La réponse à une rampe est:

1 -1 1 és + 1 0 ù é1ù
X ( s) = F ( s ) B = [ sI - A] B = 2 ê úê ú
s 2
s ( s + 2)( s + 1) êë 1 s + 2úû êë1úû
é ù
é s + 1ù ê s2 ( s+2) ú éê - 4 s + 2 s2 + 4( s+2) ùú
1 1 1 1
1 ê ú
= = ê ú ê= ú
s 2 ( s + 2)( s + 1) êë s + 3úû ê 2 (s+3) ú ê- 47s + 23s2 + s+2 1 - 4( s1+2) ú
êë s ( s+1)( s+2) úû ë û

D'où:
é x1 (t )ù é 2t-4 + 4e
1 1 1 -2t ù
ê ú=ê ú
ê x2 (t )ú ê 3 t - 7 + 2e-t - 1 e-2t ú
ë û ëê 2 4 4 ûú
Exemple 13. Soit le système suivant:
é-2 1 -1ù é1ù é1ù
ê ú ê ú ê ú
x = êê-1 0 1 úú x + êê-1úú u, x (0) = êê1úú
ê-2 2 -1úû ê0ú ê2ú
ë ë û ë û
y = [ 2 -1 1] x
On commence par le calcul de F ( s) .

é s + 2 -1 1 ù
ê ú
ê
[ sI - A] = ê 1 s -1 úú
ê 2 -2 s + 1úû
ë
sI - A = ( s + 1)( s + 3)( s - 1)

N. Goléa © 2019 3-22


93
é( s + 2)( s - 1) s -1 -( s - 1)ùú
ê
-1 1 ê ú
F ( s ) = [ sI - A] = ê -( s + 3) s ( s + 3) s+3 ú
( s + 1)( s + 3)( s - 1) ê ú
ê -2( s + 1) 2( s + 1) ( s + 1) úû
2
ë
La réponse libre est donnée par:
é( s + 2)( s - 1) s -1 -( s - 1)ùú é1ù éê s+1 3 ùú é s+1 3
ê ê
ê úê ú
s + 3 ú êê1úú = êê s-1 1 úú = êê s-1 1
1
X ( s ) = F ( s ) x (0 ) = ê -( s + 3) s ( s + 3)
( s + 1)( s + 3)( s - 1) ê ú
2 ê ú ê s+1 ú ê 1
ê 2( s + 1) ( s + 1) ûú ë2û ëê2 (s+3)( s-1) ûú ëê s-1 + s+3
1
ë -2( s + 1)
D'où :
é e-3t ù
ê ú
x(t ) = êê e t ú
ú
ê t -3t
ú
êe + e ú
ë û
La réponse libre en sortie est donnée par:
é e-3t ù
ê ú
y(t ) = Cx(t ) = [ 2 -1 1] êê e t ú = 3e-3t
ú
ê t ú
êe + e-3t ú
ë û
La réponse impulsionnelle est donnée par:
é( s + 2)( s - 1) s -1 -( s - 1)ùú é 1 ù
ê
1 ê úê ú
X ( s) = F( s) B = ê -( s + 3) s ( s + 3) s + 3 ú êê-1úú
( s + 1)( s + 3)( s - 1) ê ú
2 ê ú
ê -2( s + 1) 2( s + 1) ( s + 1) úû ë 0 û
ë
é ù
ê s+3 ú éê s+3 ùú
1 1

= êê - s-1 1 úú = êê - s-1 1 úú
ê ú
ê- 4 ú ê 1 - 1 ú
ë (s+3)(s-1) û ëê s+3 s-1 ûú
D'où:
é e-3t ù
ê ú
x (t ) = êê -e t úú
ê -3t ú
êe - e t ú
ë û
La réponse impulsionnelle en sortie est donnée par:
é -3t ù
ê e ú
y(t ) = Cx(t ) = [ 2 -1 1] êê -e t úú = 3e-3t
ê -3t ú
êe - e t ú
ë û
La réponse indicielle est:
é 1 - 1 e-3t ù
ê 3 3 ú
x (t ) = êê 1 - et ú
ú
ê 4 1 -3t ú
ê3 - 3 e -e út
ë û
La réponse indicielle en sortie est donnée par:

N. Goléa © 2019 3-23


94
% Calcul des réponses par la TL
é 1 - 1 e-3t ù syms s t;
ê 3 3 ú
y(t ) = Cx(t ) = [ 2 -1 1] êê ú = 1 - e-3t n=3;
1 - et ú A = [-2 1 -1;-1 0 1;-2 2 -1];
ê 4 1 -3t ú
ê 3 - 3 e - et ú B = [1;-1;0]; C = [2 -1 1];
ë û D = 0; x0 = [1;1;2];
La réponse à une rampe est: % matrice de transition
Phi=inv(s*eye(n)-A)
ù é ù % réponses libres
é 1
ê s+3 ú êê s (s+3) úú
1 2
Xl=Phi*x0
X ( s ) = 2 F ( s ) B = 2 êê - s-1 1 úú = êê - s2 ( s1-1) úú
1 1 xl=ilaplace(Xl)
s s ê ú Yl=C*Phi*x0
ê- (s+3)4( s-1) ú êê- 2 4 ú
û ë s ( s-1)(s+3) úû
yl=ilaplace(Yl)
ë % réponses impulsionnelles
é - 91s + 12 + 9(s1+3) ù Ximpul=Phi*B
ê 3s ú ximpul=ilaplace(Ximpul)
ê
=ê ú
s + s 2 - s-1
1 1 1
ú Yimpul=C*Phi*B
ê8 1 ú yimpul=ilaplace(Yimpul)
+ + -
ê 9 s 3s2 9(s+3) s-1 ú
4 1
ë û % réponses indicielles
D'où: Xechel=Phi*B/s;
é 1 t - 1 + 1 e-3t ù xechel=ilaplace(Xechel)
ê 3 9 9 ú Yechel=C*Phi*B/s;
x (t ) = êê t + 1 - et ú
ú yechel=ilaplace(Yechel)
ê4 ú % réponse à une rampe
ê 3 t - e t + 89 + 19 e-3t ú
ë û Xramp=Phi*B/s^2;
La réponse en sortie à une rampe est donnée par: xramp=ilaplace(Xramp)
Yramp=C*Phi*B/s^2;
é 1 t - 1 + 1 e-3t ù yramp=ilaplace(Yramp)
ê 3 9 9 ú Figure 3.5. Calcul des réponses par la TL.
ê ú = t - 1 1- e
y(t ) = Cx(t ) = [ 2 -1 1] ê 3( )
-3t
t + 1 - et ú
ê4 -3t
ú
ê ú
ë3 t -e + 9 + 9 e û
t 8 1

5. Calcul numérique des réponses sous Matlab


Les réponses du système linéaire
définit par (3.1) peuvent êtres évaluées A=[-3 1;-2 0];
numériquement sur un intervalle de B=[0;1]; C=[1 1];
D=0; x0 = [1;-1];
temps et tracées sous Matlab. sys = ss(A,B,C,D);
Exemple 14. Soit le système: T=10;
ts=linspace(0,T);
é x ù é-3 1ù é x1 ù é0ù é1ù % Réponse libre
ê 1ú = ê ú ê ú + ê ú u, x (0) = ê ú [yl,ts,xl] = initial(sys,x0,ts)
ê x 2 ú ê-2 0 ú ê x2 ú ê1ú ê-1ú
ë û ë ûë û ë û ë û figure
y = [1 1] x plot(ts,xl(:,1),'k',ts,xl(:,2),'k--')
% Réponse impulsionnelle
Les instructions Matlab pour calculer [yi,ts,xi] = impulse (sys,ts)
figure
et tracer les différentes réponses sont
plot(ts,xi(:,1),'k',ts,xi(:,2),'k--')
données par la figure 3.6. % Réponse à un échelon
[ye,ts,xe] = step(sys,ts)
figure
plot(ts,xe(:,1),'k',ts,xe(:,2),'k--')
% Réponse à une entrée quelconque u
u=ts
[y,ts,x] =lsim(sys,u,ts,x0)
figure
plot(ts,x(:,1),'k-',ts,x(:,2),'k')

Figure 3.6. Calcul numérique des réponses.

N. Goléa © 2019 3-24


95
1 1

0.5

0
0.5
-0.5

-1

-1.5 0
0 2 4 6 8 10 0 1 2 3 4 5

a) Réponse libre. b) Réponse impulsionnelle.


1.5 2

1.5
1
1
0.5
0.5

0 0
0 1 2 3 4 5 6 0 1 2 3 4 5 6

c) Réponse indicielle.
15 20

15
10
10

5 5

0
0
-5
0 2 4 6 8 10 0 2 4 6 8 10

d) Réponse à une rampe.


Figure 3.7. Réponses

N. Goléa © 2019 3-25


96

Chapitre 4

Contrôlabilité et Observabilité

1. Introduction
L'objectif de ce chapitre est de discuter certains concepts fondamentaux en relation avec
la commande des systèmes, à savoir, la contrôlabilité (appelée aussi commandabilité ou
gouvernabilité) et l'observabilité. Par la suite, on va voir que ces concepts sont
fondamentaux pour l'existence de la commande par retour d'état.
Considérons le système décrit par:
x = Ax + Bu
(4.1)
y = Cx

Les quatre matrices A, B , et C représentent des transformations sur l'espace d'état,


l'espace des commandes et l'espace des sorties.
On peut alors se poser deux questions importantes sur l'évolution de l'état et donc sur le
lien entre ces espaces au travers des matrices A, B , et C .

1) Peut-on déterminer une commande admissible transférant le système d'un état donné
à un autre état? La notion sous-jacente à cette question est la notion de contrôlabilité
(gouvernabilité). Ceci concerne la matrice A et l'action par B sur l'espace d'état.
2) Peut-on déterminer l'état initial à partir de l'observation des sorties y ? La notion
sous-jacente à cette question est la notion d'observabilité. Cette propriété concerne
les matrices A et C .
Dans un problème de commande, le but est de faire suivre aux états ou aux sorties du
système une loi prédéfinie (un comportement désiré). Il faut donc s'assurer que cela est
possible, c'est la notion de contrôlabilité.
D'autre part, il est souvent nécessaire de reconstruire l'état d'un système à partir des
mesures disponibles pour les sorties. La notion d'observabilité est alors nécessaire pour
s'assurer que la reconstruction de l'état est possible.

2. Contrôlabilité
Définition 1. Le système (4.1) est dit contrôlable, ssi pour tout état initial x(0) = x0 et
tout état final x(t f ) = x f , il existe un temps fini t f > 0 et une commande u(t ) continue
par morceau définie sur éëê0, t f ùûú , tel que:
tf A(t f -t )
x0 + ò e
At f
xf = e Bu(t )dt (4.2)
0

Alors le système est dit complètement contrôlable. Si non, le système est dit non
contrôlable.
Exemple 1. Circuit électrique

N. Goléa © 2019 4-1


97
iL
R2
u R1
vC C L

Figure 4.1
On prend les variables d’état x1 = vC , x2 = iL .

Les équations du circuit sont


. u - x1
C x1 =
R1
.
L x 2 = -R2 x2 + u
Soit
. 1 1
x1 = - x1 + u
CR1 CR1
. R 1
x 2 = - 2 x2 + u
L L
L
Avec la notation t1 = CR, t 2 = , nous avons,
R2
. 1 1
x1 = - x1 + u
t1 t1
. 1 1
x 2 = - x2 + u
t2 R2t 2
La solution est alors
- tt1 1 t -( tt-1v )
t1 ò 0
x1 (t ) = e x1 (0) +e u(v)dv

-t 1 t - ( t -v )

R2t 2 ò 0
x2 (t ) = e t2 x2 (0) + e t2 u(v)dv

Si on suppose que x1 (0) = x2 (0) = 0 , alors

1 t -( tt-1v )
t1 ò 0
x1 (t ) = e u(v)dv

1 t - ( t -v )
x2 (t ) = ò
R2t 2 0
e t2 u(v)dv

Si t1 ¹ t 2 alors l’entrée u (t ) peut ramener les états x1 (t ) et x2 (t ) à n’importe quelles


valeurs désirées, et le système est complètement contrôlable.
Si t1 = t 2 = t , alors,

N. Goléa © 2019 4-2


98

1 t -( t -t v )
tò0
x1 (t ) = e u(v)dv

1 t ( t -v ) x (t )
x2 (t ) = ò
R2t 0
e- t u(v)dv = 1
R2

Et l’état x2 (t ) ne peut être contrôlé indépendamment de l’état x1 (t ) , et le système n’est


pas complètement contrôlable.
Pour tester la propriété de contrôlabilité, plusieurs critères sont disponibles.
2.1 Test de contrôlabilité de Kalman
Kalman proposa un critère algébrique pour tester la contrôlabilité complète.
Pour commencer, on réécrit (4.3) comme:
tf A( t f -t )
x0 = ò e
At f
h = xf - e Bu(t )dt (4.3)
0

Cette équation est la contrainte de base que chaque signal de commande doit satisfaire.
n-1
Comme nous l’avons montré au chapitre 3 (formule de Sylvester e At = åak (t ) Ak ), on
k=0
peut écrire:
n-1
= åak (t f - t ) Ak
A(t f -t )
e (4.4)
k=0

La substitution de l'équation (4. ) dans l'équation (4. ) donne:


t f n-1 n-1 tf
h=ò
0
åak (t f - t )Ak Bu(t )dt = -åAK B ò ak (t f - t )u(t )dt
0
(4.5)
k=0 k=0

Prenons la notation:
tf
ò 0 ak (t f - t )u(t )dt = bk (4.6)

Alors l'équation (4. ) devient:


n-1
h = åAk Bbk = Bb0 + ABb1 + A2 Bb2 + ... + An-1 Bbn-1
k=0

é b0 ù é b0 ù
ê ú ê ú (4.7)
ê b1 ú ê b1 ú
é n-1 ù ê
= êë B AB  A B úû ê ú ê ú
 ú=Mê  ú
ê ú ê ú
ê ú ê ú
ëê bn-1 ûú ëê bn-1 ûú
Si le système est complètement contrôlable, alors, l'équation (4. ) doit être satisfaite
quelque soit h . La solution existe si les matrices Ak B sont linéairement indépendantes,
ce qui implique que le rang de la matrice M doit être égale à n .
A partir de cette analyse, nous pouvons énoncer la condition de la contrôlabilité complète
comme suit.
Théorème. Le système donné par l'équation (4. ) est complètement contrôlable si et
seulement si les vecteurs B, AB,..., An-1 B sont linéairement indépendants, ou la matrice

N. Goléa © 2019 4-3


99

M est de rang n .
Remarques
1. La notion de contrôlabilité ne porte que sur l'équation d'état et donc sur les matrices
( A, B) . Dire que le système est contrôlable équivaut à dire que la paire ( A, B) est
contrôlable.
2. Dans le cas d'un système mono-entrée, la matrice de contrôlabilité est carrée. D’où, le
système mono-entrée (4.1) est complètement contrôlable ssi M ¹ 0 .
Exemple 2. Étudier la contrôlabilité du circuit de l’exemple 1.
On met les équations (4.) sous forme matricielle :

. é- CR1 0 ù é 1 ù
x = êê 1 ú x + ê CR1 ú u
ú ê 1 ú
ëê 0 - RL2 ûú ëê L ûú
La matrice de contrôlabilité est:
é CR1 - C 21R2 ù
ê 1 1 ú
M = [ B AB ] = ê R2 ú
ê L1 - L2 ú
ë û

D’où: M =
R2
( LCR1 )
2 ( RL - CR1 ) .
2

Il est clair que le circuit n’est contrôlable que si ; L


R2 ¹ CR1 . Ce qui confirme le résultat
obtenu par l’analyse de la réponse.
Exemple 3. Étudier la contrôlabilité du système:
é-2 0ù é1ù
x = ê ú x + ê úu
ê-1 1 ú ê-1ú
ë û ë û
y = [1 1] x

La matrice de contrôlabilité est:


é1 2ù
M=ê ú
ê-1 -2ú
ë û
Comme M = 0  rang M = 1 < n , alors le système n’est pas complètement contrôlable.

Exemple 4. Étudier la contrôlabilité du système:


é 2 1 0ù é0 ù
ê ú ê ú
x = êê0 2 1úú x + êê1 úú u
ê0 0 2ú ê 2ú
ë û ë û
La matrice de contrôlabilité est:
é0 1 6 ù
ê ú
é 2 ù
M = ëê B AB A B ûú = êê1 4 12úú
ê2 4 8 ú
ë û
Comme M = -8 ¹ 0  rang M = 3 = n , alors le système est complètement contrôlable.

N. Goléa © 2019 4-4


100
Exemple 5. Étudier la contrôlabilité du système:
é-1 1 0 ù é1 -1ù
. ê ú ê ú
x = ê 2 0 0 ú x + êê0 0 úú u
ê ú
ê 0 1 -1ú ê0 1 ú
ë û ë û
La matrice de contrôlabilité est:
é1 -1 -1 1 3 -3ù
ê ú
é 2 ù ê
M = êë B AB A B úû = ê0 0 2 -2 -2 2 úú
ê0 1 0 -1 2 -1úû
ë
On teste la sous-matrice
1 -1 -1
0 0 2 = -2
0 1 0

Comme son déterminant n’est pas nul, le rang M = 3 = n , alors le système est
complètement contrôlable.
Exemple 6. Étudier la contrôlabilité du système:
é 0 1 0 ù é 0ù
ê ú ê ú
x = êê 0 0 1 úú x + êê0úú u
ê-a -a -a ú ê1 ú
ë 3 2 1û ë û
y = [1 0 0 ] x

La matrice de contrôlabilité est:


é0 0 1 ù
ê ú
M = éêë B AB A B ùúû = êê0 1
2
-a1 ú
ú
ê ú
êë1 -a1 a12 - a2 úû

M = 1 ¹ 0 . Donc le système est de rang n = 3 et ainsi complètement contrôlable "ai .

Notez qu’on pouvait obtenir ce résultat, sans faire de calcul, en remarquant que le
système est sous la forme canonique contrôlable.
2.2 Critère modal de contrôlabilité (Chen-Desoer)
Considérons le système décrit par :
.
x = Ax + Bu (4.8)
y = Cx

Soient li , i = 1,2,..., n les valeurs propres de la matrice A , et vi Î Â n , i = 1,2,..., n les


vecteurs propres associes.
La matrice modale est donnée par T = [v1 v2  vn ] Î Â n´n .

On choisi la matrice de transformation T comme étant la matrice des vecteurs propres de


A . Pour la transformation x = Tz , on obtient:

N. Goléa © 2019 4-5


101
.
z(t ) = Az + Bu
(4.9)
y = Cz

avec A = T -1 AT , B = T -1 B,C = CT .

Les conditions de contrôlabilité s'énoncent comme suit:


Le système ( ) est complètement contrôlable si:

1) Dans la matrice A, chaque block de Jordan est associé à une valeur propre différente.

2) Les éléments d'une ligne de B qui correspond à la dernière ligne d'un block de
Jordan ne sont pas tous nuls.

3) Les éléments d'une ligne de B qui correspond à une valeur propre simple ne sont pas
tous nuls.
Exemple 7. Soit le système:
é7 2 6ù é0 1 ù
. ê ú ê ú
x = ê-2 3 2 ú x + êê1 -1úú u
ê ú
ê 2 2 -1ú ê1 0 ú
ë û ë û
y = [ 0 0 1] x

Les valeurs propres de la matrice A , sont l1 = -3,l2 = 5,l3 = 7 .

La matrice modale associée est:


é- 1 -1 7 ù é1 1 -4 ù
ê 2 ú -1 1 êê 5 ú
ê ú
T = ê- 2 1 -3ú ,T =
1
- 2 - 152 -5úú
ê
-5 ê
ê 1 ûúú ú
ëê 1 0 ë-1 -1 -1û
Par la transformation x = Tz , on obtient la forme modale :
é-3 0 0ù é 53 0 ù
. ê ú ê ú
z = êê 0 5 0úú z + êê 52 -1úú u
ê 0 0 7ú ê2 0 ú
ë û êë 5 úû

Les modes -3 et 7 sont contrôlés par l’entrée u1 , et le mode 5 est contrôlé à la fois par
l’entrée u1 et l’entrée u2 . Suivant la condition 3, ce système est complètement contrôlable.

Exemple 8. Soit le système:


é1 2 -1ù é1 ù
. ê ú ê ú
x = ê0 -1 0 ú x + êê0úú u
ê ú
ê1 -4 3 ú ê1 ú
ë û ë û
Les valeurs propres sont l1 = -1,l2 = 2,l3 = 2 .

La matrice modale associée est :

N. Goléa © 2019 4-6


102

é-4 -1 0ù é0 1 0ù
ê ú -1 1 ê ú
ê
T=ê 9 0 0ú ,T = ê-9 -4 0úú
ú ê
ê 10 1 1 ú 9ê ú
ë û ë 9 -6 9 û
La forme modale est alors:
é-1 0 0ù é0ù
. ê ú ê ú
z = êê 0 2 1 úú z + êê-1úú u
ê 0 0 2ú ê2ú
ë û ë û
Suivant la condition 3 le mode -1 n’est pas contrôlable. Suivant les conditions 1 et 2, le
block de Jordan associé au mode 2 est contrôlable. Donc le système n’est pas
complètement contrôlable.
Exemple 9. Soit le système:
é-1 1 0ù é1 1 ù
ê ú ê ú
x = ê 0 -1 0 ú x + êê0 0úú u
ê ú
ê0 0 -2úû ê1 0ú
ë ë û
Suivant les conditions 2 et 3, ce système n'est pas contrôlable.
2.3 Condition de contrôlabilité dans le plan s
La condition de contrôlabilité complète peut être déterminée en terme de fonction de
transfert ou matrice de transfert.
Définition. Une condition nécessaire et suffisante pour la contrôlabilité complète est
qu'aucune simplification pôle/zéro ne se présente dans la fonction de transfert ou la
matrice de transfert du système. S'il y a une simplification, alors le système ne peut pas
être commandé dans ce mode simplifié.
Exemple 11. Soit le système:
é-1 1 0 ù é1 ù
. ê ú ê ú
x = ê 2 0 0 ú x + êê0úú u
ê ú
ê 0 1 -1ú ê1 ú
ë û ë û
y = [0 1 -1] x

Puisque le rang de la matrice:


é1 -1 3 ù
ê ú
é 2 ù
M = êë B AB A B úû = êê0 2 -2úú
ê1 -1 3 ú
ë û
est égal à 2, le système n'est pas complètement contrôlable.
Calculons la fonction de transfert associée à ce système:

æ é1 0 0ù é-1 1 0 ù ö÷-1 é1 ù é s + 1 -1 -1
0 ù é1 ù
çç ê ú ê ú ÷÷ ê ú ê ú ê ú
G ( s ) = [0 1 -1]ççç s êê0 1 0úú - êê 2 0 0 úú ÷÷ êê0úú = [0 1 -1] êê -2 s 0 úú êê0úú
çç ê ÷÷
ú ê
è ë0 0 1 û ë 0 1 -1û ø÷ ë1 ûú ÷ ê ú ê -1 s + 1úû êë1 úû
ë 0
Soit

N. Goléa © 2019 4-7


103

é s ( s + 1) s + 1 0 ù é1ù
ê úê ú
ê úê ú
[ ]ê ( ) ( )
2
0 1 - 1 2 s + 1 s + 1 0 ú ê 0ú
ê ú
ê 2 s + 1 ( s + 2)( s - 1)ú êë1úû
G ( s) = ë û = -( s + 1)( s - 2) = -( s - 2)
( s - 1)( s + 2)( s + 1) ( s - 1)( s + 2)( s + 1) ( s - 1)( s + 2)
Une simplification du facteur ( s + 1) se produit entre le numérateur et le dénominateur
de cette fonction de transfert. Alors ce système n'est pas complètement contrôlable. Donc,
nous arrivons à la même conclusion obtenue avec la matrice M.
2.4 Contrôlabilité avec Matlab:
Les commandes suivantes de Matlab permettent de vérifier la contrôlabilité :
% Étude de la contrôlabilité
A=[-1 0 0; 0 -2 0; 0 0 -3]
B=[1; 1; 1]
C=[1 1 1]
M=ctrb(A,B)
rank(M)

3. Observabilité
Le concept de l'observabilité est très important parce que, dans la pratique, la difficulté
rencontrée dans la commande avec retour d'état est que certaines des variables d'état ne
sont pas accessibles pour la mesure directe, alors il est devenu nécessaire d'estimer les
variables d'état mesurables afin de construire les signaux de commande. Cette estimation
des variables d'état est possible si et seulement si le système est complètement
observable.
Pour développer la condition d'observabilité, nous considérons le système autonome
(u = 0) donné par les équations
.
x = Ax (4.10)
y = Cx

Le raisonnement n’altère en rien le résultat obtenu, puisque l’entrée du système n’a aucun
effet sur son observabilité.
Définition. Le système (4.10) est dit complètement observable si chaque état x(t0 ) peut
être déterminé à partir de l'observation de y(t ) pendant un intervalle de temps fini,
t0 £ t £ t1 . Le système est, donc, complètement observable si chaque transition de l'état
affecte éventuellement chaque élément du vecteur de sortie y .

3.1 Critère d'observabilité de Kalman


Proposition: Le système (4.10) est observable si et seulement si la matrice
é C ù
ê ú
ê CA ú
N = êê
T ú
ú
ê  ú
ê n-1 ú
ëêCA ûú
est de rang égal à la dimension de l'espace d'état, c'est-à-dire n.
Preuve:

N. Goléa © 2019 4-8


104

Considérant le système décrit par les équations ( ). Le vecteur de sortie y(t ) est:

y(t ) = Ce At x(0) (4.11)

et e At peut être écrit comme suit :


n-1
e At = åak (t ) Ak (4.12)
k=0

Par conséquent, nous obtenons :


n-1
y(t ) = åak (t )CAk x(0)
k=0

ou
é C ù éa0 0 0 ù
ê úê ú
ê CA ú ê 0 a1  ú
ê
y(t ) = ê úê ú x(0) (4.13)
 úê   0 úú
ê úê
ê n-1 ú ê 0 0 an-1 úúû
êëCA úû êë
Si le système est complètement observable, alors, étant donnée l'observation de la sortie
y(t ) pendant un intervalle de temps 0 £ t £ t1 , x(0) est uniquement déterminé à partir
de l'équation (4.13):
-1 -1
éa0 0 0 ù é C ù
ê ú ê ú
ê0 a1  ú ê CA ú
x(0) = êê ú ê ú y(t ) (4.14)
ê   0 úú êê  úú
ê0
ëê 0 an-1 úûú êëêCAn-1 úûú

La condition précédente est équivalente à: le système décrit par les équations (4.10) est
complètement observable ssi la matrice N T (nm ´ n) (dite matrice d'observabilité)

é C ù
ê ú
ê CA ú
N = êê
T ú
ú (4.15)
ê  ú
ê n-1 ú
ëêCA ûú
est de rang n , ou elle a n vecteurs colonne linéairement indépendants.
Exemple 12. Soit le système:
é x 1 ù é 2 1 0ù é x1 ù é0ù
ê ú ê úê ú ê ú
ê x 2 ú = ê0 2 1 ú ê x2 ú + ê1 ú u
ê ú ê úê ú ê ú
ê x ú ê0 0 2ú ê x ú ê2ú
ë 3û ë û ë 3û ë û
éx ù
é y1 ù é 3 0 0ù ê 1 ú
ê ú=ê ú êx ú
ê y2 ú ê 4 0 0ú ê 2 ú
ë û ë û êx ú
ë 3û
Observabilité:

N. Goléa © 2019 4-9


105

é 3 0 0ù
ê ú
ê 4 0 0ú
é C ù ê ú
ê ú ê 6 3 0ú
ê ú ê
N = ê CA ú = ê
T ú
8 4 0 ú
ê 2ú ê ú
êëCA úû ê ú
ê12 12 3ú
ê ú
ëê16 16 4 úû
rang N T = 3 = n , le système est donc complètement observable.

Exemple 13. Soit le système:


é x 1 ù é1 0 0ù é x1 ù é0ù
ê ú ê úê ú ê ú
ê x 2 ú = ê0 2 0ú ê x2 ú + ê0ú u
ê ú ê úê ú ê ú
ê x ú ê0 0 3ú ê x ú ê2ú
ë û ë3 û ë 3û ë û
éx ù
é y ù é3 0 1ù ê 1 ú
ê 1ú = ê ú ê x2 ú
ê y 2 ú ê0 2 0ú ê ú
ë û ë û êx ú
ë 3û
é3 0 1ù
ê ú
ê0 2 0ú
ê ú
ê3 0 3úú
N = êê
T

ê0 4 0úú
ê3 0 9úú
ê
ê ú
êë0 8 0úû

rang N T = 3 = n , le système est donc complètement observable.

Exemple 14. Soit le système:


é-2 0 ù é1 ù
x = ê ú x + ê úu
ê d -3ú ê0 ú
ë û ë û
y = [ 0 1 ] x + [ 0 ]u

é0 d ù
N=ê ú
ê1 -3ú
ë û
N = -d le système est complètement observable si d ¹ 0 .

Exemple 15. Soit le système:


é 0 1 0 ù é 0ù
ê ú ê ú
x = êê 0 0 1 úú x + êê0úú u
ê -a1 -a2 ûú ê ú
ë-a0 ë1 û
y = [1 0 0 ] x + [ 0 ]u

N. Goléa © 2019 4-10


106

é1 0 0ù
ê ú
N = êê0 1 0úú
T

ê0 0 1 ú
ë û

N T = 1 ¹ 0, le système est donc complètement observable.

Exemple 16. Soit le système:


é-2 0ù é1ù
x = ê ú x + ê úu
ê-1 1 ú ê-1ú
ë û ë û
y = [1 1] x + [0 ]u

é1 1ù
NT = ê ú
ê1 1ú
ë û

N T = 0 , donc le système n'est pas complètement observable.

3.2 Critère modal d'observabilité (Chen-Desoer)


On transforme le système (4.10), sous forme diagonale si la matrice A a des valeurs
propres distinctes, sinon on passe à la forme de Jordan.
On choisi la matrice de transformation T comme étant la matrice des vecteurs propres de
A , soit z = Tx.
Ainsi on obtient:
.
z(t ) = Az + Bu
(4.16)
y = Cz

avec A = T -1 AT , B = T -1 B,C = CT .

Les conditions d'observabilité s'énoncent comme suit:


Le système (4.16) est complètement observable si:

1) Dans la matrice A, chaque block de Jordan est associé à une valeur propre différente.

2) Les éléments d'une colonne de C qui correspond à la première ligne d'un block de
Jordan ne sont pas tous nuls.

3) Les éléments d'une colonne de B qui correspond à une valeur propre simple ne sont
pas tous nuls.
Exemple 17. Soit le système:
é1 0ù é1ù
x = ê ú x + ê úu
ê0 2ú ê2ú
ë û ë û
y = [1 2] x

Suivant la condition 3, ce système est observable.


Exemple 18. Soit le système:

N. Goléa © 2019 4-11


107

é-1 1 0ù é 0ù
ê ú ê ú
x = ê 0 -1 1 ú x + ê 2ú u
ê ú ê ú
ê 0 -1úû ê1ú
ë0 ë û
é-1 0 0ù
y=ê úx
ê 1 0 0ú
ë û
Suivant la condition 2, ce système est observable.
Exemple 19. Soit le système:
é-1 1 0 0 0ù é0 1ù
ê ú ê ú
ê 0 -1 1 0 0 ú ê0 0ú
ê ú ê ú
x = êê 0 0 -1 0 0 úú x + êê1 0úú u
ê0 0 0 -3 1 úú ê0 0úú
ê ê
ê0 0 -3úúû ê2 1 úúû
êë 0 0 êë
é-1 1 0 0 0ù
y=ê úx
ê 0 -1 1 1 0ú
ë û
Suivant les conditions 1 et 2, ce système est observable.
Exemple 20. Soit le système:
é1 0ù é1ù
x = ê ú x + ê úu
ê0 2ú ê2ú
ë û ë û
y = [ 0 2] x

Suivant la condition 3, ce système n'est pas observable.


Exemple 21. Soit le système:
é-1 1 0ù é 0ù
ê ú ê ú
x = ê 0 -1 1 ú x + ê 2ú u
ê ú ê ú
ê0 0 -1úû ê1ú
ë ë û
é0 0 1 ù
y=ê úx
ê0 1 0 ú
ë û
Suivant la condition 2, ce système n'est pas observable.
Exemple 22. Soit le système:
é-1 1 0 0 0ù é0 1ù
ê ú ê ú
ê 0 -1 1 0 0 ú ê0 0ú
ê ú ê ú
x = êê 0 0 -1 0 0 úú x + êê1 0úú u
ê0 0 0 -3 1 úú ê0 0úú
ê ê
ê0 0 -3úúû ê2 1 úúû
êë 0 0 êë
é-1 1 0 0 0ù
y=ê úx
ê 0 -1 1 0 0ú
ë û
Suivant la condition 2, ce système n'est pas observable.

N. Goléa © 2019 4-12


108
3.3 Condition d'observabilité complète dans le plan s
La condition d'observabilité complète peut être déterminée en terme de fonction de
transfert ou matrice de transfert. La condition nécessaire et suffisante pour l'observabilité
complète est qu'aucune simplification pôle/zéro ne se présente dans la fonction de
transfert ou la matrice de transfert. S'il y a une simplification, le mode simplifié ne peut
pas observé dans la sortie.
Exemple 23. Soit le système:
é0 1 0ù é 0ù
. ê ú ê ú
x = êê 0 0 1 úú x + êê0úú u
ê-6 -11 -6ú ê1ú
ë û ë û
y = [ 4 5 1] x

Notons que la commande u n'affecte pas l'observabilité complète du système. Pour


examiner l'observabilité complète, nous pouvons mettre u = 0 . Pour ce système, nous
prenons :
é ù é 1ù
ê C ú ê4 5
ú
ê ú
N = ê CA ú = ê-6 -7 -1úú
T ê
ê ú ê 5 -1úû
êëCA2 úû ë 6

comme N = 0 , le rang de la matrice N T est inférieur à 3. Donc, le système n'est pas


complètement observable.
La fonction de transfert de ce système est :
Y ( s) ( s + 1)( s + 4)
=
U ( s) ( s + 1)( s + 2)( s + 3)

le facteur ( s + 1) se présente dans le numérateur et le dénominateur, il peut être simplifié.


Ce qui signifie qu'il y a des états initiaux x(0) , non nuls, qui ne peuvent être déterminés à
partir de la mesure de y(t ) .

3.4 Observabilité avec Matlab


% Étude de l'observabilité
A=[-1 0 0; 0 -2 0; 0 0 -3]
B=[1; 1; 1]
C=[1 2 1]
NT=obsv(A,C)
rank(NT)

4. Principe de dualité
Considérons le système S1 décrit par :

x = Ax + Bu
(4.17)
y = Cx

et le système dual S2 décrit par:

N. Goléa © 2019 4-13


109

x = AT x + C T u
(4.18)
y = BT x

Le principe de dualité indique que si le système S1 est contrôlable (resp. observable) alors
le système dual S2 est observable (resp. contrôlable).

Ceci peut être facilement vérifié, en remarquant que la matrice de contrôlabilité de S1 est
la matrice d'observabilité de S2 , et que la matrice d'observabilité de S1 est la matrice de
contrôlabilité de S2 .

5. Décomposition de Kalman
La décomposition de Kalman va nous permettre de mieux comprendre comment
interviennent les problèmes de contrôlabilité et d'observabilité dans les systèmes
linéaires.
Un système linéaire peut toujours se décomposer en 4 sous-systèmes S1, S2, S3, S4 où S1
est contrôlable et observable, S2 est non contrôlable et observable, S3 est contrôlable et
non observable et S4 n'est ni contrôlable ni observable. Les dépendances entre les sous-
systèmes peuvent être résumées par la figure ci-dessous.
y
O-C

O-NC

u
NO-C

NO-NC

Figure 4.2. Principe de la décomposition de Kalman ; C : contrôlable, O : observable, :


non-contrôlable, Ō : non observable.
Notons que sur la figure, il n'existe aucun chemin (en respectant le sens des flèches) qui
mène de l'entrée u vers un système non contrôlable. De même, il n'existe aucun chemin
qui mène d'un sous-système non observable vers y . La figure ci-dessous montre, sous
une forme développée la décomposition en 4 sous-systèmes Si , chacun étant associé au
sous-vecteur d'état xi . D'après ce schéma, nous pouvons en déduire qu'un système
linéaire à temps continu peut toujours se mettre (après un changement de base adéquat)
sous la forme suivante:
é A11 A12 0 0 ù é B1 ù
ê ú ê ú
ê 0 A22 0 0 ú ê0ú
x = êê ú x + ê úu
ú ê B3 ú
ê A31 A32 A33 A34 ú ê ú (4.19)
ê 0 A44 úûú ê0ú
ëê A42 0 ëê ûú
y = [C1 C2 0 0 ] x + Du

où les Aij , Bi ,C j et D sont des matrices.

Remarque. Soit le système décrit par

N. Goléa © 2019 4-14


110
.
x = Ax + Bu (4.20)
y = Cx + Du

Sous la transformation z = Tx , le système devient


.
z = Az + Bu
(4.21)
y = Cz + Du

avec A = T -1 AT , B = T -1 B,C = CT .

Toutes les propriétés de stabilité, de contrôlabilité et d'observabilités sont préservées par


la transformation T .
Les matrices de contrôlabilité et d'observabilité pour la nouvelle représentation sont
données par:
M = T -1 M
(4.22)
N = NT

Comme T est toujours de rang n , alors la contrôlabilité et l'observabilité dépendent


toujours des rangs de M et N respectivement.

6. Réalisation minimale
Définition. Une représentation d'état ( A, B,C , D) est une réalisation de G ( s ) si
-1
G( s) = C [ sI - A] B + D (4.23)

Le problème de réalisation consistant à déterminer une représentation d’état associée à


une fonction de transfert donnée. Ce problème est lié aux propretés de contrôlabilité et
d’observabilité.
Exemple 24. Soit la fonction de transfert :
-s+2
G (s) =
( s + 2)( s - 1)
Les représentation d'état suivantes sont toutes des réalisations de G ( s ) :

- contrôlable et non observable :


é0 1 0ù é0 ù
. ê ú ê ú
x = êê0 0 1 ú x + êê0úú u
ú
ê2 1 -2úû ê1 ú
ë ë û
y = [2 1 -1] x

- non contrôlable et observable :


é0 0 2ù é2ù
. ê ú ê ú
x = êê1 0 1 ú x + êê 1 úú u
ú
ê0 1 -2úû ê-1ú
ë ë û
y = [0 0 1] x

N. Goléa © 2019 4-15


111
- non contrôlable et non observable :
é1 0 0ù é1 ù
. ê ú ê ú
x = êê0 -1 0 úú x + êê0úú u
ê0 0 -2ú ê1 ú
ë û ë û
y = éë 13 0 43 ùû x

- contrôlable et observable :
. é0 1 ù é0 ù
x=ê ú x + ê úu
ê2 -1ú ê1 ú
ë û ë û
y = [ 2 -1] x

Cet exemple montre que ces représentations d’état ne sont pas équivalentes et que la
simplification entre un pôle et un zéro est directement liée aux propriétés d’observabilité
et de contrôlabilité de la réalisation. Aussi, la réalisation (4.) est minimale alors que les
trois autres ne le sont pas.
-1
Définition. Une réalisation d'une fonction de transfert G( s) = C [ sI - A] B + D est dite
minimale s'il n'existe aucune réalisation d'ordre inférieur dont la fonction de transfert est
G( s) .

Le concept de minimalité est directement relié aux concepts de contrôlabilité et


d'observabilité par le théorème suivant.
Théorème. Une représentation d'état est une réalisation minimale ssi elle est contrôlable
et observable.
Exemple 25. Soit les représentations d'état:
é x 1 ù é 0 1 0 ù é x1 ù é0ù
ê ú ê úê ú ê ú
ê x 2 ú = ê 0 0 1 úú êê x2 úú + êê0úú u
ê ú ê
ê x ú ê-6 -11 -6ú ê x ú ê1 ú
ë 3û ë û ë 3û ë û
y = [3 1 0] x

et
é x 1 ù é 0 1 ù é x1 ù é0ù
ê ú=ê ú ê ú + ê úu
ê x 2 ú ê-2 -3ú ê x2 ú ê1 ú
ë û ë ûë û ë û
y = [ 3 1] x

Déterminer laquelle est réalisation minimale, et calculer H ( s) .

1. Tests de contrôlabilité et d'observabilité.


é0 0 1 ù
ê ú
é 2 ù
M = êë B AB A B úû = ê0 1 -6úú
ê
ê1 -6 25 ú
ë û
M = -1 .

N. Goléa © 2019 4-16


112

é 3 0 -6 ù
é ù êê ú
N = êC T
ë
T
AC T
(A )
T 2
C ú = ê1 3 -11úú
T
û ê ú
ë 0 1 -3 û
N =0.

2. Tests de contrôlabilité et d'observabilité.


é0 1 ù
M = [ B AB ] = ê ú
ê1 -3ú
ë û
M = -1

é 3 1ù
N = éêëC T AT C T ùûú = ê ú
ê-2 0ú
ë û
N = 2.

La deuxième représentation est une réalisation minimale, puisqu'elle est contrôlable et


observable.
Les deux représentations réalisent la fonction de transfert suivante:
s+3
H ( s) =
s + 3s + 2
2

N. Goléa © 2019 4-17


113

Chapitre 5

Commande par placement de pôles

1. Introduction
Dans ce chapitre, nous présenterons une méthode de commande appelée la technique du
placement de pôles. Nous supposerons que toutes les variables d'état sont mesurables et
sont disponibles pour la rétroaction. Si le système considéré est complètement
contrôlable, alors les pôles du système en boucle fermée peuvent être placés à n'importe
quel endroit désiré au moyen d'un retour d'état à travers une matrice de gain approprié.
Cette technique de conception commence par une détermination des pôles désirés en
boucle fermée basés sur les conditions de la réponse transitoire et/ou de la réponse
fréquentielle, telles que la vitesse, l'amortissement, ou la bande passante, aussi bien que
des conditions d'état d'équilibre.

2. Principe de la commande par placement de pôles


Considérons le système linéaire d'ordre n décrit par:
.
x = Ax + Bu (5.1)
Le but de la commande par placement de pôles est d'imposer au système un
comportement spécifié ou des performances désirées à travers l'application d'une loi de
commande qui place les pôles du système en boucle fermée aux positions qui réalisent ces
performances. La détermination des pôles désirés en boucle fermée est basée sur des
critères de réponse transitoire et/ou de réponse fréquentielle, telles que la vitesse,
l'amortissement, ou la bande passante, aussi bien que sur des conditions sur le régime
permanant.
Im

Placement
de pôles
Re

Pôles en BO
Pôles en BF

Figure 5.1. Principe du placement de pôles.


Cette tâche peut être accomplie en utilisant la loi de commande suivante:
u = -Kx (5.2)
Ce qui signifie que le signal de commande est déterminé par le vecteur d'état instantané.
Une telle loi de commande est appelée retour d'état. La matrice K de dimension (1´ n)
est appelée matrice de gain.

N. Goléa © 2019 5-1


114
La figure 5.2 montre le système défini par l'équation (5.1), en boucle ouverte puis en
boucle fermée, sous l'effet de la loi de commande (5.2).
u x x y
B + ò C
u x x y
B + ò C
A

A -K

Figure 5.2. (a) Système en boucle ouverte, (b) Système en boucle fermée avec u = -Kx .
La substitution de l'équation (5.2) dans l'équation (5.1) donne:
.
x = ( A - BK ) x (5.3)

La solution de cette équation est donnée par:

x(t ) = e( A-BK )t x(0) (5.4)

où x(0) est l'état initial. Les caractéristiques de stabilité et de la réponse transitoire sont
déterminées par les valeurs propres de la matrice [ A - BK ] . Si la matrice de gain K est
choisie correctement, la matrice [ A - BK ] peut être une matrice stable, et pour chaque
x(0) ¹ 0 , il est possible que le vecteur x(t ) tend vers 0 quand t tend vers l'infini. Les
valeurs propres de la matrice [ A - BK ] sont appelées les pôles de régulation. Si ces pôles
de régulation sont placés dans le côté gauche du plan s , alors x(t ) tend vers 0 lorsque t
tend vers l'infini.
Si le comportement désiré est spécifié à travers la sélection de n valeurs propres désirées,
alors le polynôme caractéristique désiré en boucle fermée est donné par:

a( s) = s n + a1 s n-1 + ... + an-1 s + an (5.5)

Comme le système en boucle fermée doit avoir comme pôles ceux du polynôme désiré
a( s) , l'égalité suivante doit être vérifiée:

sI - [ A - BK ] = a( s) = s n + a1 s n-1 + ... + an-1 s + an (5.6)

Mais avons tout ça, le système doit vérifier une condition nécessaire et suffisante pour
pouvoir placer ses pôles via un retour d'état.
3. Condition nécessaire et suffisante pour le placement de pôles
On démontre maintenant que la condition nécessaire et suffisante, pour le placement
arbitraire des pôles, est que le système soit complètement contrôlable. On commence
d'abord par prouver que si le système n'est pas complètement contrôlable, alors il y'a des
valeurs propres de la matrice [ A - BK ] qui ne peuvent être déplacées par retour d'état.

On suppose que le système (5.1) n'est pas complètement contrôlable. Alors le rang de la
matrice de contrôlabilité est inférieur à n , soit rang M = q < n . Ce qui signifie qu'il y a q
vecteurs linéairement indépendants dans la matrice de contrôlabilité. Désignons les q
vecteurs linéairement indépendants par f1 , f2 ,..., fq , et choisissons les n - q vecteurs
additionnels hq+1 , hq+2 ,..., hn , tel que la matrice

N. Goléa © 2019 5-2


115

P = éëê f1 f2  fq hq+1 hq+2  hn ùúû

est de rang n .
Alors, on peut transformer le système (5.1) sous la forme:

z = Az + Bu (5.7)

avec
é A11 A12 ù
A = P -1 AP = ê ú
ê 0 A22 úû
ë
(5.8)
é B11 ù
B = P -1 B = ê ú
ê 0 ú
ë û
Maintenant, on définit:

K = KP = [ K1 K2 ] (5.9)

Alors nous avons:

sI - [ A - BK ] = P -1 ( sI - A + BK ) P = sI - P -1 AP + P -1 BKP = sI - A + BK
é A11 A12 ù é B11 ù sI q - A11 + B11 K1 -A12 + B11 K 2
= sI - ê ú + ê ú[K K2 ] = (5.10)
ê 0 A22 úû êë 0 úû 1 0 sI n-q - A22
ë
= sI q - [ A11 - B11 K1 ] . sI n-q - A22

où I q est la matrice identité de dimension q ´ q et I n-q est la matrice identité de


dimension (n - q) ´(n - q) .

Notons que les valeurs propres de A22 ne dépendent pas de K . Ainsi, si le système n'est
pas complètement contrôlable, alors il y a des valeurs propres de la matrice A qui ne
peuvent être arbitrairement placées. Donc, pour placer arbitrairement les valeurs propres
de la matrice [ A - BK ] , le système doit être complètement contrôlable (condition
nécessaire).
Exemple 1. Soient les systèmes:
é-1 1 0ù é0 ù
ê ú ê ú
1) x = êê 0 -1 0úú x + êê1 úú u
ê0 0 1úû ê1 ú
ë ë û
é-1 1 0ù é1 ù
ê ú ê ú
2) x = êê 0 -1 0úú x + êê0úú u
ê0 0 1úû ê1 ú
ë ë û
é-1 1 0ù é1 ù
ê ú ê ú
3) x = ê 0 -1 0ú x + êê1 úú u
 ê ú
ê0 0 1úû ê0ú
ë ë û
Les trois systèmes possèdent les mêmes valeurs propres -1,-1 et 1 . Il est clair que le
premier système est totalement contrôlable, tandis que pour le système 2, les modes

N. Goléa © 2019 5-3


116

-1,-1 ne sont pas contrôlables, alors que pour le système 3 le mode 1 n'est pas
contrôlable.
Le polynôme caractéristique désiré est donné par:

a( s) = ( s + 2)( s + 3)( s + 4) = s 3 + 9s 2 + 26 s + 24

En deuxième étape, on calcule le polynôme caractéristique de [ A - BK ], soit:

é-1 1 0ù é0ù é -1 1 0 ù
ê ú ê ú ê ú
[ A - BK ] = êê 0 -1 0úú - êê1 úú [ k1 k2 k3 ] = êê-k1 -k2 - 1 -k3 úú
ê0 0 1úû êë1 úû ê-k -k2 1 - k3 úû
ë ë 1
é s 0 0ù é -1 1 0 ù és + 1 -1 0 ù
ê ú ê ú ê ú
é sI - ( A - BK )ù = ê0 s 0ú - ê-k1 -k2 - 1 -k3 ú = ê k1 s + k2 + 1 k3 ú
ë û ê ú ê ú ê ú
ê0 0 s ú ê-k -k 1 - k ú ê k k s + k - 1ú
ë û ë 1 2 3û ë 1 2 3 û
dont le polynôme caractéristique est:

sI - [ A - BK ] = s 3 + (k2 + k3 + 1) s 2 + (k1 + 2k3 - 1) s + k3 - k1 - k2 - 1

L'égalisation terme à terme entre (5.8) et (5.9) donne:


k2 + k3 + 1 = 9
k1 + 2k3 - 1 = 26
k3 - k1 - k2 - 1 = 24

Ainsi, on obtient k1 = -3, k2 = -7, k3 = 15 , et la loi de commande :

u = 3x1 + 7 x2 - 15 x3

On peut vérifier que le système en boucle fermée:


é-1 1 0 ù
. ê ú
x = ê 3 6 -15úú x
ê
ê 3 7 -14 ú
ë û
possède les valeurs propres -2,-3,-4 .
Pour le système 2, nous avons:
é-1 1 0ù é1 ù é-k1 - 1 1 - k2 -k3 ù
ê ú ê ú ê ú
[ A - BK ] = ê 0 -1 0ú - ê0ú [ k1 k2 k3 ] = êê 0
ê ú ê ú -1 0 úú
ê0 0 1 úû êë1 úû ê -k -k2 1 - k3 úû
ë ë 1

é s 0 0ù é-k1 - 1 1 - k2 -k3 ù é s + k1 + 1 k2 - 1 k3 ù
ê ú ê ú ê ú
é sI - ( A - BK )ù = ê0 s 0ú - ê 0 - 1 0 ú=ê 0 s +1 0 ú
ë û ê ú ê ú ê ú
ê0 0 s ú ê -k ú
-k2 1 - k3 û ë ê k1 k2 s + k3 - 1úû
ë û ë 1

dont le polynôme caractéristique est:

sI - [ A - BK ] = s 3 + (k1 + k3 + 1) s 2 + (2k3 - 1) s + k3 - k1 - 1

L'égalisation terme à terme entre (5.8) et (5.9) donne:

N. Goléa © 2019 5-4


117

k1 + k3 + 1 = 9
2k3 - 1 = 26
k3 - k1 - 1 = 24

Ces trois équations algébriques n'ont pas de solution. Donc, on ne peut déplacer les
valeurs propres du système vers -2,-3,-4 .
La solution consiste à garder les pôles non contrôlables dans le polynôme caractéristique
désiré. Comme alternative, on choisit les pôles désirés comme: -1,-1,-4 . Alors, le
polynôme caractéristique désiré est donné par:

a( s) = ( s + 1)( s + 1)( s + 4) = s 3 + 6 s 2 + 9s + 4

L'égalisation terme à terme donne:


k1 + k3 + 1 = 6
2k3 - 1 = 9
k3 - k1 - 1 = 4

Ainsi, nous obtenons: k1 = 0, k2 = 0, k3 = 5 , soit,

u = -5 x3

On peut vérifier que le système en boucle fermée:


é-1 1 -5ù
. ê ú
x = êê 0 -1 0 úú x
ê0 0 -4 úû
ë
possède les valeurs propres: -1,-1,-4 .
Donc nous avons déplacer le mode contrôlable 1 vers -4 , et garder les modes -1,-1
stables mais non contrôlables. Le système est dit stabilisable.
Le système trois n'est pas stabilisable, puisque le mode instable 1 n'est pas contrôlable.
4. Placement de pôles avec consigne
En pratique, il est toujours désiré que le système suit une certaine trajectoire ou consigne
r , et ceci dans le but d'assurer une certaine tâche ou fonction pratique.
A titre d'exemple, soit le système d'ordre n :
.
x = Ax + Bu (5.11)
y = Cx

où il est souhaité que la sortie y suit la consigne r(t ) . La loi de commande qui assure la
stabilisation du système et le suivi de la consigne r(t ) est définie par:

u = -Kx + kr r (5.12)

L'introduction de cette loi de commande dans l'équation d'état permet d'obtenir, en


boucle fermée:

N. Goléa © 2019 5-5


118
.
x = [ A - BK ] x + Bkr r (5.12)
y = Cx

La consigne r(t ) apparaît comme étant la nouvelle entrée du système.


r x x y
kr + B + ò C

-K

Figure 5.3. Placement de pôles avec suivi d'une consigne .


Le choix de kr est basé sur le fait que le gain statique entre y et r est égal à 1. Ce qui
permet un suivi parfait.
En boucle fermée, nous avons est:
-1
Y ( s) = C ( sI - [ A - BK ]) Bkr R(s) (5.13)

Si r(t ) est un échelon d'amplitude r0 , alors R( s) = r0 / s et

r0 -1
Y ( s) = C ( sI - [ A - BK ]) Bkr (5.14)
s
La valeur de y en régime permanant est donnée par:
-1 -1
lim y(t ) = lim sY ( s) = lim r0C ( sI - [ A - BK ]) Bkr = -r0C [ A - BK ] Bkr = r0 (5.15)
t ¥ s0 s0

D’où, on obtient:
1
kr = - -1
(5.16)
C [ A - BK ] B

Remarque. L'inverse de [ A - BK ] existe si le système en boucle fermée n'a pas de pôle à


l'origine.
Exemple 2. Soit le système:
é-1 1 0ù é0 ù
ê ú ê ú
x = ê 0 -1 0ú x + êê1 úú u
ê ú
ê0 0 1 úû ê1 ú
ë ë û
Le placement des pôles du système en boucle fermée à -2 , -3 , -4 , avec consigne r(t )
donne:
é-1 1 0 ù é0 ù
. ê ú ê ú
x = êê 3 6 -15úú x + êê1 úú kr r(t )
ê 3 7 -14 ú ê1 ú
ë û ë û
y = [1 0 0 ] x

On calcule:

N. Goléa © 2019 5-6


119
-1
é-1 1 0 ù é0 ù é 21 14 -15ù é0ù
ê ú ê ú 1 ê úê ú
C [ A - BK ] B = [1 0 0 ] êê 3 6 -15úú êê1 úú = [1 0 0 ]
-1
ê-3 14 -15ú ê1 ú = 1
ê
-24 ê ú ê ú
ê 3 7 -14 ú ê1 ú 3 10 -9 ú ê1 ú 24
ë û ë û ë ûë û
D'où
-1
kr = -1
= -24
C [ A - BK ] B

Ainsi, la loi de commande devient:


u = 3x1 + 7 x2 - 15 x3 - 24r

5. Zéros en boucle fermée


Soit le système:
é-1 1 0ù é0 ù
ê ú ê ú
x = ê 0 -1 0ú x + êê1 úú u
ê ú
ê0 0 1 úû ê1 ú
ë ë û
Sa fonction de transfert en boucle ouverte est
Y ( s) -1
= C ( sI - A) B
U ( s)
æ é1 0 0ù é-1 1 0ù ö÷-1 é0ù
çç ê ú ê ú ÷÷ ê ú ( s - 1)
= [1 0 0 ]ççç s êê0 1 0úú - êê 0 -1 0úú ÷÷ êê1 úú =
ç ê ÷
÷ ( s + 1)( s + 1)( s - 1)
çè ë0 0 1 ûú ëê 0 0 1 ûú ÷÷ø ëê1 ûú

et la fonction de transfert en boucle fermée , avec le retour d’état (5.2) est donnée par :
Y ( s) -1
= C ( sI - [ A - BK ]) Bkr
R( s)
-1
æ é1 0 0ù é-1 1 0 ù ö÷ é0ù
çç ê ú ê ú ÷÷ ê ú -24 ( s - 1)
= [1 0 0 ]ççç s êê0 1 0úú - êê 3 6 -15úú ÷÷ êê1 úú (-24) =
çç ê ÷
÷ ( s + 3)( s + 2)( s + 4)
è ë0 0 1 úû êë 3 7 -14 úû ÷÷ø êë1 úû
Il est clair que les pôles en boucle fermée sont placés aux positions désirées, alors que le
zéro et resté le même. Ainsi, nous avons le théorème suivant.
Théorème. Les zéros du système en boucle fermée sont identiques à ceux du système en
boucle ouverte. Ce qui revient à dire que le placement de pôles n’affecte pas les zéros du
système.

6. Placement de pôles avec action intégrale


Soit le système:
.
x = Ax + Bu + B0 d (5.17)
y = Cx

où d est une perturbation externe qui agit sur les états du système à travers la matrice

N. Goléa © 2019 5-7


120

B0 .

La commande conçue auparavant ne peut annuler l'effet de cette perturbation sur le suivi
de la référence.
Pour résoudre ce problème, on introduit une action intégrale:
xi = ò (r - y ) = ò (r - Cx ) (5.18)

Ce qui donne:
x = Ax + Bu + B0 d
x i = -Cx + r (5.19)
y = Cx

Si on définit le vecteur d'état augmenté xaT = [ x xi ] , alors on peut écrire le système sous
la forme augmentée:
x a = Aa xa + Bau + Br r + B0a d
(5.20)
y = Ca x a

avec les matrices


é0ù
ê ú
é A 0ù é Bù ê...ú éB ù
Aa = ê ú , Ba = ê ú , Br = ê ú , B0a = ê 0 ú ,Ca = [C 0 ] (5.21)
ê-C 0ú ê ú ê ú ê ú
ë û ë0û ê0ú ë0û
ê1 ú
êë úû
La loi de commande est donnée par
éxù
u = -K a xa = -[ K ki ] ê ú = -Kx - ki xi (5.22)
ê ú
ë xi û
Ce qui donne en boucle fermée:
.
x a = [ Aa - Ba K a ] xa + Br r + B0a d (5.23)

Enfin, le vecteur gain doit être déterminé tel que:


é sI - ( A - BK ) Bki ù
sI - ( Aa - Ba K a ) = ê ú (5.24)
ê C s úû
ë
soit égal au polynôme désiré.

v
B0
r x x y
+ ò ki + B + ò C
-
A

-K

Figure 5.4. Placement de pôles avec action intégrale.

N. Goléa © 2019 5-8


121
Exemple 3. Soit le système:
é-1 1 0ù é0 ù é-1ù
ê ú ê ú ê ú
x = êê 0 -1 0úú x + êê1 úú u + êê0 úú d
ê0 0 1 úû ê1 ú ê0 ú
ë ë û ë û
y = [1 0 0 ] x

Pour réaliser un retour d'état avec action intégrale, on ajoute l'état:

xi = ò (r - y ) = ò (r - x1 )  x i = r - x1

Le système augmenté est:


é x 1 ù é-1 1 0 0ù é x1 ù é0ù é0 ù é-1ù
ê ú ê úê ú ê ú ê ú ê ú
ê x 2 ú ê 0 -1 0 0ú ê x2 ú ê1 ú ê0 ú ê0 ú
ê ú ê ú ê ú + ê úu+ ê úr + ê úd
ê x ú = ê 0 0 1 ú ê ú
0ú ê x3 ú ê1 ú ê ú ê ú ê ú
ê 3ú ê ê0 ú ê0 ú
ê x ú ê-1 0 0úúû êêë xi úúû êêë0úúû ê1 ú ê0 ú
êë i úû êë 0 êë úû êë úû
y = [1 0 0 0 ] xa

Le système augmenté est contrôlable, puisque:


é 0 1 -2 3 ù
ê ú
ê1 -1 1 -1ú
M = éêë Ba Aa Ba Aa2 Ba Aa Ba ùúû = êê
3 ú
ê1 1 1 1 úú
ê 0 0 -1 2 ú
ëê úû
est de plein rang.
La loi de commande est donnée par
u = -K a xa = -[ k1 k2 k3 ki ] xa

Le polynôme caractéristique désiré est donné par:

a( s) = ( s + 2)( s + 3)( s + 4)( s + 5) = s 4 + 14 s 3 + 71s 2 + 154 s + 120

Aussi:
és + 1 -1 0 0ù
ê ú
ê k1 s + k2 + 1 k3 ki ú
é sI - ( Aa - Ba K a )ù = ê ú
ë û ê k k2 s + k3 - 1 ki úú
ê 1
ê 1 s úúû
êë 0 0

dont le polynôme caractéristique :

sI - ( Aa - Ba K a ) = s 4 + (k2 + k3 + 1) s 3 + (k1 + 2k3 - 1) s 2 + (k3 - k1 - k2 - ki - 1) s + ki

En comparaison avec le polynôme désiré:


k2 + k3 + 1 = 14
k1 + 2k3 - 1 = 71
k3 - k1 - k2 - ki - 1 = 154
ki = 120

N. Goléa © 2019 5-9


122

dont la solution est: k1 = -108, k2 = -77, k3 = 90, ki = 120 .

La loi de commande est

u = 180 x1 + 77 x2 - 90 x3 - 120ò (r - x1 )

7. Méthodes de calcul du gain du retour d'état


Pour calculer la matrice de gain K nécessaire pour le placement de pôles, plusieurs
méthodes existent dans la littérature. Dans ce qui suit nous exposerons trois d'entre elles.
7.1 Forme contrôlable
Si le système est contrôlable (qui est la condition nécessaire et suffisante pour le
placement des pôles), on peut définir la transformation d'état x = Tz , avec la matrice de
transformation T = MW . Ce qui produit la forme contrôlable suivante:
.
z = Az + Bu (5.25)

é 0 1 0  0 ù
ê ú é0 ù
ê 0 0 1   ú ê ú
ê ú êú
-1 ê
A = T AT = ê   0  ú
0 ú , B = T B = êê úú
-1
(5.26)
ê 0 0 ... 0 1 úú ê0 ú
ê ê1 ú
ê-a -a -  -a1 ûúú ëê ûú
ëê n n-1 a n-2

Si le comportement en boucle fermée est spécifié par le polynôme caractéristique désiré:

a( s) = s n + a1 s n-1 + ... + an-1 s + an (5.27)

Pour ce système, le retour d'état est donné par

u = -Kz (5.28)

avec K = éêk1 k2 ... kn-1 kn ùú .


ë û
La substitution de (5.28) dans (5.25) produit:
é 0 1 0  0 ù
ê ú
ê 0 1   ú
. ê ú
z = éêë A - BK ùúû z = êê     0 úz
ú (5.29)
ê 0 0 ... 0 1 ú
ê ú
ê ú
êë-an - k1 -an-1 - k2  -a2 - kn-1 -a1 - kn úû

Le polynôme caractéristique, en boucle fermée est donné par:

sI - A + BK = s n + (a1 + kn )s n-1 + (a2 + kn-1 )s n-2 + ... + (an-1 + k2 )s + (an + k1 ) (5.30)

En égalisant le polynôme caractéristique (5.30) avec le polynôme désiré (5.27), on obtient:

N. Goléa © 2019 5-10


123

a1 + kn = a1
a2 + kn-1 = a2
 (5.31)
an-1 + k2 = an-1
an + k1 = an
Ce qui produit:

K = [ an - an an-1 - an-1 ... a1 - a1 ] (5.32)

En remarquant que dans les coordonnées x , la loi de commande doit être:

u = -Kz = -KT -1 x = -Kx (5.33)


Nous obtenons la relation:

K = KT -1 = [ an - an an-1 - an-1 ... a1 - a1 ]T -1 (5.34)

qui permet d'obtenir le gain du retour d'état K .


Exemple 4. Soit le système:
é-1 1 0ù é0 ù
. ê ú ê ú
x = êê 0 -1 0úú x + êê1 úú u
ê0 0 1 úû ê1 ú
ë ë û
Le polynôme caractéristique en BO est

sI - A = s 3 + s 2 - s - 1

d'où a1 = 1, a2 = -1, a3 = -1 , et:

éa2 a1 1ù é-1 1 1 ù
ê ú ê ú
W = êê a1 1 0úú = êê 1 1 0úú
ê1 0 0úû êë 1 0 0úû
ë
La matrice de contrôlabilité est donnée par:
é0 1 -2ù
ê ú
M = êê1 -1 1 úú
ê1 1 1 úû
ë
La matrice de transformation est :
é0 1 -2ù é-1 1 1ù é-1 1 0ù
ê úê ú ê ú
T = MW = êê1 -1 1 úú êê 1 1 0úú = êê-1 0 1 úú
ê1 1 1 úû êë 1 0 0úû êë 1 2 1 úû
ë
é-2 -1 1ù
1 êê ú
T -1
= ê 2 -1 1úú
4ê ú
ë-2 3 1û
Le polynôme caractéristique désiré est donné par:

N. Goléa © 2019 5-11


124

a( s) = s 3 + 9s 2 + 26 s + 24

d'où a1 = 9, a2 = 26, a3 = 24 .

Ainsi, le gain du retour d'état est donné par:


é-2 -1 1ù
1 êê ú
K = [ a3 - a3 a2 - a2 a1 - a1 ]T -1
= [ 24 + 1 26 + 1 9 - 1] ê 2 -1 1úú = [-3 -7 15 ]
4ê ú
ë-2 3 1û
7.2 Formule d'Ackermann
La formule d'Ackermann pour la détermination de la matrice de gain K est donnée par
l'équation suivante :

K = [0 ... 0 1] M -1F( A) (5.35)

F( A) = An + a1 An-1 + ... + an-1 A + an I (5.36)

Preuve:

sI - ( A - BK ) = s n + (a1 + k1 )s n-1 + (a2 + k2 )s n-2 + ... + (an-1 + kn-1 )s + (an + kn )

= s n + a1 s n-1 + a2 s n-2 + ... + an-1 s + an + k1 s n-1 + k2 s n-2 + ... + kn-1 s + kn


= sI - A + k1 s n-1 + k2 s n-2 + ... + kn-1 s + kn
(5.37)
Et
n-1 n-2
F( A) = k1 A + k2 A + ... + kn-1 A + kn I
n-1 n-2
(5.38)
= a1 A + a2 A + ... + an-1 A + an I

avec
éi1 ù é1 0 ... 0ù
ê ú ê ú
êi2 ú ê0 1 0 0ú
ê ú ê ú
I = êê...úú = êê0 0 .. ..úú (5.39)
ê ú ê.. 0 1 0úú
ê ú ê
êi ú ê0 0 1 úúû
êë n úû êë ..

alors:
n-1 n-2
i1F( A) = k1i1 A + k2i1 A + ... + kn-1i1 A + kni1 I (5.40)

En remarquant que :

N. Goléa © 2019 5-12


125
n-1
i1 A = in
n-2
i1 A = in-1
... (5.41)
i1 A = i2
i1 I = i1

Ce qui donne :

i1F( A) = k1in + k2in-1 + ... + kn-1i2 + kni1 = K (5.42)

et
i1T -1T F( A) = K
(5.43)
i1T -1 (T F( A)T -1 ) = KT -1

T F( A)T -1 = F( A)
(5.44)
K = KT -1
Soit
T F( A)T -1 = F( A)
(5.45)
K = KT -1
Et
-1
K = i1T -1F( A) = i1 ( MW ) F( A) = i1W -1 M -1F( A) = in M -1F( A) (5.46)

Exemple 4. Soit le système:


é-1 1 0ù é0 ù
. ê ú ê ú
x = êê 0 -1 0úú x + êê1 úú u
ê0 0 1 úû ê1 ú
ë ë û
La matrice de contrôlabilité est donnée par:
é0 1 -2ù é-2 -3 -1ù
ê ú -1 1 êê ú
ê ú
M = ê1 -1 1 ú , M = - ê 0 2 -2úú
ê1 1 4ê
ë 1 úû ë2 1 -1úû

Le polynôme caractéristique désiré est donné par:

a( s) = s 3 + 9s 2 + 26 s + 24

D’où nous avons:

N. Goléa © 2019 5-13


126

F( A) = A3 + 9 A2 + 26 A + 24 I
é-1 1 0ù 3 é-1 1 0ù 2 é-1 1 0ù é1 0 0ù
ê ú ê ú ê ú ê ú
= êê 0 -1 0úú + 9 êê 0 -1 0úú + 26 êê 0 -1 0úú + 24 êê0 1 0úú
ê0 0 1 úû ê0 0 1 úû ê0 0 1 úû ê0 0 1 ú
ë ë ë ë û
é6 11 0 ù
ê ú
= êê0 6 0 úú
ê0 0 60ú
ë û
Enfin le gain du retour d'état est donné par:

K = [0 0 1] M -1F( A)
é-2 -3 -1ù é6 11 0 ù
1 ê úê ú
= - [0 0 1] êê 0 2 -2úú êê0 6 0 úú
4 ê2
ë 1 -1úû êë0 0 60úû
= [-3 -7 15]

8. Placement de pôles avec MATLAB


On veut tester le placement de pôles sur la commande en position de la machine CC, dont
le modèle est donné par:
é R rk ù
ê- - b 0ú
é x 1 ù ê L L ú é x ù éê 1 ùú é 0 ù
ê ú ê rk ú ê 1ú êLú ê ú
ê x 2 ú = ê m - b ê ú
0úú ê x2 ú + ê 0 ú u + ê -1 ú d
ê ú ê J ê ú
ê x ú ê
J ú ê x ú êê 0 úú ê J ú
ë û ê 0 1 ú
0ë û ê ú ê 0 ú
3
ê ú
3
ë û ë û
êë úû
y = [ 0 0 1] x

N. Goléa © 2019 5-14


127

% commande de la machine cc avec placement de pôles


% parametres machine cc
vmax=20; R=1; L=0.05; bm=0; bc=0.0001
Jm=0.001;Jc=0.1; km=0.05;kb=0.05;r=10;
J=Jc+r^2*Jm;b=bc+r^2*bm;
Position_ref=100
% Modèle d'état de la machine cc
A=[-R/L -r*kb/L 0;
r*km/J -b/J 0;
0 1 0]
B=[1/L 0 0]'
C=[0 0 1];
D=0;
% test de contrôlabilité
M=ctrb(A,B);
rank(M)
% Critères de conception retour d'etat
ts=1; % temps d'établissement ts<1sec
Mp=0.05; % dépassement <5%
zeta=sqrt(log(Mp)^2/(log(Mp)^2+pi^2))
wn=4/(zeta*ts)
P1_2=[1 2*zeta*wn wn^2];
% Pole 3
P3=[1 20];
% Poles desirès
Pole_des=roots(conv(P1_2,P3))
K=place(A,B,Pole_des)
kr=-1/(C*inv(A-B*K)*B)

% Modèle d'état augmenté de la machine cc


Aa=[-R/L -r*kb/L 0 0;
r*km/J -b/J 0 0;
0 1 0 0;
0 0 -1 0]
Ba=[1/L 0 0 0]'
Ca=[0 0 1 0];
Nt=obsv(A,C)
% Pole 4
P4=[1 4];
Pole_des_i=roots(conv(P4,conv(P1_2,P3)))
Ka=place(Aa,Ba,Pole_des_i

Un premier test montre que le système est instable en boucle ouverte.

Figure 5.4. Machine CC en boucle ouverte.

N. Goléa © 2019 5-15


128

Figure 5.5. Réponse instable en boucle ouverte.

Figure 5.6. Machine CC en boucle fermée avec retour d'état.

N. Goléa © 2019 5-16


129

Figure 5.7. Réponse en boucle fermée avec retour d'état et d=0.

Figure 5.8. Réponse en boucle fermée avec retour d'état et d=0.4.

N. Goléa © 2019 5-17


130

Figure 5.9. Machine CC en boucle fermée avec retour d'état et action intégrale.

Figure 5.10. Réponse en boucle fermée avec retour d'état et action intégrale avec d=0.4.

N. Goléa © 2019 5-18


131

Chapitre 6

Commande avec estimation d'état

1. Introduction
Dans le chapitre précédent, nous avons présenté la conception des systèmes de
commande par des lois de type retour d’état. Nous avons supposé que toutes les variables
d'état sont disponibles pour le retour d'état. Cependant, en pratique, certaines variables
d'état présentent des difficultés techniques ou économiques du point de vue mesure.
L'estimation des variables d'état non mesurables est donc nécessaire pour mettre en
œuvre les lois de commande conçues. L'algorithme qui estime les variables d'état est
appelé un observateur (appelé aussi estimateur ou reconstructeur) d'état. Un observateur
d'état ou estimateur est un système dynamique qui utilise l’information disponible sur le
système réel, à savoir les entrées et les sorties du processus réel, afin de produire une
estimation
u(t ) y(t )
Système
2. Observateur en boucle ouverte
Considérons le système d’ordre n défini par:
x = Ax + Bu
(6.1) yˆ(t )
y = Cx Observateur

avec la condition initiale x(0) .


xˆ(t )
Si on suppose que les matrices A et B sont connues Figure 6.1. Observateur en
avec précision, alors nous pouvons utiliser le modèle du boucle ouverte.
système pour produire une estimation du vecteur d'état
(figure 6.1). Ainsi, un observateur en boucle ouverte
prend la forme suivante :

xˆ = Axˆ + Bu
(6.2)
yˆ = Cxˆ

Où xˆ(t ) représente le vecteur d'état estimé; et la condition initiale xˆ(0) supposée


généralement nulle.
La dynamique de l'erreur d'estimation x = x - xˆ est donnée par:

x = Ax (6.3)


La solution de cette équation donne
x(t ) = e At x(0) (6.4)

avec x (0) = x (0) - xˆ(0) .

Maintenant, si le système est stable, nous aurons

N. Goléa © 2019 6-1


132

lim x(t ) = 0
t ¥
% observateur en boucle ouverte
(6.5) % modèle du système
A=[-2 1 0;0 -1 1; 0 1 -3];
et l'estimation x̂ converge vers x . B =[2 0 -1]'; C=[1 0 -1]; D=0;
x0 = [-1 1 1]; xobs0 = [0 0 0];
Exemple 1. Considérons le système
é-2 1 0ù é2 ù
. ê ú ê ú
x = ê 0 -1 1 ú x + êê0 úú u
ê ú
ê0 1 -3úû ê-1ú
ë ë û
y = [1 0 -1] x

avec x(0) = [-1 1 1] .


T

On utilisera comme observateur en boucle ouverte:


é-2 1 0ù é2 ù
ê ú ê ú
xˆ = ê 0 -1 1 ú xˆ + ê0 ú u
ê ú ê ú
ê0 1 -3ú ê-1ú
ë û ë û

avec xˆ(0) = [0 0 0 ] .
T

D'après les résultats de simulation, il est clair que les états estimés convergent vers ceux
du système réel.

1
x1

-1
0 5 10 15 20
1

0.5
x2

-0.5
0 5 10 15 20
1

0.5
x3

-0.5
0 5 10 15 20
t (sec)

Figure 6.2. Estimation des états en boucle ouverte.


Malgré sa simplicité cette technique ne peut être appliquée aux systèmes instables (assez
nombreux en pratique), puisque la solution (6.3) sera divergente.
Si l'observateur d'état estime toutes les variables d'état du système, même si certains états

N. Goléa © 2019 6-2


133
sont accessibles à la mesure directe, est appelé observateur d'ordre complet.
L'observateur qui estime uniquement les variables d'état non mesurables est appelé
observateur d'ordre réduit. Dans ce chapitre, nous discuterons les deux types
d'observateurs: observateur d'ordre complet et observateur d'ordre réduit.
u(t ) y(t )
3. Observateur d'ordre complet Système

Il est clair que l'observateur en boucle


ouverte n'exploite pas l'information
fournie par la sortie. Aussi, l'observateur
en boucle fermée (fig. 6.3) utilise, à la fois yˆ(t )
Observateur
le modèle du système pour produire une
estimation, et l'information sur y pour
corriger cette estimation. xˆ(t )

A partir de l'observateur en boucle Figure 6.3. Observateur en boucle fermée.


ouverte, la sortie estimée est yˆ = Cxˆ . Si
on ajoute à l'équation (6.2) le terme de correction L( y - yˆ ) avec LT = [l1 l2 ... ln ] , nous
aurons l'observateur suivant:
.
xˆ = Axˆ + Bu + L( y - yˆ ) (6.6)
yˆ = Cxˆ
L'addition du terme de correction sert à réduire l'effet dû à la différence entre la
dynamique de l'observateur et le système. Le vecteur L (gain de l'observateur) prendre
l'effet du terme d'erreur. L'ordre de l'observateur d'état ici est identique à celui du
système. La figure 3.6 montre le schéma bloc du système et l'observateur d'état d'ordre
complet.
Pour obtenir la dynamique de l'erreur d'observation, soustrayons l'équation (6.6) de
l'équation (6.1):
.
x = ( A - LC ) x (6.7)

La solution de cette équation donne

x(t ) = e( A-LC ) t x (0) (6.8)

De l'équation (6.8), nous voyons que la dynamique du vecteur d'erreur x est déterminée
par les valeurs propres de la matrice [ A - LC ] . Si la matrice [ A - LC ] est stable, le vecteur
d'erreur convergera vers zéro pour n'importe quelle erreur initiale x (0) . Si le système est
complètement observable, alors il est possible de choisir une matrice L tel que [ A - LC ]
prend des valeurs propres bien spécifiées.
Système
u
x̂ x̂ ŷ
B + + ò C -
+

Figure 6.4. Schéma bloc du système avec l'observateur d'état d'ordre complet.

N. Goléa © 2019 6-3


134
La structure de l'observateur peut mise sous une autre forme plus pratique. En
introduisant yˆ = Cxˆ , l'équation (6.6) peut être arrangée comme suit:
.
xˆ = [ A - LC ] xˆ + Bu + Ly (6.9)

On remarque que la dynamique de l'observateur est gouvernée par [ A - LC ] , et que u et


y jouent le rôle de deux entrées.

2.1 Condition nécessaire et suffisante pour l'observation d'état


La condition nécessaire et suffisante pour l'existence de la matrice de gain L qui assigne
à l'observateur la dynamique désirée (les valeurs propres désirées de [ A - LC ] ) est que le
système (6.1)-(6.2) soit observable, c-à-d que le rang de la matrice d'observabilité:
é C ù
ê ú
ê CA ú
ê ú
N T = êê CA2 úú (6.10)
ê ú
ê  ú
ê n-1 ú
êëCA úû

soit égal à n .
Exemple 2. Considérons les systèmes:
é-1 1 0ù é0 ù
. ê ú ê ú
x = êê 0 -1 0úú x + êê1 úú u
1. ê0
ë 0 1úû ê1 ú
ë û
y = [1 0 1] x

é-1 1 0ù é0 ù
. ê ú ê ú
x = ê 0 -1 0ú x + êê1 úú u
ê ú
2. ê0
ë 0 1úû ê1 ú
ë û
y = [ 0 1 1] x

é-1 1 0ù é0 ù
. ê ú ê ú
x = ê 0 -1 0ú x + êê1 úú u
ê ú
3. ê0
ë 0 1úû ê1 ú
ë û
y = [1 1 0 ] x

Les trois systèmes possèdent les mêmes valeurs propres -1,-1 et 1 . Il est clair que le
premier système est totalement observable, tandis que pour le système 2, les modes
-1,-1 ne sont pas observables, alors que pour le système 3 le mode 1 n'est pas
observable.
On veut concevoir des observateurs d'ordre complet pour les trois systèmes de la forme
(6.9), avec:

N. Goléa © 2019 6-4


135

él1 ù
ê ú
L = êêl2 úú
êl ú
ë 3û
Le polynôme caractéristique désiré de l'observateur est donné par:

o( s) = ( s + 2)( s + 2)( s + 3) = s 3 + 7s 2 + 16 s + 12

Pour le système 1, nous avons:


é-1 1 0ù él1 ù é-l - 1 1 -l1 ù
ê ú ê ú ê 1 ú
[ A - LC ] = ê 0 -1 0ú - êl2 ú [1 0 1] = ê -l2 -1 -l2 úú
ê ú ê ú ê
ê0 0 1úû êël3 úû ê -l 0 1 - l3 úû
ë ë 3

é s 0 0ù é-l1 - 1 1 -l1 ù é s + l1 + 1 -1 l1 ù
ê ú ê ú ê ú
ê ú ê
é sI - [ A - LC ]ù = 0 s 0 - -l2 ú
-1 -l2 ú = ê ê l2 s +1 l2 ú
ë û ê ú ê ú
ê0 0 s ú ê -l 0 1 - l3 úû êë l3 0 s + l3 - 1úû
ë û ë 3

Ainsi le polynôme caractéristique est:

sI - [ A - LC ] = s 3 + (l1 + l3 + 1) s 2 + (l2 + 2l3 - 1) s + l3 - l1 - l2 - 1

L'égalisation terme à terme entre le polynôme caractéristique et le polynôme désiré


produit:
l1 + l3 + 1 = 7
l2 + 2l3 - 1 = 16
l3 - l1 - l2 - 1 = 12

Ainsi, nous obtenons: l1 = -3, l2 = -1, l3 = 9 .

D'où l'observateur est:


é2 1 3ù é0 ù é-3ù
. ê ú ê ú ê ú
xˆ = ê 1 -1 1 ú xˆ + ê1 ú u + êê-1úú y
ê ú ê ú
ê-9 0 -8ú ê1 ú ê9ú
ë û ë û ë û
Pour le système 2, nous avons:
é-1 1 0ù él1 ù é-1 1 - l1 -l1 ù
ê ú ê ú ê ú
[ A - LC ] = ê 0 -1 0ú - êl2 ú [0 1 1] = ê 0 -l2 - 1 -l2 úú
ê ú ê ú ê
ê0 0 1úû êël3 úû ê0 -l3 1 - l3 úû
ë ë
é s 0 0ù é-1 1 - l1 -l1 ù é s + 1 l1 - 1 l1 ù
ê ú ê ú ê ú
ê ú ê
é sI - [ A - LC ]ù = 0 s 0 - 0 -l2 - 1 -l2 = 0 ú ê s + l2 + 1 l2 ú
ë û ê ú ê ú ê ú
ê0 0 s ú ê 0 -l3 1 - l3 úû êë 0 l3 s + l3 - 1úû
ë û ë
dont le polynôme caractéristique est:

sI - [ A - LC ] = s 3 + (l2 + l3 + 1) s 2 + (2l3 - 1) s + l3 - l2 - 1

L'égalisation terme à terme entre le polynôme caractéristique et le polynôme désiré


produit:

N. Goléa © 2019 6-5


136

l2 + l3 + 1 = 7
2l3 - 1 = 16
l3 - l2 - 1 = 12
qui n'a pas de solution.
Donc, on ne peut placer les valeurs propres de l'observateur à -2,-2,-3 .
Comme alternative, on choisit les pôles désirés comme: -1,-1,-3 . Alors, le polynôme
désiré est donné par:

o( s) = ( s + 1)( s + 1)( s + 3) = s 3 + 5s 2 + 7 s + 3

L'égalisation terme à terme donne:


l2 + l3 + 1 = 5
2l3 - 1 = 7
l3 - l2 - 1 = 3

Ainsi, nous obtenons: l1 = 0, l2 = 0, l3 = 4 . D'où l'observateur est:

é-1 1 0ù é0 ù é0ù
. ê ú ê ú ê ú
xˆ = ê 0 -1 0 ú xˆ + ê1 ú u + êê0 úú y
ê ú ê ú
ê 0 -4 -3ú ê1 ú ê4 ú
ë û ë û ë û
dont les valeurs propres sont: -1,-1,-3 .
Donc, nous avons gardé les modes (-1,-1) qui sont non observables mais stables, et
placer le mode 1 instable mais observable. Le système 2 est dit détectable.
2.2 Méthodes de calcul du gain de l'observateur
a. Matrice de transformation
Supposons que le système défini par (6.1) est complètement observable, c-à-d que la
matrice d'observabilité N T est de plein rang, et W est définie par:
é an-1 an-2  a1 1 ù
ê ú
êan-2  a1 1 0ú
ê ú
W = êê    .  úú (6.11)
ê a 1 . 0 ú
ê 1 ú
ê 1 0  0 0úúû
êë

où a1 , a2 ,, an sont les coefficients de l'équation caractéristique du système donné par:

sI - A = s n + a1 s n-1 + ... + an-1 s + an (6.12)

Puisque nous avons supposé que le système est complètement observable, la matrice de
-1
transformation T = (WN T ) existe.

Définissons un nouveau vecteur d'état z (de dimension n ) par x = Tz , alors les


équations (6.1) deviennent:

N. Goléa © 2019 6-6


137
.
z = Az + Bu
(6.13)
y = Cz
où:
é0 0  0 -an ù
ê ú
ê1 0  0 -an-1 ú
ê ú
A = T AT = êê0 1 
-1
 -an-2 úú
ê (6.14)
ê  0  úú
ê0  0. 1 -a1 úúû
êë
C = CT = [0 ... 0 1]

Les équations (6.13) sont dans la forme canonique observable. Notons que si la matrice A
est déjà sous la forme canonique observable alors: T = I .
Comme indiqué plutôt, nous choisissons la dynamique de l'observateur d'état comme:
.
xˆ = Axˆ + Bu + L( y - yˆ ) = Axˆ + Bu + L(Cx - Cxˆ ) (6.15)
yˆ = Cxˆ

Définissons maintenant
x̂ = Tzˆ (6.16)
Par la substitution de l'équation (6.16) dans l'équation (6.15), nous avons:
.
zˆ = T -1 ATzˆ + T -1 Bu + T -1 LCT ( z - zˆ) (6.17)

Soit encore:
.
zˆ = Azˆ + Bu + LC ( z - zˆ) (6.18)

avec
L = T -1 L (6.19)
Soustrayons l'équation (6.18) de l'équation (6.13), nous obtenons:
. .
z- zˆ = éê A - LC ùú ( z - zˆ) (6.20)
ë û
Définissons: z = z - zˆ , alors l'équation (6.20) devient:
.
z = éê A - LC ùú z (6.21)
ë û
Notons que
é A - LC ù = T -1 [ A - LC ]T (6.22)
ëê ûú
d'où

sI - ( A - LC ) = T -1 sI - ( A - LC ) T = sI - ( A - LC ) (6.23)

N. Goléa © 2019 6-7


138

Donc les matrices éê A - LC ùú et [ A - LC ] ont les mêmes valeurs propres, et la


ë û
détermination de L implique la détermination de L suivant la relation:

L =TL (6.24)
Prenons la notation:
él1 ù
ê ú
êl2 ú
L = êê úú (6.25)
ê ú
êl ú
ëê n ûú

La matrice éê A - LC ùú s'écrit comme:


ë û
é0 0 ... 0 -an - l1 ù
ê ú
ê1 0 ... 0 -an-1 - l2 ú
ê ú
é A - LC ù = êê0 1   -an-2 - l 3 úú (6.26)
ëê ûú ê ú
ê   0  ú
ê ú
ê0  0 1 -a1 - l n úû
ë
et
é s 0 ... an + l1 ùú
0
ê
ê ú
ê-1 s   an-1 + l 2 ú
é sI - é A - LC ù ù = êê ú
ëê êë úû ûú ê 0 -1  0 an-2 + l 3 ú (6.27)
ú
ê    s  ú
ê ú
ê ú
êë 0 ... 0 -1 s + a1 + l n úû

Dont l'équation caractéristique est donnée par:

sI - éê A - LC ùú = s n + (a1 + l n ) s n-1 + (a2 + l n ) s n-2 + ... + (an + l1 ) (6.28)


ë û
Supposons que l'équation caractéristique désirée pour la dynamique de l’observateur est :

sI - éê A - LC ùú = s n + a1 s n-1 + a2 s n-2 + ... + an-1 s + an (6.29)


ë û
En comparant les coefficients des termes de puissance identique en s dans les équations
(6.28) et (6.29), nous obtenons :

a1 + l n = a1
a2 + l n-1 = a2
(6.30)

an + l1 = an

Ce qui donne :

N. Goléa © 2019 6-8


139

l n = a1 - a1
l n-1 = a2 - a2
(6.31)

l1 = an - an

Alors, à partir de l'équation (6.24), nous avons:


éan - an ù
ê ú
êan-1 - an-1 ú
-1 ê
L =T L = ê ú (6.32)
ê ú
ú
êa - a ú
ëê 1 1 ûú
Par conséquent, nous avons:
éan - an ù éan - an ù
ê ú ê ú
êan-1 - an-1 ú -1 ê an-1 - an-1 ú
L = T êê ú = (WN ) ê
T ú (6.33)
ú ê ú
ê ú ê ú
êa - a ú êa - a ú
êë 1 1 úû êë 1 1 úû
L'équation (6.33) donne directement la matrice de gain L de l'observateur.
Exemple 3. Soit le système:
é-2 1 0ù é2 ù
. ê ú ê ú
x = êê 0 -1 1 úú x + êê0 úú u
ê0 1 -3úû ê-1ú
ë ë û
y = [1 0 0 ] x

On veut concevoir un observateur d'ordre complet pour estimer les états de ce système.
La condition d'observabilité est donnée par:
é C ù é1 0 0ù
ê ú ê ú
ê ú
N = ê CA ú = ê-2 1 0úú
T ê
ê 2 ú ê 4 -3 1ú
ëêCA ûú ë û

Comme N T est de rang 3 le système est complètement observable.


L'observateur est de la forme,
.
xˆ = [ A - LC ] xˆ + Bu + Ly

avec
él1 ù
ê ú
L = êêl2 úú
êl ú
ë 3û
Le polynôme caractéristique du système est:

sI - A = s 3 + 6 s 2 + 10 s + 4

N. Goléa © 2019 6-9


140

D'où a1 = 6, a2 = 10 et a3 = 4 ,

é10 6 1 ù
ê ú
W = êê 6 1 0úú
ê 1 0 0ú
ë û
et
é0 0 1 ù
T -1
ê ú
T = (WN ) = êê0 1 -4 úú
ê1 -3 10 ú
ë û
Les valeurs propres du système sont -0.5858,-2, -3.4142 . L'observateur doit avoir une
dynamique plus rapide que celle du système; d'où on choisit comme valeurs propres
désirées pour l'observateur -4,-4,-4 . Ainsi, le polynôme désiré est donné par:

o ( s ) = ( s + 4) = s 3 + 12s 2 + 48s + 64
3

Le vecteur gain de l'observateur est donné par:


éa3 - a3 ù é0 0 1 ù é64 - 4 ù é6 ù
ê ú ê úê ú ê ú
L = T êa2 - a2 ú = ê0 1 -4 úú êê48 - 10úú = êê14 úú
ê ú ê
êa - a ú ê1 -3 10 ú ê12 - 6 ú ê6 ú
ë 1 1û ë ûë û ë û
L'expression finale de l'observateur est donnée par
é -8 1 0ù é2 ù é6 ù
. ê ú ê ú ê ú
xˆ = êê-14 -1 1 úú xˆ + êê0 úú u + êê14 úú y
ê -6 1 -3úû ê-1ú ê6 ú
ë ë û ë û
La simulation pour une entrée sinusoïdale est donnée par la figure 6.5.

% Observateur d'ordre complet


% modèle du système
A=[-2 1 0;0 -1 1; 0 1 -3];
B =[2 0 -1]'; C=[1 0 0]; D=0;
NT=obsv(A,C)
rank(NT)
% calcul du gain L
a=poly(A); a(1)=[];
W=[a(2) a(1) 1; a(1) 1 0; 1 0 0]
T=inv(W*NT)
Polyn_obs=conv([1 4],conv([1 4],[1 4]))
Polyn_obs(1)=[]
L=T*[Polyn_obs(3)-a(3) Polyn_obs(2)-a(2) Polyn_obs(1)-a(1)]'
Ao=A-L*C
% simulation
x0 = [-1 1 1]';x0est = [0 0 0]';

N. Goléa © 2019 6-10


141

0.5

-0.5

-1

0.5

-0.5

-1

1
0.5
0
-0.5

0 1 2 3 4 5
Time (seconds)
Ready Sample based T=5.000

Figure 6.5. Simulation de l'observateur d'ordre complet.


b. Formule d'Ackermann
La formule d'Ackermann pour le calcul du gain de l'observateur est donnée par:
é0 ù
ê ú
ê ú
T -1 ê ú
L = o( A)( N ) ê ú (6.34)
ê0 ú
ê1 ú
ëê ûú
où:

o ( A) = An + a1 An-1 + a2 An-2 + ... + an-1 A + an I n (6.35)

Exemple 4. Considérons le système


é-2 1 0ù é2 ù
. ê ú ê ú
x = ê 0 -1 1 ú x + êê0 úú u
ê ú
ê0 1 -3úû ê-1ú
ë ë û
y = [1 0 -1] x

avec
é ù é ù
ê C ú ê 1 0 -1ú
ê ú
N = ê CA ú = êê-2 0 3 úú
T

ê 2 ú ê 4 1 -9ú
êëCA úû ë û
et le polynôme désiré est donné par:

o ( s ) = s 3 + 11s 2 + 38s + 40

Alors:

N. Goléa © 2019 6-11


142

é8 20 6 ù
ê ú
o ( A) = A + 12A + 48 A + 64 I = êê0 34 14 úú
3 2

ê0 14 6 ú
ë û
Enfin:

é8 20 6 ù é 1 0 -1ù-1 é0ù é 6 ù
ê úê ú ê ú ê ú
L = êê0 34 14 úú êê-2 0 3 úú êê0úú = êê14 úú
ê0 14 6 ú ê 4 1 -9ú ê1 ú ê 6 ú
ë ûë û ë û ë û
Il va de soit, que nous obtenons le même gain L indépendamment de la méthode utilisée.
% Observateur d'ordre complet
% modèle du système
A=[-2 1 0;0 -1 1; 0 1 -3];B =[2 0 -1]'; C=[1 0 0]; D=0;
NT=obsv(A,C); rank(NT)
% calcul du gain L (Ackermann)
Polyn_obs=conv([1 4],conv([1 4],[1 4]))
Polyn_obs(1)=[]
Alfa_A=A^3+Polyn_obs(1)*A^2+Polyn_obs(2)*A+Polyn_obs(3)*eye(3)
L= Alfa_A*inv(NT)*[0 0 1]'
Ao=A-L*C
% simulation
x0 = [-1 1 1]';x0est = [0 0 0]';

4. Placement de pôles avec observateur d'ordre complet


Dans le placement de pôles, nous avons supposé que l'état réel x(t ) était disponible pour
la loi de commande. Toutefois, en pratique, l'état réel x(t ) peut ne pas être mesurables,

aussi nous auront besoin de concevoir un observateur pour obtenir l'estimation d'état x ,
comme le montre la figure 6.6. Le processus de conception, devient donc un processus en
deux étapes. La première étape étant la détermination de la matrice de gain K qui
impose au système la caractéristique désirée en boucle fermée, et la deuxième étape étant
la détermination du gain de l'observateur L pour estimer les états non mesurables.
Système
y
u
r  x̂
kr + B + + x̂ ò

A - LC

-K

Figure 6.6. Retour d'état avec observateur d'ordre complet.


Nous allons maintenant étudier l'effet de l'utilisation de l'état observé x̂ , plutôt que de
l'état réel x , sur l'équation caractéristique en boucle fermée du système commandé.
Supposons que le système défini par les équations:
.
x = Ax + Bu (6.36)
y = Cx

N. Goléa © 2019 6-12


143
est complètement contrôlable et complètement observable.
Pour un retour d'état basé sur l'estimation x̂ :
u = -Kxˆ + kr r (6.37)

L'équation d'état devient:


x = Ax - BKxˆ + Bkr r = ( A - BK ) x + BKx + Bkr r (6.38)

Il est à noter que l'équation de l'erreur d'observation est donnée par l'équation (6.5):
.
x = ( A - LC ) x (6.39)

La combinaison des équations (6.38) et (6.39) donne le système augmenté:


é x ù
ê ú = êé A - BK BK ù é x ù é Bù
úê ú+ê úk r
ê.ú
êë x úû ëê 0 A - LC ûú ëê xûú ëê 0 ûú r
(6.40)
éxù
y = [C 0 ] ê ú
ê xú
ë û
L'équation (6.40) décrit la dynamique augmentée de l'observateur d'état et du système en
boucle fermée. L'équation caractéristique du système (6.40) est:
sI - [ A - BK ] BK
= sI - [ A - BK ] sI - [ A - LC ] (6.41)
0 sI - [ A - LC ]

Remarque 1. Les pôles en boucle fermée sont la somme des pôles du système
commandé par retour d'état et ceux de l'observateur. Les pôles désirés en boucle fermée
qui seront générés par retour d'état (placement de pôles) sont choisis de sorte que le
système satisfait les exigences de performance.
Remarque 2. Les pôles de l'observateur sont généralement choisis de sorte que la
réponse de l'observateur est beaucoup plus rapide que la réaction du système. Une règle
de base consiste à choisir une réponse de l'observateur au moins deux à cinq fois plus
rapide que la réaction du système.
La transformée de Laplace de l'équation (6.52) produit:

U ( s) = -KXˆ ( s) + kr R( s) (6.42)

La transformation de Laplace de l'équation de l'observateur (6.9) est:

sXˆ ( s) = [ A - LC ] Xˆ ( s) + BU ( s) + LY ( s) (6.43)

où nous avons supposé que l'état initial de l'observateur xˆ(0) = 0 , ce qui est la règle en
pratique.
En substituant l'équation (6.42) dans l'équation (6.43), on obtient:
-1 -1
Xˆ ( s) = éë sI - [ A - LC - BK ]ùû Bkr R( s) + éë sI - [ A - LC - BK ]ùû LY ( s) (6.44)

L'insertion de l'équation (6.44) dans l'équation (6.42) produit:

( -1
) -1
U ( s) = kr 1 - K éë sI - [ A - LC - BK ]ùû B R( s) - K éë sI - [ A - LC - BK ]ùû LY ( s) (6.45)

N. Goléa © 2019 6-13


144

L'équation (6.45) donne la relation fréquentielle entre U ( s) , R( s) et Y ( s) . Cette relation


-1
est représentée sur la figure 6.7. La fonction de transfert -K éë sI - [ A - LC - BK ]ùû L est
appelée la fonction de transfert observateur-contrôleur.
r æ é é ùù ö u -1 y
kr çç1 - K êsI - ê A - LC - BK ú ú B ÷÷÷ + Système
è ë ë ûû ø
-

-1
K éêsI - éê A - LC - BK ùú ùú L
ë ë ûû

Figure 6.7. Schéma bloc du système avec contrôleur-observateur.


Exemple 5. Soit le système:
é-1 1 0ù é0 ù
. ê ú ê ú
x = ê 0 1 0ú x + êê1 úú u
ê ú
ê-1 0 1ú ê1 ú
ë û ë û
y = [ 0 0 1] x

Par le calcul de
é0 1 0 ù é0 0 1ù
ê ú ê ú
M = ê1 1 1 ú et N = ê-1 0 1úú
ê ú T ê
ê1 1 0ú ê 0 -1 1ú
ë û ë û
on vérifie que le système est contrôlable et observable.
Le placement des pôles du système en boucle fermée à -1 , -1 , -1 , avec consigne r(t )
donne la loi de commande:
u = -Kx + kr r

Le polynôme caractéristique de A est:

sI - A = s 3 - s 2 - s + 1

D'où a1 = -1 , a2 = -1 , a3 = 1 .

Le polynôme caractéristique désiré est:

a ( s ) = ( s + 1) = s 3 + 3s 2 + 3s + 1
3

d'où a1 = 3 , a2 = 3 , a3 = 1 .

Le gain du retour d'état est alors:

æ ö-1
çç êé0 1 0ùú éê-1 -1 1 ùú÷÷
÷
K = [1 - 1 3 + 1 3 + 1]çç ê1 1 1 ú ê-1 1 0ú÷÷ = [ 4 12 -8]
çê
çê ú ê ú÷÷
çè ë1 1 0úû êë 1 0 0ú÷û ÷ø
Le gain kr est donné par:

1 1
kr = - -1
=-
C [ A - BK ] B 2

N. Goléa © 2019 6-14


145

Avec les états observés x̂ la loi de commande est:


1
u = -[ 4 12 -8] xˆ - r
2
La dynamique du système en boucle fermée est donnée par:
é-1 1 0ù é0 0 0 ù é0 ù
ê ú ê ú 1ê ú
x = ê-4 -11 8ú x + ê4 12 -8ú x - ê1 ú r
ê ú ê ú 2 êê úú
ê-5 -12 9ú ê4 12 -8ú
ë û ë û ë1 û
On veut concevoir un observateur pour fournir l'estimation x̂ , de la forme:
.
xˆ = [ A - LC ] xˆ + Bu + Ly

Nous choisirons les valeurs propres de l'observateur comme -4,-4,-4 . Le polynôme


caractéristique désiré est alors:

o ( s ) = ( s + 4) = s 3 + 12s 2 + 48s + 64
3

Le gain de l'observateur est alors:


-1
æ 0 1ù ÷ö é64 - 1ù é -49 ù
çç êé-1 -1 1 úù êé 0 ú ÷÷ ê ú ê ú
L = çççêê-1 1 0úú êê-1 0 1úú ÷÷ êê48 + 1úú = êê-125úú
÷
÷
çèç ê 1 0 0ûú ëê 0 -1 1ûú ø÷÷ ëê12 + 1ûú ëê 13 ûú
ë
L'observateur est:
é-1 1 49 ù é 0ù é -49 ù
. ê ú ê ú ê ú
xˆ = ê 0 1 125 ú xˆ + ê1 ú u + êê-125úú y
ê ú ê ú
ê-1 0 -12ú ê1 ú ê 13 ú
ë û ë û ë û
Le schéma bloc de ce système avec l'observateur d'état est montré sur la figure 6.8.

% retour d'état avec observateur


% modèle du système
A=[-1 1 0;0 1 0;-1 0 1];
B =[0 1 1]'; C=[0 0 1]; D=0;
% calcul du gain K
Poles_BF=[-1 -1 -1]
K=acker(A,B,Poles_BF)
% calcul du gain kr
kr=-1/(C*inv(A-B*K)*B)
% calcul du gain L
Poles_obs=[-2 -2 -2]
L=acker(A',C',Poles_obs)'
Ao=A-L*C
% simulation
x0 = [1 1 1]';x0est = [0 0 0]';

Figure 6.8. Schéma bloc du système avec observateur d'état

N. Goléa © 2019 6-15


146

y,r

Figure 6.9. Réponses du système avec observateur d'état


En se référant à l'équation (6.41), on calcule:
-1
é s + 1 -1 -13 ù é-13ù
-1 ê ú ê ú
K éë sI - [ A - LC - BK ]ùû L = [ 4 12 -8] êê 4 s + 11 -35 úú êê-27úú
ê 5 12 s - 2úû êë 7 úû
ë
-4 s 2 - s + 3
= 108 3
s + 10 s 2 + 476 s + 656
-1
é s + 1 -1 -13 ù é0ù
-1 ê ú ê ú
1 - K éë sI - [ A - LC - BK ]ùû B = [ 4 12 -8] êê 4 s + 11 -35 úú êê1 úú
ê s - 2ûú ëê1 ûú
ë 5 12
s 2 + 116 s + 162 ( s + 2)3
= 1- 4 3 = 3
s + 10 s + 476 s + 656 s + 10s 2 + 476 s + 656
2

Ainsi, la fonction de transfert du contrôleur-observateur est:


-0.5( s + 2)3 -4 s 2 - s + 3
U ( s) = R( s) - 108 3 Y ( s)
s + 10 s + 476 s + 656
3 2
s + 10s 2 + 476 s + 656
La figure 6.10 montre la mise sous forme RST de la loi de commande obtenue.
r 1 u y
-0.5(s + 2)3 + Système
- s 3 + 10s 2 + 476s + 656

108 (-4s 2 - s + 3)

Figure 6.10. forme RST du système de commande avec observateur d'état.


L'équation caractéristique du système augmenté est:

sI - [ A - BK ] sI - [ A - LC ] = a ( s ) o ( s ) = ( s 3 + 3s 2 + 3s + 1)( s 3 + 6 s 2 + 12s + 8)
= s 6 + 9s 5 + 33s 4 + 63s 3 + 66 s 2 + 36 s + 8

Le système augmenté est du sixième ordre.


L'équation caractéristique peut être aussi obtenue à partir du schéma bloc pour le système
illustré par la figure 6.11. Puisque la fonction de transfert en boucle fermée est:

N. Goléa © 2019 6-16


147

Y ( s) 216 s 3 - 162s 2 - 432s + 324


=
( s + 1) ( s + 2)
2 3
R( s)

L'équation caractéristique n'est pas la même pour la représentation dans l'espace d'état et
la représentation par fonction de transfert.
5. Observateur d'ordre réduit
Les observateurs qui ont été examinés sont conçus pour estimer toutes les variables
d'état. Dans la pratique, certaines des variables d'état peuvent être accessible à la mesure.
Ces variables d'état ne doivent pas être estimés.
Supposons que le vecteur d'état x(t ) est un vecteur de dimension n et le vecteur de sortie
y est un vecteur de dimension m qui peut être mesuré. Puisque les m variables d'état
sont mesurables, alors on a besoin d'estimer uniquement (n - m) variables d'état. Alors
l'observateur devient un observateur d'ordre (n - m) . Cet observateur d'ordre (n - m) est
un observateur d'ordre réduit. Il est important de noter que si la mesure des variables de
sortie contient du bruit, alors l'utilisation de l'observateur d'ordre complet donne des
résultats plus performants.
considérons le système d'ordre n :
x = Ax + Bu
(6.46)
y = Cx

où le vecteur y Î Rm représente les états mesurables. Le vecteur d'état x peut être divisé
en deux parties: z1 Î Rm vecteur des états mesurables, et z2 Î Rn-m vecteur des états non
mesurable. Alors les équations d'état et de sortie peuvent être partitionnées:
é z1 ù é A11 A12 ù é z1 ù é B1 ù
ê ú=ê ú ê ú + ê úu
ê z 2 ú ê A21 A22 úû êë z2 úû êë B2 úû (6.47)
ë û ë
y = z1

Avec les sous-matrices: A11 Î Rm´m , A12 Î Rm´(n-m) , A21 Î R(n-m)´m , A22 Î R(n-m)´(n-m) et
m´1 ( n-m)´1
B1 Î R , B2 Î R .

Pour la conception de l'observateur, l'équation (6.47) est décomposée comme suit:


z1 = A11 z1 + A12 z2 + B1u
(6.48)
z 2 = A21 z1 + A22 z2 + B2u

Ou encore:
z 2 = A22 z2 + A21 y + B2u
(6.49)
y - A11 y - B1u = A12 z2

La première équation de (6.49) joue le rôle d'une équation d'état avec la matrice
d'évolution A22 , et la deuxième équation de (6.49) joue le rôle de l'équation de sortie avec
la matrice d'observation A12 . Avec cette notation, on peut énoncer la condition nécessaire
à l'existence de l'observateur d'ordre réduit.
Définition. Le système définit par les équations (6.37) est complètement observable si le
rang de la matrice d'observabilité réduite:

N. Goléa © 2019 6-17


148

é A12 ù
ê ú
ê A12 A22 ú
N rT = êê ú Î R(n-m)´(n-m)
ú (6.50)
ê  ú
ê ( n-m-1) ú
ëê 12 22
A A ûú
est égal à (n - m) .

A partir de là, les techniques utilisées pour concevoir les observateurs d'ordre réduit sont
les mêmes que celles utilisées pour la conception des observateurs d'ordre complet.
La conception d'un observateur d'ordre réduit peut être effectuée comme suit.
A partir des équations (6.37), l'observateur peut être écrit comme:
.
zˆ 2 = A22 zˆ2 + A21 y + B2u + L ( y - A11 y - B1u - A12 zˆ2 ) (6.51)

Soit encore:
.
zˆ 2 = ( A22 - LA12 ) zˆ2 + ( B2 - LB1 ) u + ( A21 - LA11 ) y + Ly (6.52)

où L Î R(n-m)´1 est le gain de l'observateur.


On peut s'arrêter ici, mais la présence de la dérivée y pose un problème, puisqu'il faut
éviter de dériver des grandeurs qui peuvent varier très rapidement. Pour contourner cet
obstacle, on effectue le changement de variable suivant:
ẑ2 = h + Ly (6.53)

Avec (6.53), l'équation (6.52) deviendra:


h = ( A22 - LA12 ) zˆ2 + ( B2 - LB1 ) u + ( A21 - LA11 ) y (6.54)

en replaçant avec (6.53) dans (6.54) on obtient:

h = ( A22 - LA12 ) h + ( B2 - LB1 ) u + ( A21 - LA11 + ( A22 - LA12 ) L ) y (6.55)

Enfin, l'observateur d'ordre réduit est donné par les équations suivantes:
h = ( A22 - LA12 ) h + ( B2 - LB1 ) u + ( A21 - LA11 + ( A22 - LA12 ) L) y
(6.56)
zˆ2 = h + Ly
L'équation caractéristique pour l'observateur d'ordre réduit est obtenue à partir de
l'équation (6.56) comme suit:

sI - [ A22 - LA12 ] = s n-m-1 + a1 s n-2 +  + an-m-1 s + an-m (6.57)

La matrice de gain L de l'observateur peut être déterminée par la méthode de la matrice


de transformation:
é an-m - an-1 ù é an-m - an-1 ù
ê ú ê ú
êan-m-1 - an-m-1 ú êa
T -1 ê n-m-1
- an-m-1 ú
ú = (Wr N r ) ê
ê
L = Tr ê ú ú (6.58)
  ú
ê ú ê ú
ê a1 - a1 ú ê a1 - a1 ú
ëê ûú ëê ûú

N. Goléa © 2019 6-18


149

é an-m-1 an-m-2  a1 1 ù
ê ú
êan-m-2 an-m-3  1 0ú
ê ú
Wr = êê      úú Î Â(n-m)´(n-m) (6.59)
ê a 1 0 0 0úú
ê 1
ê 1 0 0 0úúû
êë 0

et a1 , a2 ,, an-m sont les coefficients du polynôme caractéristique de la matrice A22


donnés par:

sI - A22 = s n-1 + a1 s n-2 +  + an-m-1 s + an-m (6.60)

De plus, si la formule d'Ackermann est utilisée, alors elle devra être réécrite comme:
é0 ù
ê ú
êú
T -1 ê ú
L = f( A22 )( N r ) ê ú (6.61)
ê0 ú
ê1 ú
ëê ûú

n-m n-m-1
f( A22 ) = A22 + a1 A22 +  + an-m-1 A22 + an-m I (6.62)

où I est la matrice identité de dimension (n - m)´(n - m) .

Exemple 6. Soit le système donné par:


é-2 1 0ù é2 ù
. ê ú ê ú
x = êê 0 -1 1 úú x + êê0 úú u
ê 1 -3ûú ê-1ú
ë0 ë û
y = [1 0 0 ] x

Il est clair que la grandeur mesurable est y = x1 . On veut concevoir un observateur


d'ordre réduit pour estimer x2 et x3 , dont les valeurs propres sont -4,-4 .

Pour la conception de l'observateur, le système est décomposé comme suit:


.
x1 = -2x1 + x2 + 2u
.
x 2 = -x 2 + x3
.
x 3 = x 2 - 3 x3 - u
y = x1
Soit encore
.
x 2 = -x 2 + x 3
.
x 3 = x 2 - 3 x3 - u
.
y+ 2 y - 2u = x2

soit, sous forme matricielle

N. Goléa © 2019 6-19


150

é. ù
ê x 2 ú é-1 1 ù é x2 ù é 0 ù
ê. ú=ê ú ê ú + ê úu
ê ú êë 1 -3úû êë x3 úû êë-1úû
ëê x 3 ûú
. é x2 ù
y+ 2 y - 2u = [1 0 ] ê ú
ê x3 ú
ë û
L'observabilité du système est donnée par le rang de:
é 1 0ù
N rT = ê ú
ê-1 1 ú
ë û
qui est égal à 2, donc le système est observable.
L'observateur prend la forme:
é. ù
ê xˆ 2 ú é-1 1 ù é xˆ2 ù é 0 ù æ é xˆ ù ö
ê ú=ê ú ê ú + ê ú u + L çç y + 2 y - 2u - [1 0 ] ê 2 ú÷÷÷
ê . ú êë 1 -3úû ê xˆ3 ú êë-1úû çç ê xˆ3 ú÷ø÷
êë xˆ 3 úû ë û è ë û

avec
é l1 ù
L=ê ú
êl2 ú
ë û
Ce qui peut être arrangé comme:
é. ù
ê xˆ 1 ú é-1 - l1 1 ù é xˆ1 ù é -2l1 ù .
ê ú=ê úê ú+ê ú u + 2Ly + L y
ê . ú êë 1 - l2 -3úû ê xˆ2 ú êë-1 - 2l2 úû
êë xˆ 2 úû ë û

Le polynôme caractéristique pour l'observateur est


s + l1 + 1 -1
= s 2 + (l1 + 4) s + 3l1 + l2 + 2
l2 - 1 s+3

Le pôlynome caractéristique désiré pour l'observateur est donné par:

o ( s ) = ( s + 4) = s 2 + 8s + 16
2

L'égalisation terme à terme donne:


l1 + 4 = 8
3l1 + l2 + 2 = 16

dont la solution est: l1 = 4, l2 = 2.

ainsi
é. ù
ê xˆ 1 ú é-5 1 ù é xˆ1 ù é8ù é8ù .
ê ú=ê ú ê ú-ê úu+ ê ú y + L y
ê . ú ê-1 -3ú ê xˆ2 ú êë5úû ê4 ú
ë û
êë xˆ 2 úû ë ûë û

on effectue le changement de variable suivant:

N. Goléa © 2019 6-20


151

é xˆ ù é h ù é4 ù
ê 1ú = ê 1ú + ê ú y
ê xˆ2 ú ê h2 ú ê 2ú
ë û ë û ë û
Soit
é. ù é. ù
ê xˆ 1 ú ê h1 ú é4 ù .
ê ú = ê ú+ê úy
ê . ú ê . ú êë 2úû
êë xˆ 2 úû êë h 2 úû

L'observateur prend la forme:


é. ù
ê h1 ú é-5 1 ù é h1 ù é8ù é10ù
ê. ú=ê ú ê ú - ê úu- ê ú y
ê ú êë-1 -3úû êë h2 úû êë5úû ê6ú
ë û
ëê h 2 ûú
é xˆ ù é h ù é4 ù
ê 1ú = ê 1ú + ê ú y
ê xˆ2 ú ê h2 ú ê 2ú
ë û ë û ë û
Le gain L peut aussi être calculé avec les autres méthodes.
Forme contrôlable
Le polynôme caractéristique de A22 est donné par:

s +1 -1
sI - A22 = = s2 + 4s + 2
-1 s+3

D'où
é4 1 ù
Wr = ê ú
ê1 0ú
ë û
-1
La matrice de transformation: Tr = (Wr N rT ) avec

æ é4 1 ù é 1 0ù ö÷-1 é0 1 ù
Tr = (Wr N T -1
) = ççç ê úê ú÷ = ê ú
r
çè êë1 0úû êë-1 1 úû ÷÷ø ê1 -3ú
ë û
Le polynôme caractéristique désiré pour l'observateur est donné par:

o ( s ) = s 2 + 8s + 16

Le gain de l'observateur est donné par:


éa2 - a2 ù é0 1 ù é16 - 2ù é4 ù
L = Tr ê ú=ê úê ú=ê ú
ê ú ê úê ú ê ú
ë a1 - a1 û ë1 -3û ë 8 - 4 û ë 2û
Formule d'Ackermann:
On calcule
é-1 1 ù 2 é-1 1 ù é1 0ù é10 4 ù
o( A22 ) = A22
2
+ a1 A22 + a2 I = ê ú +8ê ú + 16 ê ú=ê ú
ê 1 -3ú ê 1 -3ú ê0 1 ú ê 4 2 ú
ë û ë û ë û ë û
d'où le gain est donné par:.

N. Goléa © 2019 6-21


152

-1 é0ù é10 4 ù é 1 0ù-1 é0ù é4 ù


L = o( A22 )( N rT ) ê ú = ê úê ú ê ú=ê ú
ê1 ú ê 4 2ú ê-1 1 ú ê1ú ê 2ú
ë û ë ûë û ë û ë û
Si l'observateur d'état est utilisé, alors le signal de contrôle u devient
é xˆ ù
ê 1ú 1
u = -[ 4 12 -8] ê xˆ2 úú - r
ê
êx ú 2
êë 3 úû
La figure 6.10 montre la configuration du système en boucle fermée avec l'observateur
d'ordre réduit.
Figure 6.10. Système avec observateur d'état d'ordre réduit.
5.1 Placement de pôles avec observateur d'état d'ordre réduit
Exemple 7. Soit le système donné par:
é-1 1 0ù é0 ù
. ê ú ê ú
x = êê 0 1 0úú x + êê1 úú u
ê-1 0 1ú ê1 ú
ë û ë û
y = [ 0 0 1] x

Il est clair que la grandeur mesurable est y = x3 . Pour estimer x1 et x2 , on va concevoir


un observateur d'ordre réduit avec les valeurs propres sont -2,-2 .
Pour la conception de l'observateur, le système est décomposé comme suit:
x 1 = -x1 + x2
x 2 = x2 + u
x 3 = -x1 + x3 + u
y = x3
Soit encore
x 1 = -x1 + x2
x 2 = x2 + u
y - y - u = -x1
ou, sous forme matricielle
é x 1 ù é-1 1ù é x1 ù é0ù
ê ú=ê ú ê ú + ê úu
ê x 2 ú ê 0 1ú ê x2 ú ê1ú
ë û ë ûë û ë û
é x1 ù
y - y - u = [-1 0 ] ê ú
ê ú
ë x2 û
L'observabilité du système est donnée par le rang de:
é-1 0 ù
N rT = ê ú
ê 1 -1ú
ë û
qui est égal à 2, donc le système est observable.
L'observateur prend la forme:

N. Goléa © 2019 6-22


153

é. ù
ê xˆ 1 ú é-1 1ù é xˆ1 ù é0ù æ é xˆ ù ö
ê ú=ê ú ê ú + ê ú u + L çç y - y - u - [-1 0 ] ê 1 ú÷÷÷
ê . ú ê 0 1úû ê xˆ2 ú êë1 úû ç ê ú÷
êë xˆ 2 úû ë ë û çè ë xˆ2 û ÷ø

avec
é l1 ù
L=ê ú
êl2 ú
ë û
Soit encore
é. ù
ê xˆ 1 ú él1 - 1 1ù é xˆ1 ù é -l1 ù
ê ú=ê úê ú+ê ú u - Ly + Ly
ê . ú êë l2 1úû êë xˆ2 úû êë1 - l2 úû
êë xˆ 2 úû

Le polynôme caractéristique pour l'observateur est


él1 - 1 1ù
sI - ê ú = s 2 - l1 s + (l1 - l2 - 1)
ê l2 1úû
ë
Le polynôme caractéristique désiré pour l'observateur est donné par:

o (s) = s2 + 4 s + 4

L'égalisation terme à terme donne:


-l1 = 4
l1 - l2 - 1 = 4

D'où: l1 = -4, l2 = -9.

é. ù
ê xˆ 1 ú é-5 1ù é xˆ1 ù é 4 ù é-4 ù é-4 ù
ê ú=ê ú ê ú + ê ú u - ê ú y + ê ú y
ê . ú ê-9 1ú ê xˆ2 ú êë10úû ê-9ú
ë û
ê-9ú
ë û
êë xˆ 2 úû ë ûë û

On effectue le changement de variable suivant:


é xˆ1 ù é h1 ù é-4 ù
ê ú = ê ú+ê úy
ê ú ê ú ê ú
ë xˆ2 û ë h2 û ë-9û
soit

é ù é ù
.
ê xˆ1 ú = êê h1 úú + êé-4 úù y.
ê  ú ê . ú ê-9ú
êë xˆ2 úû ê h ú ë û
ë 2û
L'observateur prend la forme:
é h1 ù é-5 1ù é h1 ù é15 ù é2ù é h (0)ù
ê ú=ê ú ê ú + ê ú y + ê ú u, ê 1 ú
ê h 2 ú ê-9 1ú ê h2 ú ê36ú ê8ú ê h2 (0)ú
ë û ë ûë û ë û ë û ë û
é xˆ1 ù é h1 ù é-4 ù
ê ú = ê ú+ê úy
ê xˆ2 ú ê h2 ú ê-9ú
ë û ë û ë û
Le gain L peut aussi être calculé avec les autres méthodes.

N. Goléa © 2019 6-23


154
a. Forme observable
Le polynôme caractéristique de A22 est donné par:

s +1 -1
sI - A22 = = s2 -1
0 s -1

D'où
éa1 1 ù é0 1 ù
Wr = ê ú=ê ú
ê 1 0ú ê1 0ú
ë û ë û
-1
La matrice de transformation: Tr = (Wr N rT ) avec

æ é0 1 ù é-1 0 ù ÷ö-1 é 0 -1ù


Tr = (Wr N T -1
) ç
= çç ê úê ú÷ = ê ú
r
çè êë1 0úû êë 1 -1úû ø÷÷ ê-1 -1ú
ë û
Le polynôme caractéristique désiré pour l'observateur est donné par:

o (s) = s2 + 4 s + 4

Le gain de l'observateur est donné par:


éa2 - a2 ù é 0 -1ù é 4 + 1ù é-4 ù
L = Tr ê ú=ê úê ú=ê ú
ê ú ê úê ú ê ú
ë a1 - a1 û ë-1 -1û ë4 - 0û ë-9û
b. Formule d'Ackermann
On calcule
é-1 1ù 2 é-1 1ù é1 0ù é1 4 ù
o( A22 ) = A22
2
+ a1 A22 + a2 I = ê ú +4ê ú+4ê ú=ê ú
ê 0 1ú ê 0 1ú ê0 1 ú ê0 9 ú
ë û ë û ë û ë û
D'où le gain est donné par:

-1 é0ù é1 4 ù é-1 0 ù-1 é0ù é-4 ù


L = o( A22 )( N rT ) ê ú = ê úê ú ê ú=ê ú
ê1 ú ê0 9ú ê 1 -1ú ê1 ú ê-9ú
ë û ë ûë û ë û ë û

N. Goléa © 2019 6-24

Vous aimerez peut-être aussi