Sunteți pe pagina 1din 27

Partie 1 :

Introduction à la
Commande Prédictive

Ecole des JDMACS, Angers, 19-21 Mars 2009


Commande prédictive : interaction optimisation – commande
Pl de
Plan d la
l présentation
é t ti
1. Introduction
1. Quelques repères
2 Philosophie
2. Phil hi
2. Les concepts de la Commande Prédictive
1. Principes
p de base
2. Paramètres de réglage
3. Modélisation des contraintes
4. Schéma récapitulatif
3. Mise en œuvre dans le cas non contraint
1. Approche GPC (Commande Prédictive Généralisée)
1
2. Approche MPC (Model Predictive Control)
3. Etude d’un exemple
Pl de
Plan d la
l présentation
é t ti
1. Introduction
1. Quelques repères
2 Philosophie
2. Phil hi
2. Les concepts de la Commande Prédictive
1. Principes
p de base
2. Paramètres de réglage
3. Modélisation des contraintes
4. Schéma récapitulatif
3. Mise en œuvre dans le cas non contraint
1. Approche GPC (Commande Prédictive Généralisée)
1
2. Approche MPC (Model Predictive Control)
3. Etude d’un exemple
1. Introduction
1.1 Quelques repères
ƒ Historique :
• Commencement fin des années 70 (Richalet et al.,
al Cutler&Ramaker)
MPHC-MAC, DMC
Issu de la communauté de la commande adaptative : EPSAC, GPC
• Améliorations
A éli ti d
dans l
les années
é 90 : Etude
Et d de d lal stabilité
t bilité ett de
d la
l
robustesse (Mayne et al.)
• Période de maturité depuis le début des années 2000 : solutions
explicites,
li it commande
d prédictive
édi ti d systèmes
de tè h b id
hybrides, non-linéaires,
li é i
rapides …
ƒ Applications : initialement sur des systèmes linéaires et lents
• De nombreux domaines applicatifs
• Plus de 1000 applications répertoriées (Qin&Badgwell’03)
ƒ De nombreux logiciels commerciaux disponibles :
• DMC, IDCOM, HIECON, PFC, RMPCT, PCT, SMCA, IDCOM-M, OPC,
3dMPC, Connoisseur 4
1 Introduction
1.
1.2 Philosophie

Trajectoire
Chemin « anticipatif »
Chemin « non anticipatif »

ƒ Création d’un effet anticipatif par utilisation


explicite de la trajectoire à suivre dans le
futur.
ƒ Prise en compte de contraintes.
ƒ Stratégie de commande bien adaptée aux
Réponse 'classique'
problèmes de suivi de trajectoires,
p j , p pour
sans anticipation
lesquels la trajectoire à suivre est
parfaitement connue à l’avance et planifiée.
Réponse avec
anticipation
ti i ti
ƒ Application
pp dans le domaine de la machine
outil, pour la commande de moteurs d’axe,
en régulation de température (domotique),
etc. 5
Pl de
Plan d la
l présentation
é t ti
1. Introduction
1. Quelques repères
2 Philosophie
2. Phil hi
2. Les concepts de la Commande Prédictive
1. Principes
p de base
2. Paramètres de réglage
3. Modélisation des contraintes
4. Schéma récapitulatif
3. Mise en œuvre dans le cas non contraint
1. Approche GPC (Commande Prédictive Généralisée)
1
2. Approche MPC (Model Predictive Control)
3. Etude d’un exemple
2 Les concepts de la commande prédictive
2.
2.1 Principes de base
ƒ Utilisation d’un modèle numérique du système permettant de prédire le
comportement futur
ƒ Élaboration d’une séquence de commandes futures en boucle ouverte
par minimisation d’une fonction
f de coût
û sur un horizon fini
f
ƒ Application de la première valeur de cette séquence sur le système
ƒ Réitération de toute cette procédure à la période d d’échantillonnage
échantillonnage
suivante selon la stratégie dite de l’horizon fuyant

ª structure de commande en boucle fermée


Consigne

N −1
∑ l ( xˆ (t + i),) u (t + i))
Sortie prédite
min ϕ ( xˆ (t + N )) +
Sortie u (t + i ),i = 0, N −1 i =1
Commandes futures
⎧ xˆ (t + i + 1) = f ( xˆ (t + i ), u (t + i ))
sous les contraintes ⎨
⎩h( xˆ (t + i ),..., xˆ (t + N ), u (t ),..., u (t + N − 1))
Passé t +h
Futur
t
7
2 Les concepts de la commande prédictive
2.
2.2 Paramètres de réglage
ƒ Les horizons :
• de prédiction sur la sortie
• de prédiction
p sur la commande
• sur les contraintes

ƒ Contraintes terminales

ƒ Fonction de coût :
• Norme utilisée pour le coût instantané
• Coût terminal
• Facteur de pondération

ƒ Méthode utilisée pour obtenir la solution optimale (par exemple solveur


utilisé pendant la phase d’optimisation)

Mayne, Rawlings, Rao, Scokaert, “Constrained model predictive control:


Stability and optimality”, Automatica, 2000
8
2 Les concepts de la commande prédictive
2.
2.3 Modélisation des contraintes
ƒ Les contraintes les plus classiques :
• Contraintes sur l’amplitude de la commande
• Contraintes sur l’incrément de commande
• Contraintes sur la sortie
• Contraintes terminales

ƒ Description unifiée des contraintes :


⎧⎪ Aγ (q −1 ) γ (t ) = Bγ (q −1 ) u (t − d )
Approche " Transfert" : ⎨
⎪⎩γ min ≤ γ (t + i k ) ≤ γ max , N c1 ≤ i ≤ N c2

⎧Cx(t + i t ) + Du (t + i t ) ≤ γ N c1 ≤ i ≤ N c2

Etat" : ⎨ x(t + N t ) ∈ X N
Approche " Etat

⎩u (t + i t ) = Kx(t + i t ) Nu ≤ i ≤ max( N c2 , N 2 ) − 1
9
2 Les concepts de la commande prédictive
2.
2.4 Schéma récapitulatif

10
Pl de
Plan d la
l présentation
é t ti
1. Introduction
1. Quelques repères
2 Philosophie
2. Phil hi
2. Les concepts de la Commande Prédictive
1. Principes
p de base
2. Paramètres de réglage
3. Modélisation des contraintes
4. Schéma récapitulatif
3. Mise en œuvre dans le cas non contraint
1. Approche GPC (Commande Prédictive Généralisée)
1
2. Approche MPC (Model Predictive Control)
3. Etude d’un exemple
3 Mise en œuvre dans le cas non contraint
3.
3.1 Approche GPC
ƒ Modèle numérique :
•Définition du modèle sous forme CARIMA (Controlled AutoRegressive
Integrated Moving Average) :

−1 −1 C ( q −1 )ξ (t )
A( q ) y (t ) = B ( q )u (t − 1) +
Δ ( q −1 )

avec : Δ ( q −1 ) = 1 − q −1 , q −1 opérateur retard


ξ (t ) bruit blanc centré
C ( q −1 ) polynôme de perturbati on

•Cette structure apporte un terme intégrateur au sein de la loi de


commande et garantit l’annulation de toute erreur statique vis à vis de
consigne ou de perturbation constante

12
3 Mise en œuvre dans le cas non contraint
3.
3.1 Approche GPC
ƒ Equation de prédiction :
•Prédicteur optimal à j-pas :

F j (q −1 ) H j ( q −1 ) −1 −1
y (t + j / t ) = −1
y (t ) + −1
Δu (t − 1) + G j ( q ) Δu (t + j − 1) + J j ( q )ξ (t + j )
C (q ) C (q ) 1 4 4 4 4 4 4 4 2 4 4 4 4 444 3
144444 42444444 3 réponse forcée
réponse libre

•Les polynômes inconnus sont solutions d’équations diophantiennes


pouvant être résolues récursivement :

Δ (q −1 ) A( q −1 ) J j (q −1 ) + q − j F j ( q −1 ) = C (q −1 )
C ( q −1 ) G j (q −1 ) + q − j H j (q −1 ) = B (q −1 ) J j (q −1 )

13
3 Mise en œuvre dans le cas non contraint
3.
3.1 Approche GPC
ƒ Fonction de coût quadratique :
•Comprenant des termes portant sur les erreurs de prédiction dans le
futur et les incréments de commandes futures :
N2 Nu
J= ∑ [w(t + j ) − yˆ (t + j )] + λ ∑ [Δu (t + j − 1)]2
2
j = N1 j =1

sous l' hypothèse : Δu (t + j ) = 0 pour j ≥ Nu

•Quatre paramètres doivent être choisis par l’utilisateur :

N1 horizon de prédiction inférieur


N2 horizon de prédiction supérieur
Nu horizon de prédiction sur la commande
λ facteur de pondération sur la commande

14
3 Mise en œuvre dans le cas non contraint
3.
3.1 Approche GPC
ƒ Forme matricielle de l’équation de prédiction :

~+ 1 1
yˆ = G u −1
if y (t ) + −1
ih Δu (t − 1)
C (q ) C (q )
144444424444443
réponse libre

[
if = FN1 (q −1 ) L FN 2 (q −1 ) ]T ⎡ g N1 g NN1−1 L L ⎤
⎢ N1 ⎥
ih = [H (q )]
1
1 T ⎢ g NN1++11
N1 ( q
−1
) L H N2 −
g NN1 +1 L L ⎥
G=⎢ 1 1 ⎥
~ = [Δu (t ) L Δu (t + N − 1)] T
u ⎢ L L L L ⎥
u
⎢ g N2 g NN 2 −1 L g N − N +1 ⎥
N2
yˆ = [ yˆ (t + N1 ) L yˆ (t + N 2 )] T ⎣ N2 2 2 u ⎦

•Les coefficients de la matrice G sont en fait les coefficients de la


réponse indicielle du modèle.

15
3 Mise en œuvre dans le cas non contraint
3.
3.1 Approche GPC
ƒ Expression de la loi de commande :
•Forme matricielle du critère :
T
~ ) = ⎡G u
~ + 1 if y (t ) + 1 ih Δu (t − 1) − w ⎤ ⎡G u
~ + 1 if y (t ) + 1 ih Δu (t − 1) − w ⎤
J (u ⎢ −1 −1 ⎥ ⎢ −1 −1 ⎥
⎣ C ( q ) C ( q ) ⎦ ⎣ C ( q ) C ( q ) ⎦
+λu
~T u
~
•Séquence
Séquence de commandes optimales :
⎛ 1 1 ⎞
~
u = N ⎜ w − if y (t ) − ih Δ u (t − 1) ⎟
opt ⎜ −1 −1 ⎟
⎝ C (q ) C (q ) ⎠
⎡ n1T ⎤
avec : w = [w(t + N1 ) L w(t + N 2 ) ]T [
et : N = G TG + λ I N u ]−1 T ⎢
G =⎢ M ⎥

⎢n T ⎥
⎣ Nu ⎦
•Commande appliquée au système à l’instant t :
⎛ 1 1 ⎞
uopt (t ) = uopt (t − 1) + n1T ⎜⎜ w − −1
if y (t ) − −1
ih Δu (t − 1) ⎟

⎝ C (q ) C (q ) ⎠
16
3 Mise en œuvre dans le cas non contraint
3.
3.1 Approche GPC
ƒ Régulateur polynomial équivalent :
ξ +
S (q −1 ) = C (q −1 ) + n1T ih q −1
w + 1 −1 1
T (q) −1 q B
ΔS(q ) A(q −1) R(q −1 ) = n1T if
[ ]
- + T
u
Régulateur
y T (q ) = C (q −1 ) n1T q N1 L q N 2
R(q −1)
polynomial
équivalent

•Equation aux différences pour l’implantation de la loi de commande :

S ( q −1 ) Δ ( q −1 )u (t ) = − R ( q −1 ) y (t ) + T ( q ) w(t )

•Par rapport à une structure RST classique, le polynôme T est ici non
causal.

17
3 Mise en œuvre dans le cas non contraint
3.
3.1 Approche GPC
ƒ Programmation hors ligne :
•Définition de la consigne (stockage point par point)
•Choix dd’une
une période d
d’échantillonnage
échantillonnage et définition des polynômes A
et B du modèle CARIMA (par identification préalable si nécessaire)
•Choix des paramètres de réglage de la fonction de coût
•Calcul des prédicteurs optimaux par résolution des équations
diophantiennes
•Synthèse
y des p
polynômes
y R,, S et T du régulateur
g équivalent
q
ƒ Boucle temps réel :
•Acquisition de la sortie
•Calcul de la commande par équation aux différences
•Envoi de la commande

Boucle temps réel très rapide (moins de 200 μs)


18
,

3 Mise en œuvre dans le cas non contraint


3. ,

,
3.2 Approche MPC
ƒ Description du modèle :
•Modèle linéaire à temps invariant :

⎧x(t + 1) = A x(t ) + B u (t )
⎨ , A ∈ R n× n , B ∈ R n×1 , C ∈ R1× n , n dimension de l' état
⎩ y (t ) = C x (t )

•Ajout d’une action intégrale pour annuler les erreurs statiques :


u (t ) = u (t − 1) + Δu (t )

•Représentation d’état étendue :


⎡ x(t ) ⎤
xe (t ) = ⎢ ⎥
⎧xe (t + 1) = A e xe (t ) + B e Δu (t ) ⎣u (t − 1)⎦

⎩ y (t ) = Ce xe (t )
⎡ A B ⎤ B = ⎡B ⎤ Ce = [C 0]
Ae = ⎢ ⎥ e ⎢ ⎥
⎣ 0 1 ⎦ ⎣1⎦
19
3 Mise en œuvre dans le cas non contraint
3.
3.2 Approche MPC
ƒ Prédiction de la sortie : i −1
i − j −1
j
yˆ (t + i ) = C A x (t ) +
i
∑ CA B [u (t − 1) + ∑ Δu (t + l )]
j =0 14 4 42 l = 04 4 43
u (t + j )

ƒ Fonction de coût quadratique :


N2 N u −1
∑ ∑
2 2
J= yˆ (t + i ) − yr (t + i ) ~
QJ (i )
+ Δu (t + i ) R~
J (i )
i = N1 i =0

N1 horizon de prédiction inférieur


La minimisation de J donne la N2 horizon de prédiction supérieur
séquence
é d commandes
de d futures
f t Nu horizon de prédiction sur la commande
~ ~
QJ , R J facteurs de pondération
ƒ Observateur :
xˆ e (t + 1) = A e xˆ e (t ) + B e Δu (t ) + K[ y(t ) − Ce xˆ e (t )]
20
3 Mise en œuvre dans le cas non contraint
3.
3.2 Approche MPC
ƒ Loi de commande :
•Séquence de commandes futures obtenue par minimisation du critère
précédent réécrit sous forme matricielle
•Par application du principe de l’horizon fuyant, la première valeur de
cette séquence est appliquée au système : Δu (t ) = F y (t + N ) − L xˆ (t )
r r 2 e

Δu (t)
yr (t+N 2) u (t ) ⎡A B⎤ y (t )
+
Fr ∫ ⎢C 0 ⎥
− ⎣ ⎦

yˆ (t )
⎡ A e − KCe [B e K ]⎤
⎢ Ce
⎣ I 0 ⎥⎦

xˆ e (t )
Observateur

L
21
3 Mise en œuvre dans le cas non contraint
3.
3.3 Etude d’un exemple
ƒ Modèle de la bicyclette : Astrom, Klein, Lennartsson, Control System Magazine, 2005

a, h : coordonnées du centre d
d' inertie
V : vitesse de la roue arrière constante
m : masse totale du système
J x : moment dd' inertie sur x
D = − J xz : moment d' inertie sur x z
ϕ : angle d' inclinaison (positif à droite)
δ : angle
g de braquage
q g (p(positif à g
gauche))

ƒ Hypothèses
yp : Linéarisation aux petits angles
ƒ Théorème du moment dynamique :
d 2 ϕ (t ) D V d δ (t ) mV 2 h
Jx = m g h ϕ (t ) + + δ (t )
dt2 1424 3 b dt b
couple lié 14243 14243
à la gravité couple lié couple lié
aux forces d'inertie aux forces centrifuges
lors du braquage 22
3 Mise en œuvre dans le cas non contraint
3.
3.3 Etude d’un exemple
ƒ Modèle de la bicyclette : Equation similaire à celle d’un pendule inverse
linéarisé

a = 0,492 m
b = 2a
h =1,028 m
V = 10 m/s

ƒ Fonction
F ti d transfert
de t f t : Système
S tè i t bl en boucle
instable b l ouverte
t
mV h V
s+ s+ sous les hypothèses :
ϕ ( s) V D D ≈Va a
= J x ≈ m h2
δ (s) b J s 2 − m g h b h s 2 − g
D ≈ mah
Jx h
23
3 Mise en œuvre dans le cas non contraint
3.
3.3 Etude d’un exemple
N1 = 1 − N 2 = 10
ƒ Régulateur RST équivalent :
Nu = 1 − λ =10 000
−1 −1 −2
R (q ) = 1,0493 − 1,7852 q + 0,7456 q Te = 0,1 s
ΔS (q −1 ) = (1 + 0,00304 q −1 )(1 − q −1 )
Diagramme de Bode boucle corrigée
T (q ) = 0,256q + 0,794q 2 + 1,665q3 + 2,953q 4 + 4,781q5 + 60

7,327q 6 + 10,833q 7 + 15,637q8 + 22,202q9 + 31,156q10 40

e [dB]
Module
20
Diagramme de Black
30 0

25 -20
-3 -2 -1 0 1 2
10 10 10 10 10 10
Pulsation [rad/s]
20
-100
15
-150

Phase [Degré]
ule [dB]

10 -200
200
Modu

5 -250

-300
-3 -2 -1 0 1 2
0 10 10 10 10 10 10
Pulsation [[rad/s]]
-5
Marge de phase 44,8 °
-10 Marge de gain 8 dB
-270 -240 -210 -180 -150 -120
Phase [degré]
Marge de retard 0,9 Te 24
3 Mise en œuvre dans le cas non contraint
3.
3.3 Etude d’un exemple
10
Réponse
p à une consigne
g d’angle
g d’incli-
naison de 10° (situation improbable …)
8

6
1
4

2
0.5
0

-2
0
-4

-6
-0
0.5
5
-8

-10
0 5 10 15 20 25
-1
t [s]

Angle d’inclinaison
N1 = 1
-1.5
N 2 = 10 0 5 10
t [s]
15 20 25

Nu = 1
Angle de braquage
Pas de saturation λ =10 000
de commande
Te = 0,1 s
25
3 Mise en œuvre dans le cas non contraint
3.
3.3 Etude d’un exemple Réponse à une perturbation de 10° sur
10
l’
l’angle
l d’inclinaison
d’i li i (coup
( de
d vent)
t)
15
5

10
0

-5

-10
10
Perturbation -5

-15 -10
0 2 4 6 8 10 12 14
t [s]
[ ]

Angle d’inclinaison N1 = 1 -15


0 2 4 6 8 10 12 14
N 2 = 10 t [s]
Nu = 1
Angle de braquage
Pas de saturation λ =10 000
de commande
Te = 0,1 s
26
3 Mise en œuvre dans le cas non contraint
3.
3.3 Etude d’un exemple
10
Réponse à une perturbation d’angle
d angle
d’inclinaison de 10° (coup de vent)
5

0 4

3
-5
2

1
-10
0

-15
15 -1
1
Perturbation
-2

-20 -3
0 2 4 6 8 10 12 14
t [s]
-4
N1 = 1
Angle d’inclinaison -5
N 2 = 10 0 2 4 6 8 10 12 14
t [s]
Nu = 1
λ =10 000 Angle de braquage
Saturation de la
commande à 5° Te = 0,1 s
27

S-ar putea să vă placă și