Analyse des Systèmes Linéaires en État
Analyse des Systèmes Linéaires en État
M1/UE CSy
Jean-José ORTEU
2011-2012
2 Avant-propos
Avant-propos
Les étudiants sont vivement encouragés à émettre toutes les critiques qu’ils jugeront
nécessaires pour en améliorer le contenu tant sur le plan de la forme que du fond.
1 Définitions 7
1.1 Exemple . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
2.1 Exemple . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
2.3 Exemple . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
4 Stabilité 26
5.2 Exemple . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
3
4 Table des matières
5.3 Définitions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
5.3.1 Commandabilité . . . . . . . . . . . . . . . . . . . . . . . . . . 30
5.3.2 Observabilité . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
5.4.4 Exemples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
6 Exercice 46
7 Commande découplante 50
7.1 Théorie . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50
7.2 Exemple1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54
7.3 Exemple2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56
8.1 Principe . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
8.2.1 Exemple . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60
9 Exercice (suite) 70
10 Commande modale 72
11 Commande quadratique 73
12 Reconstructeur d’état 74
16 Exemple2 79
6
Chapitre 1
Définitions
La représentation classique dans l’analyse des systèmes a été la représentation par des
équations différentielles. Elle est la plus naturelle car elle traduit de manière directe le
comportement du système analysé. Comme nous l’avons vu, cette représentation peut
aussi se ramener à une représentation par fonction de transfert.
h iT
x(t) = x1 (t) x2 (t) · · · xn (t)
On appelera l’état x(t) du système, étant donnée la valeur initiale x(t0 ), l’ensemble
minimal des composantes x1 (t0 ), x2 (t0 ), · · · , xn (t0 ), permettant de déterminer x(t) pour
une certaine entrée u(t) connue, pour tout t > t0 .
Un système est dit décrit dans l’espace d’état si son fonctionnement ou son comporte-
ment est régi par l’équation différentielle suivante :
7
8
On suppose connu par ailleurs le vecteur x(t0 ) qui est le vecteur des conditions initiales
sur l’état.
- D
+ ẋ Z x +
?+
- - - - - -
y
u B C
+6
A
Dans le cas très fréquent où D = 0 le système est dit «propre» ; il n’y a alors aucune
liaison directe entrée-sortie.
Lorsque le système comporte une seule entrée (u ∈ R), le système est dit mono-entrée
(SI en anglais) et multi-entrée (MI en anglais) dans le cas contraire (m > 1).
De la même façon, le système peut comporter une seule sortie (y ∈ R), on parle alors
d’un système mono-sortie (SO en anglais), ou plusieurs (p > 1), on a dans ce cas un
système multi-sortie (MO en anglais).
Un système à une seule entrée et une seule sortie est dit monovariable (SISO en anglais),
et dans la cas contraire, multivariable (MIMO en anglais).
Les variables d’état doivent apporter une description interne du système et on choisit
celles pour lesquelles on peut définir l’état initial, c’est-à-dire en première instance, les
paramètres de description des réservoirs d’énergie (par exemple la tension au borne
d’un condensateur, le courant dans une self, . . .).
1.1 Exemple
Considérons le circuit passif RLC excité par 2 sources tel qu’il est représenté sur la
Figure 1.3.
vc (t = 0) = v(0)
i1 (t = 0) = i1 (0)
i2 (t = 0) = i2 (0)
di2 di2
(t = 0) = (0)
dt dt
Les relations entre les tensions et courants dans les 2 mailles s’écrivent :
di1
u1 = L + R(i1 + i2 ) (1.3)
dt
Z
1 t
u2 = i2 (τ ) dτ + R(i1 + i2 ) (1.4)
C −∞
" # " #
x1 (t) i1
x(t) = =
x2 (t) vc
dvc
En tenant compte du fait que : i2 = C
dt
u2 = vc + R(i1 + i2 )
ce qui conduit à :
di1
u1 − u2 = L − vc
dt
et par ailleurs :
dvc vc u2 i1
=− + −
dt RC RC C
On obtient alors :
di1 1 1 1
0 i1 − u1
dt
L
L
L
ẋ(t) = = +
dvc 1 1
vc
1
u
− − 0 2
dt C RC RC
h i i1
y(t) = i1 = 1 0
vc
Nous avons donc un système ayant 2 entrées et une sortie (Cf. Figure 1.4).
u1 -
i1 -
u2 -
di1 1
1
0 i1
dt
L
L
ẋ(t) = = + u1
dvc 1 1
vc
− − 0
dt C RC
Elle peut être orientée de façon à faire apparaı̂tre explicitement des variables (d’état)
choisies par l’utilisateur.
Considérons en effet une transformation définie par une matrice régulière T permettant
de définir un nouveau vecteur d’état x′ par x′ = T x.
avec :
A′ = T A T −1
B′ = TB
C′ = C T −1
D′ = D
Matrice de transfert en p du
système
soit :
d’où :
Y (p)
H(p) = = C [pI − A]−1 B + D
U(p)
13
14 2.1. Exemple
2.1 Exemple
0 1 0 0
ẋ = 0 0 1 x+ 0
u
0 −2 −3 1 (2.2)
h i
y= 1 1 0 x
Y (p)
H(p) = = C [pI − A]−1 B
U(p)
soit :
−1
p −1 0 0
h i
p+1
H(p) = 1 1 0 0 p −1
0 =
p(p + 2)(p + 1)
0 2 p+3 1
1
H(p) =
p(p + 2)
On pose :
V (p)
[pI − A]−1 =
D(p)
avec :
Les coefficients ai et les matrices Vi sont calculés par les formules de récurrence sui-
vantes (données sans autre démonstration) :
Vn−1 = I
1
an−2 = − trace [Vn−2 A]
2
1
an−3 = − trace [Vn−3 A]
3
..
.
Vn−i = Vn−i+1 A + an−i+1 I
1
an−i = − trace [Vn−iA]
i
Jean-José ORTEU Version Ecole des Mines
imprimée le 16 novembre 2011
Albi-Carmaux
16 2.3. Exemple
..
.
V0 = V1 A + a1 I
1
a0 = − trace [V0 A]
n
0 = V0 A + a0 I
2.3 Exemple
2 −1 1 2 p−2 1 −1 −2
0 1 1 0
0 p − 1 −1 0
A= [pI − A] =
−1 1 1 1 1 −1 p − 1 −1
1 1 1 0 −1 −1 −1 p
V3 = I4
a3 = −trace [A] = −4
−2 −1 1 2 −3 4 0 −3
0 −3 1 0 −1 −2 −2 1
V2 = A − 4I4 =
V2 A =
−1 1 −3 1 2 0 −2 −5
1 1 1 −4 −3 −3 −1 3
1
a2 = − trace [V2 A] = 2
2
−1 4 0 −3 −5 2 0 −2
−1 0 −2 1
1 0 −2 −4
V1 = V2 A + 2I4 = V1 A =
2 0 0 −5 −1 −7 −3 4
−3 −3 −1 5 0 4 −2 −7
1
a1 = − trace [V1 A] = 5
3
0 2 0 −2 −2 0 0 0
1 5 −2 −4
0 −2 0 0
V0 = V1 A + 5I4 = V0 A =
−1 −7 2 4 0 0 −2 0
0 4 −2 −2 0 0 0 −2
1
a0 = − trace [V0 A] = 2
4
Il vient :
p3 − 2p2 − p −p2 + 4p + 2 p2 2p2 − 3p − 2
1
−p + 1 p3 − 3p2 + 5 p2 − 2p − 2 p−4
−1
[pI−A] =
D(p)
−p2 + 2p − 1 p2 − 7 p3 − 3p2 + 2 p2 − 5p + 4
p2 − 3p p2 − 3p + 4 p2 − p − 2 p3 − 4p2 + 5p − 2
ẋ(t) = A x(t)
La solution générale, dans le cas d’un système excité par une entrée u est donnée par
l’équation suivante :
Pour obtenir la valeur de k(t), il suffit de remplacer cette valeur de x(t) dans l’équa-
tion (1.1) :
Donc :
k̇ = e−A(t−t0 ) B u
ou :
18
3.1. Evaluation de la matrice de transition d’état eAt 19
Z t
k(t) = k(t0 ) + e−A(τ −t0 ) B u(τ ) dτ
t0
Donc :
Z t
x(t) = eA(t−t0 ) k(t0 ) + eA(t−t0 ) e−A(τ −t0 ) B u(τ ) dτ
t0
Il vient finalement :
Z t
A(t−t0 )
x(t) = e x(t0 ) + eA(t−τ ) B u(τ ) dτ (3.1)
| {z } t0
| {z }
réponse à la condition
régime forcé correspondant à la
initiale avec entrée nulle
condition initiale nulle avec entrée
non nulle
Connaissant x(t) il est facile de déterminer y(t) par l’équation de sortie (1.2).
Pour une entrée nulle, l’évolution du vecteur d’état à partir de t0 = 0 quand on écarte
le système de sa position d’équilibre est décrite par :
Elle peut se calculer de plusieurs manières différentes qui seront décrites ci-après.
h i
L eAt = [pI − A]−1
d’où on tire :
Cette méthode, qui nécessite le calcul de l’inverse d’une matrice (Cf. l’algorithme de
Leverrier-Souriau au paragraphe 2.2) et le retour à l’original de la transformation de
Laplace, convient tant que l’ordre de A est peu élevé.
Exemple
" #
−5 −1
A=
6 0
On calcule :
" #
p+5 1
[pI − A] =
−6 p
et :
" #
−1 1 p −1
[pI − A] =
dét[pI − A] 6 p+5
avec :
p + 5 1 2
dét[pI − A] = dét = p(p + 5) + 6 = p + 5p + 6 = (p + 2)(p + 3)
−6 p
soit :
" #
−1 1 p −1
[pI − A] =
(p + 2)(p + 3) 6 p+5
p −2 3
= +
(p + 2)(p + 3) p+2 p+3
−2e−2t + 3e−3t −e−2t + e−3t
eAt =
6e−2t − 6e−3t 3e−2t − 2e−3t
On a :
1
0 0
p − λ1
1
[pI − A]−1 =
0 0
p − λ2
1
0 0
p − λ3
eλ1 t 0 0
eAt λ2 t
= 0 e 0
0 0 eλ3 t
Si la matrice A n’est pas diagonale, mais est diagonalisable, il existe alors une
matrice de changement de base T telle que :
T −1 AT = Ã
eAt = T eÃt T −1
La matrice diagonalisante T a ses colonnes formées par les composantes des vecteurs
propres de A.
Le problème se ramène donc au calcul des valeurs propres et vecteurs propres de la
matrice A.
Exemple
" #
−5 −1
A=
6 0
p + 5 1
= p(p + 5) + 6 = p2 + 5p + 6 = (p + 2)(p + 3)
dét[pI − A] = dét
−6 p
A vi = λi vi pour i ∈ 1, 2
Il vient :
" # " #
1 1
v1 = v2 =
−3 −2
" # " #
1 1 −2 −1
On en déduit T = et son inverse T −1
=
−3 −2 3 1
e−2t 0 −2e−2t + 3e−3t −e−2t + e−3t
eAt = T
−1
T =
0 e−3t
6e−2t
− 6e −3t
3e
−2t
− 2e
−3t
L’application de ce théorème permet d’écrire que eAt peut être développé en un nombre
fini de termes, égal à l’ordre de la matrice A, de la forme :
On sait que :
à = T −1 AT et Ãk = T −1 Ak T
donc :
eÃt = T −1 eAt T
= α0 (t)I + α1 (t)Ã + α2 (t)Ã2 + · · · + αn−1 (t)Ãn−1
Le calcul de la matrice de transition eAt se ramène donc au calcul des valeurs propres
(supposées distinctes1 ) de la matrice A puis au calcul des coefficients αk (t) solutions
de :
α0 (t) + α1 (t)λ1 + α2 (t)λ21 + · · · + αn−1 (t)λ1n−1 = eλ1 t
α0 (t) + α1 (t)λ2 + α2 (t)λ22 + · · · + αn−1 (t)λ2n−1 = eλ2 t
..
.
α0 (t) + α1 (t)λn + α2 (t)λ2n + · · · + αn−1 (t)λnn−1 = eλn t
Exemple
" #
−5 −1
A=
6 0
p + 5 1
= p(p + 5) + 6 = p2 + 5p + 6 = (p + 2)(p + 3)
dét[pI − A] = dét
−6 p
La dernière équation est obtenue par dérivation de la précédente par rapport à λ3 . Si l’ordre de
multiplicité est plus élevé, on augmente l’ordre de la dérivation.
α0 (t) − 2α1 (t) = e−2t
α0 (t) − 3α1 (t) = e−3t
d’où :
Donc :
−2e−2t + 3e−3t −e−2t + e−3t
eAt = (3e−2t − 2e−3t )I + (e−2t − e−3t )A =
6e −2t
− 6e
−3t
3e
−2t
− 2e −3t
Stabilité
Un système est dit stable si à toute entrée bornée correspond une sortie bornée.
Un système linéaire invariant est stable si pour des entrées nulles et quelle que soit la
condition initiale x(0), on a :
lim x(t) = 0
t→+∞
En conclusion, l’étude de la stabilité d’un système linéaire invariant décrit par une
représentation d’état, se ramène à l’étude du signe des parties réelles des valeurs propres
de la matrice d’état A.
Il existe un moyen d’éviter le calcul des valeurs propres de A, et d’étudier le signe des
parties réelles de ces valeurs propres : c’est le critère de Routh déjà présenté dans
le cours «Analyse des systèmes linéaires continus».
26
Chapitre 5
Notions d’observabilité et de
commandabilité
1. Est-il possible de générer une commande qui permette de faire passer le système
d’un état quelconque x(t1 ) (à l’instant t1 ) à un autre état quelconque x(t2 ) (à
l’instant t2 ) ?
2. En supposant que l’entrée du système est connue, peut-on, par la seule observa-
tion des sorties sur un intervalle de temps [t1 , t2 ], déduire l’état initial x(t1 ) du
système ?
5.2 Exemple
Y (p) 3p(p + 2) 3
= = (5.1)
U(p) p(p + 1)(p − 1)(p + 2) (p − 1)(p + 1)
Remarque :
27
28 5.2. Exemple
- 2 x1 - 1 x3
p p−1
u-
?
? y
+ - + -
6 6
- −1 - 2
p+1 x2 p+2 x4
Fig. 5.1
de simplification.
ẋ1 0 0 0 0 x1 2
ẋ2
0 −1 0 0
x2
−1
= + u
ẋ3 1 1 1 0 x3 0
ẋ4 2 2 0 −2 x4 0
x1
h i
x2
y= 0 0 1 1
x3
x4
1 2 0 −1
−1 0 0 0
x′ = T x
T = ,
1 0.5 1 0
0 2 0 0
ẋ′1 −2 0 0 0 x′1 0
ẋ′2
0 0 0 0
x′2
−2
= + u
ẋ′3 0 0 1 0 x′3 1.5
ẋ′4 0 0 0 −1 x′4 −2
x′1
h i
x′2
y= −1 0 1 0.75
x′3
x′4
1 x′1
p+2
- −2 x′2-
p
?
u 1.5 x′3 − y-
- -+
p−1 +
6
- −2 x′4 -
0.75
p+1
Fig. 5.2
On constate, sur ce schéma, que x′1 n’est pas influencé par l’entrée u, et correspond
ainsi à un pôle (ou mode) non commandable. De même, x′2 n’influence pas la sortie,
et correspond à un pôle non observable.
On notera que la représentation par fonction de transfert (Cf. équation (5.1)) ne re-
tient que les pôles observables et commandables, et ne rend pas compte de l’ensemble
Il apparaı̂t donc que la fonction de transfert, à elle seule, est quelquefois insuffisante
pour décrire un système.
Par contre, la représentation d’état permet de rendre compte des problèmes éventuels
de non commandabilité ou non observabilité : ceci pourra être fait directement sur
toute représentation d’état, ou bien à partir de formes canoniques spécifiques.
5.3 Définitions
Définition 2 Le système :
est dit commandable ou gouvernable si on peut, sur une durée finie, modifier toutes les
composantes du vecteur d’état x(t) par un signal de commande u(t) en vue d’obtenir
un état final x(tf ) à partir d’un état inital x(ti ).
h i
Gc = B AB A2 B · · · An−1 B
est de rang n.
Remarque :
Soit :
ẋ(t) = A x(t) + B u(t)
y(t) = C x(t) + D u(t) (5.2)
h i
Gc = B AB A2 B · · · An−1 B
h i
G′c = B ′ A′ B ′ A′ 2 B ′ · · · A′ n−1 B ′
h i
= T B T AT −1 T B · · · (T AT −1 )n−1 T B
h i
= T B AB A2 B · · · An−1 B
= T Gc
Exemple
Intuitivement, dans le cas où il y a coupure, on conçoit que si l’état du circuit est
représenté par x1 et x2 , respectivement tension aux bornes du condensateur et courant
dans la self, x1 ne sera pas affecté («commandé») par le générateur G de tension u.
Fig. 5.3
5.3.2 Observabilité
Définition 3 Le système :
est dit observable s’il est possible de retrouver son état initial x(ti ) à partir de l’obser-
vation de son entrée u(t) et de sa sortie y(t), sur un intervalle de temps fini.
C
CA
Ob =
CA2
..
.
CAn−1
est de rang n.
Remarque :
Exemple
Considérons le système représenté Figure 5.4 constitué d’un moteur à courant continu
commandé par l’induit - champ inducteur constant - entraı̂nant une charge.
Fig. 5.4
θ̇
0 1
θ
0
ẋ = =
1 + Km u
θ̈ 0 − θ̇
Tm Tm
avec :
Kc
Km =
Rf + Kc Ke
RJ
Tm =
Rf + Kc Ke
Θ(p) Km
=
U(p) p(1 + Tm p)
– Supposons que la sortie mesurée (observée) soit la vitesse de rotation θ̇, c’est-à-dire
la variable d’état x2 . L’équation de sortie s’écrit alors :
h i
y= 0 1 x
1 0
Ob1 = 1
0 −
Tm
Le déterminant de Ob1 est nul : ce système n’est donc pas observable.
La connaissance de la vitesse (et de l’entrée u) ne suffit pas pour en déduire la
position.
Définition 4 Un système est commandable vis-à-vis des sorties s’il existe une
commande u(t) permettant d’amener en temps fini le vecteur de sortie d’une valeur
initiale y(ti) quelconque donnée à une valeur finale y(tf ) quelconque choisie.
h i
rang CB CAB CA2 B · · · CAn−1 B =p
- y1
u- 1 x-
p+1
- 2 - y2
Dans cet exemple, le système est commandable sans l’être vis-à-vis de ses sorties.
" #
1
A = −1, B = 1, C= , rang(CB) = rang(C) = 1 < 2
2
En pratique, si les sorties mesurées sont choisies indépendantes (ce qui impose rang(C) =
p), la commandabilité vis-à-vis de l’état implique celle vis-à-vis des sorties.
Dans le cas le plus général un système peut être décomposé en quatre sous-systèmes
(Cf. Figure 5.6) :
– SCO : partie commandable et observable ;
– SCO : partie commandable et non observable ;
– SCO : partie non commandable et observable ;
– SCO : partie non commandable et non observable ;
La Figure 5.6 montre que la fonction de transfert, qui lie la sortie y à l’entrée u d’un
système monovariable ne décrit que la partie SCO , c’est-à-dire la partie commandable
et observable de ce système.
En pratique, il n’y a pas de moyen d’action sur les parties non commandables et/ou
non observables, dans le premier cas par définition de la notion de commandabilité et
- SCO
u -
- SCO - y
SCO
SCO
Si les parties non commandables ou non observables sont stables, les variables qui les
caractérisent tendent vers zéro, chacune avec sa dynamique propre, et ne sont donc
pas susceptibles de perturber le fonctionnement entrée-sortie du système. Par contre
en cas d’instabilité incontrôlable, il apparaı̂t un risque de détérioration du matériel.
De façon à s’assurer que la régulation d’un système se réalise sans surprise, il est néces-
saire de vérifier au préalable que les modes instables du système sont commandables
et observables.
Nous avons vu qu’un système linéaire possède une infinité de représentations d’état.
Bien que ces représentations soient toutes équivalentes, certaines d’entre elles sont plus
appropriées que d’autres d’un certain point de vue.
On considère le système :
h i
Gc = B AB A2 B · · · An−1 B
a1 · · · an−1 1
.
.. 0
M = ..
an−1 .
1 0 ··· 0
où :
0 1 0 ··· 0
.. ..
. .
Ac = Q A Q−1 =
..
. 0
0 ··· ··· 0 1
−a0 · · · · · · · · · −an−1
0
.
..
Bc = Q B =
0
1
h i
Cc = C Q−1 = b0 · · · bn−1
Quand elle existe, la forme canonique de commandabilité d’un système peut s’obtenir
assez simplement à partir de sa fonction de transfert.
Y (p) b2 p2 + b1 p + b0
= 3 (5.4)
U(p) p + a2 p2 + a1 p + a0
d3 y d2 y dy d2 u du
+ a2 + a1 + a0 y = b2 + b1 + b0 u
dt3 dt2 dt dt2 dt
avec :
Z(p) 1 Y (p)
= 3 2
et = b2 p2 + b1 p + b0
U(p) p + a2 p + a1 p + a0 Z(p)
De ces deux fonctions de transfert on tire les deux équations différentielles où la variable
z est un intermédiaire de calcul :
d3 z d2 z dz
3
= −a2 2
− a1 − a0 z + u (5.5)
dt dt dt
d2 z dz
y = b2 2
+ b1 + b0 z (5.6)
dt dt
dx3
= −a0 x1 − a1 x2 − a2 x3 + u
dt
y = b0 x1 + b1 x2 + b2 x3
0 1 0 0 h i
A= 0 0 1
B= 0 C= b0 b1 b2 D=0
−a0 −a1 −a2 1
On considère le système :
ẋ(t) = A x(t) + B u(t)
y(t) = C x(t) + D u(t)
C
CA
Ob =
CA2
..
.
CAn−1
a1 · · · an−1 1
.
.. 0
M =
..
an−1 .
1 0 ··· 0
z =Qx où Q = M Ob
où :
0 ··· ··· 0 −a0
.. ..
1 . .
Ao = Q A Q−1 =
.. ..
0 . .
.. ..
. 0 .
0 ··· 0 1 −an−1
b0
.
Bo = Q B = ..
bn−1
h i
Co = C Q−1 = 0 ··· 0 1
On considère le système :
ẋ(t) = A x(t) + B u(t)
y(t) = C x(t) + D u(t)
On suppose que la matrice A a des valeurs propres toutes réelles. Il existe alors une
matrice régulière Q telle que la matrice :
à = Q A Q−1
soit sous forme diagonale ou de Jordan suivant que les valeurs propres de A sont simples
ou multiples.
Dans le cas de valeurs propres simples, les colonnes de la matrice Q−1 sont constituées
par les vecteurs propres de A.
z =Qx
où :
Aj = Q A Q−1 = Ã Bj = Q B Cj = C Q−1
La forme canonique d’un système peut également être déterminée à partir d’une dé-
composition en éléments simples de sa fonction de transfert.
Y (p) α1 α2 α3
= + +
U(p) p − p1 p − p2 p − p3
p1 0 0 w1 h i
Aj = 0 p2 0 Bj = w2 Cj = µ1 µ2 µ3 Dj = 0
0 0 p3 w3
On montre que le système est observable si et seulement si Cj n’a aucune colonne nulle.
p1 1 0 0 h i
Aj = 0 p1 0 Bj = w1 Cj = µ11 µ12 µ2 Dj = 0
0 0 p2 w2
5.4.4 Exemples
Exemple No 1
" # " #
−1 1 1
ẋ = x+ u
0 −1 1
h i
y= 1 −1 x
" # " #
0 1 0
ẋ = x+ u
−1 −2 1
h i
y= 1 0 x
" # " #
0 −1 1
ẋ = x+ u
1 −2 0
h i
y= 0 1 x
(voir cours)
Exemple No 2
Y (p) p+3
= 2
U(p) p + 3p + 2
ẋ1 0 1 x1 0
= + u
ẋ2 −2 −3 x2 1
h i x1
y= 3 1
x2
ẋ1 0 −2 x1 3
= + u
ẋ2 1 −3 x2 1
h i x1
y= 0 1
x2
ẋ1 −1 0 x1 1
= + u
ẋ2 0 −2 x2 1
h i x1
y= 2 −1
x2
Exercice
M = 30 kg , k = 15 N/m , f = 15 N.s/m , R = 10 Ω
L = 10 H , α = 0, 2 V.s/m , β = 6 N/A
46
47
5) Calculer la réponse y(t) pour une entrée nulle lorsque l’état initial est :
y(0) = 1 m , ẏ(0) = 1 m/s , i(0) = 0.
(On donnera l’expression analytique de cette réponse).
Tracer cette réponse.
11) Après avoir calculé la matrice de transition d’état de 3 façons différentes calculer
la réponse x(t) pour une entrée nulle lorsque l’état initial est :
1
x(0) = 1
0
12) Calculer la réponse x(t) lorsqu’on applique un échelon de tension u = 100 V avec
des conditions initiales nulles.
49
Chapitre 7
Commande découplante
7.1 Théorie
G12
+
u2 y2
G22
+
avec :
" #
G11 G12
Gp = (matrice de transfert du process)
G21 G22
" #
y1
y= (vecteur des sorties)
y2
50
7.1. Théorie 51
" #
u1
u= (vecteur des entrées)
u2
Gm1
–
v1 ε1 u1 y1
+ +
Gc11 Gv1 G11
+
+ +
Gc12 G21
Gc21 G12
+ +
v2 y2
Gc22 Gv2 G22
+ ε2 + u2 +
–
Gm2
avec :
" #
Gv1 0
Gv = (matrice des actionneurs)
0 Gv2
" #
Gc11 Gc12
Gc = (matrice des correcteurs)
Gc21 Gc22
" #
ε1
ε= (vecteur des écarts)
ε2
Par ailleurs :
ε1 = v1 − Gm1 y1
ε2 = v2 − Gm2 y2
avec :
" #
Gm1 0
Gm = (matrice des capteurs)
0 Gm2
" #
v1
v= (vecteur des consignes)
v2
y = Gp Gv Gc ε (7.4)
y = G0 v − G0 Gm y
soit finalement :
y = [I + G0 Gm ]−1 G0 v
H = [I + G0 Gm ]−1 G0
Soit :
" #
G11 Gv1 Gc11 + G12 Gv2 Gc21 G11 Gv1 Gc12 + G12 Gv2 Gc22
G0 =
G21 Gv1 Gc11 + G22 Gv2 Gc21 G21 Gv1 Gc12 + G22 Gv2 Gc22
H = [I + G0 Gm ]−1 G0
[I + G0 Gm ] H = G0
G0 [I − Gm H] = H
Soit :
G0 = H [I − Gm H]−1 = Gp Gv Gc
On trouve finalement :
q1 q2
? ?
6 6
h1 h2
R3 R1 R2
?
7.2 Exemple1
avec :
S1 = 1 m2 , S2 = 0.5 m2 , R1 = 0.5 s/m2 , R2 = 2 s/m2 , R3 = 1 s/m2
dh1 h1 − h2 h1
S1 = q1 − −
dt R1 R3
dh2 h1 − h2 h2
S2 = q2 + −
dt R1 R2
et en posant : " #
q1
q=
q2
" # " #
−3 2 1 0
ẋ = x+ q
4 −5 0 2
p+5 4
(p + 1)(p + 7) (p + 1)(p + 7)
Gp = (pI − A)−1 B =
4 2(p + 3)
(p + 1)(p + 7) (p + 1)(p + 7)
On suppose que les fonctions de transfert des actionneurs sont des gains unité.
H = [I + G0 Gm ]−1 G0
avec :
K1
0
p+3
G0 = Gp Gv Gc =
2K2
0
p+5
Il vient finalement :
K1
K1
p+3
K1 + 3
0
0
K1 p
1+
1+
H=
p+3
=
K1 + 3
2K2
2K2
p+5 2K2 + 5
0 0 p
2K2
1+
1+ 2K2 + 5
p+5
H1 (p) H2 (p)
Les fonctions de transfert et ont des gains statiques différents de 1 ce
Q1 (p) Q2 (p)
qui permet de prévoir un problème de précision statique en réponse à un échelon de
débit en entrée.
Pour rémédier à ce problème, on peut utiliser des correcteurs directs de type PI, i.e. :
! !
1 1
Gc11 = K1 1+ , Gc22 = K2 1+
p p
−4K2 (p + 1) −2K1 (p + 1)
Gc12 = , Gc21 =
p(p + 5) p(p + 3)
7.3 Exemple2
8.1 Principe
ẋ = A x + B u
y = C x+Du
Un tel système, qui est en boucle ouverte, peut être schématisé par les Figures 8.1
et 8.2.
57
58 8.1. Principe
- D
+ ẋ Z x +
?+
- - - - - -
y
u B C
+6
A
Fig. 8.1
PROCÉDÉ
u -
y -
ẋ = A x + B u
y =C x+Du
x ?
Fig. 8.2
Le principe d’une correction ou compensation par retour d’état consiste à définir une
loi de commande de la forme :
u=v−Kx
Le système corrigé, qui est en boucle fermée, est alors schématisé par les Figures 8.3
et 8.4.
ẋ = A x + B u
u = v−Kx
- D
A
K
Fig. 8.3
RÉGULATEUR
v + u PROCÉDÉ
- - -
ẋ = A x + B u y
6 y =C x+Du
x
K
Fig. 8.4
y = Cx
ẋ = (A − B K) x + B v
y = Cx
8.2.1 Exemple
det(pI − A) = p2 + w02
p1 = −j w0
p2 = j w 0
ce qui correspond bien à un système du second ordre non amorti (coefficient d’amor-
tissement ζ = 0).
La Figure 8.5 montre la réponse d’un tel système aux conditions initiales x1 = 0, 3 et
x2 = −0, 5 dans le cas où w0 = 1.
en boucle ouverte
0.6
0.4
0.2
−0.2
−0.4
−0.6
−0.8
0 5 10 15 20 25 30
Supposons que l’on souhaite corriger ce système de manière à ce qu’il présente 1 pôle
réel double p0 = −2 w0 . En faisant cela, on double la pulsation des oscillations non
amorties et on fait passer le coefficient d’amortissement ζ de 0 à 1.
= p2 + K2 p + w02 + K1 (8.2)
K2 = 4 w 0
w02 + K1 = 4 w02
K1 = 3 w02
K2 = 4 w 0
0.2
0.1
−0.1
−0.2
−0.3
−0.4
−0.5
0 0.5 1 1.5 2 2.5 3 3.5
Soit le système :
ẋ = Ac x + Bc u
y = Cc x
où :
0 1 0 ··· 0
.. .. 0
. .
.
..
Ac =
..
Bc =
. 0
0
0 ··· ··· 0 1
1
−a0 · · · · · · · · · −an−1
h i
Cc = b0 · · · bn−1
0 1 0 ··· 0
.. .. 0
. .
.. h i
A1 = Ac − Bc K =
..
− .
K0 K1 · · · Kn−1
. 0
0
0 ··· ··· 0 1
1
−a0 · · · · · · · · · −an−1
soit :
0 1 0 ··· 0
.. ..
. .
A1 =
..
. 0
0 ··· ··· 0 1
−a0 − K0 · · · · · · · · · −an−1 − Kn−1
Ki = αi − ai
Dans le cas des systèmes monovariables, la matrice de retour d’état est une matrice
ligne de dimension n égale au degré du polynôme caractéristique du système (qui est
égal à la dimension du vecteur d’état). Il existe donc un seul choix possible des n
coefficients Ki de la matrice de réaction d’état.
Il existe donc une infinité de choix possibles des m × n coefficients Kij de la matrice
K de retour d’état et donc une infinité de structures de commandes possibles.
Nous avons étudié, dans le cours ASLC, les caractéristiques dynamiques d’un système
du second ordre en fonction de la localisation de ses pôles dans le plan complexe.
Nous avons vu, par exemple, que l’amortissement est d’autant plus rapide que les pôles
sont plus à gauche de l’axe complexe et que la fréquence d’oscillation croı̂t avec l’éloi-
gnement de l’axe réel.
Par extrapolation, ces caractéristiques sont utilisées pour un système d’ordre quel-
conque, les propriétés étant d’autant plus proches de celles d’un second ordre réel que
le système admet deux pôles dominants.
Pour guider la synthèse d’un régulateur par placement de pôles, nous énoncerons un
certain nombre de règles de base permettant d’assurer la robustesse de la régulation
réalisée :
– ne déplacer les pôles du système que si les conditions de stabilité, de dynamique, ou
plus généralement de comportement l’exigent.
– limiter la valeur supérieure des parties réelles des pôles au niveau nécessité par la
rapidité ou la marge de stabilité requises.
– limiter la valeur inférieure des parties réelles de façon à ne pas solliciter exagérément
et inutilement les actionneurs.
– assurer un amortissement suffisant des oscillations correspondant aux pôles com-
plexes.
Amortissement
Im
11111111111
00000000000
10101010
00000000000
11111111111 0
1
00000000000
11111111111 0
1
Marge de stabilité
10101010
00000000000
11111111111 0
1
00000000000
11111111111
10101010 0
1
0
1
00000000000
11111111111 0
1
00000000000
11111111111
10101010
00000000000
11111111111 0
1
00000000000
11111111111
00000000000
11111111111 10101010 0
1
0
1
Re
00000000000
11111111111 0
1
00000000000
11111111111
Limitation
due aux
00000000000
11111111111 10101010 0
1
actionneurs
00000000000
11111111111 0
1 0
1 0
1
0
1
00000000000
11111111111 10101010 0
1
00000000000
11111111111 0
1
00000000000
11111111111
00000000000
11111111111 1010 0
1
Fig. 8.7 – Localisation des pôles
De façon pratique, le choix des pôles du système corrigé peut s’effectuer simplement à
partir d’un examen des pôles du système initial.
Dans le cas des pôles instables par exemple un bon positionnement après correction
consiste à les remplacer par leurs symétriques par rapport à l’axe imaginaire.
RÉGULATEUR
v + u PROCÉDÉ y
- - - -
λ ẋ = A x + B u
6 y=Cx
x
K
Fig. 8.8 – Commande par retour d’état avec gain λ pour la précision statique
Si l’on a déjà calculé le gain statique du système en boucle fermée (sans λ), il suffit de
prendre :
1
λ=
gain statique
0 = (A − BK) x + B v
y = Cx
Soit :
y = −C (A − BK)−1 B v
1
λ=
−C (A − BK)−1 B
ẋ = A x + B u + B1 w
y = Cx
Nous supposons que le système est de type «1 entrée/1 sortie» (u et y sont des sca-
laires) et qu’il est commandable.
Dans le cas où le système est de classe 0 (pas d’intégration), nous allons générer
une commande en boucle fermée qui utilise à la fois un retour d’état et un terme
correspondant à l’intégration de l’erreur1 ε = y − v :
Z t
u = −K x − KI xI avec xI = ε(τ ) dτ
0
Notons que :
x˙I = ε = y − v = C x − v
?
v ε xI + u PROCÉDÉ y
- - - - - -
R
−KI ẋ = A x + B u + B1 w
+6 +6 y=Cx
x
−K
" #
x
xI
" #
h i x
u = − K KI (8.4)
xI
" #
′ x
u = −K
xI
" # " #
−1 1 0 h i
A= , B= , C= 1 0
1 −2 100
" # −1 1 0 " # 0
A 0 B
A′ = B′ =
= 1 −2 0 , = 100
C 0 0
1 0 0 0
On souhaite que le système en boucle fermée présente 3 pôles (-3), (-4) et (-4).
Exercice (suite)
p1 = −0, 5 + 0, 6 j
p2 = −0, 5 − 0, 6 j
p3 = −2
15) Calculer la réaction d’état K pour obtenir les valeurs propres désirées.
17) On désire que la position y en mètres soit identique en régime statique au signal
de consigne v en volts tout en conservant le même comportement dynamique.
70
71
u = qv −Kx
Commande modale
72
Chapitre 11
Commande quadratique
73
Chapitre 12
Reconstructeur d’état
Dans les chapitres précédents, nous avons supposé tous les états du processus acces-
sibles pour élaborer la commande. La plupart du temps, soit par impossibilité physique
d’introduire un capteur, soit parce que l’information délivrée par un capteur est trop
bruitée pour pouvoir être exploitée, soit pour des questions de coût, . . . on ne peut pas
mesurer tous les états.
Nous allons voir dans ce chapitre comment on peut, à partir de mesures faites sur
l’entrée et la sortie du processus, reconstruire (on dit aussi estimer) le vecteur d’état
x, noté alors x̂. Le sous-système qui réalise cette reconstruction est appelé un recons-
tructeur d’état (ou observateur).
RÉGULATEUR
v + u PROCÉDÉ
- - -
ẋ = A x + B u y
6 y =C x+Du
x̂
K observateur d’état
Fig. 12.1
74
Troisième partie
75
Chapitre 13
76
Chapitre 14
77
Chapitre 15
78
Chapitre 16
Exemple2
2
On considère le processus continu de la figure 16.1 avec G(p) = .
p(p + 1)
u(t) y(t)
G(p)
T T
u(kT ) y(kT )
BOZ G(p)
79
80
Solution :
1)
" # !
−1 b b T 1 − e−aT
H(z) = (1−z )Z 2 = − (cf. table)
p (p + a) a z − 1 a(z − e−aT )
2)
" #
y
x=
ẏ
" # " #
0 1 0
ẋ = x+ u
0 −a b
h i
y= 1 0 x
3)
1 1
−1
p p(p + a)
eAt = L−1 [pI − A]−1 = L
1
0
p+a
1
1 (1 − e−aT )
F = eAT = a
0 e
−aT
1
(1 − e−ax )
" #
1
Z T Z T
G= eAx dx.B = a dx 0
0 0
b
0 e−ax
b
b −aT
Z (1 − e−ax ) 2 (aT − 1 + e )
T a
G= a dx =
0 b
be −ax
(1 − e−aT )
a
4)
1 1 1 − e−aT
z−1 a (z − 1)(z − e−aT )
(zI − F )−1 =
1
0
z − e−aT
!
b T 1 − e−aT
H(z) = −
a z − 1 a(z − e−aT )
82
Bibliographie 83