Régulation de température d'une cuve
Informations :
Noms et prénoms :
SEJDI Linda (linda.sejdi@etu.sorbonne-universite.fr)
SOSA VERGAS Luis Angel (la.sosa.vergas@gmail.com)
THAVARAJAH Roshani (roshani.thavarajah@etu.sorbonne-universite.fr)
VASANTHAN Luxcheni (luxcheni.vasanthan@etu.sorbonne-universite.fr)
Période : Octobre 2024 - Janvier 2025
Cursus : Master 2 Chimie parcours Ingénierie Chimique
Tuteur : PULPYTEL Jerome (jerome.pulpytel@sorbonne-universite.fr)
Contexte :
Ce projet, réalisé dans le cadre de l'UE 803 "Optimisation et Contrôle des Procédés", porte sur la régulation et l'automatisation de la température d'une cuve contenant un liquide. Ce projet vise à développer des compétences pratiques en régulation, automatisation et intégration électronique.
Objectifs :
L'objectif de ce projet est de concevoir et de réaliser un système automatisé de régulation de température d'une cuve. Il s'appuie sur une carte Arduino, un module de Peltier, une sonde de température et un circuit électronique intégrant un écran LCD, une LED et un buzzer. Ces éléments permettent de mesurer, d'afficher en temps réel et de réguler automatiquement la température pour atteindre une consigne définie par l'utilisateur. Le système devra être capable d'assurer les fonctions suivantes :
- Imposer une température cible :
La température cible est fixée dans le code Arduino au démarrage. Cette consigne initiale sert de référence pour la régulation. - Afficher en temps réel :
La température mesurée par une sonde immergée dans la cuve est affichée en temps réel sur un écran LCD. Cela permet une visualisation claire de l'évolution de la température. - Réguler via le module de Peltier :
Le module de Peltier est chargé de chauffer ou de refroidir la cuve pour maintenir la température souhaitée.
Une LED RGB indique visuellement l'état de la régulation. Suivant la couleur on a des informations sur l'état de la température.
- Rouge si la température est inférieure à la consigne
- Bleue si la température est supérieure à la consigne
- Vert si la température correspond à la consigne
- Ajuster dynamiquement la température cible :
Deux boutons poussoirs permettent à l'utilisateur de modifier la température cible en l'augmentant ou en la diminuant.
L'écran LCD met immédiatement à jour la nouvelle consigne et le système reprend sa régulation jusqu'à ce que la nouvelle température cible soit atteinte.
Matériel :
Connexions :
Module Peltier :
- Pôle + : Alimentation externe
- Pôle - : Source du transistor
Sonde DS1 :
- VCC : Alimentation 5V
- GND : GND
- Signal : Broche D2 de l'Arduino
- Résistance de 4,7 kΩ en série avec le signal
Transistor NMOS (IRF540N ou similaire) :
- Source : GND
- Drain : Circuit du module Peltier
- Gate : Broche D12 de l'Arduino
- Drain relié à une borne du module Peltier, l'autre borne reliée au +12V de l'alimentation externe
- Résistance de 220 Ω entre la Gate et le sortie D12
LED RGB :
- Cathode : Commune à GND
- Broches rouge, verte et bleue : connectées respectivement à D10, D9 et D8 de l'Arduino, via des résistances de 220 Ω
Ecran LCD 16x2 :
- SCL : Broche A5 de l'Arduino
- SDA : Broche A4 de l'Arduino
- VCC : +5V de l'Arduino
- GND : GND de l'Arduino
Buzzer :
- Buzzer : Broche D13 de l'Arduino
- Résistance de 100Ω en série avec le buzzer
Bouton poussoir :
- Une broche : +5V
- Résistance de pull-down de 10 kΩ entre la broche et GND
Construction :
Figure 1 : Schéma du système de régulation de température avec Arduino et module Peltier
Étape 1 : Conception et préparation
La première étape consiste à bien comprendre le sujet et à établir une liste détaillée des composants nécessaires. Cette phase inclut également l'organisation des tâches au sein de l'équipe, chaque membre se voyant attribuer des responsabilités spécifiques.
Étape 2 : Montage et assemblage
La deuxième étape implique la réception du matériel et l'assemblage des composants. L'équipe installe le kit de refroidissement Peltier sur la cuve et relie tous les éléments électroniques sur une platine d'essai.
Étape 3 : Programmation et test
La troisième étape est dédiée au développement du code pour l'Arduino UNO, qui contrôle le module Peltier et régule la température de la cuve. Le programme inclut l'implémentation d'un régulateur PID pour assurer un contrôle précis de la température.
Programme Arduino
Journal de bord :
07/10/2024 :
- Attribution du projet de régulation de la température d'une cuve.
- Visite du FabLab.
- Réflexion sur la méthode de régulation à utiliser et prise de contact avec le groupe pour organiser la première réunion.
11/10/2024 :
- Première réunion Zoom entre les membres de l'équipe.
- Comparaison et validation de la liste finale de matériel.
17/10/2024 :
- Rendez-vous avec la tutrice pour validation de la liste.
- Récupération du matériel.
- Commande du module de Peltier (prévue pour mi-novembre).
- Prochaine étape : Simulation sur Tinkercad.
03/11/2024 :
- Deuxième réunion Zoom entre les membres de l'équipe.
- Comparaison des simulations réalisées sur Tinkercad.
- Demande d'avis au tuteur sur le montage et le code.
Lorsque nous avons présenté notre simulation à notre tuteur, nous lui avons expliqué que nous rencontrions un problème avec les boutons poussoirs qui ne semblaient pas fonctionner. Nous lui avons demandé des remarques et suggestions pour nous aider à avancer. En réponse, il nous a précisé que les boutons fonctionnaient correctement. Lorsqu'on appuie sur le bouton, la tension passe bien de 4,17 V à 0 V. Cependant, il a souligné que le problème venait des fonctions "delay" et du temps de simulation non réel. Il est nécessaire de maintenir le bouton enfoncé pendant environ 3 à 4 secondes pour que l'incrément de température soit pris en compte.
Figure 2 : Simulation du système sur Tinkercad
07/11/2024 :
Récupération du matériel manquant :
- Module Peltier
- Transistor MOS
- Breadboard
- Pâte thermique
- Ecran LCD
21/11/2024 :
- Première réunion au FabLab.
- Mise en place du montage.
- Problème de port identifié.
12/12/2024 :
- Deuxième réunion au Fablab.
- Problème avec le module Peltier : Le module Peltier ne chauffait pas. Pour vérifier le branchement, nous avons testé avec un moteur, qui a bien fonctionné. Nous avons conclus que le module Peltier était défectueux et l'avons remplacé par un autre.
- Problème avec la sonde de température : L'écran affichait des valeurs instables. Nous avons trempé la sonde dans de l'eau chaude pour tester son fonctionnement, mais sans succès.
- La carte Arduino initiale ne fonctionnait pas correctement. Nous l'avons remplacée.
- Le premier écran LCD était défectueux et a également été remplacé.
Malgré le remplacement du module Peltier, les valeurs éffichéaffichées par la sonde restaient instables. Nous avons consulté le tuteur, qui nous a conseillé d'ajouter une résistance de 4,7
Même avec la résistance, la température ne se stabilise pas. Nous avons envisagé deux hypothèses :
- La sonde est peut-être défectueuse.
- Il pourrait y avoir un problème de compatibilité avec la bibliothèque Arduino utilisée, nécessitant un ajustement du code.
- Nouvelle tentative avec un capteur différent. Le problème persiste.
- Prochaine étape : Révision approfondie du code pour identifier et résoudre le problème.
05/01/2024 :
- La connexion du capteur de température a été vérifiée, la résistance de 4,7
ohmsΩ devait être pontée entre le câble rouge 5 V et le câble jauneanalogique,analogique.uneUne fois cela fait, le capteur est ensuite connecté au côté connexion numérique de la carte Arduino, qui dans le code révisé 2.0 est « ONE_WIRE_BUS 7 » ou connexion numérique 7 en utilisant la bibliothèque <OneWire.h>. - Le code a été révisé et modifié pour
obtenirintégrer la fonctionnalité PIDavecpermettant un contrôle total des valeursconstantes,constantes.celaCela signifie qu'il peutactuellementdésormais être ajusté pour obtenir la meilleure réponse en fonction de nosbesoins,besoins.dansDans ce cas, la constante de proportionnalité a été modifiée pour avoir une augmentation rapide de la température,biencesûr,quinousentraînenous attendrions àinévitablement un dépassementpassement.doncDonc, pour garantir unefonctionperformance optimale,lalesconstanteconstantes intégrale et différentielledoitdoivent être modifiéees en conséquence. - PID Controller V2.0 permet également l'activation ou la désactivation de la pompe de mélange
ainsitoutqu'unen réduisant le décalage d'entréeplus faibleentre toute pression sur un bouton et le temps de réponse de l'écran,cran. - Enfin dans cette révision, l'instruction anti-rebond a été définie pour éviter toute pression accidentelle sur un bouton.
Ainsi voici le programme qui fonctionne.fonctionne :
Dans la nouvelle révision du matériel, les connexions ont été réduites et nettoyées pour éviter les débranchements accidentels, simplifier le transport et permettre à l'utilisateur d'interagir avec le projet plus confortablement.
De nouvelles fonctionnalités sont en cours d'élaboration tant du côté logiciel que matériel, ajoutant d'autres boutons de déclenchement pour éventuellement ajouter une modification de la constante PID en déplacement, une autre amélioration serait l'ajout d'un ventilateur de refroidissement pour la possibilité de refroidir l'eau chauffée plus rapidement en cas de besoin et enfin la possibilité d'utiliser le côté refroidissement du Peltier pour refroidir un dissipateur thermique à eau connecté pour potentiellement refroidir l'eau plus rapidement.
Voici une vidéo illustrant les résultats obtenus après les dernières modifications. Grâce aux ajustements effectués et au code développé, notre projet de régulation fonctionne désormais de manière optimale. Cette démonstration met en avant l'efficacité du système mis en place.
24/01/2024 :
Au cours de nos différents tests, la pompe a cessé de fonctionner, ce qui nous a conduit à en récupérer une nouvelle. À ce jour, le seul problème identifié concerne la pompe.
Nous avons donc fixé un rendez-vous le lundi 27 janvier afin de présenter notre expérience.
Par ailleurs, nous avons décidé d’intégrer un QR code à notre projet, permettant aux futurs étudiants d’accéder facilement à notre page Wiki.