commande robuste - unistra.fr

66
Commande Robuste Universit´ e de Strasbourg ´ Ecole Nationale Sup´ erieure de Physique de Strasbourg 3A - Option ISAV Master IRIV - Option Automatique Robotique Edouard Laroche [email protected] http://eavr.u-strasbg.fr/ ~ laroche/student 2011–2012

Upload: others

Post on 16-Jun-2022

8 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Commande Robuste - unistra.fr

Commande Robuste

Universite de Strasbourg

Ecole Nationale Superieure de Physique de Strasbourg3A - Option ISAV

Master IRIV - Option Automatique Robotique

Edouard [email protected]

http://eavr.u-strasbg.fr/~laroche/student

2011–2012

Page 2: Commande Robuste - unistra.fr
Page 3: Commande Robuste - unistra.fr

Table des matieres

1 Introduction 5

2 Notions mathematiques 7

2.1 Valeurs propres . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7

2.2 Positivite d’une matrice . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7

2.3 Inegalite matricielle affine ou lineaire . . . . . . . . . . . . . . . . . . . . . . . . . 9

2.3.1 Presentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9

2.3.2 Exemple de LMI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9

2.3.3 Resolution . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10

2.4 Valeurs singulieres . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10

2.5 Norme des systemes LTI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12

2.5.1 Norme H∞ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12

2.5.2 Norme H2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13

2.6 Lemmes de simplification . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15

2.6.1 Complement de Schur . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15

2.6.2 Lemme de projection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16

2.6.3 Lemme de Finsler . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16

2.6.4 S-procedure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16

3 Modelisation des systemes 19

3.1 Les differentes representations d’etat . . . . . . . . . . . . . . . . . . . . . . . . . 19

3.1.1 Systeme lineaire . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19

3.1.2 Systeme lineaire a parametres variants (LPV) . . . . . . . . . . . . . . . . 19

3.1.3 Systeme non-lineaire . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20

3.2 Operations sur les systemes LTI . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21

3.2.1 Operations elementaires . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21

3.2.2 Transformation lineaire fractionnaire . . . . . . . . . . . . . . . . . . . . . 21

3.3 Representation lineaire fractionaire . . . . . . . . . . . . . . . . . . . . . . . . . . 23

4 Analyse des systemes 29

4.1 Stabilite au sens de Lyapunov . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29

4.1.1 Definition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29

4.1.2 Systeme lineaire . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30

4.1.3 Cas des systemes a temps-discret . . . . . . . . . . . . . . . . . . . . . . . 30

4.1.4 Commandes Matlab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30

4.2 Dissipativite . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31

4.2.1 Definition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31

4.2.2 Caracterisation LMI de la norme H∞ . . . . . . . . . . . . . . . . . . . . . 32

4.2.3 Passivite . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33

4.3 Performances d’un systeme asservi . . . . . . . . . . . . . . . . . . . . . . . . . . 33

4.3.1 Schema de commande . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33

4.3.2 Les criteres . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33

4.3.3 Schemas d’analyse et de synthese H∞ . . . . . . . . . . . . . . . . . . . . 35

3

Page 4: Commande Robuste - unistra.fr

4 TABLE DES MATIERES

4.4 Lieu des poles . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 404.4.1 Regions LMI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 404.4.2 Condition LMI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41

5 Synthese pour les systemes LTI 435.1 Retour d’etat stabilisant . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 435.2 Commande H∞ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44

5.2.1 Probleme et solutions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 445.2.2 Methodologies de synthese . . . . . . . . . . . . . . . . . . . . . . . . . . . 46

6 Analyse des systemes LPV incertains 496.1 Stabilite au sens de Lyapunov . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49

6.1.1 Systeme non-lineaire . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 496.1.2 Systeme lineaire . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 496.1.3 Systeme LPV . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 506.1.4 Maximisation du taux de decroissance . . . . . . . . . . . . . . . . . . . . 506.1.5 Matrice de Lyapunov dependant des parametres . . . . . . . . . . . . . . 50

6.2 Dissipativite, norme H∞ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 516.2.1 Systeme LPV . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 516.2.2 Dissipativite avec matrice de Lyapunov dependant des parametres . . . . 52

6.3 Application a un systeme mecanique . . . . . . . . . . . . . . . . . . . . . . . . . 536.3.1 Presentation du systeme . . . . . . . . . . . . . . . . . . . . . . . . . . . . 536.3.2 Analyse a partir du modele LPV . . . . . . . . . . . . . . . . . . . . . . . 546.3.3 µ-analyse . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 576.3.4 Lieu des poles . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61

Page 5: Commande Robuste - unistra.fr

Chapitre 1

Introduction

En Automatique, la synthese d’une loi de commande se fait generalement sur un modelenominal simplifie qui ne prend pas en compte toute la complexite du systeme. Des dynamiquessont negligees, comme celles qui se trouvent en dehors de la bande passante du systeme asservi ;les valeurs des parametres du modele sont consideres egales a leurs valeurs nominales.

Du fait de ces approximations, il est generalement necessaire de recourir a une etape de vali-dation a posteriori de la loi de commande. On parle d’analyse de la robustesse ; il s’agit en effetd’analyser la robustesse du comportement du systeme asservi face aux perturbations externes(variation des conditions de fonctionnement, comme la temperature) ou internes (variation desparametres) du systeme.

L’analyse de la robustesse s’appuie generalement sur la formulation d’un modele variant dansle temps, variation qui peut s’exprimer en fonction d’un certain nombre de parametres incer-tains. La premiere question concerne la stabilite. L’analyse de la robustesse en stabilite consistea etablir si le systeme demeure stable malgre les variations attendues des parametres. On peutaussi souhaiter que le systeme maintienne certaines performances (comme la bande passante).L’analyse de la robustesse en performance cherche a etablir si le systeme maintient les perfor-mances prevues pour les variations attendues des parametres.

On peut distinguer deux principales sources de perturbation susceptibles de destabiliser unsysteme asservi ou de diminuer ses performances : les variations de ses parametres et les dyna-miques negligees. Pour traiter le second cas, celui des dynamiques qui ont ete negligees lors dela synthese, il suffit simplement de les inclure dans le modele d’analyse. On se retrouve doncfinalement a analyser la robustesse a partir d’un modele qui peut etre plus sophistique que lemodele de synthese et dont les parametres sont incertains dans certains intervalles et peuvent,selon les cas, varier au cours du temps avec des dynamiques eventuellement bornees.

Avant de se lancer dans l’analyse de la robustesse, c’est-a-dire dans l’etude des modificationdu comportement du systeme en fonction des parametres, il convient de connaıtre son fonc-tionnement nominal. La premiere question est celle de la stabilite nominale, la seconde est celledes performances nominales. Une etude de robustesse en stabilite n’a de sens que si la stabilitenominale est assuree. De meme pour les performances.

La question de la robustesse peut-etre abordee de deux manieres, pour la stabilite commepour les performances :

– etant donne les intervalles de variation des parametres, le systeme est-il robuste ? A cettequestion, on repond par oui ou non ;

– quel taux de dilatation faut-il appliquer aux intervalles des parametres pour amener lesysteme en limite de stabilite ou de performance ? Le taux de dilatation est aussi appelemarge de robustesse. La robustesse est assuree si la marge de robustesse est superieure a 1.

5

Page 6: Commande Robuste - unistra.fr

6 CHAPITRE 1. INTRODUCTION

Puisque la stabilite est une condition suffisante pour les performances, la marge de robus-tesse en performance est necessairement plus faible que la marge de robustesse en stabilite.

Les methodes d’analyse different en fonction du modele choisi. Les modeles lineaires dependantdes parametres (LPV), modeles pour lesquels des methodes efficaces et desormais bien connues,sont disponibles sous deux formes :

– les modele LPV avec une dependance affine des matrices d’etat en fonction des parametres ;– les representations lineaires fractionnaire (LFR) formes d’un bouclage entre un systeme

linaire a temps invariant (LTI) et une matrice de gains fonction des parametres. Ce secondtype correspond aux systemes lineaires dont les matrices d’etat dependent rationnellementdes parametres ; il s’agit donc d’une generalisation du premier type.

Pour les systemes LPV affines, des formulation LMI sont disponibles pour l’analyse en sta-bilite et en performance dans le cas de parametres constants ou variants. Ces methodes, dis-ponibles dans les boites a outils 1 de Matlab, sont presentees dans ce fascicule. La methode laplus classique destinee aux modeles LFR est la µ-analyse 2. Cette methode fait egalement partidu contenu du cours. D’autres boites a outils sont egalement disponibles. Citons par exempleRomuloc, developpee par D. Peaucelle qui permet de traiter a la fois les modeles LPV affines etles LFR [10].

1. Les methodes d’analyse des systemes LPV affines ont ete proposees dans la LMI Control Toolbox [7]. Cesfonctions sont desormais disponibles dans les version recentes de la Robust Control Toolbox[8]

2. Ces methodes sont disponibles dans la µ-Analysis and Synthesis Toolbox [9] ou dans les versions recentesde la Robust Control Toolbox [8].

Page 7: Commande Robuste - unistra.fr

Chapitre 2

Notions mathematiques

Les Inegalites Matricielles Affines ou LMI prennent une place de plus importante dans lesmethodes modernes de l’automatique. De nombreux resultats anterieurs trouvent une formula-tion LMI et ce formaliste permet aussi de resoudre de nouveaux problemes qui n’avaient pastrouve jusqu’alors de solution.

2.1 Valeurs propres

Definition 1 (Valeur propre)Soit A une matrice carree de reels ou de complexes. On appelle valeur propre la grandeur λ tellequ’il existe un vecteur propre x verifiant Ax = λx.

>> eig([1 2; 3 4])

ans =

-0.3723

5.3723

La matrice A de dimension n × n represente une application lineaire de Rn dans Rn. Lesdirections propres, c’est-a-dire les directions des vecteurs propres, sont les directions de Rn inva-riantes par A. Les valeurs propres sont les gains d’amplifications dans ces directions. Le nombrede valeurs propres distinctes est au plus n. La dimension du sous-espace propre correspondanta une valeur propre donnee est variable. Une base de vecteurs propres peut etre obtenue.

En utilisant la relation Axi = λixi ou λi est la ieme valeur propre et xi un vecteur proprequi lui est associe, on peut concatener les n relations obtenues pour i = 1 . . . n en AX = XDou X = [x1 . . . xn] est la matrices des vecteurs propres formant une base et D = diagλ1, . . . λnest la matrice des valeurs propres ou chaque valeur propre est repetee autant de fois que ladimension de son sous-espace propre.

Propriete 1 (Matrice symetrique ou hermitienne)Les valeurs propres des matrices reelles symetriques (AT = A) et complexes hermitiennes (AH =(A∗)T ) sont toutes reelles.

2.2 Positivite d’une matrice

Definition 2 (Matrice positive)Une matrice A ∈ Rn est dite positive et on note A ≥ 0 si la forme quadratique xTAx est positivepour tout vecteur x.

Cette definition se transpose evidemment au cas negatif. On peut toujours ecrire une formequadratique a partir d’une matrice symetrique. Ainsi, xTAx = 1

2xT (AT +A)x. On ne contentera

7

Page 8: Commande Robuste - unistra.fr

8 CHAPITRE 2. NOTIONS MATHEMATIQUES

donc de considerer le cas des matrices symetriques. Ces matrices ont la particularite d’avoirtoutes leurs valeurs propres reelles.

Propriete 2 (Matrice positive)Une matrice A symetrique est positive si et seulement si toutes ses valeurs propres sont positiveset on note A ≥ 0.

On definit aussi la positivite stricte et on dit qu’une matrice est definie positive si toutesses valeurs propres sont strictement positives. C’est equivalent a dire que la forme quadratiquecorrespondante xTAx est strictement positive pour tout x non nul.

Propriete 3– Soit λ un scalaire, A−λI > 0 si et seulement si les valeurs propres de A sont strictement

superieures a λ.– P > 0 ⇔ −P < 0 ; on peut donc toujours se ramener a un probleme de positivite (ou de

negativite).

Propriete 4 (Somme de matrices)– A > 0, B > 0⇒ A+B > 0

Cette propriete se demontre facilement a partir de la definition A > 0 ⇐⇒ xTAx > 0 ∀x 6= 0.

Propriete 5 (Produit de matrices)– A > 0, B > 0⇒ AB > 0– A > 0, B < 0⇒ AB < 0

Demonstration 1 (Explication) Ces proprietes se comprennent facilement en considerantqu’une matrice positive est une application qui, a un vecteur de composantes positives, associe unvecteur de composantes toutes positives ; une matrice negative, au contraire, est une applicationqui, a un vecteur de composantes positives, associe un vecteur dont les composantes sont toutesnegatives.

Demonstration 2 (Demonstration plus complete)Pour une demonstration plus complete, on peut considerer une valeur propre λAB de AB associeeau vecteur propre V AB, verifiant donc

λABV AB = ABV AB, (2.1)

et chercher a montrer qu’elle est positive. L’idee des calculs ci-dessous consiste a calculer lescoordonnees du vecteur propre d’abord dans la base des vecteurs propres de B notes V B

k puisdans ceux de A notes V A

l . Ainsi, on peut ecrire

V AB =∑k

βkVBk (2.2)

ou les βk sont les coordonnees de V AB dans la base des vecteurs propres de B et

V Bk =

∑l

αklVAl (2.3)

ou les αkl sont les coordonnees de V Bk dans la base des vecteurs propres de A. En remplacant

dans (2.1) et en utilisant le fait que AV Al = λAl V

Al et BV B

k = λBk VBk ou λAl et λBk sont les

valeurs propres respectivement de A et B, on obtient :

∑l

λAl

(∑k

λBk βkαkl

)V Al = λAB

∑l

(∑k

βkαkl

)V Al (2.4)

Page 9: Commande Robuste - unistra.fr

2.3. INEGALITE MATRICIELLE AFFINE OU LINEAIRE 9

Il s’agit d’une egalite entre deux vecteurs. Leurs coordonnees dans la base V Al sont donc iden-

tiques et

λAl∑k

λBk βkαkl = λAB∑k

βkαkl ∀l (2.5)

Dans l’hypothese ou A et B sont toutes deux positives, les quantites λAl∑

k λBk βkαkl et

∑k βkαkl

sont necessairement de meme signe et λAB est donc positif (AB positive). Si A et B sont designe contraire, ces deux quantites seront de signe contraire et AB est alors negative.

2.3 Inegalite matricielle affine ou lineaire

2.3.1 Presentation

Definition 3 (Inegalite matricielle affine)On appelle inegalite matricielle affine (ou inegalite matricielle lineaire et en anglais linear ma-trix inequality, note LMI) le probleme suivant : etant donnees les matrices reelles, carrees etsymetriques Mk, k = 1..n, trouver les reels xk, k = 1...n tels que M0 + x1M1 + ...+ xnMn > 0.

Le succes des LMI vient du developpement des methodes dites du point interieur (interiorpoint methods) qui permettent de resoudre de maniere efficace ces problemes [11]. Il est egalementlie au fait que de nombreux problemes, notamment de l’automatique, peuvent etre formule sousforme de LMI.

Remarque 1 (Un systeme de plusieurs LMI est une LMI)P (x) > 0Q(x) > 0

⇔[P (x) 0

0 Q(x)

]> 0 (2.6)

2.3.2 Exemple de LMI

Les LMI ne se presentent pas directement sous la forme de l’inegalite presentee ci-dessus.Prenons un exemple classique de l’automatique : la stabilite de Lyapunov 1 pour un systemelineaire x = Ax. Il s’agit de trouver une matrice reelle P = P T > 0 de meme dimensions que Atelle que ATP + PA < 0. Considerons a titre d’exemple, le cas ou A est une matrice 2× 2.

A =

[a1 a2a3 a4

](2.7)

La matrice P depend alors de 3 parametres xi, k = 1..3 et peut s’ecrire

P =

[x1 x2x2 x3

](2.8)

La condition de positivite de P s’ecrit

x1

[1 00 0

]+ x2

[0 11 0

]+ x3

[0 00 1

]> 0 (2.9)

L’inegalite de Lyapunov, elle se reecrit :

x1

[2a1 a2a2 0

]+ x2

[2a2 a1 + a4

a1 + a4 2a2

]+ x3

[0 a3a3 2a4

]< 0 (2.10)

1. Mathematicien russe ne en 1857 et mort en 1918, Lyapunov est le pere d’une theorie qui porte son nom etqui est a la base de nombreux developpements recents de l’automatique(voir http://en.wikipedia.org/wiki/

Aleksandr_Lyapunov).

Page 10: Commande Robuste - unistra.fr

10 CHAPITRE 2. NOTIONS MATHEMATIQUES

Figure 2.1 – Fenetre de l’editeur graphique de LMI de Matlab

2.3.3 Resolution

Afin de rendre les solvers de LMI facilement utilisables pour les problemes de l’automatique,des interfaces ont ete developpees permettant d’ecrire les probleme sous des formes matriciellessimples (voir figure 2.1). On peut citer LMI-Tools de El Ghaoui 2, la LMI Control Toolbox deMathWorks [7] et l’interface SeDuMi developpe au LAAS par Peaucelle et alli [12]. Notons aussil’outil YALMIP 3 qui permet de definir un probleme LMI et de le resoudre avec n’importe quelsolveur installe sur votre machine.

Les trois problemes classiques que ces outils resolvent sont

– la fesabilite (ou existence) : trouver x solution de A(x) < 0,– la minimisation d’une fonction lineaire : trouver x minimisant cTx sous la contrainteA(x) < 0,

– le probleme de valeur propre generalisee : minimiser λ sous les contraintes A(x) < λB(x),B(x) > 0 et C(x) < 0.

2.4 Valeurs singulieres

Definition 4 (Valeur singuliere)Les valeurs singulieres d’une matrice complexe M sont les racines carrees des valeurs propresde MHM ou MH est le hermitien (transpose conjugue) de M . On les note σi(M).

Propriete 6 (Proprietes generales)

– Les valeurs singulieres sont des nombres reels positifs.– Les valeurs singulieres non nulles de M sont identiques a celles de MH (invariance par

l’operation transpose/conjugue)

2. http ://robotics.eecs.berkeley.edu/˜elghaoui/3. http ://control.ee.ethz.ch/˜joloef/yalmip.php

Page 11: Commande Robuste - unistra.fr

2.4. VALEURS SINGULIERES 11

– Les valeurs singulieres non nulles sont au plus au nombre de min(nu, ny), la plus petitedimension de M .

Exemple 1 (Valeurs singulieres de matrices simples)

– Les n valeurs singuliere de λIn, ou λ ∈ R sont toutes egales a λ.– Les valeurs singulieres d’une matrice diagonale reelle sont egales aux valeurs absolues des

elements diagonaux ; pour une matrice de complexes, les valeurs singulieres sont egalesaux modules des elements de la diagonale.

svd([2,0;0,-3j]);

ans =

3.0000

2.0000

Propriete 7 (Norme matricielle)La valeur singuliere maximale σ(M) est une norme matricielle. Les proprietes generales desnormes s’appliquent donc.

– σ(λM) = |λ|σ(M)– σ(M +N) ≤ σ(M) + σ(N)– σ(MN) ≤ σ(M)σ(N)

Propriete 8 (Inversion de matrice)M est inversible si et seulement si sa plus petite valeur singuliere est non nulle (σ(M) > 0).Alors, σ(M) = 1

σ(M−1)et σ(M) = 1

σ(M−1).

On en deduit les proprietes suivantes :

Propriete 9 (Autres proprietes)

– σ(λM) = |λ|σ(M)– σ(M +N) ≥ σ(M) + σ(N)– σ(M)σ(N) ≤ σ(MN)

Propriete 10 (Interpretation)La norme σ est la norme induite sur les matrices par la norme euclidienne des vecteurs :

σ(M) = maxz 6=0

||Mz||2||z||2

σ2(M) = maxz 6=0

zHMHMz

zHz(2.11)

Ainsi, la norme σ est l’amplification maximale du systeme de transfert M .

Exemple 2 (Valeurs singulieres d’un systeme multivariable)Le programme suivant sous Matlab definit un systemes LTI a deux etats, deux entrees et deuxsorties puis trace les valeurs singulieres de sa matrice de transfert en fonction de sa pulsation(voir figure 2.2). A la place de la fonction ltiview, on peut utiliser la fonction sigma.

A = [-1 0; 1 -2];

B = eye(2);

C = [1 1; 0 1];

D = 0.1*ones(2,2);

Sys = ss(A,B,C,D)

ltiview(’sigma’,Sys,1e-1,1e2);

G1 = C*inv(j*1*eye(2)-A)*B+D; % matrice de transfert a 1 rad/s

SV = svd(G1)

u = randn(2,1)

Ampli = norm(G1*u)/norm(u)

Page 12: Commande Robuste - unistra.fr

12 CHAPITRE 2. NOTIONS MATHEMATIQUES

Figure 2.2 – Trace des valeurs singulieres d’un systeme LTI multivariable

La partie finale du script permet de calculer l’amplification d’une entree u a la pulsation 1 rad/s.A partir des resultats ci-dessous, on verifie que cette amplification est bien toujours compriseentre la valeur singuliere max et la valeur singuliere min de G(j 1).

SV =

1.3257

0.2872

u =

1.1892

-0.0376

Ampli =

1.1032

2.5 Norme des systemes LTI

2.5.1 Norme H∞

Definition 5 (Norme L2 sur les signaux)Pour un signal x(t) a valeur dans Rn, la norme L2 est definie par :

||x(t)| |L2 =

√∫ ∞0

xT (t)x(t) dt (2.12)

Definition 6 (Norme H∞ sur les systemes)Pour un systeme de fonction de transfert G(s), la norme H∞ est definie comme la norme induitepar la norme L2 sur les signaux. C’est-a-dire que si u(t) est applique en entree de G(s) et quey(t) est releve en sortie 4, on a :

||G(s)| |∞ = max||y(t)| |L2||u(t)| |L2

(2.13)

Ainsi, la norme H∞ est l’amplification maximale d’un signal par un systeme. Pour les ma-trices, nous avions vu que la valeur singuliere maximale etait l’amplification maximale d’unvecteur. On peut donc facilement se ramener a l’interpretation suivante.

Propriete 11 (Norme H∞ et valeur singuliere)

||G(s)| |∞ = maxω

σ(G(jω)) (2.14)

4. On considere des conditions initiales nulles.

Page 13: Commande Robuste - unistra.fr

2.5. NORME DES SYSTEMES LTI 13

Exemple 3 (Valeurs singulieres maximale)En faisant le calcul sur l’exemple numerique precedent :

norm(Sys,inf)

On obtient une norme de 1.881, ce qui correspond a 5.49 dB, ce qui est coherent avec le tracede la figure 2.2.

Propriete 12 (Norme H∞)

– Pour une matrice de transfert sous forme de blocs :

G(s) =

[G11(s) G12(s)G21(s) G22(s)

](2.15)

on a :

||G(s)||∞ < γ ⇒ ||Gkl(s)||∞ < γ ∀(k, l) ∈ 1, 2 (2.16)

– ||W (s)G(s)||∞ < γ ⇒ σ(G(jω) < γσ(W (jω))

2.5.2 Norme H2

La presentation ci-dessous de la norme H2 est reprise du cours de Supelec de G. Duc [13],paragraphe 1.2.

Definition

Soit G(s) le systeme LTI multivariable defini par :

[xz

]=

[A BC D

] [xv

](2.17)

avec D = O (systeme strictement propre 5). On definit la norme matricielle H2 de ce systemepar :

||G||2 =

√(1

∫ ∞−∞

tr [GH(jω)G(jω)] dω

)(2.18)

Proprietes

Soit g la reponse impulsionnelle du systeme. Dans le cas monovariable, le theoreme de Par-seval donne une forme equivalente 6 :

||G||22 =

∫ ∞0

gT(t)g(t)dt. (2.19)

Dans le cas monovariable, la norme H2 du systeme est egale a l’energie de la reponse impulsion-nelle.

5. Cette restriction est necessaire pour que la norme du systeme soit finie.6. On rappelle que la fonction de transfert est la transformee de Laplace de la reponse impulsionnelle.

Page 14: Commande Robuste - unistra.fr

14 CHAPITRE 2. NOTIONS MATHEMATIQUES

Supposons maintenant que v soit un bruit blanc gaussien verifiantEv(t)vT(τ) = Iδ(t− τ) et calculons la puissance de sortie :

EzTz = tr[EzzT

]= tr

[E

∫ +∞

−∞

∫ +∞

−∞g(t− τ1)v(τ1)v

T(τ2)gT(t− τ2)dτ1dτ2

]= tr

[∫ +∞

−∞

∫ +∞

−∞g(t− τ1)E

v(τ1)v

T(τ2)gT(t− τ2)dτ1dτ2

]= tr

[∫ +∞

−∞g(t− τ)gT(t− τ)dτ

]= tr

[∫ +∞

−∞g(τ)gT(τ)dτ

]=

∫ +∞

−∞tr[gT(τ)g(τ)

]dτ

=1

∫ +∞

−∞tr[GH(jω)G(jω)

]dτ

= ||G||2

Ainsi, la norme H2 est la puissance de sortie lorsque le systeme est alimente pas un bruit blancgaussien unitaire.

Calcul

La norme H2 peut etre calculee pour tous les systemes strictement propres (D = O) etstrictement stables. En effet, elle peut s’ecrire ainsi :

||G||22 =

∫ ∞0

tr[gT(t)g(t)

]dt (2.20)

= tr

∫ ∞0

(BT exp(ATt)CT

)(C exp(At)B) dt (2.21)

= tr

[BT

∫ ∞0

exp(ATt)CTC exp(At)dtB

](2.22)

ou encore :

||G||22 =

∫ ∞0

tr[g(t)gT(t)

]dt (2.23)

= tr

∫ ∞0

(C exp(At)B)(BT exp(ATt)CT

)dt (2.24)

= tr

[C

∫ ∞0

exp(At)BBT exp(ATt)dtCT

](2.25)

soit :

||G||22 = tr[BTWoB

]= tr

[CWcC

T]

(2.26)

ou Wo et Wc sont les gramiens de commandabilite et d’observabilite :

Wo =

∫ ∞0

exp(At)BBT exp(ATt)dt (2.27)

Wc =

∫ ∞0

exp(ATt)CTC exp(At)dt (2.28)

Page 15: Commande Robuste - unistra.fr

2.6. LEMMES DE SIMPLIFICATION 15

Ils peuvent etre obtenus comme les solutions des equations de Lyapunov 7 suivantes :

AWc +WcAT +BBT = 0 (2.29)

ATWo +WoA+ CTC = 0 (2.30)

En effet, partons de :

d

dt

[exp(At)BBT exp(ATt)

]= A exp(At)BBT exp(ATt) + exp(At)BBT exp(ATt)AT. (2.31)

En notant que pour un systeme stable :

limt→∞

exp(At) = 0, (2.32)

et en integrant sur [0,∞], on obtient directement les deux equations de Lyapunov. C’est cettemethode qui est utilisee dans les Toolboxes de Matlab pour le calcul de la norme H2 [14].

Formulation LMI

Les inegalites matricielles affines (LMI pour inegalites matricielles lineaires) sont devenuesun outil classique de l’automatique. Ils sont a la base de nombreuses methodes innovantes et lesmethodes classiques ont generalement une formulation LMI. Une introduction sur les LMI estdeveloppee en Annexe B. Voici la formulation LMI de la norme H2 [15].

Soit S0 la solution de l’equation de Lyapunov (2.29), c’est-a-dire verifiant :

AS0 + S0AT +BBT = 0, (2.33)

avec S0 = ST0 ≤ 0. Alors toute matrice S verifiant :

AS + SAT +BBT < 0 (2.34)

verifie aussi S > S0.Le systeme G(s) stable avec D = 0 verifie ||G||22 < ν si et seulement si il existe une matrice

symetrique positive, :S > 0, (2.35)

verifiant (2.34) et :tr[CSCT

]< ν. (2.36)

L’ensemble des inegalites (2.34-2.36) constitue un systeme LMI et peut se resoudre avec lessolveurs disponibles [11, 7].

2.6 Lemmes de simplification

2.6.1 Complement de Schur

Il s’agit d’un resultat preliminaire qui permettra, dans ce qui suit, de simplifier des expres-sions matricielles.

Lemme 1 (Complement de Schur)La LMI : [

Q SST R

]< 0, (2.37)

7. D’apres la theorie de Lyapunov, l’equation AX + XTA + Q = 0 d’inconnue X, avec Q symetrique definiepositive, a une solution positive si A est Hurwitz (ses poles sont a partie reelle strictement negative). Alors unesolution symetrique peut etre facilement obtenue par la resolution d’un systeme de n(n+ 1) equations lineaires aautant d’inconnues (les composantes de X), ou n est la dimension de A. La resolution de l’equation de Lyapunovest disponible dans les Toolboxes [14].

Page 16: Commande Robuste - unistra.fr

16 CHAPITRE 2. NOTIONS MATHEMATIQUES

ou Q = QT et R = RT est equivalente a :R < 0

Q− SR−1ST < 0.(2.38)

Demonstration 3La demonstration se fait facilement en multipliant (2.37) a droite par :[

I 0−R−1ST I

](2.39)

et a gauche par la transposee de cette derniere matrice. Ces deux matrices etant definies, onobtient alors une condition equivalente :[

Q− SR−1ST 00 R

]< 0. (2.40)

2.6.2 Lemme de projection

Theoreme 1 (Lemme de projection [16])Soit une matrice symetrique Ψ ∈ Rm×m et deux matrices P et Q de nombre de colonnes m. Etconsiderons le probleme consistant a trouver une matrice Θ de dimensions adequoites telle que :

Ψ + PTΘTQ+QTΘP < 0 (2.41)

Notons WP et WQ des matrices dont les colonnes forment une base des noyaux de respectivementP et Q. Alors, une solution Θ de l’equation (2.41) existe si et seulement si :

WTP ΨWP < 0

WTQ ΨWQ < 0.

(2.42)

Preuve. Comme les colonnes de WP font partie du noyau de P , on a WPP = 0 et de meme,WQQ = 0. Ainsi l’implication (2.41) =⇒ (2.42) se montre facilement en multipliant (2.41) agauche par PT et a droite par P , puis en procedant de meme avec Q. Une demonstration de lareciproque a ete donnee par Gahinet et Apkarian [16].

2.6.3 Lemme de Finsler

Theoreme 2 (Lemme de Finsler)Etant donnees les matrices A et B ; les conditions suivantes sont equivalentes 8 :

1. xTAx > 0 pour tout x 6= 0 tel que Bx = 0

2. BTAB > 0 ou BB = 0

3. A+ λBTB > 0 pour un scalaire λ

4. A+XB +BTXT > 0 pour une matrice X

2.6.4 S-procedure

Cet outil pratique developpe par Yakubovich 9 permet de simplifier certains problemes decommande robuste.

8. Paul Finsler, mathematicien suisse, est ne en 1894 et decede en 1970. http://fr.wikipedia.org/wiki/Paul_Finsler

9. Vladimir A. Yakubovich est reconnu pour ses contributions a la commande moderne, notamment dans lesannees 1960, http://www.math.spbu.ru/user/java/en/.

Page 17: Commande Robuste - unistra.fr

2.6. LEMMES DE SIMPLIFICATION 17

Theoreme 3 (S-procedure)Soit les formes quadratiquessuivantes :

qi(x) =

[x1

]H [Ai bHibi ci

] [x1

]= xHAix+ 2bHi x+ ci, (2.43)

pour i = 0, 1, ..., p.Alors, on a q0(x) ≥ 0 pour tout x tel que qi(x) ≥ 0, i = 1, ..., p s’il existe des scalairsρi ≥ 0

qui satisfont la contrainte LMI suivante :[A0 bH0b0 c0

]−

p∑i=1

ρi

[Ai bHibi ci

]≥ 0 (2.44)

De plus, l’inverse est vrai pour p = 1 en reel et meme pour p = 2 en complexe.

Page 18: Commande Robuste - unistra.fr

18 CHAPITRE 2. NOTIONS MATHEMATIQUES

Page 19: Commande Robuste - unistra.fr

Chapitre 3

Modelisation des systemes

3.1 Les differentes representations d’etat

Nous nous limitons, dans ce cours, aux systemes dynamiques continus multivariables (ditsaussi MIMO pour multi input multi output). Le vecteur des entrees est u, celui des sorties y ; levecteur d’etat est x.

3.1.1 Systeme lineaire

On parle aussi de systeme lineaire invariant dans le temps ou en anglais de linear time-invariant system (LTI). I l s’agit du cas ou les equations sont lineaires par rapport aux entreeset aux variables d’etat. Le systeme peut etre mis sous la forme :

x = Ax+Buy = Cx+Du

(3.1)

Cette representation ne concerne que les systemes propres (qui ne contiennent pas d’effet derivatifpur) ; pour les systemes strictement propres, D = 0. On note G(s) la fonction de transfert dusysteme :

G(s) = C(sIn −A)−1B +D (3.2)

ou n est l’ordre du systeme. On se permettra de designer le systeme par sa fonction de transfertG(s) meme si les calculs sont faits sur la representation d’etat.

La fonction de transfert permet de relier les transformees de Laplace des signaux d’entreeet de sortie, c’est-a-dire que pour une condition initiale nulle, on peut ecrire Y (s) = G(s)U(s),ou U(s) et Y (s) sont respectivement les transformees de Laplace des signaux u(t) et y(t). On sepermet parfois l’abus de notation suivant : y(t) = G(s)u(t) qui signifie que y(t) est la sortie dusysteme G(s) pour une entree u(t).

Sous Matlab, on peut definir un systeme LTI avec les fonctions ss et tf.

3.1.2 Systeme lineaire a parametres variants (LPV)

Dans un systeme LPV, les matrices d’etat A, B, C et D dependent d’un vecteur des pa-rametres θ qui peut varier en fonction du temps.

x = A(θ)x+B(θ)uy = C(θ)x+D(θ)u

(3.3)

A defaut de connaıtre a l’avance la trajectoire de θ, on connaıt souvent des bornes sur sesdifferentes composantes : θk ≤ θk ≤ θk et peut-etre aussi sur les vitesses de variation : θk ≤ θk ≤θk.

Le vecteur des parametres peut etre vu comme une entree supplementaire du systeme quine rentre alors plus dans la classe des systemes lineaires. Parmi les systemes LPV, certainstypes particuliers sont interessants a etudier : les systemes LPV affines, LPV polytopiques et lesrepresentations lineaires fractionnaires).

19

Page 20: Commande Robuste - unistra.fr

20 CHAPITRE 3. MODELISATION DES SYSTEMES

Systeme LPV affine

Dans ce cas, la dependance des matrices d’etat en fonction des parametres est lineaires.Notons

M =

[A BC D

]. (3.4)

On a alors M(θ) = M0 + θ1M1 + θ2M2....Remarquez que le produit ou l’interconnexion de deux modeles LPV affines n’est generalement

pas un modele LPV affine, mais plutot un modele LPV avec dependance quadratique en fonctiondes parametres.

Systeme LPV polytopique

La matrice M representant le systeme est une combinaison barycentrique de plusieurs ma-trices M s

1 , M s2 ,... : M = α1M

s1 + α2M

s2 + .... Avec 0 ≤ αk ≤ 1 et Σαk = 1.

Un systeme LPV affine dont les parametres varient sur des intervalles connus peut etreconsidere comme un systeme polytopique. Traitons l’exemple d’un systeme dependant de deuxparametres M(θ) = M0 + θ1M1 + θ2M2 et notons M s

1 , M s2 , M s

3 et M s4 ses sommets :

M s1 = M0 + θ1M1 + θ2M2

M s2 = M0 + θ1M1 + θ2M2

M s3 = M0 + θ1M1 + θ2M2

M s4 = M0 + θ1M1 + θ2M2

(3.5)

Construisons maintenant le systeme polytopique M = α1Ms1 + α2M

s2 + α3M

s3 + α4M

s4 avec

α1 = θ1−θ1θ1−θ1

θ2−θ2θ2−θ2

α2 =θ1−θ1θ1−θ1

θ2−θ2θ2−θ2

α3 = θ1−θ1θ1−θ1

θ2−θ2θ2−θ2

α4 =θ1−θ1θ1−θ1

θ2−θ2θ2−θ2

(3.6)

En remplacant dans l’expression de M les M sk et les αk par leurs expressions ci-dessus, verifie

que l’on retrouve bien M = M . Ce resultat est encore valable pour un nombre de parametresplus eleve. On retiendra qu’il y a equivalence entre les representations affine et polytopique.

Exercice 1 (Equivalence entre polytopique et LPV affine)Ecrivez M en fonction de θ ; simplifiez et montrez que l’on retrouve M .

3.1.3 Systeme non-lineaire

L’equation d’etat d’un systeme non-lineaire est :x = f(x, u)y = g(x, u)

(3.7)

Si les fontions f et g sont derivables, (on exclut donc les non-linearites fortes du type seuil,bande morte...), on peut lineariser les equations autour d’un point d’equilibre (x0, u0) verifiantf(x0, u0) = 0 :

x = f(x0, u0) + ∂f∂x (x− x0) + ∂f

∂u(u− u0)y = g(x0, u0) + ∂g

∂x(x− x0) + ∂g∂u(u− u0)

(3.8)

En notant δx = x− x0, δu = u− u0 et δy = y − g(x0, u0) on se ramene a un systeme LPV :δx = A(θ)δx +B(θ)δuδy = C(θ)δx +D(θ)δu

(3.9)

Page 21: Commande Robuste - unistra.fr

3.2. OPERATIONS SUR LES SYSTEMES LTI 21

avec θ = [x0, u0].

L’etude d’un systeme non-lineaire par l’analyse de son modele linearise, bien que souventsans garantie stricte, constitue une voie couramment empruntee en automatique.

3.2 Operations sur les systemes LTI

3.2.1 Operations elementaires

Exercice 2 (Operations sur deux systemes LTI)Soit deux systemes G1(s) et G2(s) respectivement definis par leurs representations d’etat :

G1(s) ≡[A1 B1

C1 D1

]; G2(s) ≡

[A2 B2

C2 D2

]. (3.10)

On note u1 et u2 les entrees respectives de G1(s) et de G2(s). On note y1 et y2 leurs sortiesrespectives.

1. Determinez la representation d’etat du systeme d’entree u et de sortie y = y1 + y2.

2. Determinez la representation d’etat du systeme d’entree u = u1 et de sortie y = y2 avecy1 = u2.

3. Determinez la representation d’etat du systeme d’entree u =

[u1u2

]et de sortie y =

[y1y2

].

3.2.2 Transformation lineaire fractionnaire

Soit un systeme G(s) d’entree u ∈ RnG et de sortie y ∈ RnG ; soit un systeme H(s) d’entreev ∈ RnH et de sortie z ∈ RnH . On considere la partitions suivantes de G(s) :[

y1y2

]=

[G11(s) G12(s)G21(s) G22(s)

] [u1u2

](3.11)

avec u1, y1 ∈ RnG1 , u2, y2 ∈ RnG2 , nG = nG1 + nG2.

Dans le cas ou nH = nG1, on definit l’interconnexion lftu(G(s), H(s)) (on parle de upperLFT) comme le systeme d’entree u2, de sortie y2 et obtenu par l’interconnexion des systemesG(s) et H(s) avec v = y1 et u1 = z.

Dans le cas ou nH = nG2, on definit l’interconnexion lftl(G(s), H(s)) (on parle de lowerLFT) comme le systeme d’entree u1, de sortie y1 et obtenu par l’interconnexion des systemesG(s) et H(s) avec v = y2 et u2 = z.

G(s)

H(s)

--

-

u2

u1 = z

y2

y1 = v

Figure 3.1 – Representation lineaire fractionnaire lftu(G(s), H(s))

Exercice 3 (Interconnexion pour l’analyse d’un systeme asservi)Soit un systeme G(s) de commande u, de mesure y ∈ Rp. Il est asservi a la reference r par uncorrecteur K(s) et la loi de commande u = K(s) e avec e = r − y. On note Hbo(s) = G(s)K(s)la fonction de transfert en boucle ouverte.

Page 22: Commande Robuste - unistra.fr

22 CHAPITRE 3. MODELISATION DES SYSTEMES

H(s)

G(s)

--

-

u1

u2 = z

y1

y2 = v

Figure 3.2 – Representation lineaire fractionnaire lftl(G(s), H(s))

1. Montrez que le systeme en boucle fermee S(s) d’entree r et de sortie e peut se mettre sousla forme suivante :

S(s) = lftl(M,Hbo(s)) (3.12)

2. Determinez la matrice M correspondant.

3. Deduisez en le script Matlab permettant de calculer la fonction de sensibilite S(s) a partirde Hbo(s).

Exercice 4 (Interconnexion pour la synthese de correcteur)Soit un systeme G(s) de commande u ∈ Rm, de mesure y ∈ Rp. On souhaite l’asservir a unsignal de reference r par un correcteur K(s) et la loi de commande u = K(s) e avec e = r − y.On souhaite determiner une technique permettant de calculer facilement les fonction de transferten boucle fermee. Le systeme en boucle fermee H(s) a comme entree v = r et comme sortie

z =

[eu

].

1. Montrez que le systeme en boucle fermee peut se mettre sous la forme suivante :

H(s) = lftl(H1(s),K(s)) (3.13)

et donnez le schema-bloc de H1(s).

2. Montrez que H1(s) peut se mettre sous la forme :

H1(s) = lftu(M,G(s)) (3.14)

et determinez la matrice M correspondante.

3. Deduisez en le script Matlab permettant de calculer le systeme de synthese H1(s) a partirdu systeme G(s).

4. Donnez la script permettant de cacluler le systeme en boucle fermee d’entree H(s) a partirde G(s) et de K(s).

Exercice 5 (Representation LFT d’un systeme LTI)Soit un systeme LTI G(s), d’ordre n et de representation d’etat (3.1).

1. Montrez qu’un systeme LTI G(s), d’ordre n et de representation d’etat (3.1) peut se mettresous la forme d’une LFT suivante :

G(s) = lftu

(M,

1

sIn)

(3.15)

2. Determinez la matrice M .

3. Expliquez comment une methode de synthese d’un correcteur de type retour de sortie sta-tique (SOF) permet aussi de realiser un correcteur de type retour dynamique de sortie(DOF).

Page 23: Commande Robuste - unistra.fr

3.3. REPRESENTATION LINEAIRE FRACTIONAIRE 23

3.3 Representation lineaire fractionaire

Une representation lineaire fractionnaire (LFR en anglais) est l’interconnexion d’un systemeLTI avec une matrice ∆ (un systeme statique) dependant des parametres, comme represente surla figure 3.3. Tout type de systeme LPV dont les matrices d’etat dependent rationnellement desparametres peut etre mis sous forme de LFR ; cependant il n’est pas toujours aise de trouverune representation LFR d’ordre minimale, c’est a dire avec une matrice ∆ de taille minimale.La LFR Toolbox, developpee a l’Onera, permet de creer et de manipuler les LFR [17]. Voustrouverez des exemples de modelisation LFR d’un systeme physiques dans [1] 1 pour un systememecanique elementaire et dans [18] 2 pour un systeme electromecanique d’enroulement de bande.Des travaux sur la machine asynchrone sont egalement disponibles [19, 20].

Q(s)

∆(θ)

--

-

u

v

y

z

Figure 3.3 – Modele LFR

Notons v et u les entrees provenant respectivement de ∆ et de la commande et z et y lessorties destinees respectivement a ∆ et a la mesure. Le systeme Q(s) s’ecrivant :

x = Ax+B1v +B2u (3.16)

z = C1x+D11v +D12u (3.17)

y = C2x+D21v +D22u (3.18)

En rebouclant avec la matrice ∆(θ), c’est-a-dire en ecrivant que

v = ∆(θ) z (3.19)

on peut ecrire les equation du systeme boucle d’entree u et de sortie y :

x = A(θ)x+ B(θ)u (3.20)

y = C(θ)x+ D(θ)u (3.21)

avec :

A(θ) = A+B1∆(θ)(I−D11∆(θ))−1C1 (3.22)

B(θ) = B2 +B1∆(θ)(I−D11∆(θ))−1D12 (3.23)

C(θ) = C2 +D21∆(θ)(I−D11∆(θ))−1C1 (3.24)

D(θ) = D22 +D21∆(θ)(I−D11∆(θ))−1D12 (3.25)

On peut faire differentes remarques sur cette representation :

1. cette representation n’existe que si la matrice I − D11∆(θ) n’est pas singuliere (on parlede LFR “bien posee” (well-posed en anglais) ;

2. dans le cas general, il s’agit d’un modele LPV ou les matrices d’etat dependent de maniererationnelle des parametres ;

1. Ouvrage disponible a la bibliotheque du pole API de l’ULP.2. Article disponible a partir du reseau internet de l’ULP sur le site du LSIIT (http ://lsiit.u-

strasbg.fr/Publications) ou par le SCD (http ://www-scd-ulp.u-strasbg.fr).

Page 24: Commande Robuste - unistra.fr

24 CHAPITRE 3. MODELISATION DES SYSTEMES

3. dans le cas ou D11 est nulle, alors la dependance des matrices est affine.

Exemple 4 (Modelisation LFR d’un systeme electrique inductif)Soit un systeme electrique compose d’une resistance R en serie avec une inductance L. La latension u(t) est consideree comme l’entree ; le courant y(t) est considere comme la sortie. Laloi de maille donne u(t) = Ry(t) + Ly(t). On en deduit l’equation d’etat x = 1

L(−Rx(t) + u(t))et l’equation de sortie y = x. On cherche a ecrire le systeme sous la forme d’une LFT entreun systeme LTI ne dependant pas des parametres et d’une matrice ∆ dependant des parametres.Afin de faire disparaıtre le parametre R dans l’equation dynamique, notons z1 = x et v1 = Rz1.L’equation d’etat s’ecrit :

x =1

L(−v1 + u) (3.26)

z1 = x (3.27)

y = x (3.28)

Notons ensuite z2 = −v1(t) + u(t) et v2 = 1Lz2. Le systeme s’ecrit alors :

x = v2 (3.29)

z1 = x (3.30)

z2 = −v1 + u (3.31)

y = x (3.32)

Ainsi, on a G(s) = lftu(H(s),∆) ou les equations d’etat de H(s) sont donnees ci-dessus et ou∆ = diag(R, 1

L). En realite, il est pratique de s’appuyer sur un schema-bloc du modele pourdeterminer le modele LFR.

Propriete 13 (Interconnexion des LFR)L’interconnexion de plusieurs LFR est une LFR.

Exemple 5 (Exemple de definition de modele LFR sous Matlab)Dans le script ci-dessous, le systeme H(s) = 1/(Ls+R) est defini comme un systeme dependantdes parametres incertains R et L avant de determiner la representation LFR equivalente. Onobserve que, selon la methode suivie, le resultat n’a pas la meme taille. En effet, dans le premiercas, le parametre L est repete deux fois alors que dans le second cas, il est repete une seulefois. On retiendra que, lors de la modelisation, il est utile de chercher une representation LFRminimale.

echo on

% definition des parametres

R = ureal(’R’,1);

L = ureal(’L’,1);

% definition du systeme avec tf

H = tf(1,[L R])

USS: 1 State, 1 Output, 1 Input, Continuous System

L: real, nominal = 1, variability = [-1 1], 2 occurrences

R: real, nominal = 1, variability = [-1 1], 1 occurrence

[M,Delta] = lftdata(H)

a =

x1

x1 -1

b =

u1 u2 u3 u4

x1 0.9269 0.7297 -0.7789 1.153

Page 25: Commande Robuste - unistra.fr

3.3. REPRESENTATION LINEAIRE FRACTIONAIRE 25

c =

x1

y1 0.9494

y2 0.1646

y3 1.284

y4 0.867

d =

u1 u2 u3 u4

y1 -1 2.22e-16 1.214 0

y2 -1.11e-16 -1 -0.4742 0

y3 0 0 0 0

y4 -0.6326 -1.619 0 0

Input groups:

Name Channels

L_NC 1,2

R_NC 3

Output groups:

Name Channels

L_NC 1,2

R_NC 3

Continuous-time model.

UMAT: 3 Rows, 3 Columns

L: real, nominal = 1, variability = [-1 1], 2 occurrences

R: real, nominal = 1, variability = [-1 1], 1 occurrence

% autre methode

S = tf(1);

H2 = 1/(L*S+R);

[M2,Delta2] = lftdata(H2)

d =

u1 u2 u3

y1 -0.5 -0.5 0.5

y2 -0.5 -0.5 0.5

y3 -0.5 -0.5 0.5

Input groups:

Name Channels

L_NC 1

R_NC 2

Output groups:

Name Channels

L_NC 1

R_NC 2

Static gain.

UMAT: 2 Rows, 2 Columns

L: real, nominal = 1, variability = [-1 1], 1 occurrence

R: real, nominal = 1, variability = [-1 1], 1 occurrence

echo on

% definition des parametres

R = ureal(’R’,1); % parametre incertain

L = ureal(’L’,1);

Page 26: Commande Robuste - unistra.fr

26 CHAPITRE 3. MODELISATION DES SYSTEMES

% definition du systeme avec tf

H = tf(1,[L R]) % H(s) = 1/(L*s+R)

USS: 1 State, 1 Output, 1 Input, Continuous System

L: real, nominal = 1, variability = [-1 1], 2 occurrences

R: real, nominal = 1, variability = [-1 1], 1 occurrence

[M,Delta] = lftdata(H)

a =

x1

x1 -1

b =

u1 u2 u3 u4

x1 0.9269 0.7297 -0.7789 1.153

c =

x1

y1 0.9494

y2 0.1646

y3 1.284

y4 0.867

d =

u1 u2 u3 u4

y1 -1 2.22e-16 1.214 0

y2 -1.11e-16 -1 -0.4742 0

y3 0 0 0 0

y4 -0.6326 -1.619 0 0

Input groups:

Name Channels

L_NC 1,2

R_NC 3

Output groups:

Name Channels

L_NC 1,2

R_NC 3

Continuous-time model.

UMAT: 3 Rows, 3 Columns

L: real, nominal = 1, variability = [-1 1], 2 occurrences

R: real, nominal = 1, variability = [-1 1], 1 occurrence

% autre methode

S = tf(1); % variable de Laplace

H2 = 1/(L*S+R)

USS: 0 States, 1 Output, 1 Input, Continuous System

L: real, nominal = 1, variability = [-1 1], 1 occurrence

R: real, nominal = 1, variability = [-1 1], 1 occurrence

[M2,Delta2] = lftdata(H2)

d =

u1 u2 u3

y1 -0.5 -0.5 0.5

y2 -0.5 -0.5 0.5

y3 -0.5 -0.5 0.5

Input groups:

Page 27: Commande Robuste - unistra.fr

3.3. REPRESENTATION LINEAIRE FRACTIONAIRE 27

Name Channels

L_NC 1

R_NC 2

Output groups:

Name Channels

L_NC 1

R_NC 2

Static gain.

UMAT: 2 Rows, 2 Columns

L: real, nominal = 1, variability = [-1 1], 1 occurrence

R: real, nominal = 1, variability = [-1 1], 1 occurrence

Exercice 6 (Modelisation LFR d’un systeme electrique inductif)Soit H(s) defini par :

x = v2 (3.33)

z1 = x (3.34)

z2 = −v1 + u (3.35)

y = x (3.36)

et ∆ = diag(R, 1L).

1. Donnez un schema-bloc du modele LFR.

2. Determinez la fonction de transfert du systeme lftu(H(s),∆).

Exercice 7 (Modelisation LFR d’un systeme masse ressort)Un systeme masse-ressort G(s) a comme equation dynamique my(t) + fy(t) + ky(t) = u(t). Laraideur est supposee variable entre kmin et kmax. On note k = k0 +wkδk ou k0 = 1

2(kmin + kmax)et wk = 1

2(kmax − kmin). Les autres parametres sont supposes connus.

1. Montrez que le systeme peut s’ecrire sous la forme G(s) = lftu(H(s), k) ou H(s) ne dependpas de k. Determinez H(s).

2. Montrez que k peut se mettre sous la forme k = lftu(Hk, δk) ou Hk ne depend que de k0 etde wk. Determinez Hk.

3. Deduisez-en le modele incertain normalise G(s) = lftu(H(s), δk) ou H(s) ne depend quede m, f , k0 et wk.

4. On suppose desormais que tous les parametres sont inconnus. Determinez le systeme sousla forme G(s) = lftu(F (s),∆) ou la matrice ∆ depend des parametres m, k et f alors queF (s) n’en depend pas. Donnez F (s) et ∆.

Exercice 8 (Interconnexion de deux LFR)Soit un systeme LFR d’entree u1 et de sortie y1 defini par ∆1 et le systeme :

x1 = A1x1 +B11v1 +B12u1 (3.37)

z1 = C11x1 +D111v1 +D112u1 (3.38)

y1 = C12x1 +D121v1 +D122u1 (3.39)

et la LFR d’entree u2 et de sortie y2 definie par ∆2 et le systeme :

x2 = A2x2 +B21v2 +B22u2 (3.40)

z2 = C21x2 +D211v2 +D212u2 (3.41)

y2 = C22x2 +D221v2 +D222u2 (3.42)

Page 28: Commande Robuste - unistra.fr

28 CHAPITRE 3. MODELISATION DES SYSTEMES

1. Les systemes sont connectes en serie avec u2 = y1. Determinez les 9 matrices d’etatdu systeme d’entree u1, de sortie y2, d’etat x = [xT1 ; xT2 ]T et de matrice incertaine∆ = diag∆1,∆2.

2. Les systemes sont interconnectes en retroaction avec u1 = u + y2 et u2 = y1. Determinezles 9 matrices d’etat du systeme d’entree u, de sortie y = y1, d’etat x = [xT1 ; xT2 ]T et dematrice incertaine ∆ = diag∆1,∆2.

Exercice 9 (Modele LFR d’un bras manipulateur)On considere un bras manipulateur plan a 2 DDL dont les positions articulaires sont notees q1et q2. Le modele dynamique s’ecrit :

M(q2) q + C(q, q) q = u (3.43)

ou u est le vecteur des couples articulaires. La matrice d’inertie s’ecrit :

M(q2) = M0 +Mc cos(q2) (3.44)

ou

M0 =

[m110 m120

m120 m22

]; Mc =

[m11c m12c

m12c 0

]. (3.45)

La matrice de Coriolis s’ecrit :

C(q, q) = m11c sin(q2)

[−q2 −1

2 q212 q1 0

]. (3.46)

1. Montrez que l’inverse de la matrice d’inertie peut s’ecrire sous la forme M−1(q2) =lftu(N, θ1I2) ou N est une matrice constante et θ1 = cos(q2).

2. Mettez la matrice de Coriolis sous une forme affine en fonction des parametres θ2 =q1 sin(q2) et θ3 = q2 sin(q2). Pourquoi cette ecriture n’est elle pas unique ?

3. Deduisez-en un modele LFR du systeme en fonction de θ1 = cos(q2), θ2 et θ3.

4. On considere le domaine de variation |q1| ≤ q1max, |q1| ≤ q1max ; q2 ∈ [0, q2max], (π/2 <q2max < π) ainsi que |q2| ≤ q2max et |q2| ≤ q2max. Determinez les intervalles de variationde θk et de θk pour k = 1, ..., 3.

Page 29: Commande Robuste - unistra.fr

Chapitre 4

Analyse des systemes

4.1 Stabilite au sens de Lyapunov

4.1.1 Definition

Soit un systeme dynamique a temps continu, sans entree exogene, de vecteur d’etat x etd’equation d’etat x = f(x). Soit x0 un point d’equilibre, verifiant donc la condition d’equilibref(x0) = 0. Pour que le systeme soit stable autour de cet equilibre, il faut aussi que que ce pointd’equilibre soit attractif, c’est-a-dire que les trajectoires de x convergent vers x0.

Definition 7 (Fonction d’energie ou fonction de Lyapunov)Une fonction de Lyapunov V est une fonction de l’etat possedant un minimum global a l’equilibrex0 :

V (x) > V (x0) pour x 6= x0

Definition 8 (Stabilite au sens de Lyapunov)x0 est un point stable au sens de Lyapunov s’il existe une fonction de Lyapunov V (x) verifiantla condition suivante :

d

dt(V (x)) < 0 pour x 6= x0

A partir d’une condition initiale xi differente de x0, l’energie interne du systeme va decroıtrejusqu’a atteindre son minimum qui correspond a l’unique point x0 ; l’etat du systeme tendradonc necessairement vers x0.

Pour demontrer la stabilite par cette methode, la difficulte reside dans le choix d’une “bonne”fonction d’energie. Une classe de fonctions souvent utilisees sont les fonction quadratiques V (x) =(x− x0)TQ(x− x0) avec Q = QT > 0 ; on parle alors de stabilite quadratique.

Pour la fonction d’energie choisie, il reste a demontrer que ddt(V (x)) = dV (x)

dx f(x) < 0 pourtout x.

Exemple 6 (Fonction d’energie d’un systeme physique)Soit un systeme mecanique de masse m, connecte au sol par l’intermediaire d’un ressort deraideur k et d’un amortisseur f . On note z la position de la masse et z sa vitesse. On considereque l’equilibre est obtenu pour z = 0.

L’equation fondamentale de la dynamique donne l’equation dynamique du systeme :

mz = −kz − fz (4.1)

L’etat est compose de la position et de la vitesse :

x =

[zz

](4.2)

L’energie du systeme est composee de l’energie cinetique Ec = 12mz

2 et de l’energie potentielleemmagasinee dans le ressort Ep = 1

2kz2. On definit donc V (x) = 1

2mz2 + 1

2kz2.

29

Page 30: Commande Robuste - unistra.fr

30 CHAPITRE 4. ANALYSE DES SYSTEMES

La variation de l’energie s’ecrit :

V (t) =∂V (x)

∂zz +

∂V (x)

∂zz (4.3)

= kzz +mzz (4.4)

= z(kz + (−kz − fz)) (4.5)

= −fz2 (4.6)

Ainsi, l’energie est decroissante des que la vitesse est non nulle. A terme, la decroissance del’energie entraine la convergence de x vers zero. Toutefois, cette decroissance ne depend pas dez et ne satisfait donc pas exactement la condition d

dt(V (x)) < 0 pour x 6= x0.

4.1.2 Systeme lineaire

Dans ce cas, f(x) = Ax. Le point d’equilibre candidat est necessairement x = 0. En choisis-sant V (x) = xTQx avec Q = QT > 0, la condition de stabilite s’ecrit alors xT (ATQ+QA)x < 0pour x 6= 0, ce qui s’ecrit aussi ATQ + QA < 0 et qui signifie que toutes les valeurs propres(reelles) de la matrice symetrique ATQ + QA sont strictement negatives. Dans le cas present,la stabilite quadratique au sens de Lyapunov est equivalente a la stabilite classiqueau sens des systemes lineaires (valeurs propres a parties reelles negatives). On enonce ainsile theoreme suivant.

Theoreme 4 (Stabilite d’un systeme lineaire a temps continu)Le systeme x = Ax est stable si et seulement si il existe une matrice definie positive Q verifiantle systeme LMI suivant :

Q > 0 (4.7)

ATQ + QA < 0 (4.8)

Remarque : dans ce cas, cette stabilite (quadratique de Lyapunov) est equivalente a la sta-bilite au sens de Hurwitz 1 dont le critere est que la matrice A ait ses valeurs propres a partiereelle positive.

4.1.3 Cas des systemes a temps-discret

Considerons un systeme d’equation d’etat x(k + 1) = Ax(k) et une fonction de Lyapunovquadratique V (x) = xTQx avec Q = QT > 0. Le systeme est stable si et seulement si l’energiedecroit sur toutes les trajectoires, c’est-a-dire s’il existe une matrice Q telle que !

Theoreme 5 (Stabilite d’un systeme lineaire a temps discret)Le systeme x(k + 1) = Ax(k) est stable si et seulement si il existe une matrice definie positiveQ verifiant le systeme LMI suivant :

Q > 0 (4.9)

ATQA−Q < 0 (4.10)

En effet, la decroissance de l’energie s’ecrit V (x(k + 1)) < V (x(k)) ce qui s’ecrit encorexT(k)ATQAx(k) < xT(k)Qx(k).

4.1.4 Commandes Matlab

Les fonctions suivantes font partie de la Robust Control Toolbox et permettent de tester lastabilite quadratique. Elles sont valables pour des systemes LPV et donc aussi pour des systemesLTI.

1. Une matrice est dite de Hurwitz si ses valeur propres sont a parties reelles strictement negatives.

Page 31: Commande Robuste - unistra.fr

4.2. DISSIPATIVITE 31

– quadstab analyse la stabilite quadratique des systemes dynamiques a temps continu et atemps discret. Les systemes descripteurs (du type Ex = Ax) qui ne sont pas abordes dansle cadre du cours, sont egalement supportes.

– decay calcul le taux de decroissance maximal de la fonction de Lyapunov

4.2 Dissipativite

4.2.1 Definition

Systeme non-lineaire

On s’interesse maintenant a un systeme non-lineaire de vecteur d’entree u, de vecteur desortie y, de vecteur d’etat x. Son equation d’etat est x = f(x, u) et son equation de sortie esty = g(x, u). Soit S(u, y) une fonction scalaire que nous appellerons flux d’energie entrant.

Definition 9 (Dissipativite)Un systeme dynamique est dit S-dissipatif s’il existe une fonction d’energie V (x) telle que

dV (x)

dt< S(u, y) (4.11)

pour tout x 6= x0 ou x0 est le point d’equilibre considere verifiant f(x0, 0) = 0

On peut s’interesser a des fonctions S de type particulier comme :

S(u, y) =

[yu

]T [Q11 Q12

Q12T Q22

] [yu

](4.12)

On parle alors de Q11, Q22, Q12-dissipativite.

Systeme lineaire

Soit le systeme d’equation d’etat x = Ax+Bu et d’equation de sortie y = Cx+Du.

Theoreme 6 (Caracterisation LMI de la dissipativite)Le systeme ci-dessus est Q11, Q22, Q12-dissipatif s’il existe une matrice Q = QT verifiant lesysteme de LMI suivant :

Q > 0 (4.13)[ATQ + QA− CTQ11C QB − CTQ11D − CTQ12

BTQ−DTQ11C −QT12C −DTQ11D −DTQ12 −QT

12D −Q22

]< 0 (4.14)

Demonstration 4On peut remplacer le vecteur [yT, uT]T dans la fonction S(u, y) par[

yu

]=

[C D0 I

] [xu

](4.15)

On obtient alors une nouvelle expression S(x, u) du flux d’energie :

S(x, u) =

[xu

]T [CT 0DT I

] [Q11 Q12

Q12T Q22

] [C D0 I

] [xu

](4.16)

soit

S(x, u) =

[xu

]T [CTQ11C CTQ11D + CTQ12

DTQ11C +QT12C DTQ11D +DTQ12 +QT

12D +Q22

] [xu

](4.17)

Page 32: Commande Robuste - unistra.fr

32 CHAPITRE 4. ANALYSE DES SYSTEMES

Par ailleurs, la derivee de la fonction d’energie s’ecrit :

dV (x)

dt= xTQx+ xTQx (4.18)

= (Ax+Bu)TQx+ xTQ(Ax+Bu) (4.19)

=

[xu

]T [ATQ+QA QB

BTQ 0

] [xu

](4.20)

La dissipativite (4.11) s’ecrit alors comme une LMI en Q = QT > 0 :[ATQ+QA− CTQ11C QB − CTQ11D − CTQ12

BTQ−DTQ11C −QT12C −DTQ11D −DTQ12 −QT

12D −Q22

]< 0 (4.21)

4.2.2 Caracterisation LMI de la norme H∞

Lemme 2 (Yakubovitch-Kalman)Soit Σ un systeme lineaire. Les propositions suivantes sont equivalentes :

(i) Σ est Q11, Q22, Q12-dissipatif.

(ii) ∀ω ∈ R+\det(jωI −A) 6= 0,[G(jω)I

]T [Q11 Q12

QT12 Q22

] [G(jω)I

]≥ 0 (4.22)

Ce resultat s’obtient facilement en considerant un signal harmonique u(t) = Uexp(jωt).

On peut maintenant montrer que la norme H∞ est un cas particulier de dissipativite.

Theoreme 7 (Equivalence entre norme H∞ et dissipativite)Soit un systeme lineaire Σ et la fonction de flux d’energie S(u, y) = γ2uTu−yT y. Les propositionssuivantes sont equivalentes :

(i) Σ est S-dissipatif

(ii) ||Σ||∞ ≤ γ

Grace au lemme de Yakubovitch-Kalman, la proposition (ii) est equivalente a −(GT (jω)G(jω)+γ2I ≥ 0 ce qui est equivalent a dire que les valeurs propres de G(jω)TG(jω) sont inferieuresa γ2. Or les valeurs propres (reelles et positives) de G(jω)T (G(jω) sont les carres des valeurssingulieres de G(jω). CQFD car la norme H∞ de Σ est la borne superieure de la valeur singulieremaximale.

La majoration de la norme H∞ par γ est donc equivalente a la −I, γ2I, 0-dissipativite. Ceresultat est aussi connu sous le nom de lemme borne reel (bounded real lemma en anglais) :

Lemme 3 (Lemme borne reel 1)Un systeme dynamique continu lineaire de matrices d’etat A, B, C et D a une norme H∞inferieure a γ si et seulement si il existe une matrice Q = QT verifiant :

Q > 0 (4.23)[ATQ + QA+ CTC QB + CTD

BTQ +DTC DTD − γ2I

]< 0 (4.24)

On peut appliquer le lemme borne reel pour le calcul de la norme H∞ d’un systeme lineaireen resolvant un probleme de valeurs propres generalisees suivant : trouver les matrices Q = QT

et R = RT minimisant λ = γ2 et verifiant :

Q > 0 (4.25)

Page 33: Commande Robuste - unistra.fr

4.3. PERFORMANCES D’UN SYSTEME ASSERVI 33

[ATQ + QA+ CTC QB + CTD

BTQ +DTC DTD

]<

[0 00 R

](4.26)

R < λI (4.27)

Remarquez l’introduction d’une nouvelle matrice R necessaire pour avoir une matrice de rangplein dans l’inegalite (4.27) ou intervient le scalaire a minimiser.

Grace au complement de Schur, on peut reecrire le lemme borne reel sous une forme ouchacun des termes s’ecrit d’une maniere affine en fonction des matrices du systeme.

Lemme 4 (Lemme borne reel 2)Un systeme dynamique continu lineaire de matrices d’etat A, B, C et D a une norme H∞inferieure a γ si et seulement si il existe une matrice Q = QT verifiant :

Q > 0 (4.28) ATQ + QA QB CT

BTQ −γI DT

C D −γI

< 0 (4.29)

4.2.3 Passivite

On dit qu’un systeme est passif si la condition suivante est verifiee :∫ T

0uT(t)y(t)dt ≤ 0 (4.30)

Cette conditions est correspond a la dissipativite avec les matrices Q11 = Q22 = O et Q12 = I,ce qui donne le theoreme suivant connu sous le nom de Positice real lemma.

Theoreme 8 (Positive real lemma)Un systeme lineaire dynamique est passif s’il existe une matrice Q = QT > 0 telle que :[

ATQ + QA QB − CTBTQ− C −DT −D

]< 0 (4.31)

La passivite est une condition suffisante de stabilite. Une propriete fondamentale est quel’interconnexion de systemes passifs est un systeme passif. Ainsi, on peut chercher a imposer lastabilite d’un systeme interconnecte en assurant la passivite de chacun de ses elements. Cettepropriete est notamment utilisee dans les systemes de telemanipulation. L’inconvenient de cetteapproche est son conservatisme.

4.3 Performances d’un systeme asservi

4.3.1 Schema de commande

On considere le schema d’asservissement presente sur la figure 4.1. Le systeme G(s) estasservi au moyen d’un correcteur K(s). Les signaux sont :

– la reference r(t)– l’erreur de regulation e(t)– le signal de commande u(t)– la perturbation d(t) en entree du systeme– le signal a asservir y(t)– la bruit de mesure bm(t)– le signal de mesure ym(t)

On considere que les signaux sont ajoutes positivement, sauf pour la contre-reaction de la mesure.L’objectif general de la commande est d’obtenir y(t) = r(t) en depit des perturbations d(t)

et bm(t). Mais evidemment, on ne peut obtenir cette egalite parfaitement. De maniere generale,on note Tzv(s) le transfert en boucle fermee entre l’entree v(t) et la sortie z(t). La sensibilite ensortie (cote mesure) est definie par Sy(s) = Ter(s). La sensibilite en entree (cote commande) estdefinie par Su(s) = Tvd(s).

Page 34: Commande Robuste - unistra.fr

34 CHAPITRE 4. ANALYSE DES SYSTEMES

K(s) G(s)- - - ? - - ?

6

i i ir +

−e u

dv y

bm

ym

Figure 4.1 – Systeme asservi avec reference, perturbation en entree et bruit de mesure

4.3.2 Les criteres

Marge de module

La stabilite est evaluable a partir du lieu des poles (tous les poles de la boucle fermee doiventetre a partie reelle strictement positive), ce qui s’evalue en multivariable de la meme manierequ’en monovariable. Cependant, on sait que la stabilite ne suffit pas et que des marges de stabilitesont necessaires. La marge de module est definie en monovariable comme la distance minimaleau point −1 du transfert complexe en boucle ouverte, ce qui s’ecrit avec les notations utilisees :

∆M = minω|1 +K(jω)G(jω)|. (4.32)

En notant que :

minω|1 +K(jω)G(jω)| =

(maxω|(1 +K(jω)G(jω))−1|

)−1, (4.33)

on definit en multivariable la marge de module en sortie :

∆M =1

||Sy(s)||∞, (4.34)

et la marge de module en entree :

∆M =1

||Su(s)||∞. (4.35)

-1 0

∆M

Im

Re

G(jω)K(jω)

Figure 4.2 – Illustration de la marge de module en monovariable sur le lieu de Nyquist

Bande passante

Afin d’avoir un bon comportement en suivi de consigne, il faut que le transfert entre lareference et la mesure ait un comportement de type passe-bas avec une frequence de coupurede l’axe -3 dB suffisamment elevee. De maniere equivalente, on peut considerer qu’il faut que letransfert Ter(s) = Sy(s) entre la reference et l’erreur soit de type coupe-bas (ou passe-haut) avecla meme pulsation de coupure. On pourra alors tracer la representation frequentielle de Sy(s) etrelever la bande passante a -3 dB ainsi que l’attenuation maximale (en continu).

Page 35: Commande Robuste - unistra.fr

4.3. PERFORMANCES D’UN SYSTEME ASSERVI 35

ωBP

ω (log)0 dB

-3 dB

20 log(σ(Sy(jω)))

20 log(σ(Sy(0)))

20 log(||Sy(s)||∞)

Figure 4.3 – Allure typique de la sensibilite en sortie Sy(s) permettant de determiner la margede module, la bande passante et la precision (systeme avec deux entrees et deux sorties).

Precision

L’erreur statique en reponse a un echelon unitaire sur la reference est donnee par Sy(0).

Rejet de perturbation

Afin d’avoir un bon comportement en rejet de perturbation, il faut que le transfert entre laperturbation et l’erreur soit le plus faible possible notamment en basse frequence. Ce transfertest generalement de type passe-bande. On pourra alors tracer la representation frequentielle deTed(s) = −Sy(s)G(s) et relever l’attenuation maximale (en continu) ainsi que l’amplificationmaximale en precisant la frequence.

Effet du bruit de mesure

Le bruit de mesure bm peut se repercuter par un bruit sur la commande qui risque de fatiguerles actionneurs, entrainera une surconsommation et un vieillissement accelere. Afin de limitercet effet, il importe que le transfert en boucle fermee entre une perturbation en sortie du systeme(cote mesure) et la commande ait un gain limite, notamment en haute frequence. On pourra sedonner un gabarit d’attenuation du transfert Tud(s) du type σ(Tud(jω)) ≤ |H(jω)| ou H(s) estle gabarit (transfert SISO).

Robustesse

Les systemes dynamiques physiques sont generalement de type passe-bande et on dont ungain qui diminue en haute frequence. Il en resulte donc qu’au dela d’une certaine bande defrequences, ces dynamiques sont necessairement mal connues. Ainsi, une des sources classiquede manque de robustesse des systemes asservis correspond a des amplifications de modes hautesfrequence mal connus, entraınant ainsi des instabilites. Afin de palier ce probleme, il convient des’assurer que le gain du correcteur decroit au dela de la bande passante. Une maniere detourneede s’en assurer consiste a considerer la reponse frequentielle du transfert Su(s)K(s) ou K(s)Sy(s)du transfert entre r et u.

4.3.3 Schemas d’analyse et de synthese H∞

Position du probleme

Reprenons le schema de commande de la figure 4.1 ou G(s) comporte nu commandes et nymesure. En notant Sy(s) = (Iny +G(s)K(s))−1 et Su(s) = (Inu +K(s)G(s))−1, on peut calculer

Page 36: Commande Robuste - unistra.fr

36 CHAPITRE 4. ANALYSE DES SYSTEMES

les differents transferts en boucle fermee :euvyym

=

Sy(s) −Sy(s)G(s) −Sy(s)

Su(s)K(s) −Su(s)K(s)G(s) −Su(s)K(s)Su(s)K(s) Su(s) −Su(s)K(s)

Sy(s)G(s)K(s) Sy(s)G(s) −Sy(s)G(s)K(s)Sy(s)G(s)K(s) Sy(s)G(s) −Sy(s)

rdbm

(4.36)

Exercice 10 (Calcul des fonctions de transfert en boucle fermee)

1. Montrez que K(s)Sy(s) = Su(s)K(s) et que G(s)Su(s) = Sy(s)G(s).

2. Retrouvez les fonctions de transfert entre les differentes entree et sorties du systeme de lafigure 4.1.

Le probleme de synthese revient a chercher un compensateur K(s) tel qu’un certain nombredes transferts d’interet de (4.38) aient une allure satisfaisante. Cependant, on imagine bien qu’iln’est pas possible de realiser des allures arbitraires pour chacun de ces transferts. Tout d’abord,on observe q’un certain nombre de transferts sont identiques. Par exemple, l’effet du bruit demesure sur les differentes sorties est identique a celui de la reference au signe pres, sauf pourla mesure ym. Inversement, l’effet des differentes entrees sur les sorties y et ym sont identiques,sauf pour bm.

Etude asymptotique

0 dB

σ(G(jω)K(jω)) 1

σ(G(jω)K(jω)) 1

20 log(σk(G(jω)K(jω)))

ωcω (log)

Figure 4.4 – Allure typique des valeurs singulieres de la boucle ouverte.

Pour un systeme asservi simple, le gain en boucle ouverte (ou ses valeurs singulieres si ontravaille en multivariable) est generalement decroissant en fonction de la pulsation et la pulsationde coupure ωc de l’axes 0 dB definit la bande passante (voir figure 4.4). Considerons maintenantdeux approximations : basse et haute frequence.

– Pour ω ωc, on peut considerer que σ(K(s)G(s)) 1 et σ(G(s)K(s)) 1. Il en resulteque Sy(s) ' K−1(s)G−1(s) et Su(s) ' G−1(s)K−1(s), du moins dans l’hypothese detransferts carres inversibles. Ainsi, les differents transferts se reecrivent :

euvyym

=

K−1(s)G−1(s) −K−1(s) −K−1(s)G−1(s)

G−1(s) −Inu −G−1(s)G−1(s) G−1(s)K−1(s) −G−1(s)Iny K−1(s) −Iny

Iny K−1(s) −K−1(s)G−1(s)

rdbm

(4.37)

On observe que certains transferts ne dependent plus du correcteur. C’est le cas du transfertTyr entre la reference et la mesure (ou grandeur a asservir), egal a l’identite (le systeme

Page 37: Commande Robuste - unistra.fr

4.3. PERFORMANCES D’UN SYSTEME ASSERVI 37

est bien asservi). C’est egalement le cas du transfert entre le bruit et la commande avecTubm(s) = −G−1(s), ce qui signifie que l’effet du bruit de mesure sur la commande ne peutetre attenue dans la bande passante. A l’inverse, le transfert Tyd(s) entre la perturbationet la grandeur a asservir depend entierement du correcteur ; un bon rejet de perturbationnecessite donc un gain du correcteur eleve independamment du gain du systeme (c’estainsi que la presence d’un integrateur pur dans le systeme G(s) n’est d’aucune aide pourle rejet de perturbation mais qu’il faudra prevoir un effet integrateur dans le correcteur).

– Pour ω ωc, on peut considerer que σ(K(s)G(s)) 1 et σ(G(s)K(s)) 1. Il en resulteque Sy(s) ' Iny et Su(s) ' Inu . Ainsi, les differents transferts se reecrivent :

euvyym

=

Iny −G(s) −Iny

K(s) −K(s)G(s) −K(s)K(s) Inu −K(s)

G(s)K(s) G(s) −G(s)K(s)G(s)K(s) G(s) −Iny

rdbm

(4.38)

A nouveau, certains transferts ne dependent plus du correcteur, mais pas les memes quedans le cas precedent. A l’inverse, le transfert Tubm(s) entre le bruit de mesure et lesignal de commande est egal, au signe pres, au correcteur. Ainsi, il sera necessaire deprevoir l’attenuation du gain du correcteur en dehors de la bande passante afin de limiterl’amplification du bruit.

Exercice 11 (Trace de la reponse frequentielle d’un systeme asservi)On considere le systeme asservi de la figure 4.1 avec G(s) = K

1+τs et un correcteur K(s). Onconsiderera trois correcteurs possibles pour ce correcteur :

1. un proportionnel K1(s) = Kp,

2. un PI K2(s) = Kp1+τisτis

,

3. un PI + un filtre passe-bas K3(s) = K2(s)1

1+τf s.

On prendra comme valeurs numeriques K = 1, τ = 1, Kp = 5, τi = 4 et τf = 0.05. On considereles differents signaux suivants :

1. Tracez de maniere approximative les transferts suivants : Ter(s), Tur(s), Tyr(s), Tur(s) etTubm(s).

2. Commentez les differents transferts et les differences entre les trois correcteurs.

Schema general de synthese

Un schema general d’analyse ou de synthese H∞ est donne sur la figure 4.5. Le systemeetendu Ga(s) est construit autour du systeme G(s). On distingue deux canaux :

– Le canal de performance entre v et z qui integre l’ensemble des transferts d’interet pourlesquels on cherche a imposer un gabarit du type σ(Tzk vl) ≤ |Hkl(jω)| afin de garantircertaines performances.

– Le canal de commande qui relie le systeme etendu au correcteur.

Le correcteur K(s) sera synthetise de maniere a minimiser la norme H∞ du transfert en bouclefermee de v vers y.

De nombreux schemas de synthese sont possibles suivant les objectifs recherches et les dif-ficultes rencontrees en pratique. L’idee est de choisir le schema le plus simple qui permet deresoudre le cahier des charges. Il convient donc de commencer par le schema le plus simple etd’analyser en detail les resultats obtenus. Si un critere de performances n’est pas atteint, onchoisit de passer a un schema plus complexe en ajoutant des signaux de performance dans Ga(s)afin d’introduire dans la synthese le canal de performance supplementaire pour lequel la syntheseprecedente s’est montree insuffisante.

Page 38: Commande Robuste - unistra.fr

38 CHAPITRE 4. ANALYSE DES SYSTEMES

K(s)

Ge(s)-

--

u

v v

e ou y

zzWe(s) Ws(s) -

Figure 4.5 – Schema general pour la synthese H∞

Schema 1 bloc

Le transfert crucial est la sensibilite Ter(s) = Sy(s) qui permet de gerer a la fois la bandepassante, la marge de stabilite et la precision. Ainsi, le schema de synthese le plus simple estun schema dans lequel on ne s’interesse qu’a ce transfert. Ce schema, donne sur la figure 4.6fait apparaitre une seule ponderation en sortie (Ws(s) = W1(s)) et pas de ponderation d’entree(We(s) = Iny).

K(s) G(s)u(t)

+- y(t)

r(t)e(t)

W1(s)z(t)

Figure 4.6 – Schema de synthese a 1 bloc

Considerons la ponderation suivante :

W11(s) =s+ a

k(s+ b)(4.39)

avec a < b et K ≥ 1. Ce transfert a un gain statique de akb , un gain minimal de 1

K et presenteun gain a 3 dB a la pulsation

ωc =

√a2 − 2k2b2

2k2 − 1(4.40)

Definissons le filtre multivariable diagonal :

W1(s) = W11(s)Iny . (4.41)

On a :

W−11 (s) =1

W11(s)Iny . (4.42)

Appliquons a l’entree de ce filtre l’erreur de regulation e ; notons z1 sa sortie. Si on est capablede verifier que la norme du transfert entre r et z1 est inferieure a 1, alors |W−111 (jω)| est unmajorant de σ(Sy(jω)) pour tout ω. On en deduit que :

– la marge de gain du systeme est superieure a 1k ;

– l’erreur statique relative est inferieure a Kba ;

– la bande passante est superieure a ωc.Il suffit d’inverser ces trois relations pour definir la ponderation permettant correspondant a uncahier des charges donne :

– K est determine a partir de la marge de gain ;– le rapport b

a est ensuite deduit a partir de l’erreur statique acceptable ;

Page 39: Commande Robuste - unistra.fr

4.3. PERFORMANCES D’UN SYSTEME ASSERVI 39

– le coefficient a est alors determine par l’expression de la bande passante :

a = ωc

√2k2 − 1

1− 2k2(ba

)2 (4.43)

– on determine ensuite b grace a la valeur de ba .

Si on souhaite une erreur statique nulle, il convient de prendre b = 0. On peut aussi cherchera imposer une erreur de suivi de rampe nulle en choisissant une ponderation de la forme :

W11(s) =(s+ a)2

k(s+ b)2(4.44)

ou b est choisi tres faible voire nul 2. Il convient toutefois de refaire les calculs ci-dessus.

Exercice 12 (Schema de synthese a un bloc)Pour le schema de synthese a un bloc represente sur la figure 4.6,

1. identifiez les signaux du schema general de synthese de la figure 4.5,

2. determinez le systeme etendu Ge(s) en fonction de G(s).

Schema 2 blocs

En utilisant un schema de synthese a un bloc, il se peut que l’on obtienne un correcteur dontle gain ne chute pas en haute frequence, ce qui est defavorable en terme d’amplification du bruitde mesure et en terme de robustesse. Afin de forcer le gain du correcteur a decroitre au delade la bande passante du systeme asservi, on peut etre amene a ajouter une ponderation sur lacommande u comme dans le schema de synthese a deux blocs de la figure 4.7. Cette ponderationest un filtre derivateur tronque qui amplifie les hautes frequences. Avec W2(s) = W21Inu , onpeut prendre :

W21(s) =s

K2(cs+ 1)(4.45)

avec cωc 1 (par exemple cωc = 0, 01). Une valeur de K2 faible correspond a un effet de roll-offimportant, c’est-a-dire une decroissante rapide du gain du correcteur en haute frequence.

K(s) G(s)+

-

r(t)e(t)

W1(s)z1(t)

u(t)

y(t)

z2(t)W2(s)

Figure 4.7 – Schema de synthese a 2 blocs

Exercice 13 (Schema de synthese a deux blocs)Pour le schema de synthese a deux blocs represente sur la figure 4.7,

1. identifiez les signaux du schema general de synthese de la figure 4.5,

2. determinez le systeme etendu Ge(s) en fonction de G(s).

Page 40: Commande Robuste - unistra.fr

40 CHAPITRE 4. ANALYSE DES SYSTEMES

K(s) G(s)+

-

W1(s)z1(t)

v1 = r(t)+

d(t)

W3(s)

W2(s)

u(t) y(t)

z2(t)

e(t)

v2(t)

Figure 4.8 – Schema de synthese a 4 blocs

Schema 4 blocs

Si le rejet de perturbation n’est pas suffisant, il convient d’integrer l’entree d qui s’ajouteau signal de commande et qui modelise les perturbation apparaissant sur l’entree du systeme.On aboutit au schema de synthese a quatre blocs (figure 4.8) dans lequel une ponderationW3(s) = W31(s)I constante permettra de regler le rejet de perturbation grace au transfertTde(s) avec :

σ(Ted(jω)) <1

|W11(jω)W31(jω)|. (4.46)

Cette approche peut egalement servir a mieux rejeter une perturbation sinusoıdale a la pulsationω0. La ponderation W31(s) est alors choisie egale a un filtre passe bande resonnant de nature aamplifier le signal a la pulsation ω0 :

W31(s) =ω0s

s2 + 2ξω0s+ ω20

(4.47)

ou ξ est choisit d’autant plus faible que l’attenuation doit etre forte.

4.4 Lieu des poles

On sait que la condition ∃Q = QT > 0\ATQ+QA > 0 permet de garantir que la matrice Aest Hurwitz ; c’est-a-dire que toutes ses valeurs propres sont dans le demi-plan complexe gauche.D’autres conditions LMI permettent de garantir la localisation des poles dans des regions plusreduites. A partir des formulations polynomiales de Gutman et Jury [21], des contraintes LMIont ete derivees par Chilali, Scherer et al. [22, 15]. Une formulation generale, valable en temps-continu et en temps-discret est disponible dans Peaucelle et Arzelier [23].

4.4.1 Regions LMI

Les regions du plan complexe permettant d’aboutir a une formulation LMI s’ecrivent sousla forme :

R11 +R12z +RH21z∗ +R22zz

∗ < 0 (4.48)

ou R11 = RH11, R12 et R22 = RH

22 sont des matrices complexes et ou z est un pole du systeme.

Exemple 7 (Exemples de contraintes LMI)

– Pour obtenir |z| ≤ ρ1, il suffit d’imposer −ρ21 + zz∗ < 0.– Pour obtenir |z| ≥ ρ2, il suffit d’imposer ρ22 − zz∗ < 0.

2. Il est parfois preferable de choisir b faible non nul afin de ne pas rendre le systeme instable par l’adjonctiond’un pole nul ; c’est notamment le cas pour l’analyse de la robustesse.

Page 41: Commande Robuste - unistra.fr

4.4. LIEU DES POLES 41

– Pour obtenir Re(z) ≤ −α, il suffit d’imposer 2α+ z + z∗ < 0.– Pour garantir que les poles sont places dans un cone symetrique par rapport a l’axe des

reels, dirige vers les reels negatifs et d’ouverture θ, il faut imposer les conditions :hRe(z) + Im(z) < 0hRe(z)− Im(z) < 0

(4.49)

ou h = tan(θ). Ces relations se reecrivent sous la forme :(h− j)z + (h+ j)z∗ < 0(h+ j)z + (h− j)z∗ < 0

(4.50)

ce qui s’ecrit sous la forme (4.48) avec R11 = R22 = O2×2 et R12 =

[h− j 0

0 h+ j

].

Definition 10 (Produit de Kronecker)Pour une matrice A = [ai,j ] de dimention n× p et une matrice B, on note :

A⊗B =

a11B . . . a1nB...

...an1B . . . annB

(4.51)

4.4.2 Condition LMI

Theoreme 9 (Condition LMI de placement de pole)Les poles d’un systeme d’equation d’etat A sont dans le domaine caracterise par l’equation (4.48)s’il existe une matrice symetrique P telle que la condition suivante est verifiee :

R11 ⊗ P +R12 ⊗ (PA) +RH12 ⊗ (AHP ) +R22 ⊗ (AHPA) < 0 (4.52)

En pratique, les differentes contraintes sont agglomerees afin d’aboutir a une formulationunique sous la forme (4.48).

Exercice 14 (Contraintes LMI de placement des poles)

1. Donnez les matrices de la formulation (4.48) permettant d’assurer le cahier des chargessuivant :– module inferieur a ωmax

– partie reelle inferieure a −α ou α ∈ R+

– amortissement superieur a r =√

2.

2. Justifiez l’interet de ces trois contraintes, notamment en terme de cahier des charge tem-porel.

Page 42: Commande Robuste - unistra.fr

42 CHAPITRE 4. ANALYSE DES SYSTEMES

Page 43: Commande Robuste - unistra.fr

Chapitre 5

Synthese pour les systemes LTI

5.1 Retour d’etat stabilisant

Systeme a temps continu

On cherche une commande de la forme u = Kx pour un systeme x = Ax+Bu. Le systeme enboucle fermee s’ecrit x = (A+BK)x. Il est stable s’il existe une matrice Q = QT > 0 verifiantl’inegalite matricielle :

(A+BK)TQ + Q(A+BK) < 0 (5.1)

La resolution du probleme suppose de trouver simultanement les matrices K et Q. On voit quecette inegalite n’est pas lineaire a cause du terme QBK ; elle ne peut donc etre resolue par lesoutils numeriques classiques.

Toutefois, en multipliant a droite et a gauche l’inegalite par R = Q−1, on obtient uneinegalite equivalente sous la forme :

R(A+BK)T + (A+BK)R < 0 (5.2)

En effectuant le changement de variable S = KR, on se ramene a resoudre l’inegalite matriciellelineaire suivante :

RAT + STB +AR +BS < 0 (5.3)

Une fois determines R et S, on determine K = SR−1.

Formulation Riccati de la stabilisation. On peut egalement utiliser le lemme de Finslerafin de transformer l’equation non-lineaire.

Commencons par developper l’equation (5.1) :

ATQ + QA+ KTBTQ + QBK < 0 (5.4)

En identifiant cette equation avec la quatrieme formulation du lemme de Finsler (page 16), latroisieme formulation equivalente donnee dans le lemme s’ecrit :

ATQ + QA+ λQBBTQ < 0 (5.5)

Il s’agit d’une inegalite de Riccati ou la matrice inconnue K a disparu. En introduisant unematrice P = PT > 0, cette inegalite se transforme en egalite :

ATQ + QA+ λQBBTQ + P = 0 (5.6)

Il s’agit d’une equation algebrique de Riccati. Des algorithmes sont disponibles pour les resoudre(sous Matlab, voir are pour Algebraic Riccati Equation).

43

Page 44: Commande Robuste - unistra.fr

44 CHAPITRE 5. SYNTHESE POUR LES SYSTEMES LTI

5.2 Commande H∞

On presente ici les techniques de synthese de retour dynamique de sortie. Des resultats sontegalement disponibles concernant la synthese de retour d’etat statique 1

5.2.1 Probleme et solutions

Position du probleme

Pour le systeme P (s) de representation d’etat :xzy

=

A B1 B2

C1 D11 D12

C2 D21 D22

xvu

(5.7)

on cherche un correcteur dynamique K(s) de representation d’etat :[xKu

]=

[AK BKCK DK

] [xKy

](5.8)

tel que

||lftl(P (s),K(s))||∞ ≤ γ. (5.9)

Les methodes de synthese presentees ci-dessous, disponibles sous Matlab, s’appuient surl’hypothese suivante :

H1. (A,B2) est stabilisable 2 ; (C2, A) est detectable 3

Ces deux hypotheses sont des hypotheses classiques pour la synthese de correcteur.

Resolution par equation de Riccati

La premiere methode de synthese, due a Glover et Doyle, s’appuie sur la resolution d’uneequation de Riccati [24, 25]. L’expose rapide de la methode donne ci-dessous est tire de l’ouvragede Duc et Font [1].

Pour P = PT et Q = QT de meme dimension d’une matrice A. On note :

X = Ric

(A −P−Q −AT

)(5.10)

la solution symetrique de l’equation de Riccati :

XA+ATX −XPX +Q = 0 (5.11)

telle que toutes les valeurs propres de A− PX ont une partie reelle strictement negative.

Outre l’hypothese H1, les hypotheses suivantes doivent etre satisfaites :

H2. rang(D12) = nu et rang(D21) = ny ou nu est la taille de u et ny est la taille de ny.

H3. ∀ω ∈ R, rang

(A− jωIn B2

C1 D12

)= n+ nu ou n est la taille de x.

H4. ∀ω ∈ R, rang

(A− jωIn B1

C2 D21

)= n+ ny.

H5. D11 = 0, DT12

[C1 D12

]=[O Inu

], D22 = 0,

[B1

D21

]DT

21 =[O Iny

].

1. Voir aussi le cours de Denis Arzelier sur http://www.laas.fr/~arzelier/polycop/dea/commande_etat2.

pdf.2. La stabilisabilite est une condition moins forte que la commandabilite. La paire (A,B2) est stabilisable s’il

existe un retour d’etat qui stabilise le systeme x = Ax+B2u.3. La detectabilite est une condition moins forte que l’observabilite. La paire (C2, A) est detectable s’il existe

un observateur ˙x = Ax+ L(Cx− y) telle que l’erreur d’observation x− x converge vers zero.

Page 45: Commande Robuste - unistra.fr

5.2. COMMANDE H∞ 45

Vous trouverez dans la litterature, et notamment dans [1] quelques explications sur ces hy-potheses.

Theoreme 10 (Synthese H∞ par equation de Riccati)Sous les hypotheses precedentes, les correcteurs LTI K(s) stabilisant le systeme et assurant (5.9)sont donnes par la LFT suivante :

K(s) = lftl(Ka(s),Φ(s)) (5.12)

ou Φ(s) est une matrice de transfert de dimension nu×ny arbitraire verifiant ||Φ(s)|| < γ et ouKa(s) est decrit par la representation d’etat suivante :xau

ua

=

Aa ZaYaCT2 ZaB2

−BT2 Xa O Inu

−C2 Iny O

xvu

(5.13)

ou Aa = A+ γ−2B1BT1 Xa−B2B

T2 − ZaY aC2C

T2 et Za = (In − γ−2Y aXa)−1

En particulier, le correcteur central est obtenu avec Φ(s) = 0.

Resolution par LMI

La caracterisation LMI de la boucle fermee est donnee par le lemme borne reel (4.29). Pourle systeme en boucle fermee lftl(P (s),K(s)), ce resultats se reecrit : AT

bfQ+QAbf QBbf CTbf

BTbfQ −γI DT

bf

Cbf Dbf −γI

< 0 (5.14)

ou les matrices du systeme en boucle fermee sont donnees par :

[Abf Bbf

Cbf Dbf

]=

A+B2DKC2 B2CK B1 +B2DKD21

BKC1 AK BKD21

C1 +D12DKC2 D12CK D11 +D12DKD21

(5.15)

dans le cas ou D22 = O.Il s’agit d’un probleme non-lineaire a cause du produit entre la matrice de Lyapunov Q et

les matrices du correcteur a determiner. La methode suivante permet de resoudre le probleme[16]. Elle consiste a resoudre d’abord un probleme LMI ou les matrices du correcteur ont etesupprimees.

Theoreme 11 (Synthese LMI de correcteur H∞)Le probleme H∞ a une solution s’il existe des matrices symetriques R et S qui verifient les troisconditions LMI suivantes :[

NR 00 Inv

]T AR+RAT RCT1 B1

C2R −γInz D21

BT1 DT

21 −γInv

[NR 00 Inv

]< 0 (5.16)

[NS 00 Inz

]T ATS + SA SB1 C1

BT1 S −γInv DT

21

CT2 D21 −γInz

[NS 00 Inz

]< 0 (5.17)

[R InIn S

]≥ 0 (5.18)

ou NR et NS sont des bases des noyaux respectivement de[BT

2 DT12

]et[C2 D21

].

La determination du correcteur se fait suivant les etapes suivantes :

Page 46: Commande Robuste - unistra.fr

46 CHAPITRE 5. SYNTHESE POUR LES SYSTEMES LTI

1. On determine d’abord les matrices R et S a partir des LMI du theoreme 11.

2. Soit r le rang de la matrice In − RS. Une decomposition en valeurs singuliere permet dedeterminer les matrices M et N ∈ Rn×r telles que :

MNT = In −RS (5.19)

3. On determine ensuite la matrice de Lyapunov :

Q =

[S NNT −M †RN

](5.20)

ou M † est la pseudo-inverse de M .

4. Il ne reste plus qu’a resoudre (5.14) avec Q connu ; ce qui est une LMI en AK , BK , CK etDK .

5.2.2 Methodologies de synthese

Synthese par la methode des sensibilites mixtes

On s’appuiera sur les explications donnees sur l’analyse des systemes presente au paragraphe4.3.3. Il s’agit de traduire un cahier des charge sous forme de gabarits sur un certain nombrede transferts en boucle fermee ; d’en deduire les ponderations a appliquer puis de synthetiser lecorrecteur minimisant la norme H∞ du systeme augmente en boucle fermee. Si la valeur obtenue,notee γ, depasse l’unite, le cahier des charges n’est pas satisfait ; il est alors necessaire de relachercertaines contraintes et de refaire la synthese. Si γ est largement inferieur a l’unite, cela signifieque les performances pourraient etre augmentees par rapport a ce qui a ete specifie lors de lasynthese. On peut alors en profiter pour ameliorer la robustesse en augmentant l’effet de roll-off.

Synthese par loop-shaping

La methode dite du loop-shaping a ete proposee par Mc Farlane et Glover [26]. Elle sedecompose en deux etapes :

– Un premier correcteur est determine qui permet de donner au gain en boucle ouverte uneforme adequate. Ce correcteur initial, d’ordre n, n’a pas besoin de stabiliser le systeme.Il est generalement donne sous la forme d’une pre-ponderations W1(s) et d’une postponderation W2(s). Le systeme resultats est G(s) = W2(s)G(s)W1(s) (voir figure 5.1).On peut donner un gain eleve en basse frequence afin de bien rejeter les perturbations. Enhaute frequence, il est preferable d’attenuer le gain afin de reduire la sensibilite par rapportaux dynamiques mal modelisees (effet de roll-off). Dans la zone de frequence proche dela pulsation de coupure, il est preferable de ne pas augmenter trop la pente du gain, demaniere a ne pas rendre plus difficile le probleme de synthese. Une pente de −30 dB/decpermet d’assurer une marge de phase proche de 45 .

Figure 5.1 – Loop-shaping : schema de synthese

– Considerons des signaux de perturbation d1 en entree et d2 en sortie de G(s), (voir fi-gure 5.1). Un correcteur K(s) est synthetise de maniere a minimiser la norme H∞ dutransfert de [d1 d2]

T vers [u y]T :

η = min

∣∣∣∣∣∣∣∣ S(s) S(s)G(s)

K(s)Sa(s) K(s)S(s)G(s)

∣∣∣∣∣∣∣∣∞

(5.21)

Page 47: Commande Robuste - unistra.fr

5.2. COMMANDE H∞ 47

Figure 5.2 – Loop-shaping : schema de commande

ou S(s) = (I + G(s)K(s))−1 est la fonction de sensibilite en entree. Ce correcteur etantetabli a partir de l’ensemble systeme + correcteur initial, il est d’ordre n+ n. Cette etagepermet de conferer de bonnes marges de stabilite, ce qui est le cas si η est suffisammentfaible. On considere generalement des valeurs entre 3 et 5 comme satisfaisantes. Des valeursplus elevees correspondraient a des marges de stabilite reduites ; des valeurs plus eleveessont le signe qu’il est possible d’ameliorer les performances ou la robustesse du systeme.

Le correcteur final est K(s) = W1(s)K(s)W2(s). Son ordre est donc n + 2n. Le schema decommande est donne sur la figure 5.2.

Figure 5.3 – Fonctions de transfert du systeme et de la ponderation

Figure 5.4 – Fonctions de transfert du systeme pondere avec et sans correcteur H∞

Un exemple de mise en œuvre sur un systeme electromecanique avec resonnance est developpedans [19]. Sur la figure 5.3, on observe la reponse frequentielle de la fonction de transfert G(s)initial ainsi que la ponderation W2(s). On a choisi W1(s) = 1. La bande passante est prevue pourdes frequences inferieures et proches de la resonance. Sur la figure 5.4, on observe le systeme

Page 48: Commande Robuste - unistra.fr

48 CHAPITRE 5. SYNTHESE POUR LES SYSTEMES LTI

pondere G(s) puis le systeme corrige K(s)G(s). On observe que le correcteur H∞ n’a modifie lecomportement qu’aux frequences proches de la pulsation de coupure.

Page 49: Commande Robuste - unistra.fr

Chapitre 6

Analyse des systemes LPV incertains

6.1 Stabilite au sens de Lyapunov

6.1.1 Systeme non-lineaire

Soit un systeme libre de vecteur d’etat x et d’equation d’etat x = f(x). Soit x0 un pointstable candidat. Il doit alors verifier la condition d’equilibre f(x0) = 0. De plus, il faut aussi queque ce point soit attractif, c’est-a-dire que les trajectoires de x convergent vers x0.

Definition 11 (Stabilite au sens de Lyapunov)x0 est un point stable au sens de Lyapunov s’il existe une fonction scalaire V (x) verifiant lesconditions suivantes :

– V (x) > V (x0) pour x 6= x0– d

dt(V (x)) < 0 pour x 6= x0Une telle fonction V (x) est dite fonction d’energie du systeme ou fonction de Lyapunov.

A partir d’une condition initiale xi differente de x0, l’energie interne du systeme va decroıtrejusqu’a atteindre son minimum qui correspond a l’unique point x0 ; l’etat du systeme tendradonc necessairement vers x0.

Pour demontrer la stabilite par cette methode, la difficulte reside dans le choix d’une “bonne”fonction d’energie. Une classe de fonctions souvent utilisees sont les fonction quadratiques V (x) =(x− x0)TQ(x− x0) avec Q = QT > 0 ; on parle alors de stabilite quadratique.

Pour la fonction d’energie choisie, il reste a demontrer que ddt(V (x)) = dV (x)

dx f(x) < 0 pourtout x.

6.1.2 Systeme lineaire

Dans ce cas, f(x) = Ax. Le point d’equilibre candidat est x = 0. En choisissant V (x) = xTQxavec Q = QT > 0, la condition de stabilite s’ecrit alors xT (ATQ + QA)x < 0 pour x 6= 0, cequi s’ecrit aussi ATQ + QA < 0 et qui signifie que toutes les valeurs propres (reelles) de lamatrice symetrique ATQ + QA sont strictement negatives. La stabilite quadratique peut ainsise caracteriser par un systeme de LMI dont l’inconnue est la matrice symetrique Q :

Q > 0 (6.1)

ATQ + QA < 0 (6.2)

Remarque : dans ce cas, cette stabilite (quadratique de Lyapunov) est equivalente a la sta-bilite au sens classique dont le critere est que la matrice A ait ses valeurs propres a partie reellepositive.

49

Page 50: Commande Robuste - unistra.fr

50 CHAPITRE 6. ANALYSE DES SYSTEMES LPV INCERTAINS

6.1.3 Systeme LPV

Pour un systeme LPV autonome x = A(θ)x, la condition de decroissance s’ecrit (A(θ))TQ+QA(θ) < 0 pour tout θ dans l’ensemble admissible. En absence d’hypothese supplementaires surla dependance en θ de A, nous trouvons alors devant une infinite de conditions LMI a verifier 1

(pour chaque valeur des parametres). Une issue consiste a se ramener a un nombre fini de LMI endiscretisant l’ensemble des parametres. L’inconvenient de cette methode reside dans le nombreeleve de LMI a resoudre, meme pour un petit nombre de parametres ; elle est irrealiste dans lecas de systemes dependant d’un nombre eleve de parametres.

Dans le cas d’un systeme LPV affine ou polytopique, on verifie qu’il suffit que la conditionsoit verifiee au sommets de l’espace pour qu’elle le soit sur l’ensemble du domaine. En effet, siA = ΣαkA

sk, V = Σαkx

T ((Ask)TQ+QAsk)x

T . Il suffit de verifier ((Ask)TQ+QAsk) < 0 pour tout

k. L’etude de la stabilite quadratique d’un systeme LPV affine ou polytopique s’etudie par lesysteme de 2p + 1 LMI suivantes ou p est le nombre de parametres :

Q > 0 (6.3)

(Ask)TQ + QAsk < 0 (6.4)

Remarquez que la stabilite quadratique d’un systeme LPV n’est, dans le cas general, qu’unecondition suffisante de stabilite. En effet, la stabilite pourrait etre etablie avec des fonction deLyapunov non quadratiques.

6.1.4 Maximisation du taux de decroissance

Plutot que de se contenter d’assurer que V decroıt, il est interessant de chercher a maximisercette decroissance. Dans le cas d’une fonction quadratique V (x) = xTQx, on peut chercher aassurer V (x) < τxTx ou le taux de croissance τ est un scalaire ; il est negatif si le systeme eststable. Pour un systeme lineaire, il s’agit donc de trouver Q = QT et τ minimal verifiant :

Q > 0 (6.5)

ATQ + QA < τI (6.6)

Il s’agit d’un probleme de valeurs propres generalisees. Ce resultat est generalisable aux systemesLPV affine et polytopique ; on assure alors un taux de decroissance minimal sur le domaine.

6.1.5 Matrice de Lyapunov dependant des parametres

Dans le cas d’un systeme LPV, on peut introduire une matrice de Lyapunov Q(θ) dependantdes parametres. La derivee de l’energie s’ecrit alors :

dV

dt= xTQx+ xTQx+ xT Qx (6.7)

= xT (ATQ+QA+ Q)x, (6.8)

ou Q = Q(θ(t))dt = Σ ∂Q

∂θkθk. La stabilite est donc assuree si :

Q(θ) < 0 ∀ θ ∈ Θ (6.9)

ATQ+QA+ Q < 0 ∀ θ ∈ Θ et θ ∈ Γ (6.10)

ou Θ est l’ensemble de variation des parametres et Γ celui des variations de θ ; comme on l’a

fait pour Θ, on suppose que chaque composante de θ est bornee, c’est-a-dire que θk ≤ θk ≤ θk.Dans le cas general, cette inegalite peut etre verifiee en echantillonnant Θ et Γ.

Restreignons nous desormais a des matrices de Lyapunov dependant de maniere affine desparametres : Q(θ) = Q0 + θ1Q1 + θ2Q2 · · · . Il suffit alors de verifier la positivite de Q aux

1. On parle en fait de LMI semi-infinie dans le cas ou les parametres sont bornes ; le terme de LMI infi-nieLMI !infinie s’appliquant au cas ou les parametres ne sont pas bornes

Page 51: Commande Robuste - unistra.fr

6.2. DISSIPATIVITE, NORME H∞ 51

sommets de Θ, c’est-a-dire sur Θs. On observe alors que Q = θ1Q1 + θ2Q2 · · · = Q(θ) − Q0.L’inegalite a verifier s’ecrit alors :

Q(θ) < 0 ∀θ ∈ Θs (6.11)

(A(θ))TQ(θ) +Q(θ)A(θ) +Q(θ)−Q0 < 0 ∀ (θ, θ) ∈ Θ× Γs. (6.12)

Dans le cas d’un systeme LPV affine (A(θ) = A0 + θ1A1 · · · ), il s’agit d’une inegalite matriciellepolynomiale d’ordre 2 qu’on ne peut resoudre avec les techniques classiques. Par contre, il estpossible d’obtenir une condition suffisante sous forme de LMI. Pour cela, nous allons nousappuyer sur le resultat suivant :

Lemme 5 (Condition suffisante de negativite)Soit f une fonction de E vers R ou E est un parallelepipede rectangle (E = [x1;x1]×[x2;x2] · · · ).Notons Es l’ensemble des sommets de E (Es = (x1, x2, ...), (x1, x2, . . .) . . .). La proposition (ii)implique la proposition (i)

i. f(x) < 0 ∀x ∈ E

ii. f(x) < 0 ∀x ∈ Es∂2f∂xk≥ 0 ∀x ∈ E (6.13)

Pour que la fonction f soit negative, il suffit qu’elle soit negative aux sommets et qu’elle soitmulticonvexe. Remarquons que la multiconvexite, c’est-a-dire la convexite dans chacune desdirections des axes de l’espace est une condition moins forte que la convexite (la convexiteimplique la multiconvexite). Pour comprendre ce resultat, prenons l’exemple d’une fonction deR2. L’ensemble de depart E est donc un rectangle. Supposons que les conditions (ii) soientverifiees. Il est alors evident que f(x) < 0 sur chacun des cotes du rectangle, par convexite.Ensuite, pour un point a l’interieur du rectangle, on peut dire qu’il appartient a un segmentparallele a l’un des bords du rectangle ; par convexite, f est negative en tous les points de cesegment.

Il s’agit alors d’appliquer ce lemme a l’inegalite matricielle (6.12) avec E = Θ × Γ et Es =Θs×Γs. La condition de multiconvexite se ramenant a ATkQk +QkAk ≥ 0 ∀k ≥ 1, on obtient lesysteme de LMI suivant :

Q(θ) < 0 ∀θ ∈ Θs (6.14)

(A(θ))TQ(θ) +Q(θ)A(θ) +Q(θ)−Q0 < 0∀θ ∈ Θs et θ ∈ Γs (6.15)

ATkQk +QkAk ≥ 0 ∀k ≥ 1 (6.16)

Remarque : la stabilite quadratique simple (avec matrice de Lyapunov constante) est un casparticulier de la stabilite quadratique avec matrice de Lyapunov dependant des parametres. Ilsuffit en effet de choisir Qk = 0 ∀ k ≥ 1.

6.2 Dissipativite, norme H∞

6.2.1 Systeme LPV

Comme pour la passivite, on peut garantir des proprietes d’un systeme LPV en passant parun echantillonnage de l’ensemble Θ de variation des parametres. Cependant, dans le cas d’unsysteme LPV affine, il existe un resultat sous forme d’un systeme comportant un nombre fini deLMI. En effet, l’equation (6.18) qui comporte des produits des matrices d’etat (ce qui entraınele caractere non lineaire de l’inegalite, meme pour un systeme LPV affine) peut se transformervia le complement de Schur :

Page 52: Commande Robuste - unistra.fr

52 CHAPITRE 6. ANALYSE DES SYSTEMES LPV INCERTAINS

Lemme 6 (Lemme borne reel 2)Un systeme dynamique continu lineaire de matrices d’etat A, B, C et D a une norme H∞inferieure a γ si et seulement si il existe une matrice Q = QT verifiant :

Q > 0 (6.17) ATQ + QA QB CT

BTQ −γI DT

C D −γI

< 0 (6.18)

Demonstration 5En appliquant le complement de Schur a la relation ci-dessus avec la decomposition :

Q =

[ATQ + QA QB

BTQ −γI

](6.19)

R = −γI (6.20)

S =

[CT

DT

](6.21)

et en multipliant par γ on obtient la premiere forme du lemme borne reel ou la matrice deLyapunov est γQ. Les deux formes sont bien equivalentes puisque γ > 0.

La seconde forme du Lemme borne reel a l’avantage de ne pas faire apparaıtre de produitdes matrices d’etat. Ainsi, pour un systeme LPV affine, la LMI depend de maniere affine desparametres. Pour que la LMI soit verifiee sur l’ensemble du domaine, il suffit qu’elle le soit auxsommets de l’espace des parametres. On peut alors enoncer le theoreme suivant :

Theoreme 12 (Dissipativite d’un systeme LPV affine)Un systeme LPV affine est stable pour toute trajectoire de θ dans Θ et sa norme H∞ estinferieure a γ pour tout θ fige dans Θ si le lemme borne reel 2 est verifie pour tout θ ∈ Θs.

Ce resultat est immediat du fait du caractere affine de l’inegalite matricielle et du fait ducaractere affine de la dependance des matrices d’etat en fonction des parametres.

6.2.2 Dissipativite avec matrice de Lyapunov dependant des parametres

Comme nous l’avons fait pour la passivite, nous pouvons introduire une matrice de LyapunovQ(θ) dependant des parametres (en abrege PDLF pour parameter-dependent Lyapunov function)pour traiter le probleme de la dissipativite. Remarquons tout de suite que seule la fonctiond’energie xTQx est affectee ; la fonction S(u, y) de flux d’energie n’est en rien concernee par cechangement. Comme pour la passivite, le terme ATQ + QA est desormais affecte d’un termesupplementaire Q. Pour un systeme LPV, sous pouvons alors enoncer le resultat suivant :

Theoreme 13 (LMI semi-infinie de dissipativite avec PDLF)Le systeme LPV est S-dissipatif (S(u, y) = −yT y + γuTu) s’il existe des matrices symetriquesQ0, Q1... avec Q(θ) = Q0 + θ1Q1 · · · telles que :

Q(θ) > 0 ∀θ ∈ Θs (6.22) M(θ, θ) Q(θ)B(θ) C(θ)T

(B(θ))TQ(θ) −γI (D(θ))T

C(θ) D(θ) −γI

< 0 ∀ (θ, θ) ∈ Θ× Γ (6.23)

ou M(θ, θ) = (A(θ))TQ(θ) +Q(θ)A(θ) + Q(θ).

Cette caracterisation est une LMI semi-infinie. Comme nous l’avions fait pour la passivitedependant des parametres, on peut obtenir une caracterisation plus conservative sous forme d’unnombre fini de LMI, ce qui est fait dans le theoreme ci-dessous.

Page 53: Commande Robuste - unistra.fr

6.3. APPLICATION A UN SYSTEME MECANIQUE 53

r

actionneur transmission souple

charge

régulateur

y

u

Figure 6.1 – Schema du systeme mecanique etudie

Theoreme 14 (Condition LMI de dissipativite avec PDLF)Le systeme LPV est S-dissipatif (S(u, y) = −yT y + γuTu) s’il existe des matrices symetriquesQ0, Q1... avec Q(θ) = Q0 + θ1Q1 · · · telles que :

Q(θ) > 0 ∀θ ∈ Θs (6.24) M(θ, θ) Q(θ)B(θ) C(θ)T

(B(θ))TQ(θ) −γI (D(θ))T

C(θ) D(θ) −γI

< 0 ∀ (θ, θ) ∈ Θs × Γs (6.25)

[ATkQk +QkAk QkBk

BTk Qk 0

]≥ 0 ∀ k ≥ 1 (6.26)

ou M(θ, θ) = (A(θ))TQ(θ) +Q(θ)A(θ) +Q(θ)−Q0.

6.3 Application a un systeme mecanique

On traite dans cette partie la modelisation d’un systeme dynamique sous forme LPV affineet sous forme LFR. Des resultats d’analyse par differentes methodes sont presentes.

6.3.1 Presentation du systeme

Le systeme est presente sur la figure 6.1. Il est compose de deux sous-systemes d’inertiesrespectives J1 et J2 et de coefficients de dissipation (frottements fluides) f1 et f2 reliees parun accouplement de raideur K et de coefficient de dissipation f . Le premier sous-systeme estactionne et on commande le couple u. On note qk les positions et Ωk les vitesses. On cherchea asservir la vitesse Ω2 du second sous-systeme. On considere que la raideur K et l’inertie J2sont entachees d’incertitudes. Les valeurs nominales des parametres sont J1 = J2 = 10 mkg.m2,f1 = f2 = 20 mNms/rad, f = 40 mNms/rad, K = 10 N/rad. On considere des variations de50 % sur K et sur 1

J2.

Le couple transmis par la liaison flexible entre les deux sous-systemes est CK = K(q1− q2)+f(Ω1 − Ω2). Les equations de la dynamique appliquees aux deux sous-systemes s’ecrivent :

J1dΩ1

dt= u− CK − f1Ω1 (6.27)

J2dΩ2

dt= CK − f2Ω2 (6.28)

Il s’agit d’un modele lineaire d’ordre 4. Il peut s’ecrire sous forme d’etat avec x = [q1 Ω1 q2 Ω2]T

et les matrices d’etat suivantes :

A =

0 1 0 0

−KJ1−f+f1

J1KJ1

fJ1

0 0 0 1KJ2

fJ2

−KJ2−f+f2

J2

, B =

01J100

(6.29)

C =[

0 0 0 1], D = 0 (6.30)

Page 54: Commande Robuste - unistra.fr

54 CHAPITRE 6. ANALYSE DES SYSTEMES LPV INCERTAINS

Figure 6.2 – Lieu de Bode du systeme mecanique

Ce modele a l’inconvenient d’etre non observable. En effet, seule la difference q1 − q2 despositions a de l’influence sur la mesure Ω2 ; la somme etant sans effet 2. Ainsi, il est preferablede simplifier les equations en notant q = q1 − q2 et qui verifie l’equation :

˙q = Ω1 − Ω2 (6.31)

En reprenant les equations de la dynamique avec CK = Kq + f(Ω1 − Ω2), on peut ecrire lemodele d’etat avec x = [Ω1 Ω2 q]

T et les matrices d’etat :

A =

−f+f1J1

fJ1

−KJ1

fJ2

−f+f2J2

KJ2

1 −1 0

, B =

1J100

(6.32)

C =[

1 0 0], D = 0 (6.33)

Le lieu de Bode 3 du systeme mecanique est presente sur la figure 6.2. La resonance se situeentre 40 et 50 rad/s. Afin d’asservir la vitesse de la charge, on a choisi un correcteur de fonctionde transfert :

K(s) =2(s+ 2)

(s+ 10)(s+ 0, 01)(6.34)

Il s’agit d’un correcteur de type PI 4 avec une troncature du terme integral pour les pulsationsinferieures a 10 mrad/s et un filtrage passe bas du premier ordre pour les frequences superieuresa 10 rad/s. La reponse du systeme nominal asservi a un echelon unitaire est donnee sur lafigure 6.3. On note un depassement de l’ordre de 15 % et un temps de reponse a 5 % de 500 ms.

6.3.2 Analyse a partir du modele LPV

Modelisation

le modele developpe ci-dessus fait apparaıtre des produits entre les variables incertaines K et1J2

et ne peut s’ecrire directement comme un modele LPV affine. Cela sera rendu possible par un

2. Ajouter un offset identique sur les conditions initiales de q1 et q2 est sans effet sur la trajectoire de Ω2.3. Hendrik Wade Bode a vecu de 1905 a 1982. Americain d’origine hollandaise, il est considere comme un

pionnier de la regulation et des telecommunications. Voir http://fr.wikipedia.org/wiki/Hendrik_Wade_Bode.4. Ce correcteur simple a ete developpe pour illustrer les procedures d’analyse de robustesse. De meilleurs

resultats peuvent-etre obtenus avec un correcteur d’ordre plus eleve comme ceux obtenus par les methodes H∞.Vous trouverez un exemple dans [19], article disponible depuis le reseau de l’ULP sur le cite du SCD (http ://www-scd-ulp.u-strasbg.fr, rubrique Revues electroniques) ou a partir du cite du LSIIT (http ://lsiit.u-strasbg.fr).

Page 55: Commande Robuste - unistra.fr

6.3. APPLICATION A UN SYSTEME MECANIQUE 55

Figure 6.3 – Reponse a un echelon du systeme nominal asservi

changement de variable d’etat x = [J1Ω1 J2Ω2 θ]T . Remarquons que ce changement de variable

est justifie par la physique car, en presence d’inerties variables, les equations de la dynamiques’ecrivent rigoureusement sous la forme :

d

dt(J1Ω1) = u− CK − f1Ω1 (6.35)

d

dt(J2Ω2) = CK − f2Ω2 (6.36)

Le modele d’etat s’ecrit alors avec les matrices suivantes :

A =

−f+f1J1

fJ2

−K− fJ1

−f+f2J2

KfJ1

− fJ2

0

, B =

100

(6.37)

C =[

0 fJ2

0], D = 0 (6.38)

Les matrices d’etat s’expriment de maniere affine en fonction des parametres incertains K et 1J2

.En notant par commodite :

M =

[A BC D

](6.39)

le modele s’ecrit M = M0 +KM1 + 1J2M2 avec :

M0 =

−f+f1

J10 0 1

− fJ1

0 0 0fJ1

0 0 0

0 0 0 0

(6.40)

M1 =

0 0 −1 00 0 1 00 0 0 00 0 0 0

(6.41)

M2 =

0 f 0 00 −(f + f2) 0 00 −f 0 00 f 0 0

(6.42)

Le script de definition du modele sous Matlab est donne ci-dessous 5 :

5. Les codes Matlab de cette partie requierent la boite a outil LMI toolbox ou la version 3 ou posterieure dela Robust Control Toolbox.

Page 56: Commande Robuste - unistra.fr

56 CHAPITRE 6. ANALYSE DES SYSTEMES LPV INCERTAINS

Aa0 = [ 1/J1*[-(f+f1); f; 1] zeros(3,2) ];

Aa1 = [zeros(3,2) [-1; 1; 0]];

Aa2 = [zeros(3,1) [f; -(f+f2); -1] zeros(3,1)];

Ba0 = [1; 0; 0]; Ba1 = zeros(3,1); Ba2 = Ba1;

Ca0 = zeros(1,3); Ca1 = Ca0; Ca2 = [0 1 0];

Da0 = 0; Da1 = 0; Da2 = 0;

S0 = ltisys(Aa0,Ba0,Ca0,Da0);

S1 = ltisys(Aa1,Ba1,Ca1,Da1,zeros(3));

S2 = ltisys(Aa2,Ba2,Ca2,Da2,zeros(3));

K0 = 10; w1 = 5; % ponderation sur K

J20 = 1e-2; w2 = 50; % ponderation sur 1/J2

range = [K0-w1 K0+w1; 1/J20-w2 1/J20+w2];

pv = pvec(’box’,range)

sysGaff = psys(pv,[S0,S1,S2]);

psinfo(sysGaff)

Robustesse en stabilite

Le correcteur est defini comme suit :

Kp = 2; ti = 1; w1K = 2 ; w2K = 10;

NumK = Kp*[1 w1K]; DenK = conv([1 1e-2],[1 w2K]);

sysK = nd2sys(NumK,DenK);

On calcule le systeme en boucle ouverte compose du correcteur et du process :

sysboaff = smult(sysK,sysGaff);

On peut ensuite definir le systeme boucle, ayant comme entree la reference et comme sortiel’erreur, par une simple lft :

sysbfaff = slft([1 -1; 1 -1],sysboaff);

On peut ensuite etudier la stabilite quadratique avec une matrice de Lyapunov constante :

[tau,P] = quadstab(sysbfaff);

On obtient tau = -0.0039 negatif, ce qui montre que le systeme est robustement stable. Lastabilite quadratique avec matrice de Lypaunov dependant des parametres de maniere affine estetudiee avec :

[tau2,Q0,Q1,Q2] = pdlstab(sysbfaff);

qui donne tau2 = -0.0222, et qui montre que le systeme est robustement stable 6.

Robustesse en performance

On calcule la norme H∞ du systeme avec :

[perf,Pp] = quadperf(sysbfaff);

On obtient un gain de 1,77, ce qui correspond a une marge de module pire cas (distance au point-1 dans le lieu de Nyquist 7) de 0,564.

On peut etudier la robustesse en performance en ajoutant une ponderation frequentielleW1(s) sur l’erreur et en calculant la norme H∞ du transfert entre la reference et la sortie deW1(s). On definit la ponderation comme suit :

w1c = 8; NumW1 = 0.5*[1 1/w1c]; DenW1 = [1 1e-3];

W1lti = ltisys(’tf’,NumW1,DenW1);

6. L’utilisation de matrice de Lypunov dependant des parametres aboutit a une evaluation moins concervativede la stabilite ; ce resultat est donc evident des lors que la stabilite quadratique avec matrice de Lyapunov constanteest verifiee.

7. Harry Nyquist est ne en 1889 en Suede et est decede en 1976 aux Etats-Unis. Il a fortement contribue a latheorie de l’information et a l’automatique. Voir http://fr.wikipedia.org/wiki/Harry_Nyquist.

Page 57: Commande Robuste - unistra.fr

6.3. APPLICATION A UN SYSTEME MECANIQUE 57

Figure 6.4 – Schema-bloc du modele dynamique d’ordre 3

Le systeme pondere est calcule par :

sysbfaffp = smult(sysbfaff,W1lti);

et on calcule la norme H∞ du systeme avec :

[perf,Pp] = quadperf(sysbfaffp);

On obtient une norme de 0,863, ce qui montre que la sensibilite en sortie (le transfert entre lareference et l’erreur) verifie le gabarit W−11 (s) avec une marge de robustesse de 1,13. Le systemeest robuste en performance.

6.3.3 µ-analyse

La µ-analyse est une analyse de robustesse qui s’appuie sur la notion de valeur singulierestructuree. Le modele doit-etre donne sous forme de LFR.

Modele LFR

La methode la plus simple pour obtenir une representation LFR d’un systeme consiste atravailler sur le schema-bloc et a la simplifier au maximum de sorte a faire intervenir un nombreminimum de fois chacun des parametres. Dans le cas du systeme mecanique considere, chaqueparametre peut etre utilise une seule fois, comme le montre le schema de la figure 6.4.

A partir de ce schema, il est possible de construire simplement la LFR en remplacant chaqueparametre incertain par une entree vk et une sortie zk. Ainsi, en remplacant la raideur K par v1et z1 puis 1

J2par v2 et z2, on obtient le modele presente sur la figure 6.5.

Ce modele se met alors sous la forme (3.16-3.18) avec :

A B1 B2

C1 D11 D12

C2 D21 D22

=

−(f + f1)/J1 0 0 −1 f 1f/J1 0 0 1 −(f + f2) 01/J1 0 0 0 −1 0

0 0 1 0 0 00 1 0 0 0 0

0 0 0 0 1 0

(6.43)

On observe que la matrice D11 est nulle, ce qui fait que le modele LFR est aussi un modele LPVaffine.

Une etape de normalisation est ensuite operee. Les parametres K et 1J2

sont respectivement

remplaces par K0 +w1δ1 et 1J20

+w2δ2 ou δ1 et δ2 sont deux parametres dont les variations sont

Page 58: Commande Robuste - unistra.fr

58 CHAPITRE 6. ANALYSE DES SYSTEMES LPV INCERTAINS

Figure 6.5 – Schema-bloc du modele LFR

Figure 6.6 – Schema-bloc du modele LFR normalise

Page 59: Commande Robuste - unistra.fr

6.3. APPLICATION A UN SYSTEME MECANIQUE 59

comprises entre -1 et 1. Le schema correspondant est celui de la figure 6.6. Le script de definitiondu modele LFR normalise est donne ci-dessous 8 :

A = [-(f+f1)/J1 f/J20 -K0; f/J1 -(f+f2)/J20 K0; 1/J1 -1/J20 0];

B1 = [-1 f; 1 -(f+f2); 0 -1];

B2 = [1; 0; 0];

C1 = [0 0 w1; 0 w2 0];

C2 = [0 1/J20 0];

D11 = zeros(2);

D12 = zeros(2,1);

D21 = [0 1];

D22 = 0;

sysLFR = pck(A,[B1 B2],[C1;C2],[D11 D12; D21 D22]);

blk = [-1 0; -1 0]; % structure des incertitudes

La variable blk indique que le systeme contient deux incertitudes reelles scalaires 9.

Robustesse en stabilite

On presente ensuite les resultats d’analyse de la robustesse en stabilite a partir du modeleboucle. Apres avoir defini le correcteur au format adequat :

Kp = 2; ti = 1; w1K = 2 ; w2K = 10;

NumK = Kp*[1 w1K]; DenK = conv([1 1e-2],[1 w2K]);

Ktf = tf(NumK,DenK);

sysK = nd2sys(NumK,DenK);

La definition du modele boucle peut se faire a partir de la fonction sysic de la manieresuivante :

systemnames = ’ sysLFR sysK ’;

inputvar = ’[ v2]’;outputvar = ’[ sysLFR(1:2) ]’;

input to sysK = ’[ -sysLFR(3) ]’;

input to sysLFR = ’[ v;sysK ]’;

sysoutname = ’sysLFRbf’;

cleanupsysic = ’yes’;

sysic;

Avant d’analyser la robustesse, il importe de verifier que le modele nominal (avec des incer-titudes nulles) est stable 10. Cela se fait de la maniere suivante :

if max(real(spoles(sysLFRbf))) >= 0,

disp(’Systeme nominal instable’)

else

disp(’Systeme nominal stable’)

end

Le calcul de la valeur singuliere singuliere structuree sur un ensemble de valeurs de la pulsa-tion se fait ainsi :

TabPuls = logspace(0,2,400);

sysLFRbf w = frsp(sysLFRbf,TabPuls);

[bnds,rowd,sens,rowp,rowg] = mu(sysLFRbf w,blk);

8. Les codes Matlab de cette partie requierent la boite a outil µ-analysis and synthesis toolbox ou la version3 ou posterieure de la Robust Control Toolbox.

9. Chaque ligne de la variable code un bloc d’incertitude. Les incertidudes reelles diagonales rI sont codeespar [-r 0] ; les incertitudes complexes diagonales cI sont codees par [c 0] ; les incertitudes complexes pleine detaille l × c sont codees par [l c].

10. Une valeur de µ inferieure a 1 signifie qu’aucun pole ne traverse l’axe imaginaire mais ne garantie pas quele systeme nominal est stable.

Page 60: Commande Robuste - unistra.fr

60 CHAPITRE 6. ANALYSE DES SYSTEMES LPV INCERTAINS

Figure 6.7 – Valeur singuliere structuree pour l’analyse en stabilite (borne superieure et borneinferieure)

Figure 6.8 – Schema-bloc du modele LFR pour l’analyse en performance

figure

vplot(’liv,m’,bnds)

et donne le trace de la figure 6.7. On note un majorant de 0,55 de la borne superieure et unminorant de 0,53 de la borne inferieure, d’ou une marge de robustesse de l’ordre de 1,8. Remar-quons que la borne inferieure a de grandes difficultes a converger. C’est la une caracteristiquede la borne inferieure pour les problemes purement reels.

Robustesse en performance

Le calcul de la robustesse en performance se fait en incluant une ponderation W1(s) surl’erreur de regulation 11 et en ajoutant une incertitude complexe pleine entre la sortie de W1(s)et la reference. Le schema du systeme est presente sur la figure 6.8. La ponderation est definiesous Matlab comme suit :

w1c = 8; NumW1 = 0.25*[1 1/w1c]; DenW1 = [1 1e-3];

W1 = nd2sys(NumW1,DenW1);

On definit ensuite le modele boucle sous forme LFR :

systemnames = ’ sysLFR sysK W1’;

inputvar = ’[ v2; vp]’;

11. Avec une ponderation placee sur l’erreur de regulation, on peut traiter les problemes de bande-passante, demarge de module et de precision statique.

Page 61: Commande Robuste - unistra.fr

6.3. APPLICATION A UN SYSTEME MECANIQUE 61

Figure 6.9 – Valeur singuliere structuree pour l’analyse en performance (borne superieure etborne inferieure)

outputvar = ’[ sysLFR(1:2); W1 ]’;

input to sysK = ’[ vp-sysLFR(3) ]’;

input to sysLFR = ’[ v;sysK ]’;

input to W1 = ’[ vp-sysLFR(3) ]’;

sysoutname = ’sysLFRbfp’;

cleanupsysic = ’yes’;

sysic;

Le trace de la valeur singuliere structuree se fait avec le script ci-dessous :

sysLFRbfp w = frsp(sysLFRbfp,TabPuls);

blkp = [blk; [1 0]]; % ajout de l’incertitude complexe liee aux performances

[bnds,rowd,sens,rowp,rowg] = mu(sysLFRbfp w,blkp);

figure

vplot(’liv,m’,bnds)

et donne les resultats presentes sur la figure 6.9. On observe que les bornes superieure etinferieure sont proches ; l’ajout d’une incertitude complexe pour l’analyse en performance permetde regulariser le probleme. Le systeme est robuste en performance avec une marge de robustessede 1,5 (1/0,66). C’est-a-dire que le systeme maintient les performances definies par le gabaritW−11 (s) sur la sensibilite en sortie (le transfert entre la reference et l’erreur de regulation) pourtoutes les valeurs des parametres dans les intervalles predefinis.

6.3.4 Lieu des poles

L’etude du lieu des poles multimodele presentee ici s’appuie sur une modelisation LFRpresentee dans le paragraphe 6.3.3. Elle utilise des fonctions developpee par l’auteur (archivedes fichiers : http://eavr.u-strasbg.fr/~laroche/student/MasterISTI/Test2.zip).

Le lieu des poles multimodele, trace sur la figure 6.10, obtenu par un echantillonnage del’espace parametrique est obtenu par :

[poles,para0] = polesMM(sysLFRbf,blk,5);

figure

plot(real(poles),imag(poles),’*’)

On observe que la partie reelle des poles demeure inferieure a -1,9 ; le systeme est donc robuste-ment stable.

Page 62: Commande Robuste - unistra.fr

62 CHAPITRE 6. ANALYSE DES SYSTEMES LPV INCERTAINS

Figure 6.10 – Lieu des poles multimodele pour les variations nominales des parametres (5×5modeles)

Figure 6.11 – Evolution de la partie relle pire-cas des poles en fonction du coefficient de dila-tation de l’ensemble de variation des parametres (5×5 modeles)

Page 63: Commande Robuste - unistra.fr

6.3. APPLICATION A UN SYSTEME MECANIQUE 63

Figure 6.12 – Lieu des poles multimodele pour les variations maximales des parametres (10×10modeles)

On peut tracer l’evolution de la partie reelle maximale en fonction d’un coefficient r que l’onapplique au domaine de variation des parametres. Les resultats produits sur la figure 6.11 sontobtenu avec les commandes :

tabr = linspace(0,3,40);

tabpole = [];

for ind = 1:length(tabr),

r = tabr(ind);

rsysLFR = mmult(r*eye(2),sysLFRbf);

[poles,para0] = polesMM(rsysLFR,blk,10);

tabpole = [tabpole max(real(poles))];

end

figure

plot(tabr,tabpole)

On observe qu’au moins un pole est a partie reelle positive a partir d’une dilatation de 1.875.Cette valeur est aussi la marge de robustesse obtenue.

Cette valeur peut etre obtenue automatiquement par dichotomie avec la commande :

[Mu,para] = mumm(sysLFRbf,blk,10,1,1,[])

On obtient Mu = 0.5334 et para = [-1.0000 -0.1111], ce qui montre que la marge de robus-tesse est de 1.8746 et le pire cas est obtenu pour les incertitudes normalisees δ1 = −1, 8746 etδ2 = −0, 2083. Remarquons que, dans le cas present, le pire cas n’est pas obtenu sur un sommetde l’espace parametrique.

Le lieu des poles multimodele avec les variations maximales des parametres, presente surla figure 6.12, est obtenu en multipliant le canal de ∆ par 1/µ et en tracant les poles pour||∆||∞ ≤ 1, ce que fait le script suivant :

rsysLFR = mmult(1/Mu*eye(2),sysLFRbf);

[poles,para0] = polesMM(rsysLFR,blk,10);

figure

plot(real(poles),imag(poles),’*’)

On observe bien que l’ensemble des poles sont a partie reelle negative ; cependant, certains ontune partie reelle proche de zero et sont en limite de stabilite.

Page 64: Commande Robuste - unistra.fr

64 CHAPITRE 6. ANALYSE DES SYSTEMES LPV INCERTAINS

Page 65: Commande Robuste - unistra.fr

Bibliographie

[1] G. Duc and S. Font, Commande H∞ et µ-analyse, Hermes Science Publications, Paris,1999.

[2] K. Zhou, J. C. Doyle, and K. Glover, Robust and Optimal Control, Prentice-Hall, 1996.

[3] S. Skogestad and I. Postlethwaite, Multivariable Feedback Control, Wiley and Sons, 1996.

[4] C. Scherer, Theory of Robust Control, Delft University of Technology, 2001, Notes de cours,http://www.dcsc.tudelft.nl/~cscherer/robust/RCNotes.pdf.

[5] C. Scherer and S. Weiland, Linear Matrix Inequalities in Control, Delft University of Tech-nology, 2005, Notes de cours, http://www.dcsc.tudelft.nl/~cscherer/lmi/notes05.pdf.

[6] D. Arzelier, “Robust control,” 2006, Diaporama de cours, http://homepages.laas.fr/arzelier/cours.html.

[7] P. Gahinet, A. Nemirovski, A. J. Laub, and M. Chilali, LMI Control Toolbox, The Math-Works Inc., 1995.

[8] G. Balas, R. Chiang, A. Packard, and M. Safonov, Robust Control System Toolbox User’sGuide, The MathWorks Inc., 2005-2006.

[9] R. D. Braatz, P. M. Young, J. C. Doyle, and M. Morari, µ-Analysis and Synthesis Toolbox :Users’s Guide, MUSYN Inc. and The MathWorks, 1998.

[10] D. Peaucelle, RoMulOC a YALMIP-MATLAB based Robust Multi Objective Control Tool-box, 2005.

[11] Y. Nesterov and A. Nemirovski, Interior-point Polynomial Methods in Convex Program-ming, SIAM, 1994.

[12] D. Peaucelle, D. Henrion, Y. Labit, and K. Taitz, User’s guide for SeDuMi interface, LAAS- CNRS, http ://www.laas.fr/˜peaucell/SeDuMiInt.html, 2002.

[13] G. Duc, Robustesse des Systemes Lineaires Multivariables, Ecole Superieure d’Electricite,1994.

[14] The MathWorks Inc., Getting Started with the Control System Toolbox, 2000-2002.

[15] C. Scherer, P. Gahinet, and M. Chilali, “Multi-objective output-feedback control via LMIoptimization,” IEEE Trans. Autom. Control, vol. 42, no. 7, pp. 896–911, 1997.

[16] P. Gahinet and P. Apkarian, “A linear matrix inequality approach to h∞ control,” Int. J.Robust Nonlin. Control, vol. 4, no. 4, pp. 421–448, 1994.

[17] J.F. Magni, “Linear fractional representation with a toolbox for use with Matlab,” Tech.Rep., ONERA, 2001.

[18] E. Laroche and D. Knittel, “An improved linear fractional model for robustness analysis ofa winding system,” Control Engineering Practice, vol. 13, no. 5, pp. 659–666, 2005.

[19] E. Laroche, Y. Bonnassieux, H. Abou-Kandil, and J.-P. Louis, “Controller design androbustness analysis for induction machine-based positioning system,” Control EngineeringPractice, vol. 12, pp. 757–767, 2004.

[20] E. Laroche, “Robustness analysis of nonlinear systems - application to induction motor,”in IFAC World Congress, Prague, Praha, July 2005.

65

Page 66: Commande Robuste - unistra.fr

66 BIBLIOGRAPHIE

[21] S. Gutman and E. Jury, “A general theory for matrix root-clustering in subregions of thecomplex plane,” IEEE Trans. Autom. Control, vol. 26, no. 4, pp. 853–863, 1981.

[22] M. Chilali and P. Gahinet, “H∞ design with pole placement constraints : an lmi approach,”IEEE Trans. Autom. Control, vol. 41, no. 3, pp. 358–367, 1996.

[23] D. Peaucelle and D. Arzelier, “A new robust d-stability condition for real convex polytopicun,” Systems and Control Letter, vol. 40, pp. 21–30, 2000.

[24] K. Glover and J.C. Doyle, “State-space formulae for all stabilizing controllers that satisfyan hnorm bound and relations to risk sensitivity,” Systems and Control letters, vol. 11, pp.167–172, 1988.

[25] J.C. Doyle, K. Glover, P.P. Khargonekar, and B.A. Francis, “State-space solutions tostandard H2 and H∞ control problems,” IEEE Trans. Autom. Control, vol. 34, no. 8, pp.831–847, 1989.

[26] D. C. McFarlane and K. Glover, “A loop shaping design procedure using H∞ synthesis,”IEEE Trans. Autom. Control, vol. 37, no. 6, pp. 759–769, 1992.

[27] P.M. Young, “Structured singular value approach for systems with parametric uncertainty,”Int. J. Robust Nonlinear Control, vol. 11, no. 7, pp. 653–680, 2001.