Académique Documents
Professionnel Documents
Culture Documents
Préparé par :
A S S E F Yanis
L A S L A Rayane
Groupe : AII.1
La Commande adaptative
La Commande adaptative est définie comme une commande permettant au
régulateur de s’adapter de lui-même aux changements du processus. En
conséquence, l’objectif adaptative est l’ajustement automatique en temps réel des
régulateurs des boucles de commande, afin de réaliser ou maintenir de façon
identique un certain niveau de performances, quand les paramètres du procédé à
commander varient dans le temps (en générale minimisation de l’erreur entre la
consigne et la sortie).
La commande adaptative peut être utilisé dans plusieurs cas tel que
la détection de défaut par la mise en évidence de variations anormales, Maintien
des performances du système de commande (comme cité précédemment) …
RÉGULATEUR RST
Un correcteur RST est synthétisé par une méthode de placement de pôles
algébrique, l’objectif de cette commande est de spécifier la loi de rejection de
perturbations indépendamment de celle de la poursuite de consigne. Et cela en
donnant le comportement d’un système décrit par une fonction de transfert
modèle, exprimée comme une fraction rationnelle en z-1, Usuellement cette
fonction est de deuxième ordre, et on prendra pour Am un polynôme Monique,
c’est-à-dire tel que Am(𝑧−1 = 0) = 1 (cela est toujours possible).
𝑅(𝑍 −1 ) 𝐶𝐴𝑁
-
𝜀(𝑡)
1
Partie 1 RST
Partie 1 :
RÉGULATEURS RST
Nous avons notre système à double intégrateur donné par la fonction de
transfert suivante :
1
𝐺 (𝑝) = 𝑝2
Equation de diophantienne :
On a: 𝐴− 𝑆 ′ + 𝐵− 𝑅′ = 𝐴𝑚 𝐴0
𝑇 = 𝐴+ 𝐵𝑚 𝐴0
Petit rappel
+ ′ +
𝐴+ = 1 et 𝐵+ = 1 Quand on n’a pas de pôle ou
𝑅 = 𝐴 𝑅 avec 𝐴 = 1 de zéro à compenser à l’aide du RST.
𝑆 = 𝐵+ 𝑆 ′ avec 𝐵+ = 1 𝐵+ = 𝑙𝑒𝑠 𝑧é𝑟𝑜𝑠 𝑞𝑢𝑖 𝑠𝑜𝑛𝑡 à 𝑙 ′ 𝑖𝑛𝑡é𝑟𝑖𝑒𝑢𝑟 𝑑𝑢 𝑐𝑒𝑟𝑐𝑙𝑒 𝑢𝑛𝑖𝑡é
𝐴+ = 𝑙𝑒𝑠 𝑝ô𝑙𝑒𝑠 𝑞𝑢𝑖 𝑠𝑜𝑛𝑡 à 𝑙 ′ 𝑖𝑛𝑡é𝑟𝑖𝑒𝑢𝑟 𝑑𝑢 𝑐𝑒𝑟𝑐𝑙𝑒 𝑢𝑛𝑖𝑡é
1 𝐵(𝑍 −1 )
𝐺(𝑝) = 2
: Nous allons essayer de l’écrire sous forme d’un polynôme
𝑝 𝐴(𝑍 −1 )
𝐵(𝑍 −1 ) 𝐺(𝑝) 1
𝐺(𝑍 −1 ) = = (1 − 𝑍 −1 ) × 𝑍 ( )= (1 − 𝑍 −1 ) × 𝑍(𝑝3)
𝐴(𝑍 −1 ) 𝑝
𝑇𝑒
𝐵(𝑍 −1 ) 𝑇𝑒 𝑍 −1 (1 + 𝑍 −1 ) 𝐵− = × 𝑍 −1 (1 + 𝑍 −1 ) 𝐴+ = 1
𝐺(𝑍 −1 ) = = × 2
𝐴(𝑍 −1 ) 2 (1 − 𝑍 −1 )2
𝐴− = (1 − 𝑍)2 𝐵+ = 1
2
Partie 1 RST
𝐷𝑒𝑔(𝑆) = 𝐷𝑒𝑔(𝐵) − 1 = 2 − 1 = 1 => 𝑆(𝑍) = 𝑆0 + 𝑆1 𝑍 −1
𝐷𝑒𝑔(𝑅) = 𝐷𝑒𝑔(𝐴) − 1 = 2 − 1 = 1 => 𝑅(𝑍) = 𝑅0 + 𝑅1 𝑍 −1
Ce qui nous donne :
𝐴− 𝑆 ′ + 𝐵− 𝑅′ = 𝐴𝑚 𝐴0
𝐴− 𝑆 + 𝐵− 𝑅 = 1
𝑇𝑒 𝑇𝑒
(1 − 𝑍)2 (𝑆0 + 𝑆1 𝑍 −1 ) + 𝑍 −1 (1 + 𝑍 −1 ) = 1 𝑎𝑣𝑒𝑐 =1
2 2
3
Partie 1 RST
RÉSULTATS DE SIMULATION
M = V =
G =
1.0000 0 0 0 1
1
--- -2.0000 1.0000 0.5000 0 0
s^2
1.0000 -2.0000 0.5000 0.5000 0
0 1.0000 0 0.5000 0
Gz =
S = R =
0.5 z + 0.5
-------------
z^2 - 2 z + 1
1.0000 0.7500 2.5000 -1.5000
4
Partie 1 RST
On peut donc directement tirer les valeurs des S et R :
𝑆0 = 1 , 𝑅0 = 2.5
𝑆1 = 0.75 , 𝑅1 = −1.5
5
Partie 1 RST
COMMENTAIRES SUR LES GRAPHS
À partir du graphe 1 la sortie
converge petit à petit vers la valeur de
l’entrée (échelon).
À partir du graphe 2 on remarque par
la suite que la valeur de l’erreur diminue
petit à petit, ce qui vérifie la fiabilité de la
méthode utilisé (RST) pour maintenir un
certain niveau de performance par rapport
au temps.
Finalement la commande appliquée
diminue s’adapte automatiquement elle
prend 1 puis directement -1
Commande appliquée
RST
sortie d une rampe unitaire avec
Différence entre l entrée et la
un régulateur RST
On remarque que la sortie suit
l’entrée tant bien que mal avec une
certaine erreur qui se stabilise et
diminue lentement via le temps.
6
Partie 1 RST
Afin de mieux étudier la robustesse du régulateur RST nous allons étudier le
modèle de Bode de notre système, Soit en passe à la fonction de transfert en boucle
ouverte :
𝐵. 𝑅
𝐹𝐵𝑂 =
𝐴. 𝑆
*
PROGRAMME SOUS MATLAB
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%% Régulateur RST Bode (Suite) %%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%% Graphes %%
% Fonction de transfert en BO %
TF_BO=filt([1],[S0 S1])*filt([R0 R1],[1])*Gz %% En Z-1 %%
% On peut aussi utiliser la convolution pour la calculer %
A=[1 -2 1]; %% Coef de A (dénominateur) %%
B=[Te^2/2 Te^2/2 0]; %% Coef d B (numérateur) %%
Br=conv(B,R); %% Produit de convolution %%
As=conv(A,S);
TF_BO=tf(Br,As,-1) %% En Z %%
figure(1)
bode(TF_BO) %% Diagramme de Bode %%
margin(TF_BO) %% Marge de phase et de gain %%
[Gm,Pm,Wcg,Wcp]=margin(TF_BO) %% Affectation des valeurs en variables %%
Ça converge
vers un
step(F_bo/(1+F_bo)) ➔ échelon donc
c’est vérifier
7
Partie 1 RST
DIAGRAMME DE BODE
𝐺𝑚 = −319 𝑑𝐵
𝑃𝑚 = 102
RÉSULTAT MATLAB
TF_BO = TF_BO =
1.25 z^-1 + 0.5 z^-2 - 0.75 z^-3 1.25 z^3 + 0.5 z^2 - 0.75 z
------------------------------------ -----------------------------
1 - 1.25 z^-1 - 0.5 z^-2 + 0.75 z^-3 z^3 - 1.25 z^2 - 0.5 z + 0.75
Fin de la partie I
8
Partie 2 CSTR
Partie 2 :
RÉACTEUR CONTINU PA (parfaitement agité) (CSTR)
Pour cette partie du TP nous allons faire la simulation du système en boucle
ouverte.
Nous avons en premier lieu les équations d’état du système CSTR :
Bilan de Masse :
𝑑𝐶𝑎 (𝑡) 𝑄 −𝐸
( )
= (𝐶𝑎𝑜 − 𝐶𝑎 (𝑡)) − 𝑘𝑜 𝐶𝑎 (𝑡) 𝑒 𝑅𝑇(𝑡)
𝑑𝑡 𝑉
Bilan Energetique :
𝑑𝑇(𝑡) 𝑄 −𝐸 −𝑘3
( )
= (𝑇𝑜 − 𝑇(𝑡)) − 𝑘1 𝐶𝑎 (𝑡)𝑒 𝑅𝑇(𝑡) + 𝑘2 𝑞𝑐 (1 − 𝑒 𝑐(𝑡) )(𝑇𝑐𝑜 − 𝑇(𝑡))
(𝑡) 𝑞
𝑑𝑡 𝑉
𝑋1 = 𝐶𝑎 / 𝑋2 = 𝑇 / 𝑈 = 𝑞𝑐 / 𝑌 = 𝐶𝑎
Nous allons par la suite introduire et initialiser les paramètres sur MATLAB :
1- Implémentation
9
Partie 2 CSTR
Valeurs de
l’entrée (à savoir
le débit reçu)
Ensuite nous allons ouvrir un autre modèle où nous allons implémenter notre
fonction en boucle ouverte, On va d’abord commencer par créer les valeurs de nos
signaux de références en se basant sur le tableau donné en régime stationnaire :
10
Partie 2 CSTR
11
Partie 2 CSTR
Nous allons ensuite prendre un temps de 600 pour simuler le tout (600 parce
que nous avons 15 valeurs pour les différents signaux avec une période de 10 ce
qui nous donnera 150 pour une période on va mettre 4 périodes pour laisser au
signal le temps de se stabiliser).
Notre schéma en boucle ouvert sera alors comme suit :
12
Partie 2 CSTR
13
Partie 2 CSTR
On remarque par le biais des 2 schémas qu’au début les 2 graphes suivent
une même trajectoire avec quelques perturbations pour les sorties du CSTR puis
après un certain temps les sorties divergent (à peu près à 300) vers leurs valeurs en
régime permanent environ 350 pour la température et 1.02 pour la concentration.
Si on décide de faire l’expérience et enlever ½ des valeurs soit on se
retrouvera avec 8 valeurs au lieu de 15 on aura une instabilité plus sévère de notre
système mais sans autant qu’il diverge vers sa valeur finale comme le démontre les
graphes si dessous :
14
Partie 2 CSTR
On remarque aussi que si on modifie la dernière valeur de notre débit vers une
valeur légèrement plus grande nous aurons cette divergence par rapport au signal
de référence qui se produira.
Par exemple pour une valeur finale de 113.302 :
15
Partie 2 CSTR
On remarque alors que plus la valeur finale est grande plus le signal atteignera ça
valeur finale rapidement (divergera du signal de référence)
16
Partie 2 CSTR
On remarque d’ailleurs aussi dans tous les cas traités les signaux de températures
ne sont pas exactement centré avec celui du modèle de référence contrairement à la
concentration même s’ils suivent la même trajectoire (au début pour certains)
On peut voir cela en rajoutant un +5 aux valeurs de la sortie de la température pour
comparer les 2 trajectoires. (On remarque que c’est quasiment identique mise à
part pour les perturbations)
17
Partie 2 CSTR
Bloc d’identifications :
18
Partie 2 CSTR
Graphe de l’entrée et de la sortie du système par rapport à une entrée fixe (échelon)
19
Partie 2 CSTR
Graphe de l’entrée et de la sortie du système par rapport à une entrée fixe pas : 0.01
20
Partie 2 CSTR
120 160
115
140
110
105 120
100
100
95
90 80
85
60
80
75 40
0 10 20 30 40 50 60 70 80 90 100 0 10 20 30 40 50 60 70 80 90 100
21
Partie 2 CSTR
Ex : Concentration
0.35 0.35
0.3 0.3
0.25 0.25
0.2 0.2
0.15 0.15
0.1 0.1
0.05 0.05
0 0
0 10 20 30 40 50 60 70 80 90 100 0 10 20 30 40 50 60 70 80 90 100
On remarque d’après les résultats des graphes obtenus que le pas le plus
optimale (adéquat) est le plus court à savoir (0.005) car les figures le système ayant
ce pas sont les plus aptes à se stabiliser et suivre une valeur sans trop de
perturbations.
On peut alors dire que l’augmentation du pas provoque une perte
d’information et plus notre pas est petit plus le signal de sortie sera fiable.
22
Conclusion
CONCLUSION
Au cours et après la réalisation de ce TP
nous avons pu implémenter la commande RST
et CSTR sur un système et visualiser
graphiquement l’efficacité de ces dernières à
compenser la stabilité et la non linéarité et
finalement nous les avons assembler sur un seul
même cas de figure en boucle fermée et on
conclue finalement que plus le pas est petit plus
notre sortie nous donne un meilleur suivi et un
meilleur résultat.
23