2. 2Automatique
Contenu
q Analyse de la stabilité dans l'espace d'état
q Commandabilité de l'état
u Matrice de commandabilité
u Grammien de commandabilité
u Théorèmes de commandabilité complète d'un système linéaire
u Systèmes partiellement commandables
q Commande par retour d'état
u Notion de BF dans l'espace d'état
u Modèle d'état, matrice de transfert de la BF
u Commande en BF par placement de pôles
Ø Cas des systèmes monovariables commandables
Ø Cas des systèmes multivariables commandables
3. 3Automatique
Analyse de la stabilité dans l'espace d'état
q Représentation d'état
u Réponse libre du système
q Analyse de la stabilité
+=
+=
)()()(
)()(
tDUtCXtY
tBUtAXX& nn
A ×
∈R
mnB ×∈R
npC ×∈R
mpD ×∈R
ntX R∈)(
mtU R∈)(
ptY R∈)(
)()( 0
)( 0 tXetX ttA −
=0)( =tU
( )
∫ −− +=
t
t
tAttA dBUetXetX
0
0 )()()( 0
)( τττ
X(t0)
X1
X2
Xn
0
Solution divergente
Le système est stable si la solution X(t) à 0 lorsque tà∞.
Le système est instable autrement et la solution diverge
,0)(lim)(lim 0
)( 0 == −
+∞→+∞→
tXetX ttA
tt
)( 0tX∀ 0lim )( 0 =−
+∞→
ttA
t
e⇔
4. 4Automatique
Analyse de la stabilité dans l'espace d'état
q Conditions de stabilité
Sous quelle condition ?0lim )( 0 =−
+∞→
ttA
t
e
Analysons un cas particulier : la matrice A admet n valeurs propres
λi distinctes à A est diagonalisable
1−= TDTA
=
n
D
λ
λ
0
01
O
T : matrice des vecteurs
propres de A
1)()( 00 −−−
= TTee ttDttA
avec
1
)(
)(
)(
0
01
0
0
0
−
−
−
−
= T
e
e
Te
tt
tt
ttA
nλ
λ
O
Cette condition est satisfaite si toutes les valeurs
propres λi sont à partie réelle strictement négative
pour 0→tieλ0)( 0 →−ttA
e tieλ+∞→t si les termes convergent càd
Théorème
Un système linéaire invariant est asymptotiquement stable si toutes les
valeurs propres de la matrice d'état A sont à partie réelle strictement
négative
6. 6Automatique
Commande dans l'espace d'état
q Notions de commandabilité de l'état
Définition
Un système d'équation d'état est dit complètement commandable
sur l'intervalle de temps [t0, t1], t1 < ∞ s'il existe une commande U(t) définie
sur [t0, t1] permettant de faire évoluer le système d'un état initial quelconque
X(t0) à un état désiré quelconque X(t1).
BUAXX +=&
X(t0)
X1
X2
Xn
X(t1)
X(t0)
X(t1) Existe-t-il une commande U(t) qui fait
évoluer le système de l'état X(t0) à un état
X(t1) en un temps fini ∆t=t1−t0? Si oui, le
système est dit commandable.
Peut-on trouver un critère mathématique
permettant de déterminer la commandabilité ?
7. 7Automatique
Commandabilité de l'état
q Critère mathématique
)()( tBUtAXX +=&
nnA ×∈R
mnB ×∈R
ntX R∈)(
mtU R∈)(
§ Equation d'état : avec et
§ Réponse temporelle
( )
∫ −−
+=
t
t
tAttA
dBUetXetX
0
0 )()()( 0
)(
τττ
( )
∫
−−
+= 1
0
101 )()()( 0
)(
1
t
t
tAttA
dBUetXetX τττ
D'après la formule de Sylvester, on a : .∑
−
=
=
1
0
)(
n
i
i
i
At Ate α On en déduit
∫ ∑
−
=
− −=− 1
0
01 )()()()(
1
0
10
)(
1
t
t
n
i
i
i
ttA dBUAttXetX τττα
∑ ∫
−
=
− −=−
1
0
10
)(
1
1
0
01 )()()()(
n
i
t
t i
ittA dUtBAtXetX τττα
∫∫∫ −++−+−=− −
−− 1
0
1
0
1
0
01 )()()()()()()()( 11
1
11100
)(
1
t
t n
nt
t
t
t
ttA
dUtBAdUtABdUtBtXetX τττατττατττα L
Le problème consiste à trouver la commande U(t) telle que cette
équation soit vraie pour X(t0) et X(t1) quelconques.
8. 8Automatique
Commandabilité de l'état
q Critère mathématique
∫∫∫ −++−+−=− −
−− 1
0
1
0
1
0
01 )()()()()()()()( 11
1
11100
)(
1
t
t n
nt
t
t
t
ttA
dUtBAdUtABdUtBtXetX τττατττατττα L
[ ]
−
−
−
=−
∫
∫
∫
−
−−
1
0
1
0
1
0
01
)()(
)()(
)()(
)()(
11
11
10
1
0
)(
1
),( t
t n
t
t
t
t
nttA
dUt
dUt
dUt
BAABBtXetX
BA
τττα
τττα
τττα
M
444 3444 21
L
C
).(),( mnnRBA ×∈C
Cette équation est une combinaison linéaire de matrices AiB (i = 0, …, n−1).
La solution existe si les matrices AiB sont linéairement indépendantes càd
( ) nBArang =),(C
Théorème
Un système d'équation d'état est complètement commandable à la
condition nécessaire et suffisante que la matrice de commandabilité C (A, B)
soit de rang n.
BUAXX +=&
).(),( mnnRBA ×∈C
[ ]BABAABBBA n 12),( −= LCMatrice de commandabilité :
9. 9Automatique
Commandabilité de l'état
q Critère mathématique
u Remarques
§La notion de commandabilité de l'état ne porte que sur l'équation d'état et
donc sur les matrices A et B. Dire que le système est commandable
équivaut à dire que la paire (A, B) est commandable
§Dans le cas d'un système mono-entrée, la matrice de commandabilité est
une matrice carrée
nnRBA ×∈),(C1=m
Corollaire
Un système mon-entrée u d'équation d'état est
complètement commandable ssi
BuAXX +=&
( ) 0),(det ≠BAC
§ Approche pratique de vérification de la commandabilité
Ø Former la matrice de commandabilité C (A, B)
Ø Calculer le rang de C (A, B)
Ø En déduire que le système est commandable si rang(C (A, B) )=n
10. 10Automatique
Commandabilité de l'état
q Exemples
Exemple 1
)()( tBUtAXX +=&
=
−−
−
=
01
10
,
22
14
BA
2=n états 2=m entrées
−−
−
=
×
−−
−
=
22
41
01
10
22
14
AB
[ ]
−−
−
==
2201
4110
),( ABBBAC
Matrice de rang 2
à système commandable
Exemple 2
)()( tBUtAXX +=&
=
−
−
=
1
1
,
4
12
BA
α
2=n états 1=m entrée
−
−
=
×
−
−
=
4
1
1
1
4
12
αα
AB
Le système est commandable ssi
le det est non nul càd
[ ]
−
−
==
41
11
),(
α
ABBBAC
( ) 3),(det −=αBAC
3≠α
11. 11Automatique
Commandabilité de l'état
q Programmation sous scilab
-->// Matrices équation d'état
-->A=[-4 1;-2 -2];
-->B=[0 1;1 0];
-->//Matrice de commandabilité
-->Ctr = cont_mat(A,B)
Ctr =
! 0. 1. 1. - 4. !
! 1. 0. - 2. - 2. !
-->rang = rank(Ctr)
rang =
2.
Exemple 1 Exemple 2
-->alpha = 6;
-->A=[-2 1; alpha -4];
-->B=[1;1];
-->// Matrice de commandabilité
-->Ctr = cont_mat(A,B)
Ctr =
! 1. - 1. !
! 1. 2. !
-->rang = rank(Ctr)
rang =
2.
3=α
--> alpha = 3;
-->A=[-2 1;alpha -4];
-->B=[1;1];
-->// Matrice de
commandabilité
-->Ctr = cont_mat(A,B)
Ctr =
! 1. - 1. !
! 1. - 1. !
-->rang = rank(Ctr)
rang =
1.
Exemple 2 6=α
Matrice de rang 2
à système commandable
Matrice de rang 2
à système commandable
Matrice de rang 1
à Système non
commandable
12. 12Automatique
Commandabilité de l'état
q Commandabilité : autre théorème
Analysons le cas particulier d'un système mono-entrée, mono-sortie dont
la matrice A admet n valeurs propres λi distinctes à A est diagonalisable
1−= TTAA m
=
n
mA
λ
λ
0
01
O
T : matrice des
vecteurs propres
de A
ATTAm
1−=
BTBm
1−=
Théorème
Un système dont la matrice d'état est diagonalisable est complètement
commandable ssi tous les modes de la forme modale associée sont
commandables
Corollaire
Si la ligne i de la matrice Bm (de la forme modale) est nulle alors le mode
correspondant à la valeur propre λi de Am n'est pas commandable
CTCm =
13. 13Automatique
Commandabilité de l'état
q Illustration de la commandabilité sur une forme modale
)()( tBUtAXX +=&
=
−
−
=
1
1
,
10
12
BAavec
§ Valeurs propres de A
)2)(1()det( ++=− λλλ AI 11 −=λ 22 −=λet A est diagonalisable
§ Diagonalisation de A
: matrice des vecteurs propres vi de A avec][ 21 vvT = iii vAv λ=
On montre que
=
01
11
T
−
=−
11
101T
−
−
== −
20
011ATTAm
== −
0
11BTBm ligne nulle§ Schéma de simulation de la forme modale
u
+
∫
λ1
µ1
∫
λ2
µ2
+
+
+
x2 x2
x1 x1
y
L'état x2 n'est pas influencé
par l'entrée. Le mode λ2 n'est
pas commandable
14. 14Automatique
Commandabilité de l'état
q Grammien de commandabilité
Définition
On appelle grammien de commandabilité, la matrice Wc(t) définie par :
τττ
∫=
t
t
ATA
c deBBetW
T
0
)( nn
c RtW ×∈)(
Commandabilité
Existe-t-il une commande U(t)
qui fait évoluer le système de
l'état X(t0) à un état X(t1) en un
temps fini ∆t=t1−t0?
( ) ( ))()()()( 0
1)( tXetXtWeBtU At
c
tAT T
−= −−τ
Si la matrice Wc(t) est inversible, la
commande est donnée par
[ ]10 ttt ∈
Théorème
Un système d'équation d'état est complètement commandable ssi
le grammien de commandabilité est inversible ou de façon équivalente
rang(Wc(t))=n.
BUAXX +=&
15. 15Automatique
Commandabilité de l'état
q Remarques sur la commandabilité
§La propriété de commandabilité est invariante par changement de base
§Un système complètement commandable admet une forme canonique de
commandabilité
Soit la paire (A, B) commandable. Réalisons une transformation linéaire tq
ATTAT
1−= BTBT
1−=et
[ ]T
n
TTTTTT BABABABBA TT
12),( −= LC
[ ]LBATTATTTBATTTBTBA TT
111111),( −−−−−−=C
[ ] ),(),( 121 BATBAABBTBA TT CC −− == L ),(),( 1 BATBA TT CC −=
La matrice T étant inversible, rang(T)=n. Par conséquent
( ) ( )),(),( BArangBArang TT CC =
16. 16Automatique
Commandabilité de l'état
q Cas de systèmes partiellement commandables
( ) nrBArang <=),(CSi le système n'est pas complètement commandable, on a
Ceci signifie qu'il existe r modes commandables et n−r modes non commandables
ATTAT
1−=
BTBT
1−=
CTCT =
TT
TTT
XCY
tUBtXAX
=
+= )()(&
)()( tBUtAXX +=&Soit la représentation initiale. Il existe une matrice T telle que
avec
[ ] T
T
T
T
T
XCCY
tU
B
X
X
A
AA
X
X
21
1
,2
,1
22
1211
,2
,1
)(
00
=
+
=
&
&
rrA ×∈R11
)()(
22
rnrnA −×−∈R
rrnA ×−∈ )(
12 R
mrB ×∈R1
TT
TTT
XAX
tUBXAXAX
,222,2
1,212,111,1 )(
=
++=
&
&
Partie commandable de dimension r
Partie non-commandable de dimension n−r
La paire est commandable),( 111 BA
17. 17Automatique
Commandabilité de l'état
q Cas de systèmes partiellement commandables : exemple
)(
)()(
tCXY
tBUtAXX
=
+=&
−=
43
21
41
Bavec
−−−
−−
=
04523
2251
12125
A
§ Matrice de commandabilité
,
(n=3 et m=1)
[ ]
−−
−−
−
==
414143
232121
434141
),( 2BAABBBAC ( ) 32),( =<= nBArang C
Il y a un mode non commandable
§ Changement de base
−
−
−
=
414121
21211
414121
T
−
−
−
== −
300
010
011
1ATTAT
== −
0
1
1
1BTBT ]001[== CTCT
]414121[ −=Cet
Partie commandable
§ Fonction de transfert correspondante
TTT BAsICsH 1)()( −−=
)1)(1)(3(
)3)(2(
375s
65s
)( 23
2
jsjss
ss
ss
s
sH
−++++
++
=
+++
++
=
La perte de commandabilité est due à la simplification d'un pôle par un zéro
18. 18Automatique
Commande par retour d'état
q Modèle d'état d'un linéaire invariant en boucle ouverte (BO)
q Loi de commande
+=
+=
)()()(
)()(
tDUtCXtY
tBUtAXX&
nnA ×∈R
mnB ×∈R
npC ×∈R
mpD ×∈R
ntX R∈)(
mtU R∈)(
ptY R∈)(
Supposons tous les états mesurables (hypothèse restrictive). La loi de
commande consiste à réaliser un retour d'état sous la forme
)()()( tKXtrtU −=
nmK ×∈R
matrice de retour d'état
r : signaux de
référence
U C Y
XX&
∫B
A
D
+
+
+
+ +
+
K
r
U C Y
XX&
∫B
A
D
+
+ +
+
19. 19Automatique
Commande par retour d'état
q Modèle d'état de la boucle fermée
q Propriétés
+=
+=
)()()(
)()(
tDUtCXtY
tBUtAXX&
)()()( tKXtrtU −=avec
−+=
−+=
))()(()()(
))()(()(
tKXtrDtCXtY
tKXtrBtAXX&
( )
( )
+−=
+−=
)()()(
)()(
tDrtXDKCtY
tBrtXBKAX&
§Les modes du système en BF sont les pôles de la matrice A−BK
§Le système en BF est commandable par r(t) ssi le système en BO est
commandable par U(t) càd . La propriété de
commandabilité est invariante par retour d'état
§ La matrice de retour K offre des degrés de liberté pour
Ø imposer un comportement dynamique au système
Ø stabiliser le système (s'il est instable en BO)
)( BKAspecBF −∈λ
( ) ( )),(),( BBKArangBArang −= CC
20. 20Automatique
Commande par retour d'état
q Matrice de transfert en BF
q Commande par retour d'état des systèmes commandables
BFBFBFBFBF DBAsICsH +−= −1)()(
DBBKAsIDKCsHBF ++−−= −1))(()( BBKAsICsHBF
1)()( −+−=
Car généralement, D=0
Théorème
Si le système (A, B) est complètement commandable, il est possible par le
choix de K de placer arbitrairement les valeurs propres du système en BF
§ Dynamique désirée en BF
Elle est caractérisée par les pôles désirés en BF : BFnBFBF ,,2,1 ,,, λλλ L
§ Polynôme caractéristique en BF
01
1
1
1
, )()( βββλ ++++=−= −
−
=
∏ sssssP n
n
n
n
i
BFiBF L
Trouver K tq 01
1
1)()det()( βββ ++++==+−= −
−− ssssPBKAsIsP n
n
n
BFBKA L
§ Problématique
21. 21Automatique
Commande des systèmes par placement de pôles
q Cas des systèmes mono-entrée, mono-sortie commandables
u Exemple
=
+
−
=
)(]01[)(
)(
4
0
)(
20
10
tXtY
tutXX&
§ Vérification de la commandabilité
[ ]
−
==
84
40
),( ABBBAC ( ) 2),( =BArang C
Système commandable
§ Pôles désirés en BF : 322,1 jBF −−=λ 322,2 jBF +−=λet
§ Polynôme caractéristique en BF
)322)(322()()(
2
1
, jsjsssP
i
BFiBF −+++=−= ∏
=
λ 164)( 2 ++= sssPBF
§ Représentation d'état du système en BF
( )
=
+−=
)()(
)()(
tCXtY
tBrtXBKAX&
avec [ ]21 kkK = )1et2,( ==∈ × mnK nmR
[ ]21
4
0
20
10
kkBKA
−
−
=−
−−−
=−
21 424
10
kk
BKA
§ Matrice d'état en BF
22. 22Automatique
Commande des systèmes par placement de pôles
q Cas des systèmes mono-entrée, mono-sortie commandables
§ Polynôme caractéristique de la matrice d'état en BF A−BK
))(det()( BKAsIsP BKA −−=−
12
2 4)42()( kskssP BKA +++=−
−−−
−
=−−
21 424
10
10
01
)(
kk
sBKAsI
++
−
=−−
21 424
1
)(
ksk
s
BKAsI
§ Placement des pôles en BF
Pour avoir les pôles désirés en
BF, il faut que )()( sPsP BFBKA =−
1644)42( 2
12
2 ++=+++ ssksks
=
=+
164
442
1
2
k
k 21et4 21 == kk
[ ]214=K
Matrice de gains
§ Généralisation
Dans le cas général de n états, cette
approché directe consiste à résoudre
un système de n équations à n
inconnues ki
)det()( BKAsIsP BKA +−=−
[ ]nkkkK L21= n éléments
Identification
23. 23Automatique
Commande des systèmes par placement de pôles
q Cas des systèmes mono-entrée, mono-sortie commandables
Si le système est commandable, on
peut le mettre sous la forme
canonique de commandabilité
=
+=
)()(
)()(
tCXtY
tButAXX&
=
+=
)()(
)()(
tXCtY
tuBtAXX
c
ccc
&
ccc ATTA 1−
=
BTB cc
1−
=
cc CTC =
avec
Tc matrice de passage d'une représentation quelconque
commandable à sa forme canonique de commandabilité
XTX cc
1−
=
−−−−
=
−− 1210
100
0
00100
0010
nn
c
aaaa
A
LL
OOM
MOOM
L
LL
[ ]0010 LL mc bbbC =
[ ]T
cB 1000 L=
§ Commande dans l'espace d'état défini par les nouvelles variables Xc
)()()( tKXtrtu −= )()()( tXKTtrtu cc−= )()()( tXKtrtu cc−=
cc KTK =
24. 24Automatique
Commande des systèmes par placement de pôles
q Cas des systèmes mono-entrée, mono-sortie commandables
§ Modèle d'état en BF dans l'espace d'état défini par les nouvelles variables Xc
( )
=
+−=
)()(
)()(
tXCtY
trBtXKBAX
c
cccccc
&
[ ]ncccc kkkK L21=avec
[ ]
=
=
nccc
nccccc
kkk
kkkKB
L
L
MMM
L
L
M
21
21 000
000
1
0
0
−−−−−−−−
=−
−−− ncncnncc
ccc
kakakaka
KBA
1,122110
100
0
00100
0010
LL
OOM
MOOM
L
LL
−−−−
=
−− 1210
100
0
00100
0010
nn
c
aaaa
A
LL
OOM
MOOM
L
LL
§ Polynôme caractéristique de la matrice d'état en BF Ac−BcKc
))(det()( cccKBA KBAsIsP ccc
−−=−
)()()()( 1021
1
1 cc
n
ncn
n
KBA kaskaskassP ccc
+++++++= −
−− L
25. 25Automatique
Commande des systèmes par placement de pôles
§ Placement des pôles
01
1
1
1
, )()( βββλ ++++=−= −
−
=
∏ sssssP n
n
n
n
i
BFiBF L
)()()()( 1021
1
1 cc
n
ncn
n
KBA kaskaskassP ccc
+++++++= −
−− L
)()( sPsP BFKBA ccc
=−
Equation caractéristique
(pôles désirés)
=+
=+
=+ −−
010
121
11
β
β
β
c
c
nncn
ka
ka
ka
M
−=
−=
−= −−
001
112
11
ak
ak
ak
c
c
nnnc
β
β
β
M
Gains kci
On calcule ainsi la matrice Kc qui est la matrice de retour dans
l'espace d'état défini par Xc
On en déduit la matrice K, matrice de retour dans
l'espace d'état initial (défini par X) par :
cc KTK = cc KTK 1−=
26. 26Automatique
Commande des systèmes par placement de pôles
q Cas des systèmes mono-entrée, mono-sortie commandables
u Procédure pratique de la mise en œuvre
1. Vérifier la commandabilité de la paire (A, B)
2. Déterminer l'équation caractéristique du système en BO
On en déduit les coefficients ai
3. Choisir les pôles correspondants au comportement désiré en BF
4. Calculer le polynôme caractéristique en BF à partir de ces pôles
5. Déterminer les gains ki,c tels que
6. En déduire la matrice de gain
01
1
1)det()( asasasAsIsP n
n
n
A ++++=−= −
− L
01
1
1
1
, )()( βββλ ++++=−= −
−
=
∏ sssssP n
n
n
n
i
BFiBF L
niak iici ,,111, L=−= −−β
cc KTK 1−=
Les colonnes de la matrice de changement de base Tc sont calculées
par l'algorithme suivant
=
+=
)()(
)()(
tCXtY
tButAXX&
27. 27Automatique
Commande des systèmes par placement de pôles
q Cas des systèmes mono-entrée, mono-sortie commandables
u Algorithme de calcul des colonnes de Tc
[ ]cnccc TTTT ,,2,1 L= avec cncc TTT ,,2,1 ,,, L les colonnes de Tc
Les colonnes vérifient les relations suivantes :
BIaAaAT
BIaAaAT
BIaAT
BT
n
n
n
c
nncn
ncn
cn
)(
)(
)(
1
2
1
1
,1
21
2
,2
1,1
,
+++=
++=
+=
=
−
−
−
−−−
−−
L
M
Toute cette procédure est lourde à mettre en œuvre. On lui préfère
la forme compacte de la formule d'Ackerman
28. 28Automatique
Commande des systèmes par placement de pôles
q Cas des systèmes mono-entrée, mono-sortie commandables
u Formule d'Ackerman
u Application de la formule d'Ackerman
Elle donne directement l'expression de la matrice de retour
( ) )(),(]100[ 1
APBAK BF
−
= CL
avec IAAAAP n
n
n
BF 01
1
1)( βββ ++++= −
− L
Solution unique
1. Vérifier la commandabilité de la paire (A, B)
2. Choisir les pôles correspondants au comportement désiré en BF
3. Calculer le polynôme caractéristique en BF à partir de ces pôles
4. En déduire PBF(A). Appliquer la formule d'Ackerman
01
1
1
1
, )()( βββλ ++++=−= −
−
=
∏ sssssP n
n
n
n
i
BFiBF L
29. 29Automatique
Commande des systèmes par placement de pôles
q Cas des systèmes multivariables commandables
nmK ×∈R
( )
=
+−=
)()(
)()(
tCXtY
tBrtXBKAX&
avec
La matrice de retour K contient m×n gains qu'il faut déterminer
§Le placement des n pôles fournit n contraintes. Il reste à
déterminer m(n-1) contraintes.
§Ces degrés de liberté servent alors à réaliser un placement de
pôles robuste, à rejeter les perturbations ou à calculer la matrice
de gain qui conduit à une consommation d'énergie minimale
§ Des méthodes numériques existent pour placer les pôles en BF
30. 30Automatique
Commande des systèmes par placement de pôles
q Exemple numérique
=
+
−−
=
)(]01[)(
)(
4
1
)(
21
41
tXtY
tutXX&
§ Pôles désirés en BF :
322,1 jBF −−=λ 322,2 jBF +−=λet
[ ]21 kkK =Trouver
--> A=[1 4;-1 -2];
--->B=[1;4];
-->// Vérification de la commandabilité
-3->Ctr = cont_mat(A,B);
-->rang = rank(Ctr)
rang =
2.
-->// Pôles désirés en BF
-->poles = [-2 - %i*2*sqrt(3); -2 + %i*2*sqrt(3)];
-->// Placement des pôles par K
-->K = ppol(A, B, poles)
K =
! .92 .52 !
Programmation sous Scilab