Vous êtes sur la page 1sur 166

Méthodes de synthèse fréquentielle H pour la commande

multivariable et le diagnostic de procédés


 AC560 : Volume (8 CM, 2 TD, 4 TP)
 Mots clefs: H, LMI, analyse, performance, robustesse, FDI,
 Pré-requis
– Automatique fréquentielle classique: fonctions de transfert, schéma-bloc, diagramme de Bode, Black Nichols, Critère de
Nyquist, réglage de correcteurs PI, avance/retard de phases
– Notions classiques d ’algèbre linéaire (rang, valeurs singulières, valeurs propres, symétrie, définie-positive)
– Automatique moderne: analyse matricielle, représentation d’état, commande par retour d’état estimé.
– Cours AC510 : Diagnostic par redondance analytique d'équations (espace de parité, estimation de paramètres,
validation de données)
 Contenu
– Formalisation d’un cahier des charges en Automatique fréquentielle
» Limitation des performances SISO et MIMO
– Robustesse du système en boucle fermée
» Incertitude et robustesse
» Stabilité robuste et analyse des performances
– Synthèse de lois de commande
» LQG
» H loop-shapping (modelage du transfert de boucle)
» H par pondération fréquentielle
– De la Commande H au Diagnostic
» FDI (Detection et localisation de défauts)
» Fault Tolerant Control (accomodation)

1/166
Auteur: Damien.Koenig@esisar.grenoble-inp.fr Version: 2017
Référence

– Laurent El Ghaoui Cours "Commande robuste" École Nationale Supérieure de Techniques Avancées

– Duc G., Font S., 2000, "Commande H et -analyse", éditions Hermes.

– Sigurd Skogestad et Ian Postlethwaite, 1998 « Multivariable feedback control: analysis and design" Edition
John Wiley & Sons

– G. Scorletti et Vincent Fromion, 2003, "Introduction à la commande multivariable des systèmes: méthodes
de synthèse fréquentielle H", Cours de 3ème année de l’ENSI de Caen.

– Denis Arzelier, 2005, « Course on LMI Optimization with applications in Control » www.laas.fr/arzelier

2/166
Auteur: Damien.Koenig@esisar.grenoble-inp.fr Version: 2017
Partie 1: Formalisation d’un cahier des charges en
Automatique fréquentielle

 Objectifs: Assurer un suivi de référence


– En régime nominal
» exemple pour une voiture: masse, vitesse, adhérence au sol fixent
– En régime incertain :
» i.e., dérives de paramètres (exemple pour une voiture: variation de la masse, de la vitesse, de
l’adhérence au sol)
» i.e., perturbations extérieures (exemple pour une voiture: vent, courbure)
 L’asservissement est conçu à partir d’un modèle idéalisé et simplifié du système réel.
– Pour fonctionner correctement, il doit donc être robuste aux imperfections du modèle,
» i.e., aux écarts entre le modèle et le système réel, aux dérives des paramètres physiques et aux
perturbations externes.

3/166
Auteur: Damien.Koenig@esisar.grenoble-inp.fr Version: 2017
Plan : Partie 1

 Formalisation d’un cahier des charges en Automatique fréquentielle

– Éléments introductifs à la commande multivariable


» Normes H2 et H
» Boucle d’asservissement
» Marge de gain et de phase

– Propriétés des asservissements


» Stabilité
» Compensation de pôles et/ou zéros instables
» Performance, Bande passante
» Relation entre S, T, la marge de Module , la marge de gain et marge de phase
» Limitations imposées par la présence d’un zéro et/ou d’un pole instable
» Performance en BF et HF en présence d’un zéro (z) instable

4/166
Auteur: Damien.Koenig@esisar.grenoble-inp.fr Version: 2017
Partie 1 : Définitions des normes (vecteur, matrice, signal,
système)

 Vecteur
 x1  1/ 2
  n T  n 2
» La norme euclidienne de x    R est x  x x   x i 

   i 1 
 x n 

Au
 Matrices A 2  sup représente la notion de valeur singulière
u 0 u
» avec Au
u
A

Au
sup   A 
u 0 u


A    AT A  5/166
Auteur: Damien.Koenig@esisar.grenoble-inp.fr Version: 2017
Partie 1 : Définitions des normes (vecteur, matrice, signal,
système)

 Signaux
» Sur l’espace l2 des signaux de carré sommable, on définit le produit scalaire

x y   x t yt dt
0
» qui induit la norme de l’énergie
1/ 2
 
x 2    x t yt dt 
0 
» La transformée de Fourrier envoie l2 sur l’espace H2 des fonctions X(s) analytique dans Re(s)0 et de carré
sommable. Par l’identité de Parseval, on a

1/ 2
 1  2 
x 2   x  jw  dw 
 2   

6/166
Auteur: Damien.Koenig@esisar.grenoble-inp.fr Version: 2017
Partie 1 : Définitions des normes (vecteur, matrice, signal,
système)

 
Systèmes 1/ 2

 1  * 
» Norme H2: G s  2    Trace G  jw G  jw  
 2   

CeAt B soit par l’identité de Parseval


» Où G(jw) est la transformée de Fourier de
  T tA T T tA 1  *
 B e C Ce Bdt   G  jw G  jw dw
0 2  
» Interprétation : elle représente l’énergie en sortie lorsque l’on injecte un dirac en entrée

Ys  2
» Norme H: Gs    sup max G jw   sup
w Us H 2 Us  2
» Interprétation : elle mesure le gain maximal de la réponse fréquentielle G(jw)

7/166
Auteur: Damien.Koenig@esisar.grenoble-inp.fr Version: 2017
Partie 1 : Définitions des normes (vecteur, matrice, signal,
système)

 Notion de valeurs singulières


– Pour un système SISO, on définit à partir G(s), le gain du système à la pulsation w, par le module
Gs    max Gs 

– Pour un système MIMO, on utilise la notion de valeurs singulières

 
i G jw   i G jw G jw T  i G jw T G jw   
i  1, min m, p 
» Les valeurs singulières étant des nombres réels positifs ou nuls, elles peuvent être classées.

G jw   1G jw   2 G jw     G jw 


» Pour un système monovariable (m=p=1), il existe qu'une seule valeur singulière, en l'occurrence :

G jw   G jw   G jw 
» Les valeurs singulières constituent donc une généralisation de la notion de gain aux systèmes multivariables.

8/166
Auteur: Damien.Koenig@esisar.grenoble-inp.fr Version: 2017
Exemple 1 : SISO
Singular Values
-6

Singular Values (dB)


-8
-10

 Notion de valeurs singulières -12


-14
– Exemple 1: Système SISO
-16
1
G1s  
-18

s2 -20
-22
10-1 100 101
» Par définition Frequency (rad/sec)

 
i G jw   i G jw G jw T  i G jw T G jw   
i  1, min m, p 
» Soit

 1 1   1 
1G jw   1   
 2  jw 2  jw  2
4 w 
» On retrouve la définition du module

1
1G jw   G  jw  
4  w2

9/166
Auteur: Damien.Koenig@esisar.grenoble-inp.fr Version: 2017
Exemple 2: MIMO
 s  20 3s  2


G 2 s   
s  4  s 
2
 2s  10  2
 
s  4 s  2s  10  
 Notion de valeurs singulières  1 2s  15 

– Exemple 2: Système MIMO



 s  4  s 
2
 2s  10  2
 
s  4 s  2s  10  
» Par définition   
i G jw   i G jw G jw T  i G jw T G jw  
i  1, min m, p 

on obtient une matrice carrée de dimension 22 Singular Values

fonction de w où pour chaque w dB 0

il existe 2 valeurs propres 1 et 2 -10

dont les racines forment respectivement -20

les 2 valeurs singulières 1 et 2. -30

-40

-50

-60

-70

-80

-90
10 -1 10 0 10 1 w: rad / sec 10 2

10/166
Auteur: Damien.Koenig@esisar.grenoble-inp.fr Version: 2017
Partie 1 : Boucle d’asservissement

 Boucle d’asservissement wi
wo

» r(t) : consigne ou signal de référence


+ e u y
r
» y(t): signal de sortie ou réponse K G

» e(t): erreur de suivi (tracking error) -

» u(t): commande

» wi(t): perturbation de la commande


n

» w0(t): perturbation de la sortie Boucle de suivi (tracking)

» n(t): bruit de mesure

11/166
Auteur: Damien.Koenig@esisar.grenoble-inp.fr Version: 2017
Partie 1 : Boucle d’asservissement

 Propriétés des asservissements


– Stabilité
Il convient de distinguer la stabilité BIBO (bounded input/bounded output) de la stabilité interne.

• Stabilité BIBO: elle exige que l’énergie des signaux en sortie (y) soit bornée
dès que l’énergie fournie en entrée ( r ) est bornée, i.e.,

y(s)
 Ts   Gs Ks I  Gs Ks 1
r (s) w  w  n 0
i o
• Stabilité interne: elle exige que tous les signaux circulant dans la boucle soient d’énergie finie, i.e.,

Ts   Gs Ks I  Gs Ks 1 y(s)


 Ss   I  Gs K s 1
w o (s) w  n  r 0
i
u (s) u (s) y(s)
  Ks Ss   Gs I  Ks Gs 1
r (s) w  w  n 0 n (s) w  w  r 0 w i (s) w  n  r 0
i 0 i 0 o

Cette notion de stabilité interne est plus restrictive mais plus importante en pratique puisque
les composants à l’intérieur de la boucle sont également sensibles aux énergies infinies

12/166
Auteur: Damien.Koenig@esisar.grenoble-inp.fr Version: 2017
Partie 1 : Boucle d’asservissement

 Stabilité externe
1 s
– Exemple, on considère le système G avec le correcteur K suivant G s   K s  
s(s  1) s 1

y(s) 1
» On obtient dès lors  Ts  
2
r (s) w  w  n 0
i o
1  s  1
» Lequel est BIBO stable, puisqu’il n’y a pas de changement de signe au dénominateur (voir critère de Routh)

 Stabilité interne

y(s) s 1
 Gs I  Ks Gs 1 
 
» Instable, d’après le transfert
2
w i (s) w  n  r 0
o
s 1  s  1
» On constate qu’il y a eu simplification du pole instable s=0, par un zéro de K

1 s 1
Gs Ks   
s(s  1) s  1 (s  1) 2
13/166
Auteur: Damien.Koenig@esisar.grenoble-inp.fr Version: 2017
Partie 1 : Boucle d’asservissement

 Stabilité interne
– Il est donc dangereux d’analyser la stabilité au seul vu des pôles de S(s) et T(s), i.e., aux racines de
det(I+G(s)K(s))=0
– Il faut plutôt calculer le spectre de ABF à partir des réalisations minimales de G et K

A B x  Ax  Bu
» Exemple Gs     
 C 0   y  Cx
avec u(t) = Kx(t).

Soit ABF=A+BK et un spectre de ABF =det(I-(A+BK))=0.

Le système bouclé, présentera alors une stabilité interne si et seulement si (i) < 0, où  sont les vp de ABF.

14/166
Auteur: Damien.Koenig@esisar.grenoble-inp.fr Version: 2017
Partie 1 : Boucle d’asservissement
b
wo

+ e u y
 On considère le schéma général r
K G
– où tous les transferts se réduisent
à la matrice de transfert suivante -

 es    S s  S s Gs   r s  
   
 u s   K s S s  K s S s Gs  bs  n
puisque
Boucle de suivi (tracking)
U (s) U ( s)
  K s S s 
r ( s) b  w  n 0 n( s ) b  w  r  0
0 0

y(s) e( s )
  S s 
wo ( s) w  n  r 0 r ( s) w  n  w 0
i i o

y( s) e( s )
  Gs S s 
b( s ) w  n  r  0 b( s ) w  n  r  0
o o

15/166
Auteur: Damien.Koenig@esisar.grenoble-inp.fr Version: 2017
Partie 1 : Boucle d’asservissement (Obtention des objectifs
de synthèse)
e  S SG  r 
   
 u   KS KSG  b 
 On peut déduire le comportement asymptotique des fonctions de  S SG 
transfert composant M(s) en faisant des hypothèses sur le gain de la BO M  
 KS KSG 
Ss  1 GK 1
– Si le gain de la BO est grand soit G jw K jw   1

 G jw K  jw 1 K jw 1  u (s)


M  jw      K s S s 
 G jw  1
1  n( s )
y( s)
» K agit sur les transferts de r vers  et de b vers   S s 
wo ( s )
» cette approximation intervient notamment en basse fréquence, par exemple si K(s) présente
y(s)
 S s G s 
un pôle en 0, le gain de la BO tend vers l’infini en basse fréquence et les transferts S(s) et
S(s)G(s) ont un zéros en 0, ce qui signifie l’absence d’erreur statique pour les signaux r et b
constant b( s )

» u est directement influencé en basse frequence (module = 1) par b afin de le compenser


(u=b)

16/166
Auteur: Damien.Koenig@esisar.grenoble-inp.fr Version: 2017
Partie 1 : Boucle d’asservissement (Obtention des
objectifs de synthèse)
e  S SG  r 
   
 u   KS KSG  b 
 Seconde hypothèse sur le gain de la BO G jw K jw   1 Ss  1 GK 1

– Si le gain de la BO est faible soit u (s)


 K s S s 
 1 G jw   n( s )
M  jw    
 K jw  G jw K jw 

» K(s) agit sur les transferts de r vers u et de b vers u, tandis qu’il est sans effet sur les
transferts de r vers  et de b vers 

» cette approximation intervient notamment en haute fréquence car le gain du système non
corrigé à naturellement tendance à décroître avec la fréquence et l’on cherche en général à
synthétiser un correcteur qui atténue les hautes fréquences, afin

 d’éviter d’exciter inutilement la commande en dehors de la BP de l’asservissement


 de ne pas solliciter les dynamiques négligées ou mal modélisées en dehors de la
BP

17/166
Auteur: Damien.Koenig@esisar.grenoble-inp.fr Version: 2017
Partie 1 : Boucle d’asservissement (Obtention des
objectifs de synthèse)

 Pour compléter ce raisonnement asymptotique on peut rappeler que :

– la marge de module (distance minimale entre un point du lieu de Nyquist et le point critique -1) est
l’inverse du maximum de S(jw)

– la pulsation au gain unité w0 de la BO : G jw0 K jw0   1


» donne une image de la BP de l’asservissement
» et conditionne fortement le temps de réponse tr  w0tm où tm est le temps de passage au premier
maximum de la réponse indicielle

– La BP détermine la classe de signaux l’asservissement est capable de suivre ou de contrer.


» Plus elle est étendue, plus l’asservissement est capable de réagir à des variations rapides.
» Elle mesure la zone de fonctionnement de l’asservissement.

18/166
Auteur: Damien.Koenig@esisar.grenoble-inp.fr Version: 2017
Partie 1 : Critère de Nyquist

 Le système bouclé est BIBO (entrée bornée, sortie bornée) stable si est seulement si le contour de Nyquist de L(s)=G(s)K(s)
parcouru de w=- à w=+  entoure le point critique (-1,0) un nombre de fois égal au nombre de pôles instables de L(s).

 Exemple
1
– Soit G s   K s   2
s 1 Im(L)
2 2 2 jw
L s    
s 1 1  w 1  w2
2

– Puisque L(s) présente un pôle instable, et que


suivant les w croissants, ce contour entoure une 0, w= Im(R)
-2, w=0 -1
seule fois le point critique, on en conclut que la
BF est stable

19/166
Auteur: Damien.Koenig@esisar.grenoble-inp.fr Version: 2017
Rappel: Nyquist
Marge de Gain Im(G(jw)K(jw))
L(jw180)

Re(G(jw)K(jw)
1 w180
-1 S 

PM
wc 1
GM 
L jw180 
où L jw180   180
 Marge de gain en dB GM db  20 log10 L jw180  L(jw)

» où w180 est la pulsation à laquelle le tracé de Nyquist coupe le demi-axe de phase 180°.
» elle mesure de combien le gain peut varier à cet endroit avant de toucher le point critique (-1)

 Marge de phase PM  L jwc   180 où L jwc   1


» Elle mesure de combien la phase peut varier avant de rencontrer le point critique (-1)

1
 Marge de module S 

» Elle mesure la distance minimale du tracé de Nyquist au point critique

20/166
Auteur: Damien.Koenig@esisar.grenoble-inp.fr Version: 2017
Rappel: Bode
L  KG
 Rappel
101

1 100
GM  1/GM
L jw180 
rad/s
où L jw180   180
wc w180
10-2 10-1 100 101
phase : L
-90° rad/s

101
PM  L jw c   180 
où L jw c   1
PM
-180°

21/166
Auteur: Damien.Koenig@esisar.grenoble-inp.fr Version: 2017
Partie 1: Propriétés des asservissements (Compensation de
pôles et/ou zéros instables )

 Hypothèse
– pour assurer une stabilité interne en présence de pôles et/ou zéros instables on suppose qu’il n’y a pas de compensation
de ces pôles et zéros entre K(s) et G(s) (robustesse aux incertitudes de modèle).

1 s 1
 Exemple: Ps   , K1s   , K 2 s   2
s 1 s 1
– Le correcteur K1(s) compense le pôle instable p=1, on obtient dès lors pour K1(s) et K2(s) respectivement les fonctions de
sensibilité complémentaire 1 2
s  1 1 s  1 2
T1s    , T2 s   
1 s2 2 s 1
1 1
s 1 s 1
– Si l’on considère maintenant une petite variation  du pôle du procédé P  s   1
,
» On obtient s 1  
1 s 1 2
s 1 s 1 s  1   2
T1s   s  1   s  1   , T2 s   
1 s  1 s  1   s  1  s  1 s 2    1s    2 1 
2 s 1 
1
s 1  s 1 s 1  
» T1(s) est alors instable et ce pour une perturbation  très faible (chg de signe dans le denominateur)
» Par contre T2(s) reste stable et ce pour  >-1

22/166
Auteur: Damien.Koenig@esisar.grenoble-inp.fr Version: 2017
Partie 1: Propriétés des asservissements (Performance,
Bande passante)

 Performance
– Un asservissement est performant
» s’il réagit rapidement et suit la consigne avec précision
» ou encore s’il rejette rapidement les perturbations

– Intuitivement, les performances sont d’autant meilleures que le gain de boucle est élevé,
» Cela, peut se justifier aisément par l’étude de la moyenne quadratique de l’erreur (e) sur une période T=2/w,
sachant que
e(s)  1  GKs 1 r (s)  S(s)r (s)
» on obtient
T 2 1 2 T 2
e t dt  1  GK jw  r t dt
0 0
» On voit que cette erreur sera d’autant plus petite que le gain de boucle à la fréquence w |GK(jw)| est élevé.

23/166
Auteur: Damien.Koenig@esisar.grenoble-inp.fr Version: 2017
Partie 1: Propriétés des asservissements (Performance,
Bande passante)

 Performance (Exemple NL)


– On considère le système non linéaire g( x )  x  x 2 asservi par la boucle de suivi suivante
+ e u y
» où k est un gain scalaire r
k g(.)

– On boucle ouverte avec k=1, on observe -

y  r  r2 Boucle de suivi (tracking)


» Le suivi est donc bon que pour r petit et la caractéristique est non linéaire

 On boucle fermée avec un grand gain (k>>1), la relation e  r  k e  e2  


– se réduit à l’expression suivante

  r

r 2 
e  2 r  r
yk ee k  k r
1 k  1  k 1  k 2  1 k
 
» Le suivi est donc bon pour tous r

24/166
Auteur: Damien.Koenig@esisar.grenoble-inp.fr Version: 2017
Partie 1: Propriétés des asservissements (Performance,
Bande passante)

 Performance (Cas linéaire)


– Dans le domaine fréquentiel, le transfert entre l’erreur de suivie et la consigne est donnée par la fonction de sensibilité

S  I  GK 1
» L’asservissement sera performant dans la bande de fréquence [w1,w2] si S jw   0 dans cette bande, i.e.,

max S jw   1, w  w1, w 2 

En effet, on a alors 
max I  GK jw 1  1 
 
or max I  GK jw 1 min I  GK jw   1

max I  GK jw    1 


1 1
soit  1
 I  GK jw 
min

» Ceci nécessite typiquement un gain de boucle élevé dans cette bande, i.e.,

min G jw K jw   1, w  w1, w 2 

 Mais attention, un gain élevé n’implique pas nécessairement toujours de bonne performance
25/166
Auteur: Damien.Koenig@esisar.grenoble-inp.fr Version: 2017
Partie 1: Propriétés des asservissements (Performance,
Bande passante)

 Performance (Limitations imposées par la présence d’un zéro instable ds G)


– La présence d’un zéro instable dans G(s) apparaît notamment quand G(s) présente une dynamique lente et
rapide,
» Exemple : G (s) 
1 2 s8
 
s  1 s  10 s  1s  10
présente s=z=8 comme zéro instable
 Instabilité en présence d’un gain proportionnel élevé
– Exemple : on considère le système SISO : G(s)=z(s)/(s) avec un retour négatif K(s)=k
Ls  kG s  kz s  kz s 
T(s)     cl
1  Ls  1  kG s  s   kz s  cl s 
– Remarques
» Par un retour constant les zéros ne sont pas modifiés
» Par contre les pôles sont modifiés
k  0  cl(s)  (s)
 k    cl(s)  kz(s)
 On constate que pour un gain élevé les pôles de la BF tendent vers les zéros du système,
lesquels sont instables

26/166
Auteur: Damien.Koenig@esisar.grenoble-inp.fr Version: 2017
Partie 1: Propriétés des asservissements (Stabilité )

 Limitation de la bande passante par la présence d’un zéro instable dans G : Performance
en Basse Fréquence
– On souhaite que la sortie suive l’entrée,
– Le cas idéal est bien entendu T(s)=1 pour tous w, i.e. T(s)=L(s)*S(s) avec S(s)=1/L(s)
» Soit une fonction de sensibilité égal à l’inverse du transfert de boucle
» Dans ce cas, sachant que T(z)=0 et S(z)=1
|S|
 On propose
2s 2s
Ss   1  Ts    100
sz  s 
z  1
z 
10-1
 Sz   1 1/2 1 w*1/z
zs
Ts    Tz   0 10-2
sz

On constate que pour w/z=1/2 (i.e., w=z/2) la fonction de sensibilité coupe l’axe 0db, par conséquent la BP en
présence d’un zéro instable est limité et doit être choisi < z/2 de telle sorte que le contrôleur s’approche du
contrôleur idéal (i.e. tel que S=1/L).

27/166
Auteur: Damien.Koenig@esisar.grenoble-inp.fr Version: 2017
Relation entre S et la marge de Gain

Marge de Gain Im(G(jw)K(jw))


L(jw180)

Re(G(jw)K(jw)
1 w180
-1 S 

Pourquoi PM  1
L jw180    GM

wc
S 
GM  S jw180   1   S
S  1  1
 1 
L(jw) GM
– Sachant que 
 1 1
1 1   1
S  S jw180     S GM
1 L 1  L jw180 
 1 1
– Or
     1 
  S GM
1   S
GM   GM 
L jw180    S  1

où L est réel et négatif à w180
28/166
Auteur: Damien.Koenig@esisar.grenoble-inp.fr Version: 2017
Relation entre T et la marge de Phase

Im
-1
 Sachant que
PM/2
 PM  1  L jw c  1 Re
sin   
 2  2 L jw c  2 T jw c 
1
 T jw c  
 PM 
2 sin 
 2 
|-1 - L(jwc)|
 Or
 PM  1  L jw c  1
sin   
 2  2 L jw c  2 T jw c  L(jwc)
-1
1
  T 
 PM 
2 sin  
 2 
 1 
 PM  2 arcsin  
 2  T  

29/166
Auteur: Damien.Koenig@esisar.grenoble-inp.fr Version: 2017
Relation entre S et la marge de Module

 Marge de module Marge de Gain Im(G(jw)K(jw))


L(jw180)

MM  S
1

 S 1   K1 1
Re(G(jw)K(jw)

S w180
-1 
S(jw)
K1
1 PM
1  wc

w1 jw 

k1 L(jw)

30/166
Auteur: Damien.Koenig@esisar.grenoble-inp.fr Version: 2017
Contraintes sur les maximums de S et T

 Maximum de S = (1+L)-1 et T = LS avec L=KG

S  max S jw   2 6db Respect de la marge de module


w

T   max T jw   1.25 2db Limiter les dépassements


w

 Comme S+T = 1 on obtient pour tous w


1  S  T   S  T   1  T   S
S  T  S  T 1

 si S grand alors T  grand

Par contreS et T  ne peuvent pas être simultanément petits

31/166
Auteur: Damien.Koenig@esisar.grenoble-inp.fr Version: 2017
Contraintes sur S et T en fonction des pôles et zéros

 Si p est un pôle instable de G(s) alors il est également pôle du transfert de boucle L=GK et s=p est alors
zéro de la fonction de sensibilité S:

– S(p)=(I+L(p))-1=0 et T(p)=L(p)*S(p)=1

» La preuve est aisée pour un système SISO. G 1 (p)  0  Lp     Tp   1, Sp   0

» Dans le cas MIMO on montre que pour conserver la stabilité (i.e. T(s)=L(s)*S(s) stable), il faut que S(s) compense le pôle instable p de L(s)
autrement dit s=p doit être un zéro de S(s) => S(p)=0 et T(p)=1 sachant S+T=I

 Si z est un zéro instable de G(s) alors il est également zéro du transfert de boucle L=GK et s=z est alors
zéro de la fonction de Sens. complémentaire T:

– T(z)=0 et S(z)=1

» SISO: G(z)  0  Lz   0  Tz   0, Sz   1

» Dans le cas MIMO on montre que pour conserver la stabilité (i.e. S(s) stable), il faut que s=z ne soit pas un pôle de S(s) autrement dit s=z
assure T(z)=L(z)*S(z)=0 (dénominateur 1+L 0)

32/166
Auteur: Damien.Koenig@esisar.grenoble-inp.fr Version: 2017
Contrainte sur S en présence d’un zéro instable sur G
1
S  jw 
w p  jw
 Gabarit fréquentiel sur S en présence d’un zéro (z) instable sur G
– On considère un gabarit fréquentiel w(s) stable qui modèle la fonction de sensibilité S, alors la BF est stable ssi w(s) satisfait la
contrainte inégalité suivante

– Preuve: 1  w p  jwS  jw  w p  z  puisque T(z)=0 et S(z)=1


w p  jw S jw   w p z Sz   w p z 

– On conséquence pour un gabarit unitaire (i.e. sans modelage  commande classique) il faut nécessairement assurer

S jw    1

33/166
Auteur: Damien.Koenig@esisar.grenoble-inp.fr Version: 2017
Contrainte T en présence d’un pôle (p) instable sur G

 Gabarit fréquentiel sur T en présence d’un pôle (p) instable sur G


– On considère un gabarit fréquentiel wT(s) stable qui modèle la fonction de sensibilité complémentaire T, alors la BF est stable ssi
wT(s) satisfait la contrainte inégalité suivante

– Preuve: 1  wT  jwT  jw   wT  p  puisque T(p)=1

– On conséquence pour un gabarit unitaire (i.e. sans modelage) il faut nécessairement assurer

w T  jw T jw    w T p Tp   w T p 

T jw    1

34/166
Auteur: Damien.Koenig@esisar.grenoble-inp.fr Version: 2017
Limitations imposées par la présence d’un pôle
(p) instable
 Par exemple le système G(s)=1/(s-3) présente s=3 comme pôle instable.
– Il faut bien-entendu appliquer un retour pour stabiliser la BF, mais la présence
d’un pôle instable impose une BP minimale, explication.
|wT|-1
 Considérant la gabarit fréquentiel suivant MT
w*BT
1 s 1 MT
w T s    , w T s  
*
w BT M T sM T
1
*
w BT
– lequel est usuel pour un suivi de consigne w*BT/MT

1
 Sachant que w T T  1  T jw    w et T(p)=1 avec p comme pôle instable,
 w T  jw 
on obtient dès lors 1  w T T   w T p Tp   w T p 

– Soit w T p   1

35/166
Auteur: Damien.Koenig@esisar.grenoble-inp.fr Version: 2017
Limitations imposées par la présence d’un zéro instable dans
G(s) (suite)
 Limitation de la bande passante II |Wp-1|
– Soit le gabarit Wp(jw) tel que
1 K1=2
WpS  1  S jw   w
 w p  jw  100
k1w*B w
» où Wp(jw) est généralement un filtre de performance décrit par
w*BK1
s s
 w*B 1 10-1
K1 1 s  w*B k1 1 w*B k1
W p s    W p s    W p s   k1 w*B
40db
*
s  wB k1 s * s
 wB 1 k1=10-2
K1 K1wB *
» Avec
 A : l’erreur statique /yref
W p10  k1 2decades
 Un maximum de la fonction de sensibilité < K1  2 W p1   K1

 w*B est la bande passante minimale

 Si z est un zéro instable du système alors T(z)=0, S(z)=1 soit WpS  Wp z Sz   Wp z 

– or
z
 w*B
K1
w p z   w p S  1  w p z   1
 z  w*B k1

36/166
Auteur: Damien.Koenig@esisar.grenoble-inp.fr Version: 2017
Performance en basse fréquence en présence d’un zéro (z)
instable
 Exemple z est réel, alors toutes les variables du gabarit Wp sont réels et positive, le module de Wp(z)
devient
z
 w*B
K1  1 
w p z   1  w*B 1  k1   z 1  
z  w*B k1  K1 
z
– Pour des données parfaites, à savoir k1=0, K1=2 on retrouve la même limitation de la BP minimale, à savoir w *B 
2

 Autre cas, si z est imaginaire pur : z  j z


 Montrer pour k1=0 que la BP minimale est

*  1 

wB  z 1 
 K 2
 1 

– Pour K1=2, on trouve w *B  0.86 z

37/166
Auteur: Damien.Koenig@esisar.grenoble-inp.fr Version: 2017
Performance en Haute fréquence en présence
d’un zéro (z) instable

 Si l’on considère une atténuation de la fonction de sensibilité S en HF,


on fixe par exemple le filtre de performance suivant
1 s K1
w p s    
K1 wB s K1  1
*
w*B

1
– Pour satisfaire WpS 1  S jw   w il faut pour p=z, que w p z   1
 w p  jw 

Soit pour z réel positive une borne inférieure de la BP, à savoir

1 z z
w p z     1  w p z    w*B
K1 w*B 1
1
K1
Pour K1=2, on peut assurer une performance en HF qu’à partir de w *B  2z

38/166
Auteur: Damien.Koenig@esisar.grenoble-inp.fr Version: 2017
Performance de la fonction de sensibilité complémentaire
en présence d’un pôle réel ou d’un pôle imaginaire
 Cas1 : pôle réel instable s=p
s 1
– On obtient d’après la contrainte w T p   1 et le gabarit fréquentiel wT s   
w*BT K1
* K1
» Une bande passante minimale wBT  p
K1  1
» Soit pour K1=2 w*BT  2p

 Cas2 : pôle complexe instable s=j|p|

» Une bande passante minimale w*BT  1.15 p

» Soit K1=2
w c  1.15p

39/166
Auteur: Damien.Koenig@esisar.grenoble-inp.fr Version: 2017
Partie 2: Robustesse du système en boucle fermée

 Plan
» Incertitude et robustesse
» Stabilité robuste et analyse des performances

40/166
Auteur: Damien.Koenig@esisar.grenoble-inp.fr Version: 2017
Robustesse aux incertitudes

 On peut considérer deux classes d’incertitudes


– Incertitude paramétrique
» Comme son nom l’indique, il s’agit d’incertitude sur les paramètres : gain statique, cte de temps…

– Dynamique non modélisée, négligée


» Par exemple G(s)=G1(s)*G2(s) où G2(s) est négligé (il peut s’agir d’un retard e-s, ou encore d’un mode 1/(s+1))

– Où 0 <  < max, 0 <  < max

» max et max sont connus

41/166
Auteur: Damien.Koenig@esisar.grenoble-inp.fr Version: 2017
Incertitude paramétrique

 Exemple : Gain incertain G p s   k pG o s  , k min  k p  k max

– Où kp est gain incertain borné et Go(s) est un transfert nominal (i.e., sans incertitudes)
 On montre que l’incertitude paramétrique peut se réécrire sous la forme d’un système à
incertitude multiple

wI I Gp
G p s   Gs 1  w I s  I s  ,   jw   1 w
I
G
 I  1

Système avec incertitude multiple


k  k min k max  k min
 Si l’on écrit k p  k 1  w I  , w I  max , k
k max  k min 2
– On obtient dès lors

G p s   kG o s 1  w I  I  , I  1

G s 
42/166
Auteur: Damien.Koenig@esisar.grenoble-inp.fr Version: 2017
Stabilité robuste en présence d’incertitude multiple

 On considère la synthèse de control classique

wI I Gp

K G

– laquelle présente un transfert de boucle


L p  G p K  GK 1  w I  I   L  w I L I , I   1

 La stabilité au sens de Nyquist est vérifié si


– Lp n’entoure pas le point –1  Lp

43/166
Auteur: Damien.Koenig@esisar.grenoble-inp.fr Version: 2017
Stabilité robuste en présence d’incertitude multiple

Im

 Nyquist : Lp n’entoure pas le point –1  Lp


-1

L p  G p K  GK 1  w I  I   L  w I L I , I   1 Re

|1+L|
– En d’autre termes, il faut
L(jw)

» Que la distance |-1-L(jw)|= |1+L(jw)| > |wIL(jw)| w |wIL|

w IL
– Soit  1, w  w IT  1, w
1 L
 En conclusion, la stabilité robuste est garantie si
1
T , w
wI
– Cela montre que T doit être faible dans la zone où l’incertitude relative wI excède 1

44/166
Auteur: Damien.Koenig@esisar.grenoble-inp.fr Version: 2017
Exemple

T1 : pas stable
1/wI

T2 stable

45/166
Auteur: Damien.Koenig@esisar.grenoble-inp.fr Version: 2017
Exemple de mise sous forme LFT: application à la modélisation d’une
dynamique hautes fréquences négligée

 Soit Gp(s) une fonction transfert perturbée et Go(s) celle du système nominal, laquelle
néglige une dynamique qu’on suppose être du premier ordre, avec une constante de
temps  < max :
1
G p s   G o s  ;   max
1  s

– La connaissance de la valeur  max permet d’établir une borne sur l’erreur relative sur la réponse fréquentielle,
à savoir
G p  jw   G o  jw  jw max jw
  
G o  jw  1  jw 1  max jw

– On peut modéliser la dynamique négligée par une réécriture sous la forme d’un système à incertitude
multiple

G p s   G o s 
– où  w1s 1s  soit G p s   G o s 1  w1s 1s 
G o s 

max s
w1s   et  1 jw   1  1s    1
1  max s
46/166
Auteur: Damien.Koenig@esisar.grenoble-inp.fr Version: 2017
Modélisation d’une dynamique hautes fréquences négligée
(suite)

 Avec représentation par LFT des incertitudes de modélisation


– On a
z v
I
G p s   G o s 1  w I s  I s  ,  I  jw   1 w
wI Gp

w
Go  I  1
|w1(jw)|

Système avec incertitude multiple


1/max 1/ w
1
– On veut
I(s)
z v

y H(s) w

Représentation par LFT

– Par identification, on obtient  zs    v(s)   zs    0 1  v(s) 


   Hs        
 ys   w (s)   ys   G o s w1s  G o s  w (s) 

47/166
Auteur: Damien.Koenig@esisar.grenoble-inp.fr Version: 2017
Autre exemple : incertitude paramétrique

1
 Supposons à présent que Gp(s) s’écrive : G p s   avec a o  b  a  a o  b
s  a 2

1
1 1  b 
– En posant a=ao+b, -1 <  < +1, et en remarquant que  1   
s  a s  ao  s  ao 

– On obtient le schéma-bloc suivant, lequel est associé à l’incertitude multiple inverse

z1 z2

v2 
v1
b
b
y
1/(s+ao) 1/(s+ao)
w

I(s)
– qui s’identifie avec le schéma LFT usuel z v

y H(s) w
48/166
Auteur: Damien.Koenig@esisar.grenoble-inp.fr Version: 2017
De l’incertitude paramétrique à la LFT

 Par identification, on obtient


z1 z2

v1 
v2
b I(s)
b
z v
y
1/(s+ao) 1/(s+ao) y H(s)
w w

 b 1 
 0 
 s  ao s  ao 
 z1s    v1s     v1s  
     b b 1  v s  
 z 2 s    Hs  v 2 s     2  2 
 y(s)   w (s)  s  a o 2 s  a o s  a o   w (s) 
      
 b b 1 

 s  a o 2 sa
o s  a o 2 
 0
s    
0 

49/166
Auteur: Damien.Koenig@esisar.grenoble-inp.fr Version: 2017
Propriété des LFT

 Une propriété importante des LFT est que toute association de LFT est encore une LFT.
– Ainsi si nous considérons une boucle d’asservissement, avec un correcteur K(s) appliqué au modèle Gp(s) qui
présente une incertitude paramétrique et une dynamique négligée, nous obtenons à nouveau une LFT

z2 z3

v3 
v2
z1 v1
b
I w1(s) b

w
K(s) y
1/(s+ao) 1/(s+ao)

Boucle d’asservissement avec 2 types d’incertitudes

– Où la structure générale de la matrice d’incertitude est s   diag1s , , 

– Laquelle vérifie les conditions de normalisation 1s   1 ;    1,1  s    1

50/166
Auteur: Damien.Koenig@esisar.grenoble-inp.fr Version: 2017
De l’étude de la robustesse au théorème du faible gain

 L’étude de la robustesse consiste à chercher à garantir par exemple la stabilité pour un


ensemble d’incertitudes (s)
– Si H(s) et (s) sont stables, la seule source d’instabilité provient du bouclage par (s)
– il est donc équivalent d’étudier la stabilité du système de la figure suivante avec M(s)=Hzv(s)

(s)

M(s)
Schéma d’analyse de la robustesse de la stabilité

 Robustesse de la stabilité : analyse non structurée


– Théorème du petit gain: Si M(s) et (s) sont stables, le système de la figure ci-dessus est stable pour tous
(s) tel que ||(s)||   si et seulement si ||M(s)||  -1, où M(s)=Hzv(s)

51/166
Auteur: Damien.Koenig@esisar.grenoble-inp.fr Version: 2017
Preuve du théorème du faible gain

 Si ||M(s)||  -1 alors || (s)M(s)||  || (s)|| ||M(s)||   ||M(s)||   -1 =1 on a donc

  jw M jw   1
 
  1  M T  jw T  jw  jw M jw   0

 Le pire des cas est donné pour une incertitude |(s)|=  soit

  1  M jw 1  M jw   0


  1  M jw   0
   1  M jw 

52/166
Auteur: Damien.Koenig@esisar.grenoble-inp.fr Version: 2017
Conclusion

 Si on considère à nouveau le système Gp(s) avec une dynamique négligée


z v
I wI Gp

K G

– La structure de contrôle peut être réduite au schéma d’analyse de la robustesse de la stabilité

(s)
z v
– Où
M(s)

z  w I s Ks Gs 
 Ms  
v 1  Ks Gs 

53/166
Auteur: Damien.Koenig@esisar.grenoble-inp.fr Version: 2017
Conclusion (suite)

 Dans notre cas ||(s)||   < 1, on en déduit par le théorème du faible gain
– Rappel : (Théorème du faible gain) Si M(s) et (s) sont stables, la BF est stable pour tous (s) tel que ||(s)||
  si et seulement si ||M(s)||  -1, où M(s)=Hzv(s)

– Soit ||M(s)|| < 1 ou encore


1/|w1(jw)|

 w I s K s G s 
1
1  K s G s  
w
K  jw G  jw  1
 
1  K  jw G  jw  w I  jw 
K jw G jw 
– avec
1  K jw G jw 

max s
w1s   et  1 jw   1  1s    1
1  max s

54/166
Auteur: Damien.Koenig@esisar.grenoble-inp.fr Version: 2017
Partie 3: Synthèse de lois de commande
(LQG,H, optimisation LMI)

– Synthèse de lois de commande


» LQG
» H loop-shapping (modelage du transfert de boucle)
» H par pondération fréquentielle

55/166
Auteur: Damien.Koenig@esisar.grenoble-inp.fr Version: 2017
Introduction à la commande par résolution LMI

 Préambule
– Étude de la stabilité d’un système autonome au sens du théorème de Lyapunov

 Théorème de Lyapunov (1890!)


– Une CNS de stabilité est qu’il  une fonction quadratique définie-positive V() = TS, avec
S=ST > 0, telle que V décroît le long de toute trajectoire non nulle du système, i.e., dV/dt < 0.
– Une telle fonction si elle , joue le rôle d’une « énergie totale » pour le système, et est appelée
fonction de Lyapunov
– S’il  une fonction de Lyapunov quadratique prouvant la stabilité asymptotique, on dira que le
système est quadratiquement stable
Aleksandr Mikhailovich Lyapunov
(1857-1918)
 Rappel: Stabilité asymptotique
» une des premières spécifications que l’on cherche à analyser, ou à imposer à un système est sa
capacité de retour à l’équilibre (exemple: pendule, …)
– Définition
» On dira qu’un système est asymptotiquement stable si pour toute CI x(0), on a x(t)  0 pour t 

56/166
Auteur: Damien.Koenig@esisar.grenoble-inp.fr Version: 2017
Analyse par fonction de Lyapunov

 Objectif:
– Prouver la stabilité du système x
 Ax au sens de Lyapunov

 Rappel: Critère de stabilité


Le système x
 Ax est stable si la partie réelle des vp de A sont < 0

 Autre critère : Prouver la stabilité au sens de Lyapunov, i.e. rechercher


une fonctionnelle V(x) = xTSx, avec S=ST > 0 telle que V
 0

 Or
dV( x ( t ))
dt

 x T t  A TS  SA x t   0 
 Le système est donc asymptotiquement stable ssi il  S=ST>0 telle que la
LMI suivante en S est vérifiée

ATS  SA  0

57/166
Auteur: Damien.Koenig@esisar.grenoble-inp.fr Version: 2017
Exemple (système stable)

 On propose A  1

 Le système scalaire x   x est bien évidemment stable, car la vp est < 0

– Au sens de Lyapunov, cela revient à déterminer S=ST>0, telle que,

ATS  SA  0
 Exemple S=2 est une solution au problème posé

A TS  SA  0
 1 * 2  1 * 2  0
 4  0

– Avec S=ST > 0

58/166
Auteur: Damien.Koenig@esisar.grenoble-inp.fr Version: 2017
Exemple (système instable)

 On propose A  1

 Le système scalaire x  x est bien évidemment instable, car la vp est > 0

 Au sens de Lyapunov, il n’existe pas de matrice S=ST > 0, telle que ATS  SA  0

 Preuve par contradiction

AT S  SA  0 , A  1, S  S T  0
 2S  0 , S  0

59/166
Auteur: Damien.Koenig@esisar.grenoble-inp.fr Version: 2017
Cas général: LMI c’est quoi !!!

 Une Inégalité Matricielle Linéaire est une contrainte sur un vecteur réel x m de la
forme
m
FxF0  xi Fi 0
i1

– où les matrices symétriques Fi=FiTnn sont données et le symbole F  0 signifie que F est semidéfinie-
positive, i.e. que uTFu  0 pour tout u

 Exemple
 1 2   p1 p2 
A P

 0  1  p2 p3 

 D’après l’étude précédente le système x  Ax est stable au sens de Lyapunov


s’il existe une matrice P  PT  0 telle que AT P  PA  0

  2 p1 2 p1  3 p2   p1 p2 
Soit 2 p  3 p  0 et p  0
 1 2 4 p2  4 p3   2 p3 
 2 2 0 0 0 3 0 0 0 0 0 0
m  2 0 0 0 3  4 0 0 0 4 0 0
F  x   F0   xi Fi  0    p1    p2    p3  0
i 1 0 0 1 0 0 0 0 1 0 0 0 0
0 0 0 0 0 0 1 0 0 0 0 1
  
60/166
Auteur: Damien.Koenig@esisar.grenoble-inp.fr Version: 2017
LMI c’est quoi !!!

 Des LMIs multiples F(1)(x)>0, …., F(p)(x)>0 peuvent se ramener en une seule, en utilisant
des matrices bloc-diagonales: diag(F(1)(x)>0, …., F(p)(x))>0

 Exemple
– Les contraintes linaires aiT x  bi i  1,, n
» Peuvent s’écrire comme F(x) > 0, en notant,

b1  a1T x 0  0 
 T 
 * b2  a2 x  
F x   0
  0 
 T

 bn  an x

» il s’agit d’une LMI en x

61/166
Auteur: Damien.Koenig@esisar.grenoble-inp.fr Version: 2017
 Lemme de Schur :
Quelques exemples de base  A B
 BT C   0
 
avec A  AT  0, C  C T  0
 Convertir la contrainte quadratique convexe
 1) C - BTA-1B > 0 ,
 2) A - BC-1BT > 0 ,
x  x 0 T R 1x  x 0   1
Avec A =AT > 0, C =CT > 0
– où R=RT > 0 et x0 sont données, en la contrainte LMI Preuve 1): Multiplier à gauche et à droite
resp. par
 1 x  x0 T   0
x  x0  T
 R   I  A1B ,  I  A1B
 0 I   0 I 
 On rencontre plus souvent des LMIs qui portent sur des variables
matricielles, par exemple l’inégalité de Riccati
AT P  PA  PBR 1BT P  Q  0

» où A, B, Q = QT, R = RT > 0 sont des matrices données de tailles appropriées et P=PT est la
variable
– est une LMI en P  AT P  PA  Q PB 
 0
 BT P R 

 Ou encore, le système x  Ax est stable si et seulement si, il existe une


matrice S=ST > 0, telle que ATS  SA  0, il s’agit d’une LMI en S
62/166
Auteur: Damien.Koenig@esisar.grenoble-inp.fr Version: 2017
Quelques exemples de base

 Les valeurs propres de A sont – elles comprises entre –h1 et –h2 ?

– Oui si et seulement si il existe une solution

X=XT>0 qui vérifie les 2 LMI’s AX  XAT  2h2 X  0


T (1)
AX  XA  2h1 X  0

-h1
-h2
 Explication

 A  2I X  X  A  2I T  0  A  2I  : stable   A  2I   0
 10 X  AX  XAT  4 X  0
(1)

0   A  5I  X  X  A  5I T
 A  5I  : stable
  A  5I   0
  A  2
X  XT  0   A  5I

63/166
Auteur: Damien.Koenig@esisar.grenoble-inp.fr Version: 2017
Commande par retour d’état (outils LMI)

 On considère le système LTI


x  Ax  Bu
» avec u = Kx
 Objectif: rechercher K par une synthèse LMI, tel que la BF soit stable
x   A  BK x

 Solution
– Déterminer un X et U solution de la LMI
AX  Bu U  AX  Bu U T  0, X  0

– Le correcteur K est donné par la relation K=UX-1

64/166
Auteur: Damien.Koenig@esisar.grenoble-inp.fr Version: 2017
Exemple de programmation sous matlab

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


% le correcteur K (u=Kx) est donné par résolution
% AX+BU+(AX+BU)'<0 et X > 0
% K=U*inv(X)
 setlmis([]); % ouverture de la procédure de construction de la LMI
X=lmivar(1,[2,1]); % déclaration de X en précisant sa taille 2*2
U=lmivar(2,[1,2]); % déclaration de U en précisant sa taille 1*2
% Déclaration
% S = lmivar(type,struct)
% type = 1 si S est symétrique
% type = 1 et struct = [i,1] -> block size i*i
% type = 2 et struct = [M,N] -> S est rectangle de dimension MxN
lmiterm([1, 1, 1, X], A, eye(2),'s'); % LMI #1: A*X+X'*A'
lmiterm([1, 1, 1, U], B, eye(2),'s'); % LMI #1: B*U+U'*B'
lmiterm([-2, 1, 1, X], 1, 1); % LMI #2: 0 < X
%TERMID(1) = -2 -> right-hand side of the 2-th LMI
lmicont=getlmis; % diag et fermeture de la proc. de construction de la LMI
[ob,val]=feasp(lmicont,[0 1000 1e6 10 0], -0.01); % résolution de la LMI construite
 X=dec2mat(lmicont,val,X); %recupere et assigne a X la solution obtenue)
U=dec2mat(lmicont,val,U); %recupere et assigne a U la solution obtenue)
K=U*inv(X);

65/166
Auteur: Damien.Koenig@esisar.grenoble-inp.fr Version: 2017
Explication : Stabilisation par retour d’état
Sys BF x   A  BK x  
V  x   xT  A  BK T X 1  X 1 A  BK  x  0

Lya Vx   xT X 1x  xT X  A  BK T   A  BK  X x  0


 xT AX  BU   AX  BU T x  0
 Le système bouclé est stable ssi la condition suivante est vérifiée

A  Bu K X  XA  Bu K T  0 (i)

– pour une certaine matrice symétrique X > 0 (correspondant à la fonction de Lyapunov V()= TX-1)

 La condition (i) n’est pas une LMI à la fois en X et K, à cause du terme quadratique KX.
– On pose U=KX, on obtient dès lors une LMI en X et U :

AX  Bu U  AX  Bu U T  0, X  0

66/166
Auteur: Damien.Koenig@esisar.grenoble-inp.fr Version: 2017
Stabilisation par retour d’état
avec placement des pôles entre –h2 et –h1

 Solution

AX  BuU   AX  BuU T  2h2 X  0,


AX  BuU   AX  BuU T  2h1 X  0,
X  XT  0

 Explication voir transparent 63

67/166
Auteur: Damien.Koenig@esisar.grenoble-inp.fr Version: 2017
Commande par Retour de Sorties

 La commande par retour d’état statique vue précédemment peut être


inapplicable, car elle nécessite la mesure complète de l’état (y=x)
– Or certaines variables d’état sont parfois inaccessibles à la mesure, soit parce que le
capteur correspondant est coûteux, ou parce que la mesure requise est trop difficile à
faire de manière précise. Nous sommes donc amenés à considérer des problèmes de
commande en information incomplète, où la loi de commande dépend uniquement de la
sortie mesurée y

 Nous examinons
– la loi de commande par retour de sorties statique u=Ky
– la loi de commande par retour de sorties dynamique u=K(y)
» où K est un opérateur, i.e. un processus (ou filtre)

 x  x  A B
 u   K  y  avec K   C D (18)
     

68/166
Auteur: Damien.Koenig@esisar.grenoble-inp.fr Version: 2017
Stabilisation par retour de sorties statique

 On considère le système simplifié suivant

x   A Bu  x 
 y   C 0   u  (19)
   y  

– avec la loi statique u = K y on obtient,


x  A  Bu KC y x

 Une CNS de stabilisabilité est qu’il existe S telle que

A  Bu KCy T S  SA  Bu KCy   0 , S0 (20)

– Contrairement au cas du retour d’état (Cy = I), le changement de variable X = S-1 ne permet
pas d’aboutir à une LMI.

69/166
Auteur: Damien.Koenig@esisar.grenoble-inp.fr Version: 2017
Stabilisation par retour de sortie dynamique

 On considère le système (19)


x   A Bu  x 
 y   C 0   u 
   y  
– associé à la commande dynamique (18)

 x  x  A B
 u   K  y  avec K   C D
     
 En couplant ces deux systèmes, on obtient le système bouclé
~ ~ ~ ~  A  Bu D C y Bu C  ~
x  A
~  Bu KC y x   x
 B C y A 

– où ~ 
x  xT xT T  nk est l’état augmenté et

~ A 0 ~ 0 Bu  ~  0 I
A  , Bu    , Cy   
0 0 I 0   C y 0 
les matrices qui le compose.

70/166
Auteur: Damien.Koenig@esisar.grenoble-inp.fr Version: 2017
Lemme d' élimination : W  W T
W  MKN T  NK T M T  0
Stabilisation (suite)
W  MU  U T M T  0

et W  NV  V T N T  0
 Le problème se ramène donc à celui de la commande par retour de sorties statique,

A~  B~u KC~ y T S~  S~A~  B~u KC~ y   0 , ~


S 0

– mais la structure particulière des matrices du système augmenté montre du moins dans le cas d’une loi de commande
d’ordre plein, k=n, une solution LMI.
– Cette solution est obtenue en 2 étapes :
» Etape 1 :On transforme la BMI en 2 LMI
» Etape2 : Si V et U existent alors le correcteur K existe et la BMI précédente devient une LMI
~
en K, S étant connue
 Etape 1: On applique le lemme d’élimination (transparent 6) avec
~ ~ ~~ ~~ ~
W  AT S  SA , M  SBu , N  CTy
~ ~ ~ ~
– on obtient qu’une CNS de stabilisabilité par retour de sorties dynamique est qu’ils existent S, X, U, V

– telles que ~ T~ ~ ~ ~~ T ~T~ ~~ ~ ~ ~~ ~ ~ T


A S  SA  SBu U  U Bu S  0  AX  Bu U  AX  Bu U  0 ,   ~ ~
U  UX (21)
~ ~ ~~ ~ ~
AT S  S A  C Ty V  V T C y  0
~~ ~ ~ ~~ ~ ~ T

 S A  VC y  S A  VC y  0 ,  ~
V VT (22)
~ ~
S0, X 0
(23)
~~
XS  I

71/166
Auteur: Damien.Koenig@esisar.grenoble-inp.fr Version: 2017
Étape 1: Réécriture des deux inégalités (21) et (22) en
fonction des matrices A, B, C

 Au vu de la structure particulière
~ A0 ~ 0 Bu  ~  0 I
A  , Bu    , Cy   
00  I 0   C y 0 
– on peux réécrire les deux inégalités (21) et (22) en fonction des matrices du système original, soit

AX  Bu U  AX  Bu U T  0
SA  VC y  SA  VC y T  0

~
– où X (resp. S) est le bloc supérieur gauche de taille nn dans X resp. S~ .

~ ~ ~~
 Il nous reste à examiner la condition S  0 , X  0 , SX  I

72/166
Auteur: Damien.Koenig@esisar.grenoble-inp.fr Version: 2017
~ ~
Étape 1: Transformation de la contrainte S 0 , X 0
en une LMI ~~
SX  I

– Le lemme suivant montre qu’on peut, là encore, réduire ces conditions à des conditions sur les blocs
supérieurs gauches X, S
 Lemme 3 :
~
– Pour toute paire de matrices symétriques (X, S) de Rnn, il existe une matrice X  n  k n  k 
~ ~
telle que X   X *  , X 1   S *  si et seulement si X, S vérifient
 * *  * * 
X I 
KX, S     0 , rang KX, S  n  k
 I S
~ ~ 1 ~ 1 ~
Les matrices (*) sont à déterminer telles que X X  X X  I n k .

 Une solution à ce problème peut être donnée par application d’une décomposition en valeur
singulière de la matrice I n  XS
.
– On en déduit 2 matrices unitaires U1, V1 (i.e. U1U1T=I et V1V1T=I) et une matrice régulière S1
composée des valeurs singulières de I n  XS telle que I n  XS  U 1S1V1T

~ X U1  ~ 1  S V1S1 
Soit la solution X   T
U
 1  U T
1 S S 
V T ,
1 1   X  T 1 
 S1V1  U 1 XV1S1 

73/166
Auteur: Damien.Koenig@esisar.grenoble-inp.fr Version: 2017
Conditions d’existence d’un correcteur dynamique par
retour de sortie

 Théorème: Le système (19) est stabilisable par une loi de commande


d’ordre k de type (18) ssi il existe X, S, U, V telles que

AX  Bu U  AX  Bu U T  0

SA  VC y  SA  VC y T  0 (24)
X I
KX, S     0 , rang KX, S  n  k
I S

 Pour un correcteur d’ordre plein k = n ou supérieure à n, la condition


de rang est nécessairement vérifiée.

74/166
Auteur: Damien.Koenig@esisar.grenoble-inp.fr Version: 2017
Remarque

 Dans tous les autres cas (0  k < n), la condition de rang rend le problème non
convexe,
 X I 
min rang     sous les contraintes LMI en X,U, V, S
S S , X  X T
T
  I S
AX  BuU   AX  BuU T  0
 
SA  VC y  SA  VC y T  0

 ce qui montre que le problème de commande par ordre réduit est notablement
plus difficile que dans le cas plein et la garantie de convergence vers le
minimum global n’est pas assurée
– Remarque le cas, k = 0 correspondant à la loi statique est donc un problème non convexe.
– Par contre pour Cy= I on retrouve les conditions convexes énoncées dans le cas d’une loi de
commande par retour d’état puisque dans ce cas la contrainte sur S disparaît et on est libre de
choisir S = X-1 (voir transparent 21).

75/166
Auteur: Damien.Koenig@esisar.grenoble-inp.fr Version: 2017
Étape 2: Détermination du correcteur dynamique K

 Si les conditions du théorème précédent sont satisfaites, alors on peut construire une loi de
commande en deux étapes
~
– Tous d’abord, on calcule une matrice X qui satisfait aux conditions du lemme 3.
Une telle matrice correspond à une fonction de Lyapunov V~ ~
x  ~
x T X 1~
x
qui prouve la stabilité du système en boucle fermée.

~ est connue et il reste à résoudre la LMI


– Une fois la fonction de Lyapunov déterminée, X

trouver K tel que A  Bu KC y X  XA  Bu KC y   0


~ ~ ~ ~ ~ ~ ~ ~ T

~
– Rappel : La matrice X est donnée par une SVD de I n  XS, et est donnée par l ’expression

~  X U1 
X  T T

T 
U 1  U 1 S S1V1  
» Où U1, S1, V1 sont les paramètres de sortie de la fonction svd(I-XS)

Le théorème (i.e. les LMI 24) garantit que ce problème est bien réalisable.

76/166
Auteur: Damien.Koenig@esisar.grenoble-inp.fr Version: 2017
Analyse du système Entrées-Sorties

 On considère (pour simplifier) le système sans entrées de commande u ni


sorties mesurées y

x  A z Bw   x 
 z    C D  w
   z zw   

 Nous cherchons à qualifier trois types de comportements


– la relation condition initiale-sortie
– la relation entrées-trajectoires
– et finalement le lien entrées-sorties

 Hypothèse
– le système autonome est asymptotiquement stable

77/166
Auteur: Damien.Koenig@esisar.grenoble-inp.fr Version: 2017
Propriétés État-Sortie Rappel : X1/2 peut s’interpréter comme le
« rayon » de l’ellipsoïde

 Considérons d’abord l’effet des CI (données ou incertaine) sur la sortie du système


x  Ax , z  Cz x (5)

– On supposera d’abord que la CI x(0) est donnée


 Bornes sur l’énergie en sortie
– On cherche à évaluer l’impact d’une CI donnée, sur l’énergie obtenue en sortie

T
 z zdt
0
– Supposons qu’il existe une fonction quadratique de Lyapunov V()= TS telle que
dVx 
S  0 et  z T z (6)
dt
– pour tout x, z vérifiant (5)
 Solution
– minimiser x(0)TSx(0) soumis à S > 0 et ATS+SA+CzTCz  0

78/166
Auteur: Damien.Koenig@esisar.grenoble-inp.fr Version: 2017
Bornes sur l’énergie en sortie: x(0) donnée
Système : x  Ax
z  Cz x

 Démonstration
– On intègre l’expression (6), on obtient alors dVx 
S  0 et  z T z (6)
T dt
Vx T   Vx 0    z T zdt
0
– pour tout T  0. Puisque V(x(T))  0, alors
T
0  Vx T   Vx 0   z T zdt
0

– et en conclue que la meilleure borne supérieure sur l’énergie maximale de la sortie s’obtient en
résolvant le problème
T
 z zdt  Vx 0  x 0 Sx 0
T T

ATS  SA  CTzCz   0
0
preuve : S  0 et
– minimiser x(0)TSx(0) soumis à S > 0 et ATS+SA+CzTCz  0
dVx 
S  0 et  z T z
dt
– ou encore sous une formulation en termes de X=S-1
 
 S  0 et x T A TS  SA x T   x T CTz Cz x
AX  XA T XC Tz 
X  0 et  0  S  0 et ATS  SA  CTzCz   0
 Cz X I 
» version non stricte de la condition LMI de stabilité asymptotique
79/166
Auteur: Damien.Koenig@esisar.grenoble-inp.fr Version: 2017
Propriétés Entrées-État

 Nous cherchons maintenant à analyser l’effet d’entrées externes sur le système:


x  Ax  Bw w (7)
 États atteignables avec énergie unité
– Soit Rue l’ensemble des états atteignables avec des entrées d’énergie unité, i.e.

 x, w vérifient (7), x(0)  0


 
R ue  x T  T T 
  w wdt  1, T  0 
 0 
 En d’autre termes on cherche à borner Rue par un ellipsoïde de la forme


    R n TS  1 
– où S > 0

80/166
Auteur: Damien.Koenig@esisar.grenoble-inp.fr Version: 2017
Solution : États atteignables avec énergie unité
Système : x  Ax  Bw w
(7)
où x 0  0
 On suppose que la fonction V()= TS avec S > 0 soit telle que
dVx 
 wT w (8)
dt
– pour tout x, w vérifiant (7)
 On intègre l’expression (8), avec x(0)=0 et V(x(0)) = 0, on obtient alors pour
tout T  0
T
0   S  Vx T    w T wdt  1
T
0
T
T
 On en conclue que pour toute entrée w telle que  w wdt  1
0

– l’ensemble atteignable Rue du système est l’ellipsoïde 


    R n TS  1 
A TS  SA SBw 
déterminée par la contrainte LMI S  0 et  T 0
 BwS I 
1 T T
ou encore X  S , X  0, AX  XA  Bw Bw  0

81/166
Auteur: Damien.Koenig@esisar.grenoble-inp.fr Version: 2017
Propriétés Entrée-Sortie

 Étude de l’effet d’une entrée sur la sortie du système


x  Ax  Bw w
 (i)
z  C z x
x 0   0
 On définit le Gain L2 du système par la quantité
2
z2 2

T 2

T
sup 2
   z zdt    w wdt
w2
w 2 0 0 0
2 
– où la norme L2 d’un signal w est définie par w 2
  w T wdt
0

 Le gain L2 sert à mesurer la quantité d’énergie transmise par le système.


La notion de gain L2 est utile pour quantifier la façon dont le système
rejette les perturbations externes (collectées dans le signal w)

82/166
Auteur: Damien.Koenig@esisar.grenoble-inp.fr Version: 2017
Rappel

 Dans la cas des systèmes LTI, la borne ainsi obtenue est égale à la norme
H de la fonction de transfert du système, i.e

 i G  jw 
G(jw) E ejwt
Eejwt
max Cz sI  A  Bw
1
G(s)
 s0 

G  jw   1   G  jw 
2
w

 3  G  jw 

83/166
Auteur: Damien.Koenig@esisar.grenoble-inp.fr Version: 2017
Exemple 1: Système monovariable
S i n g u la r V a lu e s

-6

-8

S i n g u la r V a lu e s ( d B )
-1 0

 On considère le système -1 2

-1 4

1
 
-1 6

G1 s 
s2 -1 8

 Par définition : -2 0

-2 2
-1 0 1
10 10 10

   
F r e q u e n c y ( r a d /s e c )

i G jw    i G jw G jw T   i G jw T G jw 


i  1, min m, p 
– soit

 1 1   1 
1G jw   1   2
 2  jw 2  jw   4  w 
 Remarque :
– Comme G1 est un système monovariable, on retrouve la définition du module, à savoir

1
1G jw   G jw  
4  w2

84/166
Auteur: Damien.Koenig@esisar.grenoble-inp.fr Version: 2017
Exemple

Singular Values
dB 0

 Système multivariable -10

3s  2
-20

 s  20 

   

-30

G 2 s   
s  4  s 2
 2s  10 s  4 s2  2s  10  -40

 1 2s  15 

 s  4  s 2  2s  10  
s  4 s2  2s  10 
-50

 -60

 D'après la définition : -70

   i G jw G jw


-80

i G jw    i G jw G jw  T T
-90

w : rad / sec
i  1, min m, p 
-1 0 1 2
10 10 10 10

– on obtient une matrice carrée de dimension 22 fonction de la pulsation w où pour


chaque w il existe 2 valeurs propres 1 et 2 dont les racines forment
respectivement les 2 valeurs singulières 1 et 2
– Les valeurs singulières étant des nombres réels positifs ou nuls, elles peuvent être
classées. On notera la plus grande valeur singulière G jw  et la plus petite G jw 

G jw  1 G jw   2 G jw    G jw

85/166
Auteur: Damien.Koenig@esisar.grenoble-inp.fr Version: 2017
Propriétés Entrée-Sortie : Gain L2 Système :
x  Ax  Bw w
 (i)
z  C z x
x 0   0
 Solution
– On suppose qu’il existe une fonction quadratique V()= TS , S > 0 et un scalaire  > 0 tels que, pour
tout t,
dV  xt  T
 z z  2 wT w  0 pour tout x, w vérifiant (i) (*)
dt
Vx t    z T z  2 w T w dt  0
T
– En intégrant l’inégalité de 0 à T, avec x(0)=0, on obtient
0

– Puisque V(x(t)) > 0 alors 0


T
0  V  xt     zT z  2 wT w dt 
 0 z z  dt   0w w dt 
T T

2T

T z2

w2
– où l’inégalité (*) s’écrit
 AT S  SA  C Tz C z SBw 
 0
2 
(ii)
T
 Bw S   I 
» Il reste à rechercher de manière itérative la plus petite borne supérieure  qui admette une solution S>0 de la
LMI (ii)

86/166
Auteur: Damien.Koenig@esisar.grenoble-inp.fr Version: 2017
Ellipsoïdes invariants

 La stabilité asymptotique peut s’interpréter en termes d’Ellipsoïdes invariants


– soit X > 0, et soit  l’ellipsoïde centré à l’origine


    R n T X 1  1 
– (X1/2 peut s’interpréter comme le « rayon » de l’ellipsoïde). On dira que  est invariant pour le système (2) si pour
toute trajectoire x, x(t0)   implique x(t)   pour t  t0 (figure 1)

 x2

x0
x1
x3
Figure 1 : Ellipsoïde invariant

– On peut utiliser l’invariance pour obtenir des bornes sur l’état du système (2), lorsque les CI sont inconnues mais
bornées

87/166
Auteur: Damien.Koenig@esisar.grenoble-inp.fr Version: 2017
Exemple d’application de l’invariance
  1   x0    1 
  2  2
Exemple CI:    
V4    1  V1   1 
 On suppose que   2  2
x 0  P  C0 v1,, v p 

V2   1 
– où les sommets vi du polytope P sont donnés. L’ellipsoïde  contient P ssi
V3    1 
v Tj X 1v j  1, j  1,, p
  2   2

 Grâce au lemme de Schur, la condition ci-dessus peut s’écrire comme


une LMI en X
 1 v Tj 
(5)  2  x2 0   2 et x1 0   2 x2 0   1
   0, j  1,, p
 v j X  V  5
 2
x2 1
 
– la condition(5), assortie de la condition A S+SA  0 garantie que pour toute trajectoire
T

initialisée dans P, l’état reste confiné dans l’ellipsoïde 


– on peut alors chercher par exemple l’ellipsoïde  de « taille » (volume, somme des
longueurs des demies axes, etc) minimale garantissant ces conditions: on obtiendra des x1
pb LMI. Par exemple le volume est proportionnel à la racine carrée de det X, ce qui
montre que le problème de maximisation du volume se ramène à un problème LMI, de
type maximisation de déterminant.

88/166
Auteur: Damien.Koenig@esisar.grenoble-inp.fr Version: 2017
Performances AY  Bu U  AY  Bu U T  0 13

 Bornes sur l’entrée de commande d’un système non perturbé


– On cherche une loi stabilisante u = Kx = UY-1x telle que, pour une CI donnée , la norme
de la commande ne dépasse pas une certaine valeur umax (qui caractérise la saturation de
l’actionneur)

x2
Système BF : x  A  Bu K x

Lyapunov : Vx   x T Y 1x
-umax
 
x0
x1  x   x T A  Bu K T Y 1  Y 1A  Bu K  x  0
V
 x T Y A  Bu K T  A  Bu K Y x  0
umax
x3 u=Kx

Figure : Bornes sur la commande appliquée par ellipsoïde invariant  x T AY  Bu U  AY  Bu U T x  0

– Pour assurer cette propriété, on part de la condition de stabilisabilité (13). Celle-ci assure
que l’ellipsoïde  = { | TY-1  1} est invariant. Supposons que l’on choisisse Y de
manière que x(0)  , i.e.
 1 x 0T 
x 0 Y x 0  1  
T 1
0
x 0 Y 
– D’après la propriété d’invariance de , on en conclut que x(t)TY-1x(t)  1 pour tout t.
Cela nous permet de borner l’état du système et donc la commande u, qui n’est qu’une
projection linéaire de l’état (voir figure ci-dessus)
89/166
Auteur: Damien.Koenig@esisar.grenoble-inp.fr Version: 2017
Bornes sur l’entrée de commande (suite)
AY  Bu U  AY  Bu U T  0, Y  0 (13)

 Par l’ellipsoïde invariant  = {x | xTY-1x  1} la contrainte


ut   u max  Kx t   u max  UY 1x t   u max
– est donc vérifiée à tout instant si la LMI
Y UT   1 x 0T 
 0,  0 (17)
x 0 Y 
2
 U u max I
– est satisfaite. Ensemble les LMI (13) et (17) garantissent la stabilité asymptotique et la propriété de
non-saturation.
 La contrainte (17) est aussi une LMI en x(0), ce qui permet de généraliser ce qui
précède au cas où la CI est inconnue mais bornée.
– Si par exemple,
x 0  P  C0 v1,, v p 

– où P est un polytope donné, de sommets vi, alors la contrainte


garantit la condition de saturation voulue.
Y UT   1 v Tj 
 2 0,  0, j  1,, p
 U u max I  v j Y 

90/166
Auteur: Damien.Koenig@esisar.grenoble-inp.fr Version: 2017
Preuve : Bornes sur l’entrée de commande

 La contrainte
ut   u max  Kx t   u max  UY 1x t   u max
– est vérifiée à tout instant si la LMI suivante est satisfaite

Y UT   1 x 0T  (17)
 0,  0
x 0 Y 
2
 U u max I
 Preuve :
– par le lemme de Schur 17  u max
2
U T U  Y , x 0T Y 1x 0  1 , Y  0

– on pre et post multiplie par Y-1 l’expression 1 et par u2max la seconde inégalité
17  Y T UT UY 1  u 2max Y 1 , x0T u 2max Y 1x0  u 2max , Y  0

– on pré et post multiplie l’expression 1 par x(t)T et x(t) resp. et d’après la propriété
d’invariance de , on a x(t)TY-1x(t)  1 soit

17  x t  UY
T
 UY 1xt   xt T u 2max Y 1xt  ,
1 T
x t T u 2max Y 1x t   u 2max , Y  0
17  ut  22  u 2max

91/166
Auteur: Damien.Koenig@esisar.grenoble-inp.fr Version: 2017
Synthèse H : approche standard par LMI

 Problème standard
– La synthèse H illustrée sur la figure suivante est représentée par un procédé P(s) et son contrôleur K(s) associé
z
w
P(s)
u
y

K(s)

– où

 x  
A B w Bu  x
    x   A B  x 
Ps  :    Cz D zw D zu   K s  :    
z   w   u  C D  y 
 y   C y D yw D yu  u 

 Problème H standard : P(s) et  étant donnés, déterminer K(s) qui stabilise le système bouclé de la figure ci-dessus et assure une
norme H du transfert entre w et z inférieure à 

92/166
Auteur: Damien.Koenig@esisar.grenoble-inp.fr Version: 2017
Hypothèses du pb H standard par LMI

 La synthèse par LMI fournit une autre façon de résoudre le pb standard développé
également par la résolution de 2 équations de Riccati (voir poly cours AC511). Elle est
plus générale, dans la mesure où elle ne nécessite pas, contrairement à l’approche par
équations de Riccati le respect des hypothèses H2, H3 et H4 (l’hypothèse H1 reste
nécessaire) :
Hypothèse classique existe en
commande modale ou en
– H1 : (A, Bu) stabilisable et (Cy, A) détectable encore en synthèse LQG, elle
est nécessaire pour obtenir la
stabilité du système bouclé

Hypothèse nécessaire pour


– H2 : rang(Dzu) = dim(u) et rang(Dyw)=dim(y) avoir un correcteur strictement
propre
A  jwI Bu 
– H3 :  C D zu  est de plein rang colonne pour tout w
 z

A  jwI Bw 
– H4 :  est de plein rang colonne pour tout w
 C D 
 y yw 
– Démonstration des hyp. H3 et H4 (voir poly cours AC511)
93/166
Auteur: Damien.Koenig@esisar.grenoble-inp.fr Version: 2017
Exemple élémentaire

 Les deux schémas suivant sont équivalents


– w=(b v)T est le vecteur des entrées
– z=(e u)T est le vecteur de signaux à contrôler

b
z w
u
K(s) +
x x e P(s)
1/s

+
y v
K(s) u
y

 La représentation de la matrice P(s) s’écrit alors sous la forme standard suivante :

 x  0x  1 0w  1u



 1  0 0  0
P( s ) :  z    x    w   u
  0  0 0 1
 y  1x  0 1w  0u

94/166
Auteur: Damien.Koenig@esisar.grenoble-inp.fr Version: 2017
 x   A Bw Bu  x 
  Dzw Dzu  w 
 x   A B  x 
Algorithme Ps  : z  C K s  :    
     D  y 
z
y C
   y D yw 0  u    u  C

 Hypothèses : Dyu = 0 et (A, Bu) stabilisable et (Cy, A) détectable

 Problème : déterminer le contrôleur dynamique K telle que le système augmenté

 A  Bu D C y Bu C Bw  Bu D D yw  ~
 x    x   A ~
B  ~
x
 x    BC y A B D yw  x    ~  (a)
      C ~
D  w 
 z  C  D DC Dzu C Dzw  Dzu D D yw  w 
 z zu y

soit stable et admette un transfert de norme H <  entre w et z.

Solution : Soit V ~ ~
 x ~
xT X ~
x  0 une fonction de Lyapunov candidate telle que

dV ~x T
 z z   2 wT w  0 pour tout ~
x , w vérifiant (a) (b)
dt
 Algorithme
– Étape 1: l’inégalité (b) est solution du pb, la dérivation de la fonction de Lyapunov candidate le long
des trajectoires du système augmenté transforme l’inégalité en une BMI en X ~
, K
– Étape 2: par le lemme d’élimination on transforme la BMI en 2 LMI où K n’intervient plus X ~
, K
– Étape 3: La solution des 2 LMI garantit que le correcteur K existe. X ~ est alors connue et la BMI en
devient alors une LMI en K, dont la solution fournit le correcteur K.

95/166
Auteur: Damien.Koenig@esisar.grenoble-inp.fr Version: 2017
~ ~ ~
x  A~x  Bw dV ~x T
Résolution ~
z  C~
~
x  Dw
(a)
dt
 z z   2 wT w  0 (b)

 Étape 1: L’inégalité (b) est solution du pb, la dérivée de V le long des trajectoires du système augmenté (a) transforme
l’inégalité (b) en une BMI :
 2 ~T ~
  I D D
~ T ~ ~~ T
 C D  XB   
0
 C

~ T ~ ~~
D  XB 
~ ~ ~~ ~ ~
 AT X  XA  C T C   


~ ~ ~ ~
– C’est une BMI car A , B , C , D sont fonctions de K Lemme d’ élimination : W=WT

 Étape 2: On applique le lemme d’élimination pour éliminer K, W  MKN T  NK T M T  0


Cela revient à écrire la BMI ci dessus sous la forme W  MU  U T M T  0
  QT K T P  PT KQ  0 
W  NV  V T N T  0
– on obtient après quelques manipulations les 2 LMI suivantes

T CTz  T Bw 
T
A S  SA SBw  AR  RA T RCTz
 NS 0   NS 0   NR 0   NR 0 
   BTwS  I n w T
D zw    0  
 0 In   Cz R  I n z Dew  0

 0 I n z    0 I n z   w  
  0 I n w 
 Cz D zw  I n z   BTw DTzw  I n w 

 BuT   Cy 
N R  Ker  T  N S  Ker  
D  
 eu   D yw 

96/166
Auteur: Damien.Koenig@esisar.grenoble-inp.fr Version: 2017
Correcteur d’ordre plein (pb convexe)

 Étape 2 (Suite)
Il reste à rechercher la valeur optimale de  en résolvant le problème d’optimisation convexe

 AR  RAT RC T Bw 
 NR 0 T  z
 NR 0  R

In 
0
min  sous    Cz R  I n z Dew  0
  0 I nw   In S
R  RT , S  S T  0 I nw   T T
 B w D zw  I nw 
 AT S  SA SB C Tz 
T w
N
 S 0  T  N S 0 
   Bw T
S  I nw Dzw  0
 0 In    0 I nz 
 z 
 Cz
 Dzw  I n z 
~
 Étape 3: A partir des matrices R et S solutions du problème précédent, X est maintenant connue, la BMI

 2 ~T ~
  I D D 
~ T ~ ~~ T
 C D  XB  
0
 
 C
~ T ~ ~~
D  XB  ~ ~ ~~ ~ ~
 AT X  XA  C T C 


devient une LMI en K, dont la solution fournit le correcteur K

97/166
Auteur: Damien.Koenig@esisar.grenoble-inp.fr Version: 2017
Problème H standard par résolution LMI

 Mise en forme pour la synthèse


– Considérons l’exemple classique d’un système asservi où G(s) est un
modèle du système à asservir et K(s) le correcteur à déterminer pour
asservir la sortie q sur la référence r.
– Le signal b est une perturbation.

+
-
r  K(s)
u
G(s) q
-

98/166
Auteur: Damien.Koenig@esisar.grenoble-inp.fr Version: 2017
Obtention des objectifs de synthèse : deux approches
e1 e2
w2(s)
w1(s)
d
w3(s)
b

+
-
r  K(s)
u
G(s) y
-

 Par l’introduction de fonction de pondération

– Mise en œuvre par l’introduction de fonctions de pondération


– Pour atteindre les objectifs précédents, on peut introduire des pondérations sur les
différents signaux, qui prendront la forme de filtres permettant, suivant le signal auquel
elles s’appliquent, de privilégier un domaine de fréquences particulier.
– Considérons à cette fin le schéma suivant dans lequel  est pondérée par le filtre w1(s), la
commande u par w2(s) et l’entrée de perturbation b est la sortie d’un filtre w3(s)

 Par "loop shaping"


– Consiste à modeler le transfert de boucle de telle sorte ce transfert présente un bon
compromis P/R

99/166
Auteur: Damien.Koenig@esisar.grenoble-inp.fr Version: 2017
e1 e2
w2(s)
w1(s)
Mises en œuvre par l’introduction de fonction de w3(s)
d
b
pondération
+
r +  K(s)
u
G(s) q
-

 En considérant r et d comme des entrées et e1, e2 comme les signaux à


surveiller, on obtient dès lors :

 E1s    w1s Ss  w1s Ss Gs w 3 s   R s 


   
E s 
 2   2 w s K s Ss  w 2 s K s Ss G s w 3 s   D s  

Ss  1 GK 1

 Le problème H standard qui en découle est


– déterminer un scalaire  > 0 et le correcteur K(s) stabilisant le système bouclé et assurant :

 w1s Ss  w1s Ss Gs w 3 s  


   (**)
 w 2 s Ks Ss  w 2 s Ks Ss Gs w 3 s  

100/166
Auteur: Damien.Koenig@esisar.grenoble-inp.fr Version: 2017
Mises en œuvre par l’introduction de fonction de
pondération (Suite) e  S SG  r
  M       (i)
u  KS KSG   b

 w1s Ss  w1s Ss Gs w 3 s  


   (ii)
 w 2 s Ks Ss  w 2 s Ks Ss Gs w 3 s  
 Avantage
– Bien que le pb (i) est plus simple, l’avantage de considérer ce pb est que les filtres w1(s),
w2(s), w3(s) permettent de modeler les différents transferts S, KS, SG et KSG
– Les propriétés de la norme H assurent en effet que si la condition (ii) est vérifiée, alors
les 4 conditions suivantes le sont aussi :


w1s Ss      w   S jw   (1)
w1 jw 

 (2)
w 2 s Ks Ss      w   K jw S jw  
w 2  jw 


w1s w 3 s Ss Gs      w   S jw G jw   (3)
w1 jw w 3  jw 


w 2 s w 3 s Ks Ss G s      w   K jw S jw G jw   (4)
w 2  jw w 3  jw 
– On voit donc que la réponse fréquentielle de chacune des fonctions S, KS, SG et KSG
est contrainte par un gabarit qui dépends des filtres choisis.

101/166
Auteur: Damien.Koenig@esisar.grenoble-inp.fr Version: 2017
MM  min  1  H BO  min 1  KG
Allure typique des différents gabarits  min 1 / S( jw )  1 / maxS( jw ) 
1
 1 / S( jw )  
perturbation  écart
K1
consigne  écart
S(jw) S(jw)G(jw)
w3 constant
K1
1 1 
1 
 
w1 jw  w1w 3 w3 variable

k1

 Le gabarit sur S est fixée à une valeur k1 faible  Le gabarit sur SG dépend des 2 filtres w1(s) et
en basse fréquence pour assurer les objectifs de w3(s).
précision
 Dans certain cas il suffit de prendre w3(s)
 La pulsation 1 pour laquelle le gabarit coupe constant et faible (exemple = 10-2), ce qui
l’axe 0db peut être interprétée comme la BP permet de régler l’atténuation en basse
minimale souhaitée pour l’asservissement. fréquence.
 La valeur K1 du gabarit en haute fréquence  Mais w3(s) permet également de modifier le
limite le maximum de la réponse fréquentielle comportement de SG en moyenne fréquence,
de S (i.e. sa norme H), ce qui impose une MM pour obtenir un comportement transitoire
au moins égale à 1/K1. correct en réponse à une perturbation.

102/166
Auteur: Damien.Koenig@esisar.grenoble-inp.fr Version: 2017
Allure typique des différents gabarits
perturbation  commande
K(jw)S(jw)G(jw)
consigne  commande

K(jw)S(jw) 1 

K2 w 2w3

w 2  jw 

1 
2
k2
 Dans certains cas on peut préférer ajuster par
w3(s) le gabarit sur KSG plutôt que le gabarit
sur SG, afin par exemple de satisfaire un
gabarit d’atténuation assurant la robustesse de
la stabilité aux dynamiques négligées.
 Les valeurs K2 et k2 du gabarit sur KS ont en
général assez peu d’importance, tandis que le  Mais w3(s) permet également de modifier le
paramètre le plus utile est 2 comportement de SG en moyenne fréquence, ce
qui peut s’avérer utile pour obtenir un
comportement transitoire correct en réponse à
une perturbation.

103/166
Auteur: Damien.Koenig@esisar.grenoble-inp.fr Version: 2017
Mise sous forme standard

 En pratique, on choisit les filtres w1(s), w2(s), w3(s) d’après les


considérations précédentes et on résout le problème H correspondant,
qui donne la valeur de  et le correcteur.
 Bien sur la valeur de  n’est pas connue à l’avance, elle intervient dans
les gabarits et on oriente le choix des filtres de façon à avoir une valeur
de  proche de 1.
 Une fois les filtres choisis, il reste à mettre le problème sous la forme
standard, i.e.,

e1 e2
z
w2(s) w
w1(s)
d P(s)
b w3(s) u
y
-
r +  K(s)
u
G(s) y
K(s)
-

104/166
Auteur: Damien.Koenig@esisar.grenoble-inp.fr Version: 2017
Identification des E/S e2
e1
w2(s)
w1(s)
d
b w3(s)
-
 Entrées r +  K(s)
u
G(s) q
– w = [r, d]T -

 Signaux surveillés z
w
– z = e = [e1, e2]T P(s)
u
y
 Entrées du correcteur
–  K(s)

 Sorties du correcteur
– u
 A Bw Bu  x
 x    
Ps  :    C Dzw Dzu  w 
 z   z  u 
 La représentation d’état    C y

D yw D yu  

utilisée pour résoudre le pb H est obtenue en considérant une


représentation d’état pour chaque fonction de transfert G(s), w1(s),
w2(s), w3(s)

105/166
Auteur: Damien.Koenig@esisar.grenoble-inp.fr Version: 2017
Représentation d’état

 Pour chaque fonction de transfert G(s), w1(s), w2(s), w3(s)

Gs   entrée : u  b sortie : y


 x   A 0 0  BC3  x   0  BD 3   B
 x  Ax  Bu  b          
  x 1     B1C
A1 0 0  x1   B1 0  r   0 

 y  Cx  x   0          u
0 A2 0 x 0 0  d  B2
 2    2     
w1s   entrée :  sortie : e1   x 3   0 0 0 A 3  x 3   0 B3   0 
x 1  A1x1  B1r  z  x 
 

e1  C1x1  D1r  z   e1    D1C C1 0 0  x1   D1 0  r   0 
           u
 e2   0 0 C 2 0  x 2  0 0  d   D 2 
w 2 s   entrée : u sortie : e 2   
 x3 
x 2  A 2 x 2  B2 u
 x 
e 2  C2 x 2  D 2 u  
 x1  r
   C 0 0 0   I 0    0 u
w 3 s   entrée : d sortie : b  x  d
 2 
x 3  A3 x 3  B3d  x3 

 b  C3 x 3  D 3 d

106/166
Auteur: Damien.Koenig@esisar.grenoble-inp.fr Version: 2017
Conditions d’existence par résolution LMI

 Hyp: On considère (A, B) stabilisable et (C, A) détectable.


– la partie non commandable est constituée par le filtre w3(s) et la partie non observable par les
filtres w1(s), w2(s)
– L’hypothèse de détectabilité et de stabilisabilité impose donc de choisir des filtres à pondération
stables.

107/166
Auteur: Damien.Koenig@esisar.grenoble-inp.fr Version: 2017
Exemple Modélisation
 dI
L dt  RI( t )  K et   Au ( t )  b 

J d  K I( t )  at 
c
 dt
 Moteur à courant continu 
t   d
 dt
 
I q ( t )  t 
 N

u ampli , 
Réducteur : 1/N

b moteur 
q

 où
– u est la tension de commande
– b une perturbation constante (type tension offset)
– q la mesure de position

108/166
Auteur: Damien.Koenig@esisar.grenoble-inp.fr Version: 2017
Objectifs et modèle de synthèse

 Objectifs de l’asservissement
– BP : c=100rd/s
– marges de module : 0.6 (=1/K1)
– amplitude de la commande « raisonnable »
– erreur statique du à b inférieure à 1%
– gain entre la référence et la commande inférieure à 2 pour tout w

 Modèle de synthèse simplifié

Q(s) 240
G s   
Us  s1  0.015s 

– pour effectuer l’asservissement, on peut considérer ce modèle simplifié (L=0), car la constante de temps ainsi
négligée L/R=0.862.10-3 (p~104) est hors de la BP

109/166
Auteur: Damien.Koenig@esisar.grenoble-inp.fr Version: 2017
consigne  écart
1
Proposer les filtres w1, w2 et w3 w1 jw
; S(jw)

K1
1

k1w*B
 Le filtre w1(s) est choisi de telle sorte que le bode de 1/|w1(s)|
w*BK1
» coupe l’axe 0db à 100rd/s (BP demandée)
w*B
» présente un gain en haute fréquence de 1.7 (=1/0.6) de façon à limiter la norme H de la fonction
de sensibilité et garantir ainsi une marge de module de 0.6
» présente un gain suffisamment faible en basse fréquence k1

 Soit s +20db/dec
1 w=w*B
w*B k1 e  S SG  r
1   M      
W1 s   k1
w=k1w*B

s -20db/dec u  KS KSG   b


1
K1w*B
Bode Diagrams

 w1s Ss  w1s Ss Gs w 3 s  


From: U(1)

Bode de 1/w1(s) 20

  
0
             
 w 2 s K s S s w 2 s K s S s G s w3 s   
Phase (deg); Magnitude (dB)

-20

-40

-60

Phase de 1/w1(s) 100

80 min
T T
 sous 24a, b, c 
60
R  R , SS
To: Y(1)

40

20

0
-2 -1 0 1 2 3
10 10 10 10 10 10

Frequency (rad/sec) 110/166


Auteur: Damien.Koenig@esisar.grenoble-inp.fr Version: 2017
consigne  commande

Proposer les filtres w1, w2 et w3 K(jw)S(jw)

K2

 Le filtre w2(s) est choisi de telle sorte que w 2  jw 
– le gain de correcteur chute dans les hautes fréquences
» afin de limiter la sensibilité au bruit 1 
2
» et tenir compte du caractère incertain du modèle dans cette zone
» Rappel : on a négligé le pole 1/L/R=104
k2
 Procédure,
– On fixe w2(s)=w3(s)=10-2 (par exemple)
» on ajuste w2 de telle sorte que la fonction de sensibilité S suive au plus près le gabarit 1/w1 et perturbation  commande
assure un  proche de 1
» la valeur w2=0.5 (1/w2=2) est retenue, valeur pour laquelle la norme H de la matrice pondérée K(jw)S(jw)G(jw)

 w1s Ss  w1s Ss Gs w 3 s  


   1 
w
 2 s K s Ss  w 2 s K s Ss G s w 3 s   
» donne  = 0.957 et assure donc un transfert consigne/commande < 2 pour tout w w 2w3
– On augmente progressivement w3 jusqu’à atteindre effet significatif sur  , en veillant toutefois à ce que
celui-ci ne dépasse pas excessivement 1 :
» on obtient  = 1.1 pour w3 = 0.015

– Enfin on introduit une atténuation en haute fréquence sur le gabarit 1/w2 +20db/dec
pour filtrer le pole 1/L/R=104 négligé
20log2 w=1000
1 1 s 50000
 w=50000
w 2s  0.51 s 1000
-20db/dec
Rq: le filtre W2(s) assure un transfert directe, i.e., D0 (Hyp H2 est ainsi vérifiée)
111/166
Auteur: Damien.Koenig@esisar.grenoble-inp.fr Version: 2017
Réponses fréquentielles des transmittances 1/w1,
1/w2, 1/w1w3, 1/w2w3
1/w1 1/w2

From: U(1) From: U(1)


20 10

0 0
Phase (deg); Magnitude (dB)

Phase (deg); Magnitude (dB)


-20 -10

-40 -20

-60 -30

100 0

80
-20
60
To: Y(1)

To: Y(1)
-40
40
-60
20

0 -80
-2 -1 0 1 2 3 2 3 4 5 6
10 10 10 10 10 10 10 10 10 10 10

Frequency (rad/sec) Frequency (rad/sec)

1/w2w3

1/w1w3 From: U(1)


30
From: U(1)
40 20

20 10

Phase (deg); Magnitude (dB)


0
0
Phase (deg); Magnitude (dB)

-20
-10
-40
-20
-60
0
100

80 -20

To: Y(1)
60
To: Y(1)

-40
40
-60
20

0 -80
2 3 4 5 6
10
-2 -1
10 10
0 1
10 10
2 3
10 10 10 10 10 10
112/166
Auteur: Damien.Koenig@esisar.grenoble-inp.fr Frequency (rad/sec) Version: 2017 Frequency (rad/sec)
Recherche de K

 Les LMI 24a,b,c étant vérifiées,


» a partir des matrices R et S solutions du problème précédent une résolution par LMI donne le correcteur K
9.675 1 s / 26 1 s / 64 1 s / 50000
Ks  
s  0.075 1 s / 375 1 s / 931 1 s / 22500
» cette résolution consiste à résoudre la BMI suivante en X=X ’> 0 obtenue à partir du système bouclé augmenté du correcteur K

 A Tf X  XA f XBf CTf 
 
T T
 Bf X  I n w Df   0
 
 C f D f  I nz 

 Système bouclé augmenté du correcteur

 x   A f Bf  x 
A c Bc  x c  A c x c  Bc y  x c     x c 
K ;     C f D f  
 Cc D c  u  Cc x c  D c y  z  w
» cela est une BMI en X, Ac, Bc, Cc, Dc, et devient une LMI en Ac, Bc, Cc, Dc, par une SVD de X telle que

 S N 
X T  
 N  M RN 

» dont la résolution fournit le correcteur K

113/166
Auteur: Damien.Koenig@esisar.grenoble-inp.fr Version: 2017
Réponse fréquentielle de la BO

– Le cahier des charges de BO est vérifiée


» la pulsation au gain unité est égale à 100rd/s
» les marges de gain et de phase sont égales à 20db et 55° respectivement

KG

Gm=21.892 dB (at 555.72 rad/sec), Pm=55.806 deg. (at 92.145 rad/sec)


200

100

0
Phase (deg); Magnitude (dB)

-100

-200

-300

-50

-100

-150

-200

-250

-300
-2 0 2 4
10 10 10 10

Frequency (rad/sec)
114/166
Auteur: Damien.Koenig@esisar.grenoble-inp.fr Version: 2017
Réponse fréquentielle du correcteur
– le correcteur présente un gain élevé (ce qui assure une erreur statique négligeable vis à vis des perturbations
constantes)
– le correcteur présente une avance de phase au voisinage de la BP et un filtrage des HF

From: U(1)
50

0
Phase (deg); Magnitude (dB)

-50

-100

50

0
To: Y(1)

-50

-100

-150
-2 0 2 4 6
10 10 10 10 10

Frequency (rad/sec)

115/166
Auteur: Damien.Koenig@esisar.grenoble-inp.fr Version: 2017
Réduction du correcteur

 Le correcteur à un pôle en -0.075 proche de l’origine et un pôle en -22500 très éloigné dans le
demi plan gauche,
– son influence est négligeable sur les réponses fréquentielles

 Remplacement du pôle en -0.075 par un pôle en zéros


 Suppression des polynômes 1+s/50000 et 1+s/22500
=> réduction d ’une unité l ’ordre du correcteur sans changer en rien ses performances
 On implante finalement le correcteur ci-dessous, lequel est décrit par un correcteur PI, un
filtre à avance de phase et un filtre passe bas intervenant au-delà de la BP :

9.6751 s / 26 1 s / 64 1


Ks  
s 1 s / 375 1 s / 931

116/166
Auteur: Damien.Koenig@esisar.grenoble-inp.fr Version: 2017
Commande H par modelage du transfert de boucle
(loop shaping)

 On appliquera pour cela la synthèse H standard avec insertion de pré et post filtre dans
la boucle de régulation.
Ga s 
r  y
+ u
K(s) W1(s) G(s) W2(s)
-

 Le problème revient alors à fixer ces filtres W1 et W2 de telle sorte que le compromis
Performance/Robustesse soit atteint P

R
117/166
Auteur: Damien.Koenig@esisar.grenoble-inp.fr Version: 2017
Méthodologie

 On Ajuste les filtres W1 et W2 de telle sorte que les valeurs singulières de Ga s   W2 s Gs W1s 

 présentent un gain élevé en BF (assurant ainsi le rejet des perturbations constantes et le suivi de consigne)
 une coupure de l’axe 0db à 100rd/s (BP souhaitée)
 une atténuation en HF (robustesse des dynamiques négligées et bruits)

 Résoudre le problème H standard. On considèrera pour cela le procédé augmenté


Ga(s), la fonction de sensibilité S  1  KGa 1 , la matrice de transfert
   S SGa  r
  M        
u   KS KSGa  b
 et la réalisation P(s) issue du problème de synthèse H standard, à savoir

  r 
z  w 
u  P(s)
b

 K(s) u

118/166
Auteur: Damien.Koenig@esisar.grenoble-inp.fr Version: 2017
Hypothèse classique sur la boucle de transfert en BF

1
 La première inégalité  S a    assure que la MM est supérieure à . En conséquence
ajuster le filtre pour une marge de module > 1/2 implique un   2 

 Pour des systèmes mono variable un seul filtre suffit, on ne parle pas de pré et post filtre.
1 1
Ga K  1 Sa   S a Ga  
 En basse fréquence, généralement soit Ga K K
1
KS a   KSaGa  1  
 1 Ga
1 1 1
       K 
K  K  

1 1 1
       Ga K 
Ga K  Ga K  

1 1
 Or   K  ,  G a K    G a   K  et  Ga K    Ga   K    Ga  soit
 
1
 Ga K    Ga 

119/166
Auteur: Damien.Koenig@esisar.grenoble-inp.fr Version: 2017
Hypothèse classique sur la boucle de transfert en HF

 En haute fréquence, généralement Ga K  1 soit Sa  1   S aGa  Ga  

KSa  K   KSaGa  KGa  


 Ga K   

– Or  Ga K    Ga  K  et  K   

 Ga K    Ga  K    Ga 

 En conclusion on vient de monter que le transfert de boucle est borné

1
en basse et haute fréquence respectivement par  Ga K    Ga  et  Ga K    Ga 

 Il suffit dès lors d’ajuster Ga et si une solution LMI existe au Pb H standard alors nécessairement le
compromis performance/robustesse du transfert de boucle sera assuré au facteur près  1, 

120/166
Auteur: Damien.Koenig@esisar.grenoble-inp.fr Version: 2017
Commande H par introduction de fonction de
pondération: application système incertain

 Commande d’une injection de moteur diesel


 extrait de « application of H-infinity design to automative fuel control » Nippodenso Co.
(premier équipementier automobile japonais) et du cours de G. Scorletti (voir ref.)
– Les normes anti-pollutions, le prix du carburant et les demandes des consommateurs en matière de
performance rendent indispensable l’injection d’une quantité relativement précise du carburant.
– Le système à commander est donc une injection de carburant pour moteur diesel.
– Descriptif: Le carburant alimente la chambre de compression où il est comprimé par la came. Sa mise sous
pression le pousse par l’injecteur dans la chambre de combustion du moteur. Dans cette chambre de
compression une fuite existe. Elle est ouverte (fermée) par une sorte d’anneau qui translate de droite à gauche
(de gauche à droite). Cela permet de commander la quantité de carburant entrant dans la chambre de
combustion. Le déplacement de l’anneau est commandé via un bras de levier par un solénoïde. On va donc
agir sur le courant envoyé dans ce dernier. La position de l’anneau est mesurée par un capteur de position
placés près de l’actionneur. C’est cette position qui va être commandée.

121/166
Auteur: Damien.Koenig@esisar.grenoble-inp.fr Version: 2017
Cahier des charges

 Les spécifications que doit satisfaire le système se traduisent par l’asservissement de la


position de l’anneau. On cherche un contrôleur qui permettent de remplir les
spécifications suivantes :
– 1) Suivi de consigne échelon
– 2) Rapidité de la réponse (0.2 sec)
– 3) Fonctionne pour plusieurs températures (0°, 25° et 60°)
– 4) Pour des raisons d’implémentation il faut établir un correcteur de faible complexité

 Les spécifications de performances (spécifs. 1 et 2), de robustesse (spécif. 3) et de


simplicité (spécif. 4) du cahier des charges sont traduites en minimisant la norme hinfini
d’une matrice de transfert solution du problème. Mais pour cela il est nécessaire de
disposer d’un modèle.

122/166
Auteur: Damien.Koenig@esisar.grenoble-inp.fr Version: 2017
Modèle du système

 Le comportement de l’injection pourrait être considéré comme linéaire si le carburant


n’avait pas une viscosité fluctuant fortement avec la température. Les informations dont
on dispose sur le système sont obtenues par identification de 3 modèles linéaires
stationnaires
 1.736e  2 p 2  493.9 p  3.137  105
G00  p  
p 3  98.34 p 2  9223 p  8.771 10 4

5.5 p 2  400 p  4.4  105


G25  p  
p 3  93.7 p 2  9520 p  1.21 105

4.677 p 2  286 p  5.05  105


G60  p  
p 3  91.53 p 2  10 4 p  1.72  105

123/166
Auteur: Damien.Koenig@esisar.grenoble-inp.fr Version: 2017
Modèle d’incertitude additive

 On décide de tenir compte de ces trois modèles en définissant un modèle d’incertitude


additive correspondant à un ensemble de systèmes G(p) tels que :

G p   G25  p    p 

– Où (p) est caractérisé par un transfert W (jw) tel que | (jw) | |W (jw)|.
Singular Values
0
Goo-G25
 Ici W (jw) est choisi tel que: -10 G60-G25

-20

-30

 G00  jw  G25  jw  W  jw

Singular Values (dB)


-40

 G60  jw  G25  jw  W  jw -50

-60

-70

-80

-90

-100
-2 -1 0 1 2 3 4 5
10 10 10 10 10 10 10 10
Frequency (rad/sec)

Tracés de G00  jw  G25  jw , G60  jw  G25  jw


124/166
Auteur: Damien.Koenig@esisar.grenoble-inp.fr Version: 2017
Critère

 Construction du critère - Spécifications 1 et 2


– D’après l’étude précédente (transparents 102, 103 et 110) les spécifications de performance 1 et 2 se
traduisent par une pondération sur la fonction de sensibilité S qui relie le signal de référence au signal
d’erreur de suivi de trajectoires, contrainte définie par une pondération W1(s).
consigne  écart
– On souhaite 1
; S(jw)
 w1 jw
w1s Ss      w   S jw  
w1 jw  K1
1

k1w*B
» soit s w*BK1
1
w*k w*B
W11s   k1 B 1
s
1 k1
K1w*B

125/166
Auteur: Damien.Koenig@esisar.grenoble-inp.fr Version: 2017
Critère w   KS  jw 
1
W  jw
 W KS   1
 Construction du critère – Spécification 3
– D’après la discussion précédente, on va chercher à stabiliser les modèles en utilisant un modèle d’incertitude
additive qui génère une famille de modèles les contenant. Cette famille d’incertitudes est caractérisée par la
pondération fréquentielle W (jw).
– Par application du théorème du faible gain (voir transparent 51), dans le cas d’une incertitude additive, i.e.
M=KS, la stabilité robuste sera assurée si KS   1  w   KS  jw  1
 
1 1
où : | (jw) | |W (jw)| avec W    w   W  jw    w   
  W  jw

Gréel
I
v
z
+
(s
z v
K G25
+
)
M(s)
M

Rappel du Théorème du petit gain: Si M(s) et (s) sont stables, le système de la figure ci-dessus
est stable pour tous (s) tel que ||(s)||   si et seulement si ||M(s)||  -1, où M(s)=Hzv(s)

126/166
Auteur: Damien.Koenig@esisar.grenoble-inp.fr Version: 2017
e1 e2
w2(s)
w1(s)
Limitation du transfert KS
r +  u
K(s) G(s) q
-

 Enfin il reste à contraindre le module de KS pour limiter l’énergie de commande et


l’amplification des bruits de mesure. Pour ces exigences, KS doit être une fonction de
transfert passe bas, avec une pulsation de coupure la plus basse possible.
 On choisit donc une pondération W2 (de la forme ||W2KS||<1 ) qui inclut l’objectif
précédent de stabilité robuste, soit
– |W2(jw)| |W(jw)|  1  1 w   |w2|-1
Où W2 W
MT
w*BT

s 1 MT
w2 s    , w21s  
w*BT MT sM T
1
*
wBT w*BT/MT

En résumer il suffit de rechercher un correcteur Hinfini standard tel que

W1S 
   1
W2 KS  

127/166
Auteur: Damien.Koenig@esisar.grenoble-inp.fr Version: 2017
Diagnosis by observer using an LMI formulation

– FDI (fault actuator, fault sensor, fault component)


» robust residual generator using UIO
» robust residual generator using H optimization

– Fault tolerant
» Hinfini regulator/observer
main objective is to recover the original system performance (fault-free)

128/166
Auteur: Damien.Koenig@esisar.grenoble-inp.fr Version: 2017
Introduction

 The robust fault detection filter and fault tolerant control design problem for linear
time-invariant (LTI) systems with unknown inputs is studied

 The basic idea is to use a robust residual generator using some recent results of H
optimization

129/166
Auteur: Damien.Koenig@esisar.grenoble-inp.fr Version: 2017
Introduction

 We formulate the fault detection filter as an H model-matching problem

 The optimization problem is presented via a Linear Matrix Inequality (LMI)


formulation

 An illustrative electro - mechanical system is included

130/166
Auteur: Damien.Koenig@esisar.grenoble-inp.fr Version: 2017
Definition

 Fault detection
– consists of designing a residual generator that produces a residual signal enabling one to make a binary
decision as to whether a fault occurred or not
 Fault identification (isolation)
– imposes a stronger requirement. When one or more faults occur, the residual signal must enable us not only
to detect that there are faults occurring in the system, but it must also enable us to identify (isolate) which
faults have occurred.
 Fault tolerant (attenuation, accommodation)
– The main objective is to recover the original system performance (fault-free)

131/166
Auteur: Damien.Koenig@esisar.grenoble-inp.fr Version: 2017
Role of FDI in Fault tolerant control

 The key problem for active fault-tolerant control is on-line reconfiguration of the
controller.

 For this to be possible


– detailed information about changes in the system parameters (or changes in the system operating point) due
to either
» normal process
» or component faults
– is required

132/166
Auteur: Damien.Koenig@esisar.grenoble-inp.fr Version: 2017
Role of FDI in Fault tolerant control

 In order to get good parameters estimates,


– it may be necessary to introduce perturbation signals to make sure that all the plant’s modes are sufficiently
excited.
– However in many application it is impossible to apply additional perturbation signals.
– Additionally parameter estimation algorithms are quite complicated and computationally time consuming.
– Furthermore, in many cases, the system model structure will change due to the faults.

133/166
Auteur: Damien.Koenig@esisar.grenoble-inp.fr Version: 2017
Role of FDI in Fault tolerant control

 In order to overcome the disadvantages of using parameter estimation,


– we trying to use different controller reconfiguration mechanisms based on FDI information

134/166
Auteur: Damien.Koenig@esisar.grenoble-inp.fr Version: 2017
Modeling of faulty systems

 The first step in the model approach is to build a mathematical model of the system
 In the case of a non-linear system, this implies a model linearization around an operating
point.
 A system model (in model-based FDI) can be separated into three parts:
– Actuators
– System dynamics
– Sensors
 As illustrated in following figure (1).

135/166
Auteur: Damien.Koenig@esisar.grenoble-inp.fr Version: 2017
Modeling of faulty Systems

Actuation Output Measured


uR(t) yR(t) Output
Input
Actuators Plant Sensors y(t)
u(t)
dynamics

Fig. (1) open-loop system

 Where
– xn: state vector
– uRr: real input vector to the actuator
– yRm: real system output vector to the actuator

136/166
Auteur: Damien.Koenig@esisar.grenoble-inp.fr Version: 2017
Component and parameter faults

 The component fault is represented as a change in the dynamic relation


– for example, a leak in a water tank in three tank system,

x  Ax  Bu R  f c

Components faults
fc(t)
Actuation
uR(t) System Output
dynamics yR(t)

Parameter faults
aij

Fig. (1.1) The system dynamics

137/166
Auteur: Damien.Koenig@esisar.grenoble-inp.fr Version: 2017
Component and parameter faults

 In some cases, the fault could be expressed as a change in the parameter system,
– for example a change in the ith row and jth column element of A, the dynamic model can then be described as

– where xj is the jth element of the vector x and ei is an n-dimentional vector with all zero elements except a 1 in the ith element

x  Ax  Bu R  ei aij x j

Components faults
fc(t)
Actuation
uR(t) System Output
dynamics yR(t)

Parameter faults
aij

138/166
Auteur: Damien.Koenig@esisar.grenoble-inp.fr Version: 2017
Sensor faults

 By choosing the vector fs correctly, we can the describe all sensor fault situation
– for example
» Variation in the sensor : y=(1+)yR then fs= yR
» Biased fault at t= : y(t)= yR+(t-)(t-) then fs= (t-)(t-)

Sensor faults
fs(t)

Real output Measured


yR(t) Sensors output
y (t)
Fig. (1.2). Sensors, output and measured output

139/166
Auteur: Damien.Koenig@esisar.grenoble-inp.fr Version: 2017
Actuator faults

 For a controlled system, uR is the actuator response to an actuator command u(t) and
can be described as (when the actuator dynamics are neglected):
uR(t)=u(t)+fa(t)
where fa(t) is the actuator fault and u(t) is the known control command

» Variation in the actuator


» Biased fault

Actuator faults
fa(t)

Input actuation
u(t) Actuators uR (t)

Fig. (1.3). Actuator, input and actuation

140/166
Auteur: Damien.Koenig@esisar.grenoble-inp.fr Version: 2017
Fault Model when sensor, component and actuator faults
are considered

 The model is described as x  Ax  Bu  Bf a  f c


y  Cx  Du  Df a  f s

 Considering the general cases, a system with all possible faults (f) and UI (d) can be
described as
x  Ax  Bu  R1 f  E1d
y  Cx  Du  R2 f  E2 d

– where an input-output transfer matrix representation for the above system is

ys   Gu s us   G f s  f s   Gd s d s  Gu s   C sI  A1 B  D


G f s   C sI  A1 R1  R2

Gd s   C sI  A1 E1  E2

141/166
Auteur: Damien.Koenig@esisar.grenoble-inp.fr Version: 2017
General structure of residual generation in model-based FDI

Here Hu et Hy are stable transfer matrices


f(s) fault system
which are designed such that
Gf(s)
d(s) UI J((r(t))  T(t) for f(t) = 0 fault free
Gd(s)
y(s)
u(s) input Gu(s) J((r(t)) > T(t) for f(t)  0 non zero faulty

where J(r(t)) is a residual evaluation function


and T(t) a threshold function
Hu(s) Hy(s)
ys   G u s u s   G f s f s   G d s ds 
Residual generator r s   s  ys   G u s u s 
r(s)
s G d s   0
with  ideal case
s G d s   0

142/166
Auteur: Damien.Koenig@esisar.grenoble-inp.fr Version: 2017
Robust residual generation through standard H
filtering formulations

 Fault estimation
– To concentrate on fault sensitivity, let us first ignore the UI (d) and known input (u). The system is described
as
x  Ax  R1 f
y  Cx  R2 f
» or by the input-output model y s   G f s  f s 
where

 A R1 
G f s    
 C R2

 The design requirement for robust residual generation is to maximize the effect of the
fault on the residual, i.e.

y s   G f s  f s 

 
J r : inf  Grf w  
w  r s   H y s  y s 

143/166
Auteur: Damien.Koenig@esisar.grenoble-inp.fr Version: 2017
H standard formulation of fault estimation

 The previous maximization problem cannot be easily formulated in an H setting. To solve this problem,
the new following performance index should be introduced

r f 2
J f : Grf s   I  sup r  fˆ

0 f 2   f 2

– where the minimization of the above performance index J can be formulated according to following figure where ẑ is an estimation
~
z
of fault and is the signal which is used to evaluate the estimation quality

z(s)

f(s) y(s) ~z
Gf(s) K(s)

Formulation of fault estimation

144/166
Auteur: Damien.Koenig@esisar.grenoble-inp.fr Version: 2017
The equivalent transfer matrix P2(s) for the standard H
problem

 The previous system can be reformulated into a standard H problem as given in


following figure

~z f f(s) ~z


– where the transfer matrix P2(s) is    P2 s  
 y  zˆ  P2(s)

y(s)
» with K(s)
 I  I Standard problem formulation of fault estimation
P2 s    
G
 f  s  0 

 x  Ax  R1 f  0 zˆ

P2 s  : ~z  0 x  f  zˆ
 y  Cx  R f  0 zˆ
 2

145/166
Auteur: Damien.Koenig@esisar.grenoble-inp.fr Version: 2017
Fault estimation via standard H problem

 The standard H fault estimation is such that to find a filter K(s)RH such that
G~z f s  

– Where G~z f s   LFT P2 s , K s   I  K s G f s 

 The problem can be solved via the standard H techniques

 In order to decrease the conservatism introduce by the H techniques, the fault


estimation problem can be changed into the filtered version of the fault.

146/166
Auteur: Damien.Koenig@esisar.grenoble-inp.fr Version: 2017
Formulation of filtered fault estimation via standard H problem

 Fault estimation problem can be changed into the filtered version of the fault, i.e.,
f s   T s  f s 
» where T(s) is a RH transfer matrix which is (for example) equal to a diagonal low pass filter matrix

 The filtered fault estimation can then be defined as the minimization of the following
performance index

r f 2
J f : Grf s   T s   sup

0 f 2   f 2

147/166
Auteur: Damien.Koenig@esisar.grenoble-inp.fr Version: 2017
Formulation of filtered fault estimation via standard H problem

 This optimization problem can be formulated according to following figure where is


~z ẑ
an estimation of fault and is the signal which is used to evaluate the estimation quality.
z(s)
T(s)
f(s) y(s) ~z
Gf(s) K(s)

Formulation of filtered fault estimation

 The system illustrated by the above figure can be reformulated into a standard H
problem as given bellow
f(s) ~z
P3(s)

y(s)
K(s)

148/166
Auteur: Damien.Koenig@esisar.grenoble-inp.fr Version: 2017
Formulation of filtered fault estimation via standard H problem

 If the state space realization of transfer matrix T(s) is

 AT BT 
T s   
CT DT 

– The equivalent transfer matrix P3(s) for the standard H problem is given by

~z f
 y   P3 s  zˆ 
   

» Where

 AT 0 BT 0 
 T s   I  0 A R1 0 
P3 s      
G f s  0  CT 0 DT  I 
 0 C R2 0 

149/166
Auteur: Damien.Koenig@esisar.grenoble-inp.fr Version: 2017
Formulation of filtered fault estimation via standard H problem

 The sensitivity transfer matrix for this standard H formulation is given by

G~z f s   LFT P3 s , K s   T s   G f s K s 

 The estimation of the filtered fault within H formulation is to find a filter K(s)RH
such that

G~z f s  

 The problem can be solved by the standard H techniques. Note that the problem can
also be regarded as a model-matching problem and solved via methods developed in
robust control theory.

150/166
Auteur: Damien.Koenig@esisar.grenoble-inp.fr Version: 2017
Fault estimation with disturbance attenuation

 A system with both fault and disturbance terms is modeling by

x  Ax  R1 f  E1d
y  Cx  R2 f  E2 d

– Or by the input-output model ys   G f s  f s   Gd s d s 

 Out task is to find an optimal estimation of the filtered fault when the system has both the fault and
disturbance.
– This can be formulated according to the following scheme

z(s)
T(s)
y(s) ~z
f(s) Gf(s) K(s)

d(s) Gd(s)

151/166
Auteur: Damien.Koenig@esisar.grenoble-inp.fr Version: 2017
Formulation of filtered fault estimation with disturbance estimation

 The objective of the problem is to minimize the following performance index

r f 2
J f : Grd1 s   T s   sup

0 d1 2   d1 2

– where d1 is the generalized disturbance vector which is defined as

f
d1   
d 

152/166
Auteur: Damien.Koenig@esisar.grenoble-inp.fr Version: 2017
Reformulation of fault estimation with disturbance attenuation via
standard H problem

 The problem of estimating the fault with disturbance attenuation property can be solved
by the standard H techniques as illustrated in following figure

f  ~z
d1    P4(s)
d 
ẑ y(s)
K(s)
– where the transfer matrix P4(s) is defined as
 AT 0 BT 0 0 
~z d1   T s  0  I  0 A R1 E1 0 
 y   P4 s  zˆ  with P4 s   
    
     G f s  Gd s  0  CT 0 DT 0  I
 0 C R2 E2 0

153/166
Auteur: Damien.Koenig@esisar.grenoble-inp.fr Version: 2017
Fault estimation with disturbance attenuation via standard H problem

 The sensitivity transfer matrix for this standard H formulation is given by


 
G~z d1 s   LFT P4 s , K s   T s  0  K s  G f s  Gd s 

 The estimation of the filtered fault within H formulation is to find a filter K(s)RH
such that
G~z d1 s  

 The signal ẑ in fig above can be used as a residual signal as well as an estimate of the
filtered fault

154/166
Auteur: Damien.Koenig@esisar.grenoble-inp.fr Version: 2017
Robustness issues

 The previous robustness is only achieved on the assumption that there are no modeling errors or the
modeling errors have been approximately transformed into UI (disturbances).
 To solve the problem of estimating faults for systems with disturbances and modeling errors, the standard
H problem should be formulated to incorporate the uncertainty block as

 d 
  
 f

f  P4(s) ~z
d1   
d 
ẑ y(s)
K(s)

155/166
Auteur: Damien.Koenig@esisar.grenoble-inp.fr Version: 2017
Integrated design, i.e.design controller and fault estimator
simultaneously

 The integrated design problem can be formulated according to following figure where
– ye is the signal used to evaluate the control performance,
– Ko(s) is the fault estimator
– Kc(s) is the controller
z(s)
T(s)
y(s) ~z
f(s) K(s)
G(s) ẑ
d(s) ye(s)

u(s)
Kc(s)

156/166
Auteur: Damien.Koenig@esisar.grenoble-inp.fr Version: 2017
Integrated design via standard H problem

 The integrated design problem depicted in previous figure can be transformed into a
standard H problem as given in following figure

 ~
z 
f  ~z 
y 
d1    P (s)  e
d 
y(s)
ẑ  Ko(s)
ẑ1   
u  Kc(s)

157/166
Auteur: Damien.Koenig@esisar.grenoble-inp.fr Version: 2017
Integrated deign with robustness consideration

 The integrated design with robustness consideration can be treated like a standard H
problem as given in following figure

 d 
 f 
 
  u 
 ~
z 
f  P (s) ~z 
y 
d1     e
d 
y(s)
ẑ  Ko(s)
ẑ1   
u  Kc(s)

158/166
Auteur: Damien.Koenig@esisar.grenoble-inp.fr Version: 2017
LMI Approach for robust residual generation

 The idea consists of designing a bank of observer where each observer is robust to
disturbances and to a set of specified faults.
– Example, consider the LTI systems of the form

 x  Ax  R1 f  E1d

 y  Cx

d   f2 
r1  f f 2 , f 3 to n f 
» Where dim(f)=nf and dim(d)=nd
obs1 d  f  
– Constructing nf observers f1  f 3 to n f 
d  f1 
r2  f f1 , f 3 to n f 
where each observer
is insensitive to d obs 2 d  f  
and to one component of f
f 2  f
 3 to n f 
 
d 
obs n f d    f  f1 to n f 1
f n f 
159/166
Auteur: Damien.Koenig@esisar.grenoble-inp.fr Version: 2017
LMI Approach for robust residual generation

 Assume that the pair (C, A) is detectable and (A,R1,C) is assumed to have no transmission zeros, i.e. for
any s C,
 sI  A R1 
rank    nnf
 C 0

– Thus detectability of the faults is guaranteed.


 Only the first observer is considered here. Hence consider the fault detection observer 1 of full order as

xˆ  Axˆ  K1 y  Cxˆ 


r1  y  Cxˆ

– which is designed for the following system  f 


 
2
 n f   d 
in according to the previous table x  Ax  R12   R1      E1
1
R1  
   f1 
f
 nf 

160/166
Auteur: Damien.Koenig@esisar.grenoble-inp.fr Version: 2017
LMI Approach for robust residual generation

 The gain K1 for observer 1 is designed such that


Gr1w1 s  

d 
– where w1   
 f1 

 The solution K1 of the problem is done by a LMI resolution (see part 2, for details)

161/166
Auteur: Damien.Koenig@esisar.grenoble-inp.fr Version: 2017
Fault diagnosis of non-linear dynamic systems

 Fuzzy observers for NL dynamics systems fault diagnosis


– A Takagi-Sugeno fuzzy model is a simple way to describe a non-linear dynamic system using locally
linearized models. According to the T-S model, a NL dynamics systems can be linearized around a number
of operating points.
» Each linear model represents the local systems behavior around the operation point.
» The global system behavior is described by a fuzzy fusion of all linear model outputs.
» The model is described by fuzzy IF-Then rules which represent local linear relation of the NL system

– Consider the simple example x t    A  Anon wxt   Bu t 

– If w(t) is wi Then x t   Ai xt   Bu t 


y t   Cxt 

» where Ai=A+Anonwi is a time invariant matrix

162/166
Auteur: Damien.Koenig@esisar.grenoble-inp.fr Version: 2017
Fuzzy observers and residual generation

 Rule i: (i=1,2,…,N)
– If w(t) is wi Then xˆi t   Ai xˆi t   Bu t   Ki  y  Cxˆi 

 This fuzzy observer can be implemented through the use of N local observers and a fuzzy
fusion

 xˆi t   Ai xˆi t   Bu t   K i  y  Cxˆi 


 N

 xˆ t    i wxˆi t 
 i 1
 yˆ t   Cxˆ t 

163/166
Auteur: Damien.Koenig@esisar.grenoble-inp.fr Version: 2017
 xˆi t   Ai xˆi t   Bu t   K i  y  Cxˆi 

Fuzzy fusion  N
 xˆ t    i wxˆi t 
 i 1
 yˆ t   Cxˆ t 

 Example for N=3 rules


1(w) 2(w) 3(w)
– w1=0
– w2=30 1

– w3=80

0 30 80 w

u y
System
The estimation error dynamics are given by the following
differential equation
Residual : r
C
iN
x^ u e   i w Ai  K i C e
obs1
y i 1
Fuzzy inference engine
for select the obs2 u e is stable if there exist a common positive definite matrix
appropriate estimation y P such that:
obs3 u
µi(w)
y  Ai  KiC T P  P Ai  KiC   0
Fuzzy observer for i=1, … N
164/166
Auteur: Damien.Koenig@esisar.grenoble-inp.fr Version: 2017

Eigenvalue region

LMI region

 To ensure that the estimation error e(t) of the fuzzy observer has fast and well 
attenuated response, it is necessary to assign all local observer eigenvalues is a specific
region is s-plane, like:
– All local obs in the fuzzy obs have their
eigenvules is the region S(,), if there
exists a common P > 0 such that
 P  Ai  Ki C P 
 *  P 0
 

and P Ai  Ki C    Ai  Ki C T P  2P  0

for i=1, …, N

 Threshold no fault
In conclusion r  y  yˆ 
  Threshold faulty

165/166
Auteur: Damien.Koenig@esisar.grenoble-inp.fr Version: 2017
Synthèse

 Analyse de performance et robustesse


– Approche fréquentielle
– Modélisation LFT (application du théorème du faible gain)
– Application du lemme de majoration (non étudié ici)

 Synthèse de lois de commande


» LQG (rappel)
» H loop-shapping (modelage du transfert de boucle)
» H par pondération fréquentielle

 Synthèse H de lois de commande robuste aux incertitudes


» Application du théorème du faible gain

 Diagnostic par synthèse LMI


» Estimation de défaut(s) par synthèse de commande H mise sous forme standard
» Atténuation et suivi de consigne : approche H sous forme standard

166/166
Auteur: Damien.Koenig@esisar.grenoble-inp.fr Version: 2017

Vous aimerez peut-être aussi