Vous êtes sur la page 1sur 27

Observer pour fermer la boucle Mesure et estimation dtat Systmes linaires

MAP-AUT1
Principes fondamentaux de lAutomatique
Dynamique et Contrle des Systmes

N ICOLAS P ETIT

Centre Automatique et Systmes


MINES ParisTech
nicolas.petit@mines-paristech.fr

8 janvier 2016
Amphi 4
Observer pour fermer la boucle Mesure et estimation dtat Systmes linaires

Plan de lamphi 4

1 Observer pour fermer la boucle

2 Mesure et estimation dtat

3 Systmes linaires
Observer pour fermer la boucle Mesure et estimation dtat Systmes linaires

Retour dtat

Le contexte

Placement de ples
d
Si (A, B) est commandable, alors le systme dt x = Ax + Bu est
stabilisable par retour dtat u = Kx. On peut mme choisir
toutes les valeurs propres de A + BK
Observer pour fermer la boucle Mesure et estimation dtat Systmes linaires

Retour de sortie et non pas retour dtat

Seule la mesure y est accessible, en gnral dim y 6= n = dim x


Observer pour fermer la boucle Mesure et estimation dtat Systmes linaires

Mesure et estimation dtat

Plusieurs cas de figure


1 Les mesures sont en nombre insuffisant dim y < n :
reconstruction dtat
2 Les mesures sont de mauvaise qualit
3 Les mesures sont redondantes mais de mauvaise qualit
dim y n: fusion de donnes
Observer pour fermer la boucle Mesure et estimation dtat Systmes linaires

Mauvaise qualit des signaux de mesure

chantillonage et quantization bruit de mesure


1.5 1.5

1 1

0.5 0.5

0 0

-0.5 -0.5

-1 -1

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

Quantification, chantillonnage, bruit


Observer pour fermer la boucle Mesure et estimation dtat Systmes linaires

Fusion de donnes

Pour lestimation de la position du vhicule: GPS, camras,


tlmtres, sonars, odomtres, magntomtres,
acclromtres. Chaque technologie a ses dfauts
caractristiques
Observer pour fermer la boucle Mesure et estimation dtat Systmes linaires

Mesures exprimentales
0 mesures hybrides
mesures GPS
odomtrie
5

10
Y (m)

15

20

25

10 5 0 5 10 15 20
X (m)

bruit basse frquence du GPS, drive des odomtres


Observer pour fermer la boucle Mesure et estimation dtat Systmes linaires

Observateur

On va intercaler entre les mesures et le contrleur un systme


dynamique pour estimer ltat du systme

On dispose: du modle du systme, des valeurs de la


commande u et des mesures y (avec leurs dfauts)
Observer pour fermer la boucle Mesure et estimation dtat Systmes linaires

Systmes linaires

d
x = Ax + Bu, y = Cx
dt

Dfinition (distinguabilit)
Deux tats initiaux x et xe sont dits indistinguables (nots xI xe) si
pour tout t 0, les sorties y (t) et ye(t) sont identiques pour
toute entre u(t). Ils sont dits distinguables sinon.

Lindistinguabilit est une relation dquivalence. Notons I(x) la


classe dquivalence de x.
Dfinition (observabilit globale)
Le systme est dit observable si I(x) = {x}pour tout x.
Observer pour fermer la boucle Mesure et estimation dtat Systmes linaires

Distinguabilit

d2 1d 1
2
x = x x+ cos(t)
dt 2 dt 10
Observer pour fermer la boucle Mesure et estimation dtat Systmes linaires

Distinguabilit
d2 1d 1
x = x x+ cos(t)
dt 2 2 dt 10
Formellement,


y =x
dy= dx
dt dt
d

y= x

dt
d y = x 1 d x + 1 cos(t)

dt 2 dt 10
Dans les deux cas, on reconstitue
d
(x, dt x)T , la condition initiale est
distinguable
Observer pour fermer la boucle Mesure et estimation dtat Systmes linaires

Question
Peut-on distinguer la condition initiale dun systme linaire?

d
x = Ax + Bu, y = Cx
dt
Z t
x(t) = exp(tA)x(0) + exp[(t )A]Bu( )d
0
Z t
y (t) = C exp(tA)x(0) + C exp[(t )A]Bu( )d
0

quation dinconnue x(0)


Z t
C exp(tA) x(0) = y (t) C exp[(t )A]Bu( )d
| {z } 0
non inversible
Observer pour fermer la boucle Mesure et estimation dtat Systmes linaires

Z t
C exp(tA)x(0) = y (t) C exp[(t )A]Bu( )d
0

exp(tA0 )C 0 C exp(tA) x(0) = Fonction(y (t), u(t [0, t]))


| {z }
non inversible

Z T
exp(tA0 )C 0 C exp(tA)dt x(0) = Fonction(y (t [0, T ]), u(t [0, T ]))
|0 {z }
(T )

Si (T ) est inversible alors on peut reconstruire x(0) partir


des mesures y et de la commande sur [0, T ]
Observer pour fermer la boucle Mesure et estimation dtat Systmes linaires

Si (T ) nest pas inversible alors on ne peut pas reconstruire


x(0) partir des mesures y et de la commande sur [0, T ].
En effet, v 6= 0 tel que
!
Z T
v0 exp(tA0 )C 0 C exp(tA)dt v =0
0

et par suite
Z T
kC exp(tA)v k2 dt = 0
0
do
C exp(tA)v = 0
Les mesures issues de la condition initiale x(0) et x(0) + v sont
identiques. Ces conditions initiales sont indistinguables
Observer pour fermer la boucle Mesure et estimation dtat Systmes linaires

v 6= 0, C exp(tA)v = 0, t [0, T ]

d
do, par drivations (.) (fonction analytique) en t = 0
dt

CA exp(tA)v = 0, CA2 exp(tA)v = 0, ...,


n1 n
CA exp(tA)v = 0, CA exp(tA)v = 0, ...
v 6= 0, Cv = 0, CAv = 0, ..., CAn1 v = 0, CAn v = 0, ...
v 6= 0, Cv = 0, CAv = 0, ..., CAn1 v = 0
[C; CA; ...; CAn1 ] nest pas de rang plein
Observer pour fermer la boucle Mesure et estimation dtat Systmes linaires

Critre dobservabilit de Kalman


d
Le systme dt x = Ax + Bu, y = Cx est observable si et
seulement si la matrice dobservabilit O = (C; CA; . . . CAn1 )
est de rang n= dim(x)

Dualit
d
Le systme dt x = Ax + Bu, y = Cx est observable (resp.
d
commandable) si et seulement si dt x = A0 x + C 0 u, y = B 0 x est
commandable (resp. observable)
Observer pour fermer la boucle Mesure et estimation dtat Systmes linaires

Forme normale observateur

d
x = Ax + Bu, y = Cx, (dim C = 1 n)
dt
Changement de variables mettant le systme sous forme
canonique observateur
Forme canonique

0 ... 0 a0
1 0 0 b 0
...
A2 = , B = ...
... 1 0 ... 2
bn1
0 ... 1 an1

C2 = 0 ... 0 1

M = [H, AH, ..., An1 H], H dernire colonne de linverse de O


Observer pour fermer la boucle Mesure et estimation dtat Systmes linaires

Construction dun observateur


L0
L2 = ...

Ln1

0 ... 0 a0 + L0
1 0 0 ...
A2 + L2 C2 =
... 1 0

...
0 ... 1 an1 + Ln1
Polynme caractristique

sn (an1 Ln1 )sn1 ... (a1 L1 )s (a0 L0 ) = 0

On peut librement choisir les ples de A + LC si (A, C) est


observable
Observer pour fermer la boucle Mesure et estimation dtat Systmes linaires

Construction dun observateur (suite)

d

x = Ax + Bu, y = Cx

dt
d x = Ax + Bu + L(C x y )

dt
d
(x x) = (A + LC)(x x)
dt
do, si les ples sont partie relle strictement ngative

lim (x(t) x(t)) = 0


t+

On reconstitue asymptotiquement x en lestimant par x


Observer pour fermer la boucle Mesure et estimation dtat Systmes linaires

Observateur asymptotique
Observer pour fermer la boucle Mesure et estimation dtat Systmes linaires

Convergence

Le systme (tendu, dimension 2n) tudier est

d
x = Ax + Bu, y = Cx
dt
d
x = Ax + Bu + L(C x y ) observateur
dt
u = ur (t) + K (x xr (t)) contrleur

Hypothses
Par le choix de K et L, A + BK est stable, A + LC est stable

Question
Le systme boucl par lobservateur contrleur est-il stable?
Observer pour fermer la boucle Mesure et estimation dtat Systmes linaires

tude de stabilit

d

x = Ax + B (ur (t) + K (x xr (t)))

dt
d x = Ax + B (u (t) + K (x x (t))) + L(C x Cx)

r r
dt
    
d x A BK x
= + f (t)
dt x LC A + BK + LC x
| {z }
=M

Etude du polynme caractristique de la matrice M du systme


tendu
Observer pour fermer la boucle Mesure et estimation dtat Systmes linaires


sI A BK
det(sI M) =
LC sI A BK LC

sI A LC sI + A + LC
=
LC sI A BK LC

sI A LC 0
=
LC sI A BK
= det(sI A LC) det(sI A BK )
Observer pour fermer la boucle Mesure et estimation dtat Systmes linaires

Principe de sparation
Lensemble des valeurs propres du systme boucl par
lobservateur contrleur est constitu des valeurs propres de
A + BK et de celles de A + LC

Dmarche pratique
1 On conoit le contrleur comme si on disposait de la
mesure de tout ltat x. On place les ples de A + BK
2 Sparment on construit un observateur asymptotique. On
place les ples de A + LC
3 On substitue x x et on boucle: les valeurs propres ainsi
obtenues sont connues lavance
Observer pour fermer la boucle Mesure et estimation dtat Systmes linaires

Centrale inertielle bas cot

d 1
Q = M(p, q, r )Q
dt 2
avec

0 p q r
p 0 r q
M=
q r

0 p
r q p 0


0
Y = R(Q) 0

g
Observer pour fermer la boucle Mesure et estimation dtat Systmes linaires

R(Q) =
2 q02 + q12 1

2 q1 q2 + 2 q0 q3 2 q1 q3 2 q0 q2
2 q1 q2 2 q0 q3 2 q02 + q22 1 2 q2 q3 + 2 q0 q1
2 q1 q3 + 2 q0 q2 2 q2 q3 2 q0 q1 2 q02 + q32 1

1
A= M(p, q, r )
2

Y = CX

q2 q3 q0 q1
C = = 2 g q1 q0 q3 q2
2q0 0 0 2q3

Vous aimerez peut-être aussi