Cours EDSYS - Commande Adaptative
Commande adaptative directe basee sur la passivite
Dimitri PEAUCELLE - LAAS-CNRS - Universite de Toulouse
Toulouse Mai 2011
Introduction
n Commande adaptative - Sequencement de gain
wc
uy
θδ
cΣ (θ )
θ
c
c
Σ(θ,δ)y
n Commande adaptative indirecte
w
cθ,δ
cΣ (θ ) Σ(θ,δ)c
yc
u y
θ,δ
θ
Cours EDSYS - Commande adaptative 1 May 2011, Toulouse
Introduction
n Commande adaptative indirecte
w
cθ,δ
cΣ (θ ) Σ(θ,δ)c
yc
u y
θ,δ
θ
n Commande adaptative directe
wc
u y
θ,δ
cΣ (θ )
θc
Σ(θ,δ)c
y
Cours EDSYS - Commande adaptative 2 May 2011, Toulouse
Introduction
n Commande adaptative directe
wc
u y
θ,δ
cΣ (θ )
θc
Σ(θ,δ)c
y
n Commande adaptative a modele de reference - MRAC
w
m
+−
cΣ (θ )
θc y
Σ
θ,δy
e
Σ(θ,δ)c
yc
u
m
Cours EDSYS - Commande adaptative 3 May 2011, Toulouse
Plan
Ê MRAC dans le cas SISO et regle du MIT
s Basee sur probleme de regulation a 2 degres de liberte (RST)
s Methode de gradient issue des techniques d’estimation
s Regle heuristique
Ë Stabilisation par PBAC - le cas MIMO
s Hypotheses de type passivite sur les systemes
s Preuves de stabilite avec theorie de Lyapunov
Ì PBMRAC
Í Cas des systemes non passifiables
Cours EDSYS - Commande adaptative 4 May 2011, Toulouse
Ê MRAC dans le cas SISO et regle du MIT
n Commande a deux degres de liberte pour les systemes lineaires
l Hypotheses
s Systeme a commander SISO, LTI : y = BAu
s B = B+B− peut contenir zeros instables ou mal amortis : B−
s Modele de reference : ym = Bm
Amuc
s avec Bm = B−B′m et degAm − degBm ≥ degA− degB
l Loi de commande : u = TRuc − S
Ry
s Solution des equations (dont equation Diophantine, ou Bezout)
R = B+R1 , AR1 +B−S = AoAm , T = AoB′m
s ou Ao est un polynome a racines stables (rapides)
degAo ≥ 2 degA− degAm − degB+ − 1
l Defauts : A,B connues & contraintes sur Am, Bm
Cours EDSYS - Commande adaptative 5 May 2011, Toulouse
Ê MRAC dans le cas SISO et regle du MIT
n Commande adaptative pour regler les coefficients de R, S, T
R(s) = sq + rq−1sq−1 + . . . r1s+ r0,
S(s) = sqsq + . . . s1s+ s0, T (s) = tqs
q + . . . t1s+ t0
l Parametres de commande
θc =(rq−1 · · · r0 sq · · · s0 tq · · · t0
)s Commande adaptative : ajuster les θci pour avoir y = ym
s Choix d’un cout a minimiser :
J1 = |e|, J2 =1
2e2...
ou e = y − ym
Cours EDSYS - Commande adaptative 6 May 2011, Toulouse
Ê MRAC dans le cas SISO et regle du MIT
l Methode du gradient pour minimiser les parametres de commande :
dθcidt
= −γ ∂J∂θci
s Pour J2 on trouvedθcidt
= −γe ∂e∂θci
s Pour J1 on trouvedθcidt
= −γsign(e)∂e
∂θci
s Parfois on prend aussidθcidt
= −γsign(e)sign
(∂e
∂θci
)
l Connaıtre en temps reel∂e
∂θci?
Cours EDSYS - Commande adaptative 7 May 2011, Toulouse
Ê MRAC dans le cas SISO et regle du MIT
u =T
Ruc −
S
Ry , y =
B
Au , ym =
Bm
Amuc
l L’erreur verifie l’equation e =
(TB
RA+BS− Bm
Am
)uc
s Derivee partielle vis-a-vis des coefficients de T :∂e
∂ti=
siB
RA+BSuc
s Derivee partielle vis-a-vis des coefficients de S :
∂e
∂si= − siBTB
(RA+BS)2uc = − siB
RA+BSy
s Derivee partielle vis-a-vis des coefficients de R :
∂e
∂ri= − siBTA
(RA+BS)2uc = − siB
RA+BSu
l Probleme : A,B inconnues
Cours EDSYS - Commande adaptative 8 May 2011, Toulouse
Ê MRAC dans le cas SISO et regle du MIT
l Regle du MIT :
s Supposons que R, S ont converge vers valeur ideale :
B
RA+BS=
B+B−
B+(R1A+B−S)' B−
AoAm
s Supposons que le systeme n’a pas de zeros instables : B− = 1
l Les derivees partielles de l’erreur vis-a-vis des parametres sont alors
∂e
∂ti=
si
AoAmuc ,
∂e
∂si= − si
AoAmy ,
∂e
∂ri= − si
AoAmu
l Les regles d’adaptation sont realisable a l’aide de filtres et d’integrateurs
s Exemple pour cout J2 :
dsidt
= γesi
AoAmy +
− εm
i
si
Σ(θ,δ)
yθ,δ
*γs
y
Σ
A Aso m
m
Cours EDSYS - Commande adaptative 9 May 2011, Toulouse
Ê MRAC dans le cas SISO et regle du MIT
l Remarques :
s Resultat est heuristique : pas de garantie (ni suivi de reference, ni stabilite)
s Si l’ordre du systeme est inconnu :
choisir Ao et degres de R, S et T intuitivement
s Stabilite implique convergence de e = y − yms Aucune indication sur la convergence des gains du correcteur
Cours EDSYS - Commande adaptative 10 May 2011, Toulouse
Ê MRAC dans le cas SISO et regle du MIT
n Exemple : moteur a courant continu
−++
−
uc e
mG
kIs+f
ωω
l Boucle de regulationS
R=
s0
s+ r0, Precommande
T
R=
t0s+ r0
+−− 1
s
u
ω
cω t
s
r
o
o
o
so = γe[ 1Amω]
to = −γe[ 1Amωc]
ro = γe[ 1Amu]
Cours EDSYS - Commande adaptative 11 May 2011, Toulouse
Ê MRAC dans le cas SISO et regle du MIT
n Exemple : moteur a courant continu - Simulations
lG(s) = 1s+1
, Gm(s) = 6s2+5s+6
, γ = 0.6,
l ωc(t) creneau de periode 20s, valeur max = 0.375, valeur min = −0.125
0 20 40 60 80 100 120 140 160 180 200 220
−0.1
0
0.1
0.2
0.3
0.4
0.5
s Relativement bonne convergence
Cours EDSYS - Commande adaptative 12 May 2011, Toulouse
Ê MRAC dans le cas SISO et regle du MIT
n Exemple : moteur a courant continu - Simulations
lG(s) = 10(s+0.8)(s+8)
, Gm(s) = 6s2+5s+6
, γ = 0.6,
l ωc(t) creneau de periode 20s, valeur max = 0.375, valeur min = −0.125
0 20 40 60 80 100 120 140 160−0.2
−0.1
0
0.1
0.2
0.3
0.4
0.5
0.6
s Parait robuste
Cours EDSYS - Commande adaptative 13 May 2011, Toulouse
Ê MRAC dans le cas SISO et regle du MIT
n Exemple : moteur a courant continu - Simulations
lG(s) = 10(s+0.8)(s+8)
, Gm(s) = 6s2+5s+6
, γ = 0.6,
l ωc(t) creneau de periode 20s, valeur max = 0.375, valeur min = −0.125
0 20 40 60 80 100 120 140 160
0
0.05
0.1
0.15
0.2
0.25
0.3
0.35
0.4
t0
s0
r0
s Convergence lente (deux periodes) - augmenter γ pour accelerer
Cours EDSYS - Commande adaptative 14 May 2011, Toulouse
Ê MRAC dans le cas SISO et regle du MIT
n Exemple : moteur a courant continu - Simulations
lG(s) = 10(s+0.8)(s+8)
, Gm(s) = 6s2+5s+6
, γ = 6,
l ωc(t) creneau de periode 20s, valeur max = 0.375, valeur min = −0.125
0 20 40 60 80 100 120 140 160
0
0.2
0.4
0.6
0.8
1
t0
s0
r0
s Les gains sont rapidement plus grands (et tres differents...)
Cours EDSYS - Commande adaptative 15 May 2011, Toulouse
Ê MRAC dans le cas SISO et regle du MIT
n Exemple : moteur a courant continu - Simulations
lG(s) = 10(s+0.8)(s+8)
, Gm(s) = 6s2+5s+6
, γ = 6,
l ωc(t) creneau de periode 20s, valeur max = 0.375, valeur min = −0.125
0 20 40 60 80 100 120 140 160
−0.2
−0.1
0
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
ω
ωm
s Le transitoire (avant convergence des gains adaptatifs)
plus court, mais avec fort depassement
Cours EDSYS - Commande adaptative 16 May 2011, Toulouse
Ê MRAC dans le cas SISO et regle du MIT
n Exemple : moteur a courant continu - Simulations
lG(s) = 10(s+0.8)(s+8)
, Gm(s) = 6s2+5s+6
, γ = 60,
l ωc(t) creneau de periode 20s, valeur max = 0.375, valeur min = −0.125
0 10 20 30 40 50 60 70 80 90 100−0.2
0
0.2
0.4
0.6
0.8
1
ω
ωm
s Le transitoire tres court, mais avec fort depassement
s Suivi de reference parfait une fois que les gains ont converge
Cours EDSYS - Commande adaptative 17 May 2011, Toulouse
Ê MRAC dans le cas SISO et regle du MIT
n Exemple : moteur a courant continu - Simulations
lG(s) = 10(s+0.8)(s+8)
, Gm(s) = 6s2+5s+6
, γ = 60,
l ωc(t) creneau de periode 20s, valeur max = 0.375, valeur min = −0.125
0 10 20 30 40 50 60 70 80 90 100
−1
0
1
2
3
4
5
6
t0
s0
r0
s Les gains semblent vraiment converger
Cours EDSYS - Commande adaptative 18 May 2011, Toulouse
Ê MRAC dans le cas SISO et regle du MIT
n Exemple : moteur a courant continu - Simulations
lG(s) = 10(s+0.8)(s+8)
, Gm(s) = 6s2+5s+6
, γ = 60,
l ωc(t) creneau de periode 20s, valeur max = 0.075, valeur min = −0.025
0 50 100 150
−0.04
−0.02
0
0.02
0.04
0.06
0.08
0.1
0.12
0.14
0.16
ω
ωm
s L’amplitude de l’erreur etant faible, la convergence est lente
s Possibilite pour eviter ces phenomenes : adapter γ
Cours EDSYS - Commande adaptative 19 May 2011, Toulouse
Ê MRAC dans le cas SISO et regle du MIT
n Exemple : moteur a courant continu - Simulations
lG(s) = 10(s2+s+1)
, Gm(s) = 6s2+5s+6
, γ = 60,
l ωc(t) creneau de periode 20s, valeur max = 0.375, valeur min = −0.125
0 10 20 30 40 50 60 70 80 90 100−1
0
1
2
3
4
5
ω
ωm
s Ce n’est quand meme pas parfait pour tout systeme
s Degres du regulateur RST sous hypothese d’un systeme du 1er ordre
Cours EDSYS - Commande adaptative 20 May 2011, Toulouse
Ê MRAC dans le cas SISO et regle du MIT
n Exemple : moteur a courant continu - Simulations
lG(s) = −1.1s+10(s2+s+1)
, Gm(s) = 6s2+5s+6
, γ = 60,
l ωc(t) creneau de periode 20s, valeur max = 0.375, valeur min = −0.125
200 220 240 260 280 300 320 340 360 380 400−1
−0.8
−0.6
−0.4
−0.2
0
0.2
0.4
0.6
0.8
1
ω
ωm
s Il peut y avoir des phenomenes instables : ‘burst’
Cours EDSYS - Commande adaptative 21 May 2011, Toulouse
Ê MRAC dans le cas SISO et regle du MIT
n Exemple : moteur a courant continu - Simulations
lG(s) = −1.1s+10(s2+s+1)
, Gm(s) = 6s2+5s+6
, γ = 60,
l ωc(t) creneau de periode 20s, valeur max = 0.375, valeur min = −0.125
330 335 340 345 350 355 3600
200
400
600
800
1000
1200
1400
1600
1800
2000
t0
s0
r0
s Ce ne sont evidement pas des valeurs de gain realisables
Cours EDSYS - Commande adaptative 22 May 2011, Toulouse
Ê MRAC dans le cas SISO et regle du MIT
n Exemple : moteur a courant continu - Simulations
lG(s) = 10(s+0.8)(s+8)
, Gm(s) = 6s2+5s+6
, γ = 60,
l ωc(t) creneau de periode 20s, valeur max = 0.375, valeur min = −0.125
so = γsign(e)[ 1Amω] , to = −γsign(e)[ 1
Amωc] , ro = γsign(e)[ 1
Amu]
0 20 40 60 80 100 120 140 160 180 200
−0.2
0
0.2
0.4
0.6
0.8
ω
ωm
Cours EDSYS - Commande adaptative 23 May 2011, Toulouse
Ê MRAC dans le cas SISO et regle du MIT
n Exemple : moteur a courant continu - Simulations
lG(s) = 10(s+0.8)(s+8)
, Gm(s) = 6s2+5s+6
, γ = 60,
l ωc(t) creneau de periode 20s, valeur max = 0.375, valeur min = −0.125
so = γsign(e)[ 1Amω] , to = −γsign(e)[ 1
Amωc] , ro = γsign(e)[ 1
Amu]
0 20 40 60 80 100 120 140 160 180 200
0
5
10
15
20
25
30
t0
s0
r0
Cours EDSYS - Commande adaptative 24 May 2011, Toulouse
Ê MRAC dans le cas SISO et regle du MIT
n Exemple : moteur a courant continu - Simulations
lG(s) = 10(s+0.8)(s+8)
, Gm(s) = 1, γ = 0.6,
l ωc(t) creneau de periode 20s, valeur max = 0.375, valeur min = −0.125
1000 1050 1100 1150 1200 1250 1300 1350 1400
−0.4
−0.2
0
0.2
0.4
0.6
ω
ωm
s Suivi de references tres abruptes est difficile
Cours EDSYS - Commande adaptative 25 May 2011, Toulouse
Ê MRAC dans le cas SISO et regle du MIT
n Exemple : moteur a courant continu - Simulations
lG(s) = 10(s+0.8)(s+8)
, Gm(s) = 1, γ = 0.6,
l ωc(t) creneau de periode 20s, valeur max = 0.375, valeur min = −0.125
0 200 400 600 800 1000 1200 1400 1600 1800 2000−0.5
0
0.5
1
1.5
2
2.5
3
3.5
4
t0
s0
r0
s Pour les valeurs γ = 1; = 10 le systeme est instable.
Cours EDSYS - Commande adaptative 26 May 2011, Toulouse
Ê MRAC dans le cas SISO et regle du MIT
n Exemple : moteur a courant continu - Simulations
lG(s) = 10(s+0.8)(s+8)
, Gm(s) = 6s2+5s+6
, γ = 60,
l ωc(t) creneau de periode 20s, valeur max = 3.75, valeur min = −1.25
0 50 100 150−2
0
2
4
6
8
10
ω
ωm
s Comportement proche au cas avec une reference plus faible, mais...
Cours EDSYS - Commande adaptative 27 May 2011, Toulouse
Ê MRAC dans le cas SISO et regle du MIT
n Exemple : moteur a courant continu - Simulations
lG(s) = 10(s+0.8)(s+8)
, Gm(s) = 6s2+5s+6
, γ = 60,
l ωc(t) creneau de periode 20s, valeur max = 3.75, valeur min = −1.25
0 50 100 150
−100
−50
0
50
100
150
200
250
300
350
400
t0
s0
r0
s Les gains sont tres grands et donc pas realisables
Cours EDSYS - Commande adaptative 28 May 2011, Toulouse
Ê MRAC dans le cas SISO et regle du MIT
n Modification des lois d’adaptation
l Adapter γ en fonction de l’amplitude de l’erreur
so = γe[ 1Amω]
to = −γe[ 1Amωc]
ro = γe[ 1Amu]
−→so = γ
1+βe2e[ 1Amω]
to = − γ1+βe2
e[ 1Amωc]
ro = γ1+βe2
e[ 1Amu]
s l’adaptation se ralentit des que e2 > 1/β
Cours EDSYS - Commande adaptative 29 May 2011, Toulouse
Ê MRAC dans le cas SISO et regle du MIT
n Exemple : moteur a courant continu - Simulations
lG(s) = 10(s+0.8)(s+8)
, Gm(s) = 6s2+5s+6
, γ = 60, β = 10,
l ωc(t) creneau de periode 20s, valeur max = 3.75, valeur min = −1.25
0 20 40 60 80 100 120 140 160 180 200−2
0
2
4
6
8
10
12
14
16
ω
ωm
s Comportement degrade (surtout pour forts ecarts), mais...
Cours EDSYS - Commande adaptative 30 May 2011, Toulouse
Ê MRAC dans le cas SISO et regle du MIT
n Exemple : moteur a courant continu - Simulations
lG(s) = 10(s+0.8)(s+8)
, Gm(s) = 6s2+5s+6
, γ = 60, β = 10,
l ωc(t) creneau de periode 20s, valeur max = 3.75, valeur min = −1.25
0 20 40 60 80 100 120 140 160 180 200
0
5
10
15
20
25
30
35
t0
s0
r0
s Les gains sont plus raisonnables
Cours EDSYS - Commande adaptative 31 May 2011, Toulouse
Ê MRAC dans le cas SISO et regle du MIT
n Modification des lois d’adaptation
l σ-modification : Empecher les gains de diverger
(en particulier sous l’effet de bruits de mesure)
so = γe[ 1Amω]
to = −γe[ 1Amωc]
ro = γe[ 1Amu]
−→so = γ
1+βe2e[ 1Amω]− σso
to = − γ1+βe2
e[ 1Amωc]− σto
ro = γ1+βe2
e[ 1Amu]− σro
s Pas de point d’equlible possible pour les gains
Cours EDSYS - Commande adaptative 32 May 2011, Toulouse
Ê MRAC dans le cas SISO et regle du MIT
n Exemple : moteur a courant continu - Simulations
lG(s) = 10(s+0.8)(s+8)
, Gm(s) = 6s2+5s+6
, γ = 60, β = 10, σ = 0.01,
l ωc(t) creneau de periode 20s, valeur max = 3.75, valeur min = −1.25
0 20 40 60 80 100 120 140 160 180 200−2
0
2
4
6
8
10
12
14
ω
ωm
s Comportement degrade (surtout pour forts ecarts), mais...
Cours EDSYS - Commande adaptative 33 May 2011, Toulouse
Ê MRAC dans le cas SISO et regle du MIT
n Exemple : moteur a courant continu - Simulations
lG(s) = 10(s+0.8)(s+8)
, Gm(s) = 6s2+5s+6
, γ = 60, β = 10, σ = 0.01,
l ωc(t) creneau de periode 20s, valeur max = 3.75, valeur min = −1.25
0 20 40 60 80 100 120 140 160 180 200−2
0
2
4
6
8
10
12
14
16
18
20
t0
s0
r0
s Les gains sont plus raisonnables
s Les gains ne divergent pas
Cours EDSYS - Commande adaptative 34 May 2011, Toulouse
Ê MRAC dans le cas SISO et regle du MIT
n Exemple : moteur a courant continu - Simulations
lG(s) = 10(s+0.8)(s+8)
, Gm(s) = 6s2+5s+6
, γ = 60, β = 0.1, σ = 10−4,
l ωc(t) creneau de periode 20s, valeur max = 0.75, valeur min = −0.25
0 20 40 60 80 100 120 140 160 180 200
0
0.5
1
1.5
2
ω
ωm
s Bon reglage de l’algorithme d’adaptation : bonnes performances de suivi
Cours EDSYS - Commande adaptative 35 May 2011, Toulouse
Ê MRAC dans le cas SISO et regle du MIT
n Exemple : moteur a courant continu - Simulations
lG(s) = 10(s+0.8)(s+8)
, Gm(s) = 6s2+5s+6
, γ = 60, β = 0.1, σ = 10−4,
l ωc(t) creneau de periode 20s, valeur max = 0.75, valeur min = −0.25
0 50 100 150 200 250 300−5
0
5
10
15
20
t0
s0
r0
s Bon reglage de l’algorithme d’adaptation : gains raisonnables, varient peu
Cours EDSYS - Commande adaptative 36 May 2011, Toulouse
Ê MRAC dans le cas SISO et regle du MIT
n Conclusions
l Algorithme du gradient potentiellement satisfaisant
s Robustesse relativement grande - mais non prouvee
s Pas besoin de connaıtre le modele du systeme
s γ influe sur la vitesse de convergence, a regler par experimentations
s β, σ modifications, a regler par experimentations
l Aucune preuve de stabilite/performance
s Quelles hypotheses a faire sur le systeme ?
s Est-il possible de stabiliser des systemes instables ?
s Extensions aux systemes MIMO ?
s Comment garantir des gains bornes/realisables ?
Cours EDSYS - Commande adaptative 37 May 2011, Toulouse
Plan
Ê MRAC dans le cas SISO et regle du MIT
s Basee sur probleme de regulation a 2 degres de liberte (RST)
s Methode de gradient issue des techniques d’estimation
s Regle heuristique
Ë Stabilisation par PBAC - le cas MIMO
s Hypotheses de type passivite sur les systemes
s Preuves de stabilite avec theorie de Lyapunov
Ì PBMRAC
Í Cas des systemes non passifiables
Cours EDSYS - Commande adaptative 38 May 2011, Toulouse
Ë Stabilisation par PBAC
n Commande adaptative basee sur la passivite (PBAC)
s Hypotheses de type passivite sur les systemes
s Preuves de stabilite avec theorie de Lyapunov
w
m
+−
cΣ (θ )
θc y
Σ
θ,δy
e
Σ(θ,δ)c
yc
u
m
l Dans un premier temps on suppose yc = 0
l On veut montrer que le systeme est stable
Cours EDSYS - Commande adaptative 39 May 2011, Toulouse
Ë Stabilisation par PBAC
n Systemes passifs
l Systeme non-lineaire x = f(x, v), z = g(x, v) est passif si
s il est carre : nombre d’entrees v = nombre de sorties z,
s pour des CI nulles x(0) = 0, pour tout v et pour tout t ≥ 0, on a∫ t
0
zT (t)v(t)dt ≥ 0
l Passivite : produit scalaire entrees/sorties est positif
“sorties vont dans le meme sens que les entrees”
l Propriete de nombreux systemes
l Pour les systemes mecaniques (entrees : forces - sorties : vitesse),
l’integrale correspond a l’energie accumulee dans le systeme
Cours EDSYS - Commande adaptative 40 May 2011, Toulouse
Ë Stabilisation par PBAC
n Systemes passifs
l Systeme non-lineaire x = f(x, v), z = g(x, v) est passif si
s pour des CI nulles x(0) = 0, pour tout v et pour tout t ≥ 0, on a∫ t
0
zT (t)v(t)dt ≥ 0
l Systeme non-lineaire x = f(x, v), z = g(x, v) est strictement passif si
s il existe ε > 0
s pour des CI nulles x(0) = 0, pour tout v et pour tout t ≥ 0, on a∫ t
0
zT (t)v(t)dt ≥ ε
∫ t
0
xT (t)x(t)dt
Cours EDSYS - Commande adaptative 41 May 2011, Toulouse
Ë Stabilisation par PBAC
n Theoreme - Systemes passifs
Un systeme est strictement passif s’il existe une fonction V : Rn → R
s nulle a l’origine : V (0) = 0
s definie-positive : V (x) > 0 ∀x 6= 0
s dont les derivees le long des trajectoires du systeme verifient
V (x) ≤ zTv − εxTx
l V : “storage function”
l aussi fonction de Lyapunov prouvant la stabilite asymptotique du systeme
Cours EDSYS - Commande adaptative 42 May 2011, Toulouse
Ë Stabilisation par PBAC
n Retroaction de systemes passifs
l Soient deux systemes avec le meme nombre d’entrees/sorties
x1 = f1(x1, v1) , z1 = g1(x1, v1)
x2 = f2(x2, v2) , z2 = g2(x2, v2)
s s’ils sont tous les deux strictement passifs
s alors l’interconnexion v2 = z1, v1 = −z2 est asymptotiquement stable
l Preuve V1 + V2 ≤ zT1 v1 + zT2 v2︸ ︷︷ ︸=0
−ε1xT1 x1 − ε2xT2 x2 < 0
l Cas particulier : z2(t) = ∆K(t)v2(t) avec ∆K(t) + ∆TK(t) � 0
s un cone de gains statiques qui preservent la stabilite de la boucle fermee
s les gains peuvent varier dans le temps, quelle que soit la regle, adaptative ?
Cours EDSYS - Commande adaptative 43 May 2011, Toulouse
Ë Stabilisation par PBAC
n Cas des systemes lineaires a parametres variants
l Approximation au premier ordre de x = f(x, v), z = g(x, v) :
x = A(θ)x+B(θ)v , z = C(θ)x+D(θ)v
θ : suppose constant, car lentement variant, dependant du point de linearisation
s en general D(θ) = 0
l [HC98] Theoreme
x = fA(x) + fB(x)v, z = gc(x) + gD(x)v
est strictement passif si et seulement si son approximation au premier ordre
x = Ax+Bv , z = Cx+Dv
est strictement passif.
Cours EDSYS - Commande adaptative 44 May 2011, Toulouse
Ë Stabilisation par PBAC
l Conditions de strict-passivite des systemes lineaires :
P = P T � 0 :
ATP + PA+ 2ε1 PB − CT
BTP − C −D −DT
� 0
s Preuve : V = 12xTPx(
x
w
)T [ATP + PA+ 2ε1 PB − CT
BTP − C −D −DT
](x
w
)= 2(V − zTw + εxTx) ≤ 0
s Dans le cas des systemes sans transfert direct (D = 0)
P = P T � 0 , ATP + PA+ 2ε1 � 0 , PB = CT
Cours EDSYS - Commande adaptative 45 May 2011, Toulouse
Ë Stabilisation par PBAC
n [Fra74, BK85] Theoreme
l Passification par retour de sortie adaptatif des systemes “presque passifs”
l S’il existe un retour de sortie statique u = −Koy qui rend le systeme
x = Ax+Bu+Bv, y = Cx, z = y
strictement passif en boucle fermee, alors, pour tout Γ � 0,
la commande adaptative
u = −Ky, K = yyTΓ
rend le systeme passif en boucle fermee.
Cours EDSYS - Commande adaptative 46 May 2011, Toulouse
Ë Stabilisation par PBAC
l Preuve intuitive
s Existence d’un retour de sortie passifiant :
⇒ x = (A−BKoC)x+Bv, z = Cx est passif
⇒ ∀∆TK + ∆K � 0 x = (A−BKoC −B∆KC)x est stable
s En prenant ∆K suffisamment grand,
tout K = Ko + ∆K , K +KT � 0, stabilise le systeme
s La loi adaptative K = yyTΓ “pousse” les gains a devenir “grands”
dans la direction K +KT � 0
s Tand que y n’a pas converge a zero,
la loi tend a augmenter le gain de commande
Cours EDSYS - Commande adaptative 47 May 2011, Toulouse
Ë Stabilisation par PBAC
l Preuve par la theorie de Lyapunov
s On souhaite prouver la passivite du systeme non lineaire :
x(t) = (A−BK(t)C)x(t)+Bv(t) , K(t) = y(t)yT (t)Γ , z(t) = Cx(t)
s sous l’hypothese qu’il existe un gain Ko strictement passifiant :
∃Ko, P � 0, ε > 0 :
(A−BKoC)TP + P (A−BKoC) + 2ε1 � 0 , PB = CT
s Choix d’une fonction de Lyapunov qui depend de tous les etats
V (x,K) =1
2
(xTPx+ Tr
((K −Ko)Γ
−1(K −Ko)T))
s Il suffit de demontrer que V ≤ zTv, le long des trajectoires
Cours EDSYS - Commande adaptative 48 May 2011, Toulouse
Ë Stabilisation par PBAC
l Preuve par la theorie de Lyapunov
V (x,K) =1
2
(xTPx+ Tr
((K −Ko)Γ
−1(K −Ko)T))
s Calcul de sa derivee
V = xTPx+ Tr(KΓ−1(K −Ko)
T)
s Trajectoires : x = (A−BKC)x+Bv, K = yyTΓ
V = xT (A−BKC)TPx+ vTBTPx+ Tr(yyT (K −Ko)
T)
s Propriete de l’operateur trace : Tr(AB) = Tr(BA) :
Tr(yyT (K −Ko)
T)
= Tr(yT (K −Ko)
Ty)
= yT (K −Ko)Ty
s Donc comme y = Cx on a
V = xT (A−BKC)TPx+ vTBTPx+ xTCT (K −Ko)TCx
Cours EDSYS - Commande adaptative 49 May 2011, Toulouse
Ë Stabilisation par PBAC
l Preuve par la theorie de Lyapunov (suite)
V = xT (A−BKC)TPx+ vTBTPx+ xTCT (K −Ko)TCx
s Passification par gain statique Ko implique PB = CT , donc :
V = xT (A−BKC)TPx+ vTCx+ xTCT (K −Ko)TBTPx
= xT (A−BKC +B(K −Ko)C)TPx+ vTCx
= xT (A−BKoC)TPx+ vTCx
s Passification par Ko : (A−BKoC)TP + P (A−BKoC) + 2ε1 � 0
V =−εxTx+ vTCx ≤ vTCx
s Donc, avec z = Cx, on a bien V ≤ vT z = zTv. �
Cours EDSYS - Commande adaptative 50 May 2011, Toulouse
Ë Stabilisation par PBAC
n Proprietes des correcteur PBAC : K = yyTΓ , Γ � 0
l Point d’equilibre ? Stable ?
x(t) = (A−BK(t)C)x(t)+Bv(t) , K(t) = y(t)yT (t)Γ , z(t) = Cx(t)
s Pour une perturbation nulle, v = 0, l’equilibre est : x = 0, K constante
s La preuve indique que V ≤ −εxTx quand v = 0
c’est a dire que V est strictement decroissante tant que x 6= 0
s x = 0 constitue donc un point d’equilibre asymptotiquement stable
s Quand x = 0 est atteint, alors K = K∞ est constante
s 1ere methode de Lyapunov indique que A+BK∞C est stable
s Le point d’equilibre (x = 0, K = K∞) n’est pas unique
d’ailleurs si Ko stabilisant, Ko + ∆K stabilisant ∀∆K + ∆TK � 0
Cours EDSYS - Commande adaptative 51 May 2011, Toulouse
Ë Stabilisation par PBAC
n Conditions pour qu’un systeme lineaire soit stabilisable par PBAC
[Fra03]
l Cas des systemes SISO, y = H(s)u :
s Le systeme doit etre stabilisable par u = −ky avec k > 0 grand
s Lieu d’Evans : H(s) ne doit pas avoir de zeros instables
s Lieu d’Evans : H(s) doit etre de degre relatif≤ 1
l Cas des systemes MIMO : (A,B,C) a hyper minimum de phase
s det(sI − A) det(C(sI − A)−1B) a toutes ses racines stables (zeros)
s CB = (CB)T � 0, gain haute frequence est defini positif
(le degre relatif du systeme≤ m ou m : nb d’entrees)
l Limitations
s Systemes carres (CB est carree), et tels que CB = (CB)∗ � 0
s Degre relatif≤ m et zeros stables
Cours EDSYS - Commande adaptative 52 May 2011, Toulouse
Ë Stabilisation par PBAC
n PBAC modifiee pour les systemes non-carres
n [Fra03] Theoreme
l S’il existe un retour de sortie statique u = −Koy,
et une matrice G qui rendent le systeme
x = Ax+Bu+Bv, y = Cx, z = Gy
strictement passif en boucle fermee, alors, pour tout Γ � 0,
la commande adaptative
u = −Ky, K = GyyTΓ
rend le systeme passif en boucle fermee.
s Exercice : demontrer le theoreme
l Applicable si le nombre de sorties est superieur au nombre de commandes
Cours EDSYS - Commande adaptative 53 May 2011, Toulouse
Ë Stabilisation par PBAC
l Condition d’existence de Ko et G qui rendent le systeme strictement passif
P � 0 , (A−BKoC)TP + P (A−BKoC) + ε1 � 0 , PB = CTGT
s Ces conditions impliquent
ATP + PA+ ε1 � CT (KTo G+GTKo)C
⇒ Un choix trivial est Ko = kG avec k > 0 suffisamment grand
s Le systeme admet une “direction” G
dans laquelle les grands gains sont tous stabilisant
Cours EDSYS - Commande adaptative 54 May 2011, Toulouse
Ë Stabilisation par PBAC
n Exemple - Modele avion
l x =(α q
)T, α incidence, q vitesse de tangage,
l u = δ braquage de gouverne
x =
zα 1
mα mq
x+
0
mδ
u , y = x
s Matrice de transfert :
y =mδ
s2 − (zα +mq)s+ zαmq −mα
1
s− zα
u
Cours EDSYS - Commande adaptative 55 May 2011, Toulouse
Ë Stabilisation par PBAC
n Exemple - Modele avion
s Combinaison lineaire des sorties z =[g1 g2
]y :
z
u=
mδg2(s− zα + g1/g2)
s2 − (zα +mq)s+ zαmq −mα
est a hyper minimum de phase si g1/g2 − zα > 0 et mδg2 > 0
s En prenant g2 = sign(mδ) (mδ doit etre de signe connu)
et en prenant |g1| suffisamment grand devant valeurs attendues de zα
u = −Ky , K = GyyTΓ
stabilise le systeme pour toute valeur des parametres.
s Γ (et β, σ modifications) a regler en simulation.
Cours EDSYS - Commande adaptative 56 May 2011, Toulouse
Plan
Ê MRAC dans le cas SISO et regle du MIT
s Basee sur probleme de regulation a 2 degres de liberte (RST)
s Methode de gradient issue des techniques d’estimation
s Regle heuristique
Ë Stabilisation par PBAC - le cas MIMO
s Hypotheses de type passivite sur les systemes
s Preuves de stabilite avec theorie de Lyapunov
Ì PBMRAC
Í Cas des systemes non passifiables
Cours EDSYS - Commande adaptative 57 May 2011, Toulouse
Ì PBMRAC
n MRAC basee sur la passivite
w
m
+−
cΣ (θ )
θc y
Σ
θ,δy
e
Σ(θ,δ)c
yc
u
m
l Jusqu’ici yc = 0 et commande u(t) = −K(t)y(t)
l Cas avec modele de reference : u = −K(t)e(t)+L(t)xm(t)+M(t)yc(t)
sK(t) a pour role de stabiliser la boucle (comme precedemment)
s L(t) et M(t) definissent une pre-commande pour le suivi de la reference
l Etude menee pour les systemes lineaires (linearise d’un modele non-lineaire)
Cours EDSYS - Commande adaptative 58 May 2011, Toulouse
Ì PBMRAC
n Hypotheses sur le systeme
l Le systeme est “presque passif” :
Il existe un retour de sortie statique u = −Koy,
et une matrice G qui rendent le systeme
x = Ax+Bu+Bv, y = Cx, z = Gy
strictement passif en boucle fermee
l Il existe une pre-commande Lo, Mo qui permet le suivi parfait :
xo = Axo +B(Loxm +Moyc) ⇒ Cxo = ym
ou xm est l’etat du modele de reference (dont l’ordre peut etre 6= n)
xm = Amxm +Bmyc , ym = Cmxm
s Hypothese forte, equivalente aux hypotheses sur regulateurs RST
Cours EDSYS - Commande adaptative 59 May 2011, Toulouse
Ì PBMRAC
n MRAC basee sur la passivite
w
m
+−
cΣ (θ )
θc y
Σ
θ,δy
e
Σ(θ,δ)c
yc
u
m
l Si les hypotheses sont verifies, alors pour tous ΓK � 0, ΓL � 0, ΓM � 0,
la loi de commande
u = −K(t)e(t) + L(t)xm(t) +M(t)yc(t) , e = y − ymK = GeeTΓK , L = −GexTmΓL , M = −GeyTc ΓM
est telle que lim(x(t)− xo(t)) = 0.
Cours EDSYS - Commande adaptative 60 May 2011, Toulouse
Ì PBMRAC
n Preuve de PBMRAC : convergence de tous les etats vers solution ideale
l Choix d’une fonction de Lyapunov, fonction des etats x,K,L,M :
V =1
2
(x− xo)TP (x− xo) + Tr(K −Ko)Γ−1K (K −Ko)
T
+Tr(L− Lo)Γ−1L (L− Lo)T + Tr(M −Mo)Γ
−1M (M −Mo)
T
ou P est solution de (condition de passivite pour le gain Ko)
(A−BKoC)TP + P (A−BKoC) ≺ −ε1 , PB = CTGT
et xo(t), Lo, Mo correspondant au suivi parfait de la reference (Cxo = ym).
l Calcul de sa derivee
V =
Ax−BKe+BLxm +BMyc
−Axo −BLoxm −BMoyc
T
P (x− xo)
+TrKΓ−1K (K −Ko)
T + TrLΓ−1L (L− Lo)T + TrMΓ−1
M (M −Mo)T
Cours EDSYS - Commande adaptative 61 May 2011, Toulouse
Ì PBMRAC
V =
Ax−BKe+BLym +BMyc
−Axo −BLoym −BMoyc
T
P (x− xo)
+TrKΓ−1K (K −Ko)
T + TrLΓ−1L (L− Lo)T + TrMΓ−1
M (M −Mo)T
s Additions et soustractions donnent
V =
(x− xo)T (A−BKoC)TP (x− xo)
−eT (K −Ko)TBTP (x− xo) + TrKΓ−1
K (K −Ko)T
+xTm(L− Lo)TBTP (x− xo) + TrLΓ−1L (L− Lo)T
+yTc (M −Mo)TBTP (x− xo) + TrMΓ−1
M (M −Mo)T
s Le premier terme est≤ −ε||x− xo||2 ≤ 0 par definition de P,Ko
s Les trois autres sont nuls car BTP (x − xo) = GC(x − xo) = Ge
et en remplacant K , L, M par leur valeurs.
Cours EDSYS - Commande adaptative 62 May 2011, Toulouse
Ì PBMRAC
l Remarque concernant les hypotheses
s Hypothese sur G garanti la stabilite interne de la boucle de regulation
s Hypothese d’existence de Lo, Mo garanti convergence exacte
Si elle n’est pas remplie la convergence sera approchee
Voir le cas d’un modeleGm(s) = 1 dans les simulations precedentes
1000 1050 1100 1150 1200 1250 1300 1350 1400
−0.4
−0.2
0
0.2
0.4
0.6
ω
ωm
Cours EDSYS - Commande adaptative 63 May 2011, Toulouse
Ì PBMRAC
n Variantes de PBMRAC (preuves de stabilite identiques)
w
m
+−
cΣ (θ )
θc y
Σ
θ,δy
e
Σ(θ,δ)c
yc
u
m
l Loi basee sur l’erreur
u = −Ke+ Lxm +Myc , e = y − ymK = GeeTΓK , L = −GexTmΓL , M = −GeyTc ΓM
l Loi basee sur la sortie (proche de la regle du MIT)
u = −Ky + Lxm +Myc , e = y − ymK = GeyTΓK , L = −GexTmΓL , M = −GeyTc ΓM
Cours EDSYS - Commande adaptative 64 May 2011, Toulouse
Ì PBMRAC
n Variantes de PBMRAC
u = −Ke+ Lxm +Myc , e = y − ymK = GeeTΓK , L = −GexTmΓL , M = −GeyTc ΓM
l Reecriture compacte
e =
e
xm
yc
,u = −Ke , ˙
K = GeeTΓ
K =[K −L −M
]l Variante avec un terme “proportionnel”
u = −(K1 + K2)e , K1 = GeeTΓ1 ,˙K2 = GeeTΓ2
s Preuve de stabilite : le terme supplementaire du a K1 dans V est
−(BGeeTΓ1e)TP (x− xo) = −(eTΓ1e)(e
TGTGe) ≤ 0
Cours EDSYS - Commande adaptative 65 May 2011, Toulouse
Ì PBMRAC
n PBMRAC a ete presente dans le cas d’une commande “statique”
u = −Ke+ Lym +Myc
l Extension au cas de correcteurs dynamiques pleins : η
u
︸ ︷︷ ︸
u
=
AK BK
CK DK
︸ ︷︷ ︸
−K
η
e
︸ ︷︷ ︸
e
+
BL
DL
︸ ︷︷ ︸
L
ym +
BM
DM
︸ ︷︷ ︸
M
yc
Equivalent au cas statique mais pour le systeme augmente suivant
˙x =
A 0
0 0
x+
0 B
1 0
u, y =
0 1
C 0
x, e = y−
0
ym
l Une procedure analogue est possible quand AK et CK sont fixees
Cours EDSYS - Commande adaptative 66 May 2011, Toulouse
Ì PBMRAC
n Exemple pour le moteur a courant continu
+−
−+
+
ω
ωc
mx
G
e
m
m
ωkIs+f
1s
uv
l Commande PBMRAC du premier ordre (comme dans le cas RST precedent)
Cours EDSYS - Commande adaptative 67 May 2011, Toulouse
Ì PBMRAC
+−ωk
Is+f1s
uv
e
ωm
cω
Gmx m
l Commande PBMRAC
ν = −Ke , e =
u
e
ωc
xm
,˙K = GeeTΓ
Cours EDSYS - Commande adaptative 68 May 2011, Toulouse
Ì PBMRAC
+−ωk
Is+f1s
uv
e
ωm
cω
Gmx m
l Commande PBMRAC
ν = −Ke , ˙K = GeeTΓ
l Choix de G pour que g1s
+ g2ks(Is+f)
soit hyper minimum de phase
s g1 > 0 et g2 > 0
s Par exemple G =[
0.1 1]
s Le schema tend a faire converger u vers 0...
Cours EDSYS - Commande adaptative 69 May 2011, Toulouse
Ì PBMRAC
l β = 0.1, Γ = 1001, σ = 10−4, G =[
0.1 1]
0 50 100 150 200 250 300−10
−5
0
5
10
15
20
25
30
35
40
45
s Evolution des gains acceptable
Cours EDSYS - Commande adaptative 70 May 2011, Toulouse
Ì PBMRAC
l Γ = 100 · 1, β = 0.1, σ = 10−4, G =[
0.1 1]
0 20 40 60 80 100 120 140 160 180 200
−0.2
0
0.2
0.4
0.6
0.8
1
1.2
s Erreur d’autant plus grande que u = 0 est contradictoire
s Comment lever cette difficulte ?
s On ne peut pas prendre G =[
0 1]
,
sinon hypotheses non verifiees et systeme instable
Cours EDSYS - Commande adaptative 71 May 2011, Toulouse
Ì PBMRAC
l On garde G =[
0.1 1]
pour la boucle de regulation
l On prend G1 =[
0 1]
pour l’adaptation des pre-gains
ν = −K
u
e
−K1
xm
yc
, e = ω − ωm
K = G
u
e
( u e)
Γ , K1 = e(xTm yc
)Γ
+−
−+
+
ω
ωc
mx
G
e
m
m
ωkIs+f
1s
uv
Cours EDSYS - Commande adaptative 72 May 2011, Toulouse
Ì PBMRAC
l Γ = 100 · 1, β = 0.1, σ = 10−4, G =[
0.1 1]
et G1 =[
0 1]
0 50 100 150 200 250 300
−0.2
0
0.2
0.4
0.6
0.8
1
s Erreur plus faible, mais transitoire avec depassements
Cours EDSYS - Commande adaptative 73 May 2011, Toulouse
Ì PBMRAC
l Γ = 100 · 1, β = 0.1, σ = 10−4, G =[
0.1 1]
et G1 =[
0 1]
0 50 100 150 200 250 300−200
−150
−100
−50
0
50
100
150
200
250
300
s Les gains divergent - solution pas acceptable
Cours EDSYS - Commande adaptative 74 May 2011, Toulouse
Ì PBMRAC
l Mais a-t-on besoin d’un correcteur avec des dynamiques du premier ordre ?
−+
ωkIs+f
u
e
ωm
cω
Gmx m
0 5 10 15 20 25 30 35
−0.2
0
0.2
0.4
0.6
0.8
1
1.2
0 5 10 15−5
0
5
10
15
20
Cours EDSYS - Commande adaptative 75 May 2011, Toulouse
Ì PBMRAC
l Σ(s) = 1s2+2s−3
−+
ωkIs+f
u
e
ωm
cω
Gmx m
0 5 10 15 20 25 30
−0.5
0
0.5
1
1.5
2
Cours EDSYS - Commande adaptative 76 May 2011, Toulouse
Ì PBMRAC
n PBMRAC pour une classe de systemes nonlineaires
x = Ax+ Aφφ(y, u, t) +Bu , y = Cx
l Hypotheses :
s φ est une non-linearite connue
s rang[Aφ B
]= rang B (il existe No telle que Aφ +BNo = 0)
s Le signal de consigne est constant a partir de t1 : yc(t > t1) = yc = cst
s La partie lineaire du systeme est “presque passive” :
Il existe un retour de sortie statique u = −Koy et G qui rendent le systeme
x = Ax+Bu+Bv, y = Cx, z = Gy strictement passif en boucle fermee
s Il existe Lo, Mo qui permet le suivi parfait du systeme lineaire :
xo = Axo +B(Loxm +Moyc) ⇒ Cxo = ym
Cours EDSYS - Commande adaptative 77 May 2011, Toulouse
Ì PBMRAC
n PBMRAC pour une classe de systemes nonlineaires
x = Ax+ Aφφ(y, u, t) +Bu , y = Cx
l La loi de commande suivante stabilise le systeme et x(t)→ xm(t).
u = −Ke+ Lxm +Myc +Nφ , e = y − ymK = GeeTΓK , L = −GexTmΓL , M = −GeyTc ΓM , N = −GeφTΓN
s Example : systeme sature
x = Ax+Bsat(u) = Ax+Bu−Bdz(u)
Le terme Ndz(u) de la commande est un anti-windup.
s En pratique si yc n’est pas constante N(t) diverge...
Cours EDSYS - Commande adaptative 78 May 2011, Toulouse
Ì PBMRAC
n Conclusions sur PBMRAC
l Fort potentiel d’application pour les systemes “presque passifs”
(existence de G et Ko tels que G(H(s) ? Ko) est passif
l Loi d’adaptation de la forme K = GeeTΓ
s Tant que e n’a pas converge les gains s’adaptent, dans la direction G
s Ils peuvent potentiellement diverger
s Si (transitoirement) ||e|| est grand, alors K est grand (pas realisable)
l Possibilite de faire β, σ modifications :
˙K = GeeTΓ(1 + eTβe)−1 − σK
s mais les preuves de stabilite ne tiennent plus ...
s Ici dans le cas β = 0
V ≤ −ε||x− xo||2 − σTr(KΓ−1(K − Ko)T ) ≤ 0?
Si K est bornee, on peut avoir V ≤ 0 pour ||x− xo|| ≥ ρ : “almost stable”
Cours EDSYS - Commande adaptative 79 May 2011, Toulouse
Plan
Ê MRAC dans le cas SISO et regle du MIT
s Basee sur probleme de regulation a 2 degres de liberte (RST)
s Methode de gradient issue des techniques d’estimation
s Regle heuristique
Ë Stabilisation par PBAC - le cas MIMO
s Hypotheses de type passivite sur les systemes
s Preuves de stabilite avec theorie de Lyapunov
Ì PBMRAC
Í Cas des systemes non passifiables
Cours EDSYS - Commande adaptative 80 May 2011, Toulouse
Í Cas des systemes non passifiables
n PBMRAC a ete presente sous les hypotheses (systeme “presque passif”)
l Il existe un retour de sortie statique u = −Koy,
et une matrice G qui rendent le systeme
x = Ax+Bu+Bv, y = Cx, z = Gy
strictement passif en boucle fermee.
l Equivalente a l’existence de G telle que
x = Ax+Bu, y = GCx
est a hyper minimum de phase
s Hypothese tres restrictive qui exclue par exemple le systeme
1
s2 + 2ζωns+ ω2n
!!
Cours EDSYS - Commande adaptative 81 May 2011, Toulouse
Í Cas des systemes non passifiables
n PBAC d’un systeme SISO stabilisable
l Soit le systeme Σ(s) = N(s)D(s)
et un regulateur stabilisant K(s) = R(s)S(s)
s Les racines de D(s)S(s) +N(s)R(s) sont stables
s Les zeros de N(s)D(s)
+ S(s)R(s)
= D(s)S(s)+N(s)R(s)D(s)R(s)
sont stables
s Donc Σ(s) +K−1(s) = N(s)D(s)
+ S(s)R(s)
est a hyper minumum de phase si
deg(D(s)R(s))− deg(D(s)S(s) +N(s)R(s)) ≤ 1
s On peut appliquer un regulateur PBAC a Σ(s) +K−1(s)
l Exemple : N(s)D(s)
= 1s2+s+1
stabilisable par R(s)S(s)
= s+1k
pour tout k > 0
s Σ(s) +K−1(s) = s+1+k(s2+s+1)(s+1)(s2+s+1)
est a hyper minimum de phase
s Stabilisable par PBAC
Cours EDSYS - Commande adaptative 82 May 2011, Toulouse
Í Cas des systemes non passifiables
n Parallel feedforward ou Shunt - S(s)
l Si le systeme Σ(s) n’est pas “presque passif”
s mais que l’on trouve S(s) tel que Σ(s) + S(s) est presque passif
(des methodes existent partant de S−1(s) controleur stabilisant)
s alors on peut appliquer PBAC
−+ +
S
Σ
y
y
ycs
K
l La stabilite interne de la boucle garanti la stabilite des etats de Σ
s mais comment garantir convergence de y vers yc ?
l L’erreur sera faible si ||S|| � 1
s Cela revient a prendre 0 < k � 1 dans l’exemple precedent
l Il existe des schemas MRAC modifies pour tenir compte de l’erreur [KBS94]
Cours EDSYS - Commande adaptative 83 May 2011, Toulouse
Í Cas des systemes non passifiables
n Parallel feedforward - Gains adaptatif bornes
−+ +
S
Σ
y
y
ycs
K ⇔ cyΣ
y
S
+−
−+ K
l La boucle composee de S(s) et K(t) forme un controleur adaptatif
s Si S est un gain constant alors le gain adaptatif equivalent est
Ke(t) = (1 +K(t)S)−1K(t)
ce gain est borne meme si K(t) est non borne
s Resultat coherent :
seuls les systemes “presque passifs” sont stabilisables avec des grands gains
Cours EDSYS - Commande adaptative 84 May 2011, Toulouse
Í Cas des systemes non passifiables
n Commande adaptative avec gains bornes
l En pratique les lois adaptatives sont telles (cas scalaire)
s Si k < kmax, alors k = γe2
s k = kmax sinon et kmax doit etre un gain stabilisant.
l [PKP09, PDPM11] Prevenir les gains de sortir d’un domaine maximal donne
K = GeeTΓ− ψ(K) ·KΓ
s ψ(K) = 0 tant que K est dans un domaine souhaite
‖K‖2F = Tr(KKT ) ≤ α
s ψ(K)→ +∞ si K approche la frontiere du domaine maximal
‖K‖2F = Tr(KKT ) ≤ β , α < β
l Exemple : α < ‖K‖2F < β alors ψ(K) =‖K‖2F−αβ−‖K‖2F
Cours EDSYS - Commande adaptative 85 May 2011, Toulouse
Í Cas des systemes non passifiables
l [PKP09, PDPM11] Prevenir les gains de sortir d’un domaine maximal donne
K = GeeTΓ− ψ(K) ·KΓ
s ψ(K) = 0 tant que K est dans un domaine souhaite
s ψ(K)→ +∞ si K approche la frontiere du domaine maximal
l Preuve que les gains sont bornes avec V (K) = Tr(KKT ) = ‖K‖2F
V (K) = 2Tr(KKT ) = 2Tr(GeeTΓKT )−2ψ(K)Tr(KKT )︸ ︷︷ ︸<0
s On suppose eeT bornes
s Comme ψ(K)→∞ quand ‖K‖2F → β
il existe β∗ < β telle que V (K) < 0 pour tout β∗ ≤ V (K) < β
s Le domaine V (K) ≤ β∗ est donc attractif et K est bornee
Cours EDSYS - Commande adaptative 86 May 2011, Toulouse
Í Cas des systemes non passifiables
l Peut-on prouver la stabilisation du systeme avec cette loi de commande ?
K = GeeTΓ− ψ(K) ·KΓ
l Oui, sous certaines hypotheses, dont la principale est
s Il existe une commande u = −Koy telle que ‖Ko‖2F ≤ α
et deux matrices G et D telles que le systeme suivant
x = Ax+Bu+Bv, y = Cx, z = Gy +Dv
est strictement passif en boucle fermee.
l Remarque importante :
le transfert direct D n’est pas utilise pour la commande
Cours EDSYS - Commande adaptative 87 May 2011, Toulouse
Í Cas des systemes non passifiables
s Il existe une commande u = −Koy telle que ‖Ko‖2F ≤ α
et deux matrices G et D telles que le systeme suivant
x = Ax+Bu+Bv, y = Cx, z = Gy +Dv
est strictement passif en boucle fermee.
s Cette hypothese est moins forte que avec D = 0, elle s’ecrit : ∃P � 0 (A−BKoC)TP + P (A−BKoC) + 2εP PB − CTGT
BTP −GC −D −DT
� 0
Tout systeme stabilisable par un gain Ko verifie cette contrainte.
Mais D peut-etre grand.
Evite la contrainte forte PB = CTGT .
Cours EDSYS - Commande adaptative 88 May 2011, Toulouse
Í Cas des systemes non passifiables
n Cas des systemes variant dans le temps
x(t) = A(t)x+B(t)u(t) , y(t) = C(t)x(t)
l Condition de passivite d’une boucle de commande u(t) = −Ko(t)y(t) :
∃P � 0, ∃G,D P (t) + ATcl(t)P (t) + P (t)Acl(t) + 2εP P (t)B(t)− CT (t)GT
BT (t)P (t)−GC(t) −D −DT
� 0
ou Acl(t) = A(t)−B(t)Ko(t)C(t).
s Cette condition n’est pas realisable siD = 0 (ou alors cas tres particulier)
s Peut-on avec cette seule hypothese prouver la stabilite
du point d’equilibre x = 0 pour la boucle fermee avec PBAC ?
u(t) = −K(t)y(t) , K(t) = Gy(t)yT (t)Γ
Cours EDSYS - Commande adaptative 89 May 2011, Toulouse
Í Cas des systemes non passifiables
n Choix d’une fonction de Lyapunov
V (x,K) =1
2(xT (t)P (t)x(t) + Tr((K(t)−Ko(t))Γ
−1(K(t)−Ko(t))T )
l Calcul de sa derivee
V =1
2xT P x+ xTPx︸ ︷︷ ︸
V1
+ Tr(KΓ−1(K −Ko)T )︸ ︷︷ ︸
V2
−Tr(KoΓT (K −Ko)
T )
V1 =1
2xT (P + ATclP + PAcl)x− xTCT (K −Ko)
TBTPx
V2 = yT (K −Ko)TGCx = xTCT (K −Ko)
TGCx
s On pose M = BTP −GC(nulle pour les systemes strictement passifiables sans transfert direct)
Cours EDSYS - Commande adaptative 90 May 2011, Toulouse
Í Cas des systemes non passifiables
l On trouve
V ≤12xT (P + ATclP + PAcl)x+ xTCT (K −Ko)
TMxT
−Tr(KoΓ−1(K −Ko)
T )
s La condition
P + ATclP + PAcl + 2εP PB − CTGT
BTP −GC −D −DT
� 0
implique P + ATclP + PAcl � −2εP
l On trouve donc
V ≤ −εxTPx+ xTCT (K −Ko)TMx+ Tr(KoΓ
−1(K −Ko)T )
s Conditions additionnelles :
K , Ko bornees et M = PB − CTGT suffisamment petit en norme tq
xT (−εP + CT (K −Ko)TM)x ≤ −εxTPx
Cours EDSYS - Commande adaptative 91 May 2011, Toulouse
Í Cas des systemes non passifiables
l Ainsi, si M = PB − CTGT est suffisamment proche de la condition de
passivite sans transfert direct (M = 0), on a
V ≤ −εxTPx− Tr(KoΓ−1(K −Ko)
T )
s Le terme Tr(KoΓ−1(K −Ko)) est non signe (et inconnu)
s Si on suppose K , Ko et Ko bornees alors
∃τ > 0 : −Tr(KoΓ−1(K −Ko)
T ) ≤ τ
s c’est a dire V < 0 quand xTPx ≥ τε.
l Theorie de Lyapunov ne permet pas de conclure que l’etat converge vers 0
mais permet de conclure a la convergence dans le voisinage xTPx ≤ τε.
Cours EDSYS - Commande adaptative 92 May 2011, Toulouse
Í Cas des systemes non passifiables
n Conclusions
l Fort potentiel d’application pour les systemes “presque passifs”
(existence de G et Ko tels que G(H(s) ? Ko) est passif
l Loi d’adaptation de la forme K = GeeTΓ
s Tant que e n’a pas converge les gains s’adaptent, dans la direction G
s Ils peuvent potentiellement diverger
s Si (transitoirement) ||e|| est grand, alors K est grand (pas realisable)
l Possibilite de faire β, σ modifications :˙K = GeeTΓ(1 + eTβe)−1 − σK
l Extensions pour les systemes non “presque passifs”
s Transfert direct en parallele - difficultes : trouver le shunt, MRAC pas exact
s Approche avec gains bornes - travail en cours
l Systemes LTI→ systemes LTV et NL
s Stabilite de domaines d’attraction, stabilite locale... [AKO07]
Cours EDSYS - Commande adaptative 93 May 2011, Toulouse
REFERENCES Quelques references REFERENCES
References
[AKO07] A. Astolfi, D. Karagiannis, and R. Ortega, Nonlinear and adaptive
control with applications, Communications and Control Engineering,
Springer-Verlag, 2007.
[AOS00] A. Astolfi, R. Ortega, and R. Sepulchre, Control of complex systems,
ch. Passivity–based control of Nonlinear Systems, Springer, London,
2000.
[AW89] K.J. Astrom and B. Wittenmark, Adaptive control, Addison-Wesley,
1989.
[BK85] I. Barkana and H. Kaufman, Global stability and performance of an
adaptive control algorithm, Int. J. Control 42 (1985), no. 6, 1491–
1505.
Cours EDSYS - Commande adaptative 94 May 2011, Toulouse
REFERENCES Quelques references REFERENCES
[FFY81] V. Fomin, A. Fradkov, and V. Yakubovich, Adaptive control of dynamic
plants, Nauka, Moscow, 1981, In Russian.
[Fra74] A.L. Fradkov, Adaptive stabilization of a linear dynamic plant, Autom.
Remote Contr. 35 (1974), no. 12, 1960–1966.
[Fra90] , Adaptive control of complex systems, Nauka, 1990, in Rus-
sian.
[Fra03] , Passification of non-square linear systems and feedback
Yakubovich-Kalman-Popov lemma, European J. of Control 6 (2003),
573–582.
[HC98] W.M. Haddad and V.-S. Chellaboina, Nonlinear fixed-order dynamic
compensation for passive systems, International Journal of Robust
and Nonlinear Control 8 (1998), 349–365.
[IF06] P. Ioannou and B. Fidan, Adaptive control tutorial, Advances in Design
and Control, SIAM, 2006.
Cours EDSYS - Commande adaptative 95 May 2011, Toulouse
REFERENCES Quelques references REFERENCES
[IS96] P. Ioannou and J. Sun, Robust adaptive control, Prentice Hall, Inc,
1996.
[KBS94] H. Kaufman, I. Barkana, and K. Sobel, Direct adaptive control algo-
rithms, Springer, New York, 1994.
[PDPM11] D. Peaucelle, A. Drouot, C. Pittet, and J. Mignot, Simple adaptive
control without passivity assumptions and experiments on satellite at-
titude control DEMETER benchmark, IFAC World Congress, August
2011.
[PKP09] D. Peaucelle, H.M. Khan, and P.V. Pakshin, LMI-based analysis of ro-
bust adaptive control for linear systems with time-varying uncertainty,
Autom. Remote Contr. 70 (2009), no. 9, 1540–1552.
Cours EDSYS - Commande adaptative 96 May 2011, Toulouse