Poly TD-Regul Num
Poly TD-Regul Num
Poly TD-Regul Num
numérique n◦ 1
H. Garnier
Contrôle numérique
Exercice 1
Soit le système discret décrit par la fonction de transfert
Y (z) z+1
G(z) = = 2
U (z) z −z+1
Exercice 2
Soit le système échantillonné constitué de la mise en cascade d’un bloqueur d’ordre zéro, d’un système continu
défini par G(s) et d’un échantillonneur représenté sur la figure 1.1 avec :
2
G(s) =
1 + 2s
1. Déterminer la fonction de transfert G(z) du système échantillonné lorsque Te = 1s.
2. Calculer les pôles et les zéros de G(z).
3. Rappeler la relation liant les pôles de G(s) et G(z).
4. Donner l’équation aux différences du système échantillonné.
5. Calculer la réponse y(k) à un échelon unité u(k) = Γ(k) et comparer avec la réponse indicielle du
système à temps continu rappelée ci-dessous :
1
Exercice 3
Soit le système dit échantillonné constitué de la mise en cascade d’un bloqueur d’ordre zéro, d’un système
continu défini par G(s) et d’un échantillonneur représenté sur la figure 1.1 avec :
3
G(s) =
(s + 1)(s + 3)
1. Proposer en justifiant une période d’échantillonnage Te pour déterminer le système échantillonné si
l’on souhaite réaliser un contrôle numérique.
2. Déterminer la fonction de transfert G(z) du système échantillonné lorsque Te = 0,5s.
3. Calculer les pôles et les zéros de G(z).
4. Comparer les pôles et les zéros de G(s) et de G(z). Quel résultat étrange est-il obtenu pour les zéros
de G(z) ?
5. Donner l’équation aux différences du système échantillonné.
Exercice 4
Soit le système échantillonné constitué de la mise en cascade d’un bloqueur d’ordre zéro, d’un système continu
défini par G(s) et d’un échantillonneur représenté sur la figure 1.1 avec :
2s + 4
G(s) =
s2 + 4s + 3
1. Proposer en justifiant une période d’échantillonnage Te pour déterminer le système échantillonné si
l’on souhaite réaliser un contrôle numérique.
2. Déterminer la fonction de transfert G(z) du système échantillonné lorsque Te = 0,2s.
3. Calculer les pôles et les zéros de G(z).
4. Comparer les pôles et les zéros de G(s) et de G(z). Quel résultat étrange est-il obtenu pour les zéros
de G(z) ?
5. Donner l’équation aux différences du système échantillonné.
Exercice 5
On réalise un contrôle numérique par la méthode de transposition qui consiste à déterminer dans un premier
temps le correcteur analogique qui permet de respecter le cahier des charges demandé. Le correcteur numé-
rique est ensuite déduit en exploitant une technique de discrétisation : approximation avancée, approximation
retardée, approximation bilinéaire (également appelée méthode de Tustin), méthode des pôles et des zéros,
etc. Ce principe est illustré sur la figure 1.2.
Figure 1.2: Synthèse d’un correcteur numérique par transposition du correcteur analogique
2
3. En déduire que le nom usuel de ce type de correcteur.
U (z)
4. Déterminer la fonction de transfert du correcteur numérique C(z) = (z) lorsque Te = 0,2s en utilisant
l’approximation retardée :
z−1
s=
Te z
5. Donner la loi de commande u(k) du correcteur numérique.
U (z)
6. Déterminer la fonction de transfert du correcteur numérique C(z) = (z) lorsque Te = 0,2s en utilisant
l’approximation bilinéaire :
2 z−1
s=
Te z + 1
7. Donner la loi de commande u(k) du correcteur numérique.
8. Si le contrôle était réalisé dans un programme Matlab, Python ou C, écrire l’algorithme de commande
sous la forme d’une procédure qui serait appelée à chaque instant d’échantillonnage en supposant
que des fonctions readCAN() et writeCNA() sont disponibles pour communiquer avec la carte de
conversion A/N et N/A.
3
TD Régulation
numérique n◦ 2
H. Garnier
Cette séance de TP a pour but d’illustrer à l’aide d’une maquette de régulation de température les différentes
étapes de conception qui mènent à l’implantation d’un système de contrôle thermique actif. Ces étapes sont
détaillées sur la figure 1.1.
Les étapes de création de modèles et de simulation du comportement du système bouclé (sous Simulink dans
notre cas) constituent des phases cruciales avant l’implantation du contrôle sur le système réel.
Figure 1.1: Les différentes étapes de la conception et de l’implantation d’un système de contrôle
4
Les objectifs de ce TP et les questions posées sont très largement inspirés de la vidéo de Brian Douglas :
A real control system - how to start designing
Ils visent à :
— la mise en lumière des limites d’un contrôle tout ou rien ;
— l’identification d’un modèle de comportement à partir d’un essai indiciel ;
— le réglage du correcteur de type PID (à partir du modèle identifié) ;
— la simulation du contrôle PID sous Simulink et l’évaluation des performances du contrôle en simula-
tion ;
— l’implantation et l’évaluation des performances du contrôle sur la maquette.
5
Figure 1.3: Actionneurs et capteurs disponibles sont la maquette
Attention, les deux radiateurs pourront être à une température supérieure à 40◦ C. La LED sur la carte
supérieure s’allume en rouge lorsque la température devient supérieure à 40◦ C. Soyez vigilant à ne pas vous
brûler durant les essais.
6
4 Identification d’un modèle de comportement à partir d’un essai
indiciel en boucle ouverte
4.1 Relevé expérimental de la réponse indicielle
1. Ouvrir le fichier essai_indiciel.mdl sous Simulink.
2. Brancher à nouveau le câble bleu.
3. Lancer l’essai expérimental qui dure une dizaine de minutes.
4. Observer la réponse en température à l’échelon de commande de la puissance de chauffe de 0 à 35%.
5. A la fin de l’essai, débrancher le câble bleu.
Pour déterminer ce modèle, vous pouvez décider d’utiliser certaines fonctions de la boîte à
outils CONTSID. Pour cela, télécharger la boîte à outils CONTSID, puis exécuter le fichier
ident_via_contsid.m sous Matlab. Ce fichier exploite la fonction PROCSRIVC qui permet d’esti-
mer directement les paramètres du modèle du premier ordre avec retard.
2. Ouvrir le fichier teste_ton_modele.m sous Matlab.
3. Saisir en haut du fichier les valeurs des paramètres identifiés, puis lancer le programme.
4. Comparer les réponses mesurée et simulée (ne pas tenir compte des premières valeurs de la réponse
simulée).
5. Ajuster si besoin les paramètres pour améliorer la qualité de votre modèle.
T
1. Calculer le rapport .
τ
2. D’après le tableau 1.4, déterminer la forme (P, PI, PD ou PID) du correcteur PID la mieux adaptée
pour mettre en oeuvre un contrôle de température sur la maquette.
7
5.2 Etude en simulation des performances d’un contrôle PID sous Simulink
La dynamique du système thermique est assez lente. Il est donc ici intéressant avant de tester sur le système
physique de simuler sur un outil comme Simulink différents réglages pour le correcteur PID choisi.
1. Ouvrir le fichier simul_controle_PID.mdl sous Simulink.
2. Saisir les valeurs de votre modèle du 1er ordre avec retard.
On rappelle qu’un correcteur proportionnel intégral avec action dérivée filtrée dans sa version parallèle est
décrit par la fonction de transfert suivante :
Ki Td s
C(s) = Kp + +
s Td
1+ s
N
Simulink possède un bloc PID dans la bibliothèque Continuous dont la fonction de transfert est :
Ki s
C(s) = Kp + + Kd
s 1
1+ s
N
1. Cliquer sur le bloc PID (configurer avec des valeurs par défaut) et sélectionner le type (P, PI, PD,
PID) pour votre correcteur PID.
2. Le block PID de Simulink possède une option 1 "Tune ...", qui permet de calculer les paramètres
Kp , Ki , Kd et N . Exploiter cette option afin de respecter les exigences du cahier des charges. Pour
cela, modifier la position les curseurs Response time and Transient Behavior pour avoir la réponse
souhaitée du système bouclé.
3. Cliquer sur la flèche Update Block en haut à droite de la fenêtre pour sélectionner le réglage de votre
correcteur PID.
4. Lancer la simulation et observer la réponse en asservissement et régulation de température ainsi que
le signal de puissance de chauffe.
5. Les exigences du cahier du charges sont-elles respectées ?
6. Si besoin, affiner le réglage des différentes actions du correcteur PID afin de respecter les exigences
du cahier.
7. Relever le temps de réponse à 5% pour le correcteur sélectionné.
8. Noter les valeurs numériques des actions P, I et D de ce correcteur.
9. Fermer le fichier.
1. Cette méthode de réglage, appelée méthode du modèle de référence (voir cours), s’appuie sur le modèle identifié.
8
1. Ouvrir le fichier controle_PID.mdl sous Simulink.
2. Saisir les valeurs numériques des actions de votre correcteur PID.
3. Cliquer sur l’onglet PID Advanced et vérifier que la fenêtre est configurée comme indiqué sur la figure
1.6.
4. Brancher les câbles bleu et blanc puis lancer le programme Simulink.
5. Observer les performances du contrôle PID en asservissement de température. Observer la réponse à
l’échelon de température ainsi que le signal de commande. Les exigences du cahier du charges sont-elles
bien respectées ?
6. Relever approximativement le temps de réponse à 5%. Comparez-le à celui obtenu en simulation.
7. Au bout de 300s, envoyer un courant d’air froid en soufflant de manière constante en direction de la
maquette.
8. Observer les performances du contrôle PID en régulation de température, c’est à dire sa capacité à
rejeter l’effet perturbateur du courant d’air froid.
9
TD Régulation
numérique n◦ 3
H. Garnier
Cette séance de TP a pour but de réaliser la commande PID numérique de la maquette de régulation de
température. Les étapes à réaliser sont les suivantes :
1. Synthèse et test d’un correcteur PID analogique sous Simulink ;
2. Transposition du correcteur PID analogique en correcteur PID numérique par l’approximation bili-
néaire ;
3. Test du correcteur PID numérique en simulation sous Simulink ;
4. Implantation et test du correcteur PID numérique sur la maquette de régulation de température ;
Cette démarche est la méthodologie classique de synthèse et d’implantation sur un système réel. Il est bien
sûr impossible de passer d’une étape à la suivante sans l’avoir validée.
10
3 Etude des performances du contrôle PID numérique sous Simu-
link
1. Dupliquer le schéma-bloc en boucle fermée de votre nouveau fichier simul_controle_PIDnum.mdl.
Remplacer le bloc correcteur PID analogique par un bloc fonction de transfert numérique en saisissant
les paramètres de votre PID numérique.
2. Simuler avec Simulink le comportement du système analogique asservi avec votre correcteur PID
numérique et comparer les performances obtenues avec celles de la régulation continue.
11
Quelques rappels sur l’utilisation de Simulink
L’utilisation de Simulink est assez intuitive. Elle consiste à sélectionner des blocs représentant des fonctions
de transfert, des gains, etc. et à les glisser sur le schéma de simulation. Les blocs sont reliés entre eux par
des traits orientés tracés à l’aide de la souris.
- file puis new puis model : crée un nouveau modèle simulink
- Les fonctions de transfert continues se trouvent dans le menu "Continuous" ou "Linear"
- Les fonctions de transfert numériques se trouvent dans le menu "discrete" ou "discontinuous"
- Les convertisseurs numériques analogiques (BOZ) sont dans le menu "discrete" ou "discontinuous"
- Les gains sont dans le menu "math operations" ou "Linear"
- Les comparateurs sont dans le menu "math operations" ou "Linear"
- Les outils de mesure (scope) sont dans le menu "sink"
- Les sources (échelons (step), rampes, etc.) sont dans le menu "source"
- Les retards à utiliser sont appelés "transport delay" et se trouvent (et c’est une erreur !) dans le menu "non
linear" ou "Continuous"
- Les saturations sont dans le menu "non linear"
- Les quantificateurs sont dans le menu "non linear"
Remarques importantes
— Il n’y a pas de bloc "CAN". Simulink détermine la nature des signaux en fonction de la nature des
blocs dans lesquels ils entrent. Il est nécessaire pour les blocs de nature "numérique" de spécifier
la période d’échantillonnage en double cliquant dessus. Attention, Matlab n’est pas dérangé par des
périodes d’échantillonnage différentes selon les blocs et ne vous avertira pas en cas d’erreur.
— Par défaut, les échelons démarrent à l’instant t = 1s. Il est parfois utile de modifier en t = 0.
— Une fois les blocs placés sur le schéma, vous pouvez les modifier en double cliquant dessus. Par
exemple, en cliquant sur un bloc fonction de transfert vous pouvez ajouter des pôles et des zéros,
modifier les gains, etc.
— Il est possible d’utiliser dans ces blocs des variables définies dans le workspace. Par exemple, si vous
avez défini
» K = 2 alors en mettant K dans un bloc Simulink, sa valeur sera 2.
— La simulation est ensuite lancée en cliquant sur start. Les résultats de la simulation peuvent être
visualiser en double cliquant sur les scopes. Une fenêtre s’ouvre alors avec les tracés des signaux
simlulés. Lorsque les signaux des scopes sont tronqués, il suffit cliquer sur le bouton autoscale.
— Les paramètres de la simulation peuvent être modifiés en cliquant sur la menu simulation puis para-
meters. On peut notamment modifier la durée de la simulation.
12