Академический Документы
Профессиональный Документы
Культура Документы
Technologies de Lille
UFR dI.E.E.A.
MASTER ASE.
Automatique
S7 Module: Representation d Etat
G
K
Notes de Cours
Motivations: Syst`
emes SISO et MIMO
1.1
i(t)
L
f
u(t)
q(t)
E(t)
Couplage
E(t) = ke d/dt
+ f (t)
(t) = J (t)
(t) = kc i(t)
Par application de la transformees de Laplace (avec C.I.=0) de simples manipulations conduisent a` la relation:
(p) =
kc
U (p)
p[(R + Lp)(Jp + f ) + ke kc ]
(p) =
K
U (p) := G(p) U (p)
p(1 + a1 p + a2 p2 )
2
1.2
debit vapeur
debit fuel
debit eau
Generateur
pression
de vapeur
temperature
Repr
esentation d
etat
2.1
Concept d
etat: D
enition
x = f (x, u, t)
dite
equation d
etat
y = h(x, u, t)
dite
equation de sortie
o`
u f = (f1 , ..., fn )t , et h = (h1 , ..., hm )t . Dans cette representation, x(t) Rn
est appele vecteur d
etat, u(t) Rr est appele vecteur de commande,
et y(t) Rm est appele vecteur de sorties.
Dans certaines situations o`
u letat, les commandes ou les sorties sont soumis
`a des contraintes (par ex: saturation des actionneurs), il convient detre
plus precis sur les ensembles dans lesquels evoluent ces vecteurs. On note
alors
etat
x(t) X Rn avec (x,X ) = vecteur et espace d
u(t) U Rr avec (u,U) = vecteur et espace de commande
y(t) Y Rm avec (y,Y) = vecteur et espace de sortie
2.2
Le cas lin
eaire
= A x(t) + B u(t)
y(t) = C x(t) + D u(t)
dans laquelle A est une matrice carree de taille n n, B est de taille n r,
C est de taille
criture, on
m n, et D est de taille m n. Pour alleger le
note parfois (A, B, C, D) un syst`eme lineaire stationnaire note
et decrit
par les matrices (A, B, C, D).
Note: Dans le cas lineaire mais non invariant dans le temps, on obtient la
representation matricielle precedente avec des matrices qui dependent du
temps, soit A(t), B(t), C(t) et D(t).
2.3
Exemple du moteur `
a courant continu
0
1
0
0
kc
f
x = f (x, u) =
x+ 0
0 J
J
1
ke R
0
L
L
L
6
u = Ax + B u
y = h(x, u) =
x + (0) u = C x + D u
1 0 0
etat
Le vecteur x = (, , i)t est donc bien acceptable en tant que vecteur d
Noter que ce vecteur poss`ede 3 composantes, ce qui correspond aussi a`
lordre de la fonction de transfert G(p).
2.4
Exemple du g
en
erateur de vapeur
Une etude du comportement du generateur a permit de modeliser le comportement du processus sous forme de fonctions de transfert interconnectees
comme indique sur le schema suivant. On se propose de fournir un represenation
detat du syst`eme. Les FT mises en jeu etant du premier ordre, associons
une variable detat xi `a la sortie de chaque bloc (peu importe lordre), et
notons temporairement ri les entrees correspondantes.
u1
debit
vapeur
c1
u2
debit
fuel
r1
b1
p + a1
x1
c3
u3
debit
eau
r3
y1
pression
c2
r2
c4
c5
b2
p + a2
x2
c6
y2
temperature
r4
b3
x3
p + a3
b4
p + a4
x4
= a1 x1 + b1 r1
= a2 x2 + b2 r2
= a3 x3 + b3 r3
= a4 x4 + b4 r4
r1
r2
r3
r4
= u2
= x 1 + c 1 u1 + c 3 u3
= u3
= x 3 + c 4 x 1 + c 5 u1 + c 6 x 2
a1
b2
x = f (x, u) =
b4 c 4
a2
a3
b4 c 6
b4
0 b1 0
b c 0 b2 c 3
0
x+ 2 1
0
0
0 b3
a4
b4 c 5 0
0
0
y = h(x, u) =
0 1 0 0
x+
0 0 0 1
c2 0 0
0 0 0
= A x(t)+
B u(t), et y(t) = C x(t) + D u(t).
REMARQUE:
Dans la representation x = A x + B u, et y = C x + D u, u(t) represente
generalement le vecteur de commande, cest `a dire que nous pouvons agir
sur ses dierentes composantes u1 , ..., ur .
Or, dans le cas du generateur de vapeur, si nous maitrisons eectivement les
entrees debit de fuel u2 et debit deau u3 , la composante debit vapeur
olable (demande du reseau electrique aleatoire).
u1 est une grandeur incontr
Pour etre plus precis dans la representation detat precedente, il convient de
separer les commandes u2 , u3 de cette grandeur u1 qui represente la consigne.
En notant par exemple u = (u2 , u3 )t et w = u1 , on peut reecrire lequation
detat precedente dun mani`ere plus precise en separant les commandes de la
consigne sous la forme:
x = Ax + B1 u + B2 w
y = Cx + D2 w
expression dans lesquelles B1 et B2 sont des matrices formees des colonnes
(2,3) et (1) de la matrice B, et D2 est formee de la colonne (1) de D.
8
2.5
Syst`
emes non lin
eaires, Lin
earisation
w = u ue ,
z = y ye
A=
C=
2.5.1
fi
xj
hi
xj
B=
|e
D=
|e
fi
uj
hi
uj
|e
|e
Exemple: pendule
Cet exemple simple est celui dune masse m mise en mouvement au moyen
dun couple u(t) comme indique sur la gure suivante. On neglige en premi`ere
approximation la masse de la tige ainsi que les frottements de larticulation.
La position de la masse est reperee par langle que fait la tige avec la
verticale.
u(t)
(t)
f1 f1
x2
1
x x
f2 f x +
x1 x2 |e
h h
x
y
x1 x2 |e
f1
u
f2 u
u
|e
0 1
0
x +
u
x
g 0
1/m
y 1 0 x
10
2.6
Repr
esentation graphique
= A x(t) + B u(t)
et
A
De meme, `a chaque equation x i = (...) correspond un integrateur (simple),
ce qui permet de traduire les equations detat sous forme de schema de simulation. Ainsi par exemple, les equations du moteur a` courant continu
=
kc i f
=
J
u
R i ke
i =
L
se traduisent par le schema
R/L
u
f /J
1/L
-
kc /J
ke /L
Reciproquement, partant dun shema de simulation, une representation detat
est possible en associant une variable detat a` la sortie de chaque integrateur.
11
Changement de base
3.1
Cas g
en
eral
x(t)
= Ax(t) + Bu(t)
,
x(t) = T 1 (t)
= A (t) + B
u(t)
(t)
y(t) = C (t) + D
u(t)
= TB
A = T AT 1 B
avec
C = CT 1
=D
D
ment, deux syst`emes
1 (A, B, C, D) et
2 (A, B, C, D) dont les matrices
verient les egalites precedentes sont dits isomorphes. Un changement de
base peut mettre en evidence des proprietes structurelles du syst`eme.
3.2
3.2.1
Forme de Jordan
Polyn
ome carat
eristique et valeurs propres
J1
J
2
...
avec Ji =
P 1 AP = J =
..
i
Jp
13
o`
u i est une valeur propre de A. Pour chaque valeur propre i , le nombre
de blocs de Jordan associe est fourni par la degenerescence qi .La matrice P
de changement de base est fournie par les chanes de Jordan associees aux
dierentes valeurs propres.
3.2.4
Exemple:
P =(
v1
m3 =3 vecteurs pour 3
m2 =1
v2
(1)
(2) (2)
v3,1 , v3,1 , v3,2 )
1
J = P AP =
2
3
3
Dans le cas o`
u toutes les valeurs propres de A sont simples, la forme de
Jordan se reduit a` une matrice diagonale.
3.3
Exemple
14
2
p
1
x3
p1
x1
u
1
p + 1 x2
2
p + 2 x4
0 0 0 0
2
0 1 0 0
1
x +
u
x =
1 1 1 0
0
2 2 0 2
0
y=
0 0 1 1
1
2 0 1
0 1 0
0
1 0 0 0
0
0 0 1/2
1
P =
P =
1 1/2 1 0
0
1 1 1/4
0
2 0 0
1 1 0
1
Considerons alors le nouveau vecteur detat denit par (t) = T x(t) avec
T = P 1 . Lapplication du changement de base conduit a` la nouvelle
representation detat dans laquelle A = T AT 1 = P 1 AP est une matrice
de Jordan
2
0
2
0
+
u
=
y
=
1 0 1 3/4
3/2
1
1
2
et au schema fonctionnel
15
1 1
p+2
2
p
u
2
-
3/2 3
p1
2 4
p+1
+
+
3/4
16
4.1
x(t)
= Ax(t) + Bu(t)
y(t) = C x(t) + D u(t)
avec
Exemple
0
1
0
0
= 0
x(t)
0
1 x(t) + 0 u(t),
6 3 1
1
La matrice (pIn A) et son
p 1
0
(pIn A) = 0 p
1
6 3 p+1
y(t) =
1 2 0
x(t)
0 3 1
determinant secrivent
det(pIn A) = PA (p) = p3 + p2 + 3p + 6.
17
p2 + p + 3 p + 1
1
2
(pIn A)1 = 3
6
p +p p
p + p2 + 3p + 6
2
6p
3p 6 p
Finalement
H(p) =
1 2 0
1
3
2
p + p + 3p + 6
0 3 1
p2 + p + 3
6
6p
p+1
p + p p 0
3p 6 p2
1
2
2p + 1
p3 + p2 + 3p + 6
H(p) =
p2 + 3p
p3 + p2 + 3p + 6
Remarque: Il existe des logiciels permettant deectuer ces calculs simplement, rapidement et sans erreur.
4.1.2
= A (t) + B
u(t)
(t)
y(t) = C (t) + D
u(t)
= TB
A = T AT 1 B
avec
C = CT 1
=D
D
1 B
+D
= CT 1 (pT T 1 T AT 1 )1 T B + D
H(p)
= C (pI A)
1
T B + D = C (pI A)1 B + D
= CT 1 T (pI A)T 1
= H(p)
18
Dans lexemple precedent, H(p) est une matrice de fonctions de transfert dont
lordre le plus eleve est 3, ce qui correspond aussi a` lordre de la representation
detat. Ce nest pas toujours le cas comme on le montre le cas de gure
suivant; Calculons le transfert de lexemple du paragraphe 3.3 precedent.
Celui-ci est plus facile `a calculer a` partir de la forme diagonale et fournit:
3
H(p) =
(p 1)(p + 1)
On observe ici que la fonction de transfert H(p) est dordre 2 alors que la
representation detat est dordre 4. Si on cherche a` retrouver ce transfert directement `a partir du premier schema fonctionnel, on obtient avec les calculs
intermediaires quil y a eu simplication de poles par des zeros pour aboutir
`a une fonction de transfert H(p) dordre2. Comme on le verra par la suite,
ce genre de situation a lieu pour des syst`emes non commandables et/ou non
observables.
4.2
Repr
esentations d
etat dune fonction de transfert
bn pn + bn1 pn1 + + b1 p + b0
N um(p)
Y (p)
=
=
n
n1
p + an1 p
+ + a 1 p + a0
Den(p)
U (p)
Forme commandable
On denit alors les variables detat (x1 , x2 , , xn ) = v, v (1) , , v (n1)
do`
u on deduit les relations
x = x , x = x , , x
et
1
2
2
3
n1 = xn
x = a x a x a
x +u
n
n1
Pour lequation de sortie, nous avons la relation Y (p) = N um(p) V (p) qui se
traduit
y = b0 v + b1 v (1) + + bn v (n) = b0 v + + bn [a0 x1 an1 xn + u]
= (b0 a0 bn ) x1 + (b1 a1 bn ) x2 + + (bn1 an1 bn ) xn + bn u
Sous forme matricielle, il vient ainsi la representation detat dite commandable
0
..
.
0
..
.
...
x +
0
..
.
..
.
1
a0 a1 an1
A
B
y
=
x
+
b0 a0 bn , b1 a1 bn , bn1 an1 bn
bn u
4.2.2
Forme observable
0 0
0
1 0
=
0 1 0
...
a0
x
+
a1
..
.
..
.
b 0 a0 b n
b 1 a1 b n
..
.
bn1 an1 bn
0
1 an1
B
A
y = 0 0 1 x + bn u
Forme de Jordan
Lorsque le transfert H(p) nadmet que des poles simples (i.e.poles distincts),
une decomposition en elements simples permet de reecrire H(p) sous la forme
suivante a` laquelle correspond le schema de realisation:
n
i
H(p) =
p i
i=1
1
p n
..
.
1
p 2
1
p 1
21
2
1
Il sut alors de prendre pour variable detat la sortie de chaque bloc dordre
1 pour obtenir la representation
1
1
...
y = 1 n x
x =
x + .. u
C
n
1
A
...
r
H(p) = H(p)
+
(p )i
i=1
u
1
p
r1
1
p
1
0
.
..
=
+ u
y
=
r 1
...
0
1
C
1
A
+
p (a + jb) p (a jb)
22
1 j
1 1
T 1 = 1/2
T =
1 j
j j
On obtient en eet lequivalence suivante:
a
+
jb
1
x + u
a jb
1
y=
x
23
a
b
2
=
+ u
b a
0
y = Re Im x
5.1
R
esolution de l
equation d
etat
Forme g
en
erale
Pour un syst`eme lineaire (pas forcement invariant dans le temps) decrit par:
x(t)
= A x(t) + B u(t)
la matrice fondamentale a pour expression
(t, t0 ) = (t t0 ) = eA(tt0 ) .
et la solution de lequation detat prend la forme
x(t) = e
A(tt0 )
eA(t ) B u( ) d
x(t0 ) +
t0
24
Calcul de eAt
5.2
5.2.1
A = T 1 AT
eAt = T 1 eAt T
alors
J
eJ 1 t
1
J2
eJ2 t
At
A=
alors e =
...
...
Jp
eJp t
enn pour chaque bloc Ji de taille (ni ni )
Ji =
1
...
Ji t
i t
=e
1 t
t2
2
tni 1
(ni 1)!
...
...
t2
2
1
Noter que dans le cas o`
u toutes les valeurs propres de A sont simples, A est di
agonale, A = diag(1 , 2 , , n ) et par suite eAt = diag(e1 t , e2 t , , en t ).
5.2.2
Utilisation du th
eor`
eme de Cayley Hamilton
n1
j (t) Aj
j=0
25
n1
1 t
e
1 1 1
0 (t)
2 t
e 1 2
2n1 1 (t)
=
.. ..
. .
n1 (t)
ep t
1 p pn1
Si toutes les valeurs propres de A sont simples, on obtient un syst`eme de n
equations a` n inconnues permettant le calcul des j (t) Si une valeur propre
i est multiple dordre ni , on utilise en plus des relations precedentes
k
k
n1
d t
d
j
e
=
j (t)
( )
k = 1, ..., ni
dk
dk
=i
=i
j=0
pour aboutir a` un syst`eme de n equations a` n inconnues.
5.2.3
Par Transform
ee de Laplace inverse
Sachant que la solution de cette equation secrit x(t) = eAt x(0) on en deduit
que par transformee inverse
eAt = L1 (pI A)1
5.3
Exemple
2 2
A=
1 5
(1) Par la forme de Jordan on obtient les resultats suivants: Le polynome
caracteristique secrit
2 2
= 2 7+12 = (3)(4)
PA () = det(I A) = det
1
5
26
Les valeurs propres etant distinctes, on sait que la forme de Jordan associee
J = P 1 AP sera diagonale. il reste a` calculer le changement de base P .
u v1 , v2 sont les vecteurs propres associes `a 3 et
Celui ci secrit P = (v1 , v2 ) o`
4, et sobtiennent en resolvant:
1
2
2
ex
v1 = 0 par
v
=
(3I
A)v
1
1
1 2
1
2 1
P =
1
1
2
2
1
ex
v2 = 0 par
v2 =
(4I A)v2 =
1 1
1
Ainsi, eAt = P eJt P 1 soit
3t
3t
4t
3t
4t
0
1 1
2e e 2e + 2e
2 1
e
eAt =
e3t e4t e3t + 2e4t
0 e4t
1 2
1 1
(2) Par lapproche de Cayley-Hamilton, A etant dordre n = 2, eAt est une
somme de deux termes (de 0 a` 1) de la forme
eAt = 0 (t)I + 1 (t)A
Cette relation est aussi valable pour les valeurs propres, ce qui fournit par
inversion
e3t
0 (t)
4 3
e3t
1 3
0 (t)
4t
4t
e
1 1
e
1 (t)
1 (t)
1 4
Ainsi, eAt = (4e3t 3e4t )I + (e3t + e4t )A et on retrouve lexpression
precedente. (3) Par transformee de Laplace, le calcul de linverse (pI A)1
suivi dune decomposition en elements simples fournit
2
2
p
5
2
1
=
(pI A)1 =
(p
3)(p
4)
1
p5
1 p 2
2
1
2
2
+
p3 p4 p3 p4
= 1
1
1
2
+
p3 p4 p3 p4
On retrouve lexpression recherchee par transformee de Laplace inverse appliquee `a chacun des termes.
27
Stabilit
e
= Ax(t) + Bu(t)
D
enition 2 (Stabilit
e interne) On dira quun syst`eme est stable (au sens
interne) si pour toute condition initiale x0 = 0, la reponse libre x(t) du
syst`eme tend vers 0 pour t .
En dautres termes, limt eAt x0 = 0, x0 , ce qui revient a` exiger que
limt eAt = 0. En ecrivant A sous sa forme de Jordan notee ici J, cela
revient aussi `a limt eJt = 0. Enn en notant que tous les elements non
nuls de eJt sont de la forme (t)et avec valeur propre de A et (t) polynome
en t, on aboutit a`
lim eAt x0 = 0,
28
6.1
Exemple 1
0
1
0
2p + 1
A= 0
0
1
p3 + p2 + 3p + 6
H(p) =
6 3 1
p2 + 3p
p3 + p2 + 3p + 6
PA (p) = det(pIn A) = p3 + p2 + 3p + 6.
En observant que polynome caracteristique de A et denominateurs de H(p)
sont identiques, les stabilites BIBO et interne sont, dans cet exemple, equivalentes.
6.2
Exemple 2
Soit le syst`eme (A, B, C, D) decrit sous forme de Jordan et auquel correspond le schema fonctionnel ci apr`es.
a
0
+
u
=
y= 1 1
1
2
1
p+a
2
p+1
y
+
7.1
Commandabilit
e, Observabilit
e
Commandabilit
e
= A x(t) + B u(t)
y(t) = C x(t)
cette question se pose en ces terme: est il possible de generer une commande
qui permette de faire passer le syst`eme dun
etat quelconque x(t0 ) a` un autre
Supposons que lon arrive a` etablir quil existe un vecteur v constant tel que
v T x(t) = 0
t 0.
Espace detat
X = R2
x1
30
7.1.1
Syst`
emes `
a matrice A diagonalisable
Crit`
ere de commandabilit
e de Kalman
eA BB T eA d
Wc (T ) =
0
31
v x(t) = v
eA(t ) B u( ) d = 0
0
7.1.3
D
ecomposition selon la commandabilit
e
1
avec dim(1 ) = n1
= Tx =
2
conduisant au syst`eme isomorphe (A,
B, C) avec
1
11 A12
B
A
= TB =
, B
A = T AT 1 =
0 A22
0
1 ) est commandable. La matrice C = (C1 , C2 ) ne
et o`
u la paire (A11 , B
2 se
poss`ede pas de structure particuli`ere. La nullite des blocs A21 et B
traduit par la decomposition illustree sur le schema suivant.
u
1 u
1 = A11 1 + A12 2 + B
C1
y
+
2 = A22 2
C2
Celle ci montre bien que lentree u(t) nexerce aucune action sur le sous
syst`eme detat 2 . Celui ci porte le nom de partie non commandable du
syst`eme.
On observera que dans cette base la matrice de commandabilite prend la
forme suivante mettant en evidence laspect non commandable du syst`eme
n1
B , A B , , A11 B1
1 11 1
CA,
B
=
33
A12
B
pI A11
1
1 = C1 (pI A11 )1 B
H(p) = (C1 , C2 )
0
pI A22
0
En dautre
termes le transfert H(p) ne depend que du sous syst`eme (com1 , C1 ). La matrice A11 etant de taille n1 < n, H(p)
mandable) c (A11 , B
sera necessairement dordre strictement inferieur a` n.
Exemple Considerons le syst`eme (A, B, C) decrit par
2 1 0
1
A = 0 1 1 , B = 1 , C = 1 0 0
0
0 0
1
Avec n = 3, la matrice de commandabilite CA,B
secrit
1 2
0
0
Elle est manifestement de rang 2 < 3 et le syst`eme nest donc pas commandable. Pour obtenir une decomposition selon la commandabilite, on peut par
exemple completer les deux premi`ere colonnes independantes de CA,B pour
obtenir par exemple
1 1 0
0 1/2 1/2
T 1 = 1 0 1 T = 1 1/2 1/2
1 0
1
0 1/2 1/2
B,
C)
dans lequel
Le syst`eme peut etre alors decrit par le nouveau triplet (A,
2 sont nuls,
les blocs A21 et B
34
1 2 2
A = T AT =
0 0 1
7.2
0
B=
0
C =
1 1 0
Observabilit
e
Lorsque letat x(t) du processus nest pas accessible, les techniques de commande ne sont plus directement applicables, et il faut faire appel a` un etat
reconstruit x(t). Cette operation nest possible que si le processus poss`ede la
propriete dobservabilite denie ci dessous.
D
enition 6 Un syst`eme est dit a` etat enti`erement observable si, par observation des entrees et sorties du syst`eme sur un intervalle de temps ni,
on peut determiner letat initial du processus.
Pour le syst`eme (A, B, C), on denit la matrice dobservabilite du processus,
de taille (nm n), par
OA,C
CA
..
.
CAn1
Th
eor`
eme 7 Le syst`eme (A, B, C) est observable si et seulement si la matrice dobservabilite OA,C est de rang plein.
Proof. (elements) il sagit de demontrer que sur [0, T ], la connaissance
de u(t) et de y(t) permet de remonter a` x(0). Rappelons tout dabord que
t
At
eA(t ) Bu( )d
y(t) = Ce x(0) +
0
T
une multiplication a` gauche par eA t C T et une integration sur [0, T ] conduisent a` une relation de la forme
PO (T )x(0) = W (y(), u(), 0 t)
35
o`
u PO (T ) est le grammien dobservabilite n n deni par
eA t C T CeAt dt
PO (T ) =
0
1
11 0
B
A
1
1
,B = TB =
, C = CT = C1 0
A = T AT =
2
A12 A22
B
u
1 u
1 = A11 1 + B
C1
2 u
2 = A21 1 + A22 2 + B
De cette decomposition, illustree ici, il est clair que letat 2 nest pas observable. La propriete dobservabilite ne depend que des matrices A et C. Noter
T
est identique a` la matrice de
que la matrice dobservabilite transposee OA,C
commandabilite CAT ,C T associee au syst`eme ctif suivant dentree v et sortie
(dit aussi syst`eme dual).
x = Ax + Bu
z = AT z + C T v
.
:
,
:
y = Cx
= BT z
36
8.1
Principe
x = Ax + Bu
,
x Rn ,
y = Cx
u Rr ,
y Rm ,
u
f
x
k
La combinaison des deux relations precedentes conduit `a:
x = (A Bk) x + Bf v
y = Cx
Th
eor`
eme 8 Les valeurs propres de A Bk peuvent etre xees arbitrairement si et seulement si la paire (A, B) est commandable (c`ad rang CA,B = n)
Lhypoth`ese de commandabilite de la paire (A, B) assure donc que lon peut
xer arbitrairement le polynome caracteristique de la matrice (A Bk), et
donc placer arbitrairement les poles de la matrice de transfert du syst`eme
corrige.
37
8.2
8.2.1
Placement de p
oles pour des syst`
emes monoentr
ee.
Syst`
emes d
ecrits sous forme commandable
0
1
0
0
0
0
1
0
..
..
...
x = .
.
0
1
a0 a1 an1
A
0
..
.
..
.
x + u
1
B
0
1
0
0
0
0
1
0
.
.
...
..
..
A = A Bk =
.
0
1
k1 a0 k2 a1 kn an1
Si on se xe a priori les poles du syst`eme corrige (coecients i ), il vient
PA () = (a0 + k1 ) + (a1 + k2 ) + . . . + (an1 + kn )n1 + n
= 0 + 1 + . . . + n1 n1 + n
soit par identication 0 = a0 + k1 , ..., n1 = a1 + kn , do`
u
k = [k1 , , kn ] = [(0 a0 ), , (n1 an1 )]
8.2.2
Syst`
emes sous forme quelconque
Il sut de connatre le changement de base P qui conduit a` la forme commandable de matrice (Ac , Bc , Cc )
x = Ax + Bu
z = A z + B u
c
c
z = Px
y = Cx
y=C z
c
38
2 1
1
B=
, C = ( 1 2 )
A=
2 3
1
8.2.3
Formule dAckermann
Lutilisation du theor`eme de Cayley Hamiltion permet de determiner directement la matrice k par la formule
k=
0 1
1
CA,B
P (A)
o`
u CA,B est la matrice de commandabilite du syst`eme (ici carree) et P (A)
le polynome caracteristique souhaite applique `a la matrice A.
8.3
Placement de p
oles et syst`
emes `
a plusieurs entr
ees.
M
ethode de Young et Willems
o`
u f et g sont des vecteurs `a r et n composantes. Si il existe un vecteur f
tel que la paire (A, Bf ) soit commandable, cest a` dire tel quel la matrice de
commandabilite carree suivante soit inversible,
Cf = (Bf, ABf, ..., An1 Bf ),
alors g sobtient par
g = (CfT )1 X 1
an1 1
X=
..
... ...
.
a1 an1 1
dn1 an1
dn2 an2
=
..
d0 a0
0 1 0
1 0
A = 0 0 1 ,B = 0 0
4 4 1
0 1
8.3.2
M
ethode de Brogan
Cette methode est basee sur lutilisation dun lemme (de Plotkin) det(I
AB) = det(I BA). Elle se presente comme suit: On denit:
() = (I A)1
() = ()B = [1 , 2 , . . . , r ]
Ir = Identit
e = [e1 , e2 , . . . , er ]
(n n)
(n r)
(r r)
On souhaite imposer les poles 1 , , n , supposes ici distincts (pour simplier). Alors on peut toujours trouver n colonnes independantes j1 , j2 , , jn ,
et le retour detat sexprime par
k = [ej1 , ej2 , . . . , ejn ] [j1 (1 ), j2 (2 ), , jn (n )]1
40
8.4
Technique du d
ecouplage
x = (A Bk) x + Bf u
,
H(p) = C (pI A + Bk)1 Bf,
y = Cx
La demarche peut etre la suivante. On note ci la i `eme ligne de C, et on
denit m entiers d1 , , dm par
ou
d = n 1 si c Aj B = 0 j
i
i
Le syst`eme peut alors etre decouple si et seulement si la matrice m m
suivante est inversible
c1 Ad1 B
..
N =
dm
cm A B
Dans ce cas, le retour detat
f = N 1
c1 Ad1 +1
..
et k = N 1
cm Adm +1
fournit une matrice de transfert dont tout les poles sont a` lorigine.
41
9.1
Commande par
etat reconstruit
Observateur
Observ.
x
On associe pour cela au processus denit le syst`eme dynamique (observateur) regi par lequation dierentielle suivante o`
u L represente le gain de
lobservateur,
x = A x + B u + L (y C x),
avec x(0) = x0 . En notant (t) = x(t) x(t), il vient aisement
(t)
= (A LC) (t),
avec (0) = x0 x0 . Par suite, lorsque (0) = 0, (t) 0 si et seulement
t
42
0 2
0
, B = , C = 1 0
A=
0 3
1
9.2
I I
x
Regulateur
v
u
f
Observ.
k
A Bk
z =
Bk
A LC
z+
Bf
qui montre que les poles du syst`eme et ceux de lobservateur peuvent etre
xes separement. Cette remarque est connue sous le nom de principe de
separation.
43
9.3
Observateurs dordre r
eduits
C2
1
C
= 1
x
=
2
Inm
Ce dernier conduit `a la representation suivante o`
u il apparat que la partie
1 (m 1) du nouveau vecteur detat est directement accessible par y et donc
seule reste `a reconstruire 2 .
x = Ax + Bu
= A + B
u
.
,
y = Cx
y=
1
y
u
z = M z + N u + P y
x = F z + Gy
Soit L la matrice (n m) m qui place les poles de la paire A22 , A12 dans
lequation (A22 LA12 ). Les dierents coecients de cet observateur sont
alors donnes par:
44
C11 C2
C11 (I C2 L)
G=
F =
L
Inm
2 LB
1
M = A22 LA12 , N = B
45
10
10.1
1
Den(p)
N um(p)
Den(p) y = d + N um(p) u,
Le choix des variables detats comme indique ici permet detablir une equation detat mettant en jeu la perturbation au travers du terme Dd
x = Ax + Bu + Dd
y = Cx
46
1
A=
...
a0
..
.
..
.
1 an1
b
,B = 1
bn1
0
1
..
0
, D = , CT =
..
0
1
0
Reconstructeur d
etat et de perturbation
= + u
a
y = H
A D
0
, =
B
0
,H =
C 0
Lobservabilite de la paire (, H) (`a faire en exercice) permet alors la reconstruction de letat augmente selon la gure et lequation suivante, dans
laquelle dans lequel L est un gain de dimension (n + 1), L = [l1 , ...ln+1 ]T .
Observ.:
= + u + L (y H ),
47
d
Observ.
=
d
10.1.2
Regulateur
u
Observ.
[k, g]
x
d
f =
Noter que par lapplication du theor`eme de la valeur nale, leet de la perturbation est annule `a linni, avec decroissance plus ou moins rapide reglee
par la commande. On parle alors de rejet asymptotique de la perturbation.
10.1.3
Placement de p
oles robuste pour la commande et lobservation
Hormis les contraintes de stabilite, le choix des (n) poles pour la commande
(coecients du gain k), et des (n + 1) poles de lobservateur (coecients du
gain L) est a` priori libre. Pour assurer un comportement robuste, on peut
adopter la strategie suivante:
Pour la commande, on se donne un horizon de commande Tc et accessoirement un amortissement xe. Les poles de la boucle ouverte, cest
`a dire les poles de A, sont modies comme suit:
un pole instable est remplace par son symetrique (1)
un pole peu amorti est ramene `a lamortissement specie (2,3)
un pole trop lent (`a droite de 1/Tc ) est ramene sur cette verticale
(2,4)
les autres poles demeurent inchanges (5).
Pour lobservateur, on adopte la meme strategie avec un horizon de
ltrage Tf . Les (n + 1) poles a` placer sont ceux de la matrice F du
paragraphe 3.2 qui ne sont autres que ceux de A augmentes de {0}.
49
Im
(3)
(2)
1/Tc
(1)
(4)
(5)
Re
poles initiaux
poles naux
Exemple
1
a0 + p
b0
y=x
x = a x + b u + d
0
0
y=x
Dans cet exemple, letat x est accessible par la mesure y et seul reste `a
Etant donne un horizon dobservation Tf ,
reconstruire la perturbation d.
on determine alors un observateur dordre reduit (1) qui deplace le pole {0}
50
G = (1, 1/Tf )T
-k
-g
t0
1
1 + Tf p
t2
t1
51
0.8
0.2
Consigne et reponses
pour Tc2 < Tc1
0.7
0.6
-0.2
0.5
-0.4
0.4
-0.6
0.3
-0.8
Tc1
0.2
-1
0.1
Perturbations
appliquee et
reconstruite
-1.2
10
12
14
16
18
20
-1.4
10
12
14
16
18
20
Commandes pour
Tc2 < Tc1
3.5
2.5
Tc2
1.5
0.5
10
12
14
16
18
20
R(p)
T (p)
y+
v
S(p)
S(p)
que lon explicitera. On utilisera les valeurs numeriques correspondant aux choix Tc1 = /2.
10.2
d
v
T (p)
(p)
B(p)
A (p)
R(p)
BT
S
v+
d = Wv v + Wd d
AS + BR
AS + BR
Ces transferts devant etre stables, pour assurer le rejet de perturbation (constante ou constante par morceaux) et le suivi de consigne en regime permanent, lapplication du theor`eme de la valeur nale (pour p 0) conduit aux
relations
W (0) = 0 S(0) = 0
d
W (0) = 1
T (0) = R(0)
v
53
deg(S) colonnes
1+deg(R) colonnes
sdeg(S)
..
.
..
.
MA,B
s1
rdeg(R)
..
..
r0
dn+deg(S)
..
.
..
.
dn
..
.
..
.
d0
n + deg(S)
+1 lignes
54
la forme:
MA,B
an1
..
.
.
..
a0
=
1
..
0
.
..
..
..
..
.
.
..
..
..
..
an1
..
.
..
..
.
.
..
.
a0
bn1
..
.
..
.
..
..
..
..
..
..
..
..
..
b0
..
.
..
bn1
..
.
..
..
.
.
b0
10.2.1
S(p)
R(0) B(p)
v+
d
C(0) P (p)
P (p)C(p)
55
10.2.2
S1 (p)
R(0) Bi (p)
v+
d
C(0) P (p)
P (p)C(p)
o`
u pour retrouver le cas precedent (sans compensation de zeros), il sut de poser
Bs = 1.
Remarque Selon que lon tient compte (comme ici) du rejet de perturbation
(au travers de S(0) = 0) ou non , le syst`eme dequations de depart (de Sylvester)
et par suite le correcteur nest plus le meme. Lordre des polyn
omes mis en jeu
peut egalement etre dierent. Noter aussi que le fait notamment que S se factorise
en pS (p) induit en particulier une action integrale.
56
0, 25
0, 25 + 0, 7p + p2
57
11
y(t)
C
A
N
(A,B,C)
{
Systme discret
uk
yk
Calculateur
(horloge Te)
uk
Syst. discret
58
yk
11.1
11.1.1
Discr
etisation exacte
Partant dun syst`eme lineaire continu et decrit dans lespace detat par les matrices
(A, B, C), lobtention dun mod`ele discret est simple, sachant que
t
A(tt0 )
x(t0 ) +
eA(t ) Bu( )d
x(t) = e
t0
x
k+1 = Ad xk + Bd uk
y =C x
k
avec
ATe
Ad = e
Te
Bd =
Cd = C
Lequation detat est donc ici une equation de recurrence alors quen continu il
sagissait dequation dierentielle.
exercice 16 Determiner le mod`ele discret d (Ad , Bd , Cd ) associe au
schema suivant
d
11.1.2
k/1 + p
k/p
CAN
u2,k
CNA
u1,k
yk
Matrice de transitions
xk = Ad k x0 +
k1
Ad ki1 Bd ui
i=0
La matrice de transition du syst`eme est ici donnee par Akd qui se calcule de mani`ere
analogue a` eAt . Plus precisement, on trouve (entre autres) les approches suivantes:
(a) Par diagonalisation; Si Ad est diagonalisable, i.e. Ad = P DP 1 , alors Akd =
59
Ad =
1/2 1/8
1/8 1/2
11.1.3
Commandabilit
e, observabilit
e
La propriete de commandabilite dun syst`eme se denit par lexistence dune commande (Uk ) pour tout etat nal xk . En supposant x0 = 0, la solution a` une entree
quelconques sexprime avec des notations evidentes par
uk1
.. def
B
]
xk = [Bd , Ad Bd , ..., Ak1
= Ck Uk
d
.
d
u0
La theorie des matrices nous montre alors que le syst`eme sera commmnadable si
et seulement si la matrice de commandabilite CAd ,Bd = Cn est de rang plein.
De meme, la propriete dobservabilite se denit comme la possibilite de determiner
un etat initial unique x0 `
a partir des observations et sorties. En exprimant la sortie
yk pour dierents instants dechantillonnage, il vient
y0
y1
..
.
yk1
Yk
CAd
=
..
.
CAk1
d
Ok
x0 +
0
CBd
..
.
u0
0
..
CAk2
d Bd . . . CBd
Wk
u1
..
.
0
uk1
Uk
qui se recrit
Ok x0 = Yk Wk Uk
On obtient alors que le syst`eme sera observable si et seulement si la matrice
dobservabilite OAd ,C = On est de rang plein.
60
1
x + u, y = (1, )x
x =
11.1.4
Stabilit
e
Par denition le syst`eme sera dit stable si pour toute condition initiale x0 , la
reponse libre converge vers zero. Autrement dit,
xk = Akd x0 0 x0
k
11.1.5
Retour d
etat, observateurs
La propriete de commandabilite etablit que pour tout paire (A, B) commandable, il existe une matrice K qui permet de xer arbitrairement le polyn
ome caracteristique de (A BK). Un retour detat discret est de la forme
uk = K xk + f vk
et conduit a` la representation detat discr`ete du syst`eme boucle:
x
k+1 = (Ad Bd K) xk + Bd f vk
y =C x
k
61
1/2
0
1
xk + uk ,
xk+1 =
0
1/4
1
determiner le retour detat uk = kxk qui xe les p
ole du syst`eme boucle
a {1/4, 1/8}.
`
62
11.2
11.2.1
Echantillonnage et Transform
ee en z
Te
y (t) =
yk (t kTe )
k=0
yk z k
k=0
Plus g
eneralement, pour toute suite {yk } pour laquelle il existe un reel tel
k
que |
ee
k=0 yk | < pour tout > m , la formule ci dessus est adopt
comme denition de la transformee en z de la suite {yk }. On note egalement
Z{yk } = Y (z).
Ainsi par exemple, a` la fonction f (t) = eat , pour t 0, il correspond la suite
delement generique fn = eanT et par suite
F (z) = 1 + eaT z 1 + e2aT z 2 + . . .
Cest une progression geometrique de raison eaT z 1 , ainsi
F (z) =
1
1
eaT z 1
z
z eaT
63
Propri
et
es
Outre le theor`eme de convolution discr`ete ci-apr`es, les principales proprietes concernent les operations davance et de retard, ainsi que la formulation analogue du
theor`eme de la valeur nale.
Tr`es utile pour les etudes statiques, ce premier resultat etabit que lorsqu
elle existe, la limite de la suite {xk } est donnee par
x = lim (z 1)X(z)
z1
11.2.2
Transmittances en z
Pour les syst`emes discrets decrits dans lespace detat, lorsque lon consid`ere les
suites engendrees par les membres de chaque equation, lapplication de ce qui
prec`ede se traduit immediatement par
Y (z) = C X(z)
y =Cx
k
64
B(z)
bm z m + bm1 z m1 + . . . + b0
=
an z n + an1 z n1 + . . . + a0
A(z)
correspond la relation A(z)Y (z) = B(z)U (z), laquelle se traduit en terme de relation de recurrence
an yk+n + an1 yk+n1 + . . . + a0 yk = bm uk+m + bm1 uk+m1 + . . . + b0 uk
La causalite de la fonction de transfert conduit a` la condition m n.
Th
eor`
eme de convolution discr`
ete
Lorsquun syst`eme continu de transfert G(p) est insere entre deux echantillonneurs
comme sur la gure ci dessous, on sinteresse `a la relation entre les signaux discrets
u et y , ou de mani`ere equivalentes entre leurs transformees U (z) et Y (z).
u(t)
Te
y(t)
Te
G(p)
k
ui gki
i=0
En utilisant le fait que toutes les suites sont a` termes nuls pour indices negatifs,
on en deduit (`
a faire) la relation principale
Y (z) = G(z) U (z)
Dans le cas des syst`emes continus inseres entre des convertisseurs CNA et CAN,
le schema de principe precedent est modie pour faire apparatre loperation du
bloqueur comme suit:
u(t)
y(t)
B0 (p)
G(p)
65
Par application de ce qui prec`ede, la relation entree sortie dans ce cas de gure est
donnee par
Y (z) = W (z) U (z) avec W (z) = Z[B0 (p)G(p)]
La fonction de transfert dun bloqueur dordre 0 est quant a` elle caracterisee par
la reponse impulsionnelle et le transfert suivant:
B0 (p) =
1 eT p
p
Par suite, compte tenu que eT p traduit un retard dune periode dechantillonnage,
on en deduit que
Z[B0 (p)G(p)] =
z1
Z[G(p)/p]
z
1
,
p+a
G(p) =
k
p(1 + p)
B0 (p)
k
p(1 + p)
y(t)
1 + p
Donner lexpression du transfert discret Y (z)/X(z) associe. On veillera a
`
mettre en evidence les transmittances discr`etes mise en jeu.
Gain statique
Le gain statique est donne par la limite (si elle existe) de la suite {yk } lorsque le
syst`eme est soumis `a un echelon de position (discret) unitaire. Ce dernier ayant
pour transfert U (z) = z/(z 1), on deduit de lapplication du theor`eme de la
valeur nale que:
Pour un transfert discret G(z), le gain statique vaut G(1)
66
11.2.3
Stabilit
e
La condition necessaire et susante pour le transfert G(z) = B(z)/A(z) soit stable est que les racine du denominateur A(z) soient toutes de module strictement
inferieur a` 1. Voici une approche possible:
Crit`
ere de Routh Ce crit`ere `a la base permet de savoir si les racines dun
polyn
ome sont `a partie reelle negative. Pour lappliquer au cas des syst`emes discrets, il sut de tester la stabilite du processus en applicant le crit`ere de Routh
au polyn
ome
1+
)
P () = (1 )n A(
1
En eet, la transformation en ainsi realisee transforme linterieur du cercle unite
en le demi plan a` partie reelle negative, i.e.
z=
1+
1
b1 z + b0
z 2 + a1 z + a0
11.2.4
Commande RST
A(z) y = B(z) u + d
S(z) u = R(z) y + T (z) v
67
z + 0.718
,
(z 1)(z 0.37)
z3
(z + 3.087)(z + 0.222)
2.275z 2 + 1.791z 0.472
11.2.5
Commande en temps ni
68
p
oles du transfert soit a` lorigine, soit donc
Y (z) =
N um(z)
X(z)
Den(z)
avec Den(z) = z n
pour annuler le regime transitoire en n coups. Noter que cela correspond aussi
`a avoir une reponse impulsionnelle de duree nie.
exercice 28 (suite de lexercice 24) Determiner A et tels que le
denominateur du transfert Y (z)/X(z) se reduise a
` z 2 . En deduire que
(z) = X(z) Y (z) = 0 + 1 z 1
pour une entree en echelon de position et conclure.
Comme illustration de lexercice precedent, la gure ci-apr`es represente la reponse
`a un echelon de position unitaire en consigne, suivi dun echelon de perturbation
damplitude -0.2 a` t = 0, 2s. Que ce soit en poursuite ou en regulation, le regime
permanent est bien etabli au bout de 2 periodes dechantillonnage.
1.2
Reponse du
param`etres
1
0.8
reponse y
0.6
= 0.1,
0.4
commande u
0.2
-0.4
perturbation
0
0.05
0.1
0.15
0.2
0.25
k = 100,
avec
les
Te = 0.05
0
-0.2
moteur
0.3
0.35
A=
1
,
kTe (1 D)
Te D 2
1D
0.4
Noter que dans cet exemple la perturbation nest pas rejetee. Cela nest pas d
u
au placement de p
oles `a lorigine, mais plut
ot a` la structure de la commande
(par retour detat) qui ne tient pas compte (dans ce cas de gure) du rejet de
perturbation.
69
G(p)
G(z)
(t)
(t kT )
ekT p
1
p
1
p2
1
p+a
z k
z
z1
Tz
(z 1)2
z
z eaT
eat sin(0 t)
0
(p + a)2 + 02
zeaT sin(0 T )
z 2 2zeaT cos(0 T ) + e2aT
eat cos(0 t)
p+a
(p + a)2 + 02
z2
Echelon
t
eat
70
z 2 zeaT cos(0 T )
2zeaT cos(0 T ) + e2aT