GAL2024 - Consommations et productions d'énergies dans les exploitations lait...
Commande d’un système thermique à l’aide de la carte ARDUINO UNO
1. Modélisation du procédé thermique
Synthèse du régulateur numérique
Commande du procédé thermique
/
Formation : Arduino ↔ Matlab/Simulink
Commande d’un système thermique
à l’aide de la carte ARDUINO UNO
Hammamet 3/4 Mai 2014
CHELLY Nizar et CHARED Amine
CHELLY Nizar et CHARED Amine Formation Arduino↔ Matlab/Simulink FAM 2014 1 / 26
2. Modélisation du procédé thermique
Synthèse du régulateur numérique
Commande du procédé thermique
Plan de l’exposé
1 Modélisation du procédé thermique
Exploitation de l’outil “System identification”
2 Synthèse du régulateur numérique
Exploitation de l’outil “PID tuning”
3 Commande du procédé thermique
Implémentation de la commande sous Simulink
Implémentation de la commande sur la carte Arduino
CHELLY Nizar et CHARED Amine Formation Arduino↔ Matlab/Simulink FAM 2014 2 / 26
3. Modélisation du procédé thermique
Synthèse du régulateur numérique
Commande du procédé thermique
Plan de l’exposé
1 Modélisation du procédé thermique
Exploitation de l’outil “System identification”
2 Synthèse du régulateur numérique
Exploitation de l’outil “PID tuning”
3 Commande du procédé thermique
Implémentation de la commande sous Simulink
Implémentation de la commande sur la carte Arduino
CHELLY Nizar et CHARED Amine Formation Arduino↔ Matlab/Simulink FAM 2014 2 / 26
4. Modélisation du procédé thermique
Synthèse du régulateur numérique
Commande du procédé thermique
Plan de l’exposé
1 Modélisation du procédé thermique
Exploitation de l’outil “System identification”
2 Synthèse du régulateur numérique
Exploitation de l’outil “PID tuning”
3 Commande du procédé thermique
Implémentation de la commande sous Simulink
Implémentation de la commande sur la carte Arduino
CHELLY Nizar et CHARED Amine Formation Arduino↔ Matlab/Simulink FAM 2014 2 / 26
5. Modélisation du procédé thermique
Synthèse du régulateur numérique
Commande du procédé thermique
Exploitation de l’outil “System identification”
Plan de l’exposé
1 Modélisation du procédé thermique
Exploitation de l’outil “System identification”
2 Synthèse du régulateur numérique
Exploitation de l’outil “PID tuning”
3 Commande du procédé thermique
Implémentation de la commande sous Simulink
Implémentation de la commande sur la carte Arduino
CHELLY Nizar et CHARED Amine Formation Arduino↔ Matlab/Simulink FAM 2014 3 / 26
6. Modélisation du procédé thermique
Synthèse du régulateur numérique
Commande du procédé thermique
Exploitation de l’outil “System identification”
Acquisition de la réponse indicielle du système
CHELLY Nizar et CHARED Amine Formation Arduino↔ Matlab/Simulink FAM 2014 4 / 26
7. Modélisation du procédé thermique
Synthèse du régulateur numérique
Commande du procédé thermique
Exploitation de l’outil “System identification”
Détermination de la fonction de transfert G(z)
1/8
Emplacement de l’outil System identification
CHELLY Nizar et CHARED Amine Formation Arduino↔ Matlab/Simulink FAM 2014 5 / 26
8. Modélisation du procédé thermique
Synthèse du régulateur numérique
Commande du procédé thermique
Exploitation de l’outil “System identification”
Détermination de la fonction de transfert G(z)
2/8
Ouvrir l’outil System identification Tool
CHELLY Nizar et CHARED Amine Formation Arduino↔ Matlab/Simulink FAM 2014 6 / 26
9. Modélisation du procédé thermique
Synthèse du régulateur numérique
Commande du procédé thermique
Exploitation de l’outil “System identification”
Détermination de la fonction de transfert G(z)
3/8
Cliquer sur import data et choisir Time domain data.
CHELLY Nizar et CHARED Amine Formation Arduino↔ Matlab/Simulink FAM 2014 7 / 26
10. Modélisation du procédé thermique
Synthèse du régulateur numérique
Commande du procédé thermique
Exploitation de l’outil “System identification”
Détermination de la fonction de transfert G(z)
4/8
Entrer le nom de la variable Input et la variable Output ainsi
que tempsde starting time et sample time qu’on a utiliser lors
de l’identification avec Simulink.Enfin cliquer sur Import.
CHELLY Nizar et CHARED Amine Formation Arduino↔ Matlab/Simulink FAM 2014 8 / 26
11. Modélisation du procédé thermique
Synthèse du régulateur numérique
Commande du procédé thermique
Exploitation de l’outil “System identification”
Détermination de la fonction de transfert G(z)
5/8
Cliquer sur Estimate et choisir Transfer Function Models
CHELLY Nizar et CHARED Amine Formation Arduino↔ Matlab/Simulink FAM 2014 9 / 26
12. Modélisation du procédé thermique
Synthèse du régulateur numérique
Commande du procédé thermique
Exploitation de l’outil “System identification”
Détermination de la fonction de transfert G(z)
6/8
Entrer le nombre de pôle et de zéro et cliquer sur
Discrete-Time ensuite cliquer sur Estimate.
CHELLY Nizar et CHARED Amine Formation Arduino↔ Matlab/Simulink FAM 2014 10 / 26
13. Modélisation du procédé thermique
Synthèse du régulateur numérique
Commande du procédé thermique
Exploitation de l’outil “System identification”
Détermination de la fonction de transfert G(z)
7/8
Revenir à l’interface System Identification Tool et cliquer
deux fois sur tf1.
CHELLY Nizar et CHARED Amine Formation Arduino↔ Matlab/Simulink FAM 2014 11 / 26
14. Modélisation du procédé thermique
Synthèse du régulateur numérique
Commande du procédé thermique
Exploitation de l’outil “System identification”
Détermination de la fonction de transfert G(z)
8/8
Une fenêtre apparait dans laquelle vous trouvez G(z).
CHELLY Nizar et CHARED Amine Formation Arduino↔ Matlab/Simulink FAM 2014 12 / 26
15. Modélisation du procédé thermique
Synthèse du régulateur numérique
Commande du procédé thermique
Exploitation de l’outil “PID tuning”
Plan de l’exposé
1 Modélisation du procédé thermique
Exploitation de l’outil “System identification”
2 Synthèse du régulateur numérique
Exploitation de l’outil “PID tuning”
3 Commande du procédé thermique
Implémentation de la commande sous Simulink
Implémentation de la commande sur la carte Arduino
CHELLY Nizar et CHARED Amine Formation Arduino↔ Matlab/Simulink FAM 2014 13 / 26
16. Modélisation du procédé thermique
Synthèse du régulateur numérique
Commande du procédé thermique
Exploitation de l’outil “PID tuning”
Détermination des paramétrés du régulateur
1/6
Emplacement de l’outilPID tuning
CHELLY Nizar et CHARED Amine Formation Arduino↔ Matlab/Simulink FAM 2014 14 / 26
17. Modélisation du procédé thermique
Synthèse du régulateur numérique
Commande du procédé thermique
Exploitation de l’outil “PID tuning”
Détermination des paramétrés du régulateur
2/6
Ouvrir l’outil PID Tuner
CHELLY Nizar et CHARED Amine Formation Arduino↔ Matlab/Simulink FAM 2014 15 / 26
18. Modélisation du procédé thermique
Synthèse du régulateur numérique
Commande du procédé thermique
Exploitation de l’outil “PID tuning”
Détermination des paramétrés du régulateur
3/6
Cliqueur sur Import new plant, une nouvelle fenêtre apparait.
CHELLY Nizar et CHARED Amine Formation Arduino↔ Matlab/Simulink FAM 2014 16 / 26
19. Modélisation du procédé thermique
Synthèse du régulateur numérique
Commande du procédé thermique
Exploitation de l’outil “PID tuning”
Détermination des paramétrés du régulateur
4/6
Une nouvelle fenêtre apparait dans laquelle vous allez
sélectionner tf1 ensuite cliquer sur import puis close.
CHELLY Nizar et CHARED Amine Formation Arduino↔ Matlab/Simulink FAM 2014 17 / 26
20. Modélisation du procédé thermique
Synthèse du régulateur numérique
Commande du procédé thermique
Exploitation de l’outil “PID tuning”
Détermination des paramétrés du régulateur
5/6
Revenir à la fenêtre PID Tuner, vous pouvez choisir le type
de régulateur à implémenter et les objectifs de la commande
en boucle fermé et voir la réponse de la sotie du système.
CHELLY Nizar et CHARED Amine Formation Arduino↔ Matlab/Simulink FAM 2014 18 / 26
21. Modélisation du procédé thermique
Synthèse du régulateur numérique
Commande du procédé thermique
Exploitation de l’outil “PID tuning”
Détermination des paramétrés du régulateur
6/6
Cliquer sur la flèche de show parameter pour voir les
paramétrés utilisés de votre régulateur ainsi que les
performances du système en boucle fermé.
CHELLY Nizar et CHARED Amine Formation Arduino↔ Matlab/Simulink FAM 2014 19 / 26
22. Modélisation du procédé thermique
Synthèse du régulateur numérique
Commande du procédé thermique
Implémentation de la commande sous Simulink
Implémentation de la commande sur la carte Arduino
Plan de l’exposé
1 Modélisation du procédé thermique
Exploitation de l’outil “System identification”
2 Synthèse du régulateur numérique
Exploitation de l’outil “PID tuning”
3 Commande du procédé thermique
Implémentation de la commande sous Simulink
Implémentation de la commande sur la carte Arduino
CHELLY Nizar et CHARED Amine Formation Arduino↔ Matlab/Simulink FAM 2014 20 / 26
23. Modélisation du procédé thermique
Synthèse du régulateur numérique
Commande du procédé thermique
Implémentation de la commande sous Simulink
Implémentation de la commande sur la carte Arduino
Implémentation de la commande sous Simulink
1/3
La boucle d’asservissement à implémenter sur Simulink
CHELLY Nizar et CHARED Amine Formation Arduino↔ Matlab/Simulink FAM 2014 21 / 26
24. Modélisation du procédé thermique
Synthèse du régulateur numérique
Commande du procédé thermique
Implémentation de la commande sous Simulink
Implémentation de la commande sur la carte Arduino
Implémentation de la commande sous Simulink
2/3
L’asservissement de notre procédé est assuré par le modèle
Simulink suivant :
CHELLY Nizar et CHARED Amine Formation Arduino↔ Matlab/Simulink FAM 2014 22 / 26
25. Modélisation du procédé thermique
Synthèse du régulateur numérique
Commande du procédé thermique
Implémentation de la commande sous Simulink
Implémentation de la commande sur la carte Arduino
Implémentation de la commande sous Simulink
3/3
L’appui deux fois sur le bloc PID(z) permet d’introduire les
paramétrés Kp Ki Kd.
CHELLY Nizar et CHARED Amine Formation Arduino↔ Matlab/Simulink FAM 2014 23 / 26
26. Modélisation du procédé thermique
Synthèse du régulateur numérique
Commande du procédé thermique
Implémentation de la commande sous Simulink
Implémentation de la commande sur la carte Arduino
Plan de l’exposé
1 Modélisation du procédé thermique
Exploitation de l’outil “System identification”
2 Synthèse du régulateur numérique
Exploitation de l’outil “PID tuning”
3 Commande du procédé thermique
Implémentation de la commande sous Simulink
Implémentation de la commande sur la carte Arduino
CHELLY Nizar et CHARED Amine Formation Arduino↔ Matlab/Simulink FAM 2014 24 / 26
27. Modélisation du procédé thermique
Synthèse du régulateur numérique
Commande du procédé thermique
Implémentation de la commande sous Simulink
Implémentation de la commande sur la carte Arduino
Implémentation de la commande sur la carte Arduino
1/2
Schéma synoptique de l’asservissement à implémenter
CHELLY Nizar et CHARED Amine Formation Arduino↔ Matlab/Simulink FAM 2014 25 / 26
28. Modélisation du procédé thermique
Synthèse du régulateur numérique
Commande du procédé thermique
Implémentation de la commande sous Simulink
Implémentation de la commande sur la carte Arduino
Implémentation de la commande sur la carte Arduino
2/2
L’équation temporelle du correcteur PID
UP ID(t) = Kp × e(t) + Ki × t
0 e(τ)dτ + Kd ×
d
dt
e(t)
L’équation de contrôle PID numérique
PID = Kp × erreur + Ki × (erreur × ∆t) + Kd ×
(erreur − erreurprecedente)
∆t
L’implémentation du régulateur PID sur la carte Arduino
PID: Error = Setpoint - Actual
Integral = Integral + (Error*dt)
Derivative = (Error - Previous_error)/dt
Drive = (Error*kP) + (Integral*kI) + (Derivative*kD)
Previous_error = Error
wait(dt)
GOTO PID
CHELLY Nizar et CHARED Amine Formation Arduino↔ Matlab/Simulink FAM 2014 26 / 26
29. Modélisation du procédé thermique
Synthèse du régulateur numérique
Commande du procédé thermique
Implémentation de la commande sous Simulink
Implémentation de la commande sur la carte Arduino
Implémentation de la commande sur la carte Arduino
2/2
L’équation temporelle du correcteur PID
UP ID(t) = Kp × e(t) + Ki × t
0 e(τ)dτ + Kd ×
d
dt
e(t)
L’équation de contrôle PID numérique
PID = Kp × erreur + Ki × (erreur × ∆t) + Kd ×
(erreur − erreurprecedente)
∆t
L’implémentation du régulateur PID sur la carte Arduino
PID: Error = Setpoint - Actual
Integral = Integral + (Error*dt)
Derivative = (Error - Previous_error)/dt
Drive = (Error*kP) + (Integral*kI) + (Derivative*kD)
Previous_error = Error
wait(dt)
GOTO PID
CHELLY Nizar et CHARED Amine Formation Arduino↔ Matlab/Simulink FAM 2014 26 / 26
30. Modélisation du procédé thermique
Synthèse du régulateur numérique
Commande du procédé thermique
Implémentation de la commande sous Simulink
Implémentation de la commande sur la carte Arduino
Implémentation de la commande sur la carte Arduino
2/2
L’équation temporelle du correcteur PID
UP ID(t) = Kp × e(t) + Ki × t
0 e(τ)dτ + Kd ×
d
dt
e(t)
L’équation de contrôle PID numérique
PID = Kp × erreur + Ki × (erreur × ∆t) + Kd ×
(erreur − erreurprecedente)
∆t
L’implémentation du régulateur PID sur la carte Arduino
PID: Error = Setpoint - Actual
Integral = Integral + (Error*dt)
Derivative = (Error - Previous_error)/dt
Drive = (Error*kP) + (Integral*kI) + (Derivative*kD)
Previous_error = Error
wait(dt)
GOTO PID
CHELLY Nizar et CHARED Amine Formation Arduino↔ Matlab/Simulink FAM 2014 26 / 26
31. Modélisation du procédé thermique
Synthèse du régulateur numérique
Commande du procédé thermique
Implémentation de la commande sous Simulink
Implémentation de la commande sur la carte Arduino
Implémentation de la commande sur la carte Arduino
2/2
L’équation temporelle du correcteur PID
UP ID(t) = Kp × e(t) + Ki × t
0 e(τ)dτ + Kd ×
d
dt
e(t)
L’équation de contrôle PID numérique
PID = Kp × erreur + Ki × (erreur × ∆t) + Kd ×
(erreur − erreurprecedente)
∆t
L’implémentation du régulateur PID sur la carte Arduino
PID: Error = Setpoint - Actual
Integral = Integral + (Error*dt)
Derivative = (Error - Previous_error)/dt
Drive = (Error*kP) + (Integral*kI) + (Derivative*kD)
Previous_error = Error
wait(dt)
GOTO PID
CHELLY Nizar et CHARED Amine Formation Arduino↔ Matlab/Simulink FAM 2014 26 / 26