Anda di halaman 1dari 21

Commande prédictive

ENSPS 3A ISAV
Master ISTI AR

J. Gangloff
Plan

1.Introduction / Historique
2.Modélisation du système
3.Fonction de coût
4.Équations de prédiction
5.Commande optimale
6.Exemples
7.Réglage du GPC
8.Bibliographie
1. Introduction
1.1. Définition du « MPC »

● Model Predictive Control (MPC) :


– Utilisation explicite d'un modèle pour
prédire le comportement futur du système
– Calcul d'une séquence d'échantillons futurs
de commande minimisant une fonction de
coût sur un horizon fuyant
– Seul le premier échantillon de commande
est réellement appliqué au système. Toute
la séquence est recalculée à chaque pas.
1. Introduction
1.2. Principe du « MPC »

[ ]
u  t

[ ]
r  t 1 ⋮
⋮ u  t Nu −1
r  t N2  u t 
+
- Optimisation Système

[ ]
y  t 1

y  t  N2  y t
Prédicteur

N1 commandes
N2 mesures futures
futures
N2 consignes futures
1. Introduction
1.2. Principe du « MPC »

y
r

Horizon
fuyant

t N1 t N2 t

Objectif de l'optimisation : minimiser la surface


1. Introduction
1.3. Déclinaisons du « MPC »

● DMC (Dynamic Matrix Control)


– Utilise la réponse indicielle du système
– Processus stable et sans intégrateur
● MAC (Model Algorithmic Control)
– Utilise la réponse impulsionnelle
● PFC (Predictive Functional Control)
– Utilise un modèle d'état du système
– Peut s'appliquer aux systèmes non linéaires
● GPC (Generalized Predictive Control)
– Utilise un modèle CARMA
– Le plus répandu
1. Introduction
1.4. Avantages/inconvénient du « MPC »

● Avantages :
– Concept simple, réglage intuitif et aisé
– S'applique à tout type de systèmes, des
plus simples aux plus complexes (systèmes
instables, avec retards, non minimum de
phase, très peu amortis, multivariables, non
linéaires, variants)
– Si la consigne est connue à l'avance, son
caractère prédictif permet de l'anticiper et
donc d'améliorer le suivi.
– Numériquement stable
● Inconvénient : modélisation précise
2. Modélisation
2.1. Cas du MAC

● Modèle impulsionnel
– La sortie est reliée à l'entrée par l'équation
suivante :

y  t = ∑ hi u t − i 
i =1

– On tronque aux N premiers échantillons :


N
y  t k∣t = ∑ hi u t  k − i∣t 
i =1

– Inconvénient : représentation non minimale


2. Modélisation
2.2. Cas du GPC

● Modélisation CARMA (Controller Auto-


Regressive Moving-Average) :
C q-1 
A  q  y  t = q B  q  u  t − 1
-1 -d -1
-1
e t 
D q 
● Avec :
A  q-1 = 1 a -1
1q  a -2
2q   a na q -na

B  q = b0 b1q  b2q  bnb q-nb


-1 -1 -2

C  q -1 =1  c-1
1q  c -2
2q   c nc q -nc

● On fait souvent :
D  q-1 =  q-1 = 1− q-1
3. Fonction de coût
N2 Nu
2 2
J = ∑ [ y  t  j∣t − r  t  j ]  ∑ [ u  t j−1]
j= N 1 j= 1

Erreur quadratique Énergie de la commande

Paramètres de réglage : N2 , Nu , 
4. Équations de prédiction

● Cas du GPC :
– Première équation diophantienne :
C = E j  A  q-j F j

– Avec C=1 :
1= E j  A  q -j F j
deg  E j = j − 1
deg  F j = na
– On a :
[ Ay t = Bq-d u t − 1
 ]
e t 
× E j q j
 A E j y  t  j= E j B  u  t  j− d− 1 E j e  t  j
4. Équations de prédiction

– On utilise l'équation diophantienne :


1 − q-j F j y  t  j  = E j B  u  t  j − d −1 E j e  t  j 

– D'où on tire :
y  t  j  = F j y  t  E j B  u  t  j − d − 1 E j e  t  j 

– Meilleure prédiction :
y  t  j∣t = E j B  u  t  j − d− 1 F j y  t 
4. Équations de prédiction

● Séparation des commandes :


– Deuxième équation diophantienne :
E j B =G j  q-j  j

– Équation de prédiction :
y  t  j∣t = G j  u  t  j− d − 1  j  u  t − d− 1 F j y  t 

Réponse Réponse libre


forcée
5. Commande optimale

● Équation de prédiction :   f
y = G u
– Avec : T
[
y = y  t  1∣t  y  t  N2∣t  ]
T
u = [  u  t∣t  u  t  N − 1∣t  ]
u
T
f = [ f  t  1∣t  f  t  N ∣t  ]
2

Nu

[ ]
g0 0 ⋯ 0
g1 g0 ⋯ 0 Les g0 ... gN2-1 sont
⋮ ⋮ ⋮
G= N2 les échantillons de
g N −1 gN2−2 ⋯ g0
2

⋮ ⋮ ⋮ la réponse indicielle.
g N −1 gN −2 ⋯ gN −N
2 2 2 u
5. Commande optimale

● Fonction de coût :
T
J = y − r   y − r   u T u

dJ -1
● On a : u opt qui annule
d u
: u opt = G T G   I  GT  r − f 

● Avec : r = [ r  t  1 r  t  N2 ]


T

consignes futures

Seule la première valeur de la commande optimale


est appliquée au système.
6. Exemples
6.1. Exemple simple

● Soit le système mis sous la forme


CARIMA :
A =1 − 0.7q-1 B= 0.9 − 0.6q-1

● On a :
6. Exemples
6.1. Exemple simple

● Ce qui peut être mis sous la forme :


G

f

 
-1
0.8947 0.0929 0.0095
 G G  I 3  G = −0.8316
T T
0.8091 0.0929
−0.0766 −0.8316 0.8947
6. Exemples
6.2. Résultats de simulation
6. Exemples
6.2. Résultats de simulation
7. Réglage du GPC

● Paramètre  :
– Augmentation : ralentissement du système
– Diminution : commande plus énergique
donc accélération du système
● Paramètre N2 :
– Doit être au moins aussi grand que le
transitoire du système corrigé
● Paramètre N1 :
– Doit être supérieur au retard du système
● Paramètre Nu :
– Tend vers une réponse pile quand Nu ->0
8. Bibliographie

● R. Bitmead, M. Gevers et V. Wertz, « Adaptive Optimal


control – The thinking man 's GPC », Prentice Hall
International, 1990.
● E. F. Camacho et C. Bordons, « Model Predictive
Control », Springer Verlag, 1999.
● J.-M. Dion et D. Popescu, « Commande optimale,
conception optimisée des systèmes », Diderot, 1996.
● P. Boucher et D. Dumur, « La commande prédictive »,
Technip, 1996.