[go: up one dir, main page]

0% ont trouvé ce document utile (0 vote)
391 vues183 pages

Transp Cours Com Rob 2012

Ce document présente le plan et les informations pratiques pour un cours sur la commande robuste. Le cours aborde des sujets comme les modèles incertains, la stabilité robuste, l'analyse μ et la synthèse robuste. Le document contient également des exemples de systèmes dynamiques et le plan détaillé des séances.

Transféré par

Med SALAH SOUDANI
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
391 vues183 pages

Transp Cours Com Rob 2012

Ce document présente le plan et les informations pratiques pour un cours sur la commande robuste. Le cours aborde des sujets comme les modèles incertains, la stabilité robuste, l'analyse μ et la synthèse robuste. Le document contient également des exemples de systèmes dynamiques et le plan détaillé des séances.

Transféré par

Med SALAH SOUDANI
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
Vous êtes sur la page 1/ 183

Cours M2 ASTR - module FRS - Commande Robuste

Toulouse Janvier-Février 2012

Dimitri PEAUCELLE - LAAS-CNRS - Université de Toulouse


Renseignements pratiques

n Enseignant : Dimitri Peaucelle, chargé de recherche au LAAS-CNRS


l Contacts : 05 61 33 63 09 - peaucelle@laas.fr
l Page web : homepages.laas.fr/peaucell
n Organisation du cours
l Cours magistral avec supports de cours sur planches : 12h
s 10, 11, 18, 25, 31 janvier et 7 février
l Exercices avec support MATLAB : 8h
s 17, 24 janvier et 1, 8 février
l TP avec support MATLAB : 6h
s 9, 17 février
l Examen, tous documents autorisés et avec support MATLAB : 2h
s x février

Cours M2 UPS - Commande robuste 1 Jan-Fév 2012, Toulouse


Introduction

n Commande robuste
l Automatique / Théorie de la commande
l Commande de systèmes dynamiques
s Représentés par des équations différentielles (systèmes à temps continu)
s ou par des équations récurrentes (systèmes à temps discret)
l Modèles non-linéaires dans l’espace d’état
 
 ẋ(t) = f (x, u, t)  x
k+1 = f (x, u, k)
ou
 y(t) = g(x, u, t)  yk = g(x, u, k)

s x : état du système
s u : commandes du système (actionneurs)
s y : mesures du système (capteurs)
l Modèles linéaires dans l’espace d’état et matrices de transfert (MIMO)
8 8
< ẋ(t) = Ax(t) + Bu(t) < xk+1 = Axk + Buk
Σ(s) ∼ ou Σ(z) ∼
: y(t) = Cx(t) + Du(t) : yk = Cxk + Duk

Cours M2 UPS - Commande robuste 2 Jan-Fév 2012, Toulouse


Introduction

n Systèmes dynamiques, exemples


c AIRBUS S.A.S. - H. Goussé
c ProMinent


c CNES - ill. D. Ducos HRP-2 Promet @ Astrium - Ariane 5 @ Quanser - 3DOF hélico

Cours M2 UPS - Commande robuste 3 Jan-Fév 2012, Toulouse


Introduction

n Modélisation pour la commande


l Isoler un comportement dynamique
s Découplage par axes - mouvement longitudinaux/latéraux d’un avion
s Découplage temporel - incidence/remplissage réservoir d’un lanceur
s Découplage par modes - rejoindre destination / positionnement précis
s Découplage fréquentiel - échantillonnage, dynamiques composants
l Définir trajectoire/position de référence
s Termes non-linéaires négligés, simplifiés ou linéarisés
s Enoncé de performances à atteindre
s Enoncé de contraintes à satisfaire
l Tenir compte de méconnaissances
s Tous les phénomènes physiques n’ont pas de description concise
s Paramètres varient d’un produit manufacturé à l’autre
s Identification de paramètres est toujours entachée d’erreur

Cours M2 UPS - Commande robuste 4 Jan-Fév 2012, Toulouse


Introduction

n Les modèles obtenus


l dépendent de paramètres θ
s (mode, état d’une dynamique lente, trajectoire de référence...)
s connus, choisis ou mesurables (avec une certaine précision)
l dépendent d’incertitudes δ
s (dynamiques négligées, approximations, méconaissances...)
s inconnus mais bornés, à dynamiques nulles, lentes ou bornées
l sont influencés par des perturbations w
s (phénomènes, couplages, fréquences négligées... et trajectoire)
s inconnus, avec caractéristiques fréquentielles, temporelles, énergétiques...
l doivent satisfaire des contraintes sur certaines composantes z
s (performances, validité des hypothèses de modélisation...)
s caractéristiques fréquentielles, temporelles, énergétiques...

Cours M2 UPS - Commande robuste 5 Jan-Fév 2012, Toulouse


Introduction

n Modèles non-linéaires dans l’espace d’état



 ẋ(t) = f (x, u, t, w, θ, δ)


Σ(θ, δ) : y(t) = g(x, u, t, w, θ, δ)


z(t) = h(x, u, t, w, θ, δ)

l Etapes de modélisation permettent simplifications


s Découplage temporel f (x, u, t) −→ f (x, u, θ)
s Linéarisation f (x, u, θ) −→ A(δ, θ)x + B(δ, θ)u
avec δ bornée sous contraintes sur certaines composantes z de l’état
s ...
l Exemples
s cos(t)x(t) −→ θ(t)x(t) avec θ ∈ [−1 1]
s x1 (t)x2 (t) −→ δ(t)x2 (t) avec δ ∈ [−1 1] si z = x1 ∈ [−1 1]

Cours M2 UPS - Commande robuste 6 Jan-Fév 2012, Toulouse


Introduction

n Typologie de modèles :
l Système physique réel - parfois accessible pour expérimentation
l Modèle physique idéal - pour modélisation mathématique
(Agrégat de systèmes élémentaires)
l Modèle mathématique idéal - pour simulation sur calculateurs
(Modèle de connaissance obtenu par application des lois de la physique)
l Modèle mathématique réduit - pour simulations rapides
(Modèle de comportement obtenu par découplage, linéarisation, réduction...)
l Modèle réduit incertain - pour analyse robuste, pessimiste
(Modèle mathématique réduit, simplifié, souvent LTI)
(erreurs contenues dans incertitudes et spécifications de performance)
l Modèle réduit nominal - pour la synthèse de lois de commande
(Modèle sans incertitudes avec un seul critère de performance)

Cours M2 UPS - Commande robuste 7 Jan-Fév 2012, Toulouse


Introduction

n Commande classique : synthèse pour θ = θ0 fixé, sans incertitudes δ = 0





 ẋ(t) = f (x, u, t, w, θ 0 , 0) 
 η̇(t) = f (η, y, t)
c
Σ(θ0 , 0) : y(t) = g(x, u, t, w, θ0 , 0) Σc :

  u(t) = gc (η, y, t)
z(t) = h(x, u, t, w, θ0 , 0)

l Exemple : synthèse LQG - min kzk2 sous w bruit blanc gaussien





 ẋ(t) = Aθ0 (t)x(t) + Bθ0 (t)u(t) + w1 (t)

 y(t) = C (t)x(t) + w (t)

θ0 2
1/2


 z1 (t) = Q (t)x(t)

 z (t) = R1/2 (t)u(t)

2


 η̇(t) = (A (t) − L(t)C (t) − B (t)K(t))η(t) + L(t)y(t)
θ0 θ0 θ0
 u(t) = −K(t)η(t)

Cours M2 UPS - Commande robuste 8 Jan-Fév 2012, Toulouse


Introduction

n Commande classique : synthèse pour θ = θ0 fixé, sans incertitudes δ = 0


l Commande en boucle fermée est intrinsèquement robuste, mais ...
s Stabilité préservée en réponse à des perturbations non-modélisées, faibles
s Comportement inchangé pour petits écarts de θ et δ
s Performances fortement dégradées pour écarts moyens
s Risque d’instabilité pour grands écarts
n Système de commande robuste :
Un système de commande est dit robuste s’il conserve ses propriétés malgré les incertitudes et
les perturbations affectant le système

l Tenir compte des écarts lors de la conception : Synthèse robuste


l Valider robustesse d’une loi de commande : Analyse robuste

Cours M2 UPS - Commande robuste 9 Jan-Fév 2012, Toulouse


Plan du cours

n 10 janvier : Introduction + rappels - cours


n 11 janvier : Modèles incertains - cours
l 17 janvier : Modèles incertains - exercices
n 18 janvier : Stabilité robuste par fonctions de Lyapunov - cours
l 24 janvier : Stabilité robuste - exercices - salle TP
n 25 janvier : Théorème du petit gain - cours
n 31 janvier : µ-analyse - cours
l 1 février : µ-analyse - exercices - salle TP
n 7 février : Synthèse robuste - cours
l 8 février : Synthèse robuste - exercices - salle TP
s 9 février : Modélisation d’un problème de performance robuste - TP
s 17 février : Synthèse robuste et analyse robuste de la boucle fermée - TP

Cours M2 UPS - Commande robuste 10 Jan-Fév 2012, Toulouse


RÉFÉRENCES Quelques références RÉFÉRENCES

Références

[Apkarian(2012)] P. Apkarian. Elements de la théorie de la commande robuste, 2012. URL


pierre.apkarian.free.fr/COURS/polysae.pdf.
[Arzelier()] D. Arzelier. Commande robuste. URL http://homepages.laas.fr/
arzelier/cours.html.
[Barmish(1985)] B. Barmish. Necessary and sufficient conditiond for quadratic stabilizability of
an uncertain system. J. Optimization Theory and Applications, 46(4), Aug. 1985.
[Chesi(2010)] G. Chesi. LMI techniques for optimization over polynomials in control : a survey.
IEEE Trans. Aut. Control, 55(11) :2500–2510, 2010.
[Duc and Font(1999)] G. Duc and S. Font. Commande H∞ et µ-analyse : des outils pour la
robustesse. Hermes Science, Paris, 1999.
[Laroche()] E. Laroche. Commande robuste. URL http://eavr.u-strasbg.fr/
˜laroche/student/#MIRIV.
[McFarlane and K.(1990)] D. McFarlane and G. K. Robust Controller Design Using Normalized
Coprime Factor Plant Descriptions. Lecture Notes in Control and Information Sciences.
Springer Verlag, 1990.

Cours M2 UPS - Commande robuste 11 Jan-Fév 2012, Toulouse


RÉFÉRENCES Quelques références RÉFÉRENCES

[Peaucelle et al.(2000)Peaucelle, Arzelier, Bachelier, and Bernussou] D. Peaucelle, D. Arzelier,


O. Bachelier, and J. Bernussou. A new robust D-stability condition for real convex polytopic
uncertainty. Systems & Control Letters, 40(1) :21–30, May 2000.

[Scherer()] C. Scherer. http://www.ist.


Theory of robust control. URL
uni-stuttgart.de/education/courses/robust/overview.
shtml.
[Skogestad and Postlethwaite(2005)] S. Skogestad and I. Postlethwaite. Multivariable Feedback
Control. Wiley, 2nd ed. edition, 2005.

[Tempo et al.(2005)Tempo, Calafiore, and Dabbene] R. Tempo, G. Calafiore, and F. Dabbene.


Randomized Algorithms for Analysis and Control of Uncertain Systems. Springer-Verlag,
2005.

[Tits and Fan(1995)] A. Tits and M. Fan. On the small µ theorem. Automatica, 31 :1199–1201,
1995.

[Zhou et al.(1996)Zhou, Doyle, and Glover] K. Zhou, J. Doyle, and K. Glover. Robust and Opimal
Control. Prentice Hall, Englewood Cliffs, New Jersey, 1996.

Cours M2 UPS - Commande robuste 12 Jan-Fév 2012, Toulouse


Cours M2 ASTR - module FRS - Commande Robuste

Annexe - Normes des systèmes


Normes des systèmes

n Les normes spatiales et temporelles


l Motivation : afin d’évaluer à l’aide d’un nombre unique une mesure globale de la “taille” d’un
vecteur, d’une matrice, d’un signal ou d’un système

l Définition
Une norme est une fonction k.k définie sur un espace vectoriel E , ||e|| : E → R+ vérifiant
les propriétés axiomatiques :
1- ∀ e ∈ E : ||e|| ≥ 0
2- ||e|| = 0 ⇔ e = 0
3- ∀ α ∈ R, ∀ e ∈ E, ||αe|| = |α|.||e||
4- ∀ e1 , e2 ∈ E, ||e1 + e2 || ≤ ||e1 || + ||e2 ||

s Nota : E espace de vecteurs, matrices, signaux temporels, systèmes linéaires

Cours M2 UPS - Commande robuste 2 Jan-Fév 2012, Toulouse


Normes des systèmes

n Normes des vecteurs : E = Cn



n
!1/p
 X
p
|e | pour 1 ≤ p < ∞

i




i=1
||e||p =




 max |ei | pour p = ∞

1≤i≤n

h i0
s Exemple : e = 1 0 −3

||e||1 = 4 (taxi cab norm)



||e||2 = 10 (norme Euclidienne)
||e||∞ = 3

>> norm(e, p)

Cours M2 UPS - Commande robuste 3 Jan-Fév 2012, Toulouse


Normes des systèmes

n Normes des matrices : E = Cn×m


l Condition de consistence
||A|| est une norme matricielle si elle vérifie en plus des propriétés élémentaires la propriété de
sous-multiplicativité :
||AB|| ≤ ||A||.||B||
 
1 −2
s Exemples norme matricielles : A =  
0 6
X sX
2
p √
||A||sum = |aij | = 9 , ||A||F = ∗
|aij | = trace(A A) = 41
i,j i,j

s Exemple norme généralisée : ||A||max = max |aij | = 6


i,j
 
1 1
B=C=  , kBCkmax = 2 > kBkmax .kCkmax = 1
1 1

Cours M2 UPS - Commande robuste 4 Jan-Fév 2012, Toulouse


Normes des systèmes

n Normes induites de matrices : E = Cn×m


||Ae||p
||A||ip = max = max ||Ae||p = max ||Ae||p
e6=0 ||e||p ||e||p ≤1 ||e||p =1

s Exemples : >> A = [1 − 2; 0 6]; norm(A, p)


!
X
||A||i1 = max |aij | = 8
j
i 
X
||A||i∞ = max  |aij | = 6
i
j
q
||A||i2 = σ(A) = max |λi (A∗ A)| = 6.3326 val. singulière max. ou norme spectrale
i

kAekp kAekp
s Nota : sup = max car {x : kxkp ≤ 1} est compact et k • kp continue.
e6=0 kek p e6 = 0 kek p
kAekp kAλf kp
s Nota : De plus max = max = max kAf kp .
e6=0 kekp kf kp =1,λ6=0 kλf kp kf kp =1

Cours M2 UPS - Commande robuste 5 Jan-Fév 2012, Toulouse


Normes des systèmes

l Les valeurs singulières d’une matrice


A ∈ Cl×m peut être factorisée à l’aide d’une décomposition en valeurs singulières :

A = U ΣV ∗ U ∈ Cl×l U ∗ = U −1 V ∈ Cm×m V ∗ = V −1

Σ est formée par une matrice diagonale des valeurs singulières σi dans l’ordre décroissant
- l ≥m:
 
diag(σ1 , · · · , σq ) p p
Σ=  σi (A) = λi (AA ) = λi (A∗ A)

0l−m×m

- l ≤m: h i
Σ= diag(σ1 , · · · , σq ) 0l×m−l
avec σ = σ1 ≥ · · · ≥ σq = σ > 0 et min(l, m) ≥ rang(A) = q ,

Cours M2 UPS - Commande robuste 6 Jan-Fév 2012, Toulouse


Normes des systèmes

s Valeurs singulières : exemple


>>A=[-1 0 2;1 0 -2;0 1 -1;0 0 1];[U,S,V] = SVD(A)
U =
-0.6485 0.2324 -0.1594 0.7071
0.6485 -0.2324 0.1594 0.7071
0.2941 0.9398 0.1739 0
-0.2690 -0.0932 0.9586 0.0000
S =
3.4259 0 0
0 1.0536 0
0 0 0.3918
0 0 0
V =
0.3786 -0.4412 0.8137
0.0858 0.8920 0.4437
-0.9216 -0.0982 0.3756

Cours M2 UPS - Commande robuste 7 Jan-Fév 2012, Toulouse


Normes des systèmes

l Propriétés des valeurs singulières


- σ(A−1 ) = 1/σ(A)
- σ(A) ≤ |λi (A)| ≤ σ(A)
- σ(AB) ≤ σ(A)σ(B)
- σ(A)σ(B) ≤ σ(AB)
- σi (A) − σ(A) ≤ σ(A + B) ≤ σi (A) + σ(B)
- σ(A) − 1 ≤ σ(A + 1) ≤ σ(A) + 1
- AA∗ ≤ σ(A)2 1 et A∗ A ≤ σ(A)2 1 (inégalités matricielles)

s Rayon spectral : ρ(A) = max |λi (A)|


i
- ρ(A) ≤ σ(A)

Cours M2 UPS - Commande robuste 8 Jan-Fév 2012, Toulouse


Normes des systèmes

l Propriétés entre les normes de matrices A ∈ Cn×m


p
- σ(A) ≤ ||A||F ≤ min(n, m)σ(A)
p
- σ(A) ≤ ||A||i1 ||A||i∞
1 √
- m ||A||i∞ ≤ σ(A) ≤ n||A||i∞

1 √
- n ||A||i1 ≤ σ(A) ≤ m||A||i1

- max{σ(A) , ||A||F , ||A||i1 , ||A||i∞ } ≤ ||A||sum

Cours M2 UPS - Commande robuste 9 Jan-Fév 2012, Toulouse


Normes des systèmes

n Normes des signaux


: [0 , +∞) → Rn
Un signal f (t) est une fonction du temps, continue par morceaux, f
n
Z ∞X n
X Z ∞
1- Norme 1 (L1 [0 , +∞)) : ||f ||1 = |fi (t)|dt = ||fi ||1 = kf (t)k1 dt
0 i=1 i=1 0
Interprétation : représente la consommation d’une ressource
Z n
∞X n
X Z ∞
2- Norme 2 (L2 [0 , +∞)) : ||f ||22 = fi (t)2 dt = ||fi ||22 = kfi (t)k22 dt
0 i=1 i=1 0
Interprétation : son carré représente l’énergie du signal
 
3- Norme ∞ (L∞ [0 , +∞)) : ||f ||∞ = sup max |fi (t)| = max ||fi ||∞ = sup kf (t)k∞
t 1≤i≤n 1≤i≤n t
Interprétation : pire des cas

f (t) = 1 − e−t , ||f ||∞ = 1

Cours M2 UPS - Commande robuste 10 Jan-Fév 2012, Toulouse


Normes des systèmes

s Norme des signaux : exemple


2.5

2
T

= (T − t)e−t ,
Soit le signal f (t) 1.5

T > Lambert W (1/e)

f(t)
1
La fonction de Lambert :
W = h−1 0.5

h : x → xex sur [−1/e , +∞[


0

−0.5
0 2 4 6 8 10 12 14 16 18 20
t

- ||f (t)||1 = 2e−T + T − 1


T2 1 T
- ||f (t)||2 = + −
2 4 2
- ||f (t)||∞ = T

Cours M2 UPS - Commande robuste 11 Jan-Fév 2012, Toulouse


Normes des systèmes

n Espaces de fonctions - Espaces de Hardy


l H2 : espace des fonctions s ∈ C 7→ fˆ(s) ∈ Cn×m telles que
 Z +∞ 1/2
1 h i
||fˆ||2 = trace fˆ∗ (jω)fˆ(jω) dω <∞
2π −∞

l Théorème de Paley-Wiener sur la transformée de Laplace

L2 [0 , +∞) → H2
Z +∞
f 7→ fˆ(s) = f (t)e−st dt
−∞

l Théorème de Parseval : ||f ||2 = ||fˆ||2


l RH2 : sous-ensemble des fonctions rationnelles strictement propres et stables
s Exemples :

s+1 s+1 (s − 1)
∈ RH2 6∈ RH2 6∈ RH2
(s + 2)(s + 3) (s + 2)(s − 3) (s + 1)

Cours M2 UPS - Commande robuste 12 Jan-Fév 2012, Toulouse


Normes des systèmes

n Espaces de fonctions - Espaces de Hardy


l H∞ : espace des fonctions s ∈ C 7→ fˆ(s) ∈ Cn×m
||fˆ||∞ = sup σ(fˆ(jω)) < ∞
ω∈R

s Nota : H∞ est un espace de Banach et n’est pas un espace de Hilbert.


(On ne peut pas définir de notion de produit scalaire)

s RH∞ : sous-ensemble des fonctions rationnelles propres et stables


||fˆ||∞ = sup σ(fˆ(jω)) = sup σ(fˆ(s))
ω∈R Re(s)>0

s Exemples :
s+1 (s − 1)
6∈ RH∞ ∈ RH∞
(s + 2)(s − 3) (s + 1)
 
s/(s + 3) h i
  6∈ RH∞ 1 (s − 1)/(s + 1) 1/(s + 2) ∈ RH∞
1/(s − 1)

Cours M2 UPS - Commande robuste 13 Jan-Fév 2012, Toulouse


Normes des systèmes

n Motivation : Afin d’évaluer la performance d’un système, étant donnée l’information sur les
signaux d’entrée w , quelle grandeur peut prendre le vecteur de sortie z ?

Quels sont les signaux d’entrée w considérés ? et qu’entend-on par taille ?

Quelques ensembles de signaux : w G z

- w est constitué d’impulsions δ(t − τi )


- w(t) = sin(ωt) pour ω fixée
- w est d’énergie finie ||w||2 ≤ 1
- w est borné en amplitude ||w||∞ ≤ 1
- w est un bruit blanc de moyenne nulle
La taille d’un signal (système) est précisée par l’utilisation de normes des signaux (systèmes)

Cours M2 UPS - Commande robuste 14 Jan-Fév 2012, Toulouse


Normes des systèmes

n Norme H2 des systèmes :


Soit G(s) = L(g(t)) fonction de transfert stable, strictement propre, causale
s Monovariable :
 Z +∞ 1/2
1
||G||2 = |G(jω)|2 dω = ||g||2
2π −∞
s Multivariable :
Z +∞
1 X
||G||22 = ∗
trace [G (jω)G(jω)] dω = ||gi ||22
2π −∞ i

l Interprétations :
- L’énergie du signal de sortie en réponse à un bruit blanc gaussien de moyenne nulle et de
variance 1
- La norme L2 de la réponse impulsionnelle du système à une entrée impulsionnelle sur chaque
entrée

Cours M2 UPS - Commande robuste 15 Jan-Fév 2012, Toulouse


Normes des systèmes

l Calcul de la norme H2
La norme H2 d’un système stable est finie ssi il est strictement propre et n’a pas de pôles sur
l’axe imaginaire
 
A B AWc + Wc A0 + BB 0 = 0
G(s) '   Equations de Lyapunov :
C 0 A0 W o + W o A + C 0 C = 0
Z ∞
At 0 A0 t
Wc = e BB e dt grammien de commandabilité
0

Z ∞
A0 t
Wo = e C 0 CeAt dt grammien d0 observabilité
0

||G||22 = trace [CWc C 0 ] = trace [B 0 Wo B]

Cours M2 UPS - Commande robuste 16 Jan-Fév 2012, Toulouse


Normes des systèmes

s Exemple de calcul de la norme H2


>> A=[-1 2 0;0 -2 1;0 0 -3];B=[0 1;1 0; 1 1];C=[1 0 -1];D=[0 0
>> sys=ss(A,B,C,D);
>> h2=norm(sys,2)
h2 =
0.9129
>> A=[-1 2 0;0 -2 1;0 0 -3];B=[0 1;1 0; 1 1];C=[1 0 -1];
>> Wc=lyap(A,B*B’)
Wc =
1.2667 0.3833 0.3833
0.3833 0.3833 0.2667
0.3833 0.2667 0.3333
>> h2=sqrt(trace(C*Wc*C’))
h2 =
0.9129

Cours M2 UPS - Commande robuste 17 Jan-Fév 2012, Toulouse


Normes des systèmes

n Norme H∞ des systèmes :


Soit G(s) = L(g(t)) fonction de transfert stable, propre, causale
s Monovariable :

||Gw||2
||G||∞ = sup |G(jω)| = sup
ω w6=0,w∈L2 ||w||2
s Multivariable :
||Gw||2
||G||∞ = sup σ(G(jω)) = sup
ω w6=0,w∈L2 ||w||2

l Interprétations :
- La valeur maximale de l’amplitude dans Bode ou la distance de l’origine au point le plus éloigné
du lieu de transfert dans Nyquist (monovariable)
- La norme induite L2

Cours M2 UPS - Commande robuste 18 Jan-Fév 2012, Toulouse


Normes des systèmes

Cours M2 UPS - Commande robuste 19 Jan-Fév 2012, Toulouse


Normes des systèmes

l Calcul de la norme H∞
 
A B
Soit G(s) '   , R(γ) = D0 D − γ 2 1
C D
s Lemme : La norme H∞ d’un système stable est finie ssi il n’a pas de pôles sur l’axe imagi-
naire

Matrice Hamiltonienne :
 
A − BR−1 (γ)D0 C −BR−1 (γ)B 0
Hγ =  
−C 0 (1 − DR−1 (γ)D0 )C −A0 + C 0 DR−1 (γ)B 0

s Thm : Pour γ > σ(D), ||G||∞ < γ ssi Hγ n’a pas de valeur propre sur l’axe imaginaire
Λ(Hγ ) ∩ C0 = ∅

Cours M2 UPS - Commande robuste 20 Jan-Fév 2012, Toulouse


Normes des systèmes

l Calcul de la norme H∞
s γ -itérations :
- On choisit [γmin , γmax ] tel que
γmin > σ(D)
- Pour γ = 1/2(γmin + γmax ), on forme Hγ et on calcule ses valeurs propres.
- Si les valeurs propres ne sont pas sur l’axe imaginaire :

On diminue γ en choisissant un nouvel intervalle [γmin , γ]


- Si les valeurs propres sont sur l’axe imaginaire :

On augmente γ en choisissant un nouvel intervalle [γ, γmax ]


- On répète ce processus jusqu’à obtenir une approximation de

γ∞ = ||G||∞

Cours M2 UPS - Commande robuste 21 Jan-Fév 2012, Toulouse


Normes des systèmes

s Exemple de calcul de la norme H2


1
G(s) = a>0
s+a
Une réalisation minimale d’état est donnée par :

ẋ = −ax + u
y=x

Les équations de Lyapunov sont :

−2aWc + 1 = 0 −2aWo + 1 = 0

d’où les grammiens et la norme H2 :

1 1
Wc = Wo = ||G||2 = √
2a 2a

Cours M2 UPS - Commande robuste 22 Jan-Fév 2012, Toulouse


Normes des systèmes

1
s Exemple de calcul de la norme H∞ de G(s) =
s+a
La matrice Hamiltonnienne :  
−a γ −2
Hγ =  
−1 a
Le polynôme caractéristique de Hγ :

P (λ) = λ2 + (1/γ 2 − a2 )

Les valeurs propres de Hγ :

1 p 1 p
γ> λ = ± 1/γ 2 − a2 γ< λ = ±j 1/a2 − γ 2
a a
La norme H∞ :
1
||G||∞ =
a

Cours M2 UPS - Commande robuste 23 Jan-Fév 2012, Toulouse


Normes des systèmes

>> A=[-1 0 -2;0 -1 1;0 0 -4];B=[0;0;1];C=[1 1 0];D=2;


>> sys=ss(A,B,C,D);
>> [hinf,fpeak]=norm(sys,inf,1e-4)
hinf =
2.0225
fpeak =
3.9441
Bode Diagrams

5.8

5.6

5.4
Phase (deg); Magnitude (dB)

5.2

0
−1 0 1 2
10 10 10 10

Frequency (rad/sec)

Cours M2 UPS - Commande robuste 24 Jan-Fév 2012, Toulouse


Analyse fréquentielle multivariable

= G(s)d où y ∈ Rr et d ∈ Rm .
Soit le modèle entrée-sortie multivariable y
- On applique une sinusoı̈de dj (t) = dj0 sin(ωt+αj ) sur l’entrée j alors yi (t) = yi0 sin(ωt+
βi )
yi0
= |gij (jω)| βi − αj = arg [gij (jω)]
dj0
- On applique simultanément sur chaque entrée des signaux sinusoı̈daux de même fréquence
ω + principe de superposition
m
X
yi (ω) = gij (jω)dj (ω) y(ω) = G(jω)d(ω)
j=1

Nota : dj (ω) = d0j ejαj

Cours M2 UPS - Commande robuste 25 Jan-Fév 2012, Toulouse


Analyse fréquentielle multivariable

- Gain des systèmes SISO :

|y(ω)| |G(jω)d(ω)|
= = f (ω) = |G(jω)|
|d(ω)| |d(ω)|
- Gain des systèmes MIMO :

||y(ω)||2 ||G(jω)d(ω)||2
= = f (ω, d)
||d(ω)||2 ||d(ω)||2
Nota :
- f (ω) est indépendante de ||d(ω)|| mais dépend de la direction d’entrée d
- La notion de phase pour les systèmes multivariables est complexe à définir et ne sera pas
abordée dans ce cours

Cours M2 UPS - Commande robuste 26 Jan-Fév 2012, Toulouse


Analyse fréquentielle multivariable

 
3 2
Exemple : G =  
−1 1

 
4
1 √
d1 =   ||y1 ||2 = 10 Valeur singulière max. = 3.618

0 3.5

3
 

!y! 2 /!d! 2
0 √ 2.5
d2 =   ||y2 ||2 = 5
1 2

  1.5
Valeur singulière min. = 1.382
0.707
d3 =   ||y3 ||2 = 2.9150 1

−0.707 −5 −4 −3 −2 −1 0
d20 /d10
1 2 3 4

Cours M2 UPS - Commande robuste 27 Jan-Fév 2012, Toulouse


Analyse fréquentielle multivariable

Definition 1 :
- La valeur maximale du gain quand l’entrée varie est la valeur singulière maximale de G :

||Gd||2
max = max ||Gd||2 = σ(G)
d6=0 ||d||2 ||d||2 =1

- La valeur minimale du gain quand l’entrée varie est la valeur singulière minimale de G :

||Gd||2
min = min ||Gd||2 = σ(G)
d6=0 ||d||2 ||d||2 =1

Nota : le gain est indépendant de l’amplitude d’entrée

Cours M2 UPS - Commande robuste 28 Jan-Fév 2012, Toulouse


Analyse fréquentielle multivariable

Soit G(jω) ∈ Cr×m une matrice de réponse fréquentielle telle que sa SVD pour ω fixée est
 
σ(ω)
..
 
 . 0 
G(jω) = U (ω)Σ(ω)V ∗ (ω) Σ(ω) = 
 


 σ(ω) 

0 0

Definition 2 :

Les valeurs singulières sont appelées valeurs principales ou gains principaux. De plus, on définit
les directions d’entrée vj et de sortie ui :

V = [vj ]j=1,···,m U = [ui ]i=1,···r G(jω)V = U Σ(ω) Gvi = σi ui σi = ||Gvj ||2

Nota : la ième valeur singulière donne le gain dans la direction i.

Cours M2 UPS - Commande robuste 29 Jan-Fév 2012, Toulouse


Analyse fréquentielle multivariable

Exemple : modèle deux entrées - deux sorties

Singular Values

30

20
 A=[-0.1+j 1 -1 ;0 -0.1-j 2 ;0 0 -6] ;
10
 B=[0 1 ; 1 0 ; 1 1] ;
Singular Values (dB)

0
 C=[3 1 0 ;-1 0 1] ;
−10  D=[0 0 ;0 0] ;

−20  sys=ss(A,B,C,D) ;

−30  sigma(sys,0.1,100)

−40
−1 0 1 2
10 10 10 10
Frequency (rad/sec)

Cours M2 UPS - Commande robuste 30 Jan-Fév 2012, Toulouse


Cours M2 ASTR - module FRS - Commande Robuste

Annexe - LMI et Outils d’optimisation


Linear Matrix Inequalities & Optimization tools

n Convex cones
l A set K is a cone if for every x ∈ K and λ ≥ 0 we have λx ∈ K.
l A set is a convex cone if it is convex and a cone.

Cours M2 UPS - Commande robuste 2 Jan-Fév 2012, Toulouse


Linear Matrix Inequalities & Optimization tools

n Convex cones  
s Convex cone of positive reals : x = x1 . . . xn ∈ Rn+
n   o
n
s Second order (Lorentz) cone : Ksoc = x = x1 . . . x n , x21 + . . . x2n−1 ≤ x2n

3
Ksoc :

Cours M2 UPS - Commande robuste 3 Jan-Fév 2012, Toulouse


Linear Matrix Inequalities & Optimization tools

n Convex cones
s Convex cone of positive reals : x ∈ R+n   o
n
s Second order (Lorentz) cone : Ksoc = x= x1 ... xn , x21 + . . . x2n−1 ≤ x2n
s Positive
 semi-definite matrices :   

 x1 xn+1 ··· xn(n−1)+1 

x =

mat(x)   

n  . ..
Kpsd = , =  .. ≥0

.
 

 x 1 · · · x n2 = mat(x)T   

xn x2n ··· x n2

 

 
2
x1 x2
Kpsd :  ≥0
x2 x3

Cours M2 UPS - Commande robuste 4 Jan-Fév 2012, Toulouse


Linear Matrix Inequalities & Optimization tools

n Convex cones
s Convex cone of positive reals : x ∈ R+n   o
n
s Second order (Lorentz) cone : Ksoc = x = x1 . . . x n , x21 + . . . x2n−1 ≤ x2n
n   o
n
s Positive semi-definite matrices : Kpsd = x = x 1 · · · x n2 , mat(x) ≥ 0
n1 nq
s Unions of such : K = R+ × · · · × Ksoc × . . . × Kpsd × ···

Cours M2 UPS - Commande robuste 5 Jan-Fév 2012, Toulouse


Linear Matrix Inequalities & Optimization tools

n Optimization over convex cones

p? = min cx : Ax = b , x ∈ K

s Linear programming : K = R+ × · · · R+ .
n1 nq
s Semi-definite programming : K = Kpsd × · · · Kpsd
l Dual problem
d? = max bT y : AT y − cT = z , z ∈ K
s Primal feasible → Dual infeasible
s Dual feasible → Primal infeasible
s If primal and dual strictly feasible p? = d?
l Polynomial-time algorithms (O(n6.5 log(1/)))

Cours M2 UPS - Commande robuste 6 Jan-Fév 2012, Toulouse


Linear Matrix Inequalities & Optimization tools

n Optimization over convex cones

p? = min cx : Ax = b , x ∈ K

l Dual problem
d? = max bT y : AT y − cT = z , z ∈ K
l Possibility to perform convex optimization, primal/dual, interior-point methods, etc.
s Interior-point methods [Nesterov, Nemirovski 1988] - Matlab Control Toolbox [Gahinet et al.]
s Primal-dual path-following predictor-corrector algorithms :
SeDuMi (Sturm), SDPT3 (Toh, Tütüncü, Todd), CSDP (Borchers), SDPA (Kojima et al.)
s Primal-dual potential reduction : MAXDET (Wu, Vandenberghe, Boyd)
s Dual-scaling path-following algorithms : DSDP (Benson, Ye, Zhang)
s Barrier method and augmented Lagrangian : PENSDP (Kocvara, Stingl)
s Cutting plane algorithms ...

Cours M2 UPS - Commande robuste 7 Jan-Fév 2012, Toulouse


Linear Matrix Inequalities & Optimization tools

n Semi-Definite Programming and LMIs



 p? = min cx : Ax = b , x ∈ K
l SDP formulation
 d? = max bT y : AT y − cT = z , z ∈ K

 d? = min P g y : F + P F y ≥ 0
i i 0 i i
l LMI formalism
 p? = max Tr(F0 X) : Tr(Fi X) + gi = 0 , X ≥ 0

l In control problems : variables are matrices


s The H∞ norm computation example for G(s) ∼ (A, B, C, D) :
 
2 AT P + P A + C T C BP + C T D
kG(s)k∞ = min γ : P > 0 ,  <0
P B T + DT C −γ1 + DT D
| {z }
2 32 3T 2 32 3T
6 CT 76 CT 7 6 0 76 0 7
6 76 7 −γ 6 76 7 +p11 ...
DT DT
4 54 5 4 54 5
1 1

n Need for a nice parser

Cours M2 UPS - Commande robuste 8 Jan-Fév 2012, Toulouse


Linear Matrix Inequalities & Optimization tools

n Parsers : LMIlab, tklmitool, sdpsol, SeDuMiInterface...


l YALMIP
s Convert LMIs to SDP solver format (all available solvers !)
s Simple to use
>> P = sdpvar( 3, 3, ’symmetric’);
>> lmiprob = lmi ( A’*P+P*A<0 ) + lmi ( P>0 );
>> solvesdp( lmiprob );

s Works in Matlab - free !


http ://users.isy.liu.se/johanl/yalmip
s Extends to other non-SDP optimization problems (BMI...)
s SDP dedicated version in Scilab [S. Solovyev]
http ://www.laas.fr/OLOCEP/SciYalmip

Cours M2 UPS - Commande robuste 9 Jan-Fév 2012, Toulouse


Linear Matrix Inequalities & Optimization tools

n SDP-LMI issues and prospectives


l Any SDP representable problem is ”solved” (numerical problems due to size and structure)
s Find ”SDP-ables” problems
(linear systems, performances, robustness, LPV, saturations, delays, singular systems...)
s Equivalent SDP formulations þ distinguish which are numerically efficient
s New SDP solvers : faster, precise, robust (need for benchmark examples)

Cours M2 UPS - Commande robuste 10 Jan-Fév 2012, Toulouse


Linear Matrix Inequalities & Optimization tools

n SDP-LMI issues and prospectives


l Any SDP representable problem is ”solved” (numerical problems due to size and structure)
s Find ”SDP-ables” problems
(linear systems, performances, robustness, LPV, saturations, delays, singular systems...)
s Equivalent SDP formulations þ distinguish which are numerically efficient
s New SDP solvers : faster, precise, robust (need for benchmark examples)
l Any ”SDP-able” problem has a dual interpretation
s New theoretical results (worst case)
s New proofs (Lyapunov functions = Lagrange multipliers ; related to SOS)
s SDP formulas numerically stable (KYP-lemma)

Cours M2 UPS - Commande robuste 11 Jan-Fév 2012, Toulouse


Linear Matrix Inequalities & Optimization tools

n SDP-LMI issues and prospectives


l Any SDP representable problem is ”solved” (numerical problems due to size and structure)
s Find ”SDP-ables” problems
(linear systems, performances, robustness, LPV, saturations, delays, singular systems...)
s Equivalent SDP formulations þ distinguish which are numerically efficient
s New SDP solvers : faster, precise, robust (need for benchmark examples)
l Any ”SDP-able” problem has a dual interpretation
s New theoretical results (worst case)
s New proofs (Lyapunov functions = Lagrange multipliers ; related to SOS)
s SDP formulas numerically stable (KYP-lemma)
l Non ”SDP-able” : Robustness & Multi-objective & Relaxation of NP-hard problems
s Optimistic / Pessimistic (conservative) results
s Reduce the gap (upper/lower bounds) while handling numerical complexity growth.

Cours M2 UPS - Commande robuste 12 Jan-Fév 2012, Toulouse


Linear Matrix Inequalities & Optimization tools

n SDP-LMI issues and prospectives


l Any SDP representable problem is ”solved” (numerical problems due to size and structure)
s Find ”SDP-ables” problems
(linear systems, performances, robustness, LPV, saturations, delays, singular systems...)
s Equivalent SDP formulations þ distinguish which are numerically efficient
s New SDP solvers : faster, precise, robust (need for benchmark examples)
l Any ”SDP-able” problem has a dual interpretation
s New theoretical results (worst case)
s New proofs (Lyapunov functions = Lagrange multipliers ; related to SOS)
s SDP formulas numerically stable (KYP-lemma)
l Non ”SDP-able” : Robustesse & Multi-objective & Relaxation of NP-hard problems
s Optimistic / Pessimistic (conservative) results
s Reduce the gap (upper/lower bounds) while handling numerical complexity growth.
l Develop software for ”industrial” application / adapted to the application field
þ RoMulOC toolbox

Cours M2 UPS - Commande robuste 13 Jan-Fév 2012, Toulouse


Manipulating inequalities to obtain LMI results

n Congruence
l A > 0 ⇔ for any non zero vector x : xT Ax > 0.
l A > 0 ⇒ for any full column rank matrix B : B T AB > 0.
l A > 0 ⇒ for any matrix B : B T AB ≥ 0.
l A > 0 ⇔ exists a square non-singular matrix B : B T AB > 0.

s Most LMI results are formulated as (sufficiency)


If ∃P . . . : L(P . . .) > 0 then the system ẋ = f (x, w . . .) is such that...

To prove these results : perform congruence with vectors x, w . . .

s Example (Lyapunov) :
If ∃P : P > 0 , AT P + P A < 0 then the system ẋ = Ax is stable.

Proof : V (x) = xT P x > 0, V̇ (x) = xT (AT P + P A)x = 2ẋT P x < 0 for all x 6= 0.

Cours M2 UPS - Commande robuste 14 Jan-Fév 2012, Toulouse


Manipulating inequalities to obtain LMI results

n Examples of nominal performance analysis : (P > 0)

l Stability (discrete-time) AT P A − P < 0


  
h i r P r P 1
∗ 11 12
l Regional pole placement 1 A    <0

r12 P r22 P A
 
AT P + P A + CzT Cz P Bw + CzT Dzw
l H∞ norm  <0
BwT T
P + Dzw Cz −γ 2 1 + Dzw
T
Dzw

AT P + P A + CzT Cz < 0
l H2 norm
T
trace(Bw P Bw ) < γ2

AT P + P A < 0 T
Bw P Bw < γ 2 1
l Impulse-to-peak
CzT Cz < P T
Dzw Dzw < γ 2 1

Cours M2 UPS - Commande robuste 15 Jan-Fév 2012, Toulouse


Manipulating inequalities to obtain LMI results

n Tools to ‘build’ LMI results


l Schur complement
  
 A > BC −1 B T A B
⇔ >0
 C>0 BT C

s Example :

 (AX + BS)X −1 (XAT + S T B T ) − X < 0
 X>0
 
−X AX + BS
⇔  <0
XAT + S T B T −X

Cours M2 UPS - Commande robuste 16 Jan-Fév 2012, Toulouse


Manipulating inequalities to obtain LMI results

n Tools to ‘build’ LMI results


l Finsler lemma - Elimination lemma - Creation lemma

xT Ax < 0 ∀x : Bx = 0 ⇔ ∃τ ∈ R : A < τ B T B
⇔ ∃X = X T : A < B T XB
⇔ ∃G : A < B T GT + GB
⇔ B ⊥T AB ⊥ < 0

s where B ⊥ columns generate the null space of B :

B ∈ Rp×m , rank(B) = r < m , BB ⊥ = 0 , B ⊥ ∈ Rm×(m−r) , B ⊥T B ⊥ > 0

s G is a ’Slack variable’ (Lagrange multiplier)

Cours M2 UPS - Commande robuste 17 Jan-Fév 2012, Toulouse


Manipulating inequalities to obtain LMI results

n Tools to ‘build’ LMI results


l Finsler lemma - Elimination lemma - Creation lemma

xT Ax < 0 ∀x : Bx = 0 ⇔ ∃τ ∈ R : A < τ B T B
⇔ ∃X = X T : A < B T XB
⇔ ∃G : A < B T GT + GB
⇔ B ⊥T AB ⊥ < 0

s Example :
 T     
ẋ 0 P ẋ h i ẋ
V̇ (x) =     <0 , ∀ 1 −A  =0
x P 0 x x
   
0 P −1 h i
⇔ ∃G :  +  GT + G −1 A <0
T
P 0 A

Cours M2 UPS - Commande robuste 18 Jan-Fév 2012, Toulouse


Manipulating inequalities to obtain LMI results

n Tools to ‘build’ LMI results


l Finsler lemma - Elimination lemma - Creation lemma

 C ⊥T AC ⊥ < 0
⇔ ∃H : A < B T H T C + C T HB
 B ⊥T AB ⊥ < 0

s Example
   

 h i P 0 0
−P = 0 1 <0

  

0 −P 1


  

 h i P 0 A
T
A PA − P = A 1  <0

 

0 −P 1

     
P 0 −1 h i 1 h i
⇔ ∃H :  <  HT 1 0 + H −1 A
T
0 −P A 0

Cours M2 UPS - Commande robuste 19 Jan-Fév 2012, Toulouse


Manipulating inequalities to obtain LMI results

n Tools to ‘build’ LMI results


l S-procedure [Yakubovich]

xT M x < 0 ∀x : xT N x ≤ 0 ⇔ ∃τ > 0 : M < τ N

s Example :
 T  
1 1
  M  < 0, ∀∆T ∆ ≤ 1
∆ ∆
 T    T   
z∆ z∆ z∆ −1 0 z∆
⇔   M   < 0, ∀      ≤0
w∆ w∆ w∆ 0 1 w∆
 
−1 0
⇔ ∃τ > 0 : M < τ  
0 1

Cours M2 UPS - Commande robuste 20 Jan-Fév 2012, Toulouse


Manipulating inequalities to obtain LMI results

n Tools to ‘build’ LMI results


l S-procedure [Yakubovich]

xT M x < 0 ∀x : xT N x ≤ 0 ⇔ ∃τ > 0 : M < τ N

s Example :
 T  
1 1
  M  < 0, ∀∆T ∆ ≤ 1
∆(1 − D∆)−1 C ∆(1 − D∆)−1 C
 T    T   
x x z∆ −1 0 z∆
⇔   M   < 0, ∀      ≤0
w∆ w∆ w∆ 0 1 w∆
z∆ = Cx + Dw∆
 T   
C D −1 0 C D
⇔ ∃τ > 0 : M < τ     
0 1 0 1 0 1

s Special case :
X + C T ∆T B T + B∆C < 0, ∀∆T ∆ ≤ 1 ⇔ ∃τ > 0 : X + τ C T C + τ −1 BB T < 0

Cours M2 UPS - Commande robuste 21 Jan-Fév 2012, Toulouse


Manipulating inequalities to obtain LMI results

n Tools to ‘build’ LMI results


l D and DG-scalling
 T  
1 1
  M  < 0, ∀∆ = δ1 : δ ∈ C , |δ| ≤ 1
∆(1 − D∆)−1 C ∆(1 − D∆)−1 C
 T   
C D −Q 0 C D
⇔ ∃Q > 0 : M <     
0 1 0 Q 0 1
 T  
1 1
  M  < 0, ∀∆ = δ1 : δ ∈ R , |δ| ≤ 1
∆(1 − D∆)−1 C ∆(1 − D∆)−1 C
 T   
T
C D −Q T C D
⇔ ∃Q > 0, T = −T : M<     
0 1 TT Q 0 1

Cours M2 UPS - Commande robuste 22 Jan-Fév 2012, Toulouse


Manipulating inequalities to obtain LMI results

n Tools to ‘build’ LMI results


l Kalman-Yakubovich-Popov KYP lemma
 ∗  
1 1
  M  < 0, ∀ω ∈ R
(jω1 − A)−1 B (jω1 − A)−1 B
 T   
A B 0 Q A B
⇔ ∃Q : M <     
0 1 Q 0 0 1

l And so on... Full-Block S-procedure [Scherer], Quadratic Separation [Iwasaki]


 ∗  
1 1
  M  < 0, ∀∆ ∈ ∆ ∆
−1 −1
∆(1 − D∆) C ∆(1 − D∆) C
 T    ∗  
C D C D 1 1
⇔ M<   Θ   ,   Θ   < 0 ∀∆ ∈ ∆

0 1 0 1 ∆ ∆

s Difficulty : build the ‘separator’ Θ, losslessly...

Cours M2 UPS - Commande robuste 23 Jan-Fév 2012, Toulouse


Manipulating inequalities to obtain LMI results

n Tools to ‘build’ LMI results


l S-procedure [Yakubovich]

xT M x < 0 ∀x : xT N x ≤ 0 ⇔ ∃τ > 0 : M < τ N




 x T N1 x ≤ 0
∃τ1 > 0, . . . τp > 0 :


T ..
x M x < 0 ∀x : . ⇐

 M < τ1 N1 + · · · τp Np
 xT N x ≤ 0

p

s Not lossless except in few special cases : ∆ composed of


• mr scalar real repeated,
• mc scalar complex repeated,
• mF full complex non-repeated blocks
[Meinsma et al.] DG-scalling lossless if 2(mr + mc ) + mF ≤ 3 !

Cours M2 UPS - Commande robuste 24 Jan-Fév 2012, Toulouse


Cours M2 ASTR - module FRS - Commande Robuste

Cours 1 - Modèles linéaires incertains


Modèles linéaires incertains

Bruits Perturbations
Perturbations
Bruits

Entrées Modèle Sorties


Modélisation Mathématique
Système Incertain

Signaux controlés
Commandes
Mesures

n Le cours se limite aux systèmes linéaires


l Modèles par fonctions et matrices de transfert incertaines
l Modèles dans l’espace d’état

Cours M2 UPS - Commande robuste 2 Jan-Fév 2012, Toulouse


Modèles linéaires incertains

n Exemple de modélisation incertaine


l Système physique réel :
Lanceur constitué de deux étages reliés par une liaison visco-élastique et soumis à des pertur-
bations dues au vent et à la poussée du moteur

l Modèle physique idéal :


Deux masses couplées par un amortisseur et un ressort et soumises à des forces

Cours M2 UPS - Commande robuste 3 Jan-Fév 2012, Toulouse


Modèles linéaires incertains

l Modèle mathématique idéal : Modèle variant dans le temps et non linéaire

M1 (t)ẍ1 + f (ẋ1 − ẋ2 ) + k(x1 − x2 ) = u + w1


M2 ẍ2 + f (ẋ2 − ẋ1 ) + k(x2 − x1 ) = w2

où M1 (t) : fonction du temps et f et k fonctions non linéaires


M1 (t), M2 , f , k connues de façon approchée (car système idéalisé)
l Modèle mathématique réduit : linéarisé autour de zéro
2 3 2 3 2 3
0 0 1 0 0 0 0
!
0 0 0 1 0 0 0
6 7 6 7 6 7
6 7 6 7 w1 6 7
ẋ = 6 7x + 6 7 +6 7u
6 − k
M1 (t)
k
M1 (t)
− M f(t) f
M1 (t)
7 6 1
M1 (t)
0 7
w2
6 1
M1 (t)
7
1
4 5 4 5 4 5
f
k
M2 − Mk M2 − Mf 0 1
M2 0
2 2
h i
y= 0 1 0 0 x

Cours M2 UPS - Commande robuste 4 Jan-Fév 2012, Toulouse


Modèles linéaires incertains

l Modèle incertain :
s Incertitude paramétrique : M 2 ≤ M2 ≤ M 2
s Incertitude temps variant : M 1 ≤ M1 (t) ≤ M 1 ∀t ∈ [0 t̄]
(avec éventuellement bornes sur dérivées, tq Ṁ1 (t) ≤0)

s non-linéarités de gain borné : k ≤ k ≤ k , f ≤ f ≤ f

Cours M2 UPS - Commande robuste 5 Jan-Fév 2012, Toulouse


Modèles linéaires incertains

l Modèle incertain affine :


A(α) Bw (α) Bu (α)
z }| { z }| { z }| {
2 3 2 3 2 3
0 0 1 0 0 0 0
6 7 6 7 ! 6 7
6 0 0 0 1 7 6 0 0 7 w1 6 0 7
ẋ = 6 7x + 6 7 +6 7u
4 −αk1 αk1 −αf 1 αf 1 4 αM 1 0 w2 4 αM 1
6 7 6 7 6 7
5 5 5
αk2 −αk2 αf 2 −αf 2 0 αM 1 0
h i
y= 0 1 0 0 x

s Incertitudes découplées
k k f f 1 1
≤ αki ≤ , ≤ αf i ≤ , ≤ αM i ≤
Mi Mi Mi Mi Mi Mi
s Représentation englobante avec 6 paramètres incertains au lieu de 4
s Les réalisations du premier modèle incertain sont incluses dans celui-ci

Cours M2 UPS - Commande robuste 6 Jan-Fév 2012, Toulouse


Modèles linéaires incertains

l Modèle incertain affine parallélotopique :


s Incertitudes normalisées : αj = cj + rj δj , δj ∈ [−1 1]
“ ” “ ” “ ”
1 k k 1 f f 1 1 1
cki = 2
+ Mi
, cf i = 2
+ Mi
, cM i = 2
+ Mi
“ Mi ” “ Mi ” “ Mi ”
1 k k 1 f f 1 1 1
rki = 2 Mi
− Mi
, rf i = 2 Mi
− Mi
, rM i = 2 Mi
− Mi

s Modèle affine parallélotopique


h i h i
A(α) Bw (α) Bu (α) = A(c) Bw (c) Bu (c)
P6 h i
+ j=1 δj A(r̂j ) Bw (r̂j ) Bu (r̂j )
 
s Modèle nominal (central) : A(c) Bw (c) Bu (c)
 
s Déviations selon les ”axes” A(r̂j ) Bw (r̂j ) Bu (r̂j ) :
2 3
0 0 0 0 0 0 0
6 7
h i 6 0 0 0 0 0 0 0 7
A(r̂k1 ) Bw (r̂k1 ) Bu (r̂k1 ) =6
6 7
7
6 −rk1 rk1 0 0 0 0 0 7
4 5
0 0 0 0 0 0 0

Cours M2 UPS - Commande robuste 7 Jan-Fév 2012, Toulouse


Modèles linéaires incertains

l Modèle incertain affine polytopique :


6
h i
2
A(c) Bw (c) Bu (c) X h
[v] [v]
i
P6 h i = ζv A[v] Bw Bu
+ j=1 δj A(r̂j ) Bw (r̂j ) Bu (r̂j ) v=1

s ζ appartient au simplex
X
ζv = 1 , ζv ≥ 0
h i
[v] [v]
s A[v] Bw Bu sont les sommets du polytope
calculés en prenant les 26 combinaisons extrêmes des δj ∈ [−1 1].
s Le modèle incertain = combinaison convexe des sommets
h i nh i o
[v] [v] 6
A(α) Bw (α) Bu (α) ∈ CO A[v] Bw Bu , v = 1...v = 2

s Complexité combinatoire v.s. nombre de paramètres incertains

Cours M2 UPS - Commande robuste 8 Jan-Fév 2012, Toulouse


Modèles linéaires incertains

l Modèle incertain affine polytopique :


s Peuvent être construits à la données de familles de modèles identifiés
s Example : Modélisation des dynamiques longitudinales d’un avion civil.
Profondeur
Stabilisateur horizontal Mach MAX

Distance (L)
Centre de gravité

Force (F )

Mach
AX
eM
ud
tit

in
Al

Vc m
Mouvement résultant

Vc MAX
in
em
tud
Alti
Vc (kts)

Modèles non-linéaires sur un point de vol i, approximés par modèles linéaires incertains définis
comme l’enveloppe convexe des modèles voisins dans l’espace des paramètres :

Mθi (ζ) = CO Mθj : ||θj − θi || ≤ α

Cours M2 UPS - Commande robuste 9 Jan-Fév 2012, Toulouse


Modèles linéaires incertains

l Modèle LFT :
M1 ẍ1 + f (ẋ1 − ẋ2 ) + k(x1 − x2 ) = u + w1
M2 ẍ2 + f (ẋ2 − ẋ1 ) + k(x2 − x1 ) = w2
s Réécriture avec incertitudes normalisées

(c1 + r1 δ1 )ẍ1 + (cf + rf δf )(ẋ1 − ẋ2 ) + (ck + rk δk )(x1 − x2 ) = u + w1


(c2 + r2 δ2 )ẍ2 + (cf + rf δf )(ẋ2 − ẋ1 ) + (ck + rk δk )(x2 − x1 ) = w2

s On remplace tous les termes ”non-linéaires” par des signaux exogènes

c1 ẍ1 + r1 w∆1 + cf (ẋ1 − ẋ2 ) + rf w∆f + ck (x1 − x2 ) + rk w∆k = u + w1


c2 ẍ2 + r2 w∆2 + cf (ẋ2 − ẋ1 ) − rf w∆f + ck (x2 − x1 ) − rk w∆k = w2

s Signaux exogènes exprimés en fct des incertitudes et de combinaisons linéaires des états

w∆1 = δ1 z∆1 , w∆2 = δ2 z∆2 , w∆f = δf z∆f , w∆k = δk z∆k


z∆1 = ẍ1 , z∆2 = ẍ2 , z∆f = ẋ1 − ẋ2 , z∆k = x1 − x2

Cours M2 UPS - Commande robuste 10 Jan-Fév 2012, Toulouse


Modèles linéaires incertains

l Modèle LFT : forme descripteur


E
z }| {
2 30 1
c1 0 0 0 0 0 0 0 ẍ1
6 7B C
6
6 0 c2 0 0 0 0 0 0 7
7B
B ẍ2 C
C
6 7B C
6
6 0 0 1 0 0 0 0 0 7
7B
B ẋ1 C
C
ẋ2 C
6 7B C
6 0 0 0 1 0 0 0 0 7B
6 7B C
−1 0 0 0 1 0 0 0 7B z∆1 C
6 7B C
6
6 7B C
0 −1 0 0 0 1 0 0 7B z∆2 C
6 7B C
6
6 7B C
6
4 0 0 0 0 0 0 1 0 7
5@
B z∆f CA
0 0 0 0 0 0 0 1 z∆k
0 1
ẋ1
ẋ2
B C
2 3B C
−cf cf −ck ck −r1 0 −rf −rk 1 0 1 B C
x1
B C
6 7B C
6 cf −cf ck −ck 0 −r2 rf rk 0 1 0 7B C
6
6
7B
7B x2 C
C
6 0 0 1 0 0 0 0 0 0 0 0 7B C
6
6
7B
7B w∆1 C
C
6 0 0 0 1 0 0 0 0 0 0 0 7B C
= 6
6
7B
7B w∆2 C
C
6 0 0 0 0 0 0 0 0 0 0 0 7B C
6 7B w∆f C
0 0 0 0 0 0 0 0 0 0 0
6 7B C
6 7B C
6 7B w∆k C
6
4 1 −1 0 0 0 0 0 0 0 0 0 7B
5B
C
C
B w1 C
0 0 1 −1 0 0 0 0 0 0 0 B C
w2
B C
| {z }@ A
A u

Cours M2 UPS - Commande robuste 11 Jan-Fév 2012, Toulouse


Modèles linéaires incertains

l Modèle LFT : En multipliant par E −1 on trouve


 ẋ1

cf cf c ck r rf r 1 1 ẋ2
− k − 1 − k
2 3
 ẍ1
 − 0 − 0
c c1 c1 c1 c1 c c1 c1 c1
cf1 cf rf1 x1
6 ck c r rk 1
7  
ẍ2 − − k 0 − 2 0 0
6 7  
  6
6 c2 c2 c2 c2 c2 c2 c2 c2 7
7  x2 
ẋ1 6
6 0 0 1 0 0 0 0 0 0 0 0
7
7
  6 7  w∆1 
ẋ2 6
0 0 0 1 0 0 0 0 0 0 0
7
=
  6 7  w∆2

 z∆1
6 cf cf c ck r rf r 1 1
7  
− k − 1 − k
6 7
6 − 0 − 0 7
w∆f
  c c1 c1 c1 c1 c c1 c1 c1  
cf1 rf1
6 7
z∆2 6 cf ck c r rk 1
7
− k − 2
  6 − 0 0 0 7  w∆k

z∆f
6
6 c2 c2 c2 c2 c2 c2 c2 c2 7
7  
6
1 −1 0 0 0 0 0 0 0 0 0
7  w1 
z∆k
4 5
0 0 1 −1 0 0 0 0 0 0 0 w2
| {z } u
» –
A B∆ Bw Bu
C∆ D∆∆ D∆w D∆u

s Modèle linéaire sans incertitudes, bouclé par matrice diagonale incertaine


 
δ1
δ2
w∆ =   z∆ = ∆z∆
 
δf
δk

Cours M2 UPS - Commande robuste 12 Jan-Fév 2012, Toulouse


Modèles linéaires incertains

n Théorème
Tout modèle linéaire dont les coefficients sont rationnels en les paramètres
    
ẋ A(δ) B(δ) x
 =  
y C(δ) D(δ) u

admet une représentation sous la forme d’un bouclage entre un modèle nominal et une matrice
diagonale des paramètres
    
ẋ A0 B∆ B0 x
    
 z∆  =  C∆ D∆∆ D∆u   w∆  , w∆ = ∆z∆
    
y C0 Dy∆ D0 u

s On parle de transformation fractionnaire ↔ linéaire (LFT en anglais)

Cours M2 UPS - Commande robuste 13 Jan-Fév 2012, Toulouse


Modèles linéaires incertains

n Propriétés des représentations LFT


l Les paramètres peuvent être répétés sur la diagonale
s Exemple y = δ(x1 + δx2 ) donne
 
    x1
y 0 0 1 0    
    x2  δ
 z  =  1 0 0 1   , w∆ =  z∆
 
 ∆1  

 w∆1  δ
 
z∆2 0 1 0 0
w∆2

l Les paramètres sont répétés au minimum autant que le degré des polynômes

Cours M2 UPS - Commande robuste 14 Jan-Fév 2012, Toulouse


Modèles linéaires incertains

n Propriétés des représentations LFT


l Les représentations ne sont pas unique
δ
s y = 1+δ x ⇔ y + δy = δx avec w∆1 = δy , w∆2 = δx on a
    
y 0 −1 1 x  
     δ
 z
∆1
= 0 −1 1   w∆1  , w∆ =
     z∆
δ
  
z∆2 1 0 0 w∆2

s avec w∆ = δ(x − y) on a une forme plus simple


    
y 0 1 x
 =   , w∆ = δz∆
z∆ 1 −1 w∆

l PB : comment trouver une forme minimale ?

Cours M2 UPS - Commande robuste 15 Jan-Fév 2012, Toulouse


Modèles linéaires incertains

n Propriétés des représentations LFT


l LFT ”hautes” et ”basses” (”upper” and ”lower”)
    
ẋ A0 B∆ B0 x
     w∆ = ∆z∆
 z∆  =  C∆ D∆∆ D∆u   w∆  ,
u = Ky
    
y C0 Dy∆ D0 u

w∆
∆ z∆
Ll (Lu (Σ, ∆), K) = Lu (Ll (Σ, K), ∆)

Σ
w∆ ,z∆ u,y w∆ ,z∆ u,y
(∆ ? Σ) ? K = ∆ ? (Σ ? K)
 
u y ∆ 0
=Σ?  
K 0 K

Cours M2 UPS - Commande robuste 16 Jan-Fév 2012, Toulouse


Modèles linéaires incertains

n Propriétés des représentations LFT


l Représentations rationnelles
    
ẋ A B∆ x
 = 0   , w∆ = ∆z∆
z∆ C∆ D∆∆ w∆

s z∆ = C∆ x + D∆∆ ∆z∆ conduit à la représentation :

ẋ = (A0 + B∆ ∆(1 − D∆∆ ∆)−1 C∆ )x

s w∆ = ∆C∆ x + ∆D∆∆ w∆ conduit à la représentation équivalente :

ẋ = (A0 + B∆ (1 − ∆D∆∆ )−1 ∆C∆ )x

Cours M2 UPS - Commande robuste 17 Jan-Fév 2012, Toulouse


Modèles linéaires incertains

n Propriétés des représentations LFT


l s−1 intégrateur avec conditions initiales nulles
Σ
  z }| {  
ẋ A B x
 =   , x = s−1 ẋ
y C D u

s Matrices de transfert : LFT “haute”

y = (D + Cs−1 (1 − As−1 )−1 B) u = (D + C(s1 − A)−1 B) u


| {z } | {z }
x,ẋ G(s)
Σ ? (s−1 1)

Cours M2 UPS - Commande robuste 18 Jan-Fév 2012, Toulouse


Modèles linéaires incertains

n Propriétés des représentations LFT


l Algèbre des LFT
Δ1 Δ2
w∆
∆ z∆
Σ1 Σ2 F1
⇔ w Σ z
Δ3 u y
K K
 
∆1
 
∆=
 ∆2 

∆3

Cours M2 UPS - Commande robuste 19 Jan-Fév 2012, Toulouse


Modèles linéaires incertains

n “Star product” de matrices - propriétés


2 3
M11 M12
∆? 4 5 = M22 +M21 ∆(1−M11 ∆)−1 M12 = M22 +M21 (1−∆M11 )−1 ∆M12
M21 M22
2 3
M11 M12
4 5 ?K = M11 +M12 K(1−M22 K)−1 M21 = M11 +M12 (1−KM22 )−1 KM21
M21 M22
2 3 2 3
M11 M12 M22 M21
∆?4 5=4 5?∆
M21 M22 M12 M11

Cours M2 UPS - Commande robuste 20 Jan-Fév 2012, Toulouse


Modèles linéaires incertains

n “Star product” de matrices - propriétés (suite)


2 3
2 3 2 3 2 3 M11 0 M12
M11 M12 N11 N12 ∆M 0 6 7
∆ M ?4 5+∆N ?4 5=4 5 ?6 0 N11 N12 7
M21 M22 N21 N22 0 ∆N
4 5
M21 N21 M22 + N22
0 2 31 0 2 31
M11 M12 N11 N12
@∆M ? 4 5A @∆N ? 4 5A
M21 M22 N21 N22
2 3
2 3 M11 M12 N21 M12 N22
∆M 0 6 7
=4 5?6 0 N11 N12 7
0 ∆N
4 5
M21 M22 N21 M22 N22
0 2 31−1 0 2 31
−1 −1
M11 M12 M11 − M12 M22 M21 −M12 M22
@∆ ? 4 5A = @∆ ? 4 5A
−1 −1
M21 M22 M22 M21 M22

Cours M2 UPS - Commande robuste 21 Jan-Fév 2012, Toulouse


Modèles linéaires incertains

n “Star product” de matrices - formule générale


M N
z
 }| { z  }| {
M11 M12 N11 N12
 ? 
M21 M22 N21 N22
 
M ? N11 M12 (1 − N11 M22 )−1 N12
= 
N21 (1 − M22 N11 )−1 M21 M22 ? N

Cours M2 UPS - Commande robuste 22 Jan-Fév 2012, Toulouse


Modèles linéaires incertains

n Propriétés des représentations LFT


l Toolbox dans Matlab pour manipuler des LFT
s LFRT - gratuite - très complète
par JF Magni + extention Simulink par JM Biannic et C Doll
www.onera.fr/staff-en/jean-marc-biannic/docs/lfrtv20s.zip

s Robust Control toolbox - Matlab


c
s RoMulOC - gratuite (manipulations LFT limitées)
www.laas.fr/OLOCEP/romuloc/

Cours M2 UPS - Commande robuste 23 Jan-Fév 2012, Toulouse


Modèles linéaires incertains

n Types d’incertitudes ∆ = diag(· · · ∆i · · ·) , ∆i ∈ ∆


∆i
l Scalaires réelles constantes répétées : ∆i = δi 1ri δi ∈ [δ i , δ i ] δ̇i = 0
l Scalaires réelles variant dans le temps répétées : ∆i = δi 1ri δi ∈ [δ i , δ i ] δ̇i 6= 0
l Scalaires complexes répétées : ∆i = δi 1ri xi + δi∗ yi∗ + yi δi + zi δi∗ δi ≤ 0
s Exemple : ∆∆i = demi-plan droit si (xi , yi , zi ) = (0, −1, 0)
s Exemple : ∆∆i = disque unité si (xi , yi , zi ) = (−1, 0, 1)
s Exemple : ∆∆i = disque de diamètre [δ i , δ i ] si (xi , yi , zi ) = (2δ i δ i , −(δ i + δ i ), 2)
l Opérateurs matriciels dissipatifs (matrices complexes, temps-variant ou non-linéarités)
Z ∞
∗ ∗ ∗ ∗ ∗
w∆i = ∆i z∆i ⇒ (z∆i Xi z∆i + z∆ i
Yi w∆i + w ∆ i
Yi z∆i + w ∆i Zi w∆i )dt ≤ 0
0
s Exemple : Opérateur borné en norme si (Xi , Yi , Zi ) = (−γ 2 1, 0, 1)
kw∆i k2 ≤ γkz∆i k2 , k∆i k∞ ≤ γ
s Exemple : Opérateur passif si (Xi , Yi , Zi ) = (0, −1, 0)
s Exemple : Non-linéarité de secteur si (xi , yi , zi ) = (2δ i δ i , −(δ i + δ i ), 2)

Cours M2 UPS - Commande robuste 24 Jan-Fév 2012, Toulouse


Modèles linéaires incertains

n Systèmes incertains et matrices de transfert


Σ
  z }| {  
ẋ A0 B∆ B0 x
    
 z∆  =  C∆ D∆∆ D∆u   w∆  , w∆ = ∆z∆
    
y C0 Dy∆ D0 u

l Bouclages avec matrices de transfert


    
z Σ (s) Σ∆u (s) w
 ∆  =  ∆∆  ∆  , w∆ = ∆z∆
y Σy∆ (s) Σyu (s) u
  " # " #
Σ∆∆ (s) Σ∆u (s) D∆∆ D∆u C∆ −1
h i
= + (s1 − A0 ) B∆ B0
Σy∆ (s) Σyu (s) Dy∆ D0 C0
| {z }
x,ẋ
Σ ? (s−1 1)
    
Σ∆∆ (s) Σ∆u (s) w∆ ,z∆ Σyu (s)
y= ? ∆ u= u
Σy∆ (s) Σyu (s) +Σy∆ (s)∆(1 − Σ∆∆ (s)∆)−1 Σ∆y (s)

Cours M2 UPS - Commande robuste 25 Jan-Fév 2012, Toulouse


Modèles linéaires incertains

n Systèmes incertains et matrices de transfert (suite)


    
ẋ A0 B∆ B0 x
    
 z∆  =  C∆ D∆∆ D∆u   w∆  , w∆ = ∆z∆
    
y C0 Dy∆ D0 u

l Si ∆ est composée uniquement d’incertitudes constantes (réelles ou complexes)


0 2 30 2 32 31−1 2 31
s−1 s−1
y = @D0 + 0 A0 B∆ 0 B0
u
h i
C0 Dy∆ 4 5 @1 − 4 54 5A 4 5A
0 ∆ C∆ D∆∆ 0 ∆ D∆u
| {z }
G(s,∆)

s G(s, ∆) : Matrice de transfert dont les coefficients sont rationnels en les incertitudes
s Sauf cas particulier, les coefficients sont inter-dépendants

Cours M2 UPS - Commande robuste 26 Jan-Fév 2012, Toulouse


Modèles linéaires incertains

n Systèmes SISO définis par une fonction de transfert incertaine

bm sm + . . . + b1 s + b0
G(s) =
an sn + . . . + a1 s + a0
l Incertitudes intervalles

bj ≤ bj ≤ bj ∀j = 1 . . . m , ai ≤ ai ≤ ai ∀i = 1 . . . n

s Modèle très simple


s Suppose tous les coefficients indépendants
 
b0 ∈ [−1 1] 
  
s+δ s + b0
2
, δ ∈ [−1 1] ⊂ 2
,
s + δs + 1  s + a1 s + 1 a1 ∈ [−1 1] 

s Fonction de transfert : suppose tous les coefficients constants

Cours M2 UPS - Commande robuste 27 Jan-Fév 2012, Toulouse


Modèles linéaires incertains

n Systèmes MIMO et factorisation copremières à droite et à gauche

G(s) = Ml−1 (s)Nl (s) = Nr (s)Mr−1 (s)

s Ml (s), Nl (s), Mr (s), Nr (s) : matrices polynomiales (existent d’autres factorisations)

Ml (s) = Mnl sn + . . . + M1l s + M0l

s Ml (s)y = Nl (s)u : modélisation polynomiale des systèmes LTI


l Factorisations copremières incertaines

G(s) = Ml −1 (s)Nl (s) = Nr (s)Mr −1 (s)

l Analogie avec les modèles SISO :


facteurs copremiers aux coefficients indépendants dans des intervalles

Ml (s) = [mlij (s)]1≤i≤p,1≤j≤m = Mnl sn + · · · + M1l s + M0l


mlij (s) = mnlij sn + . . . + m1lij s + m0lij
mklij ≤ mklij ≤ mklij

Cours M2 UPS - Commande robuste 28 Jan-Fév 2012, Toulouse


Modèles linéaires incertains

n Résumé des modèles incertains considérés dans la suite


[2]
Σ
Σ(∆)
l Affines polytopiques w
[1]
z
Σ Σ
[v]

u y
K

   
ẋ x n o
 z  = Σ(ζ)  w  , Σ(ζ) ∈ co Σ[1] . . . Σ[v]
y u


   
w∆ z∆ ẋ x
w∆ = ∆z∆ :
 z∆   w∆ 
l LFT w Σ z  z  = Σ  w  , ∆ = diag(. . . ∆i . . .)
u y ∆i ∈ ∆
∆i ,
K y u

l Polynomiaux (surtout SISO) M (s)y = N (s)u

Cours M2 UPS - Commande robuste 29 Jan-Fév 2012, Toulouse


Cours M2 ASTR - module FRS - Commande Robuste

Cours 2 - Stabilité robuste et théorie de Lyapunov


Stabilité robuste et théorie de Lyapunov

n Dans cette partie on s’intéresse à la stabilité d’une boucle fermée décrite dans l’espace d’état
     w∆ = ∆z∆
ẋ0 A0 B∆ B0 x0 ! " # !
η̇ AK BK η
 z∆  =  C∆ D∆∆ D∆u   w∆  , =
u CK DK y
y C0 Dy∆ D0 u | {z }
K

l Exercice de manipulation des LFT : montrer que la boucle fermée avec le correcteur s’écrit
    
ẋ A(K) B∆ (K) x
= , w∆ = ∆z∆
z∆ C∆ (K) D∆∆ (K) w∆

   
A(K) B∆ (K)
s avec xT = xT0 ηT et =
C∆ (K) D∆∆ (K)
   
A0 0 B∆ 0 B0    −1  
0 0 0 1 0
 0 0 0 + 1 0 K 1 − K
0 D0 C0 0 Dy∆
C∆ 0 D∆∆ 0 B∆u

s Rq : K doit être telle que (1 − D0 DK ) est inversible pour que la LFT ait un sens
s Dans la suite de cette partie K est supposée connue

Cours M2 UPS - Commande robuste 2 Jan-Fév 2012, Toulouse


Stabilité robuste

l Exercice de manipulation des LFT suite


    
ẋ A B∆ x
 =   , w∆ = ∆z∆
z∆ C∆ D∆∆ w∆

s On trouve au choix

ẋ = (A + B∆ ∆(1 − D∆∆ ∆)−1 C∆ )x = A(∆)x

ẋ = (A + B∆ (1 − ∆D∆∆ )−1 ∆C∆ )x = A(∆)x


s La LFT a un sens si (1 − ∆D∆∆ ) et (1 − D∆∆ ∆) sont inversibles ∀∆ ∈ ∆
∆.

l On voit sur ces deux exemples que écrire des LFT suppose des hypothèse sur les inverses
(1 − D0 DK ), (1 − D∆∆ ∆) etc.
s On parle de bien-posé de la LFT ou bien posé de la boucle d’interconnexion.

Cours M2 UPS - Commande robuste 3 Jan-Fév 2012, Toulouse


Stabilité robuste

n Bien posé d’une boucle - Définition

l Une boucle ∆ ? M avec ∆ ∈ ∆ ∆ est dite bien posée si


s∆ ∆ est non vide
s Pour tout ∆ ∈ ∆ ∆ et toute paire (ŵ, ẑ), il existe une unique paire (w, z) solution de

z = M w + ẑ , w = ∆z + ŵ

s Il existe un γ tel que la solution (w, z) est bornée



w ŵ

≤γ , ∀(ŵ, ẑ), ∀∆ ∈ ∆

z ẑ

l Le bien posé implique que quand (ŵ, ẑ) = 0 la seule solution aux équations est (w, z) = 0
s z = w bouclé avec w = δz et δ ∈ [0 , 2], n’est pas bien posé
en effet ∃δ = 1 ∈ [0 , 2] telle que w = z ∈ R est un ensemble (infini) de solutions

Cours M2 UPS - Commande robuste 4 Jan-Fév 2012, Toulouse


Stabilité robuste

n Unicité des signaux internes à l’équilibre


l Point d’équilibre x = ẋ = 0

z∆ = D∆∆ w∆ , w∆ = ∆z∆

l (z∆ , w∆ ) unique pour toute perturbation (ẑ, ŵ) bornée

z∆ = D∆∆ w∆ + ẑ , w∆ = ∆z∆ + ŵ

s Unicité de la solution à
    
1 −D∆∆ z∆ ẑ
  = 
−∆ 1 w∆ ŵ
   
1 −D∆∆ 1 D∆∆
s  de rang plein et donc   de rang plein
−∆ 1 ∆ 1
    
1 −D∆∆ 1 D∆∆ 1 − ∆D∆∆ 0
s  =  inversible
−∆ 1 ∆ 1 0 1 − D∆∆ ∆

Cours M2 UPS - Commande robuste 5 Jan-Fév 2012, Toulouse


Stabilité robuste

n Stabilité asymptotique globale du point d’équilibre x = ẋ = 0


l Etat borné pour toute condition initiale bornée et toute perturbation bornée :
Z t
ẋ = Ax + ẑ , x(t) = ẋ(τ )dτ + x(0)
0

s x(s) = L[x] est définie pour Re[s] > α si ∃M : ||x(t)|| ≤ M eαt


s Convergence asymptotique si α < 0 ⇒ Re[s] ≥ 0
l Bien posé de la boucle

ẋ = Ax + ẑ , x = s−1 ẋ + x(0) : s−1 ∈ {Re[s] ≥ 0}

s Unicité de la solution à
    
1 −A z∆ ẑ
  = 
−s−1 1 w∆ ŵ

s ⇒ (s1 − A) inversible pour tout s ∈ {Re[s] ≥ 0}


s ⇒ det(s1 − A) 6= 0 pour tout s ∈ {Re[s] ≥ 0}

Cours M2 UPS - Commande robuste 6 Jan-Fév 2012, Toulouse


Stabilité robuste

n Stabilité asymptotique globale robuste du point d’équilibre x = ẋ = 0


l Etat borné pour toute condition initiale bornée, toute perturbation bornée et toute incertitude :
         
ẋ A B∆ x x s−1 1 ẋ
 =  +ẑ ,  =  +ŵ
z∆ C∆ D∆ w∆ w∆ ∆ z∆

s Obtenu si la matrice suivante est de rang plein ∀Re[s] ≥ 0 et ∀∆ ∈ ∆



 
1 0 −A −B∆
 

 0 1 −C∆ −D∆  
 
 −s−1 1 0 1 0 
 
0 −∆ 0 1

s ⇒ det(s1 − A(∆)) 6= 0 ∀Re[s] ≥ 0 et ∀∆ ∈ ∆


Cours M2 UPS - Commande robuste 7 Jan-Fév 2012, Toulouse


Stabilité robuste

n Stabilité robuste des systèmes LTI incertains


l det(s1 − A(∆)) 6= 0 pour tout s ∈ {Re[s] ≥ 0} et tout ∆ ∈ ∆

l Approche aléatoire [Tempo et al.(2005)Tempo, Calafiore, and Dabbene] :
s Calculer v.p. A(∆) sur un grand nombre de valeurs aléatoires de ∆
s Résultats probabilistes :
Probabilité de stabilité, pour N tirages, a condition d’avoir un tirage uniforme

s Approche optimiste : pas de garantie de stabilité robuste


s Approche optimiste : peut trouver un certificat d’instabilité
s Exemple : polytope avec 4 sommets stables
2 3 2 3
−8 3 1 −12 1 6
A[1] A[2]
6 7 6 7
=6
4 5 −9 8 7 ,
5 =6
4 4 −5 1 7
5
5 4 −14 1 10 −12
2 3 2 3
−9 10 6 −7 6 2
A[3] A[4]
6 7 6 7
=6
4 2 −12 2 7 ,
5 =6
4 9 −11 0 7
5
9 9 −15 9 2 −11

Tirage aléatoire de 100 combinaisons linéaires de ces sommets : 3 instables.

Cours M2 UPS - Commande robuste 8 Jan-Fév 2012, Toulouse


Stabilité robuste

n Stabilité robuste des systèmes LTI incertains


l det(s1 − A(∆)) 6= 0 pour tout s ∈ {Re[s] ≥ 0} et tout ∆ ∈ ∆

l Critère de Routh (peu de paramètres, faible degré de dépendance)
s Exemple det(s1 − A(∆))

= s4 + 10s3 + 10(10 − δ1 2 )s2 + (10 − δ2 2 )s + 10(1 − δ1 3 + 5δ2 2 )

s Stable ssi

100(10 − δ1 2 ) > 10 − δ2 2 > 0 , δ1 3 − 5δ2 − 1 < 0 ,


100δ1 2 δ2 2 − δ2 4 + 1000δ1 3 − 1000δ1 − 5980δ2 2 > 0

s Inégalités satisfaites pour

(δ1 , δ2 ) = (−1, 1) , (−1, −1) , (1.8, −1) , (1.8, 1)

s Mais pas satisfaites pour (δ1 , δ2 ) = (1.8, 0) , (1, 0)

Cours M2 UPS - Commande robuste 9 Jan-Fév 2012, Toulouse


Stabilité robuste

s Exemple det(s1 − A(∆))

= s4 + 10s3 + 10(10 − δ1 2 )s2 + (10 − δ2 2 )s + 10(1 − δ1 3 + 5δ2 2 )

s Valeurs stabilisantes de (δ1 , δ2 )


2.5

1.5

0.5

−0.5

−1

−1.5

−2

−2.5
−2 −1 0 1 2 3 4

s Il ne suffit pas de tester la stabilité des valeurs extrèmes !

Cours M2 UPS - Commande robuste 10 Jan-Fév 2012, Toulouse


Stabilité robuste

n Stabilité robuste des systèmes LTI incertains


l Théorème de Kharitonov , ai ≤ ai ≤ ai indépendants les uns des autres

det(s1 − A(∆)) = a0 + a1 s + a2 s2 + . . . + an sn

le polynôme est stable ssi les quatre polynômes suivants sont stables

a0 + a1 s + a2 s2 + a3 s3 + a4 s4 + . . .
a0 + a1 s + a2 s2 + a3 s3 + a4 s4 + . . .
a0 + a1 s + a2 s2 + a3 s3 + a4 s4 + . . .
a0 + a1 s + a2 s2 + a3 s3 + a4 s4 + . . .

Cours M2 UPS - Commande robuste 11 Jan-Fév 2012, Toulouse


Stabilité robuste

s Exemple s4 + 10s3 + [100 91.9]s2 + [10 9]s + [2.71 67.29]


(i.e. |δ1 | ≤ 0.9 et |δ2 | ≤ 1 dans ex précédent)
 
2 3 4
−4.96 ± j8.63
racines(2.71 + 9s + 100s + 10s + s ) =  
−0.044 ± j0.16
 
2 3 4
−4.95 ± j8.63
racines(2.71 + 10s + 100s + 10s + s ) =  
−0.049 ± j0.16
 
2 3 4
−4.98 ± j8.12
racines(67.29 + 10s + 91.9s + 10s + s ) =  
−0.014 ± j0.86
 
2 3 4
−4.99 ± j8.13
racines(67.29 + 9s + 91.9s + 10s + s ) =  
−0.009 ± j0.86

s Kharitonov ne permet pas de prouver stabilité de −1 ≤ δ1 ≤ 0.9, |δ2 | ≤ 1

Cours M2 UPS - Commande robuste 12 Jan-Fév 2012, Toulouse


Stabilité robuste

n Stabilité asymptotique globale - Théorème de Lyapunov

∃V (x) > 0 : V̇ (x) < 0 ∀x ∈ {ẋ = f (x)}

l Systèmes linéaires ẋ = Ax, fct de Lyapunov quadratique V (x) = xT P x

P > 0 , AT P + P A < 0

s C’est un problème LMI


s Preuve par congruence
l Systèmes linéaires incertains ẋ = A(∆)x,
s Fonction de Lyapunov quadratique dépendant des paramètres

P (∆) > 0 , AT (∆)P (∆) + P (∆)A(∆) < 0 , ∀∆ ∈ ∆


s LMI mais avec infinité de contraintes et de variables

Cours M2 UPS - Commande robuste 13 Jan-Fév 2012, Toulouse


Stabilité robuste

n Stabilité asymptotique globale - Théorème de Lyapunov


l Systèmes linéaires incertains ẋ = A(∆)x,
s Fonction de Lyapunov quadratique dépendant des paramètres

P (∆) > 0 , AT (∆)P (∆) + P (∆)A(∆) < 0 , ∀∆ ∈ ∆


l “Stabilité quadratique” Barmish [Barmish(1985)] :


s Fonction de Lyapunov unique pour toutes les incertitudes

P > 0 , AT (∆)P + P A(∆) < 0 , ∀∆ ∈ ∆


s Test sur les sommets pour un système polytopique :

P > 0 , A[v]T P + P A[v] < 0 , ∀v = 1 . . . v


 [v]
A(∆) ∈ CO A , v = 1 . . . v

s Preuve (ssi) : convexité des contraintes LMI

Cours M2 UPS - Commande robuste 14 Jan-Fév 2012, Toulouse


Stabilité robuste

n Stabilité asymptotique globale - Théorème de Lyapunov


l Systèmes linéaires incertains ẋ = A(∆)x,
s Fonction de Lyapunov quadratique dépendant des paramètres

P (∆) > 0 , AT (∆)P (∆) + P (∆)A(∆) < 0 , ∀∆ ∈ ∆


l Variables de relaxation [Peaucelle et al.(2000)Peaucelle, Arzelier, Bachelier, and Bernussou] :


s Fonction de Lyapunov polytopique P (∆) = ζv P pour A(∆) = ζv A[v]
[v]
P P
   
[v] 0 P [v] A[v] h i
P >0 ,  <F  + A[v]T −1 F T , ∀v = 1 . . . v
P [v] 0 −1

s Preuve (suffisance) : convexité des contraintes + congruence

Cours M2 UPS - Commande robuste 15 Jan-Fév 2012, Toulouse


Stabilité robuste

n Stabilité asymptotique globale - Théorème de Lyapunov


l Systèmes linéaires incertains ẋ = A(∆)x,
s Fonction de Lyapunov quadratique dépendant des paramètres

P (∆) > 0 , AT (∆)P (∆) + P (∆)A(∆) < 0 , ∀∆ ∈ ∆


l Théorème de Polya [Chesi(2010)] :


s Fonction de Lyapunov polytopique P (∆) = ζv P pour A(∆) = ζv A[v]
[v]
P P

P [v] > 0 , A[v]T P [v] + P [v] A[v] < 0 , ∀v = 1 . . . v


A[v1 ]T P [v2 ] + P [v2 ] A[v1 ] + A[v2 ]T P [v1 ] + P [v1 ] A[v2 ] < 0 , ∀v1 6= v2 ∈ {1 . . . v}

s Preuve (suffisance) : positivité des coefficients des polynômes homogènes


s Théorème de Polya : construction de résultats LMI asymptotiquement non pessimistes

Cours M2 UPS - Commande robuste 16 Jan-Fév 2012, Toulouse


Stabilité robuste

n Localisation robuste des pôles des systèmes LTI incertains


l Localisation des v.p. de A(∆) pour tout ∆ ∈ ∆

s Exemple : polytope avec 3 sommets
2 3 2 3 2 3
−1 1 1 −1 0 1 −2 1 0
A[1] A[2] A[3]
6 7 6 7 6 7
=6
4 1 −2 0 7 ,
5 =6
4 1 −1 0 7 ,
5 =6
4 0 −2 1 7
5
0 0 −1 0 1 −2 1 1 −1

Tirage aléatoire de 1000 combinaisons linéaires de ces sommets

%"# s Re(eig(A(∆))) ≤ −0.16 ⇒ τmin ≤ 6.25s

%
s Re(eig(A(∆))) ≥ −2.62 ⇒ τmax ≥ 0.39s
s |eig(A(∆))| ≤ 2.62 ⇒ ωn max ≤ 2.62rad/s
!%"#
s ∠([0, jω], eig(A(∆))) ≥ 66◦ ⇒ ζmin ≥ 0.92
!$

!!"# !! !$"# !$ !%"# %

Cours M2 UPS - Commande robuste 17 Jan-Fév 2012, Toulouse


Stabilité robuste

n Localisation robuste des pôles des systèmes LTI incertains


l Localisation dans des régions quadratiques de C tq r1 λλ∗ + r2∗ λ + r2 λ∗ + r3 > 0
s −λ − λ∗ + 2α > 0 ⇔ Re(λ) < α
s λ + λ∗ − 2α > 0 ⇔ Re(λ) > α
s −λλ∗ + α∗ λ + αλ∗ + r2 − α∗ α > 0 ⇔ |α − λ| < r
s −ejψ λ − e−jψ λ∗ + αe−jψ + α∗ ejψ > 0 ⇔ ∠([α, α + jω], λ) > ψ

l Condition LMI

P > 0 , r1 A∗ P A + r2 P A + r2∗ A∗ P + r3 P > 0

s Preuve : congruence avec vecteur propre de A


s Exemple : Condition de stabilité de xk+1 = Ax P > 0 , −A∗ P A + P > 0
s Exercice : Construire conditions LMI de localisation de pôles robuste

Cours M2 UPS - Commande robuste 18 Jan-Fév 2012, Toulouse


Cours M2 ASTR - module FRS - Commande Robuste

Cours 3 - Stabilité robuste et théorème du petit-gain


Stabilité robuste et théorème du petit-gain

w∆
∆ z∆
n Stabilité robuste - Problème de Lur’e
Σ

s ∆ ∈ [ −k1 , −k2 ] gain TV,NL borné dans un secteur


s Σ = T (jω) fonction de transfert

l Critère du cercle :
s Pour une valeur k ∈ [ −k1 , −k2 ] la boucle fermée est stable
s Le tracé de Nichols ne coupe pas le cercle de diamètre [ −1/k1 , −1/k2 ]

−1/k2
−1/k1

Cours M2 UPS - Commande robuste 2 Jan-Fév 2012, Toulouse


Stabilité robuste et théorème du petit-gain

n Stabilité robuste - Conséquence du critère du cercle pour les systèmes SISO


+ − K Σ

l Plus le lieu de Nyquist de ΣK est distant du point −1 plus on peut attendre de robustesse
s Marge de gain : de combien augmenter/diminuer le gain de ΣK sans couper −1
s Marge de phase : de combien augmenter/diminuer la phase de ΣK sans couper −1
s Marge de module : rayon maximal du cercle autour de −1 qui ne coupe pas ΣK
s Marge de module : rayon des cercles en tout point de ΣK qui ne coupent pas −1.

Cours M2 UPS - Commande robuste 3 Jan-Fév 2012, Toulouse


Stabilité robuste et théorème du petit-gain

n Stabilité robuste - Marge de module SISO


s Marge de module : rayon maximal du cercle autour de −1 qui ne coupe pas ΣK
1
r = min |1 + Σ(jω)K(jω)| =
ω maxω |1 + Σ(jω)K(jω)|−1
s Marge de module : rayon des cercles en tout point de ΣK qui ne coupent pas −1.
n Stabilité robuste - Marge de module MIMO
s Marge de module : inverse de la norme H∞ de la fonction de sensibilité S = (1 + ΣK)−1
1
r = min σ(1 + Σ(jω)K(jω)) = = ||S||−1

ω maxω σ(S(jω))
s Marge de module : norme maximale des incertitudes additives sur ΣK : ||∆||∞ ≤ r

+ +

K Σ −
K Σ

Cours M2 UPS - Commande robuste 4 Jan-Fév 2012, Toulouse


Stabilité robuste et théorème du petit-gain

n Stabilité robuste - Théorème du petit gain - [Zhou et al.(1996)Zhou, Doyle, and Glover]

Σ est stable et ||Σ||∞ < µ ssi

w∆
∆ z∆ 1
la boucle fermée est stable pour toute incertitude ||∆||∞ ≤ µ
Σ
l Stabilité (interne) de la boucle ∆ ? Σ où Σ et ∆ sont des matrices de transfert :
 ⇔ bien posé de la boucle pour tout s ∈ C+
1 −Σ(s)
⇔  propre et inversible pour tout s ∈ C+
−∆(s) 1

 ? Σ où Σ et ∆ sont des matrices de transfert :


l Stabilitérobuste de la boucle ∆
1 −Σ(s)
⇔  propre et inversible pour tout s ∈ C+ et tout ∆ ∈ ∆

−∆(s) 1

Cours M2 UPS - Commande robuste 5 Jan-Fév 2012, Toulouse


Stabilité robuste et théorème du petit-gain

l Preuve suffisance :
s Pour tout τ ∈ [0 1] on a τ k∆k∞ kΣk∞ < 1
1
On en déduit kΣ[τ ∆]k∞ < 1 ∀τ ∈ [0 1] ∀||∆||∞ ≤ µ
1
C’est à dire σ̄(Σ(jω)[τ ∆(jω)]) < 1 ∀τ ∈ [0 1] ∀||∆||∞ ≤ µ ∀ω
[1 − Σ(jω)[τ ∆(jω)]] est inversible ∀τ ∈ [0 1] ∀||∆||∞ ≤ µ1 ∀ω
 
1 −Σ(jω)
  est inversible ∀τ ∈ [0 1] ∀||∆||∞ ≤ 1 ∀ω
µ
−τ ∆(jω) 1
∈ [0 , 1] et s = jω sur l’axe imaginaire = frontière de C+
(A) La propriété est vraie ∀τ
 
1 −Σ(s)
s Σ est stable donc   propre et inversible ∀||∆||∞ ≤ 1 ∀s ∈ C+
µ
−0∆(s) 1
(B) La propriété est vraie pour τ = 0 et s ∈ C+
s Argument de continuité : Pour que la propriété soit fausse pour τ = 1 et un s ∈ C+ il faut
qu’elle soit à la limite entre validité et non-validité pour un certain τ ∈]0 , 1[. C’est à dire qu’il
existe τ ∈]0 , 1[ et s = jω qui contredise (A).

Cours M2 UPS - Commande robuste 6 Jan-Fév 2012, Toulouse


Stabilité robuste et théorème du petit-gain

l Preuve de la nécessité - Supposons kΣk∞ = µ + 


⇒ ∃ω0 , ∃y (y ∗ y = (µ + )2 ), ∃u (u∗ u = 1) : y = Σ(jω0 )u
1 ∗
En prenant ∆ = (µ+) 2 uy on a (1 − ∆Σ(jω0 ))u = 0
i.e. ∆ rend la boucle mal posée, donc instable, et on a

1 1 1 1
k∆k2∞ = ∗ ∗
σmax (yu uy ) = ∗
σmax (yy ) = < 2
(µ + )4 (µ + )4 (µ + )2 µ

s Ici ∆ est une matrice a valeurs complexes


On peut aussi construire ∆(s) modèle LTI à coefficient réels qui coı̈ncide pour s = jω0
[Scherer()]

Cours M2 UPS - Commande robuste 7 Jan-Fév 2012, Toulouse


Stabilité robuste et théorème du petit-gain

n Exemple d’emploi du théorème du petit gain


l Capteurs : dispositifs conçus pour mesurer des grandeurs physiques - ils sont imparfaits
s erreur de mesure et bruits en haute fréquence : ym = (1 + ∆m Wm (s))y
Wm : gabarit fréquentiel (passe haut) , k∆m k∞ ≤ γ1m
s Système Σ en boucle fermée avec un correcteur K , tenant compte de capteurs incertains :

((1 + ∆m Wm )ΣK) ? (−1) = ∆m ? (−Wm ΣK(1 + ΣK)−1 )

s Stabilité robuste garantie si kWm ΣK(1 + ΣK)−1 k∞ < γm


−1
s SISO : γm Wm = gabarit sur la sensibilité complémentaire ΣK(1 + ΣK)−1
−1
s MIMO et Wm = wm 1 alors γm wm = gabarit sur σ̄ de la sensibilité complémentaire

l Exercice : Condition de stabilité robuste vis-à-vis d’incertitudes sur les actionneurs

Cours M2 UPS - Commande robuste 8 Jan-Fév 2012, Toulouse


Stabilité robuste et théorème du petit-gain

n Exemple d’emploi du théorème du petit gain


l Précision de la boucle fermée à des perturbations basse fréquence sur l’entrée du système
s Peut être évaluée par
  

0 1
 ? (−1) Wp = k(1 + ΣK)−1 ΣWp k∞ ≤ γp


Σ ΣK


Wp : gabarit fréquentiel (passe bas)


s Equivalent à la stabilité robuste vis-à-vis d’incertitudes k∆p k∞ ≤ γ1p de
  
0 1
∆p ? (    ? (−1) Wp ) = (Σ(K + Wp ∆p )) ? (−1)
Σ ΣK

s Le rejet de perturbation ⇔ robustesse vis-à-vis d’incertitudes additives BF sur le contrôleur

Cours M2 UPS - Commande robuste 9 Jan-Fév 2012, Toulouse


Stabilité robuste et théorème du petit-gain

n Exemple de performance H∞ robuste


l Comment évaluer la précision robuste pour toutes les incertitudes sur les capteurs ?
  
0 1 1
? (−1) Wp ≤ γp , ∀k∆m k∞ ≤

((1 + ∆m Wm )Σ ((1 + ∆m Wm )ΣK
∞ γm
s Stabilité robuste de ((1 + ∆m Wm )Σ(K + Wp ∆p )) ? (−1) =
 
  0 Wm ΣWp Wm ΣK 1
∆m w∆ ,z∆ u,y k∆m k∞ ≤
?  0 0 1  ? (−1) , k∆p k∞ ≤
γm
1
∆p γp
1 ΣWp ΣK

s Stabilité robuste
2 3
1 1
" # 0 γm γp Wm ΣWp γm Wm Σ
ˆ m k∞ ≤ 1
ˆm
∆ w∆ ,z∆ 6 7 u,y k∆
ˆp
? 6 6 −1 − γ1p ΣWp −Σ 7 ?
7
K, ˆ p k∞ ≤ 1
∆ 4 5 k∆
| {z } −1 − γ1p ΣWp −Σ
ˆ

| {z }
Σ̂

s Condition suffisante : kΣ̂ ? Kk∞ < 1.

Cours M2 UPS - Commande robuste 10 Jan-Fév 2012, Toulouse


Stabilité robuste et théorème du petit-gain

n Exemple de robustesse paramétrique


   
α1 12 w∆ ,z∆ Σ∆∆ Σ∆u u,y α1 ∈ [α1 , α1 ]
  ?   ? K ,
α2 Σy∆ Σyu α2 ∗ + α2 ≥ 0
l Incertitudes normalisées :
c1 r1  
1
z }| { z
1
}| { 0 1
α1 = 2 (α1 + α1 ) + 2 (α1 − α1 ) δ1 = δ1 ?   : δ1 ∈ [−1 , 1]
r1 c1
 
1−δ2 −1 −2
α2 = 1+δ2 = δ2 ?   : |δ2 | ≤ 1
1 1

l En utilisant les propriétés des LFT on se ramène à stabilité robuste de


   
δ 1 ŵ ,ẑ Σ̂ Σ̂∆u u,y
 1 2  ∆? ∆  ∆∆  ? K
δ2 Σ̂y∆ Σ̂yu

s Condition suffisante : kΣ̂ ? Kk∞ < 1.

Cours M2 UPS - Commande robuste 11 Jan-Fév 2012, Toulouse


Stabilité robuste et théorème du petit-gain

s Condition suffisante : kΣ̂ ? Kk∞ < 1.


s Illustration du pessimisme
Zones bleues = possibles valeurs de Σ̂ ? K pour une fréquence donnée
Cercles = incertitudes non structurées incluant le cas strcturé
1
Im(s)

0.5
2.2

0.01 Re(s)
0

1.2 0.05l
−0.5

0.2
−1

0.5l

−1.5

−2
−1.5 −1 −0.5 0 0.5 1 1.5 2

Cours M2 UPS - Commande robuste 12 Jan-Fév 2012, Toulouse


Stabilité robuste et théorème du petit-gain

n Exemple de multi-performance H∞
l Précision de la boucle fermée à des perturbations basse fréquence sur l’entrée du système
  

0 1
 ? (−1) Wp = k(1 + ΣK)−1 ΣWp k∞ ≤ γp


Σ ΣK


l Minimisation de l’effort des actionneurs en réponse à des bruits de mesure


  
0 K

 ? (−1) Wb = kK(1 + ΣK)−1 Wb k∞ ≤ γb


1 ΣK


s Condition suffisante : stabilité robuste vis à vis de 2 incertitudes


0 1
Σ̂
Bz2 }| 3{ C
# B − γ1p ΣWp − γ1 Wb −Σ
B C
" C
ˆp
∆ B6 b 7 C ˆ p k∞ ≤ 1
k∆
1
? B6 Wp 0 1 7 ?K C ,
B6 7 C
ˆb γ p ˆ b k∞ ≤ 1
∆ B4 5 C k∆
B − γ1p ΣWp − γ1 Wb −Σ
B C
C
@ b A

s Condition suffisante de la condition suffisante : kΣ̂ ? Kk∞ ≤ 1

Cours M2 UPS - Commande robuste 13 Jan-Fév 2012, Toulouse


Stabilité robuste et théorème du petit-gain

n Loop-shaping SISO
– Suivi de référence et réjection de perturbations :

σ(Ly ) grand 0 ≤ ω ≤ ωB

– Réduction d’énergie de commande :

σ(K) faible 0 ≤ ωB ≤ ω

– Filtrage des bruits de mesure :

σ(Ly ) faible 0 ≤ ωB ≤ ω

l Généralisation MIMO grâce aux filtres et H∞


- Wu : restriction sur u
- We , Wp : spécif. sur des transferts en BF
- Wi , Wo , Wn : contenu fréq. de d et de n
- Wr : modelage de la consigne

Cours M2 UPS - Commande robuste 14 Jan-Fév 2012, Toulouse


Stabilité robuste et théorème du petit-gain

n Exemple : système à retard

ẋ(t) = Ax(t) + Ad x(t − τ )

l Factorisation de Ad = Bd Cd

 ẋ(t) = Ax(t) + B w (t)
d d
, w(t) = z(t − τ )
 z(t) = Cd x(t)

l Opérateur retard e−sτ = opérateur borné dans disque unité quand s ∈ C+

ke−jωτ k∞ = 1

l Condition suffisante de stabilité indépendante du retard :

kCd (s1 − A)−1 Bd k∞ < 1

Cours M2 UPS - Commande robuste 15 Jan-Fév 2012, Toulouse


Cours M2 ASTR - module FRS - Commande Robuste

Cours 4 - Stabilité robuste, µ-analyse


Stabilité robuste, µ-analyse

n Problème générique d’analyse de stabilité robuste (pouvant inclure performance H∞ )


l Stabilité de la “boucle M − ∆” : stabilité de ∆ ? M où M = Σ̂ ? K
l∆∈∆
∆γ incertitude structurée

∆(s) = diag δ1 1, · · · , δnr 1, q1 (s)1, · · · , qnc (s)1, ∆1 (s), · · · , ∆nf (s)
- nr blocs réels répétés avec δj ∈ R , |δj | ≤ γ
- nc blocs LTI scalaires répétés avec qj ∈ RH∞ , kqj k∞ ≤ γ
p ×l
- nf blocs LTI matriciels stables ∆j ∈ RH∞j j , k∆j k∞ ≤ γ
(incertitudes normalisée : γ = 1)
l Pour chaque fréquence ω on a σ̄(∆(jω)) ≤ γ et ∆(jω) ∈ ∇ ∇ défini par :

∇ = diag δ1 1, · · · , δnr 1, q1 1, · · · , qnc 1, ∆1 , · · · , ∆nf
- nr blocs réels répétés avec δj ∈ R
- nc blocs complexes répétés avec qj ∈ C
- nf blocs matriciels complexes ∆j ∈ Cpj ×lj

l∇
∇ définit la “structure” de l’incertitude, γ sa “taille”

Cours M2 UPS - Commande robuste 2 Jan-Fév 2012, Toulouse


Stabilité robuste, µ-analyse

n Problème générique d’analyse de stabilité robuste (suite)


l Pour M stable, trouver le plus grand γ tel que ∆ ? M stable pour tout ∆ ∈ ∆
∆γ
s Argument de continuité (voir preuve Théorème du petit gain), il suffit de montrer que
[1 − M (jω)τ ∆(jω)] inversible pour tout ω ∈ R, τ ∈ [0 , 1], ∆ ∈ ∆ ∆γ
s Par construction de ∇
∇ la propriété est vraie si
[1 − M (jω)∆] inversible pour tout ∆ ∈ ∇
∇ tel que σ̄(∆) ≤ γ

l Définition : Marge de non singularité d’une matrice complexe = k∇ (M0 ) = max γ0


Plus grande valeur de γ0 telle que [1 − M0 ∆] inversible pour tout ∆ ∈ ∇ ∇ tq σ̄(∆) ≤ γ0
s Cette valeur dépend de M0 et de la structure de l’incertitude ∇

l Définition : Valeur singulière structurée d’une matrice complexe :


1
µ∇ (M0 ) =
k∇ (M0 )

Cours M2 UPS - Commande robuste 3 Jan-Fév 2012, Toulouse


Stabilité robuste, µ-analyse

n Théorème
l µ-analyse (borne supérieure) :
si µ∇ (M (jω)) < µu pour toutes des fréquences ω ∈ R+
alors ∆ ? M stable pour tout ∆ ∈ ∆
∆γu avec γu = 1/µu
l µ-analyse (borne inférieure) : [Tits and Fan(1995)]
si µ∇ (M (jω)) > µl pour une fréquence ω ∈ R+
alors il existe ∆ ∈∆
∆γl avec γl = 1/µl qui rend ∆ ? M instable

s Stabilité robuste évaluée par bornes supérieures/inférieures de µ∇ (M (jω))


s Mais... le calcul de µ∇ (M ) est difficile en général
s Il faut le faire pour toutes les fréquences (ou un quadrillage suffisamment fin)

Cours M2 UPS - Commande robuste 4 Jan-Fév 2012, Toulouse


Stabilité robuste, µ-analyse

n Propriétés de µ∇ :
l µ∇ croı̂t avec la taille de l’ensemble d’incertitude


∇1 ⊂ ∇
∇2 ⇒ µ∇1 (M0 ) ≤ µ∇2 (M0 )

l µ∇ (αM0 ) = |α|µ∇ (M0 ) , ∀ α ∈ C


∇ = Cp×q alors µ∇ (M0 ) = σ̄(M0 )
l Si ∇ et donc kM k∞ = supω µ∇ (M (jω))
(Résultat de µ-analyse se confond alors avec le théorème du petit gain)

l Si ∇
∇ = {∇ = δ1, δ ∈ C} alors µ∇ (M0 ) = ρ(M0 )

et donc pour tout ∇


∇ avec que des blocs complexes on a ρ(M0 ) ≤ µ∇ (M0 ) ≤ σ̄(M0 )
l Si ∇
∇ = {∇ = δ1, δ ∈ R} alors µ∇ (M0 ) = ρR (M0 )
(plus grand module de v.p. réelle)

et donc pour tout ∇


∇ on a ρR (M0 ) ≤ µ∇ (M0 ) ≤ σ̄(M0 )

Cours M2 UPS - Commande robuste 5 Jan-Fév 2012, Toulouse


Stabilité robuste, µ-analyse

s Exemple : [Skogestad 96]



 ρ(M ) = |a + b| pour ∇ = δ1
  
a a

M =  µ∇ (M ) = |a| + |b| pour ∇ = diag{δ1 , δ2 }
b b 
 p
σ(M ) = 2|a|2 + 2|b|2 pour ∇ pleine

s Exemple : [Zhou96]
   
−0.5 0.5 δ1 0 ρ(M ) = 0
M=   ∇= 
−0.5 0.5 0 δ2 σ(M ) = µ∇ = 1

Nota : l’écart entre les bornes inférieure et supérieure peut être grand

Cours M2 UPS - Commande robuste 6 Jan-Fév 2012, Toulouse


Stabilité robuste, µ-analyse

n Propriétés de µ∇ :
∇ avec uniquement blocs complexes alors µ∇ (M0 ) : Cn×n → R est continue
l Si ∇
l Si il existe des blocs réels µ∇ (M0 ) : Cn×n → R peut être discontinue
 
1 m
s Exemple avec ∇ = δ12 , δ ∈ R et M0 =  
−m 1

 0 si m 6= 0
µ∇ (M0 ) = ρR (M0 ) =
 1 si m = 0

s ! ! La fonction ω 7→ µ∇ (M (jω)) peut contenir des sauts

Cours M2 UPS - Commande robuste 7 Jan-Fév 2012, Toulouse


Stabilité robuste, µ-analyse

n Calcul d’une meilleure borne inférieure de µ


l Tirage aléatoire :
s Prendre aléatoirement ∇ ∈ ∇∇ et normaliser ∇ˆ = 1 ∇
σ̄(∇)
s alors ρR (M0 ∇) ˆ ≤ µ∇ (M0 )
h i
s Preuve : (1 − M0 ρ (M 1 ˆ ) n’est pas inversible et σ̄(
∇ 1 ˆ
∇) = 1
R
ˆ
∇) 0 ρ ˆ
R (M0 ∇)
ˆ
ρR (M0 ∇)

l Problème d’optimisation :

sup ˆ ≤ µ∇ (M0 )
ρR (M0 ∇)
ˆ ∇,σ̄(∇)=1
∇∈∇ ˆ

ˆ = 1 est une contrainte non-convexe)


s Optimisation non convexe (σ̄(∇)
l Cas où ∇
∇ contient uniquement des blocs complexes, alors

max ˆ = µ∇ (M0 )
ρ(M0 ∇)
ˆ ∇,σ̄(∇)=1
∇∈∇ ˆ

l Rappel : calcul de bornes inférieures donne des valeurs d’incertitudes (“petites”) qui déstabilisent

Cours M2 UPS - Commande robuste 8 Jan-Fév 2012, Toulouse


Stabilité robuste, µ-analyse

n Calcul d’une meilleure borne supérieure de µ (pour garantir stabilité robuste)


l Pour la suite du cours on suppose que tous les blocs ∆j ∈ Cpj ×pj sont carrés
l Soit l’ensemble de matrices inversibles suivant (de structure “opposée” à ∇
∇)
 
 D = diag(P , · · · , P , D , · · · , D , d 1 , · · · , d 1 ) 
1 nr 1 nc 1 p1 nf pnf
D∇ =
 Pj = Pj ∗ > 0, Dj = Dj ∗ > 0, dj ∈ R+∗ 

s Pour tout D ∈ D∇ et tout ∆ ∈ ∇


∇ on a D∆ = ∆D et donc
det(D)
det(1−M0 ∆) = det(1−M0 ∆) = det(D−1 (1−M0 ∆)D) = det(1−D−1 M0 D∆)
det(D)
s Ainsi pour tout D ∈ D∇ on a µ∇ (M0 ) = µ∇ (D−1 M0 D)
s Interprétation en terme de boucle

∆ ? M0 = (D−1 ∆D) ? (D−1 M0 D) = ∆ ? (D−1 M0 D)

Cours M2 UPS - Commande robuste 9 Jan-Fév 2012, Toulouse


Stabilité robuste, µ-analyse

s Pour tout D ∈ D∇ on a µ∇ (M0 ) = µ∇ (D−1 M0 D) ≤ σ̄(D−1 M0 D) d’où

l Le problème d’optimisation suivant donne une borne supérieur de µ :

µ∇ (M0 ) ≤ inf σ̄(D−1 M0 D) ≤ σ̄(M0 )


D∈D∇

s L’écart entre la borne et la valeur réelle peut être grand


(mais en général bien moins grand que avec σ̄(M0 ))

s Si 2(nr + nc ) + nf ≤ 3 alors il y a égalité

Cours M2 UPS - Commande robuste 10 Jan-Fév 2012, Toulouse


Stabilité robuste, µ-analyse

l Le problème d’optimisation de la borne supérieur de µ est convexe

µ∇ (M0 ) ≤ inf σ̄(D−1 M0 D)


D∈D∇

s Preuve :
Par définition σ̄(D −1 M0 D)< κ ssi D∗ M0∗ D−∗ D−1 M0 D < κ2 1
Par congruence on trouve la contrainte M0∗ D −∗ D −1 M0 < κ2 D −∗ D −1
On remarque que Q = D −∗ D −1 ∈ D∇ ssi D ∈ D∇ et donc

µ∇ (M0 ) ≤ κ s’il existe une solution aux LMI suivantes M0∗ QM0 < κ2 Q , Q ∈ D∇

s La minimisation de κ est un ”problème LMI de v.p. généralisé”,


convexe, avec solutions en temps polynomial

Cours M2 UPS - Commande robuste 11 Jan-Fév 2012, Toulouse


Stabilité robuste, µ-analyse

µ∇ (M0 ) < κ s’il existe une solution aux LMI suivantes M0 QM0∗ < κ2 Q , Q ∈ D∇
l Preuve alternative de la condition LMI
s La contrainte M0∗ QM0 < κ2 Q s’écrit également
2 32 3
2
h i −κ Q 0 1
1 M0∗ 4 54 5<0
0 Q M0

D’après le lemme de Finsler on en déduit l’existence τ > 0 tel que


2 3 2 3
−κ Q2
0 M0∗ h i
4 5<τ4 5 M0 −1
0 Q −1

Par congruence on a pour tout ∆ ∈∇



2 32 3
h i −κ2 Q 0 ∆ h ih i
∆∗ 1 4 54 5<τ ∆∗ M0∗ − 1 M0 ∆ − 1
0 Q 1

≤ κ1
Par construction, la partie gauche est déinie-positive si σ̄(∆)
∇ tq σ̄(∆) ≤ κ1 .
donc 1 − M0 ∆ est non singulière pour toute incertitude ∆ ∈ ∇

Cours M2 UPS - Commande robuste 12 Jan-Fév 2012, Toulouse


Stabilité robuste, µ-analyse

n Condition LMI moins pessimiste (DG-scalings)


l Soit l’ensemble suivant
n o
G∇ = G = diag(G1 , · · · , Gnr , 0, · · · , 0, 0, · · · , 0) , Gj = −Gj ∗

∇ on a G∆ = −∆∗ G∗ donc
s Pour tout G ∈ G∇ et tout ∆ ∈ ∇
     
h i −κ2 Q G∗ ∆ h i −κ2 Q 0 ∆
∗ = ∆ 1∗
∆ 1        
G Q 1 0 Q 1

le preuve précédente tient donc de la même façon si on définit le problème suivant

µ∇ (M0 ) < κ s’il existe une solution aux LMI suivantes


  
h i −κ2 Q G∗ 1 Q ∈ D∇
∗ <0 ,
1 M0    
G Q M0 G ∈ G∇

s Condition longtemps considérée comme, pessimiste, mais la meilleure possible

Cours M2 UPS - Commande robuste 13 Jan-Fév 2012, Toulouse


Stabilité robuste, µ-analyse

n Théorème
l µ-analyse (borne supérieure) :
si µ∇ (M (jω)) < µu pour toutes des fréquences ω ∈ R+
alors ∆ ? M stable pour tout ∆ ∈ ∆
∆γu avec γu = 1/µu
s Pour chaque fréquence les DG-scalings donnent une valeur µu (ω)
l µ-analyse (borne inférieure) : [Tits and Fan(1995)]
si µ∇ (M (jω)) > µl pour une fréquence ω ∈ R+
alors il existe ∆ ∈∆
∆γl avec γl = 1/µl qui rend ∆ ? M instable
s Pour chaque fréquence des algorithmes (aléatoires/non-convexes) donnent une valeur µl (ω)
s Il faut le faire pour toutes les fréquences (ou un quadrillage suffisamment fin)

Cours M2 UPS - Commande robuste 14 Jan-Fév 2012, Toulouse


Stabilité robuste, µ-analyse

n Exemple : stabilité robuste d’un satellite


- Ecriture des équations d’Euler du satellite en spin Ω constante autour de l’axe z et des
équations de la cinématique
- Linéarisation des équations d’Euler et de la cinématique
- Ixx = Iyy = I1 et Izz = I3

- Découplage du mouvement autour de z / axes x et y

- Equations d’Euler linéarisées et découplées :

I1 ω̇1 − ω2 Ω(I1 − I3 ) = T1
I1 ω̇2 − ω1 Ω(I3 − I1 ) = T2
h i0 h i0
- On pose a = (1 − I3 /I1 )Ω et u1 u2 = T1 /I1 T2 /I1

Cours M2 UPS - Commande robuste 15 Jan-Fév 2012, Toulouse


Stabilité robuste, µ-analyse

n Exemple : stabilité robuste d’un satellite (suite)


l Modèle d’état :
      
ω̇1 0 a ω1 u1
 =  + 
ω̇2 −a 0 ω2 u2

    
y1 1 a ω1
 =  
y2 −a 1 ω2

l Matrice de transfert :
 
−1 1 s − a2 a(s + 1)
Σ(s) = C(s1 − A) B= 2 2
 
s +a −a(s + 1) s − a2

Cours M2 UPS - Commande robuste 16 Jan-Fév 2012, Toulouse


Stabilité robuste, µ-analyse

n Exemple : stabilité robuste d’un satellite (suite)


l Stabilisation interne nominale : K = 12
s Test entrée - sortie (fonctions de sensibilité et de sensibilité complémentaire)
 
−1 1  s −a 
Sy (s) = Su (s) = (1 + Σ(s)K) =
s+1 a s
 
−1 1  1 a 
Ty (s) = Tu (s) = Σ(s)K(1 + Σ(s)K) =
s + 1 −a 1

s Test d’état :  
−1 0
à = A − BKC =  
0 −1

Cours M2 UPS - Commande robuste 17 Jan-Fév 2012, Toulouse


Stabilité robuste, µ-analyse

n Exemple : stabilité robuste d’un satellite (suite)


l On suppose que des dynamiques liées aux modes souples ont été négligées ou non modélisées
s Modèle incertain multiplicatif :
 
1 s − a2 a(s + 1)
Σ(s, ∆) = Σ(s)(1 + ∆) = 2   [1 + ∆]
s + a2 −a(s + 1) s − a2

s Modèle ∆ ? M pour K = 1
   
1 a
0 1 − − s+1
M =  ? K = −K(1 + ΣK)−1 Σ =  s+1 
a 1
−Σ −Σ s+1 − s+1

Cours M2 UPS - Commande robuste 18 Jan-Fév 2012, Toulouse


Stabilité robuste, µ-analyse

n Exemple : stabilité robuste d’un satellite (suite)


l Cas où ∆ est pleine, LTI, bornée en norme (cas des dynamiques couplées négligées)
∇1 = C2×2
s Calcul de µ∇1 (M (jω)) avec ∇
 
−1 −a

1 1 p
µ∇1 (M (jω)) = σ̄(M (jω)) =
σ̄  = √ 1 + a2
1 + jω
a −1 1 + ω2
p
Donc max µ∇ (M (jω)) = 1 + a2 : la boucle est stable si k∆k∞ < √ 1 .
ω 1+a2

s Théorème du petit gain : ∆ ? M stable ssi k∆k∞ < γ1F où


 
−1 −a

1 p
γF = kM k∞ =   = 1 + a2
s + 1
a −1


Cours M2 UPS - Commande robuste 19 Jan-Fév 2012, Toulouse


Stabilité robuste, µ-analyse

n Exemple : stabilité robuste d’un satellite (suite)


2×2

l Cas où ∇
∇2 = diag(δ, δ) ∈ C à valeurs complexes

s Le calcul exact de µ∇2 (M (jω)) est dans ce cas possible :


  
1
−1 −a
µ∇2 (M (jω)) = ρ(M (jω)) = ρ  1+jω  
a −1
 
1  −1 −a

= 1+ω2 ρ 
a −1
= √ 1 | − 1 ± ja|
1+ω 2

= √ 1 1 + a2
1+ω 2

1

s ∆ ? M stable si k∆k∞ < γF où γF = 1 + a2

Cours M2 UPS - Commande robuste 20 Jan-Fév 2012, Toulouse


Stabilité robuste, µ-analyse

n Exemple : stabilité robuste d’un satellite (suite)


2×2

l Cas où ∇
∇2 = diag(δ, δ) ∈ C
2×2 2×2 2×2
  
∆ = diag(δ, δ) ∈ C ⊂ ∆ = diag(δ1 , δ2 ) ∈ C ⊂ ∆∈C
| {z } | {z } | {z }
∇2 ∇3 ∇1

s On en déduit µ∇2 (M (jω)) ≤ µ∇3 (M (jω)) ≤ µ∇1 (M (jω)).


s Les deux bornes sont égales, donc là encore

1

∆ ? M stable si k∆k∞ < γF où γF = 1 + a2

Cours M2 UPS - Commande robuste 21 Jan-Fév 2012, Toulouse


Stabilité robuste, µ-analyse

n Exemple : stabilité robuste d’un satellite (suite)


2×2

l Cas où ∇
∇4 = diag(δ1 , δ2 ) ∈ R est à valeurs réelles

s Calcul à l’aide du critère de Routh-Hurwitz


2 3 0 1
δ1 aδ2 2
1 + s+1 s+1 1
s + (2 + δ1 + δ2 )s
det(1 − M ∆) = det 4 5=
(s+1)2
@ A
−aδ1 δ2 2
s+1
1 + s+1 +1 + δ1 + δ2 + (a + 1)δ1 δ2
1

0.8

0.6

s La boucle ∆ ? M est stable si


0.4

0.2

2 + δ1 + δ2 > 0 et 0

−0.2

2
1 + δ1 + δ2 + (a + 1)δ1 δ2 −0.4

−0.6

−0.8

−1
−1 −0.8 −0.6 −0.4 −0.2 0 0.2 0.4 0.6 0.8 1

1

s ∆ ? M stable si k∆k∞ < γF où γF = 1 + a2

Cours M2 UPS - Commande robuste 22 Jan-Fév 2012, Toulouse


Stabilité robuste, µ-analyse

n Exemple : stabilité robuste d’un satellite (suite)


2×2

l Cas où∇
∇5 = diag(δ, δ) ∈ R est à valeurs réelles

s Calcul à l’aide du critère de Routh-Hurwitz conduit à : ∆ ? M est stable si

2 + 2δ > 0 , 1 + 2δ + (a2 + 1)δ 2 > 0

s ∆ ? M stable si δ > −1 c’est à dire k∆k ≤ 1


s Calcul de µ∇5 (M (jω)) est possible et exact :
  
1
−1 −a
µ∇2 (M (jω)) = ρR (M (jω)) = ρR  1+jω  
a −1

−1±ja
= max R 1+jω

s donc µ∇5 (M (jω)) = 1 si ω = a et µ∇5 (M (jω)) = 0 sinon


Discontinue ! Très difficile à calculer par quadrillage sur ω !
1
s ∆ ? M stable si k∆k∞ < γF où γF = 1

Cours M2 UPS - Commande robuste 23 Jan-Fév 2012, Toulouse


Stabilité robuste, µ-analyse

n Test LMI (pessimiste) sur toutes les fréquences


l Calcul de borne supérieure pour une fréquence donnée M0 = M (jω)
µ∇ (M0 ) < κ s’il existe une solution aux LMI suivantes
  
h i −κ2 Q G∗ 1 Q ∈ D∇
∗ <0 ,
1 M0    
G Q M0 G ∈ G∇

l Condition suffisante pour le calcul d’une borne supérieure pour toutes les fréquences
µ∇ (M (jω)) < κ , ∀ω ∈ R+ s’il existe une solution aux LMI suivantes
  
h i −κ2 Q G∗ 1 Q ∈ D∇
1 ∗
M (jω)     <0 , , ∀ω ∈ R+
G Q M (jω) G ∈ G∇

s CNS si Q et G dépendent de ω , mais ...

Cours M2 UPS - Commande robuste 24 Jan-Fév 2012, Toulouse


Stabilité robuste, µ-analyse

n Test LMI (pessimiste) sur toutes les fréquences (suite)


l Condition suffisante pour le calcul d’une borne supérieure pour toutes les fréquences
µ∇ (M (jω)) < κ , ∀ω ∈ R+ s’il existe une solution aux LMI suivantes
  
h i −κ2 Q G∗ 1 Q ∈ D∇
1 ∗
M (jω)     <0 , , ∀ω ∈ R+
G Q M (jω) G ∈ G∇

l Lemme de Kalman-Yakubovitch-Popov avec M (s) = D + C(s1 − A)−1 B


µ∇ (M (jω)) < κ , ∀ω ∈ R+ s’il existe une solution aux LMI suivantes
2 3∗ 2 32 3 2 3∗ 2 32 3
0 1 −κ2 Q G∗ 0 1 1 0 0 P 1 0
4 5 4 54 5+4 5 4 54 5<0
C D G Q C D A B P 0 A B
Q ∈ D∇ , G ∈ G∇ , P = P ∗

s Les deux conditions ci-dessus sont équivalentes (on ne montre que la suffisance)

Cours M2 UPS - Commande robuste 25 Jan-Fév 2012, Toulouse


Stabilité robuste, µ-analyse

l Preuve de la suffisance du lemme K-Y-P


s Remarquons que
2 32 3 2 3
0 1 (s1 − A)−1 B 1
4 54 5=4 5
C D 1M (s)
2 32 3 3 2
1 0 (s1 − A)−1 B 1
4 54 5=4 5 (s1 − A)−1 B
A B 1 s1

s Donc par congruence et en posant L(jω) = (jω1 − A)−1 B on conclue


2 32 3
2 ∗
h

i −κ Q G 1
1 M (jω) 4 54 5
G Q M (jω)
2 32 3

h i 0 P 1
+L(jω) 1 −jω1 4 54 5 L(jω) < 0
P 0 jω1
| {z }
=0

Cours M2 UPS - Commande robuste 26 Jan-Fév 2012, Toulouse


Stabilité robuste, µ-analyse

l Condition issue du lemme K-Y-P et Lyapunov


s Remarquons que
2 32 3 2 3
0 1 1 ∆
4 54 5=4 5 (1 − D∆)−1 C
C D ∆(1 − D∆)−1 C 1
2 32 3 2 3 2 3
1 0 1 1 1
4 54 5=4 5=4 5
A B ∆(1 − D∆)−1 C A + B∆(1 − D∆)−1 C A(∆)

où ẋ
= A(∆)x est la représentation d’état de ∆ ? M .
s Donc par congruence et en posant Ca (∆) = (1 − D∆)−1 C on trouve
≥0
z 2 }| 32 3{

h

i −κ2 Q G∗ ∆
Ca (∆) ∆ 1 4 54 5 Ca (∆)
G Q 1
2 32 3
h

i 0 P 1
+ 1 A (∆) 4 54 5<0
P 0 A(∆)
| {z }
=A∗ (∆)P +P A(∆)

s Inégalité de Lyapunov pour V (x) = xT P x (on montre P > 0 par A(0) supposée stable)
Cours M2 UPS - Commande robuste 27 Jan-Fév 2012, Toulouse
Cours M2 ASTR - module FRS - Commande Robuste

Cours 5 - Synthèse de commandes par retour d’état robustes


Synthèse de commandes par retour d’état robustes

n Systèmes mécaniques (équation du mouvement) conduisent à des modèles du second ordre

M q̈ + C q̇ + Kq = N u , q ∈ Rd , d : degrés de liberté

s C’est aussi le cas d’autres systèmes (électriques etc.)


l q est mesurée et comparée à une consigne  = qc − q
l q̇ est mesurée ou estimée
n Pour ces systèmes le PID est une loi de commande par retour d’état
Z t h i
u(t) = Kp (t) + KI (τ )dτ + KD q̇(t) = KD KP KI y
0
0 1 2 30 1 2 3 2 3
−1 −1 −1
q̈ −M C M K 0 q̇ M B 0
B C 6 7B C 6 7 6 7
B −q̇ C = 6
5 @ −q A + 4
−1 0 0 7 B C 6 0 7u + 6 0 7 qc
@ A 4 5 4 5
R
 0 1 0  0 1
0 1 2 3
q̇ 0
B C 6 7
y= B −q C
@ A +64 1
7 qc
5
R
 0

Cours M2 UPS - Commande robuste 2 Jan-Fév 2012, Toulouse


Synthèse de commandes par retour d’état robustes

n Problème de synthèse par retour d’état


8
< ẋ = Ax + Bw w + Bu
> 8
> < ẋ = A(K)x + Bw w A(K) = A + BK
z = Cz + Dzw w + Dzu u → ,
>
> : z = Cz (K)x + Dzw w Cz (K) = Cz + Dzu K
u = Kx
:

l Stabilisation : trouver K tel que A(K) est stable


l Localisation de pôles : trouver K tel que les v.p. de A(K) sont dans une région de C
l Performance H∞ : trouver K qui minimise la norme H∞ de la boucle fermée
l Performance H2 : trouver K qui minimise la norme H2 de la boucle fermée
l Problème multi-objectif : trouver K qui satisfait plusieurs de ces problèmes
n Problème de synthèse par retour d’état robuste
8 A(K, ∆)
< ẋ = A(∆)x + Bw (∆)w + B(∆)u
>
> (
ẋ = A(K, ∆)x + Bw (∆)w = A(∆) + B(∆)K
z = Cz (∆) + Dzw (∆)w + Dzu (∆)u → ,
>
> z = Cz (K, ∆)x + Dzw (∆)w Cz (K, ∆)
: u = Kx
= Cz (∆) + Dzu (∆)K

l Problème multi-objectif robuste : trouver K qui satisfait plusieurs objectifs, ∀∆ ∈ ∆


Cours M2 UPS - Commande robuste 3 Jan-Fév 2012, Toulouse


Synthèse de commandes par retour d’état robustes

n Cas des systèmes incertains affines polytopiques


M (∆)
z }| 0 1
0 1 2 3{ x
ẋ A(∆) Bw (∆) B(∆) B C
@ A=4 5B w C
z Cz (∆) Dzw (∆) Dzu (∆)
@ A
u
82 3 9
< A[v] [v]
Bw B [v] =
M (∆) ∈ CO 4 5, v = 1...v
: Cz[v] [v]
Dzw Dzu
[v] ;

l Le système en boucle fermée est aussi affine polytopique


M (K,∆)
0 1 z2 }| 3{ 0 1
ẋ A(K, ∆) Bw (∆) x
@ A=4 5@ A
z C (K, ∆) Dzw (∆) w
82 z 3 9
[v]
< A[v] + B [v] K Bw =
M (K, ∆) ∈ CO 4 [v] [v] [v]
5, v = 1...v
: Cz + Dzu K Dzw ;

Cours M2 UPS - Commande robuste 4 Jan-Fév 2012, Toulouse


Synthèse de commandes par retour d’état robustes

l Les tests LMI d’analyse élaborés dans le cours 3 s’appliquent


s Par exemple : “stabilité quadratique” - trouver P telle que

P > 0 , (A[v] + B [v] K)T P + P (A[v] + B [v] K) < 0 , ∀v = 1 . . . v

s Ce n’est pas une LMI : pas linéaire en les variables P et K


l “Astuce” essentielle pour le calcul LMI d’un retour d’état
A(K, ∆) et AT (K, ∆) ont les mêmes valeurs propres
s ẋ = A(K, ∆)x stable ssi ẋd = AT (K, ∆)xd stable :

Q > 0 , (A[v] + B [v] K)Q + Q(A[v] + B [v] K)T < 0 , ∀v = 1 . . . v

s En posant S = KQ on trouve la condition LMI

Q > 0 , A[v] Q + B [v] S + QA[v]T + S T B [v]T < 0 , ∀v = 1 . . . v

s Si le problème LMI a une solution alors K = SQ−1 stabilise robustement le système


s ẋ = A(K, ∆)x et ẋd = AT (K, ∆)xd sont dits duaux l’un de l’autre, de plus Q = P −1

Cours M2 UPS - Commande robuste 5 Jan-Fév 2012, Toulouse


Synthèse de commandes par retour d’état robustes

n Retour d’état H∞ robuste pour les systèmes affines polytopiques


l Condition LMI pour kDzw + Cz (s1 − A)−1 Bw k∞ ≤ γ :
 
AT P + P A + CzT Cz P Bw + CzT Dzw
P >0 ,  <0
T
Bw P + Dzw T
Cz −γ 2 1 + DzwT
Dzw

l Sachant que kΣ(s)k∞ = kΣ∗ (s)k∞ on trouve la condition LMI


 
AQ + QAT + Bw Bw T
QCzT + Bw Dzw T
Q>0 ,  <0
Cz Q + Dzw Bw T
−γ 2 1 + Dzw Dzw
T


 ẋ = AT x + C T w
d d z d
pour le système dual
 zd = B T xd + DT wd
w zw

l On en déduit la condition de synthèse LMI : Q > 0 et ∀v = 1 . . . v


2 3
[v] [v] [v]T T [v]T [v] [v]T [v]T [v] [v]T
A Q+B S + QA +S B + Bw Bw QCzT +S T
Dzu + Bw Dzw
4 5<0
[v] [v] [v] [v]T 2 [v] [v]T
Cz Q + Dzu S + Dzw Bw −γ 1 + Dzw Dzw

Cours M2 UPS - Commande robuste 6 Jan-Fév 2012, Toulouse


Synthèse de commandes par retour d’état robustes

n Exercices : faire la même démarche pour obtenir des conditions LMI


l de localisation des pôles par retour d’état
l pour la performance H2

Cours M2 UPS - Commande robuste 7 Jan-Fév 2012, Toulouse


Cours M2 ASTR - module FRS - Commande Robuste

Cours 6 - Synthèse H∞ de correcteurs dynamiques


Synthèse H∞ de correcteurs dynamiques

n Conclusions du cours 3 - Stabilité robuste et théorème du petit gain


l Un grand nombre problèmes de robustesse et de performance (dont loop-shaping)
sont satisfaits si kΣ ? Kk∞ ≤ γ

n Synthèse H∞ : trouver K qui satisfait kΣ ? Kk∞ ≤ γ


l Pour Σ donné par

 ẋ = Ax + Bw w + Bu u


Σ : z = Cz x + Dzw w + Dzu u


y = Cy x + Dyw w + Dyu u

l On cherche K décrit dans l’espace d’état



 ẋ = A x + B y
K K K K
K :
 u = CK xK + DK y

Cours M2 UPS - Commande robuste 2 Jan-Fév 2012, Toulouse


Synthèse H∞ de correcteurs dynamiques

n Synthèse - Par les équations de Riccati


l Hypothèses sur le système pour l’existence d’une solution
 Bw ) et (A, Bu ) stabilisables,
s (A,   (A, Cz ) et (A,
 Cy ) détectables
A − jω1 Bw A − jω1 Bu
s  et   sont de rang plein ∀ ω
Cy Dyw Cz Dzu

l Hypothèses simplificatrices (pour avoir des équations simples) dites de “normalisation”


s Dzw = 0 et Dyu = 0    
T
h i h i Bw T
0
s Dzu Cz Dzu = 0 1 et   D yw =  
Dyw 1

Cours M2 UPS - Commande robuste 3 Jan-Fév 2012, Toulouse


Synthèse H∞ de correcteurs dynamiques

n Synthèse - Par les équations de Riccati - suite


l La boucle fermée s’écrit :
  2 3 
ẋ A + Bu DK Cy Bu CK Bw + Bu DK Dyw x
  6 7 
Σ ? K :  ẋK 

=4
6 BK Cy AK BK Dyw 7  xK 
5 
z Cz + Dzu DK Cy Dzu CK Dzu DK Dyw w
| {z }
2 3
A(K) Bw (K)
=4
6 7
5
Cz (K) Dzw (K)

T
s On définit R(K, γ) = Dzw (K)Dzw (K)−γ 2 1 et l’Hamiltonienne (voir annexe ”normes”) :
Hγ,K =
" #
A(K) − Bw (K)R−1 (K, γ)Dzw
T
(K)Cz (K) −Bw (K)R−1 (K, γ)Bw
T
(K)
−CzT (K)(1 − Dzw (K)R−1 (K, γ)Dzw
T
(K)Cz (K) −AT (K) + CzT (K)Dzw (K)R−1 (K, γ)Bw
T
(K)

s kΣ ? Kk∞ ≤ γ ssi Hγ,K n’a pas de pôle sur l’axe imaginaire.

Cours M2 UPS - Commande robuste 4 Jan-Fév 2012, Toulouse


Synthèse H∞ de correcteurs dynamiques

n Synthèse - Par les équations de Riccati - suite


l Grâce aux hypothèses, la condition sur l’Hamiltonienne se simplifie. Elle est vraie si
s Il existe X ≥ 0 et Y ≥ 0 telles que ρ(XY ) < γ 2 et solutions des équations de Riccati :

AT X + XA + X(γ −2 Bw Bw
T
− Bu BuT )X + CzT Cz = 0
AY + Y AT + Y (γ −2 CzT Cz − CyT Cy )Y + Bw Bw
T
=0

s La solution aux équations de Riccati permet de construire

ÂK = A + γ −2 Bw Bw
T
X + Bu F + ZLCy
L = −Y CyT , F = −BuT X , Z = (1 − γ −2 Y X)−1

s L’ensemble des correcteurs vérifiant kΣ ? Kk∞ ≤ γ est tel que K = K̂ ? Ω où


    
ẋK ÂK −ZL ZBu xK
    
K̂ :  u  =  F 0 1  y   , kΩk∞ < γ
    

zΩ −Cy 1 0 wΩ

Cours M2 UPS - Commande robuste 5 Jan-Fév 2012, Toulouse


Synthèse H∞ de correcteurs dynamiques

n Synthèse - Par les équations de Riccati - suite


l Le correcteur K0 = K̂ ? 0 est appelé correcteur central
l Le correcteur central s’écrit aussi

x̂˙ = Ax̂ + Bw ŵ + Bu u + ZL(Cy x̂ − y)

s où x̂ est une estimée de l’état ;


s u = F x̂ est un retour d’état ;
s ZL est un gain d’observateur ;
s et ŵ = γ −2 Bw T
X x̂ une “perturbation” spécifique.

Cours M2 UPS - Commande robuste 6 Jan-Fév 2012, Toulouse


Synthèse H∞ de correcteurs dynamiques

n Synthèse - Par les équations de Riccati - suite


l Exemple - trouver contrôleur tel que kΣ ? Kk ≤ 1.7
 
  1 1 1 0 0
A Bw Bu  
    0 −1 0 0 3 
 Cz 0 Dzu  = 
 

  0 0 0 0 1 
Cy Dyw 0  
1 0 0 1 0

Cours M2 UPS - Commande robuste 7 Jan-Fév 2012, Toulouse


Synthèse H∞ de correcteurs dynamiques

n Synthèse - Par les équations de Riccati - suite


l Exemple - trouver contrôleur tel que kΣ ? Kk ≤ 1.7
s Equation de Riccati AT X + XA +2X(γ −2 Bw Bw
T
− Bu BuT )X + CzT3Cz = 0
A γ −2 Bw Bw
T
− Bu BuT
(Hamiltonienne associée = 4 5)
−CzT Cz −A T

>> HamX = [ A , gˆ-2*Bw*Bw’-Bu*Bu’ ; -Cz’*Cz -A’];


>> [x1,x2] = ric_schr( HamX );
>> X=x2/x1
1.0504 0.5252
0.5252 0.2626
>> eig(X)
1.3130
0

Cours M2 UPS - Commande robuste 8 Jan-Fév 2012, Toulouse


Synthèse H∞ de correcteurs dynamiques

n Synthèse - Par les équations de Riccati - suite


l Exemple - trouver contrôleur tel que kΣ ? Kk ≤ 1.7
s Equation de Riccati AY + Y AT + Y (γ −2 CzT Cz − CyT Cy )Y + Bw Bw
T
=0
2 3
AT γ −2 CzT Cz − CyT Cy
(Hamiltonienne associée = 4 5)
T
−Bw Bw −A

>> HamY = [ A’ , gˆ-2*Cz’*Cz-Cy’*Cy ; -Bw*Bw’ -A];


>> [y1,y2] = ric_schr( HamY );
>> Y=y2/y1
2.4142 0
0 0

Cours M2 UPS - Commande robuste 9 Jan-Fév 2012, Toulouse


Synthèse H∞ de correcteurs dynamiques

n Synthèse - Par les équations de Riccati - suite


l Exemple - trouver contrôleur tel que kΣ ? Kk ≤ 1.7
s Construction du contrôleur central
>> L = -Y*Cy’ ;
>> F = -Bu’*X ;
>> Z = inv( eye(2) - gˆ-2*Y*X ) ;
>> Ak = A + gˆ-2*Bw*Bw’*X + Bu*F + Z*L*Cy ;
>> Bk = -Z*L ;
>> Ck = F ;
>> K = ss( Ak, Bk, Ck, 0)
>> tf( K )
Transfer function:
-31.05 s - 31.05
---------------------
sˆ2 + 21.71 s + 67.29

Cours M2 UPS - Commande robuste 10 Jan-Fév 2012, Toulouse


Synthèse H∞ de correcteurs dynamiques

n Synthèse - Par les équations de Riccati - suite


l Exemple - trouver contrôleur tel que kΣ ? Kk ≤ 1.7
s Calcul de la norme H∞ de la boucle fermée
>> sys = ss( A, [Bw,Bu] , [Cz;Cy] , [Dzw,Dzu;Dyw,Dyu] );
>> sysbf = feedback( sys, -K, 3, 2);
>> norm (sysbf (1, 1:2) , Inf)
1.6975

Cours M2 UPS - Commande robuste 11 Jan-Fév 2012, Toulouse


Synthèse H∞ de correcteurs dynamiques

n Synthèse - Par les équations de Riccati - suite


l Fonction hinfsyn de la Robust Control Toolbox
>> [kopt,N,g]=hinfsyn(P,1,1,’GMIN’,1.6,’GMAX’,1.7,’TOLGAM’,0.001,...
’METHOD’,’ric’,’DISPLAY’,’on’)

Test bounds: 1.6000 < gamma <= 1.7850


gamma hamx_eig xinf_eig hamy_eig yinf_eig nrho_xy p/f
1.785 1.0e+000 1.1e-016 1.0e+000 0.0e+000 0.7827 p
1.692 1.0e+000 0.0e+000 1.0e+000 0.0e+000 0.8867 p
1.646 1.0e+000 0.0e+000 1.0e+000 0.0e+000 0.9472 p
1.623 1.0e+000 1.1e-016 1.0e+000 0.0e+000 0.9799 p
1.612 1.0e+000 0.0e+000 1.0e+000 0.0e+000 0.9969 p
1.606 1.0e+000 0.0e+000 1.0e+000 0.0e+000 1.0056# f
1.609 1.0e+000 0.0e+000 1.0e+000 0.0e+000 1.0012# f
1.610 1.0e+000 1.1e-016 1.0e+000 0.0e+000 0.9990 p
1.609 1.0e+000 0.0e+000 1.0e+000 0.0e+000 1.0001# f

Gamma value achieved: 1.6101

Cours M2 UPS - Commande robuste 12 Jan-Fév 2012, Toulouse


Synthèse H∞ de correcteurs dynamiques

n Synthèse - Par les équations de Riccati - suite

l Correcteur presque optimal


>> tf(kopt)
Transfer function:
-4041 s - 4041
-------------------
sˆ2 + 2513 s + 8573

Le correcteur presque optimal a comme fonction de transfert

−(s + 1) −(s + 1)

2.47 · 10−4 s2 + 0.62s + 2.12 0.62s + 2.12
l On montre théoriquement que c’est toujours le cas : le contrôleur optimal est d’ordre réduit.

Cours M2 UPS - Commande robuste 13 Jan-Fév 2012, Toulouse


Synthèse H∞ de correcteurs dynamiques

n Synthèse - Par LMI


l La synthèse de correcteurs du même ordre que le système
l Il existe 2 versions LMI
s Une version où les variables de K sont éliminées.
Les LMIs permettent de trouver X et Y (analogues aux solutions des équations de Riccati)
Une seconde LMI construite avec X et Y fixées permet de trouver K
s Une autre version où les LMI impliquent X et Y et des variables K̃ .
La solution permet de construire K grâce à une formule sur X , Y , K̃ et Σ.

Cours M2 UPS - Commande robuste 14 Jan-Fév 2012, Toulouse


Synthèse H∞ de correcteurs dynamiques

n µ-Synthèse
l Synthèse H∞ (K0 = arg minK kΣ ? Kk∞ ) permet de trouver K0 telle que
1
∆ ? Σ ? K0 stable ∀∆ : k∆k ≤
γ0
s Mais le résultat est pessimiste si ∆ est structurée

max µ∇ (Σ(jω) ? K0 (jω)) ≤ kΣ ? K0 k∞ = γ0


ω

l D-scaling unique sur toutes les fréquences donne (étape d’analyse de la boucle fermée)

max µ∇ (Σ(jω) ? K0 (jω)) ≤ min kD1 −1 (Σ ? K0 )D1 k∞ = γ1 ≤ γ0


ω D1 ∈D∇

l Pour D1 fixée on peut refaire une synthèse H∞


   
D1 −1 0 D1

0
K1 = arg min    Σ   ? K
K 0 1 0 1


l Et ainsi de suite par D-K itérations (une étape d’analyse, une étape de synthèse)

Cours M2 UPS - Commande robuste 15 Jan-Fév 2012, Toulouse

Vous aimerez peut-être aussi