Edouard Laroche - eavr.u-strasbg.freavr.u-strasbg.fr/~laroche/student/MasterISTI/PresComRob.pdf ·...

Preview:

Citation preview

Commande Robuste

Commande Robuste

Edouard Laroche (laroche@unistra.fr)

ENSPS 3A ISAVMaster IRIV – AR

Université de Strasbourg

2011–2012

Commande Robuste

Plan

1 Modélisation des systèmes dynamiques

2 Outils d’analyse

3 Synthèse H∞

4 Théorie de la commande

5 Analyse de la robustesse des systèmes LPV

Commande Robuste

Introduction

Objectifs et contenus

Objectifs en contenu de la formation (1)

ObjectifsMieux comprendre les compromis fondamentaux quilimitent les dynamiques des systèmes asservis,notamment en terme de performance, de sensibilité aubruit et de robustesseConnaître les outils d’analyse des systèmes multi-variablesSavoir mettre en œuvre une synthèse de loi de commandede type H∞ sur un système linéaireÊtre capable de mettre en œuvre une analyse derobustesse dans le cas de variations paramétriques

Commande Robuste

Introduction

Objectifs et contenus

Objectifs en contenu de la formation (2)

Contenu7 séances de cours4 séances de TD dont 2 sur PCÉvaluation : bureau d’étude en simulation

Commande Robuste

Introduction

Objectifs et contenus

Objectifs en contenu de la formation (3)

Plan du coursOutils d’analyse des systèmes multivariablesModélisation des systèmes dynamiquesCritère d’analyse des performancesMéthode de synthèse de correcteurs H∞Méthodes d’analyse de la robustesse

Commande Robuste

Introduction

Historique de l’automatique

Historique de l’automatique (1)

MéthodesAvant 1960 : méthodes SISO, approches temporelles(Ziegler-Nichols) et fréquentielles (Bode, Nyquist,Black-Nichols)Entre 1960 et 1990 : approches temporelles pour lessystèmes MIMO : commande optimaleDepuis1990 : approches fréquentielles pour les systèmesMIMO : approche standard, commande H∞

Commande Robuste

Introduction

Historique de l’automatique

Historique de l’automatique (2)Implantation des commandes

Avant 2000 : implantation sous forme de circuitélectroniques à base d’amplificateurs opérationnels,l’automatique est fortement liée à l’électronique et onprivilégie les représentations à temps continuDepuis les années 2000 : implantation dans descalculateurs sous forme d’équations aux récurrences(représentation à temps échantillonné)

Exemples de réalisations industrielles chez AstriumPilotage H∞ d’Ariane 5 en tangage et lacet en volatmosphérique : 1er vol en 2002Pilotage ATV (Automated Transfer Vehicle) en rendez-vousfinal (3 ddl en position) par correcteur H∞ : 1er vol en 2008

Commande Robuste

Introduction

Historique de l’automatique

Historique de l’automatique (3)

Laboratoires en FranceLAAS (équipe MAC, Toulouse)ONERA (Toulouse + Châtillon)Supélec (Service d’Automatique, Gif-sur-Yvette)IRCCYN (Nantes)GIPSA (Grenoble)...

Entreprises européennesASTRIUM (lanceur, satellite)EADS-Airbus

Commande Robuste

Modélisation des systèmes dynamiques

Plan

1 Modélisation des systèmes dynamiques

2 Outils d’analyse

3 Synthèse H∞

4 Théorie de la commande

5 Analyse de la robustesse des systèmes LPV

Commande Robuste

Modélisation des systèmes dynamiques

Représentation d’état

Représentation d’état (1)

Modèle linéaire invariant dans le temps (LTI)x = Ax + Buy = Cx + Du

(1)

Valable pour les systèmes propres ; systèmes strictementpropres : D = 0. La fonction de transfert du système :

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

relie les transformées de Laplace des signaux (L(u(t)) = U(s)et L(y(t)) = Y (s)), soit Y (s) = G(s) U(s). On effectue l’abusde language suivant : y = G(s) u ou y(t) = G(s) u(t) quisignifie que le signal u(t) est en entrée du système G(s) et quey(t) est en sortie.

Commande Robuste

Modélisation des systèmes dynamiques

Représentation d’état

Représentation d’état (2)

Modèle linéaire à paramètres variants (LPV)x = A(θ)x + B(θ)uy = C(θ)x + D(θ)u

(3)

θk ≤ θk ≤ θk

θk ≤ θk ≤ θk .

Commande Robuste

Modélisation des systèmes dynamiques

Représentation d’état

Représentation d’état (3)

Modèle linéaire à paramètres variants (LPV)

M(θ) =

[A(θ) B(θ)C(θ) D(θ)

]. (4)

avec M(θ) = M0 + θ1M1 + θ2M2....

Commande Robuste

Modélisation des systèmes dynamiques

Représentation d’état

Représentation d’état (4)

Modèle LPV polytopiqueCombinaison barycentrique : M = α1Ms

1 + α2Ms2 + ... avec

0 ≤ αk ≤ 1 et Σαk = 1

Passage LPV affine→ LPV polytopique :M = α1Ms

1 + α2Ms2 + α3Ms

3 + α4Ms4 avec

Ms1 = M0 + θ1M1 + θ2M2

Ms2 = M0 + θ1M1 + θ2M2

Ms3 = M0 + θ1M1 + θ2M2

Ms4 = M0 + θ1M1 + θ2M2

α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

Commande Robuste

Modélisation des systèmes dynamiques

Représentation d’état

Représentation d’état (5)Modèle non-linéaire

x = f (x ,u)y = g(x ,u)

(5)

Linéarisation autour d’un point d’équilibre (x0,u0) vérifiantf (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)(6)

En notant δx = x − x0, δu = u − u0 et δy = y − g(x0,u0) on seramène à un système LPV :

δx = A(θ)δx + B(θ)δuδy = C(θ)δx + D(θ)δu

(7)

avec θ =

[x0u0

].

Commande Robuste

Modélisation des systèmes dynamiques

Opérations sur les systèmes

Opérations sur les systèmes (1)

Somme, produit et inverseSoient G1(s) et G2(s) deux systèmes LTI de dimensionsadéquatesG(s) = G1(s) + G2(s) est défini par y = G(s)u oùy = y1 + y2, y1 = G1(s)u et y2 = G2(s)uH(s) = G1(s)G2(s) est défini par y = H(s)u oùy = G1(s)u1 et u1 = G2(s)uG−1

1 (s) est défini par y = G−1(s)u où u = G1(s)y (définique si D est inversible)Exercice : connaissant les matrices d’état de G1(s) etG2(s), donnez les représentation d’état de G(s), H(s) etde G−1(s)

Commande Robuste

Modélisation des systèmes dynamiques

Opérations sur les systèmes

Opérations sur les systèmes (2)

Système identité et système nulDans l’espace des transferts à n entrées et n sortiesLe systèmes Identité a comme matrice de transfert

In(s) = In =

1 0 . . . 00 1 0...

. . ....

0 0 1

. En effet, on a

G(s) In = In G(s) = G(s)

Le systèmes Null a comme matrice de transfert

On(s) = On×n =

0 . . . 0...

. . ....

0 . . . 0

. En effet, on a

G(s) + On×n = On×n + G(s) = G(s)

Commande Robuste

Modélisation des systèmes dynamiques

Opérations sur les systèmes

Opérations sur les systèmes (3)

Transformation linéaire fractionnaire (LFT)Upper LFT : M(s) = lftu(G(s),H(s)) où y2 = M(s)u2

G(s)

H(s)

--

-

u2

u1 = z

y2

y1 = v

Notations Matlab : M = lft(H,G)

Commande Robuste

Modélisation des systèmes dynamiques

Opérations sur les systèmes

Opérations sur les systèmes (4)

Transformation linéaire fractionnaire (LFT)Lower LFT : M(s) = lftl(G(s),H(s)) où y1 = M(s)u1

H(s)

G(s)

--

-

u1

u2 = z

y1

y2 = v

Notations Matlab : M = lft(G,H)

Commande Robuste

Modélisation des systèmes dynamiques

Modèles LFR

Représentations linéaires fractionnaires des modèlesLPV (1)

DéfinitionSoit M(s) = lftu(Q(s),∆(θ)) où Q(s) est un modèle LTI et∆(θ) est une matrice dépendant du vecteur desparamètres θ.

Q(s)

∆(θ)

--

-

u

v

y

z

Commande Robuste

Modélisation des systèmes dynamiques

Modèles LFR

Représentations linéaires fractionnaires des modèlesLPV (2)

Calculs(1)Le système Q(s) s’écrivant :

x = Ax + B1v + B2u (8)z = C1x + D11v + D12u (9)y = C2x + D21v + D22u (10)

En rebouclant avec la matrice ∆(θ),

v = ∆(θ) z (11)

Commande Robuste

Modélisation des systèmes dynamiques

Modèles LFR

Représentations linéaires fractionnaires des modèlesLPV (3)

Calculs (2)Transfert M(s) entre u et y :

x = A(θ)x + B(θ)u (12)y = C(θ)x + D(θ)u (13)

avec :

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

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

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

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

Commande Robuste

Modélisation des systèmes dynamiques

Modèles LFR

Représentations linéaires fractionnaires des modèlesLPV (4)

InterprétationM(s) est un modèle LPV rationnelTout modèles LPV rationnel peut être mis sous forme LFRPour les modèles LPV à dépendance non-rationnels, onpeut chercher des approximations rationnelles desfonctions non-linéaires

Commande Robuste

Modélisation des systèmes dynamiques

Modèles LFR

Représentations linéaires fractionnaires des modèlesLPV (5)

Exemple Matlab (1)% Définition du paramètre incertainp0 = 1; wp = 0.2;p = ureal(’p’,p0,’Percentage’,100*wp);

% Méthode 1: tfH1 = tf(1,[1 p])USS: 1 State, 1 Output, 1 Input, Continuous System

p: real, nominal = 1, variability = [-20 20]%, 1 occurrence

% Méthode 2: ssA = -p; B = 1; C = 1; D = 0;H2 = ss(A,B,C,D)USS: 1 State, 1 Output, 1 Input, Continuous System

p: real, nominal = 1, variability = [-20 20]%, 1 occurrence

Commande Robuste

Modélisation des systèmes dynamiques

Modèles LFR

Représentations linéaires fractionnaires des modèlesLPV (6)

Exemple Matlab (2)% Méthode 3: LFRQ = [1;1]*tf(1,[1 0])*[-1 1];Q_ = ss(0,[-1,1],[1;1],zeros(2,2));Delta = p;H3 = lft(Delta,Q)USS: 2 States, 1 Output, 1 Input, Continuous System

p: real, nominal = 1, variability = [-20 20]%, 1 occurrence

Commande Robuste

Modélisation des systèmes dynamiques

Modèles LFR

Représentations linéaires fractionnaires des modèlesLPV (7)

Exemple Matlab (3)% Evaluationdpe = 2*rand(1)-1; % sur [-1;1]pe = p0*(1 + wp*dpe);H1e = usubs(H1,’p’,pe); % substitutionH2e = usubs(H2,’p’,pe);H3e = usubs(H3,’p’,pe);sigma(H1e,H2e,H3e,1e-2,1e2) % valeurs singulières

Commande Robuste

Modélisation des systèmes dynamiques

Modèles LFR

Représentations linéaires fractionnaires des modèlesLPV (8)

Exemple Matlab (4)% Transformation USS -> LFR[M,Delta2] = lftdata(H1);size(M)State-space model with 2 outputs, 2 inputs, and 1 state.Delta2UMAT: 1 Rows, 1 Columns

p: real, nominal = 1, variability = [-20 20]%, 1 occurrenceH4 = lft(p,M); % LFR normaliséeH4e = usubs(H4,’p’,dpe); % avec le paramètre normaliséfigure; sigma(H1e,H4e,1e-2,1e2)

Commande Robuste

Outils d’analyse

Plan

1 Modélisation des systèmes dynamiques

2 Outils d’analyse

3 Synthèse H∞

4 Théorie de la commande

5 Analyse de la robustesse des systèmes LPV

Commande Robuste

Outils d’analyse

Valeurs propres et inégalités matricielles

Valeurs propres et inégalités matricielles (1)

Valeurs propresSoit M ∈ Cn×n

λ ∈ C est valeur propre de M s’il existe un vecteur x ∈ Rn

tel que M x = λxCela signifie que dans certaines directions de l’espace,celle des vecteurs propres, l’application x → M x nemodifie pas la directionSi M est hermitienne a, ses valeurs propres sont réelles

a. Le hermicien de M, noté MH, est la composition de la conjugaison et dela transposée : MH = (M∗)T.

Commande Robuste

Outils d’analyse

Valeurs propres et inégalités matricielles

Valeurs propres et inégalités matricielles (2)

Matrice positive : définitionSoit M ∈ Cn×n telle que M = MH (matrice hermitienne)La notation M > 0 signifie : toutes les valeurs propres deM sont strictement positives (M est définie positive)La notation M ≥ 0 signifie : toutes les valeurs propres deM sont positives (ou nulles)Idem pour M < 0 et M ≤ 0

Commande Robuste

Outils d’analyse

Valeurs propres et inégalités matricielles

Valeurs propres et inégalités matricielles (2)

Matrice positive : propriétés (1)Soit M ∈ Cn×n telle que M = MH (matrice hermitienne)M > 0 ⇐⇒ ∀x ∈ Cn∗, xHMx > 0 a

M ≥ 0 ⇐⇒ ∀x ∈ Cn, xHMx ≥ 0M > 0 =⇒ ∀X ∈ Cn×m,X HMX ≥ 0 b

M ≥ 0 ⇐⇒ ∀X ∈ Cn×m,X HMX ≥ 0

a. xHMx est une forme quadratique.b. Il suffit de considérer X =

[x1| . . . |xm

].

Commande Robuste

Outils d’analyse

Valeurs propres et inégalités matricielles

Valeurs propres et inégalités matricielles (3)

Matrice positive : propriétés(2)Soit M et N deux matrices hermitiennes, ainsi que O lamatrice nulle, toutes de dimension adéquates selon leséquations.M > 0,N > 0⇒ M + N > 0M > 0,N > 0⇒ MN > 0 a

M > 0,N < 0⇒ MN < 0

M > 0,N > 0 ⇐⇒[M OO N

]> 0

Pour c ∈ R, M − cI < 0 ⇐⇒ λk (M) < c

a. Voir la démonstration donnée dans le poly

Commande Robuste

Outils d’analyse

Valeurs propres et inégalités matricielles

Inégalité matricielle (1)

Inégalité matricielleSoit z ∈ Dz ⊂ Cp un vecteur de décisionSoit M(z) une fonction matricielle à valeur dans Cn×n telleque M(z) = MH(z) ∀z ∈ Cp

Le problème consistant à trouver z tel queM(z) < 0 ∀z ∈ Dz est un problème d’inégalité matricielleDans le cas où M(z) est une fonction affine descoefficients de z, i.e. M(z) = M0 + z1M1 + ...+ zpMp, onparle d’inégalité matricielle affine ou linéaire (LMI pourlinear matrix inéquality)Les LMI sont abondamment utilisées en automatiquemoderne

Commande Robuste

Outils d’analyse

Valeurs propres et inégalités matricielles

Inégalité matricielle (2)

Exemple de LMIUn système dynamique x = Ax , avec x ∈ Rn et A ∈ Rn×n,est stable si et seulement si il existe une matricesymétrique P ∈ Rn×n définie positive telle queAT P + PA < 0

Pour n = 2, A =

[a1 a2a3 a4

]et P =

[p1 p2p2 p3

],

1 Montrez que l’équation AT P + PA < 0 peut se mettre sousla forme M(p) < 0 où M(p) = M0 + p1M1 + ...p3M3

2 Donnez les matrices Mk , k = 0, ...,3 en fonction descoefficients de A

Commande Robuste

Outils d’analyse

Valeurs propres et inégalités matricielles

Inégalité matricielle (4)

Solveurs pour LMIDeux types de logiciels

1 Résolution des LMI2 Transformation des problèmes de l’automatique en

problèmes LMI (exempleAT P + PA < 0 −→ M0 + p1M1 + ...p3M3 < 0)

Trois types de problèmes1 fesabilité (ou existence) : trouver x solution de A(z) < 0,2 minimisation d’une fonction linéaire : trouver x minimisant

cT x sous la contrainte A(x) < 0,3 problème de valeur propre généralisée : minimiser λ sous

les contraintes A(x) < λB(x), B(x) > 0 et C(x) < 0.

Commande Robuste

Outils d’analyse

Valeurs propres et inégalités matricielles

Inégalité matricielle (5)

Liste de solveurslmilab : solveur de Matlab (Robust Control Toolbox) : 1 + 2+ interface graphiqueSedumi : solveur a

SedumiInt : intergace de Sedumi pour l’automatique b

YALMIP : editeur pour l’automatique permettant d’utiliserde nombreux solveurs c

SDPT3 : solveur d

a. http://sedumi.ie.lehigh.edu/b. http://homepages.laas.fr/peaucell/software/

SeDuMiInt.htmlc. http://users.isy.liu.se/johanl/yalmip/d. http://www.math.nus.edu.sg/~mattohkc/sdpt3.html

Commande Robuste

Outils d’analyse

Valeurs propres et inégalités matricielles

Inégalité matricielle (6)

Illustration : lmiedit

Commande Robuste

Outils d’analyse

Valeurs singulières et norme H∞

Valeurs singulières et norme H∞ (1)

Valeurs singulières : définitionSoit M ∈ Cn×m

MMH est une matrice symétrique positive (valeurs proprespositives)Les valeurs singulière σk de M sont les racines carréesdes valeurs propres de MMH, i.e. σ2

k (M) = λk (MMH)

Interprétation : les valeurs singulières sont lesamplifications dans les différentes direction propres a

On note σ(M) ≤ σk (M) ≤ σ(M)

a. Soient λk une valeur propre de M associée à un vecteur propre xk . On aalors yk = Mxk = λk xk d’où yH

k yk = xHk MHMxk = λ2

k xHk xk , d’où ‖yk‖ = σk‖xk‖.

Commande Robuste

Outils d’analyse

Valeurs singulières et norme H∞

Valeurs singulières et norme H∞ (2)

Valeurs singulières : propriétésσk (M) ≥ 0σk (M) = σk (MH) (invariance par l’opérationtransposé/conjugué)Les valeurs singulières non nulles sont au plus au nombrede min(n,m), la plus petite dimension de M.σk (cIn) = |c|σk (diagc1, . . . , cn) = |ck |

Commande Robuste

Outils d’analyse

Valeurs singulières et norme H∞

Valeurs singulières et norme H∞ (3)

Valeurs singulières : propriétés (2)σ(·) est la norme induite sur les matrices par la normeeuclidienne sur les vecteurs

σ(M) = maxy=Mu

‖y‖‖u‖

(14)

σ(M) ≥ 0σ(M) = 0 =⇒ M = Oσ(λM) = |λ|σ(M)σ(M + N) ≤ σ(M) + σ(N)σ(MN) ≤ σ(M)σ(N)

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

, σ(M) = 1σ(M−1)

Commande Robuste

Outils d’analyse

Valeurs singulières et norme H∞

Valeurs singulières et norme H∞ (4)

Valeurs singulières : propriétés (3)σ(λM) = |λ|σ(M)

σ(M + N) ≥ σ(M) + σ(N)

σ(M)σ(N) ≤ σ(MN)

σ(M) = maxz 6=0‖Mz‖2‖z‖2

(amplification maximale)

Commande Robuste

Outils d’analyse

Valeurs singulières et norme H∞

Valeurs singulières et norme H∞ (5)

Tracé des valeurs singulières d’un système LTISoit un système multivariable à n entrées et n sorties

x = Ax + Bu (15)y = Cx + Du (16)

La fonction de transfert entre u et y estG(s) = C(sIn − A)−1B + DOn caractérise le système par le tracé des valeurssingulières de G(jω) pour ω ∈ R+

Commande Robuste

Outils d’analyse

Valeurs singulières et norme H∞

Valeurs singulières et norme H∞ (6)

Tracé des valeurs singulières d’un système LTIExemple (1) :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);

Commande Robuste

Outils d’analyse

Valeurs singulières et norme H∞

Valeurs singulières et norme H∞ (7)

Tracé des valeurs singulières d’un système LTI

Commande Robuste

Outils d’analyse

Valeurs singulières et norme H∞

Valeurs singulières et norme H∞ (8)

Exemple (3)code :G1 = C*inv(j*1*eye(2)-A)*B+D;SV = svd(G1)u = randn(2,1)Ampli = norm(G1*u)/norm(u)

Résultat :SV =

1.32570.2872

u =1.1892-0.0376

Ampli =

1.1032

Commande Robuste

Outils d’analyse

Valeurs singulières et norme H∞

Valeurs singulières et norme H∞ (9)

Norme sur les signaux multivariablesSoit x(t) à valeur dans Rn

La norme L2 est définie par :

‖x(t)‖L2 =

√∫ ∞0

xT (t) x(t) dt (17)

‖x(t)‖L2 = 0 =⇒ x(t) = 0 ∀t ∈ R+

Commande Robuste

Outils d’analyse

Valeurs singulières et norme H∞

Valeurs singulières et norme H∞ (10)

Norme H∞ sur les systèmes LTISoit G(s) un système LTI multivariable de condition initialenulle, d’entrée u(t) et de sortie y(t)La norme H∞ est définie comme la norme induite sur lessystème par la norme L2 sur les signaux :

‖G(s)‖∞ = max‖y(t)‖L2

‖u(t)‖L2

(18)

‖G(s)‖∞ = 0 =⇒ G(s) = On×n

Commande Robuste

Outils d’analyse

Valeurs singulières et norme H∞

Valeurs singulières et norme H∞ (11)

Propriétés de la H∞Interprétation fréquentielle

‖G(s)‖∞ = maxω∈R+

σ(G(jω)) (19)

Exemple :norm(Sys,inf)

Commande Robuste

Outils d’analyse

Valeurs singulières et norme H∞

Valeurs singulières et norme H∞ (12)

Propriétés de la H∞ (2)Pour une matrice de transfert sous forme de blocs :

G(s) =

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

](20)

on a :

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

Commande Robuste

Outils d’analyse

Valeurs singulières et norme H∞

Récapitulatif sur les normes

Scalaire complexe (module) : |z|2 = z∗zVecteur complexe (norme euclidienne) : ‖z‖2 = zHzMatrice complexe (valeur singulière max) :σ(M) = max ‖Mu‖

‖u‖

Rq. valeur singulière d’un scalaire : σ(z) = |z|Signal vectoriel complexe : ‖z(t)‖2L2

=∫∞

0 zH(t)z(t)dtMatrice de transfert :‖G(s)‖∞ = max

‖G(s)u(t)‖L2‖u(t)‖L2

= maxω∈R+ σ(G(jω))

Rq. fonction de transfert (SISO) :‖G(s)‖∞ = maxω∈R+ |G(jω)|

Commande Robuste

Outils d’analyse

Lemmes de simplification

Lemmes de simplification (1)

Complément de SchurLa LMI : [

Q SST R

]< 0, (22)

où Q = QT et R = RT est équivalente à :R < 0

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

Commande Robuste

Outils d’analyse

Lemmes de simplification

Lemmes de simplification (2)

Lemme de projectionSoit une matrice symétrique Ψ ∈ Rm×m et deux matrices P etQ de nombre de colonnes m. Et considérons le problèmeconsistant à trouver une matrice Θ de dimensions adéquoitestelle que :

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

Notons WP et WQ des matrices dont les colonnes forment unebase des noyaux de respectivement P et Q. Alors, une solutionΘ de l’équation (24) existe si et seulement si :

W TP Ψ WP < 0

W TQ Ψ WQ < 0. (25)

Commande Robuste

Synthèse H∞

Plan

1 Modélisation des systèmes dynamiques

2 Outils d’analyse

3 Synthèse H∞

4 Théorie de la commande

5 Analyse de la robustesse des systèmes LPV

Commande Robuste

Synthèse H∞

Schéma standard

Schéma standard de synthèse (1)

K (s)

Ga(s)-

--

u

v

y

z

v → z : canal de performanceu → y : canal de commandeSynthèse : trouver le correcteur K (s) qui minimise lanorme (H∞ ou H2 ou autre) du transfert Tzv(s)

Commande Robuste

Synthèse H∞

Schéma standard

Schéma standard de synthèse (2)

Performance atteinte : γStructure du correcteur :

généralement : K (s) est de même ordre que Ga(s)(correcteur dynamique d’ordre plein)correcteurs d’ordre réduit : méthodes plus complexes

Méthodes de synthèse : Riccati ou LMI (abordé plus tarddans le cours)Sous Matlab :

hinfsyn : synthèse H∞h2syn : synthèse H2h2hinfsyn : synthèse mixte H2/ H∞

Réglage du correcteur pour respecter le cahier descharges : avec des filtres de pondération contenus dans lesystème augmenté Ga(s)

Commande Robuste

Synthèse H∞

Performance d’un système asservi

Performance d’un système asservi (1)Système asservi

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

6

i i ir +

−e u

dv y

bm

ym

référence r(t)erreur de régulation e(t)erreur de suivi ε(t) = r(t)− y(t)signal de commande u(t)perturbation d(t) en entrée du systèmesignal à asservir y(t)bruit de mesure bm(t)signal de mesure ym(t)

Commande Robuste

Synthèse H∞

Performance d’un système asservi

Performance d’un système asservi (2)

Transferts en BFSensibilité en sortie (coté mesure) : Sy (s) = Ter (s)

Sensibilité en entrée (coté commande) : Su(s) = Tvd (s)

Calcul des transferts en boucle fermée

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

]

Commande Robuste

Synthèse H∞

Performance d’un système asservi

Performance d’un système asservi (3)

Allure en BO

0 dB

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

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

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

ωcω (log)

FIGURE: Allure typique des valeurs singulières de la boucle ouverte.

Allure générale de G(s)K (s) : passe bas

Commande Robuste

Synthèse H∞

Performance d’un système asservi

Performance d’un système asservi (4)

Allure en basse fréquencePour ω ωc , on peut considérer que σ(K (s)G(s)) 1 etσ(G(s)K (s)) 1. Il en résulte que Sy (s) ' K−1(s) G−1(s)et Su(s) ' G−1(s) K−1(s)

euvy

ym

=

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)

r

dbm

Commande Robuste

Synthèse H∞

Performance d’un système asservi

Performance d’un système asservi (4)

Allure en haute fréquencePour ω ωc , on peut considérer que σ(K (s)G(s)) 1 etσ(G(s)K (s)) 1. Il en résulte que Sy (s) ' Iny etSu(s) ' Inu .

euvy

ym

=

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

r

dbm

Commande Robuste

Synthèse H∞

Performance d’un système asservi

Performance d’un système asservi (5)

Marge de module

-1 0

∆M

Im

Re

G(jω) K (jω)

Marge de module en SISO : ∆M = minω |1 + K (jω)G(jω)|Généralisation en MIMO : ∆M = 1

‖Sy (s)‖∞ ou

∆M = 1‖Su(s)‖∞

Commande Robuste

Synthèse H∞

Performance d’un système asservi

Performance d’un système asservi (6)Bande passante

ωBP

ω (log)0 dB

-3 dB

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

20 log(σ(Sy (0)))

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

ωBP défini par ω ≤ ωBP ⇒ σ(Sy (jω)) ≤ 1/√

2Tr ωBP ≈ 3

Commande Robuste

Synthèse H∞

Performance d’un système asservi

Performance d’un système asservi (7)

Précision

ωBP

ω (log)0 dB

-3 dB

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

20 log(σ(Sy (0)))

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

Erreur statique : σ(Sy (0))

Commande Robuste

Synthèse H∞

Performance d’un système asservi

Performance d’un système asservi (8)

Rejet de perturbationTransfert Ted (s) faible aux fréquences de la perturbation(généralement basse et moyennes fréquences)

Atténuation de l’effet du bruit de mesure sur la commandeTransfert Tubm (s) = Tur faible aux fréquences de du bruit(généralement les hautes fréquences)

RobustesseImmunité face aux dynamiques haute fréquence nonmodélisées ou mal modélisées : forcer le gain ducorrecteur à décroitre en haute fréquence en assurantTur (s) faible au delà de la bande passante (roll-off)

Commande Robuste

Synthèse H∞

Performance d’un système asservi

Performance d’un système asservi (9)

RecapitulatifTransfert Sy (s) : marge de module, rapidité et précisionTransfert Tur (s) : bruit de mesure et robustesse par rapportaux dynamiques haute fréquence

Commande Robuste

Synthèse H∞

Schémas de synthèse H∞

Schémas de synthèse H∞ (1)

Schéma général de synthèse : sensibilités mixtes

K (s)

Ge(s)-

--

u

v v

e ou y

zzWe(s) Ws(s) -

Choisir les signaux à mettre dans le canal de performanceRégler les pondérations We(s) et Ws(s) permettant desatisfaire le cahier des charges

Commande Robuste

Synthèse H∞

Schémas de synthèse H∞

Schémas de synthèse H∞ (2)

Synthèse à 1 bloc

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

+- y(t)

r(t)e(t)

W1(s)z(t)

W1(s) = W11Iny avec W11(s) = s+ak(s+b)

Impose σ(Sy (jω)) ≤ γ/|W11(jω)|Permet de gérer la marge de module, la rapidité et laprécisionExercice : déterminer Ge(s), We(s) et Ws(s)

Commande Robuste

Synthèse H∞

Schémas de synthèse H∞

Schémas de synthèse H∞ (3)Synthèse à 2 blocs

K (s) G(s)+-

r(t)e(t)

W1(s)z1(t)

u(t)

y(t)

z2(t)W2(s)

W1(s) inchangéW2(s) = W21Inu avec W21(s) = s

K2(cs+1)

Impose σ(Sy (jω)) ≤ γ/|W11(jω)| etσ(Tur (jω)) ≤ γ/|W21(jω)|Atténuation de Tur (s) en haute fréquence : roll-off + bruitde mesureExercice : déterminer Ge(s), We(s) et Ws(s)

Commande Robuste

Synthèse H∞

Schémas de synthèse H∞

Schémas de synthèse H∞ (4)

Synthèse à 4 blocs (1)

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)

Commande Robuste

Synthèse H∞

Schémas de synthèse H∞

Schémas de synthèse H∞ (5)

Synthèse à 4 blocs (2)W1(s) et W2(s) inchangésW3(s) = W31(s)Inu

Impose σ(Ted (jω)) < 1|W11(jω)W31(jω)|

Exemple de perturbation sinusoïdale à la pulsation ω0 :W31(s) = ω0s

s2+2ξω0s+ω20

Permet de forcer le rejet de perturbationExercice : déterminer Ge(s), We(s) et Ws(s)

Commande Robuste

Synthèse H∞

Schémas de synthèse H∞

Schémas de synthèse H∞ (6)

Illustration : commande d’un stabilisateur cardiaqueTravaux de thèse de Wael Bachta (avec P. Renaud, J.Gangloff et E. Laroche)Stabilisateur actif equipé d’un actionneur piézo-électriqueMesure de la position par camera rapideCf slides sur http://eavr.u-strasbg.fr/~laroche/ISAE-2009/PresISAE-dec09.pdf

Commande Robuste

Synthèse H∞

Robustesse de la commande H∞

Robustesse de la commande H∞ (1)

Théorème du petit gain

Q(s)

∆(s)

--

-

u

v

y

z

Le système LTI interconnecté est stable si et seulement si‖∆(s)Q11(s)‖∞ < 1

Commande Robuste

Synthèse H∞

Robustesse de la commande H∞

Robustesse de la commande H∞ (2)

Théorème du petit gainSi ∆(s) est incertain telle que ‖∆(s)‖∞ ≤ 1, alors lesystème interconnecté est stable si et seulement si‖Q11(s)‖∞ < 1La réciproque (seulement si) n’est valable qu’en absenced’information supplémentaire.Synthèse H∞ : maximiser la taille des incertitudes que l’onpeut reboucler avec le canal de performance sans remettreen cause la stabilité du système (i.e. pessimiste enprésence d’information supplémentaire, par exemple lastructure de ∆)Vision historique de la commande H∞ → commanderobuste multivariable

Commande Robuste

Synthèse H∞

Robustesse de la commande H∞

Robustesse de la commande H∞ (2)

Théorème du petit gainSi ∆(s) est incertain telle que ‖∆(s)‖∞ ≤ 1, alors lesystème interconnecté est stable si et seulement si‖Q11(s)‖∞ < 1La réciproque (seulement si) n’est valable qu’en absenced’information supplémentaire.Synthèse H∞ : maximiser la taille des incertitudes que l’onpeut reboucler avec le canal de performance sans remettreen cause la stabilité du système (i.e. pessimiste enprésence d’information supplémentaire, par exemple lastructure de ∆)Vision historique de la commande H∞ → commanderobuste multivariable

Commande Robuste

Synthèse H∞

Robustesse de la commande H∞

Robustesse de la commande H∞ (3)

Analyse de la robustesse

Q(s)

K (s)

--

u

v

y

z

Soit H(s) = lftl(Q(s),K (s)) et ‖∆‖ ≤ 1Petit gain : stabilité si σ(H(jω)) < 1Prise en compte de la structure de ∆ avec la valeursingulière structurée : stabilité si µ∆(H(jω)) < 1

Commande Robuste

Théorie de la commande

Plan

1 Modélisation des systèmes dynamiques

2 Outils d’analyse

3 Synthèse H∞

4 Théorie de la commande

5 Analyse de la robustesse des systèmes LPV

Commande Robuste

Théorie de la commande

Préliminaires

Convexité

Ensemble convexeUn ensemble D est convexe si ∀(x , y) ∈ D,λx + (1− λ)y ∈ D avec λ ∈ [0,1]

Fonction convexeUne fonction f est convexe si ∀(x , y) ∈ D,f (λx + (1− λ)y) ≤ λf (x) + (1− λ)f (y) avec λ ∈ [0,1]

Condition nécessaire et suffiante : d2fdx2 ≥ 0

Valable pour les fonctions matricielles

Commande Robuste

Théorie de la commande

Préliminaires

Multiconvexité

Fonction multiconvexeUne fonction f est multiconvexe si la fonction réduite àchaque direction cartésiennes de l’espace est convexe, i.e.xk → fk (xk ) = f (x) où x = [x1 . . . xn]T

Condition moins forte que la convexitéExemple : montrez que f (x) = x2

1 + x22 − 4x1x2 est

multiconvexe et qu’elle n’est pas convexe

Ensemble multiconvexeUn ensemble D est convexe si ∀(x , y) ∈ D,λx + (1− λ)y ∈ D avec λ ∈ [0,1]

Commande Robuste

Théorie de la commande

Stabilité de Lyapunov

Stabilité de Lyapunov (1)

GénéralitésSystème d’état x ∈ D sans entrée d’équilibre x = 0Fonction d’énergie appelée fonction de Lyapunovpossédant un minimum pour x = 0Théorème de Lyapunov : V (x) décroissante sur D ⇒système stableInterprétation : l’énergie du système décroit jusqu’àatteindre un minimum correspondant à l’équilibre

Commande Robuste

Théorie de la commande

Stabilité de Lyapunov

Stabilité de Lyapunov (2)

Cas d’un système linéaireSystème x = AxFonction de Lyapunov quadratique V (x) = xTQx oùQ = QT > 0 est appelée matrice de LyapunovStabilité si et seulement si ATQ + QA < 0 (à démontrer)Dans ce cas de figure uniquement (système linéaire), laréciproque est vraie.

Commande Robuste

Théorie de la commande

Stabilité de Lyapunov

Stabilité de Lyapunov (3)

ExempleSystème mécanique de masse m, connecté au sol parl’intermédiaire d’un ressort de raideur k et d’unamortisseur f .z : position de la masse ; z : vitesse. Équilibre : z = 0Équation fondamentale de la dynamique : mz = −kz − f z

État : x =

[zz

]Énergie : énergie cinétique Ec = 1

2mz2 et énergiepotentielle Ep = 1

2kz2.

Fonction d’énergie : V (x) = 12mz2 + 1

2kz2.

Commande Robuste

Théorie de la commande

Stabilité de Lyapunov

Stabilité de Lyapunov (4)

Exemple (suite)Variation de l’énergie s’écrit :

V (t) =∂V (x)

∂zz +

∂V (x)

∂zz (26)

= kzz + mzz (27)= z(kz + (−kz − f z)) (28)= −f z2 (29)

L’énergie est décroissante dès que la vitesse est non nulle.A terme, la décroissance de l’énergie entraine laconvergence de x vers zéro.Toutefois, la décroissance ne satisfait donc pasexactement la condition d

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

Commande Robuste

Théorie de la commande

Stabilité de Lyapunov

Stabilité de Lyapunov (5)

Système à temps discretSystème x(k + 1) = Ax(k)

fonction de Lyapunov quadratique V (x) = xTQx avecQ = QT > 0.Système stable si et seulement si l’énergie décroit surtoutes les trajectoires, c’est-à-dire s’il existe une matrice Qtelle que :

Q > 0 (30)ATQA−Q < 0 (31)

En effet, la décroissance de l’énergie s’écritV (x(k + 1)) < V (x(k)) ce qui s’écrit encorexT(k)ATQAx(k) < xT(k)Qx(k).

Commande Robuste

Théorie de la commande

Stabilité de Lyapunov

Stabilité de Lyapunov (5)

Retour d’état stabilisantSystème x = Ax + BuOn cherche une commande de la forme u = KxSystème en boucle fermée : x = (A + BK)x .Stabilité s’il existe une matrice Q = QT > 0 vérifiantl’inégalité matricielle :

(A + BK)T Q + Q(A + BK) < 0 (32)

Inégalité matricielle non linéaire (produit QBK) ; elle nepeut donc être résolue par les outils numériquesclassiques.

Commande Robuste

Théorie de la commande

Stabilité de Lyapunov

Stabilité de Lyapunov (6)

Retour d’état stabilisant (suite)

Multiplier à droite et à gauche l’inégalité par R = Q−1 :

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

Changement de variable S = KR :

RAT + ST B + AR + BS < 0 (34)

Résolution de la LMI en R et S, puis détermination deK = SR−1.

Commande Robuste

Théorie de la commande

Stabilité de Lyapunov

Stabilité de Lyapunov (7)

Maximisation du taux de décroissanceFonction quadratique V (x) = xT QxAssurer V (x) < τxT x où le taux de croissance τ est unscalaire (τ < 0 si le système est stable).Résoltion LMI : trouver Q = QT > 0 et τ minimal vérifiant :

AT Q + QA < τ I (35)

Problème de valeurs propres généralisées.

Commande Robuste

Théorie de la commande

Dissipativité

Dissipativité (1)

DéfinitionSystème d’entrée u, de sortie y , de vecteur d’état x ,d’équilibre x0 = 0Soit S(u, y) une fonction scalaire que nous appelleronsflux d’énergie entrant.Le système dynamique est dit S-dissipatif s’il existe unefonction d’énergie V (x) telle que dV (x)

dt < S(u, y) pour toutx 6= x0

Commande Robuste

Théorie de la commande

Dissipativité

Dissipativité (2)

ExempleCircuit électrique : résistance R en série avec uneinductance L alimenté par une tension u(t). Le courantx(t) rérifie Rx(t) + Ldx(t)/dt = u(t). On mesure lecourant : y(t) = x(t).Puissance transférée au circuit : S(u, y) = uyÉnergie dans le circuit : V (x) = 1

2Lx2

On a dVdt = dV

dx x = Lxx = x(u − Rx) = S(u, y)− Rx2

On a bien dV/dt ≤ S(u, y)

Commande Robuste

Théorie de la commande

Dissipativité

Dissipativité (3)

Système linéaireSystème x = Ax + Bu, y = Cx + DuQ11,Q22,Q12-dissipativité :

S(u, y) =

[yu

]T [ Q11 Q12

Q12T Q22

] [yu

](36)

Le système est Q11,Q22,Q12-dissipatif s’il existe unematrice Q = QT > 0 vérifiant le système de LMI :[

ATQ + QA− CTQ11C QB − CTQ11D − CTQ12BTQ− DTQ11C −QT

12C −DTQ11D − DTQ12 −QT12D −Q22

]< 0

Commande Robuste

Théorie de la commande

Dissipativité

Dissipativité (3)

Système linéaire : Démo (1)On peut remplacer le vecteur [yT,uT]T dans la fonctionS(u, y) par [

yu

]=

[C D0 I

] [xu

](37)

On obtient alors une nouvelle expression S(x ,u) du fluxd’énergie :

S(x ,u) =

[xu

]T [ CT 0DT I

] [Q11 Q12Q12

T Q22

] [C D0 I

] [xu

](38)

Commande Robuste

Théorie de la commande

Dissipativité

Dissipativité (3)

Système linéaire : Démo (1)

soit encore S(x ,u) =[xu

]T [ CTQ11C CTQ11D + CTQ12DTQ11C + QT

12C DTQ11D + DTQ12 + QT12D + Q22

] [xu

]Par ailleurs, la dérivée de la fonction d’énergie s’écrit :

dV (x)

dt= xTQx + xTQx (39)

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

=

[xu

]T [ ATQ + QA QBBTQ 0

] [xu

](41)

Commande Robuste

Théorie de la commande

Dissipativité

Dissipativité (3)

Système linéaire : Démo (2)La dissipativité s’écrit alors comme une LMI enQ = QT > 0 :[

ATQ + QA− CTQ11C QB − CTQ11D − CTQ12BTQ − DTQ11C −QT

12C −DTQ11D − DTQ12 −QT12D −Q22

]< 0

Commande Robuste

Théorie de la commande

Dissipativité

Dissipativité (4)

Lemme (Yakubovitch-Kalman)

Soit Σ un système linéaire. Les propositions suivantes sontéquivalentes :

(i) Σ est Q11,Q22,Q12-dissipatif.(ii) ∀ω ∈ R+\det(jωI − A) 6= 0,[

G(jω)I

]T [ Q11 Q12QT

12 Q22

] [G(jω)

I

]≥ 0 (42)

Démonstration

Considérer un signal harmonique u(t) = Uexp(jωt).

Commande Robuste

Théorie de la commande

Dissipativité

Dissipativité (5)

Théorème (Équivalence entre norme H∞ et dissipativité)Soit un système linéaire Σ et la fonction de flux d’énergieS(u, y) = γ2uT u − yT y. Les propositions suivantes sontéquivalentes :

(i) Σ est S-dissipatif(ii) ‖Σ‖∞ ≤ γ

DémonstrationLemme de Yakubovitch-Kalman : la proposition (ii) équivalente à−(GT (jω)G(jω) + γ2I ≥ 0, ce qui est équivalent à dire que les valeurspropres de G(jω)T G(jω) sont inférieures à γ2. Or les valeurs propres(réelles et positives) de G(jω)T (G(jω) sont les carrés des valeurssingulières de G(jω). CQFD car la norme H∞ de Σ est la bornesupérieure de la valeur singulière maximale.

Commande Robuste

Théorie de la commande

Dissipativité

Dissipativité (6)

Lemme (Lemme borné réel (1))

Un système dynamique continu linéaire de matrices d’état A, B,C et D a une norme H∞ inférieure à γ si et seulement si ilexiste une matrice Q = QT > 0 vérifiant :[

AT Q + QA + CT C QB + CT DBT Q + DT C DT D − γ2I

]< 0 (43)

ApplicationCalcul de la norme H∞ par résolution d’une LMI

Commande Robuste

Théorie de la commande

Dissipativité

Dissipativité (7)Lemme (Lemme borné réel (2))

Un système dynamique continu linéaire de matrices d’état A, B,C et D a une norme H∞ inférieure à γ si et seulement si ilexiste une matrice Q = QT > 0 vérifiant : AT Q + QA QB CT

BT Q −γI DT

C D −γI

< 0 (44)

DémonstrationLemme de Schur (Exercice)

IntérêtFormulation linéaire en fonction des matrices d’état (pour lasuite)

Commande Robuste

Théorie de la commande

Dissipativité

Synthèse H∞ (1)

Position du problèmePour le système P(s) de représentation d’état :x

zy

=

A B1 B2C1 D11 D12C2 D21 D22

xvu

(45)

on cherche un correcteur dynamique K (s) de représentationd’état : [

xKu

]=

[AK BKCK DK

] [xKy

](46)

tel que‖lftl(P(s),K (s))‖∞ ≤ γ. (47)

Commande Robuste

Théorie de la commande

Dissipativité

Synthèse H∞ (2)

Résolution par équation de Riccati [Glover & Doyle] (1)Pour P = PT et Q = QT de même dimension d’une matrice A.On note :

X = Ric(

A −P−Q −AT

)(48)

la solution symétrique de l’équation de Riccati :

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

telle que toutes les valeurs propres de A− PX ont une partieréelle strictement négative.

Commande Robuste

Théorie de la commande

Dissipativité

Synthèse H∞ (3)

Résolution par équation de Riccati [Glover & Doyle] (2)

Théorème (Synthèse H∞ par équation de Riccati)

Solution :K (s) = lftl(Ka(s),Φ(s)) (50)

Φ(s) : matrice de transfert de dimension nu × ny arbitrairevérifiant ‖Φ(s)‖ < γ ; Ka(s) décrit par :xa

uua

=

Aa ZaYaCT2 ZaB2

−BT2 Xa O Inu

−C2 Iny O

xvu

(51)

où Aa = A + γ−2B1BT1 Xa− B2BT

2 − ZaYaC2CT2 et

Za = (In − γ−2YaXa)−1

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

Commande Robuste

Théorie de la commande

Dissipativité

Synthèse H∞ (4)

Résolution par équation de Riccati [Glover & Doyle] (3)HypothèsesH1. (A,B2) est stabilisable ; (C2,A) est détectableH2. rang(D12) = nu et rang(D21) = ny où nu est la taille de u et

ny est la taille de ny .

H3. ∀ω ∈ R, rang(

A− jωIn B2C1 D12

)= n + nu où n est la taille de

x .

H4. ∀ω ∈ R, rang(

A− jωIn B1C2 D21

)= n + ny .

H5. D11 = 0, DT12[C1 D12

]=[O Inu

], D22 = 0,[

B1D21

]DT

21 =[O Iny

].

Commande Robuste

Théorie de la commande

Dissipativité

Synthèse H∞ (5)

Résolution par LMI [Gahinet & Apkarian] (1)Basé sur le lemme borné réelPour le système en boucle fermée lftl(P(s),K (s)) : AT

bfQ + QAbf QBbf CTbf

BTbfQ −γI DT

bfCbf Dbf −γI

< 0 (52)

avec, pour D22 = O :

[Abf Bbf

Cbf Dbf

]=

A + B2DK C2 B2CK B1 + B2DK D21BK C1 AK BK D21

C1 + D12DK C2 D12CK D11 + D12DK D21

Commande Robuste

Théorie de la commande

Dissipativité

Synthèse H∞ (6)

Résolution par LMI [Gahinet & Apkarian] (2)Inégalité matricielle non-linéaire : produit entre Q et lesmatrices du correcteur à déterminer.Solution : résoudre d’abord un problème LMI où lesmatrices du correcteur ont été supprimées grâce aulemme de projection

Commande Robuste

Théorie de la commande

Dissipativité

Synthèse H∞ (7)

Théorème (Synthèse LMI de correcteur H∞)

Trouver les matrices symétriques R et S qui vérifient :

[NR 00 Inv

]TAR + RAT RCT

1 B1C2R −γInz D21BT

1 DT21 −γInv

[NR 00 Inv

]< 0 (53)

[NS 00 Inz

]TATS + SA SB1 C1

BT1 S −γInv DT

21CT

2 D21 −γInz

[NS 00 Inz

]< 0 (54)

[R InIn S

]≥ 0 (55)

NR et NS : bases des noyaux de[BT

2 DT12]

et[C2 D21

].

Commande Robuste

Théorie de la commande

Dissipativité

Synthèse H∞ (8)

Résolution par LMI [Gahinet & Apkarian] (4)La détermination du correcteur :

1 Détermine les matrices R et S à partir des LMI duthéorème 3.

2 Soit r le rang de la matrice In − RS. Une décomposition envaleurs singulière permet de déterminer les matrices M etN ∈ Rn×r telles que :

MNT = In − RS (56)

3 On détermine ensuite la matrice de Lyapunov :

Q =

[S N

NT −M†RN

](57)

où M† est la pseudo-inverse de M.

Commande Robuste

Théorie de la commande

Dissipativité

Synthèse H∞ (9)

Résolution par LMI [Gahinet & Apkarian] (5)Détermination du correcteur (suite) :

4 Résoudre le lemme borné réel (52) avec Q connu ; ce quiest une LMI en AK , BK , CK et DK .

Commande Robuste

Analyse de la robustesse des systèmes LPV

Plan

1 Modélisation des systèmes dynamiques

2 Outils d’analyse

3 Synthèse H∞

4 Théorie de la commande

5 Analyse de la robustesse des systèmes LPV

Commande Robuste

Analyse de la robustesse des systèmes LPV

Exemple de système mécanique

Exemple de système mécanique (1)

Présentation

r

actionneur transmission souple

charge

régulateur

y

u

Actionneur connecté à une charge inertielle parl’intermédiaire d’un accouplement souplecommande u : couple produit par l’actionneur (N.m) ;mesure y : vitesse de la charge (rad/s) ; position del’actionneur et de la charge : q1 et q2 [rad/s]

Commande Robuste

Analyse de la robustesse des systèmes LPV

Exemple de système mécanique

Exemple de système mécanique (2)

Modélisationinerties : J1 et J2 [kg.m2] ; coefficients de frottement fluide :f1 et f2 [N.m.s/rad] ; raideur de l’accouplement : K[N.m/rad] ; coefficient de frottement fluide del’accouplement : f [N.m.s/rad]Modèle :

J1dΩ1

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

J2dΩ2

dt= CK − f2Ω2 (59)

où le couple transmis par la raideur estCK = K (q1 − q2) + f (Ω1 − Ω2)

Exercice : déterminer une représentation d’état d’ordreminimale du système

Commande Robuste

Analyse de la robustesse des systèmes LPV

Exemple de système mécanique

Exemple de système mécanique (3)

Schéma-bloc

Commande Robuste

Analyse de la robustesse des systèmes LPV

Exemple de système mécanique

Exemple de système mécanique (4)

Réponse fréquentielle

FIGURE: Lieu de Bode du système mécanique

Commande Robuste

Analyse de la robustesse des systèmes LPV

Exemple de système mécanique

Exemple de système mécanique (5)

Asservissement de vitesse

Commande u = K (s)(q∗2 − q2) avec K (s) = 2(s+2)(s+10)(s+0,01)

FIGURE: Réponse à un échelon du système nominal asservi

Commande Robuste

Analyse de la robustesse des systèmes LPV

Exemple de système mécanique

Exemple de système mécanique (6)

Modèle LPV affineParamètres incertains : J2 et K

Soit M =

[A BC D

]On a M = M0 + KM1 + 1

J2M2 avec

M0 =

− f +f1

J10 0 1

− 1J1

0 0 0f

J10 0 0

0 0 0 0

, M1 =

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

et

M2 =

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

Commande Robuste

Analyse de la robustesse des systèmes LPV

Exemple de système mécanique

Exemple de système mécanique (7)

Schéma-bloc du modèle LFR

Commande Robuste

Analyse de la robustesse des systèmes LPV

Exemple de système mécanique

Exemple de système mécanique (8)

Modèle LFR (2)G(s, θ) = lftu(H(s),∆(θ)) où ∆ = diagK ,1/J2 où H(s)

est défini par les matrices :

A B1 B2C1 D11 D12C2 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 00 0 0 0 1 0

Commande Robuste

Analyse de la robustesse des systèmes LPV

Analyse des systèmes LPV affines

Analyse des systèmes LPV affines (0)

PréliminaireSoit un polytope D = [x1; x1]× ...× [xp; xp] et l’ensembledes sommets Ds = x1; x1 × ...× xp; xpSoit f (x) une fonction définie sur D à valeur dans R oudans Rn×n avec f T(x) = f (x)

Si f (x) est affine, alors f (x) < 0 ∀x ∈ Ds ⇔ f (x) < 0∀x ∈ DSi f (x) est multiconvexe, alors f (x) < 0 ∀x ∈ Ds ⇒f (x) < 0 ∀x ∈ D

Commande Robuste

Analyse de la robustesse des systèmes LPV

Analyse des systèmes LPV affines

Analyse des systèmes LPV affines (1)

Modèle LPV affine x = A(θ)x + B(θ)uy = C(θ)x + D(θ)u

(60)

M =

[A BC D

](61)

et M(θ) = M0 + θ1M1 + θ2M2...+ θpMp

θ ∈ Θ = [θ1; θ1]× [θ2; θ2]...[θp; θp]

Commande Robuste

Analyse de la robustesse des systèmes LPV

Analyse des systèmes LPV affines

Analyse des systèmes LPV affines (2)

Stabilité quadratique avec matrice de Lyapunov constanteSystème autonome x = A(θ)x , A(θ) = A0 +

∑Akθk

V (x) = xTQx avec Q = QT > 0Stabilité si ∃Q telle que V = xT (AT(θ)Q + QA(θ))x < 0∀θ ∈ Θ

Il suffit de vérifier la LMI sur les sommets de Θ :Stabilité si ∃Q telle que AT(θ)Q + QA(θ) < 0 ∀θ ∈ Θs oùΘ = co(Θs) et Θs = θ1; θ1 × θ2; θ2...θp; θp

Commande Robuste

Analyse de la robustesse des systèmes LPV

Analyse des systèmes LPV affines

Analyse des systèmes LPV affines (3)

Stabilité quadratique avec matrice de Lyapunovdépendant des paramètres (PDLF) (1)

Afin de réduire le pessimisme, on prend V (x) = xTQ(θ)xavec Q(θ) = Q0 +

∑Qkθk tels que Q(θ) = QT(θ) > 0∀θ

Stabilité si ∃Qk telle queV = xT (AT(θ)Q(θ) + Q(θ)A(θ) + Q(θ))x < 0 ∀θ ∈ Θ

On a Q(θ) =∑

Qk θk

On note Γ = [θ1; θ1]× ...[θp; θp] et Γs l’ensemble dessommets.Les termes AT(θ)Q(θ) et Q(θ)A(θ) sont non-linéaires en θ→ utilisation de la multiconvexité : négatif sur le domaine sinégatif aux sommets et multiconvexe

Commande Robuste

Analyse de la robustesse des systèmes LPV

Analyse des systèmes LPV affines

Analyse des systèmes LPV affines (4)

Stabilité quadratique avec PDLF (2)Stabilité si

Q(θ) > 0 ∀θ ∈ Θs

AT(θ)Q(θ) + Q(θ)A(θ) + Q(θ)−Q0 < 0 ∀θ ∈ Θs, θ ∈ Γs

ATk Qk + QkAk ≥ 0 ∀k ≥ 1

Commande Robuste

Analyse de la robustesse des systèmes LPV

Analyse des systèmes LPV affines

Analyse des systèmes LPV affines (5)

Dissipativité avec matrice de Lyapunov constante (1)Lemme borné réel : LMI affine en les matrices d’état A, B,C et DIl suffit donc de vérifier la conditions sur Θs

Système LPV dissipatif pour S(u, y) = −yT y + γuT u s’ilexiste une matrices Q = QT > 0 telle que : M(θ) QB(θ) CT(θ)

BT(θ)Q −γI DT(θ)C(θ) D(θ) −γI

< 0 ∀ θ ∈ Θ

où M(θ) = AT(θ)Q + QA(θ).

Commande Robuste

Analyse de la robustesse des systèmes LPV

Analyse des systèmes LPV affines

Analyse des systèmes LPV affines (5)

Dissipativité avec PDLF (1)Comme pour la stabilité de Lyapunov :AT(θ)Q(θ) + Q(θ)A(θ)→ AT(θ)Q(θ) + Q(θ)A(θ) + Q(θ)

Le système LPV est dissipatif pour S(u, y) = −yT y + γuT us’il existe des matrices symétriques Q0, Q1... avecQ(θ) = Q0 + θ1Q1 · · · telles que :

Q(θ) > 0 ∀θ ∈ Θs M(θ, θ) Q(θ)B(θ) CT(θ)BT(θ)Q(θ) −γI DT(θ)

C(θ) D(θ) −γI

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

où M(θ, θ) = AT(θ)Q(θ) + Q(θ)A(θ) + Q(θ).

Commande Robuste

Analyse de la robustesse des systèmes LPV

Analyse des systèmes LPV affines

Analyse des systèmes LPV affines (6)

Dissipativité avec PDLF (2)

M(θ, θ) polynomial d’ordre 2→ multiconvexitéLe système LPV est dissipatif pour S(u, y) = −yT y + γuT us’il existe des matrices symétriques Q0, Q1... telles que :

Q(θ) > 0 ∀θ ∈ Θs M(θ, θ) Q(θ)B(θ) CT(θ)BT(θ)Q(θ) −γI DT(θ)

C(θ) D(θ) −γI

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

[AT

k Qk + QkAk QkBkBT

k Qk 0

]≥ 0 ∀ k ≥ 1

où M(θ, θ) = AT(θ)Q(θ) + Q(θ)A(θ) + Q(θ)−Q0.

Commande Robuste

Analyse de la robustesse des systèmes LPV

Analyse des systèmes LPV affines

Analyse des systèmes LPV affines (7)

Code Matlab (1)Format différent des autres systèmes dans la RobustControl Toolboxpv = pvec(’box’,range)) : définit les bornes devariation des paramètresysaff = psys(pv,[S0,S1,S2]) : définit un systèmeLPV affinesysbfaff = slft(M,sysaff) : lft pour un systèmeLPV affine

Commande Robuste

Analyse de la robustesse des systèmes LPV

Analyse des systèmes LPV affines

Analyse des systèmes LPV affines (8)

Code Matlab (2)[tau,Q] = quadstab(sysbfaff) : stabilitéquadratique[tau,Q0,Q1,Q2] = pdlstab(sysbfaff) : stabilitéPDLF[perf,Q] = quadperf(sysbfaff) : performance H∞avec matrice de Lyapunov constanteVoir programme RobFlex2.m

Commande Robuste

Analyse de la robustesse des systèmes LPV

µ-analyse

µ-analyse (1)

Définition (1)

M(s)

-

v z

∆ = diagδ1Ir1 , ..., δsIrs , ε1Ic1 , ..., εt Ict ,∆1, ...,∆f où δk ∈ R,εk ∈ C et ∆k ∈ Cmi×mi et ‖∆‖ ≤ 1

Commande Robuste

Analyse de la robustesse des systèmes LPV

µ-analyse

µ-analyse (2)

Définition (2)µ = taille (norme H∞) de la plus petite incertitudedéstabilisant le systèmePour Mω = M(jω), µ(ω) = inf∆∈E∆

σ(∆)\det(I−∆Mω) = 0 ;µ(ω) = 0 si det(I −∆Mω) = 0 ∀∆ ∈ E∆

µ = maxω µ(ω)

Robustesse si µ < 1Pour ∆ = ∆1 ∈ Cm1×m1 , µ(ω) = σ(Mω) et µ = ‖M(s)‖∞

Commande Robuste

Analyse de la robustesse des systèmes LPV

µ-analyse

µ-analyse (3)

Borne inférieure (1)Sous-ensemble EQ ⊂ E∆ où δi ∈ −1; 1, |εi | = 1 et∆∗i ∆i = I où M∗ est la transposée conjuguéePour Mω = M(jω), µ(ω) = inf∆∈E∆

σ(∆)\det(I−∆Mω) = 0 ;µ(ω) = 0 si det(I −∆Mω) = 0 ∀∆ ∈ E∆

µ = maxω µ(ω)

Robustesse si µ < 1Pour ∆ = ∆1 ∈ Cm1×m1 , µ(ω) = σ(Mω) et µ = ‖M(s)‖∞Young et Doyle (1990) ont montré quemaxQ∈EQ

ρR(QMω) ≤ µ(ω) où ρR(M) est la plus grandevaleur absolue des valeurs propres réelles de M etρR(M) = 0 si M n’a pas de valeur propre réelle.

Commande Robuste

Analyse de la robustesse des systèmes LPV

µ-analyse

µ-analyse (4)

Borne inférieure (2)+ Cette borne inférieure peut être atteinte+ La matrice ∆ correspondant au pire cas est connue− Difficultés de convergence pour les incertitudes réelles

pures

Commande Robuste

Analyse de la robustesse des systèmes LPV

µ-analyse

µ-analyse (5)

Borne supérieure (1)Principe : µ(Mω) ≤ σ(Mω)

Amélioration de la majoration en utilisant des matrices Dinversibles qui commutent avec ∆

M(s)∆ = M(s)D−1D∆ = M(s)D−1∆Dµ(Mω) ≤ σ(DMωD−1)

+ Cette borne supérieure peut être atteinte− Présence de pics étroits dans µ(ω) surtout pour les

problèmes purement réels et en cas de modes flexibles− La matrice ∆ correspondant au pire cas n’est pas connue

Commande Robuste

Analyse de la robustesse des systèmes LPV

µ-analyse

µ-analyse (5)

Analyse de la robustesseM(s) fait partie du système en boucle fermée où lestransferts exogènes sont supprimés

Analyse de la performance (1)On veut garantir ‖lftu(M(s),∆)‖∞ ≤ 1 ∀∆ ∈ Eθ

M(s)

∆s

---

v2

v1

z2

z1

Commande Robuste

Analyse de la robustesse des systèmes LPV

µ-analyse

µ-analyse (6)

Analyse de la performance (2)Equivalent à µ(M(s)) ≤ 1 avec comme incertitude[

∆s 00 ∆p

]où ∆p ∈ Cm×m

M(s)

[∆s 00 ∆p

]

-

v z

Commande Robuste

Analyse de la robustesse des systèmes LPV

µ-analyse

µ-analyse (7)

Modélisation sous Matlab (1)K = ureal(’K’,10,’Percentage’,50)

J2 = ureal(’J2’,0.01,’Percentage’,50)

AG = [-(f+f1) f -K; f -(f+f2) K; 1 -1 0]

BG = [1; 0; 0]

EG = diag([J1 J2 1])

CG = [0 1 0]

DG = 0

G = dss(AG,BG,CG,DG,EG) : système descripteurEdx/dt = Ax + Bu

Commande Robuste

Analyse de la robustesse des systèmes LPV

µ-analyse

µ-analyse (8)

Modélisation sous Matlab (2)systemnames = ’ G Ktf ’

inputvar = ’[ r1]’;

outputvar = ’[ r-G ]’;

input_to_Ktf = ’[ r-G ]’;

input_to_G = ’[ Ktf ]’;

sysoutname = ’sysbf’;

cleanupsysic = ’yes’;

sysic : bouclage avec le correcteur

Commande Robuste

Analyse de la robustesse des systèmes LPV

µ-analyse

µ-analyse (9)

Analyse du système (1)pole(sysbf.NominalValue)

norm(sysbf.NominalValue,inf)

step(usample(sysbf,10),1.5)

[stabmarg,destabunc,report,info] = ...robuststab(sysbf) : marge de stabilité robuste

Commande Robuste

Analyse de la robustesse des systèmes LPV

µ-analyse

µ-analyse (10)

Analyse du système (2)[M,Delta,BlkStruct] = lftdata(sysbf);

M11 = M(1:szDelta(2),1:szDelta(1))

M11_g = frd(M11,omega) : réponse fréquentiellemubnds = mussv(M11_g,BlkStruct,’s’) :µ-analysefigure; semilogx(info.MussvBnds) : tracé des

bornes

Commande Robuste

Analyse de la robustesse des systèmes LPV

µ-analyse

µ-analyse (11)

Analyse des performances (1)PerfBlock = ucomplexm(’PerfBlock’,...zeros(1,1));

sysbfpmu = lft(PerfBlock,sysbfp,1,1)

[M,NDelta,BlkStruct] = lftdata(sysbfpmu);

M11 = M(1:3,1:3); : on ne garde que les transfertsvers DeltaM_g = frd(M11,omega);

[mubnds] = mussv(M_g,BlkStruct,’sc’);

Commande Robuste

Analyse de la robustesse des systèmes LPV

µ-analyse

µ-analyse (12)

Robustesse en stabilité

Commande Robuste

Analyse de la robustesse des systèmes LPV

µ-analyse

µ-analyse (13)

Robustesse en performance

Recommended