Vous êtes sur la page 1sur 123

Contrle des systmes non-linaires

Pierre Rouchon
Mines ParisTech
Centre Automatique et Systmes
Mathmatiques et Systmes
Tunis, Novembre 2010
Table des matires
Motivations pratiques
Rappel sur les systmes dynamiques (EDO)
Equations diffrentielles ordinaires et modlisation
Stabilit au sens de Lyapounov
Systmes linaires stationnaires
Les systmes autonomes dans le plan
Schmas blocs (boucle ouverte, boucle ferme)
Systmes non linaires du 1er ordre et rgulateur PI
Robustesse et systmes lents/rapides
Robustesse paramtrique dun point dquilibre
Thorie des perturbations
Systme lent/rapide avec rapide stable
Dynamiques ngliges des capteurs et actionneurs
Cascade de rgulateurs
Systme lent/rapide avec rapide oscillant
Robots compltement actionns
Le bras de robot
Le cas gnral
Commandabilit et stabilisation
Systmes linaires de dimension nie
Linarisation par bouclage statique
Systmes diffrentiellement plats
Rfrences utiles
Pourquoi le contrle ?
Trs souvent, un systme mcanique est difcile piloter
(comportement dynamique complexe, perturbations
extrieures, mesures indirectes et bruites , . . . )
Perturbations
Mesures
relles
Commandes
relles
Grandeurs
piloter
Machine
relle
Oprateur
Exemple : il est trs difcile piloter un avion dcollage
vertical directement partir des manettes des gaz (essayez sur
la simulation !)
But du contrle :
Concevoir un contrleur (qui sera matrialis par un circuit
lectronique ou un programme informatique) transformant la
machine relle en une machine virtuelle" facile piloter et peu
sensible aux perturbations.
Le contrleur sintercale entre la machine et loprateur. Il
manipule en permanence les commandes relles en utilisant
les mesures relles et les ordres de loprateur.
Oprateur
Perturbations
Mesures
relles
Commandes
relles
Commandes
virtuelles
Mesures
virtuelles
Grandeurs
piloter
Contrleur
Machine
relle
La dmarche :

Modliser la machine, cest--dire dcrire son


comportement par des quations mathmatiques on fait
de la physique

Elaborer les quations du contrleur partir du modle


on fait de lingnierie mathmatique avec des simulations
numriques

Raliser matriellement le contrleur on fait de


llectronique/informatique temps-rel
Thorme de Cauchy et ot
Soit
d
dt
x = v(x, t ) avec, pour chaque t , x v(x, t ) localement
lipchitzienne pour chaque x, t v(x, t ) born et intgrable.
Alors pour tout x
0
dans U, il existe a < 0 < b rels et une
unique solution

(x
0
) : ]a, b[ U
t
t
(x
0
)
avec x(0) = x
0
(
0
(x
0
) = x
0
) :
d
dt
(
t
(x))[
t =
= v(

(x), ) et
0
(x) = x
Simulation numrique par le schma le plus simple dite dEuler
explicite :
x
k+1
= x
k
+ hv(x
k
, kh)
o h est le pas de discrtisation en temps (petit par rapport aux
temps caractristiques) et x
k
est une approximation de x(kh).
Premire variation : sensibilit et calcul des drives
Soit
t
le ot associ
d
dt
x = v(x). Sa drive,
note D
x

t
(x) ( matrice n n
_
[
t
]
i
x
j
_
), est solution de
d
dt
(D
x

t
(x))
t =
= D
x
v(

(x)) D
x

(x)
avec comme condition initiale D
x

0
(x) = I
n
. De plus
D
x

t
(x) v(x) = v(
t
(x)).
Si v = v(x, t , ) avec un dpendance en C
1
, alors le ot de
v(, ),

t
dpend aussi de de faon C
1
:
d
dt
_
D

t
(x)
_
t =
= D
x
v(

(x), ) D

(x) + D

v(

(x), )
avec comme condition initiale D

0
(x) = 0.
Calcul direct avec loprateur qui commute avec
d
dt
:
d
dt
x = D
x
vx + D

v, x(0) = x
0
Le robot le plus simple (chier matlab : BrasRobot.m)
Newton : quations diffren-
tielles ordinaires (EDO) :
J
d
2
dt
2
= mgl sin()F(
d
dt
)+u
Oscillateur non-linaire avec
contrle u et frottement F(
d
dt
).
Modlisation, simulation et forme dtat
Lquation du second ordre
J
d
2
dt
2
= mgl sin() F(
d
dt
) + u
scrit sous la forme de deux quations du 1er ordre
d
dt
=
d
dt
= u/J (mgl /J) sin F()/J.
On note x = (, ) ltat (les conditions initiales), u le contrle
et p
1
= 1/J, p
2
= mgl /J les paramtres et F le frottement.
Exo: Quelles sont les quations diffrentielles vries par les
petites variations (t ) et (t ) associes de petites
variations du contrle u(t ) et de la masse m?
Ensemble invariant et intgrale premire

Soit A un sous-ensemble de lespace dtat U. A est dit


invariant (resp. positivement invariant) par le ot
t
, si, pour
tout t dans R (resp. dans [0, +[),
t
(A) est inclus dans A.

On appelle intgrale premire, une fonction C


1
h : U R
telle que
d
dt
[h(
t
(x))] = 0 pour tout x dans U et pour tout t .
Cette condition est quivalente
D
x
h(x) v(x, t ) = 0
pour tout x dans U
Exo: Pour
d
dt
= ,
d
dt
= (mgl /J) sin F()/J, monter
A
p
= (, ) [
2
/2 (mgl /J) cos() p est positivement
invariant ds que F() est du mme signe que .
Stabilit au sens de Lyapounov

Un point dquilibre x (v(

x) = 0) de
d
dt
x = v(x) est stable
au sens de Lyapounov si, pour tout > 0, il existe > 0
(dpendant de mais indpendant du temps t ) tel que,
pour tout x vriant |x x| , |
t
(x) x| pour
tout t > 0.

Le point dquilibre x est asymptotiquement stable au sens


de Lyapounov sil est stable au sens de Lyapounov et si de
plus, pour tout x sufsamment proche de x,
lim
t +

t
(x) = x.
1
re
mthode de Lyapounov, invariance de Lasalle
Soient
d
dt
x = v(x) , x R
n
(pour simplier) et une fonction C
1
,
V : R
n
[0, +[, telle que :

si x R
n
tend vers linni en norme, V(x) tend aussi vers
linni ;

V dcrot le long de toutes les trajectoires,


dV
dt
0.
Alors, toutes les trajectoires sont dnies sur [0, +[ et
convergent asymptotiquement vers le plus grand ensemble
invariant contenu dans lensemble dni par D
x
V v = 0.
En pratique on cherche les solutions du systme sur-dtermin
suivant :
d
dt
x = v(x), D
x
V(x) v(x) = 0.
Exo: Pour
d
dt
= ,
d
dt
= (mgl /J) sin F()/J, monter que
V(, ) =
2
/2 (mgl /J) cos() est une fonction de
Lyapounov. Calculer lensemble invariant de Lasalle.
Lien avec le linaire tangent (seconde mthode de Lyapounov)
Autour de lquilibre x le systme linaris tangent est :
d(x)
dt
= D
x
v(x) x o D
x
v(x) =
_
v
i
x
j
(

x)
_

1i ,j n
.

Si les valeurs propres de Dv(x) sont toutes partie relle


strictement ngative, alors x est un quilibre
asymptotiquement stable au sens de Lyapounov.

Si lune des valeurs propres de Dv(x) possde une partie


relle strictement positive alors x nest pas un quilibre
stable au sens de Lyapounov.
Les valeurs propres de Dv(x) sont appeles exposants
caractristiques ; x est dit hyperbolique si tous ses exposants
caractristiques sont partie relle non nulle.
Exo: Calculer les points dquilibre de
d
dt
= ,
d
dt
= (mgl /J) sin F()/J ainsi que les exposants
caractristiques associs. Que peut-on dire de leur stabilit?
Systmes linaires
d
dt
x = Ax
x(t ) = exp(tA)x(0), exp(tA) =
_
I + tA +
t
2
2!
A
2
+ . . . +
t
k
k!
A
k
+ . . .
_
Proprit de lexponentielle :
exp(tA) exp(sA) = exp((t + s)A),
d
dt
(exp(tA)) = exp(tA) A
exp(PAP
1
) = P exp(A)P
1
exp(A) = lim
m+
_
I +
A
m
_
m
, det(exp(A)) = exp(tr(A))
Portrait de Phases de systmes linaires plans
Exo: dynamique de type gradient
Soit U : R
n
R
+
une fonction C
2
innie linni
(lim
x+
U(x) = +). On considre la dynamique de type
gradient,
d
dt
x = U(x), o U est le gradient de U dans R
n
euclidien, i.e. U est le vecteur colonne
_
U
x
i
_
i =1,...,n
.

Montrer que U est un fonction de Lyapounov.

En dduire que les trajectoires sont dnies sur [0, +[ et


convergent vers les points critiques de U (i.e. les zros de
U).

Soit

x un point critique de U, i.e. un quilibre. Montrer que
les valeurs propres en

x sont toutes relles. Discuter, en
fonction de lallure locale de U autour de

x, la stabilit de

x.

Reprendre les trois questions prcdentes en prenant sur


R
n
une mtrique qui nest plus ncessairement euclidienne
et donc dnie par un champ de matrices symtriques
dnies positives x G(x), la dynamique drivant du
potentiel U tant alors
d
dt
x = G
1
(x)U(x).
Comportements asymptotiques (thse dHenri Poincar)
Les quatre comportements asymptotiques possibles pour une
trajectoire dun systme dynamique autonome dni dans le
plan :
Thorme (Critre de Bendixon)
Soit
R
2
x v(x) R
2
une fonction continue et drivable. On suppose que
div(v)(x) =
v
1
x
1
(x) +
v
2
x
2
(x) < 0
pour presque tout x R
2
.
Soit t x(t ) une solution de
d
dt
x = v(x) qui reste borne pour
les temps t positifs. Alors, sa limite quand t tend vers +est
un point dquilibre, i.e., une solution

x R
2
de v(

x) = 0.
Thorme (existence dorbite priodique)
Soit R
2
x = v(x) R
2
une fonction de classe C
1
. On
considre le systme dynamique
d
dt
x = v(x). On suppose quil
existe dans le plan un ensemble compact tel que

toute trajectoire ayant sa condition initiale dans reste


dans pour les temps t > 0.

soit ne contient aucun point dquilibre , soit contient


un unique point dquilibre dont toutes les valeurs propres
sont parties relles strictement positives.
alors M contient une orbite priodique.
Exo: Eco-systme et modle prdateur/proie
La population y 0, des renards et celle des lapins x 0, dvore par les renards,
vrient :
dx
dt
= (a by x)x,
dy
dt
= (cx d y)y
o a > 0, b > 0, c > 0, d > 0, > 0 et > 0 sont des paramtres positifs.
1. Quelles sont les hypothses de modlisation ?
2. Quel est lespace dtat du systme ? Y a-t-il des ensembles invariants vidents ?
3. Montrer que les solutions sont dnies sur [0, +[ (indication : considrer les
deux isoclines, les tats o le champ de vecteurs est parallle laxe des x ou
laxe des y).
4. Discuter, en fonction des valeurs des paramtres le nombre et la stabilit des
points dquilibre.
5. Discuter lallure du portrait de phases (faire des dessins).
6. On suppose uniquement dans cette question que = = 0. Trouver une
intgrale premire (Intgrer lquation diffrentielle dy/dx = . . .). En dduire le
portrait de phases.
7. Montrer quil nexiste pas dorbite priodique (crire les quations en chelle
logarithmique (log x, log y), montrer que la divergence du champ de vecteurs en
chelle log est strictement ngative et conclure par Poincar Bendixon).
Schma bloc de la boucle ouverte
contrle
perturbation
sortie
systme
Simulations Scilab/Scicos : Order1OpenLoop.cos
Schma bloc de la boucle ferme
rtroaction (feedback)
contrleur
perturbation
c
o
n
s
i
g
n
e
contrle
sortie
systme
Simulations Scilab/Scicos : Order1PI.cos
Exemple lmentaire
Rgulateur proportionnel intgral (PI) de la temprature y =
sa consigne v =

avec une vanne u [0, 1], le contrle.
Le rgulateur Proportionnel-Intgral (PI)

PI en temps discret :
u
k+1
= S
at
_
K
p
(


k
) + I
k
_
I
k+1
= I
k
+ t
_
K
i
(


k
) + K
s
(u
k+1
K
p
(


k
) I
k
)

o S
at
(x) = x si x [0, 1], S
at
(x) = 0 pour x < 0 et
S
at
(x) = 1

PI en temps continu : avec


d
dt
I

k

I
k+1
I
k
t
, on obtient la
version continue :
u(t ) = S
at
(K
p
(

(t ) + I(t ))
d
dt
I(t ) = K
i
(

(t )) + K
s
(u(t ) K
p
(

(t )) I(t )).
Modlisation
Modle thermique simpli fond sur les lois de conservation.
Un premier ordre non-linaire :
MC
p
d
dt
=
rad
(
rad
) +
ext
(
ext
)
u(
ch

rad
) =
rad
(
rad
)
Boucle ouverte et boucle ferme
Avec x = et le contrle u, la perturbation w =
ext
:

Le systme en boucle ouverte, un premier non-linaire :


d
dt
x = f (x, u, w), x R, u [u
min
, u
max
]
avec comme seules hypothses :
f
x
0,
f
u
> 0 et
f (

x,

u) = 0 avec

u [u
min
, u
max
].

Le systme en boucle ferme un premier ordre avec le PI


(K
p
, K
i
> 0 et K
s
K
p
> K
i
) :
d
dt
x = f (x, S
at
[K
p
(

x x) + I], w)
d
dt
I = K
i
(

x x) + K
s
(S
at
[K
p
(

x x) + I] K
p
(

x x) I)
Le systme en boucle ferme
Avec ltat en boucle ouverte et celui du rgulateur PI I
(toutes les autres grandeurs sont supposes constantes, en
particulier la perturbation w =
ext
) on a (voir simulation
Scilab/Scicos) :
d
dt
= f
_
, S
at
_
K
p
(

) + I
_
d
dt
I = K
i
(

) + K
s
_
S
at
_
K
p
(

) + I

K
p
(

) I
_
On note par X = (, I) R
2
ltat en boucle ferme qui obit
une EDO dans le plan :
d
dt
X = v(X).
X v(X) est un champ de vecteurs (application de R
2
dans
R
2
, ici).
Systmes dynamiques : tude des courbes t X(t ) dnies
par des quations diffrentielles ; comportement asymptotique
quand t +.
Stabilit locale
Pour (, I) autour de (

I), le systme scrit (saturation non


active)
d
dt
= f
_
, K
p
(

) + I
_
d
dt
I = K
i
(

)
Le calcul du linaire tangent fait apparat la matrice jacobienne
suivante :
_
f

u)
K
p
f
u

u)
f
u

u)
K
i
0
_
.
La trace de cette matrice 2 2 est strictement ngative car
f

0 et
f
u
> 0 par hypothse et les gains K
p
, K
i
sont > 0.
Son dterminant est strictement positif pour les mmes
raisons. Donc ses deux valeurs propres sont parties relles
strictement ngatives. Ainsi, pour tous K
p
> 0 et K
i
> 0, le
linaire tangent est toujours stable.
1er ordre avec PI : trajectoires bornes (x )
Le rectangle R

est positivement invariant car le champ de


vecteurs dnissant la dynamique pointe vers lintrieur de R

1er ordre avec PI : stabilit asymptotique globale

Le champ de vecteurs X = (, I)

v(X) =
_
f
_
, S
at
_
K
p
(

) + I
_
K
i
(

) + K
s
_
S
at
_
K
p
(

) + I

K
p
(

) I
_
_
est divergence strictement ngative.

Sil y avait une orbite priodique englobant un domaine


daire non nulle, on aurait une contradiction car
0 >
_ _

div

v =
_

n ds = 0
o

n est la normale extrieure (

v = 0 sur , le
bord du domaine est lorbite priodique).

Unicit du point dquilibre.


Stabilit globale PI sur un 1er ordre
Soit le systme du premier ordre non-linaire
d
dt
x = f (x, u)
avec, f continue, drivable par morceau vriant
f
x
(x, u) 0,
f
u
(x, u) > 0 pour tout avec (x, u) R [u
min
, u
max
]. Soit le
rgulateur PI avec anti-emballement de consigne

x R :
u = S
at
[K
p
(

x x) + I],
d
dt
I = K
i
(

x x) + K
s
(u K
p
(

x x) I)
avec K
p
, K
i
> 0, K
s
K
p
> K
i
et S
at
() = max(u
min
, min(u
max
, )).
Alors on a les deux cas suivants :

soit il existe

u ]u
min
, u
max
[ tel que f (

x,

u) = 0 et alors
lquilibre (x, I) = (

x,

u) du systme boucl est unique et
globalement asymptotiquement stable au sens de
Lyapounov

sinon : soit [u
min
, u
max
], f (

x, ) < 0 (resp > 0) alors


lim
t +
u(t ) = u
max
(resp u
min
) et lim
t +
x(t ) existe, est
ventuellement innie dans [,

x[ (resp. ], +]) ;
soit f (

x, u
max
) = 0 (resp. f (

x, u
min
) = 0) alors
lim
t +
u(t ) = u
max
(resp. u
min
) et lim
t +
x(t ) existe, est
nie dans ] ,

x[ (resp. ], +[)
Robustesse et erreur paramtrique
Systme dpendant dun paramtre :
d
dt
x = v(x, ) (

)
Hypothses sur (
0
) :

x
0
quilibre, v(

x
0
, 0) = 0, et les parties
relles des valeurs propres de
_
_
v
i
x
j
_
(

x
0
,0)
_
sont strictement
ngatives.
Conclusion sur (

) : il existe > 0, tel pour tout [, +],


le systme rgulirement perturb (

) admet un point
dquilibre

x() qui dpend rgulirement de (v(

x(), ) = 0),
qui est asymptotiquement stable (local) et

x(0) =

x
0
.
Preuve : fonction implicite, les valeurs propres dune matrice
dpendent continment de ses coefcients.
Thorie des perturbations
systme lent-rapide systme lent
perturbations
singulires
-
6
0

1
t
x

-
6
0

1
t
x
moyennisation
-
6
0

1
t
x

-
6
0

1
t
x
On limine les effets court terme, t , quils soient
asymptotiquement stables ou oscillants, pour ne conserver que
les effets long terme, t 1 (0 < 1).
Forme normale de Tikhonov
(

)
_

_
dx
dt
= f (x, z, )

dz
dt
= g(x, z, )
avec x R
n
, z R
p
,
0 < 1 un petit paramtre,
f et g des fonctions rgulires.
Rduction de modle
Pour 0 < 1, lapproximation de
(

)
_

_
dx
dt
= f (x, z, )

dz
dt
= g(x, z, )
par (
0
)
_

_
dx
dt
= f (x, z, 0)
0 = g(x, z, 0)
est justie ds que lquation g(x, z, 0) = 0 admet une
solution, z = (x), avec fonction rgulire de x et ds que
g
z
(x, (x), 0) est une matrice dont toutes les valeurs propres
sont parties relles strictement ngatives.
Le modle rduit est alors
d
dt
x = f (x, (x), 0)
Enonc prcis du thorme de Tikhonov
Soit le systme singulirement perturb (forme dite standard),
d
dt
x = f (x, z, ),
d
dt
z = g(x, z, ) et supposons que

lquation g(x, z, 0) = 0 admet une solution, z = (x),


avec fonction rgulire de x et o
g
z
(x, (x), 0) est une
matrice dont toutes les valeurs propres sont parties
relles strictement ngatives

le systme rduit
d
dt
x = f (x, (x), 0) admet une unique
solution x
0
(t ) pour t [0, T], 0 < T < +avec la
condition initiale x
0
(0) = x
0
.
Alors, pour > 0 sufsamment proche de 0, le systme
singulirement perturb admet une unique
solution (x

(t ), z

(t )) sur [0, T] avec x

(0), z

(0) = (x
0
, z
0
) ds
que z
0
appartient lintrieur du bassin dattraction du point
dquilibre (x
0
) du sous-systme rapide
d
dt
= g(x
0
, , 0). De
plus on a
lim
0
+
x

(t ) = x
0
(t ) et lim
0
+
z

(t ) = z
0
(t )
uniformment sur tout compact de ]0, T].
Persistance de la stabilit

On part de
(

)
_

_
dx
dt
= f (x, z, )

dz
dt
= g(x, z, )
avec g(x, (x), 0) = 0
g
z
(x, (x), 0) matrice stable
et 0 < 1.

On suppose en plus que systme lent


d
dt
x = f (x, (x), 0)
admet un point dquilibre

x : f (

x, (

x), 0) = 0 avec la
matrice
_
f
x
+
f
z


x
_
(

x,(

x),0)
stable.

Alors, pour tout > 0 assez proche de 0, le systme


perturb (

) admet un point dquilibre proche de


(

x, (

x)) et dont le linaire tangent est asymptotiquement


stable.
Exo: cintiques chimiques lentes et rapides
On considre un systme ferm homogne comportant trois
composants, A, B et C et qui est le sige des ractions suivantes
A
k
A
B, B
k
B
A A + B
k
C
o les constantes de vitesses sont k
A
, k
B
, k >0 avec 0 < 1
1. Justier le modle dynamique
d
dt
x
A
= k
B
x
B
k
A
x
A
kx
A
x
B
,
d
dt
x
B
= k
A
x
A
k
B
x
B
kx
A
x
B
et
d
dt
x
C
= kx
A
x
B
o (x
A
, x
B
, x
C
)
sont les concentrations en A, B et C dans le racteur.
2. Montrer que =
x
A
+x
B
2
+x
C
est un intgrale premire. En dduire
que les deux premires quations donnent les trajectoires.
3. On pose x = x
A
+ x
B
et z = x
A
x
B
. Montrer quavec (x, z) le
systme est sous la forme normale de Tikhonov. En dduire une
approximation de la dynamique lente en x.
4. Quel est le rgime asymptotique pour t grand de x
A
, x
B
et x
C
en
fonction de la condition initiale (x
0
A
, x
0
B
, x
0
C
).
Feedback sur un systme deux chelles de temps

Rajoutons une commande u (

) :
(

)
_

_
dx
dt
= f (x, z, u, )

dz
dt
= g(x, z, u, )
avec g(x, (x, u), u, 0) = 0
et
g
z
(x, (x, u), u, 0) stable
Lent :
dx
dt
= f (x, (x, u), u, 0).

Soit le feedback u = k(x) tel que le systme lent boucl


dx
dt
= f (x, (x, k(x)), k(x), 0) = F(x), soit
asymptotiquement stable autour du point dquilibre
(

x,

u = k(

x)) :
F
x
(

x) stable.

Alors pour tout > 0 assez petit, (

) avec u = k(x),
admet un quilibre asymptotiquement stable proche de
(

x,

z = (

x,

u)) : robustesse par rapport aux dynamiques
ngliges.
Robustesse et dynamiques ngliges
Exemple du PI sur le premier ordre avec dynamiques rapides
capteur/actionneur (voir simulation Scilab/Scicos) ((
m
, u
m
))
( > 0 petit) :
_

_
d
dt
(t ) = f (, u
m
)
d
dt
I(t ) = K
i
(


m
(t )) + K
s
(u(t ) K
p
(


m
(t )) I(t ))
u(t ) = S
at
(K
p
(


m
(t )) + I(t ))

d
dt

m
(t ) = (t )
m
(t )

d
dt
u
m
(t ) = u(t ) u
m
(t ).
(1)
En posant x = (, I) et z = (
m
, u
m
), on a
d
dt
x = f (x, z, ),
d
dt
z = g(x, z, ) (

)
alors que le modle initial correspond en fait = 0
d
dt
x = f (x, z, 0), 0 = g(x, z, 0) (
0
)
Simulations Scilab/Scicos : Order1PIRobust.cos
Robustesse du PI
Le PI sur le premier ordre avec dynamiques capteur/actionneur
(

)
_

_
d
dt
(t ) = f (, u
m
)
d
dt
I(t ) = K
i
(


m
(t )) + K
s
(u(t ) K
p
(


m
(t )) I(t ))

d
dt

m
(t ) = (t )
m
(t )

d
dt
u
m
(t ) = u(t ) u
m
(t )
u(t ) = S
at
(K
p
(


m
(t )) + I(t )).
est sous forme standard avec X = (, I) et Z = (
m
, u
m
). La
dynamique lente asymptotiquement stable . Donc lquilibre en
=

de (

) est aussi stable si 0 < 1, cest dire si


K
p
f
u
1,
K
i
K
p
f
u
1, K
s
1
Il ne faut pas choisir K
p
, K
i
et K
s
trop grands pour ne pas
exciter les dynamiques ngliges.
Cascade de deux rgulateurs
_

_
d
dt
x = v
d
dt
v = f (x, v) + u
Les contraintes :
f mal connue mais |f |

< u
max
u [u
max
, u
max
]
v [v
max
, v
max
] (u
max
, v
max
> 0).
Un contrle en deux temps (simulation Scilab/Scicos) :
1. un premier rgulateur proportionnel (rgulateur P),
u =

v v

avec 0 < 1, assure la convergence rapide de la


vitesse v =
d
dt
x vers une consigne

v lentement variable.
2. un second rgulateur PI (K
p
, K
i
> 0)

v = K
p
(

x x) + I,
d
dt
I = K
i
(

x x)
stabilise la position x

x et fournit la consigne lentement
variable

v au rgulateur rapide prcdent.
Le systme boucl
(

)
_

_
d
dt
x = v

d
dt
v = f (x, v) + K
p
(

x x) + I v
d
dt
I = K
i
(

x x)
est sous forme standard avec X = (x, I) et Z = v :
d
dt
X = F(X, Z, ),
d
dt
Z = G(X, Z, )
La solution de G(X, Z, 0) = 0 est v =

v = K
p
(

x x) + I. La
matrice
G
Z
= 1 est stable. Comme K
p
, K
i
> 0, le systme lent
d
dt
x = K
p
(

x x) + I,
d
dt
I = K
i
(

x x)
est stable. Donc lquilibre (x =

x, v = 0,

I) de (

) est stable
pour > 0 assez petit (K
p
1 et K
i
K
p
).
Modle de contrle, modle de simulation et tests robustesse

On labore le contrle sur le modle approch (


0
), dit
modle de contrle : le systme boucl (
0
) est
asymptotiquement stable. Le modle de simulation sera
alors (

Robustesse : pour > 0 assez petit, le systme boucl


perturb (

) est aussi asymptotiquement stable (thorie


des perturbations rgulires et singulires)

Marge de robustesse : la valeur critique

de , partir de
laquelle le systme boucl (

) devient instable. Dans le


cas linaire stationnaire, on a une ide de

avec les
marges de gain et de retard (marge de phase) obtenues
via les diagrammes de Nyquist et de Bode. Dans les autres
cas (linaire instationnaire, non linaire, ...) simulation en
boucle ferme et/ou tude des bifurcations (difcile).
Oscillation/relaxation et cascade de contrleurs
Exo: On considre le systme plan suivant

d
dt
x = y + x
x
3
3
+ u,
d
dt
y = x
o 0 < 1 est un petit paramtre et u le contrle.
1. Donner lallure du portrait de phases en boucle ouverte
avec u = 0.
2. On considre un premier contrleur rapide u = 2x +v o
v est un nouveau contrle constant ou lentement variable
([

v[ [v[)
2.1 Donner lallure du portrait de phases avec le contrleur
rapide o v est constant.
2.2 Construire un contrleur lent qui stabilise y en

y arbitraire.
2.3 Estimer, partir de simulations en boucle ferme des deux
contrleurs en cascade o

y, la valeur critique

de
partir de laquelle le systme boucl devient instable (test
de robustesse).
Moyennisation une frquence (0 1)
Considrons le systme perturb
dx
dt
= f (x, t , )
avec f rgulire et de priode T par rapport t . Il existe un
changement de variables
x = z + w(z, t )
avec w de priode T en t , tel que
dz
dt
= f (z) +
2
f
1
(z, t , )
avec
f (z) =
1
T
_
T
0
f (z, t , 0) dt
et f
1
rgulire de priode T en t .
Le systme moyen (modle rduit) est alors
d
dt
z =

f (z). Ici z
est proche de x.
Moyennisation une frquence (n)

Si x(t ) et z(t ) sont, respectivement, solutions du systme


perturb et du systme moyen, avec comme conditions
initiales x
0
et z
0
telles que |x
0
z
0
| = O(),
alors |x(t ) z(t )| = O() sur un intervalle de temps de
lordre de 1/.

Si z est un point xe hyperbolique du systme moyen,


alors il existe > 0 tel que, pour tout ]0, ], le systme
perturb admette une unique orbite priodique
hyperbolique

(t ), proche de z,

(t ) = z + O(), qui peut


tre rduite un point, et dont la stabilit est du mme
type que celle de z
1
En particulier, si z est
asymptotiquement stable, alors

est aussi
asymptotiquement stable et lapproximation, O() prs,
des trajectoires du systme perturb par celles du systme
moyen devient valable pour t [0, +[.
1. Le nombre des multiplicateurs caractristiques de

de module stricte-
ment infrieur (resp. suprieur) 1 est gal au nombre dexposants caract-
ristiques de z partie relle < 0 (resp. > 0).
Recherche dextremum (Extremum seeking)
Les quations en boucle ferme sont ((k, a, h, ) paramtres > 0)
d
dt
v = k sin(t )
_
f (v+a sin(t ))
_
,
d
dt
= h
_
f (v+a sin(t ))
_
On suppose que f admet un minimum en u =

u, localement autour
de

u, f

> 0. Alors localement, pour a assez petit, akf

et h
on "converge" vers le minimum de y (voir simulation Scilab/Scicos)
Boucle verrouillage de phase (PLL)
La quantit
0
(1 kx) est une estimation ltre de la
frquence
d
dt
du signal dentre v qui peut tre trs fortement
bruit et dont lamplitude a nest pas connue.
d
dt
x = k
f

0
(v(t ) sin x),
d
dt
=
0
(1 kx)
o est un petit paramtre positif, k
f
et k deux gains positifs.
On pose v(t ) = a cos avec
d
dt
=
0
(1 + p) o a > 0 et p
sont des paramtres inconnus mais constants (voir simulation
Scilab/Scicos).
PLL : la dynamique moyenne
Comme 2 cos sin = sin( ) + sin( + ), avec =
et = + , le systme
d
dt
x = k
f

0
(a cos sinx),
d
dt
=
0
(1kx),
d
dt
=
0
(1+p)
devient dans lchelle de temps (
d
dt
=
0
(2 + (p kx)))
d
d
x = k
f
a
2
sin +
a
2
sin x
2 + (p kx)
,
d
d
=
p + kx
2 + (p kx)
.
Le systme moyen est
d
d
x = k
f
a
2
sinx
2 + (p kx)
,
d
d
=
p + kx
2 + (p kx)
.
PLL : stabilit asymptotique en moyenne
On nglige des termes dordre 2 en et on prend comme
systme moyen :
d
d
x =
k
f
2
_
a
2
sinx
_
,
d
d
=

2
(p + kx).
Ce systme scrit aussi sous la forme dune seule quation du
second ordre avec / =
_
k
f
ka/8
d
2
d
2
=
_
2k
f
ka
d
d

_
sin
2p
ak
_
.
On choisit le gain k assez grand pour que

2p
ak

< 1. Ainsi on
pose sin

=
2p
ak
avec

]

2
,

2
[. Ce systme admet donc
deux points dquilibre (angle dni 2 prs) :

=

mod (2) est un col (deux valeurs propres
relles de signes opposs)

=

mod (2) est localement asymptotiquement stable
(deux valeurs propres partie relle strictement ngative).
PLL : stabilit asymptotique en moyenne (n)
d
2
d
2
=
_
2k
f
ka
d
d

_
sin
2p
ak
_
avec dans le cercle unit
S
1
(systme du premier ordre sur le cylindre (,
d
d
) S
1
R).
On reprend en partie les arguments utiliss pour le PI avec
anti-emballement :

Le calcul de la divergence du champ de vecteur dans les


coordonnes (, =
d
d
) donne
_
2k
f
ka
< 0. Les
trajectoires sont bornes dans le cylindre (la vitesse est
borne).

Ainsi, il ne peut y avoir au plus quune seule orbite


priodique et de plus elle fait un tour autour du cylindre.

Pour k et k
f
assez grands, on a deux points dquilibre et
on na pas dorbite priodique (bifurcation globale fonde
sur lespace rentrant du col

qui en se confondant
avec lespace sortant (orbite homocline) dtruit un cycle
limite ).
En rsum : pour k et k
f
assez grands = converge vers
une constante (le point

: cest le verrouillage de phase.
Bifurcation globale
d
2
dt
2
= p
d
dt
sin+
1

2
3 4 5 6 7 8
1
0. 5
0
0.5
1
1.5
2
2.5
3
3.5
4
p= 1
Un seul rgime asymptotique : quilibre
3 4 5 6 7 8
1
0. 5
0
0.5
1
1.5
2
2.5
3
3.5
4
p= 0.9
Un seul rgime asymptotique : quilibre
3 4 5 6 7 8
1
0. 5
0
0.5
1
1.5
2
2.5
3
3.5
4
p= 0.8
Un seul rgime asymptotique : quilibre
3 4 5 6 7 8
1
0. 5
0
0.5
1
1.5
2
2.5
3
3.5
4
p= 0.7
Un seul rgime asymptotique : quilibre
3 4 5 6 7 8
1
0. 5
0
0.5
1
1.5
2
2.5
3
3.5
4
p= 0.63
Bifurcation globale : un cycle limite apparat (orbite homocline)
3 4 5 6 7 8
1
0. 5
0
0.5
1
1.5
2
2.5
3
3.5
4
p= 0.61
Deux rgimes asymptotiques : cycle limite ou quilibre
3 4 5 6 7 8
1
0. 5
0
0.5
1
1.5
2
2.5
3
3.5
4
p= 0.58
Deux rgimes asymptotiques : cycle limite ou quilibre
3 4 5 6 7 8
1
0. 5
0
0.5
1
1.5
2
2.5
3
3.5
4
p= 0.5
Deux rgimes asymptotiques : cycle limite ou quilibre
3 4 5 6 7 8
1
0. 5
0
0.5
1
1.5
2
2.5
3
3.5
4
p= 0.4
Deux rgimes asymptotiques : cycle limite ou quilibre
3 4 5 6 7 8
1
0. 5
0
0.5
1
1.5
2
2.5
3
3.5
4
p= 0.1
Pendule invers de Kaptisa
Exo: Le mouvement dun pendule ponctuel de longueur l et dont la
hauteur du point de suspension oscille selon a cos(t ) avec une
amplitude 0 < a l et une frquence
_
g
l
est donne par
d
2
dt
2
=
g+a
2
cos(t )
l
sin o est langle par rapport la verticale
descendante.
1. On pose = t . Montrer que
d
2

d
2
= ( + cos ) sin avec
=
g
l
2
et =
a
l
.
2. Avec comme variables dtat (x
1
, x
2
) dnies par = x
1
et
d
d
= (x
2
sin sinx
1
), montrer que
dx
1
d
= (x
2
sin sinx
1
) et
dx
2
d
=
_
sin
2
cos x
1
+

_
sinx
1
+ x
2
sin cos x
1
.
3. En dduire les quations moyennes lorsque 1 et
dx
1
d
= x
2
,
dx
2
d
=
_

2
cos x
1
+

_
sinx
1
4. On considre le systme moyen. Quelle est la valeur critique

de partir de laquelle lquilibre = x


1
= devient stable ?
Dterminer, en fonction de la position de par rapport

, le
nombre de points dquilibre et leur stabilit.
Le robot le plus simple (chier matlab : BrasRobot.m)
Newton : quations diffren-
tielles ordinaires (EDO) :
J
d
2
dt
2
= mgl sin()F(
d
dt
)+u
Oscillateur non-linaire avec
contrle u et frottement F(
d
dt
)
mal connu.
Modlisation, simulation et forme dtat
Lquation du second ordre (F = 0 pour simplier ici).
J
d
2
dt
2
= mgl sin() + u
scrit sous la forme de deux quations du 1er ordre
d
dt
=
d
dt
= u/J (mgl /J) sin.
On note x = (, ) ltat (les conditions initiales), u le contrle
et p
1
= 1/J, p
2
= mgl /J les paramtres.
Gnration et suivi de trajectoires

Boucle ouverte et feedforward. La gnration de


trajectoires consiste trouver une trajectoire de rfrence
t (
r
(t ),
r
(t ), u
r
(t )) partant dun tat (
i
,
i
) en t = 0 et
arrivant en t = T ltat nal (
f
,
f
), ces deux tats tant
xs par avance. Il sagit du problme de base de la
commandabilit.

Boucle ferme et feedback. Etant donn que tout modle


est approximatif (les paramtres J et m et l sont connus
avec une certaine prcision), il convient de corriger la
commande de rfrence u
r
(t ) en temps rel de faon
compenser les carts la trajectoire de rfrence,
r
et

r
, qui peuvent apparatre. Il sagit dun problme de
suivi de trajectoire (tracking en anglais) et stabilisation
par rtro-action (feedback). Une dmarche trs naturelle
consiste corriger la commande de rfrence u
r
(t ) par
des termes du type
r
(t ) et
r
(t ).
Gnration et suivi pour le robot le plus simple
Mthode du couple calcul : on xe t
r
(t ) o
((0),
d
dt
(0)) et ((T),
d
dt
(T)) sont xs par ltat initial x
0
et
ltat nal x
T
. Alors une trajectoire allant de x
0
x
T
est :
[0, T] t (
r
(t ),
r
=
d
dt

r
(t ), u
r
(t ) =
d
2
dt
2

r
(t ) + p
2
sin(
r
(t ))
p
1
.
Le feedback linarisant
u =
_
p
2
sin +
d
2
dt
2

r
2
0
(
r
(t ))
2
0
(
r
(t ))
_
/p
1
assure une dynamique de suivi linaire et asymptotiquement
stable
d
dt
(
r
) =
r
,
d
dt
(
r
) = 2
0
(
r
(t ))
2
0
(
r
(t ))
avec > 0 autour de 1 (facteur damortissement) et
0
> 0 (la
bande passante).
Robustesse (erreur de paramtres et dynamiques ngliges)

En fait le vrai modle est


d
dt
=
d
dt
= (p
1
+
1
)u
vrai
(p
2
+
2
) sin +
d
dt
u
vrai
= (u u
vrai
)/.
o
1
,
2
et correspondent aux erreurs de paramtres et
0 <

p
2
1 la dynamique du moteur reprsente par
un premier ordre ayant une petite constante de temps .

Le systme en boucle ferme doit tre peu sensible ces


erreurs. Ce qui limite les gains pour le feedback linarisant
prcdent :

0
1.
Recalage et adaptation par un terme intgral

On remarque un biais statique sur par exemple pour = 0.

On rajoute un effet intgral qui peut tre vu comme une adaptation de la


consigne
r
dans le feedback linarisant et que lon remplace par
r
+ I,
o le terme intgral I est un dcalage qui vrie la dynamique lente
suivante
d
dt
I =

r

T
I
avec une constante de temps T
I
grande devant celle du suivi :
T
I

0
1.

Ainsi on a
u =

p
2
sin +
d
2
dt
2

r
2
0
(
r
(t ))
2
0
( (
r
+ I)(t ))

/p
1
.

Prise en compte des contraintes u [u


min
, u
max
] via lanti-emballement
heuristique suivant
u = S
at

p
2
sin +
d
2
dt
2

r
2
0
(
r
(t ))
2
0
( (
r
+ I)(t ))

/p
1

et en limitant le terme intgral par I = max

2
, min

2
, I

.
Les notions fondamentales illustres par le bras robot

Mthode du couple calcul et linarisation par bouclage

Stabilit asymptotique au sens de Lyapounov

Robustesse par rapport au paramtre et point dquilibre


hyperbolique

Robustesse par rapport aux dynamiques ngliges et


thorie des perturbations (systmes lents/rapides)
Les quations de Lagrange : cas autonome
Systmes mcaniques dcrits par des variables de
conguration q = (q
1
, ..., q
n
) admet le Lagrangien suivant
L(q,

q) =
1
2
<

q, J(q)

q > U(q)
o J(q) est une matrice n n symtrique dnie positive. Les
quations dEuler Lagrange sont (cas conservatif autonome)
d
dt
_
L


q
_
=
L
q
.
Si on note [L] =
d
dt
_
L

q
_

L
q
alors pour un dplacement
innitsimal q, [L]q est le travail des forces extrieures non
prises en compte dans le potentiel U.
Exemple : le pendule n = 1, q
1
= ,

=
g
l
sin.
Les quations de Lagrange : cas non autonome
On a cette fois un Lagrangien L qui dpend du temps :
L(q,

q, t )
Les quations dEuler Lagrange restent les mmes :
d
dt
_
L


q
_
=
L
q
.
Exo: Montrer que le pendule de longueur variable l obit
d
dt
_
l
2
d
dt

_
= gl sin
o l peut tre considr comme un contrle ici.
Les quations de Lagrange : avec un contrle u
Les quations dEuler-Lagrange restent les mmes avec un
terme supplmentaire
d
dt
_
L


q
_
=
L
q
+ M(q)u.
o M(q) est une matrice n m et u = (u
1
, ..., u
m
).
Exemple : le robot le plus simple n = 1, q
1
= ,
d
2
dt
2
=
g
l
sin + u.
Les robots compltement actionns sont commandables
d
dt
_
L


q
_
=
L
q
+ M(q)u.
avec n = dimq = dimu et M(q) inversible.
Mthode du couple calcul : on impose q = y(t ) avec t y(t )
une fonction C
2
du temps pour en dduire une trajectoire
(q,
d
dt
q, u) = (y,
d
dt
y, v) o v est donn par
v = M(y)
1
_
d
dt
_
L


q
_

L
q
_
(y,
d
dt
y,
d
2
dt
2
y)
.
Les tats de dpart et darrive correspondent la valeur de
(y,
d
dt
y) au dpart et larrive.
Le suivi de trajectoire
Avec y
r
(t ) et la mthode du couple calcul on a une trajectoire
de rfrence (q
r
,
d
dt
q
r
, u
r
). Avec la forme dveloppe
J(q)
d
2
dt
2
q + C
_
q,
d
dt
q
_
d
dt
q + g(q) = M(q)u
le suivi de trajectoire scrit
u = [M(q)]
1
_
J(q) + C
_
q,
d
dt
q
_
d
dt
q + g(q)
_
o
d
2
dt
2
q = =
d
2
dt
2
q
r
2
0
_
d
dt
q
d
dt
q
r
_

2
0
(q q
r
)
Les paramtres ,
0
> 0 correspondent la frquence de
coupure et au facteur amortissement de la dynamique du
second ordre de lerreur e = q y
r
:
d
2
dt
2
e = 2
0
d
dt
e
2
0
e.
La balanoire
Exo: La dviation par rapport la verticale descendante dun pendule
ponctuel de longueur variable l obit
d
dt

l
2 d
dt

= gl sin . On pose
l = L(1 + u) avec 1 et u le contrle.
1. Justier lapproximation
d
dt
=
p

L
2
(1 2u),
d
dt
p

= gL(1 + u).
Monter quavec x
1
= , x
2
=
p

gL
et =

g/L, on a
d
dt
x
1
= x
2
(1 2u),
d
dt
x
2
= (1 + u)x
1
2. On passe en coordonne polaire x
1
= r cos , x
2
= r sin . Montrer que
dr
d
=
3
2
ur sin(2)
+

2
u(1 3 cos(2))
3. On considre le feedback u =
4
3
v sin(2) avec v lentement variable.
En dduire, lordre 1 en , quen moyenne on a :
dr
d
= vr .
4. Proposer alors un contrle v allant doscillations de petite amplitude
r = a > 0 vers des oscillations de plus grande amplitude r = b > a > 0.
Donner aussi un contrle lorsque 0 < b < a et tester le feedback
u = v sin(2) vous mme sur une balanoire.
Gnration de trajectoires et commandabilit.
Problme difcile en gnral car li lintgration de
d
dt
x = f (x, u(t )).
Commandabilit
d
dt
x = f (x, u), x R
n
, u R
m
On appelle trajectoire toute fonction rgulire
I t (x(t ), u(t )) R
n
R
m
qui satisfait identiquement sur un
intervalle dintrieur non vide I de R ces quations.
Le systme est dit commandable en temps T > 0, si et
seulement si, pour p, q R
n
, il existe une loi horaire
[0, T] t u(t ) R
m
, dite commande enboucle ouverte, qui
amne le systme de ltat x(0) = p ltat x(T) = q,
cest--dire telle que la solution du problme de Cauchy :
d
dt
x = f (x, u(t )) pour t [0, T], x(0) = p
vrie x(T) = q. Le systme est dit commandable lorsquil est
commandable pour au moins un temps T > 0.
Obstructions
De faon schmatique, il y a deux types dobstruction la
commandabilit :

le systme comporte un sous-systme indpendant du


contrle u. Exemple type avec = x
1
x
2
:
d
2
dt
2
x
1
= u x
1
,
d
2
dt
2
x
2
= u x
2

La drive de certaines variables est de signe constant


(typiquement non linaire). Exemple type :
d
dt
x
1
= x
2
,
d
dt
x
2
= u
2
0
On ne dispose pas lheure actuelle de caractrisation en
terme ni de la commandabilit mme si les composantes de f
sont des fonctions polynmiales de x et u (pb de dcidabilit).
Le suivi de trajectoire et stabilisation.
Pour
d
dt
x = f (x, u), calculer u, u = u
r
+ u, pour que
x = x x
r
tende vers 0.
Exo: Faire le schma bloc correspondant au suivi de
trajectoires en sparant bien les termes de feedback et ceux de
feedforward
Critre de Kalman
Dans le cas linaire stationnaire
d
dt
x = Ax + Bu, on sait tout.
La contrlabilit en temps T > 0 quivaut la contrlabilit en
un temps arbitrairement court et on a :
Thorme (critre de Kalman)
Le systme
d
dt
x = Ax + Bu est commandable si, et seulement
si, la matrice de commandabilit ( = (B, AB, . . . A
n1
B) est de
rang n = dim(x).
Pour abrger, on dit souvent que la paire (A, B) est
commandable, pour dire que le rang de la matrice de
commandabilit ( est maximum.
Equivalence par feedback statique rgulier

On dira que les systmes


d
dt
x = Ax +Bu et
d
dt
z = Fz +Gv
(x, z R
n
, u, v R
m
) sont quivalents si, et seulement si,
existent M, une matrice inversible n n, E, une matrice
mn et N, une matrice inversible mm, telles que le
changement de variable z = Mx et v = Ex + Nu dans les
quations
d
dt
x = Ax + Bu, donne
d
dt
z = Fz + Gv.

Gomtrie associ au groupe de transformations


_
z
v
_
=
_
M 0
E N
__
x
u
_

Intrt : prserve la commandabilit; si on sait aller dun


tat un autre avec
d
dt
x = Ax +Bu, on sait aussi aller dun
tat un autre pour tout systme quivalent
d
dt
z = Fz + Bv.
Thorme (forme de Brunovsky, cas mono-entre)
Si (B, AB, . . . A
n1
B), la matrice de commandabilit de
d
dt
x = Ax + Bu, est de rang n = dim(x) (B est de rang 1 ici)
alors il existe un changement dtat z = Mx (M matrice
inversible n n) et un bouclage statique rgulier v = Ex + Nu
(N rel non nul), tels que les quations du systme dans les
variables (z, v) admettent la forme suivante :
d
dt
z
1
= z
2
, . . . ,
d
dt
z
n1
= z
n
,
d
dt
z
n
= v
avec comme tat z = (z
1
, ..., z
n
).
Ainsi on a
d
n
dt
n
z
1
= v = y
(n)
o y = z
1
= Cx, avec C bien
choisie, est la sortie dite de Brunovsky.
Calcul de la sortie de Brunovsky pour n = 1, 2.

d
dt
x = ax + bu : avec z = x et v = ax + bu on a
d
dt
z = v.

n = 2 : llimination de u entre les deux quations (b


1
,= 0)
d
dt
x
1
= a
11
x
1
+ a
12
x
2
+ b
1
u
d
dt
x
2
= a
21
x
1
+ a
22
x
2
+ b
2
u
montre que
d
dt
_
x
2

b
2
b
1
x
1
_
est une fonction de x
uniquement. On se ramne n = 1 avec comme contrle
x
1
et comme tat y = x
2

b
2
b
1
x
1
, la sortie de Brunovsky.
Calcul de la sortie de Brunovsky pour n = 3.

Llimination de u des trois quations (b


1
,= 0)
d
dt
x
1
= a
11
x
1
+ a
12
x
2
+ a
13
x
3
+ b
1
u
d
dt
x
2
= a
21
x
1
+ a
22
x
2
+ a
23
x
3
+ b
2
u
d
dt
x
3
= a
31
x
1
+ a
32
x
2
+ a
33
x
3
+ b
3
u
montre que
d
dt
_
x
2

b
2
b
1
x
1
_
et
d
dt
_
x
3

b
3
b
1
x
1
_
ne dpendent
que de x (pas de u).

On se ramne n = 2 avec comme contrle x


1
et comme
tat
_
x
2

b
2
b
1
x
1
, x
3

b
3
b
1
x
1
_
= (X
2
, X
3
).

On limine x
1
des deux quations
d
dt
X
2
= . . .,
d
dt
X
3
= . . .,
pour obtenir une seule quation diffrentielle o la variable
qui est drive est la sortie de Brunovsky.
Planication sur la forme normale
On part de y
(n)
= v. Ltat initial p corresponds
(y(0), . . . , y
(n1)
(0)), et ltat nale q (y(T), . . . , y
(n1)
(T)).
Sur ]0, T[, y est libre pourvu que t y(t ) soit une fonction
KC
n
. Il suft de prendre v = y
(n)
(t ).
Il existe une innit de fonctions t y(t ) qui satisfont ces
conditions. Par exemple on peut prendre un polynme de degr
2n 1.
Si on suppose que p et q sont des tats stationnaires alors
y
(i )
(0, T) = 0 pour i = 1, . . . , n 1. En notant a = y(0) et
b = y(T), on peut prendre
y(t ) =
_

_
a, si t 0
(Tt )
n
t
n
+(Tt )
n
a +
(t )
n
t
n
+(Tt )
n
b, si 0 t T
b, si T t
Planication dans les coordonnes de dpart
Les donnes sont un systme commandable
d
dt
x = Ax + Bu,
T, p = x(0) et q = x(T).
On passe par la forme de Brunovsky y
(n)
= v, avec
_
_
_
x
1
.
.
.
x
n
_
_
_
= M
1
_
_
_
y
.
.
.
y
(n1)
_
_
_
, u = N
1
y
(n)
N
1
EM
1
_
_
_
y
.
.
.
y
(n1)
_
_
_
On en dduit la condition initiale et nale pour (y, ..., y
(n1)
) ; on
choisit la courbe KC
n
, t y(t ) ; on en dduire alors t u(t )
comme une combinaison linaire de (y(t ), ..., y
(n1)
(t )). On a
mme en prime la trajectoire sur t x(t ) sans intgrer
lquation
d
dt
x = Ax + Bu(t ).
Suivi de trajectoires
La planication de trajectoire donne une trajectoire de
rfrence t (x
r
, u
r
) qui vrie les quations
d
dt
x
r
= Ax
r
+Bu
r
.
Si on note x = x x
r
et u = u u
r
, on a comme
dynamique derreur
d
dt
x = A x + B u.
On cherche un feedback u = Kx tel que le systme boucl
d
dt
x = (A + BK) x soit asymptotiquement stable.
Thorme (placement de ples)
Si la paire (A, B) est commandable alors, pour toute matrice
n n relle F, il existe une matrice mn, K (non
ncessairement unique si dim(u) = m > 1), telle que le spectre
de A + BK concide avec celui de F.
Placement de ples sur la forme normale
Il suft de rsoudre la placement de ple sur la forme de
Brunovsky (z, v) (le retour aux variables (x, u) : un changement
de variables sur z = Mx (ce qui ne change pas le spectre) et
un feedback supplmentaire v = Ex + Nu pour avoir u).
On part de y
(n)
= v et on note
1
, . . . ,
n
le spectre dune
matrice relle de dimension n. Notons s
k
les fonctions
symtriques des
i
(des quantits relles donc) homognes de
degr k,
n

k=1
(X
k
) = X
n
s
1
X
n1
+ s
2
X
n2
+ . . . + (1)
n
s
n
Alors, ds que les
k
sont partie relle strictement ngative,
le bouclage
v = s
1
y
(n1)
s
2
y
(n2)
+ . . . + (1)
n1
s
n
y
assure la stabilit de y
(n)
= v.
Thorme (forme de Brunovsky, cas multi-entres)
Si (B, AB, . . . A
n1
B), la matrice de commandabilit de
d
dt
x = Ax + Bu, est de rang n = dim(x) et si B est de rang
m = dim(u), alors il existe un changement dtat z = Mx (M
matrice inversible n n) et un bouclage statique rgulier
u = Ex + Nv (N matrice inversible mm), tels que les
quations du systme dans les variables (z, v) admettent la
forme suivante (criture sous la forme de m quations
diffrentielles dordre 1) :
y
(
1
)
1
= v
1
, . . . , y
(
m
)
m
= v
m
avec comme tat
z = (y
1
, y
(1)
1
, . . . , y
(
1
1)
1
, . . . , y
m
, y
(1)
m
, . . . , y
(
m
1)
m
), les
i
tant des entiers positifs (
1
+ . . . +
m
= n).
Les m quantits y, qui sont des combinaisons linaires de ltat
x, sont appeles sorties de Brunovsky.
Observateur/Contrleur sur le quadri-rotor 2D
Modle mcanique simpli :
d
2
dt
2
x = u
1
sin
d
2
dt
2
z = u
1
cos g
d
2
dt
2
= u
2
.
Le modle en vitesse :
d
dt
v
x
= u
1
sin,
d
dt
v
z
= u
1
cos g,
d
2
dt
2
= u
2
.
Tout ltat est mesur :

la camra qui regarde le sol donne v


x

le sonar qui regarde le sol donne v


z

la centrale inertielle donne et aussi v

=
d
dt
.
Synthse du feedback de suivi en supposant [[ 1
Le modle aux petits angles avec x = (v
z
, v
x
, , v

) :
d
dt
v
z
= u
1
g,
d
dt
v
x
= g,
d
dt
= v

,
d
dt
v

= u
2
.
On souhaite suivre la trajectoire de rfrence
t (

x,

u) = (

v
z
,

v
x
,

,

v

,

u
1
,

u
2
) :

u
1
=

u
1

v
z

v
z
T
z
avec T
z
> 0 assure le suivi en vertical
avec
d
dt
(v
z

v
z
) =
v
z

v
z
T
z
.

u
2
=

u
2
+
s
1
(gv

v
x
)
g
+
s
2
(g

v
x
)
g
+
s
3
(v
x

v
x
)
g
avec
X
3
+s
1
X
2
+s
2
X +s
3
polynme ayant toutes ces racines
parties relles < 0 assure le suivi horizontal avec
d
3
dt
3
(v
x

v
x
)+s
1
d
2
dt
2
(v
x

v
x
)+s
2
d
dt
(v
x

v
x
)+s
3
(v
x

v
x
) = 0.
Gnration temps-rel de la trajectoire de rfrence t (

x,

u)
On part de deux signaux bornes t (v
c
z
, v
c
x
) (consignes
continues par morceaux sur (v
z
, v
x
), les deux sorties de
Brunovsky). On les rgularise via les ltres passe-bas (s =
d
dt
est la variable de Laplace) :

v
z
=
1
P
z
(s)
v
c
z
,

v
x
=
1
P
x
(s)
v
c
x
o P
z
(s) (resp. P
x
(s)) est un polynme en s avec racines
stables de degr 2 (resp. 4) vriant P
z
(0) = 1 (resp.
P
x
(0) = 1). On peut prendre par exemple P
z
(s) =
s
2

2
+2
s

+1
et P
x
(s) = P
z
(s)
2
(, > 0 paramtres de rglage du ltre).
Alors la trajectoire de rfrence sur ltat

x = (

v
z
,

v
x
,

v
x
/g,

v
x
/g)
est C
1
en temps et sur le contrle

u = (

v
z
+ g,

v
(3)
x
/g)
est continu en temps.
Oscillateurs en parallle et systmes linaires
Le systme de 2 quations 3 variables (x
1
, x
2
, u) (a
1
, a
2
> 0 et
a
1
,= a
2
)
d
2
dt
2
x
1
= a
1
(x
1
u),
d
2
dt
2
x
2
= a
2
(x
2
u)
dnit une module libre de base y =
a
2
x
1
a
1
x
2
a
2
a
1
:
_

_
x
1
= y +
d
2
dt
2
y/a
2
,
d
dt
x
1
=
d
dt
y +
d
3
y
dt
3
/a
2
x
2
= y +
d
2
dt
2
y/a
1
,
d
dt
x
2
=
d
dt
y +
d
3
y
dt
3
/a
1
u = y +
_
1
a
1
+
1
a
2
_
d
2
dt
2
y +
_
1
a
1
a
2
_
d
4
dt
4
y
Trajectoire de rfrence allant de lquilibre x
1
= x
2
= u = 0 en
t = 0 lquilibre x
1
= x
2
= u = D en t = T > 0 :
y(t ) = 0 si t 0,
(t )
4
t
4
+ (T t )
4
D si t [0, T], D si t T.
Exo: Gnraliser ce calcul pour n oscillateurs en parallle,
d
2
dt
2
x
i
= a
i
(x
i
u), i = 1, . . . , n (a
i
> 0 et a
i
,= a
j
si i ,= j ).
La linarisation par bouclage statique
Pour
d
dt
x = f (x, u), trouver le changement de variable sur x et
le bouclage statique rgulier sur u
_
x
u
_

_
z = (x)
v = k(x, u)
_
tels que les quations deviennent linaires (systme linaire
commandable, voir transparent prcdent) :
d
dt
z = Az + Bv
On parle alors de systme linarisable par bouclage statique.
Pour les robots compltement actionns, on se ramne par
simple bouclage (sans changement dtat) la forme de
Brunovsky
d
2
dt
2
q = v.
Un rsultat simple sur la linarisation par bouclage statique
Les deux propositions suivantes sont quivalentes
1. Le systme tendu :
_

_
d
dt
x = f (x, u)
d
dt
u = v
est linarisable par bouclage statique (v est ici la
commande)
2. Le systme :
d
dt
x = f (x, u)
est linarisable par bouclage statique.
Systme afne en contrle
d
dt
x = f (x) + g
1
(x)u
1
+ . . . + g
m
(x)u
m
o f et les g
i
sont des champs de vecteurs.
On dnit une suite de distributions, suite croissante pour
linclusion, par la rcurrence suivante :
E
0
= g
1
, . . . , g
m
, E
i
= E
i 1
, [f , E
i 1
] i 1
o [f , g] est le crochet de Lie de deux champs de vecteurs. Ces
distributions et le crochet sont invariants par changement de
coordonnes.
Le crochet [f , g] correspond Df .g Dg.f :

j
_
f
i
x
j
g
j

g
i
x
j
f
j
_
.
Calcul diffrentiel intrinsque, i.e., indpendant du choix des
coordonnes locales x.
La CNS de linarisation par bouclage statique
Thorme de Jakubczyk et Respondek (1980) : autour de
lquilibre (x, u) = (0, 0), le systme
d
dt
x = f (x) + g
1
(x)u
1
+ . . . + g
m
(x)u
m
est linarisable par bouclage statique rgulier si, et seulement
si, les distributions E
i
, i = 1, . . . , n 1 dnies ci-dessus sont
involutives, cest dire stables par le crochet de Lie, de rang
constant autour de x = 0 et le rang de E
n1
vaut n, la
dimension de x.
Gilet stabilisateur en plonge autonome
Exo:
La dynamique verticale dun plongeur quip dun gilet stabilisateur
pilot par le dbit de gaz u est
m
d
2
dt
2
h =
_
m
_
V
0
+
N
g
R
p
0
+ h
__
g C
d
dt
h,
d
dt
N
g
= u
o C 0 est le coefcient de frottement avec leau, R la constante
des gaz parfaits et la temprature.
Gilet stabilisateur en plonge autonome (n)
Exo:
1. Discuter ce modle et expliquer lorigine des quations.
Pourquoi est-il important davoir m > V
0
(ce que lon supposera
dans toute la suite) ?
2. On suppose ici u = 0. Quels sont les points dquilibre et tudier
leur stabilit.
3. Montrer quavec le bouclage u = (v N
g
)/ avec > 0 petit on
se ramne un second ordre avec comme commande v.
Comment choisir en fonction des paramtres.
4. Calculer une commande en boucle ouverte [0, T] t v
r
(t ) et
une trajectoire de rfrence [0, T] t h
r
(t ) qui assurent la
transition entre les deux dquilibres h = a > 0 et h = b > 0.
Discuter en fonction de T la faisabilit de cette trajectoire de
rfrence sachant que v doit rester positif.
5. Donner le bouclage non-linaire dtat qui met le systme sous
la forme
d
2
dt
2
h = w o w est un nouveau contrle. En dduire le
bouclage de suivi de la trajectoire de rfrence (h
r
, v
r
).
Systmes plats : une dnition lmentaire (FLMR, 1992,. . . ,1999)
Le systme explicite dtat
d
dt
x = f (x, u)
est plat, ssi, il existe m = dim(u) fonctions de sortie
y = h(x, u, . . . , u
(p)
), dim(h) = dim(u), telle que linverse du systme
u y soit sans dynamique. Cela signie simplement que la solution
de
d
dt
x = f (x, u), y = h(x, u, . . . , u
(p)
)
o t y(t ) est la donne et (x, u) est linconnue scrit
x =
_
y,

y, . . . , y
(q)
_
, u =
_
y,

y, . . . , y
(q+1)
_
.
La sortie y est appele sortie plate.
Exo: Montrer que le robot "E=M6"
d
dt
x
1
=
u
1
+ u
2
2
cos x
3
,
d
dt
x
2
=
u
1
+ u
2
2
sinx
3
,
d
dt
x
3
=
u
2
u
1
p
admet (x
1
, x
2
) comme sortie plate (p > est une longueur).
Inversion et algorithme de structure
_

_
d
dt
x
1
= x
1
x
2
+ u
1
d
dt
x
2
= x
1
x
2
+ x
3
+ u
1
d
dt
x
3
= x
3
+ x
4
+ u
2
d
dt
x
4
= x
3
x
4
+ x
4
+ u
2
y
1
= x
1
y
2
= x
2
Inversion du systme
d
dt
x = f (x, u) et
y = h(x) avec dimy = dimu (u est
lentre et y la sortie).
On suppose t y(t ) donn. On
cherche calculer x et u. Le principe :
les drives successives de y(t ) =
h(x) donnent des quations reliant x
et u.
Le critre des varits rgles (R.1994)
Si on limine u des n = dimx quations dtat
d
dt
x = f (x, u) on
obtient un systme sous-dtermin de n m quations
diffrentielles et n inconnues x (systme implicite
sous-dtermin) : F
_
x,
d
dt
x
_
= 0.
Critre des varits rgles : si F
_
x,
d
dt
x
_
= 0 est plat, alors
pour tout (x, p) tel que F(x, p) = 0, existe a ,= 0 tel que, pour
tout R, F(x, p + a) = 0.
Caractrisation pour dimF = dimx 1 (systme un seul
contrle) : la CNS de linarisation par bouclage statique (les
seules varits rgles de dimension 1 sont des droites).
Exo: Sous quelle(s) condition(s) sur le paramtre , le systme
d
dt
x
1
= u
1
,
d
dt
x
2
= u
2
,
d
dt
x
3
= (u
1
)
2
(u
2
)
2
vrie-t-il le critre des varits rgles. Quand ces conditions
sont satisfaites, montrer que le systme est alors effectivement
plat en exhibant une sortie plate.
Un peu dhistoire

Monge (1784) montre que la solution gnrale de lquation du


premier ordre (quation qui porte son nom)
dy
dx
= F
_
x, y, z,
dz
dx
_
sexprime via une fonction arbitraire dune variable et de ses
drives jusqu lordre 2. Monge dit que le systme est
intgrable bien quil soit sous-dtermin. Exemple :
dy
dx
= x
dz
dx
avec y = w(z) et x = w

(z).

Hilbert (1912) se demandait si la solution gnrale de lquation


de Monge du second ordre
d
2
y
d
2
x
= F
_
x, y, z,
dy
dx
,
dz
dx
_
sexprime
sans intgrale comme celle de lquation du premier ordre. Il
montre quen gnral ce nest pas le cas et que ce problme est
li la classication des systmes sous-dtermins via un
groupe de transformations inversibles et sans intgrale. Il
propose une analogie suggestive avec la classication des
varits algbriques via le groupe des transformations
bi-rationnelles.
Vhicule n remorques

Roulement sans glissement :


la vitesse de chaque P
i
est
parallle la direction
i
de la
remorque i de longueur
d
i
> 0.

P
0
de coordonnes
cartesiennes (x
0
, y
0
) ; les
deux contrles scalaires sont
v la vitesse et langle de
braquage.
d
dt
x
0
= v cos
0
,
d
dt
y
0
= v sin
0
,
d
dt

0
=
v
d
0
tan =
d
dt

i
=
v
d
i
_
_
i 1

j =1
cos(
j 1

j
)
_
_
sin(
i 1

i
) (i = 1, . . . , n),
Sortie plate : P
n
; preuve uniquement avec un dessin et les
formules de Frnet.
La construction gomtrique
P
n1
= P
n
+ d
n
dP
n
ds
n

Invariance par rapport au groupe SE(2).

Sortie plate non unique : ( = x


n
, = y
n
+
d
dt
x
n
) est une
autre sortie plate car x
n
= et y
n
=
d
dt
.

La sortie plate (x
n
, y
n
) forme par les coordonnes
cartsiennes de P
n
est plus naturelle que (, ). Elle
repose sur une fonction de sortie h quivariante.
Le robot jongleur 2k : prototype de systmes implicites et plats
equivalent
to
S
S
H
mg
mg
Dynamique du pendule ponctuel H
isochrone de Huygens :
m
d
2
dt
2
H =

T + m

T //

HS
|

HS|
2
= l

Le point de suspension S R
3
est le contrle

Le centre doscillation H R
3
est la sortie plate : comme

T/m =
d
2
dt
2
H

g et

T //

HS, S est solution du systme


algbrique suivant :

HS //
d
2
dt
2
H

g et |

HS|
2
= l .
Cinmatique de la voiture
P
_

_
d
dt
x = v cos
d
dt
y = v sin
d
dt
=
v
l
tan =
_

_
v = |
d
dt
P|
_
cos
sin
_
=
d
dt
P
v
tan =
l det(

P,

P)
v

|v|
Symtrie par changement dchelle de temps
Pour tout changement dchelle de temps T (T), la
transformation
t = (T), (x, y, ) = (X, Y, ), (v, ) = (V, )/

(T)
laisse les quations
d
dt
x = v cos ,
d
dt
y = v sin,
d
dt
=
inchanges :
d
dT
X = V cos ,
d
dT
Y = V sin,
d
dT
= .
Prototype dinvariance dun systme par rapport un groupe
de transformations.
Le groupe des dplacement du plan SE(2), comme groupe de
symtries
Pour tout (a, b, ), la transformation
_
x
y
_
=
_
X cos Y sin + a
X sin + Y cos + b
_
, = , (v, ) = (V, )
laisse les quations
d
dt
x = v cos ,
d
dt
y = v sin,
d
dt
=
inchanges :
d
dt
X = V cos ,
d
dt
Y = V sin,
d
dt
= .
Il faut que notre mthode de contrle prserve cette invariance.
Le suivi de trajectoire invariant
translation
+ rotation
Le contrleur ne doit pas dpendre des origines prises pour les
positions et pour lorientation : la dynamique par rapport la
trajectoires de rfrence doit tre indpendante de ce choix
dorigines.
Construction du suivi invariant
Soit une trajectoire de rfrence dcrite ainsi (s
r
est labscisse
curviligne)
t s
r
P
r
(s
r
),
r
(s
r
), v
r
=
d
dt
s
r
,
r
=
d
dt
s
r

r
(s
r
)
et ltat actuel de la voiture (P, )
Trouver des corrections invariantes
v = v
r
+ . . . , =
r
+ . . .
de sorte que P P
r
quand t augmente.
Invariance par changement dchelle de temps
On pose
v =

v
d
dt
s
r
, =
d
dt
s
r
avec

pour la drive par rapport s
r
.
Les quations restent les mmes
P

=

v ,

=
avec P = (x, y), = (cos , sin) et = (sin, cos ).
Les erreurs invariantes
On construit le bouclage de suivi en utilisant des techniques de
dcouplage entre/sortie avec comme sorties les deux erreurs
suivantes :
e

= (P P
r
)
r
, e

= (P P
r
)
r
et comme les entres

v et .
Calcul des drives de e

et e

Comme e

= (P P
r
)
r
et e

= (P P
r
)
r
on a (avec

= d/ds
r
)
e

= (P

r
)
r
+ (P P
r
)

r
.
Mais P

=

v, P

r
=
r
et

r
=
r

r
, donc
e

=

v
r
1 +
r
(P P
r
)
r
.
De mme pour e

on a :
e

=

v cos(
r
) 1 +
r
e

, e

=

v sin(
r
)
r
e

.
Calcul approch pour e

avec
r
Comme e



v 1 +
r
e

, le bouclage

v = 1
r
e

/L

avec L

le gain qui est ici une longueur choisir du mme ordre


que celle de la voiture, conduit, pour e

une dynamique
exponentiellement stable en boucle ferme :
e

= e

/L

Calcul approch pour e

avec
r
, e

0 et

v 1
Comme e

(
r
), il faut driver une fois de plus pour voir
apparatre lautre contrle =

. A des termes dordre 2 prs,


on a donc
e

(
r
)
Alors le bouclage (les gains et 1/ sont autour de 1 et de la
dimension de la voiture)
=
r
2e

2
e

assure une dynamique du second ordre linaire et


exponentiellement stable pour e

= 2e

2
e

Les calculs rigoureux


La drivation de
e

=

v cos(
r
) 1 +
r
e

, e

=

v sin(
r
)
r
e

par rapport s
r
donne
e

=

v

cos(
r
)

v sin(
r
)
+ 2
r

v sin(
r
) +

r
e

2
r
e

=

v

sin(
r
) +

v cos(
r
)
2
r

v cos(
r
)

r
e

+
r
+
2
r
e

.
Le feedback dynamique en chelle s
r
On a
e

=

v

cos(
r
)

v sin(
r
) + W

=

v

sin(
r
) +

v cos(
r
) + W

On choisit

v

et de sorte que
e

=
_
1
L
1

+
1
L
2

_
e

_
1
L
1

L
2

_
e

=
_
1
L
1

+
1
L
2

_
e

_
1
L
1

L
2

_
e

Cest possible pour une large plage autour de la trajectoire de


rfrence car

v 1.
Le feedback dynamique en chelle t
En chelle s
r
on a

= (

v, P, P
r
, ,
r
,
r
,

r
)
= (

v, P, P
r
, ,
r
,
r
,

r
)
Comme

= d/ds
r
= d/(
d
dt
s
r
dt ) on a
d

v
dt
= (

v, P, P
r
, ,
r
,
r
,

r
)

s
r
(t )
= (

v, P, P
r
, ,
r
,
r
,

r
)
avec
v =

v
d
dt
s
r
(t ), tan =
l

v
Rien nexplose pour
d
dt
s
r
(t ) proche de 0 : une utilisation de
linvariance par chelle de temps.
Rfrences utiles

EDO, systmes plans, et rgulateurs (trs pdagogique et pourtant


dun excellent niveau) A. Andronov, S. Khaikin and A. Vitt : Theory of
Oscillators. Dover (English Translation), 1987.

la BD des systmes dynamiques en 4 volumes (que des portraits de


phases et des dessins) : R.H. Abraham and C.D. Shaw. Dynamics The
Geometry of Behavior : I-IV. Aerial Press, Santa Cruz, California, 1981.

Systmes dynamiques (trs bonne introduction aux EDO) V. Arnold :


Equations diffrentielles ordinaires. Mir Moscou, 1974.

Bifurcation, thorie des perturbations et KAM (trs avanc) V. Arnold :


Chapitres Supplmentaires de la Thorie des Equations Diffrentielles
Ordinaires. Mir Moscou, 1980.

Idem ci-dessus : J. Guckenheimer and P. Holmes : Nonlinear


Oscillations, Dynamical Systems and Bifurcations of Vector Fields.
Springer, New York, 1983.

Contrle non linaire, Lyapounov et Robotique : J. Slotine et J. Li :


Applied Nonlinear Control. Prentice Hall, Englewood Cliffs, 1991.

Contrle non linaire (une partie importante sur les EDO, la stabilit et
les systmes lents/rapides) : H. Khalil : Nonlinear Systems. MacMillan,
1992.
Rfrences utiles (suite et n)

Equations de Lagrange L. Landau, E. Lifchitz : Physique thorique :


Mcanique, tome I. Mir-Moscou, 1964.

em Systmes linaires et formes de Brunovsky F. Bonnans et P.


Rouchon : Commande et optimisation de systmes dynamiques. 2005.

Systmes diffrentiellements plats (dimension nie et innie) : Ph.


Martin et P. Rouchon : Systmes plats, planication et suivi de
trajectoires, Notes, Journes X-UPS,1999. Cours tlchargeable
ladresse : http://math.polytechnique.fr/xups/vol99.html

Sur la page web http ://cas.ensmp.fr/~rouchon/index.html on


trouvera pour ce cours des documents tl-charger.