Upload
irene-laroche
View
143
Download
17
Embed Size (px)
Citation preview
Introduction à la commande
Application à la
Commande Optimale
Cherfaoui Nourrdine
Introduction à la commande Optimale
Partie I L’automatique Représentation des systèmes Notions sur la régulation PID Notion de robustesse
Partie II Espace d’état Commande par placement de pôles Observateur Commande par placement de pôles et observateur
Partie III Commande LQ Observateur optimale Commande LQG LQG/LTR
Introduction à la commande Optimale
Partie IL’automatiqueReprésentation des systèmesNotions sur la régulation PIDNotion de robustesse
L’automatique
But Historique Compromis et contraintes Quelques applications Les outils
But
L'automatique est une discipline qui traite de la modélisation, de l'analyse etde la commande des systèmes dynamiques. Elle a pour fondementthéorique les mathématiques.
L'état désiré du système est nommé la consigne. L’automatique consiste doncà commander un système en fonction d’une (ou plusieurs) consigne donnéepar l’utilisateur (ou un autre système).
Un exemple ‘simple’ est celui du régulateur de vitesse dans une automobile, il permet de la maintenir à une vitesse constante, prédéterminée par le conducteur. Dans ce cas, la consigne et une vitesse.
Oulalalala, le régulateur !Politiquement par correct
-III av J.C KTESIBIOS : Régulateur de niveau
1630 : DREBELLRégulateur de Température
1788 : WATTRégulateur de vitesse
1800 : LAPLACETransformée
1877 : ROUTH
1894 : HURWITZ
1899 HEAVISIDE
1932 : NYQUIST
1934 : BLACK
1940 : BODE
1942 ZIEGLER NICHOLSRéglage optimale du PID
Approche Fréquentielle
Approche Temporelle
Historique
On est même à la limiteDe l’approche spacio-
Temporelle ! 3 siècle av JC !J’en étais resté à Wienner !
Performance
Coût en
Energie Compromis Performance/Energie + on va vite + cela coût cher
Ex : Pour allez de 0 à 100Km : - Pied a fond -> Rapide mais consommation élevée - Faible accélération -> Plus lent mais la consommation est réduite
Contrainte Performance/Robustesse + on va vite + le système doit être robuste
Performance
Robustesse
UAV Dassault Aviation ‘’petit duc’’
MP 89 CA ‘’METEOR’’
Automobile : ABS/ESP/ASR….
installation d’épuration de gaz de haut-fourneau
Quelques applications
Les outils
Et l’huile de coude
Représentation des systèmes
Notion de Système Systèmes Linéaires invariants La transformée de Laplace Fonction de transfert Domaine de stabilité
Notion de Système
Un système (G) est défini par un ensemble de relation entre ses entrées et ses sorties
Exemple
Système : Résistance Entrée : i (t) Courant dans la résistance Sortie : u (t) Tension au borne de la résistanceRelation : u (t) = R*i(t)
Système : Masse ressortEntrée : F(t) Effort sur la masseSortie : x(t) Position de la masseRelation : m.a(t) = m.g +F(t)+Fressort(t)
Système y(t)u(t)
Systèmes Linéaires invariants
Rq : On parle aussi de système : LTI (Linear Time Invariant)
Linéaire
Soit un système G qui a pour entrée ui(t) une réponse yi(t). Si ce système est linéaire alors il vérifie la propriété suivante:
Invariant
Un système est invariant si un décalage dans le temps du signal d'entrée, entraîne le même décalage sur le signal de sortie
iii
iii
iii
yuG
NiRytuG
...
;;)(.
Je n’ai pas encore vu si tu en parlais,Mais tu peux parler du théorème de
Superposition (juste en parler)
dgtf
pFptf
ffpfLpdt
fdL
ffLpfL
gLbfLagbfaL
dttfepfLpF
pt
nnn
n
pt
)(*)(g)(t)f(;gL*fL gfL
nconvolutio deProduit
)(.lim)(lim
: finaleValeur
)0('...)0(.
)0(.'
:Dérivation
....
: Linéarité
)()()(
:par définie F,fonction laest
0, tréel nombrepour tout définie f,fonction uned' Laplace de ée transformla
0
1
0
Rappel : La transformée de LAPLACE
Tables de Transformées de Laplace
Echelon (t)
Impulsion )(
t
n
j
j
j
m
i
i
i tydt
datu
dt
db )(.)(.
Fonction de transfert
On peut écrire la relation entrée sortie du système sous la forme d’une relation entre les dérivés successive des entrées/sorties :
En appliquant la transformation de Laplace la relation entrée sortie se réécrit: (avec p la variable de Laplace et des conditions initiales nulles)
nn
mm
n
j
jj
m
i
ii
n
j
jj
m
i
ii
papaa
pbpbb
pA
pB
pa
pbpG
pU
pY
pYpapUpb
......
......
)(
)(
.
.)(
)(
)(
)(..)(..
10
10
Après avoir réalisé un bref sondage,Ils ont vu ces choses … en spé.
Donc, ça ne fera pas de mal
nn
mm
papaa
pbpbb
pA
pBpG
pU
pY
......
......
)(
)()(
)(
)(
10
10
La fonction de transfert d’un système LTI est de la forme :
Vocabulaire
G(p) est la fonction de transfert du SystèmeL’ordre du système est nLes racines de B(p) sont les Zéros du SystèmeLes racines de A(p) sont les Pôles du Système
Si m< n le système est Strictement Propre Si m=n le système est Propre Si m>n le système est Impropre
Systèmeu(t) y(t)
transfertdeFonction H(p)
elleimpulsionn RéponseH(t)
)(*)()(
)()()(
pUpHpY
Laplace
tutHty
Remarque
Systèmeu(t) H(t)
Impulsion
Exemple 1 : Système du premier ordre
Un système du premier ordre a une fonction de transfert de la forme :
1
0
1
0
1
10
10
en zeroun àG
en poleun àG
sinon propret strictemen ,0 si propreest
1 ordred'est : système le
.)(
)()(
)(
)(
b
bp
a
ap
b
paa
pbb
pA
pBpG
pU
pY
Etude d’un système du premier ordre stable
Etudions la réponse à un échelon d’un système du premier ordre de la forme:
2,7.0,5.01
1)(
i
i
ppour
p
ppG
On observer que :
-Tous les pôles du système sont négatifs.
-Le système est stable (dans le sens entrée bornée / sortie bornée).
-Le système est d’autant plus rapide que le pole est grand en valeur absolue.
0Stable
Rapide Lent
Reel
Etude d’un système du premier ordre instable
Etudions la réponse à un échelon d’un système du premier ordre de la forme:
5.0,7.01
1)(
i
i
ppour
p
ppG
On observer que :
-Tous les pôles du système sont positifs.
-Le système n’est pas stable (dans le sens entrée bornée / sortie bornée).
-Le système est d’autant plus rapide que le pôle est grand en valeur absolue
0Stable
Rapide Lent
ReelInstable
Exemple 2 : Système du second ordre
Un système du second ordre a une fonction de transfert de la forme :
0../ :G de Pôles
0../ :G de Zeros
sinon propret strictemen ,0 si propreest
2 ordred'est : système le
..
..
)(
)()(
)(
)(
2210
2210
2
2210
2210
papaap
pbpbbp
b
papaa
pbpbb
pA
pBpG
pU
pY
0.4375,1
)(2
cpour
cpp
cpG
Etudions la réponse à un échelon d’un système du second ordre de la forme:
Les pôles de ce système sont : c=1 Pôles -0.5 ± 0.866i c=0.4375 Pôles -0.5 ± 0.433i
On observer que :
-Tous les pôles du système sont à parties réelles négatives.
-Le système est oscillant.
-Le système est stable (dans le sens entrée bornée / sortie bornée).
0Stable
Rapide Lent
ReelInstable
ImaginaireOscillant
Domaine de stabilité
Un système est stable si et seulement les pôles de la fonction de transfert sont à partie réelle strictement négative :
0)(0)(/ stableest )(
)()( ppAp
pA
pBpG
+ Dynamique
+Oscillant
Instable
Remarque sur les zeros
Un système qui a un zéro à partie réelle positive est un système à non minimum de phase
Influence d’un zéros dans le demi plan droit
MATLAB 6.5 SCILAB 4.0
Affichage des pôles et zéros : MATLAB : pzmap SCILAB : plzr
Un ami : la fonction help
Création de fonction de transfert : MATLAB : tfSCILAB : rapport de polynôme
Notions sur la régulation PID
Les régulateur tout ou rien
Régulation PID P PI PID
Méthode de Ziegler Nichols
Tu peux aussi ajouter une couche surLa stabilité en soulignant que dans certains
Cas, le dénominateur de la fonction de transfertEn Boucle fermée peut s’annuler.
Les régulateur tout ou rien
Régulateur simple du type chauffage : Si T > Seuil1 on coupe le chauffage Si T < Seuil2 on chauffe
La structure est simple mais on ne peut pas définir de consigne précise
Si l’écart entre les deux seuils est faible l’actionneur sera très sollicité
Contenu riche en harmoniqueCommutations rapides
Sur des systèmes d’électroniquesDe puissance, cela peut entrainer
Des pertes importantes.
Régulateur de type proportionnel
Régulateur système-
+ uε yy*
)(*))()((*)( * tKtytyKtu pp
La commande est proportionnel à l’erreur entre la consigne et la sortie du système
Le régulateur le plus simple
BO
BO
y
yet
BOy
SysKBO
SysKy
yy
p
p
11
1
*Soit
**
**
*
*
p
pp
K
K
p
KpBOp
yLBO
p
yp
Sys
Exemple
1
1(t) lim
1
1
11
1 lim
1*
1
1* lim
)(*1
1* lim(p)*p lim(t) lim
K Regulateur
unitaireEchelon ;1
1
:
t
0p0p
*
0p0pt
p
*
Pour une consigne en échelon et un système qui n’a pas de pôle en 0 (pas de comportement intégrateur) on à toujours une erreur statique si l’on utilise un régulateur de type P
Kp ↑ : -l’erreur statique ↓ -vitesse ↑
Régulateur de type proportionnel intégrale
Régulateur système-
+ uε yy*
dttKtKdttytyKtytyKtu ipip )()(*))()(())()((*)( **
Pour ne pas avoir d’erreur statique on ajoute une action intégrale
0(t) lim
0
1
1*
p
)K*(p1
1 lim
1*
1
1* lim
)(*1
1* lim(p)*p lim(t) lim
p
)K*(p Regulateur
unitaireEchelon ;1
1
:
t
p0p0p
*
0p0pt
p
*
p
KpBOp
yLBO
p
K
yp
Sys
Exemple
i
i
L’utilisation de l’action intégrale annule l’erreur statique
Erreur statique = 0
Régulateur de type proportionnel intégrale dérivée
Régulateur système-
+ uε yy*
)()()(*
))()(())()(())()((*)( ***
tdt
ddttKtK
tytydt
dKdttytyKtytyKtu
ip
dip
Pour augmenter la dynamique est compenser les inerties dues au tempsmort on à ajouter une action dérivée au régulateur
Régulateur 1/(p+1)-
+ uε yy*Retard de
1s
Méthode de Ziegler Nichols
K système-
+ uε yy*
1- On boucle le système avec un gain K variable et une entrée en échelon 2- On augmente K jusque à ce que le système soit oscillant
Tu
K=Ku
)**
11(*)(
)*
11(*)(
)(
:
di
p
ip
p
TpTp
KpRPID
TpKpRPI
KpRP
Régulateur
P PI PIDKp 0.5Ku 0.45Ku 0.6KuTi 0.83Tu 0.5TuTd 0.125Tu
Action Avantage Désavantage
P Dynamique Ne permet pas d’annuler une erreur statiqueI Annulation d’erreur
statique Action lenteD Action très dynamique Sensibilité aux bruits
résumé
Avantage des régulateur PID :-Structure simple-Pas besoin de modélisation pour la synthèse du régulateur
Désavantage des régulateur PID-Réglage empirique-Pas de garantie sur les performances et la stabilité
Notion de robustesse
MargeModuleGainPhase
Régulateur système-
+ uε y
BO
BO
y
yet
BOy
RGBO
RGy
yy
11
1
Soit
**
*
*
BO-
+ ε
y*
Y*y
BO est le transfert en boucle ouverte
L’étude de la BO ( Régulateur*Système) nous donne des informations sur la stabilité du système. Pour cela on dispose d’un certain nombre d’outils :
Diagramme de Bode
Deux courbes : 1/ Gain (Db) en fonction de la pulsation (en échelle log) 2/ Phase (° ou rad) en fonction de la pulsation (en échelle log)
Diagramme de Nyquist
En abscisse : La partie réel de BOEn ordonnée : La partie imaginaire de BO
L’abscisse curviligne est la pulsation (en rad/s)
On remarque que si la BO passe dans le diagramme de Nyquist par le point (-1,0) on a :
BO
BO
y
yalorsBOSi
11
*
Le point (-1,0) est dit point critique, on va donc chercher à s’en éloigner
Définition de marge de stabilité
Critère du revers
Le système est stable si le lieu de Nyquist en BO parcouru dans le sens des fréquences croissantes, laisse le point critique (-1,0) constamment à sa gauche
Réel
Imaginaire
-1
Stable
R
I
-1
Limite de stabilité
R
I
-1
Instable
-180°
dB
°
A B
Marge de phase
Marge de gain
R
I
-1
A
B
Marge de phase
1/(Marge de gain)
Marge de Gain :C’est la garantie que la stabilité sera maintenue malgré les variationsimprévues du gain en boucle ouverte (BO) dues aux perturbations. (MG = 8 à 15 dB)
Marge de Phase :C’est une garantie que la stabilité persistera malgré l’existence de retardsparasites dont on n’a pas tenu compte dans le réglage. (Mph = 30 à 50 °)
Point Critique
Marge de module :
la marge de module représente la plus petite distance de la BO au point critique et correspond donc au rayon du cercle centré sur le point critique qui tangente la
courbe
BOSavec
SBOM
wwM
1
11min1min
R
I
-1
Marge de module
Une dernière motivation pour la marge de module :
La synthèse d’un régulateur R se fait sur un modèle de système G qui n’est pas exactement égale au système physique réel ( dynamique négligée par exemple)
RGSavec
RG
TRGRG
RG
BO
BO
y
yT
1
1GS.G
1
1T
T11
G1
RG1
RG
11
:etait fermée boucleen transfertdefonction la que vu aOn
G)1.(GG: donc aon
on,modelisati deerreur l'G et sytemedu modéleun GSoit
00
0*
0
0
La fonction S est dite fonction de sensibilité.
La fonction de transfert en boucle fermer T=1-S est dite fonction de Sensibilité complémentaire
RGSavec
SBOM
wwM
1
11min1min
La sensibilité à l’erreur de modélisation sera d’autant plus faible que la marge de module sera grande
exemple
Régulateur système-
+ uε yY*
3
1.*
3
122
pp
pkGRBOkcstRRégulateur
pp
pGSysteme
On peut penser que :-Si l’on augmente k le système sera plus rapide car une petite variation de l’erreur ε produit une forte correction sur la commande.-Et que comme le système G est stable la BF sera stable
Nyquist de la BO
k=2k=2.5K=3K=3.5
Instable
Pour cette exemple si la gain k≥3 le système en BF n’est pas stable
Conclusion :
Toujours vérifier :
-La stabilité d’un système quelque que soit le type de synthèse utilisé -La valeur des marges de gain, phase, module pour tenir compte des erreurs de modélisation
Quelques règles concernant la margeDe phase / marge de gain ? (juste une suggestion)
Introduction à la commande Optimale
Partie IIEspace d'étatCommande par placement de pôlesObservateurCommande par placement de pôles et
observateur
Espace d'état
Exemple : Le moteur électrique
U(t)
E
R
L J
I(t)
....
..
.
'
frotmecafrot
elecelec
KIKKCmJ
rotationenPFD
KKE
riceelectromotcontreForce
EILIRU
OhmdLoi
Si on applique la transformation de Laplace aux équations précédentes on obtient
elecmeca
frot KK
KpJLpRp
pU
ppG
).
)(.(
1
)(
)()(
elecmeca
frot KK
KpJLpRp
pU
ppG
).
)(.(
1
)(
)()(
La fonction G(p) nous donne la relation entre la tension d’alimentation du moteur et sa position mais cette représentation ne nous informe pas sur l’état du moteur:
Courant dans le circuit ElectriqueVitesse de rotation de l arbre
Hors cet état était visible via les équations du système
Info importante car tout excès de courantEst destructeur !!
Si les variables qui nous intéresse pour le moteur sont : La position Angulaire, le courant et la vitesse de rotation on peut des équations précédentes tirer les relations suivantes :
L
KIRUI
J
KIKelecfrotmeca
..
;..
;
Si l’on pose le vecteur x suivant :
I
x
On peut réécrire sous forme matricielle le système d’équation précèdente sous la forme :
U
L
x
L
R
L
KJ
K
J
Fx
elec
mecafrot .10
0
.
0
0
010
Avec ce type de représentation,Il peut être possible, dans certains
Cas de commander indépendammentPlusieurs variables d’état du système
Représentation d'état
On appelle représentation d’état (réalisation d’état) d’un système toute relation de la forme :
pmpnp
mnm
nnn
RERHRy
RGRu
RFRX
uEXHy
uGXFpX
uEXHy
uGXFpXSLI
**
*
*
;;
;
;
sorties de mombre le : p
entréesd' nombre le :m
systemedu dimension la :n soit
sortie deequation l'est ..
systemedu état d'equation l'est ..
..
..
G
F
E
Hx(t)
u(t)
y(t)
Mise sous forme de schéma bloc de la représentation d’état
La mémoire du système
Trajectoires d’état
La solution de l’équation d’état est dite Trajectoire d’état. Par intégration des équations d’état et de sortie, on obtient :
)(.)(.)(.)(
)(.)(.)(
..
..
0
0
0
0
)(
..
0)(
)(
..
0)(
tuEduGHetxHety
duGetxetx
uEXHy
uGXFpXSLI
t
t
tF
IC
ttF
t
t
tF
IC
ttF
Relation entre forme d’état et fonction de transfert
Objectif : Obtenir une relation entre forme d’état et fonction de transfert.
)det(
)det(.).(.
.).()(
..).('..
inversible )(condition la sous..)(
identité matrice .).(
..
aon état d'equation l'sur algebriqueoperation Par
)(..
..
1
1
1
FpI
FpIEGFpIAdjH
EGFIHpGu
y
uEGFIHyouduEXHyor
FpIuGFpIX
IuGXFpI
uGXFpX
pGu
y
uEXHy
uGXFpXSLI
Première fois que je vois cetteNotation. Il faut peut être
La préciser ?
)det(
)det(.).(.)(
FpI
FpIEGFpIAdjHpG
u
y
Les zéros du système sont les racines de
)det(.).(. FpIEGFpIAdjH
Les pôles du système sont les racines de :
)det( FpI
Le système est stable si et seulement si :
0)(0)det( pFpI
Pluralité de la représentation d’état
Remarque sur la pluralité de la représentation d’état
EEHTHGTGFTTFavec
tuEtzHty
tuGtzFtpzSLI
tEutHxty
tGutFxtpxSLI
tEutHTzty
tGuTtFTzTuGtxFTtpz
tEutHxy
tGutFxtpxSLI
T
;;;
)()()(
)()()(
)()()(
)()()(
)()()(
)()().)(.()(
T.z(t) x(t)que telpassage de matrice une RTet
)()(
)()()( systeme lesoit
11
'
111
n*n
)(
])([
])([
]])([[
])([
])([
.).()(
:est transfertdefonction la SLI' systeme lepour
.).()(
:est transfertdefonction la SLI systeme lepour
1
111
111
1111
111
1
1
pG
EGFpIH
EGTTFpIHTT
EGTTFpITHT
EGTFTTpITTHT
EGTFTTpIHT
EGFpIHpGu
y
EGFpIHpGu
y
La fonction de transfert d’un système est invariante par changement de base
Relation entre fonction de transfert et forme d’état
Objectif : Obtenir une relation entre fonction de transfert et forme d’état
01
n
2
1
10
10
10
;
1
1
;
00
0
0
00
F
: suivante forme la résulteen Il
)(
: simple élémentsen ion decomposit laSoit
......
......
)(
)()(
)(
)(
cEccH
G
p
ccpG
papaa
pbpbb
pA
pBpG
pU
pY
n
n
i i
i
nn
mm
Forme Modale
Les modes du systèmessont dans la matrice F
Rq : Il existe d’autres relations entre Fonction de transfert et représentation d’état
MATLAB 6.5 SCILAB 4.0
tf2ss fonction de transfert vers représentation d’étatss2tf représentation d’état vers fonction de transfert
Et toujours la fonction help
Un exemple Multivariable
2211 ** UTUTY
XHHY
UG
GX
F
FpX
Sys
YYYU
UU
X
XX
Soit
XHY
UGXFpX
XHY
UGXFpX
21
2
1
2
1
222
1
2
1
222
22222
111
11111
0
0
.
..
.
..
Etat augmenté
Conclusion
La représentation des systèmes sous forme d’état fournit une écriture condensée et simple aussi bien dans le cas mono que multi-variable.
L’algèbre des matrices fournit des outils pour une manipulation simple des systèmes:-Changement de base-Construction de système augmenté
Le formalisme d’état permet d’avoir accès à une information plus riche que la simple relation entrée sortie d’une fonction de transfert.
MATLAB et SCILAB donne la possibilité de manipuler facilement des systèmessous forme d’état.
On verra dans la suite l’utilisation de ce formalisme dans la synthèse de loi de commande.
Commande par placement de pôles
La problématique de la synthèse d’un correcteur
Commandabilité / Stabilisabilité Synthèse d’un retour d’état par
placement de pôles Conclusion
Un problème d’automatique :Deux questions :
Problème de la poursuite de la consigne (cible) Problème la stabilité du système
Une synthèse en deux temps 1/ Synthèse d’un régulateur stabilisant 2/ Synthèse finale qui tient compte de la poursuite
Commandabilité
Peut-on amener en un temps fini le système à commander d’un état arbitraire x(t0) à un état désiré x(tf) avec une loi de commande admissible?
Concept de Commandabilité des systèmes
x(t0)
x(tf)
Dire que la commandabilitéPermet d’identifier les variables
D’état que l’on pourra commanderIndépendamment.
J’ai bon ?(J’avoue, la commande dans l’espace
D’état, ça remonte à loin)Je dis ça juste pour leur donner une
Accroche, un but qui permettra de mieuxSuivre la suite
En partant de l’équation de la trajectoire d’état du système on peut obtenir une relation entre le vecteur des commandes, les conditions initiales et finales du système et une matrice C dite matrice de commandabilité du système
GFFGGGFCet
du
du
tt n
t
t n
t
t
ff
f
1
1
0
0 ...),(
)().(
....
)().(
),(
0
0
)(.)(.)),(),(.(),(),(
: aon plein rang deest ),( matrice la Si
),().,()(.)(
0..1
0
commandes desVecteur
0
Initialeet Finale Conditions
0..
0
0
txetxeGFCGFCGFCtt
GFC
ttGFCtxetxe
tFf
tFTTf
ftF
ftF
f
f
On obtient donc une relation qui donne pour tout t une relation pourdéterminer la commande à appliquer. On remarque qu’il existe une infinité de lois de commandes qui vérifient :
),()().( 00
fk
t
t k ttduf
On choisira celle qui sera compatible avec l’objectif de commande que l’on cherche à réaliser (minimisation de l’énergie de commande ou dynamique) .
Propriété
plein rang deest ...G)C(F,
: litécommandabi de
matrice sa siseulement et si ecommandablest
)(.)(.)(
)0()(.)(.)(
: système Le
1
0
GFFGG
tuEtxHty
xxavectuGtxFtpxSLI
n
Sous MATLAB : Matrice de commandabilité : C = ctrb(F,G)Rang d’une matrice : r = rank(C)
Sous SCILABMatrice de commandabilité : C = cont_mat(F,G)Rang d’une matrice : r = rank(C)
D’où vient la matrice de commandabilité ?Comment on s’en sert ?
Comment on identifie les variables d’étatNon commandable ?
Voir si tu pourrais pas, vite fait, ajouterQuelques infos là-dessus ?
Remarque :Toutes les représentations d’état d’un même système ont le même rang de commandabilité.
En effet, si l’on effectue un changement de base T la matrice de commandabilité associée est donnée par :
),(
...
...
...)G,FC(
)(.)(/
1
11
111111
1
GFCT
GFFGGT
GTTFTGFTTTGT
GFGFG
tzTtxT
n
n
n
La commandabilité est un invariant par changement de base
Décomposition selon la commandabilité
Si le système n’est pas complètement commandable, on peut le décomposer comme indiqué sur la figure suivante:
PartieCommandable
PartieNon Commandable
y(t)
Pour toute réalisation (F,G,H,E) d’ordre n tel que Rang(C(F,G))=r < n, on peut toujours effectuer un changement de base :
systemedu escommandablnon modes lescontient
e.commandablsoit )G,(F que Telle
;;0
;0
)()()(
)()()(
: forme la sous systeme le récrire depermet qui
)(.)(
cc
'
c
ccc
c
ccc
cc
F
EEHHHG
GF
FFFavec
tuEtzHty
tuGtzFtpzSLI
SSSavectzStx
Stabilisabilité
Le principe de stabilisabilité a été introduit pour tenir compte du cas des modes non commandables.
La paire (F,G) est dite stabilisable si et seulement si tous les modes non commandable sont asymptotiquement stables
0)(0).det( )( pFIp crn
Il n’y a pas d’explosion de la dynamique des états
Synthèse d’un retour d’état par placement de pôles
)()(.)(
)(.)(.)(
)(.)(.)(
* tytxKtuSC
tuEtxHty
tuGtxFtpxSLI
G
F
E
Hx(t)
u(t)= y*(t) - K.x(t)
y(t)
-K
But: contrôler la valeur de la partie réellePour contrôler la dynamique des variables d’état
Cas de la régulation : y*(t)=0
)().()(
)().()(
Commande) (Systeme commande de Système
)(.)(
commande de Lois
)(.)(.)(
)(.)(.)(
Système
txEKHty
txGKFtpxSC
txKtuLDC
tuEtxHty
tuGtxFtpxSLI
Le système de commande est asymptotiquement stable si et seulement si le gain K vérifie la propriété suivante :
0)(0)det()( pGKFpIDGKF s
La dynamique du système est fixée par les modes de (F-GK). On peut assigner arbitrairement les modes du systèmes de commande si et seulement si le système est commandable :
n
iin
n
ppGKFpI
pp
1
n*m
1
)()det(
: que telRKgain
un trouver urspeut toujoon stabilité, de domaine le dans spécifiés pôlesn .....Soit
Avec openoffice, on n’a plus ce genre de délicatesse !Vive openoffice !
3)),((
100
210
121
),(
)(100)(
)(
0
0
1
)(
010
001
432
)(
432
1)(
23
GFCrangGFC
txty
tutxtx
ppppG
Exemple : Système commandable
La matrice de commandabilité de G et d’ordre 3, le système est donc commandable
04320)det(
432
)
010
001
432
100
010
001
det()det(
23
23
pppFpI
ppp
pFpI
Le système G stable mais oscillant
Car les pôles ont une partie imaginaire symétrique.Quand on construit une transformée de laplace contenantDeux pôles symétriques, on trouve une sinusoide dans le
Domaine temporelle
Objective : rendre le système non oscillant mais sans ralentir son mode le plus rapide via un retour d’état. On veut par exemple que tous les pôles du système commandable soient en -2
]494[
84
123
62
8126))2(()det(on veut
4)3()2(
)
10
01
432
det()det(
))2(()det(/
233
23
3
K
c
b
a
ppppGKFpI
cpbpap
p
p
cbap
GKFpI
pGKFpIcbaK
3))2(()
010
001
8126
det(
)(100)(
)(
010
001
8126
)(
)().()(
)().()(
)(494)(
)(100)(
)(
0
0
1
)(
010
001
432
)(
ppI
txty
txtpx
txEKHty
txGKFtpxSC
txtuLDC
txty
tutxtxSLI
La synthèse du gain K vérifie bien la contrainte sur les pôles que l’on a spécifié.
y*=0Régulation
X0=[15; 10; -5]
Gain de retour d’état
Sys seulSys + Retour d’état
Critère classique:Dépassement max de 20 %
Consigne en poursuite
X0=[0 0 0]
Influence de la recherche de dynamique sur la commande
K1 : pôles : -5 -6 -7K2 : pôles : -1 -2 -3
Le choix de la dynamique doit tenir compte de la limitation sur la commande
Commande nonadmissible
Le réglage K1 est + dynamique
Exemple : Système non commandable
)(0100)(
)(
0
0
0
1
)(
5000
0010
0001
0432
)(2
)(100)(
)(
0
0
1
)(
010
001
432
)(1
txty
tutxtxSys
txty
tutxtxSys
Les systèmes Sys1 et Sys2 ont le même comportement entrée/sortiemais Sys2 possède un état supplémentaire.
3)),((
0432
0001
0010
0100
),(
)(0100)(
)(
0
0
0
1
)(
5000
0010
0001
0432
)(2
GFCRangGFC
txty
tutxtxSys
Le système Sys2 n’est pas commandable
Peut on quand même trouver un gain de retour d’état tel que tous les pôles du système de commande soit en -2 ?
322.488.06*519
6
8.0
1
32519
24513
16520
87
1632248))2(()det(on veut
)520()519()513()7(
)
5000
010
001
432
det()det(
))2(()det(/
234'4
234
4
b
c
a
cb
ba
c
a
pppppGKFpI
cpcbpbapap
p
p
p
dcbap
GKFpI
pGKFpIdcbaK
Le système Sys2 n’étant pas commandable la recherche du gain de retour d’état K n’est pas possible
On peut toujours essayer de trouver,Mais comme un état est non commandable,
Il est non controlable et va rapidement diverger !Entrainant une rapide destruction du système !
Il faut un peu les secouer bordel !!!!
Sous MATLAB : K= place(F,G,pôles) Limitation : Can't place poles with multiplicity greater than rank(G).
Sous SCILABK= ppol(F,G,pôles)
Conclusion
La commande à retour d’état par placement de pôles (commande modale) est relativement simple dans sa mise en œuvres, mais sur des systèmes complexes d’ordre élevé avec des vecteurs d’état qui ne sont pas toujours physique on arrive à des limites dans sa mise en œuvres
Probléme 1:Les etats d’un systeme ne sont pas toujours mesurable, le coût des capteurs peut aussi être un frein à la commande par placement de
pôles Une solution Les observateurs
Problème 2: Comment choisir de façon optimale la valeur du gain de retour d’état toute en réalisant un compromis entre la dynamique du système et sa stabilité
Une solution La commande optimale LQ
Mesure de couple par capteur de contraintesTrès cher. On passe effectivement par des
Estimateurs sur les voitures
Observateur
But Observabilité / Détectabilité Synthèse d’un observateur Conclusion
Observateur
Peut-on déterminer l’état d’un système à partir de la connaissance de son comportement d’entrée sortie sur un intervalle de temps fini ?
Concept d’Observabilité des systèmes
Système
Observateur
u(t) y(t)
x(t)
1
2-n11
1
11
22
...F)O(H,
0HFGHF
HGHFG
0HG
00
T
)(
)(
)(
)(
)(
)(
)(
)(
)()(),()(
'
1;)()()()()()()(
)()()(
)()(
n
nn
i
j
jjini
HF
HF
H
HGGtup
tpu
tu
tU
typ
tpy
ty
tYavec
tTUtxFHOtY
oud
ituGpHFtxHFtyptHGputHFGutxHFtyp
tHGutHFxtpy
tHxty
Quelle manipulation algébrique! Prétentieux
))()((),()(
:plein rang deest O matrice la siest lemonovariab cas le Dans
)()(),()( : àOn
1 tTUtYFHOtx
tTUtxFHOtY
On peut donc reconstruire l’état du système à partir de ses signaux d’entrée-sortieet de leurs dérivées successives.
plein rang deest ...
F)O(H,
itéObservabild' matrice sa siseulement et si observableest
)(.)(.)(
)0()(.)(.)(
: systéme Le
1
0
nHF
HF
H
tuEtxHty
xxavectuGtxFtpxSLI
Observabilité
Sous MATLAB : O = obsv(F,H)
Sous SCILAB : O = obsv_mat (F,H)
Comment fait-on pour obtenir cette matrice ?
Remarque
Toutes les représentations d’ état d’un même système ont le même rang d’observabilité. En effet, si l’on effectue un changement de base T la matrice d’obervabilité associée est donnée par:
TFHO
TFHTT
FTHTT
HT
FH
FH
H
FHO
tzTtxT
nn
),(......
),(
)(.)(/
11
1
1
L’Observabilité est un invariant par changement de base
Synthèse d’un observateur
)(.)(ˆ.)(
ˆ)0(ˆ))(ˆ)(()(.)(ˆ.)(ˆ
:par donnéssont Ils état.d'
res trajectoileurs rereconstrui de permettent qui dynamique systémes desSont
)(.)(.)(
)0()(.)(.)(
systémes lespour uesasymptotiq rsobservateu Les
0
0
tuEtxHty
xxavectytyMtuGtxFtxpOA
tuEtxHty
xxavectuGtxFtpxSLI
D’où vient cette notation ?
G
F
E
H x(t)y(t)
G
F
E
H
u(t)
M
+-
)(ˆ tx )(ˆ ty
0)(0)det(
: siseulement et si stableuement asymptotiqest r observateuL'
(0)x~.e(t)x~ : donc auraOn
(t)x~H(t)y~x~(0)x~(t)x~MH).-(F(t)x~p
EO
:par décriteest (t)x̂-x(t)(t)x~n observatiod'erreur L'
MH)t-(F
0
pMHFpI n
La dynamique du système est fixée par les modes de (F-MH). On peut assigner arbitrairement la dynamique de l’observateur si et seulement si le système est Observable :
n
iin
n
ppMHFpI
pp
1
P*n
1
)()det(
: que telRMgain
un trouver urspeut toujoon stabilité, de domaine le dans spécifiés pôlesn .....Soit
Décomposition selon l’observabilité
SI le système n’est pas complètement observable, on peut le décomposercomme indiqué sur la figure suivante:
PartieObservable
PartieNon Observable
u(t)y(t)
systemedu observablenon modes lescontient
.observablesoit )F,(H que Telle
;0;;0
)()()(
)()()(
: forme la sous systeme le récrire depermet qui
)(.)(
oo
'
o
oo
o
ooo
o
oo
F
EEHHG
GG
FF
FFavec
tuEtzHty
tuGtzFtpzSLI
SSSavectzStx
Pour toute réalisation (F,G,H,E) d’ordre n telle que Rang(O(H,F))=r < n, on peut toujours effectuer un changement de base :
Détectabilité
Le principe de Détectabilité a été introduit pour tenir compte du cas des modes nonobservable. La paire (H,F) est Détectable si et seulement si tous les modes non observable sont asymptotiquement stables
0)(0).det( pFIp or
exemple
3)),((
001
010
100
),(
)(100)(
)(
0
0
1
)(
010
001
432
)(
432
1)(
23
HFOrangHFO
txty
tutxtx
ppppG
La matrice d’obervabilité de G et d’ordre 3, le système est donc Observable
Objective : Faire la synthese d’un observateur pour le systeme G dont la dynamique soit plus rapide que le pôle le plus rapide du systeme.
Le pôle le plus rapide de G etant en -2 on souhaite par exemple que tous les pôles de l’observateur soit en -5
13
46
10
125432
7523
152
1257515))5(()det(on veut
)432()23()2(
)
10
1
432
det()det(
))5(()det(/
233
23
3
M
acb
cb
c
ppppMHFpI
acbpcbpcp
cp
bp
ap
MHFpI
pMHFpI
c
b
a
M
X0=[-20 ; -20;-20]
L’observateur n’a pas les bonnes C.I.X0=[10;10;10]
Gain de l’observateur
La sortie et l’etat de l’observateur converge bien vers celle du Systeme
Pas mal du tout cet exemple
Simulation avec un Observateur lent dont les pôles sont en -1 M=[-2 -2 1]
Gain de place si tu écris Mt
Sous MATLAB : M= (place(FT,HT,pôles))T
Limitation : Can't place poles with multiplicity greater than rank(H).
Sous SCILABM= (ppol(FT,HT,pôles))T
TTTTTT MHFMHFMHF )()( : que remarqueOn
Conclusion
La synthese d’observateur par placement de pôles (observateur modale) est relativement simple dans sa mise en oeuvre, mais sur des systémes complexes d’ordre élevés avec des vecteurs d’états qui ne sont pas toujours physique on arrive à des limites dans sa mise en œuvres
Probléme:Comment choisir la dynamique de l’observateur en fonction du mode
que l’on veut observer Une solution Les observateurs du type Kalman
Commande par placement de pôles et observateur
Hypothèses pour la synthèse Exemple
Hypothese
rObservateu avec
poles deplacement à commande de systemeun construirepeut On : Alors
plien rang de ...G)C(F, eCommandablEst -
plien rang de ...
F)O(H, ObservableEst -
)(.)(.)(
)0()(.)(.)(
Si
1
1
0
GFFGG
HF
HF
H
tuEtxHty
xxavectuGtxFtpxSLI
n
n
Plein Plein Plein
y(t)Système
Observateur
u(t)
-K
)(ˆ.)(
)(.)(ˆ.)(ˆ
ˆ)0(ˆ))(ˆ)(()(.)(ˆ.)(ˆ
)(.)(.)(
)0()(.)(.)(
Systéme
0
0
txKtuLDC
Commande
tuEtxHty
xxavectytyMtuGtxFtxpOA
rObservateu
tuEtxHty
xxavectuGtxFtpxSLI
)(ˆ tx
G
F
E
H x(t)y(t)
G
F
E
H
u(t)
M
+-
)(ˆ tx )(ˆ ty
-K
0)(0)det()(
0)(0)det()(
: siseulement et si stable
uementasymptotiqest r observateuet état d'retour avec commande de système Le
)().()det().det(
00
0det)(P
:est commande de du xystème tiquecaractéris polynôme Le
)(~)(
.0)(
)(~)(
.0)(~
)(
: commande de Système
c
pMHFpIpP
pGKFpIpP
pPpPMHFpIGKFpI
MHF
GKGKF
I
Ipp
tx
txHty
tx
tx
MHF
GKGKF
tx
txp
no
nf
ofnn
n
n
c
3)),((
001
010
100
),(
3)),((
100
210
121
),(
)(100)(
)(
0
0
1
)(
010
001
432
)(
432
1)(
23
HFOrangHFO
GFCrangGFC
txty
tutxtx
ppppG
Le système est Commandable et Observable
Exemple
- Faire la synthese d’un observateur pour le systeme G dont la dynamique soit plus rapide que le pôle le plus rapide du systeme.Le pôle le plus rapide de G etant en -2 on souhaite par exemple que tous les pôles de l’observateur soit en -5
13
46
10
))5(()det(/ 3 MpMHFpI
c
b
a
M
-Rendre le système non oscillant mais sans ralentir son mode le plus rapide via un retour d’état.On veut par exemple que tous les pôles du système de commandable soient en -2
]494[))2(()det(/ 3 KpGKFpIcbaK
Gain de la commande
Gain de l’observateurL’observateur n’a pas les bonnes C.I.X0=[0;0;0]
X0=[-2;-2;-2]
C.I.
Le système de commande avec retour d’état et observateur répond bien à la contrainte de régulation
Conclusion
La Commande à retour d’état par placement de pôles (commande modale) est relativement simple dans sa mise en œuvres, mais sur des systèmes complexes d’ordre élevés avec des vecteurs d’états qui ne sont pas toujours physique on arrive à des limites dans sa mise en œuvre.
La synthese d’observateur par placement de pôles (observateur modale) est relativement simple dans sa mise en oeuvre, mais sur des systémes complexes d’ordre élevés avec des vecteurs d’état qui ne sont pas toujours physique on arrive à des limites dans sa mise en œuvre.
Probléme:Comment choisir la dynamique de l’observateur et celle de la
commande en fonction du systeme et du CdC
Une solution :
Les observateurs du type Kalman + La commande LQ Commande LQG
Introduction à la commande Optimale
Partie IIICommande LQObservateur optimale Commande LQG
Commande optimale LQ
Choix du critère Le problème LQ Propriétés Grammien de commandabilité Conclusion
Choix du critère
** Qui dit commande optimale dit critère pour choisir cet optimum **
Le but d’un système de commande est de réaliser :
-Le rejet rapide des perturbations (l’état du système converge rapidement vers sont équilibre après une perturbation)-Minimiser l’énergie pour assurer le suivi de consigne et le rejet des perturbations
On se trouve donc face à une obligation de compromis entre une convergence rapide et une minimisation de l’énergie de commande
1)(1)0(
)(2)(2
1)(1)0(
)()(1
22
2
22
11
11
t
t
etxx
txtxsys
etxx
txtxsys
Rejet des perturbations
Soit deux systèmes avec la même condition initiale(≠0) on souhaite savoiren combien de temps les systèmes vont retourner a l’équilibre.
On constate que
0
22
0
21 )()( dttxdttx
On peut donc dire qu’un rejet rapide de perturbation est respecté par la minimisation de
0
2 )( dttxJ x
Dans le cas multivariable on défini une matrice de pondération Qc (symétrique définie non négative). On peut ainsi affecter un poid différent à chaques composantes du vecteur d’état
0
)(.).( dttxQtxJ cT
x
Energie de commande
De la même façons on peut évaluer l’énergie de commande par :
0
2 )( dttuJ u
Dans le cas multivariable on défini une matrice de pondération Rc (symétrique définie positive). On peut ainsi affecter un poids différent à chaques composantes du vecteur de commande
0
)(.).( dttuRtuJ cT
u
commande la den ponderatio : positive définie symétrique matrice
étatl' den ponderatio : negativenon définie symétrique matrice
)()()()(
)()()()(
0
0 0
c
c
cT
cT
LQ
cT
cT
uxLQ
R
Q
dttuRtutxQtxJ
dttuRtudttxQtxJJJ
Critère de compromis
Des observations précédentes on peut définir un critère de compromis entre l’énergie de commande et la dynamique du système.
Problème LQ
Le problème est de calculer la matrice K qui permet de déterminer le retour d’état u(t)=-K.x(t) qui minimise le critère LQ
)(.)(
)()()()(0
txKtu
dttuRtutxQtxJ cT
cT
LQ
cT
cT
Tc
QPGPGRPFPF
PGRK
avec
txKtu
F
RQ
1
1
c
0
RICCATI de algébriqueequation l' desolution P avec
)(.)(
: commande de loi lapar donnéeest LQ régulation de problèmedu solution La
observable ),Q(et lestabilisab G)(F,-
positive définie symétrique matrice et negativenon définie symétrique matrice
: hypothèses les Avec
Une démonstration simple est disponible dans la référence [3]
éeest verifi detectable G)(F,condition la donc observableest , 3)),rang(O(
éeest verifi lestabilisab G)(F,condition la donc ecommandablest ,3)),((
100/1;10/1;1;
100
010
001
)(100)(
2
2
2
)(
0
0
1
)(
010
001
432
)(
432
1)(
0
23
FQFQ
GFGFCrang
avecRQ
txty
xtutxtx
ppppG
cc
cc
Exemple
Rc=1 K= [0.6314 0.9623 0.1231] ;
Pôles :
-1.7212 -0.4551 + 1.4793i -0.4551 - 1.4793i
Simulation en régulation y*=0
Rc=1/10 K= [2.7229 4.1529 1.0990 ]
Pôles :
-2.8337 -0.9446 + 0.9524i -0.9446 - 0.9524i
En diminuant la pondération sur la commande on accélère le système (les pôles du système on été déplacé plus à gauche) mais la valeur de la commande a augmenté.
Rc=1/100 [9.6215 15.5293 6.7703]
Pôles :
-9.8516 -0.8849 + 0.5569i -0.8849 - 0.5569i
En diminuant la pondération sur la commande on accélère le système maisla valeur de la commande a fortement augmenté.
On diminue R on accélère le Système
Mais le système de commande est-il robuste ?
c
*
c
1c
1
1S :ou d'
)( BO
)()()(
BOu
y
GFpIK
tupBOtw c
GuFpIx
GuxFpI
GuFxpx
Rappel
1)(
)(
:
Analyse de la BO
G
F
E
Hx(t)
u(t) y(t)
K
w(t)
On coupe la boucle
-
y*(t)
Un peu de manipulation algébrique
cc
TTc
T
cc
TTc
T
cc
TTc
TT
Tc
cc
TTTcc
TT
c
TTTc
TTTT
TT
cT
cT
cT
cT
RGFpIQ(-pI-F)GpBORpBOI
RGFpIQ(-pI-F)GpBORpBOI
RGFpIQ(-pI-F)GGFpIKIRK(-pI-F)G
PGRK
RGFpIQ(-pI-F)GGFpIPGRIRPGR(-pI-F)G
GFpIQ(-pI-F)GGFpIPGPGR(-pI-F)GGFpIPGPG(-pI-F)G
GFpI
(-pI-F)G
QPGPGRP(-pI-F)P(pI-F)
pIPPpI
QPGPGRPFPF
11
11
1111
1
111111
1111111
1
1
1
1
)())(1())((
)())(1())((
)())(()(I
: auraon Puisque
)())(()(I
: factoriseon et menbresdeux aux R ajouteOn
)()()(
)(par droite a multiplieOn
par gauche a multiplieOn
RICATTI deequation l' à ajouteOn
0 : àOn
Un peu ! T’es modeste ! (je rigole)Tu as des précisions historique sur l’équation de Ricatti:
D’où elle vient ?
11BO1: lemonovariab cas le Dans
))(1())(( :ou d'
negativenon definie Q
puisque positive-semi definie eHermitienn forme uneest 0)()(
)()())(1())((
)())(1())((
0
c
11
1
1
c
cccT
c
c
cTT
ccTTT
cc
TTT
Tc
cT
cT
S
RpBORpBOI
GpHQpHG
RGpHQpHGpBORpBOI
RGFpIQ(-pI-F)GpBORpBOI
PGRK
QPGPGRPFPF
11BO1
: toujoursaon LQ synthese uned' cas le Dans
c cS
Cela signifie que le lieu de Nyquist de la BO reste toujours à l’extérieur du cercle de rayon 1 centré sur le point critique (-1,0)
R
I
-1
Marge de gain [0.5 +∞]Marge de phase [-60° 60°]
Nyquist de la commande
Exemple
(R=1/10)
Le Nyquist de la commande est toujours à l’exterieur du cercle de rayon 1centré sur le point critique : MM ≥ 1
La synthèse LQ si elle nous garantie des propriétés fortes de robustesse,elle nous impose tout de même le choix des pondérations Qc et Rc qui n’est pas forcement simple.
Dans un premier temps :-On peut imposer d’avoir des matrices diagonales pour limiter le nombre de paramètres. -Fixer une matrice à l’identité et faire varier l’autre.
Mais dans le cas de système complexe d’ordre important on se retrouve devant le même problème que celui de la commande par placement de pôles.
Une solution pour le choix des matrices Qc et Rc a été proposé par Philippe de Larminat : la methode des grammien
Grammien de commandabilité
Dans cette approche on réduit le choix des matrices Qc et Rc à un horizon : Tc
Tc est l’horizon de commande. A partir de ce choix les matrices Qc et Rc sont définies de la façon suivante :
IR
dtGeGeTQ
c
TTFtFt
Cc
C
1
0
Ce choix permet d’avoir les pôles du système de commande LQ à gauche de la verticale d’abscisse -1/Tc
Avec les logiciels :
Sous SCILAB
Resolution de l’equation de Riccati continue :Fonction : RICC
Sous MATLAB
Resolution de l’equation de Riccati continue :Fonction ARE
Resolution du probleme LQ :K=lqr(F,G,Q,R)
Conclusion
La synthèse LQ nous offre une solution simple à la réalisation de régulateur à retour d’état avec comme avantage :
-De réaliser un compromis entre dynamique et coût énergétique-De garantir des propriétés de stabilité de la boucle de régulation
Le choix des matrices de pondération par la méthode des grammien offrentde plus une solution simple pour fixer la dynamique.
Mais comme dans le cas du placement de pôles modale les états du systèmen’étant pas toujours mesurable on doit avoir recours la plupart du temps à l’utilisation d’observateur
Observateur optimale
Observateur de Kalman Propriétés Grammien de commandabilité Conclusion
))()((
))()((
: covariance de matrice deet
t indépendannt mutuelleme systeme,du sortie laet entréel'sur
nulle moyenne de blancs, bruits des et v(t) w(t)avec
)()(.)(
)0()()(.)(.)(
SLI systémeun Soit
0
0
0
tvtvR
twtwQ
tvtxHty
xxavectwtuGtxFtpxSLI
T
T
Observateur de Kalman
)(ˆ.)(ˆ
ˆ)0(ˆ))(ˆ)(()(.)(ˆ.)(ˆ
: forme la deest systeme un telpour r observateuUn
0
txHty
xxavectytyMtuGtxFtxpOA
On constate que l’observateur ne réalise pas d’estimation des bruits v(t) et w(t)
But
On cherche le gain M qui réalise la meilleure estimation de l’état du systèmeC.a.D. minimiser :
(t)xx(t)- (t)x
(t)x(t)xtJ T
ˆ~
~~)(
ooTT
oT
o
QHRHFF
RHM
RoQ
1
1
o
0
RICCATI de algébriqueequation l' desolution M avec
: donnéeest n observatiod' problémedu solution La
ecommandabl )Q(F, détectable H)(F,-
negativenon définie symétrique matrice ,
: hypothèses les Avec
Une démonstration est disponible dans la référence [2]
Remarque :
P
RR
GH
FF
QPGPGRPFPF
QHRHFF
co
co
T
T
cT
cT
ooTT
: suivante dualité la aOn
0
commande lapour RICCATI de algébriqueEquation
0
nobservatiol'pour RICCATI de algébriqueEquation
1
1
Dans le cas de la commande et de l’observation on résout le même problème mathématique
Analyse de la BO
G
F
E
H
u(t)=0
M
+-
)(ˆ tx)(ˆ ty
w(t)
MFpIH
twpBOty o
1c )( BO
)()()(ˆ
Un peu de manipulation algébrique
1BO1 : leMonovariab cas le Dans
))(())((
)()()(I)(I
:où d'
M commeet factoriseOn -5
: membredeux au ajouteOn -4
)(-pI :par droite à multiplieOn -3
)H(pI :par gauche à multiplieOn -2
: nul termele ajouteOn -1
0
: àOn
o
0
111
1p
1p
1
1
n
1n
10
oT
oopooop
TTnono
T
non
oT
o
TT
nn
oTT
RpGIRpGI
HFIpHQFIpHRMFpIHRMFpIH
RH
R
HF
F
pIpI
QHRHFF
11BO1
: toujoursàon Kalman der observateuun d' synthese la de cas le Dans
o oS
Cela signifie que le lieu de Nyquist de la BO de l’observateur reste toujours à l’extérieur du cercle de rayon 1 centre sur le point critique (-1,0)
R
I
-1
Marge de gain [0.5 +∞]Marge de phase [-60° 60°]
Exemple
ecommandabl )Q(F,3))QF,((
détectable H)(F, 3))Hrang(O(F,
10/1;
100
010
001
)(100)(
2
2
2
)(
0
0
1
)(
010
001
432
)(
432
1)(
oo
0
23
Crang
RQ
txty
xtutxtx
ppppG
oo
Exemple
Etats
Sortie
M =[ -3.9094 1.0025 3.4648 ]
CI
Nyquist de la BO de l’observateur
Cercle de Rayon 1
La synthèse d’un observateur de Kalman si elle nous garantie des propriétés fortes de robustesse nous impose tout de même le choix des pondérations Qo et Ro qui n’est pas forcement simple.
Si l’on connaît la nature des bruits qui affecte le système le choix des pondérationsest automatique dans le cas contraire on peut :
Dans un premier temps :
-Imposer d’avoir des matrices diagonales pour limiter le nombre de paramètres. -Fixer une matrice à l’identité et faire varier l’autre.
Mais dans le cas de système complexe d’ordre important on se retrouve devant le même problème que celui de la commande par placement de pôles.
Une solution pour le choix des matrices Qo et Ro a était proposer par Philippe de Larminat : la methode des grammien d’observabilité
Grammien d’observabilité
Dans cette approche on réduit le choix des matrices Qo et Ro à un horizon : To
To est l’horizon d’observation. A partir de ce choix les matrices Qo et Ro sont définies de la façon suivante :
IR
dtGHeHeTQ
o
TFtTFt
oo
O
1
0
Ce choix permet d’avoir les pôles de l’observateur à gauche de la verticale d’abscisse -1/To
Conclusion
L’approche de Kalman nous offre une solution simple et robuste à la synthèse d’observateur avec comme avantage :
-De réaliser la meilleure estimation au sens de la minimisation de la variance de l’erreur.-De garantir des propriétés de stabilité de l’observateur.
Le choix des matrices de pondération par la méthode des grammien offrent de plus une solution simple pour fixer la dynamique d’observation.
Se pose donc maintenant le problème de la robustesse d’un système de commande LQ avec observateur d’état du type Kalman
Commande optimale LQG
Le problème LQG Limite du LQG LQG/LTR
La synthèse d’un système de commande LQG est effectuée conformément au théorème de séparation ou principe d’équivalence certitude qui stipule que le problème de commande LQG peut être résolu en traitant séparément le problème d’observation optimale et le problème de commande optimale sous-jacents :
ooTT
oT
cT
cT
Tc
QHRHFF
RHM
QPGPGRPFPF
PGRKavectxKtu
F
1
1
1
1
o
c
0 : RICCATI de algébriqueequation l' desolution avec
: commande de loi lapar donnéeest n observatio de problèmedu solution La
0 : RICCATI de algébriqueequation l' desolution P avec
)(.)(
: commande de loi lapar donnéeest LQ régulation de problèmedu solution La
ecommandabl )Q(F,et détectable F)(H, : HO-
observable ),Q(et lestabilisab G)(F, : HC-
0)(0)det()(
0)(0)det()(
: stables
uement asymptotiqsont r observateul'et état d'retour avec regulateur le
car stableuement asymptotiqest système Le
)().()det().det(
00
0det)(P
:est commande de systèmedu tiquecaractéris polynôme Le
)()(~)(
.0)(
)(
)(0
)(~)(
.0)(~
)(
: commande de Système
c
pMHFpIpP
pGKFpIpP
pPpPMHFpIGKFpI
MHF
GKGKF
I
Ipp
tvtx
txHty
tv
tw
MI
I
tx
tx
MHF
GKGKF
tx
txp
no
nf
ofnn
n
n
n
n
c
lestabilisab donc ecommandablest , 3)G)rang(C(F,
observableest ,3)),((1;
100
010
001
observableest , 3)),rang(O(
lestabilisab donc ecommandablest ,3)),((1;
100
010
001
)(100)(
2
2
2
)(
0
0
1
)(
010
001
432
)(
432
1)(
0
23
GF
QFQFOrangRQ
FQFQ
GFGFCrangRQ
txty
xtutxtx
ppppG
ccoà
cc
cc
Exemple
ExemplePoursuite
Régulation
CI
Limite du LQG
On pourrait penser que :
les systèmes de commande LQG possèdent des propriétés de robustesse aussi importantes que celles des systèmes optimaux de commande et d’observation sous-jacents.
LQRobuste
KalmanRobuste
LQG Robuste ?
)(ˆ.)(
)(.)(ˆ.)(ˆ
ˆ)0(ˆ))(ˆ)(()(.)(ˆ.)(ˆ 0
txKtuLDC
Commande
tuEtxHty
xxavectytyMtuGtxFtxpOA
rObservateu
G
F
H
M
+
-
)(ˆ tx
)(ˆ ty
-K
)(tu
)(ty
Analyse du régulateur
-GK
F
MH
M
+
-
)(ˆ tx
)(ˆ ty
-K)(tu
)(ty
F-GK-MH
M -K)(tu)(ty
)(.)(
)0()(.)(.)(
: plus de
)()(
)()(
)()()(
)(ˆ.)(
)(.)(ˆ.)(ˆ
ˆ)0(ˆ))(ˆ)(()(.)(ˆ.)(ˆ
0
0
txHty
xxavectuGtxFtpxSLI
tRytu
tKxtu
tMyMHGKFtpxREG
txKtuLDC
Commande
tuEtxHty
xxavectytyMtuGtxFtxpOA
rObservateu
reg
reg
Régulateur Système
+
-
)(tu )(ty)(* ty
BO
Remarque :Dans le cas multivariable on a : Régulateur * Système ≠ Système*Régulateur
On a perdu de la robustesse au niveau de la marge de Gain
1/MG
Cette limitation de la commande LQG a été mis en évidence à la fin des années soixante par Kwakernaak qui a montré que les propriétés de la commande LQ et au FK ne sont pas préservées dans le cas général.
Une bonne décennie après, ce problème a été repris par Doyle and Stein qui ont proposé une technique de synthèse des systèmes de commande LQG réalisant un recouvrement du transfert de la boucle ouverte du système de commande LQ ( respectivement du FK) sous-jacent et l’ont baptisé LTR comme Loop Transfer Recovery
On a deux possibilites soit on récupère les propriétés de robustesse :
-De la commande LQ -De l’observateur de Kalman
LQG/LTR : Recouvrement en Entrée
Synthétiser, dans une premier étape, le correcteur LQ par un choix approprié des pondérations Qc et Rc obéissant aux exigences du cahier des charges.
Dans une seconde étape, à partir d’un réglage nominal Qo et Ro du filtre de KALMAN, on augmentera le paramètre q du nouveau réglage :
Qo = Qo +qGGT , Ro = Ro
jusqu’ à ce que le transfert de boucle K(s)G(s) du correcteur LQG recouvre, sur une bande de fréquence suffisamment large, le transfert de boucle de retour d’ état LQ :
Lim K(s)G(s) = −K(pI−F)−1G ∞
q ∞ : Nyquist BO Nyquist de la commande
On peut donc retrouver les propriétés de robustesse de la commande LQ
LQG/LTR : Recouvrement en Sortie
Synthétiser, dans une premier étape, le correcteur LQ par un choix approprie des pondérations Qc et Rc obéissant aux exigences du cahier des charges.
Dans une seconde étape, a partir d’un réglage nominal Qc et Rc, du retour d’état LQ on augmentera le paramètre q du nouveau réglage :
Qc = Qc +qHTH , Rc = Rc
jusqu’ a ce que le transfert de boucle G(s) K(s) du correcteur LQG recouvre, sur une bande de frequence suffisamment large, le transfert de boucle de l’observateur:
Lim G(s) K(s) = −H(pI−F)−1M ∞
q ∞ : Nyquist BO Nyquist de l’observateur
On peut donc retrouver les propriétés de robustesse de l’observateur
Modélisation d’un système
Commande Modale(Placement de pôles)
Observateur Modale(Placement de pôles)
Commande et Observateur Modale
Commande LQ Observateur de Kalman
LQG
LQG/LTR
Perte de Robustesse
Calcul du gain Kde retour d’état defaçon Optimale
Calcul du gain Mde l’observateur defaçon Optimale
Si l’on ne peut mesurer l’état
Si l’on ne peut mesurer l’état
Résumé
Pas mal commeGraphe de décision.
Bibliographie (par ordre alphabetique)
Daniel Alazard : [1] Regulation LQ/LQG (note de cours de SUPAERO)
http://personnel.supaero.fr/alazard-daniel/Pdf/cours_LQG.pdf [2] Introduction au filtre de Kalman: (note de cours de SUPAERO) http://personnel.supaero.fr/alazard-daniel/Pdf/cours_Kalman.pdf
Benoît Bergeon : [3] Commande linéaire des systèmes multivariables
http://personnel.supaero.fr/alazard-daniel/gtmosar/cma.pdf
Philippe de Larminat : [4] Automatique, Commande des systèmes Linéaires,
HERMES-LAVOISIER
Mohammed M’Saad :[5] Commande Optimale : une introduction
(note de cours de l’ENSICAEN)