Vous êtes sur la page 1sur 2

U.S.T.H.B/F.G.

E 2eme année Master AS


Département d’Automatique Année universitaire 2022- 2023

Commande prédictive et adaptative


TP3 : Commande prédictive à base de modèle d’état
Objectif du TP :
L’objectif est de contrôler un système linéaire stable ou instable en boucle ouverte, en utilisant
la commande prédictive à base de modèle d’état. Cette stratégie de commande prédictive est
plus générale que la DMC et la GPC car elle est basée sur le modèle d'état discret du système.
L’environnement MATLAB sera utilisé pour simuler et contrôler des système continu et discret
en boucle fermée.
A l'issue de ce TP, l'étudiant sera capable de :

• Contrôler les systèmes linéaires qui sont présentés à l'aide d'un modèle d'espace d’état
en utilisant la commande prédictive.
• Déterminer les avantages et les inconvénients de la commande prédictive à base de
modèle d’état.
• Obtenir les meilleures valeurs des paramètres de contrôle (𝑁𝑝 , 𝑁𝑢 , 𝜆) de cette stratégie
de commande.
Préparation :
Soit un système décrit par le modèle d’état suivant :
𝑋(𝐾 + 1) = 𝐴 ⋅ 𝑋(𝑘) + 𝐵 ⋅ 𝑢(𝑘)
[
𝑦(𝑘) = 𝐶 ⋅ 𝑋(𝐾)

Avec :
1 −0.5 1.2
𝐴=[ ], 𝐵=[ ], 𝐶 = [1 0]
2.36 0.63 0.45
On donne : 𝑁𝑝 = 3, 𝑁𝑢 = 3, 𝜆 = 0.5

1) Calculer : Φ𝑝 et Ψ𝑝 .
2) Calculer la matrice du gain.
3) Donner l’équation de récurrence de la loi de commande.
Travail de laboratoire :
Dans cette partie, la commande prédictive a base de modèle d’état sera programmée
sou MATLAB dans le but de contrôler le système suivant :
𝑋(𝐾 + 1) = 𝐴 ⋅ 𝑋(𝑘) + 𝐵 ⋅ 𝑢(𝑘)
[
𝑦(𝑘) = 𝐶 ⋅ 𝑋(𝐾)

Avec :
1 0.1 1
𝐴=[ ], 𝐵=[ ], 𝐶 = [0 1]
−0.4 1 −0.1

1
U.S.T.H.B/F.G.E 2eme année Master AS
Département d’Automatique Année universitaire 2022- 2023

Pour ce faire, suivez les étapes suivantes :


Etape 1 : Stockez les valeurs des paramètres de contrôle (𝑁𝑢 = 1, 𝑁𝑝 = 3, 𝜆 = 0.25),
la matrice 𝐴 et les vecteurs ( 𝐵, 𝐶) dans des variables.
Etape 2 : En utilisant Matlab et le modèle d’état, calculer les 1000 premières valeurs
de la réponse indicielle.
1) Tracez la réponse obtenue. Que constatez-vous ?
Etape 3 : Dans le même scripte, écrire un programme qui sert à calculer les sommes
𝑆𝑖 avec 𝑖 = 0: 𝑁𝑝 − 1.

1) Formez le vecteur Φ𝑝 et la matrice 𝐺𝑓 .


2) Affichez le résultat obtenu et le vérifiez avec celui obtenu dans le cours.
Etape 4 : Dans le même scripte, écrire un programme pour calculer la matrice Ψ𝑝 , la
matrice du gain et le vecteur 𝑔𝑐𝑇 .
1) Affichez le résultat obtenu et le vérifiez avec celui obtenu dans le cours.
Etape 5 : Simulez le système et la loi de commande obtenue en boucle fermée . Où, la
référence est un signal contenant 200 points comme suit : 𝜔=[zeros(1,100),2*ones(1,100)]
1) A l'aide de la fonction « subplot », tracez le signal de commande, la variation du
signal de commande, et dans la même case la référence (en rouge) et la sortie du
système (en bleu).
2) Calculez le temps de réponse.
3) Calculer le temps de simulation de la boucle de commande et comparer-le avec
celui de la commande GPC et DMC, que constatez-vous.
4) Changez la valeur de 𝑁𝑝 , 𝑁𝑢 𝑒𝑡 𝜆 pour avoir un temps de réponse minimale.

Partie 2 :
On veut contrôler le système linéaire continu suivant :
𝑋̇ = 𝐴 ⋅ 𝑋 + 𝐵 ⋅ 𝑢
[
𝑦 =𝐶⋅𝑋

Où : 𝐴, 𝐵, 𝐶, 𝑁𝑢 , 𝑁𝑝 , 𝜆 ne changent pas :

1) En utilisant la fonction ODE45 pour intégrer le système linéaire, tracez la réponse


indicielle des systèmes (continu et discrète) sur la même figure, avec 𝑇𝑠 = 0.001.
2) Refaire les étapes de 1 à 5 pour contrôler le système continu.
Rappel : A partir de la représentation d’état d’un système linéaire continu (𝐴𝑐 , 𝐵𝑐 , 𝐶𝑐 , 𝐷𝑐 ), on
peut déterminer la représentation d’état discrète (𝐴, 𝐵, 𝐶, 𝐷) comme suit :
+∞
1
𝐴 = ∑ 𝐴𝑖𝑐 𝑇𝑠𝑖
𝑖!
𝑖=0

𝐵 = (𝐴 − 𝐼) ⋅ 𝐴−1
𝑐 ⋅ 𝐵𝑐 , 𝐶 = 𝐶𝑐 , 𝐷 = 𝐷𝑐
2

Vous aimerez peut-être aussi