Compensation et Reconstruction d'État
Compensation et Reconstruction d'État
Introduction
Compensation par . . .
Title Page
Nabil Derbel JJ II
J I
GE2 Page 1 of 45
Close
Quit
1. Introduction
La commande par retour de sortie (figure 1) n’est pas capable de fixer la dynamique
désirée en boucle fermée.
e + ε u y Introduction
K G(p) Compensation par . . .
− Reconstruction d’état, . . .
Commande par retour . . .
A partir de l’équation (1), si on impose que p1 soit racine de cette équation, alors: Full Screen
1
K=− (4) Close
G(p1 )
Quit
Par la suite, une fois le gain K est calculé, on ne peut plus avoir p2 , p3 · · · pn pôles
de cette équation.
Pour cela, on a utilisé auparavant la notion de correcteurs, pour corriger la dy-
namique du système en boucle fermée. Cependant, on ne peut pas aboutir à
satisfaire toutes les performances désirées. L’idée est fournir une commande du
type: Introduction
Go Back
Full Screen
Close
Quit
• Nous montrerons que l’existence d’une solution unique est liée à la gouvern-
abilité du système. En effet, si le système est gouvernable, alors il existe une
solution unique des gains ki qui fixent la dynamique désirée en boucle fermée.
• De plus, il n’est pas toujours possible d’assurer une telle commande. En effet,
il y a certaines variables qui ne peuvent pas être mesurées, par exemple les Introduction
flux dans une machine électrique.
Compensation par . . .
• Pour cela, on a recours à construire un observateur qui estime les variables Reconstruction d’état, . . .
d’état du système, pour pouvoir réaliser une telle commande, en se basant Commande par retour . . .
sur les mesures réalisées sur le système (les sorties du système).
Home Page
• Cet observateur est un système dynamique d’ordre n (si l’observateur est
d’ordre complet) ou d’ordre r < n (si l’observateur est d’ordre réduit: on ne
Title Page
reconstruit que les états non mesurables).
• La dynamique de cet observateur doit être suffisamment rapide comparée à JJ II
celle du système pour que l’état de l’observateur converge rapidement vers
l’état du système. J I
Close
Quit
2. Compensation par retour d’état
2.1. Structure de la commande
Partons d’un système linéaire d’ordre n et d’équations d’état:
Introduction
ẋ = Ax + Bu (6) Compensation par . . .
Reconstruction d’état, . . .
La structure de la commande est représentée à la figure 2. Commande par retour . . .
e + u x
G(p) Home Page
− Title Page
K JJ II
J I
Figure 2: Commande par retour d’état u = e − Kx.
Page 5 of 45
Go Back
Full Screen
Close
Quit
On applique une loi de commande du type:
u = e − Kx = e − k1 x1 − k2 x2 · · · − kn xn (7)
Ce type de commande est appelé encore placement de pôles. En effet, on fixe les
Go Back
pôles puis on calcule la commande qui répond à la question posée.
Full Screen
Close
Quit
2.2. Calcul direct du gain K
Il s’agit d’exprimer la matrice d’état en boucle fermée en fonction du gain K:
F = A − BK, puis de calculer, en fonction des composantes de K, l’équation car-
actéristique de la matrice F , puis l’identifier à l’équation caractéristique désirée.
Il est à noter que la matrice BK est de rang 1. Par conséquent, l’équation car- Introduction
actéristique de F = A − BK ne contient que des termes linéaires en fonction des Compensation par . . .
gains ki de la matrice K. Reconstruction d’état, . . .
Commande par retour . . .
Home Page
Title Page
JJ II
J I
Page 7 of 45
Go Back
Full Screen
Close
Quit
2.2.1. Exemple 1
On désire avoir une équation caractéristique de la matrice d’état en boucle fermée: Compensation par . . .
Reconstruction d’état, . . .
(p + 2)2 = p2 + 4p + 4 = 0 (13) Commande par retour . . .
ce qui résulte: k1 = 1 et k2 = 4.
Full Screen
Close
Quit
2.2.2. Exemple 2
On désire avoir une équation caractéristique de la matrice d’état en boucle fermée: Reconstruction d’état, . . .
Commande par retour . . .
(p + 2)3 = p3 + 6p2 + 12p + 8 = 0 (17)
Home Page
On pose: K = [k1 k2 k3 ]. La matrice d’état en boucle fermée F s’exprime par:
Title Page
1 − k1 −1 − k2 −k3
F = A − BK = 0 −3 −1 (18)
JJ II
k1 6 + k2 k3 + 2
Quit
2.3.1. Exemple 1
Reconstruction d’état, . . .
0 1 0 Commande par retour . . .
ż = z+ u (27)
1 −1 1
Home Page
après un changement de variable x = M z:
−3 1 1 −1 1 Title Page
M= , M −1 = (28)
2 1 5 2 3
JJ II
On désire avoir une équation caractéristique de la matrice d’état en boucle fermée:
J I
(p + 2)2 = p2 + 4p + 4 = 0 (29)
Page 12 of 45
Alors, on applique une commande u = −Kx = −K 0 z, avec:
Go Back
K0 = 1 1 − −4 −4 = 5 5 (30)
Full Screen
ce qui résulte:
K = K 0 M −1 = 1 4 (31) Close
Quit
2.3.2. Exemple 2
• D’abord, il est bien clair que si le système n’est pas observable, il est impos- JJ II
sible à partir de la mesure de la sortie de retrouver le mode inobservable.
J I
• Pour cela, on suppose que le système est observable, et on va construire un
système dynamique dont l’état est xe qui doit converger, après un certain Page 14 of 45
transitoire suffisamment rapide, vers l’état x du système: c’est l’étape de
construction d’état. Go Back
Full Screen
Close
Quit
3.2. Structure
La structure de l’observateur est présentée à la figure 3. dans ce qui suit, nous
allons définir l’observateur asymptotique de Luenberger avec ses deux structures:
la structure d’ordre complet et la structure d’ordre réduit.
Introduction
x
u Etat non mesurable Compensation par . . .
Reconstruction d’état, . . .
Système y Commande par retour . . .
Sortie mesurable
Commande
Home Page
xb Title Page
Etat estimé
Observateur JJ II
yb
Sortie estimée
J I
Go Back
Full Screen
Close
Quit
3.3. Observateur d’ordre plein
Il s’agit d’estimer l’état par un système dynamique d’ordre n (l’ordre du système).
Pour cela, pour un système observable d’équations d’état:
ẋ = Ax + Bu
Introduction
y = Cx (38)
Compensation par . . .
L’observateur de Luenberger d’ordre complet est décrit par les équations d’état Reconstruction d’état, . . .
suivantes: Commande par retour . . .
x + Bu + L(y − yb)
ḃ = Ab
x
Home Page
yb = C x
b (39)
ε=x−x
b (40) JJ II
Ce qui donne la dynamique de l’observateur:
J I
ε̇ = Aε − L(y − yb)
Page 16 of 45
= (A − LC)ε (41)
La matrice G = A − LC décrit la dynamique de l’observateur. Cette dynamique Go Back
doit être au moins deux à trois fois plus rapide que la dynamique du système. Pour
cela, nous allons définir la dynamique désirée de la matrice G en imposant son Full Screen
équation caractéristique:
Close
pn + gn−1 pn−1 + · · · + g1 p + g0 = 0 (42)
Quit
puis nous allons calculer la matrice L.
3.3.1. Méthode directe
Il s’agit de poser:
l1
l2
L=
:
(43)
Introduction
ln Compensation par . . .
puis calculer la matrice G = A−LC. Ensuite, exprimer le polynôme caractéristique Reconstruction d’état, . . .
de la matrice G en fonction des gains li , puis l’identifier à l’équation caractéristique Commande par retour . . .
désirée de la matrice G, qui est une fonction linéaire des gains li . Puisque le système
est observable, on obtient n équations aux n inconnues li , qui donnent une solution Home Page
unique.
Title Page
JJ II
J I
Page 17 of 45
Go Back
Full Screen
Close
Quit
Exemple 1 Considérons le système:
−1 1 −1
ẋ = x+ u
0 −1 1
y = 1 1 (44)
Introduction
Reconstruction d’état, . . .
−1 − l1 1 − l1 Commande par retour . . .
G = A − LC = (45)
−l2 −l2 − 1
soit: l1 = 0 et l2 = 4.
Full Screen
Close
Quit
Exemple 2 Considérons le système:
1 −1 0 0
ẋ = 0 −3 −1 x + 0 u
0 6 2 1
y = 1 1 1 (49) Introduction
Compensation par . . .
On pose: L = [l1 l2 l3 ]T . La matrice d’état G de l’observateur s’exprime par: Reconstruction d’état, . . .
p3 + (l1 + 2l2 + l3 + 3)p2 + (2l1 + 4l2 + 2l3 + 3)p + (l1 + 2l2 + l3 + 1) = 0 (56) JJ II
Go Back
Full Screen
Close
Quit
Ce qui donne:
l1 + 2l2 + l3 + 3 = 9
2l1 + 4l2 + 2l3 + 3 = 27 (58)
l1 + 2l2 + l3 + 1 = 27
Ce système est équivalent à:
Introduction
l1 + 2l2 + l3 = 6 Compensation par . . .
l1 + 2l2 + l3 = 12 (59) Reconstruction d’état, . . .
l1 + 2l2 + l3 = 28 Commande par retour . . .
Il est clair que ce système ne possède pas de solution. En effet, ce système n’est
Home Page
pas observable, car:
Title Page
C 1 2 1
O = CA = −1 −2 −1 (60)
CA2 1 2 1 JJ II
Go Back
Full Screen
Close
Quit
3.3.2. Méthode basée sur la représentation compagne d’observabilité
z + Γu + L0 (y − yb)
zḃ = φb
Home Page
yb = σb
z (61)
Title Page
L’erreur d’estimation sur l’état z s’exprime par:
η = z − zb = M −1 ε (62) JJ II
ηb = (φ − L0 σ)η = G0 η Page 22 of 45
Close
Quit
Or, on a:
−an−1 1 0 · 0 l10
−an−2 0 1 · 0 l20
φ =
· · · · · , L0 =
0 · , σ= 1
0 · 0 0 (63)
−a1 0 0 · 1 ln−1
Introduction
−a0 0 0 · 0 ln0
Compensation par . . .
Soit:
JJ II
L = M L0 (68)
J I
Page 24 of 45
Go Back
Full Screen
Close
Quit
Exemple 1 Soit la représentation d’état:
−1 1 −1
ẋ = x+ x , y = [1 1]x (69)
0 −1 1
La représentation compagne est:
Introduction
−2 1 0 Compensation par . . .
ż = z+ u , y = [1 0]z (70)
−1 0 1 Reconstruction d’état, . . .
Commande par retour . . .
L’équation caractéristique de ce système est:
Full Screen
Close
Quit
On désire avoir une équation caractéristique de la matrice d’état de l’observateur:
27 1 28 Reconstruction d’état, . . .
Commande par retour . . .
ce qui résulte:
18 Home Page
L = M L0 = 2 (82)
−14 Title Page
JJ II
J I
Page 27 of 45
Go Back
Full Screen
Close
Quit
3.4. Observateur d’ordre réduit
Considérons un système d’équation d’état:
ẋ = A0 x + B0 u , y = Cx (83)
Introduction
avec x ∈ Rn et y ∈ Rm et m < n.
Compensation par . . .
Reconstruction d’état, . . .
Hypothèses La matrice C est de rang plein. Dans le cas contraire, il y a re- Commande par retour . . .
dondance des informations au niveau de la sortie. Dans ce cas, on éliminera la
redondance jusqu’à ce que C devienne de rang plein. De plus la paire (A, C) doit
Home Page
être observable.
Title Page
3.4.1. Préliminaires
JJ II
Considérons une matrice T (de rang plein) de sorte que la matrice P1 suivante soit
carrée inversible: J I
C
P1 = (84)
T
Page 28 of 45
Posons M1 = P1−1 .
Effectuons un premier changement de variable x = M1 z. Donc,
on a: z = P1 x. Partitionnons z en z1 et z2 comme suit: Go Back
z1 C Cx Full Screen
z= = x= (85)
z2 T Tx
Close
ce qui donne z1 = y.
Quit
Soit L une matrice de dimension (n−m)×m. Effectuons le changement de variable
suivant:
z1 = v1
(86)
z2 = Lv1 + v2
ce qui donne z = M2 v et v = M2−1 z, avec:
Introduction
I O −1 I O Compensation par . . .
M2 = , M2 = (87)
L I −L I Reconstruction d’état, . . .
Commande par retour . . .
I et O sont respectivement des matrices unité et nulle avec des dimensions appro-
priées.
Home Page
L’équation d’état en z s’exprime par: ż = Az + Bu. L’équation d’état en v devient:
v̇ = M2−1 AM2 v + M2−1 Bu. Si on note par: Title Page
A11 A12 B1 JJ II
A= , B= (88)
A21 A22 B2
on a: J I
A11 + A12 L A12 B1 Page 29 of 45
M2−1 AM2 = , M2−1 B = (89)
ψ A22 − LA12 B2 − LB1
Go Back
avec:
ψ = A22 L − LA11 − LA12 L + A21 (90) Full Screen
3.4.2. Observateur
Introduction
On définit l’observateur d’ordre réduit suivant, qui estime le vecteur v2 : Compensation par . . .
Reconstruction d’état, . . .
vb2 = (A22 − LA12 )b
v2 + ψy + (B2 − LB1 )u (92)
Commande par retour . . .
Considérons l’erreur suivante sur le vecteur v2 :
ve2 = v2 − vb2 (93) Home Page
0 0 1 0 0 1
JJ II
La matrice d’état et la matrice de commande de la représentation en z sont: A =
M1−1 A0 M1 et B = M1−1 B0 . Le partitionnement de ces matrices donne: J I
0 0 1
A11 = −1 , A12 = − 1 − 1 , A21 = A22 = (100) Page 31 of 45
−1 −2 −2
0
B1 = 1 , B 2 = (101) Go Back
1
La paire (A22 , A12 ) est observable, car la matrice d’observabilité (correspondante Full Screen
2 Compensation par . . .
p + (2 − l1 − l2 )p + 2 − l2 = 0 (104)
Reconstruction d’état, . . .
Si on fixe la dynamique de l’observateur par l’équation caractéristique: Commande par retour . . .
(p + 3)2 = p2 + 6p + 9 = 0 (105)
Home Page
Page 32 of 45
Go Back
Full Screen
Close
Quit
Example 2 Considérons le système:
−4 1 0 0 −1 1
−6 0 1 0 0 0
ẋ = x + u , y = 1 0 0 0
x (107)
−4 0 0 1 0 0 0 1 0 0
−1 0 0 0 1 1 Introduction
Compensation par . . .
Posons:
Reconstruction d’état, . . .
0 0 1 0 Commande par retour . . .
T = x (108)
0 0 0 1
Home Page
On a: M1 = M1−1 = I la matrice unité d’ordre 4. On a alors les matrices parti-
tionnées suivantes: Title Page
−4 −6 0 1 −4 0 0 1
A11 = , A12 = , A21 = , A22 = (109) JJ II
1 0 0 0 −1 0 0 0
−1 0 0 0 J I
B1 = , B2 = (110)
0 0 1 1
Page 33 of 45
L’observateur d’ordre réduit est de dimension 2. Déterminons la matrice L:
Go Back
l1 l3
L= (111)
l2 l4
Full Screen
qui doit être choisie de sorte que la matrice G2 = A22 − LA12 possède l’équation
caractéristique suivante: Close
Page 34 of 45
Go Back
Full Screen
Close
Quit
Considérons le choix suivant de la matrice T :
1 0 1 0
T = x (116)
0 1 0 1
On a:
1 0 0 0 1 0 0 0 Introduction
0 1 0 0 0 1 0 0 Compensation par . . .
M1 =
1
, M1 = (117)
0 1 0 −1 0 1 0 Reconstruction d’état, . . .
0 1 0 1 0 −1 0 1 Commande par retour . . .
p2 + l3 p + 1 + l4 = 0 (122)
b s’exprime par:
L’état estimé x JJ II
xb1 = x1 = y
(125) J I
xb2 = −b z1 + zb2 = −z1 + Lz1 + vb2 = vb2 + (L − I)y
Page 36 of 45
Go Back
Full Screen
Close
Quit
4. Commande par retour d’état estimé
Considérons un système décrit par les équations d’état suivantes:
ẋ = Ax + Bu , y = Cx (126)
Introduction
Pour ce système on calcule le gain de retour d’état K qui fixe les valeurs propres de
Compensation par . . .
la matrice d’état du système bouclé: F = A − BK. Cependant, puisque l’état n’est
Reconstruction d’état, . . .
pas accessible, et qu’on ne peut mesurer que la sortie y, on propose l’observateur
Commande par retour . . .
d’état suivant:
ḃ = Ab
x x + Bu + L(y − yb) , yb = C xb (127)
Home Page
La matrice L est calculée de sorte que la dynamique de l’observateur soit fixée
d’avance (deux à trois fois plus rapide de la matrice d’état en boucle fermée), et
Title Page
ce en fixant les valeurs propres de la matrice d’état de l’observateur G = A −
LC. Dans ce cas, nous allons appliquer la commande suivante u = e − K x b (e est JJ II
une commande auxiliaire). Ainsi, les équations dynamiques du système bouclé (y
compris l’observateur) sont: J I
ẋ = Ax + B(e − K x b)
(128) Page 37 of 45
ḃ = Ab
x x + B(e − K xb) + LC(x − x b)
Go Back
ou bien:
ẋ A −BK x B
= + e (129) Full Screen
ḃ
x LC (A − BK − LC) b
x B
e=x−x
ou bien encore en considérant la variable erreur x b: Close
ẋ (A − BK) BK x B
= + e (130) Quit
ė
x O (A − LC) e
x 0
Ainsi, les valeurs propres du système sont celles des matrices F = A − BK et
G = A − LC, qui sont des matrices stables. Donc, le système global est stable.
x
Commande u Etat non mesurable
Système y Introduction
Sortie mesurable
Compensation par . . .
Reconstruction d’état, . . .
Commande par retour . . .
yb
Sortie estimée
Observateur xb Home Page
Etat estimé
Title Page
JJ II
Commande
J I
par retour
d’état estimé Page 38 of 45
Figure 4: Construction d’observateur et commande en boucle fermée par retour d’état Go Back
estimé
Full Screen
La figure 4 représente le schéma bloc de la commande par retour d’état estimé.
Close
Quit
Observateur
B
− +
+
L C
yb Introduction
Système + +
Compensation par . . .
e+ + A
B C xb Reconstruction d’état, . . .
u y
Commande par retour . . .
− +
A
x
Home Page
K
Commande par placement de pôles
Title Page
J I
La figure 5 représente ce schéma avec plus de détails en mettant en œuvre les
matrices d’état, de commande, de sortie, le gain par retour d’état et le gain de
Page 39 of 45
l’observateur.
Go Back
Full Screen
Close
Quit
Exemple
1 −1 0 1
ẋ = 0 −3 −1 x + 0 u (131)
0 6 2 −1
On désire avoir une équation caractéristique de la matrice d’état en boucle fermée:
Introduction
On désire construire un observateur qui estime l’état du système avec une dy-
namique d’équation caractéristique: Title Page
Full Screen
Close
Quit
e
5
2
Introduction
1 Compensation par . . .
0 Reconstruction d’état, . . .
t (s)
0 5 10 15 20 Commande par retour . . .
Go Back
Full Screen
Close
Quit
3 x
5 x 2 (b)
1 (a) 2
1
0 0
−1
−2 Introduction
−5
−3 Compensation par . . .
−4 Reconstruction d’état, . . .
t (s) t (s) Commande par retour . . .
−10 −5
0 5 10 15 20 0 5 10 15 20
Home Page
20
15 u (d)
Title Page
x3 (c)
10
10
JJ II
0
5
J I
−10
0
−20 Page 42 of 45
−5
t (s) t (s)
−30 Go Back
0 5 10 15 20 0 5 10 15 20
Figure 7: (a), (b) et (c): Evolution des composantes du vecteur d’état (a,b,c) Full Screen
b.
(variations en échelon). Trait continu: état x. Trait discontinu: état estimé x
(d): Evolution du signal de commande u(t). Close
Quit
Nous allons considérer également le problème de suivi de trajectoire en considérant
un signal sinusoı̈dal à l’entrée e(t) (figure 8).
6
e
4
Introduction
2 Compensation par . . .
Reconstruction d’état, . . .
0
Commande par retour . . .
−2
Home Page
−4
t (s) Title Page
−6
0 5 10 15 20
JJ II
Figure 8: Evolution du signal d’entrée (variations sinusoı̈dales).
J I
La figure 9 représente l’évolution de l’état du système et de son état estimé (figures
9.a,, 9.b et 9.c). La figure 9.d représente l’évolution du signal de commande u(t).
Page 43 of 45
Il est clair qu’après environ 3s (temps de réponse de l’observateur), les états x et
b sont confondus, et après environ 8s (temps de réponse du système bouclé), ces
x Go Back
états suivent leurs trajectoires désirées.
Full Screen
Close
Quit
3 x
5 x 2 (b)
1 (a) 2
1
0 0
−1
−2 Introduction
−5
−3 Compensation par . . .
−4 Reconstruction d’état, . . .
t (s) t (s) Commande par retour . . .
−10 −5
0 5 10 15 20 0 5 10 15 20
Home Page
20
15 u (d)
Title Page
x3 (c)
10
10
JJ II
0
5
J I
−10
0
−20 Page 44 of 45
−5
t (s) t (s)
−30 Go Back
0 5 10 15 20 0 5 10 15 20
Figure 9: Suivi de trajectoires. (a), (b) et (c): Evolution des composantes Full Screen
du vecteur d’état (a,b,c) (variations en échelon). Trait continu: état x. Trait
b. (d): Evolution du signal de commande u(t).
discontinu: état estimé x Close
Quit
Les erreurs entre les états réels et les états estimés proviennent des conditions
initiales de ces deux vecteurs d’états. En effet, puisqu’on ne connaı̂t pas l’état
du système, on ne connaı̂t pas ses conditions initiales. L’observateur joue le rôle
d’estimateur d’état, en fournissant une bonne estimation avec une bonne précision,
et ce après le transitoire de l’observateur. En effet, l’observateur dispose de 3
6.3 Introduction
valeurs propres égales à −3; ce qui correspond à un temps de l’ordre de ' 2.1s.
3 Compensation par . . .
De plus, les valeurs propres de la matrice d’état du système bouclé sont égales à
6.3 Reconstruction d’état, . . .
−2. Donc le temps de réponse du système bouclé est de l’ordre de ' 6.3s. Commande par retour . . .
1
Nous remarquons que lors d’une entrée en échelon, la réponse des trois variables
d’état s’oppose à cette variation au début de l’échelon, puis, elle rattrape cette Home Page
variation pour aboutir à son régime définitif. Ceci est dû au fait que les fonctions
Xi (p) Title Page
de transfert en boucle fermée sont à déphasage non minimal:
E(p)
JJ II
X1 (p) p2 + p − 1 X1 (p) p−1 X1 (p) −p2 − 2p + 3
= , = , = (136)
E(p) (p + 1)3 E(p) (p + 1)3 E(p) (p + 1)3 J I
Cependant, en régime permanent (pour une entrée en échelon), la commande est Page 45 of 45
U (p)
nulle. Ceci provient du fait que le gains statique de la fonction de transfert
E(p) Go Back
est nul:
U (p) p(p − 1)
= (137) Full Screen
E(p) (p + 1)2
Close
Quit