Acquisition, contrôle et régulation de température avec LabVIEW

Bonjour,

Actuellement en stage, je dois contrôler et réguler la température d'un four. Pour cela, j'utilise LabVIEW et une Arduino Uno. Mon objectif se déroule en trois étapes :

  • acquisition de la température
  • contrôle de la température
  • régulation de la température

Dans la partie acquisition, j'utilise un thermocouple de type K et le module MAX6675. J'ai utilisé la bibliothèque associée pour récupérer les valeurs de température directement sur LabVIEW, dans un graphe. Je peux donc suivre en temps réel l'évolution de la température.

Pour la partie contrôle, j'aimerai donner une consigne de température (via une glissière sur LabVIEW) et vérifier que les valeurs renvoyées par le thermocouple se rapproche (grossièrement dans un premier temps) de la température de consigne.
Initialement, on donnait une consigne manuellement sur un régulateur PID (type RKC CB100), relié à un relais statique (type CRYDOM CKRD4830) puis une certaine quantité d'intensité était envoyée à travers une résistance, qui chauffait donc une plaque par effet joule. Cette plaque chauffante constitue donc mon "four".
J'ai donc pensé a relier le relais statique sur un pin de la carte Arduino. Via LabVIEW, je pourrai ensuite piloter le ON/OFF de ce relais avec un bouton. Il ne resterait plus qu'à "contrôler" la quantité d'intensité. J'ai cru comprendre que les pin PWM était variable, 0 correspondant à 0V et 255 correspondant à 5V, je pourrai peut être jouer avec ça pour faire varier l'intensité.
J'ai entendu parler de MOSFET pour des projets similaires, qu'en pensez vous ?
Est-ce que l'utilisation d'une LED pour simuler le ON/OFF du relais statique et faire varier son intensité pourrait m'être utile dans un premier temps ?

Dans la dernière partie, la régulation, j'avais pensé à un élaborer un PID via LabVIEW, mais chaque chose en son temps.

Merci d'avance pour votre aide.

Baptiste C

sur un UNO ce n'est pas cela. le PWM est une alternance rapide à une fréquence donnée d'une partie de la periode à 0V et l'autre partie à 5V. Suivant ce que vous y connectez, l'appareil "voit" une tension qui est une sorte de "moyenne" du temps passé à 5V dans la période.

plus de détails ici
https://www.locoduino.org/spip.php?article47

Pour compléter ce qu'a écrit @JML et le site locoduino la PMC est caractérisée par 3 grandeurs.

  1. l'amplitude du signal, que ce soit à l'état bas, qui est 0V avec une UNO et l'amplitude à l'état haut qui est souvent égale au Vcc du microcontrôleur, soit 5V pour une UNO.

  2. Par la fréquence de récurrence, qui est la fréquence à laquelle le motif se reproduit identique à lui-même.
    Sur une UNO la fréquence de récurrence est réglée à 490 et 980 Hz, mais ces valeurs se changent. Ces valeurs sont un choix de la société Arduino, le micro peut aller jusqu'à 62,5 kHz.
    Attention aux pins PWM qui dépendent du timer 0, ce timer sert aussi aux fonctions de temps.

  3. Par le rapport cyclique (RC où duty cycle) qui est le rapport entre le temps où le signal est bas par rapport au temps où le signal est haut.
    RC = 0 % => le signal reste à l'état bas
    RC = 50 % => les temps Bas/Haut sont identiques.
    RC = 100% => le signal reste à l'état haut

La PWM sert souvent pour créer une tension continue variable. Pour la calculer il suffit de faire une intégrale triviale.

Pour avoir une tension filtrée deux cas :
— Si la charge de la PWM est naturellement un filtre passe bas, un moteur par exemple, aucun composant supplémentaire n'est utile.
— Sinon, selon l'utilisation, on peut être amené à introduire un filtrage passe bas et dans ce cas, plus la fréquence de récurrence est élevée, plus le filtrage est simplifié.

Bonjour,

Bienvenu sur ce forum.

Je vois que tu a du super matériel pour réaliser et contrôler une régulation de température pour un four.

Mais, et je le dis sans moquerie, par méconnaissance sûrement, tu voudrais ré inventer le monde.

Et si tu n'as pas beaucoup de réponses, c'est que nous sommes nombreux comme toi (moi y compris) à ne pas savoir comment aborder le probléme.

Personnellement j'ai regardé la Doc de ton vraiment super relais statique, et je n'ai pas trouvé beaucoup d'info sur son mode "On/Off", donc je reste perplexe, je ne sais pas trop comment il marche.

Mais ta proposition technique citée ci haut est irréaliste en l'état, par contre elle donne un petit aperçu de tes notions d'électronique.

Et si on veut t'aider, il va falloir changer d'angle d'attaque.

D'où mes questions STP:

Dans quel cadre se passe ton stage?

Pourquoi ne te penche tu pas sur l'utilisation du régulateur de température dont tu dispose pour ton four, c'est "une boîte noire" réguliérement utilisée dans ces applications, nul besoin d'être électronicien pour la mettre en service, il faut éplucher la Doc et faire des essais je pense.

J'espére que ma réponse va en discuter d'autres.

Bonjour,

Merci pour votre retour.

C'est un stage pour valider mon BUT2 Mesures Physiques. Je dois automatiser un "four" en vu d'application pour des nanotubes. Pour l'automatiser, je dois donc passer par le contrôle et la régulation de la température.

L'objectif est de "supprimer" cette boite. Il faudrait pouvoir piloter le "four" à distance, sans avoir à se déplacer pour augmenter ou diminuer la température sur le boitier.

En me renseignant sur les relais statiques, j'ai cru comprendre qu'ils agissaient comme des interrupteurs entre un courant/tension faible et un courant/tension fort.

Merci d'avance pour vos retours.

Bonsoir,

Dans la plus part des cas, le relais statique commute des charges (résitances chauffantes par exemple) sur une alimentation ici AC (alternative).

Si tu envoies une impulsion DC (continue) sur la "gâchette" du relais, quand la tension de l'alimentation AC passe par 0V, le relais commute la charge sur cette alimentation.

La charge reste commutée sur l'alimentation AC jusque une prochaine impulsion sur la gâchette ET passage à 0V de l'alimentation AC

Pour piloter ce relais avec un signal PWM, il faudrait que le PWM soit de fréquence max 50Hz.

Avec ce relais, vous pouvez faire une régulation en "Tout ou Rien" améliorée pilotée par un Arduino.

EDIT (petit rajout).

L'avantage du relais statique ici est de toujours commuter la charge (ON/OFF) lorsque le courant alternatif passe à 0, ça évite des pics de courants ardus à encaissser par le matériel.

Re,

Merci pour retour rapide,

Ai-je possibilité de changer cette fréquence ?

SI je comprend bien, j'ai donc la possibilité de "mettre en route" ma résistance lorsque la gâchette sera ON, c'est ça ? Il reste ensuite à savoir si je peux contrôler la quantité de courant qui parcours la résistance, pour avoir une température proche de la consigne donnée et pouvoir la commander.

La régulation TOR ne me dérange pas dans un premier temps. Je pourrai faire un travail de PID directement sur LabVIEW ensuite.

Actuellement, j'ai un programme qui me permet de mettre ON/OFF et de commander l'intensité d'une LED via LabVIEW. Avec quelques modifications, pourrai-je utiliser ce programme pour le relais ?

Bonjour,

C'est le principe de la régulation.

Ici je ne vous pas comment tu pourrais utiliser un PWM comme pour régler la puissance dans une LED.

Tout d'abord, ton four est un systéme extrêmement lent, pas comme une LED, une fois que tu envoie une consigne de température, il va lui falloir un paquet de mn pour qu'il l'ateigne.

Et sans doute même que lorsque le capteur de température mesurera que la température à atteindre est atteinte, même si tu "coupe" la chauffe, la température va continuer à monter quelques temps autour du capteur, puis redescendre.

Là dans l'immédiat, je crois deviner ce que tu veux faire avec LabView et le relais statique.

Un pilotage PWM de la gâchette du relais.

La difficulté que je vois à cela est que tu as une charge, le four, alimenté en AC 50Hz, c'est à dire 1 alternance positive + 1 alternance négative par période.
Tu as 1 relais statique qui te permet, sur 1 période, de faire
-2 alternances "ON", soit "pleine chauffe"
Ou
-1 alternance "ON", 1 alternance "OFF", soit "1/2 chauffe"
OU
-2 alternances "OFF", soit "éteint".

Et gérer tout cela avec 1 PWM me semble compliqué, déja que en standard, la fréquence du PWM de Arduino, c'est 500 ou 1000Hz, trop rapide pour du 50 Hz.

Voilà pourquoi en l'état je laisserai de côté l'idée de piloter ton chauffage comme une LED, avec 1 PWM.

Ok je comprend la subtilité. Je me retrouve donc un petit peu bloqué.

En gardant l'Arduino, je dois trouver un autre moyen de piloter le chauffage, mais sans relais statique, je dois complètement revoir mon approche ou seulement trouver un autre composant/module ?


Peut être devrai-je me pencher sur l'utilisation d'un MOSFET, avec une alimentation externe. Il me semble que j'avais vu un projet similaire.


Tu peux regarder les "pont en H", c'est très "arduinisable" (nouveau terme), et abordable pour 1 mesure-physicien.

Tout dépand finalement de ta charge!

Quelles sont les caractéristiques de ta résistance chauffante?

Je vais regarder.

Les caractéristiques de la résistances chauffante sont les suivants :

  • Branchement 220V
  • Puissance : ~1000 W
  • Résistance : ~50 Ohm

pourquoi un Solid State Relay ne fait pas l'affaire (comme un SSR-25DA) ?

il ne faut pas l'utiliser en PWM mais avec un PID - on chauffe pendant un moment et vous avez capturé auparavant des données de calibration qui vous permettent d'anticiper l'inertie en chauffe ou en refroidissement.

Oui, je viens de tomber sur le tuto suivant et je me suis posé la même question.

En mettant de coté l'utilisation PWM, il est possible de l'utiliser pour déclencher et arrêter la chauffe. Je fixe une consigne de température et la compare avec celle du thermocouple.

  • si consigne > thermocouple, alors on chauffe
  • si consigne < thermocouple, alors on stop

Il faudra bien sur prendre en compte l'inertie.

Pour ce qui est du pont en H, j'ai trouvé plusieurs projet liés a des moteurs, dans lesquels ils sont mis en route, mais également ralentis ou accélérés.Je pense que dans un premier temps, ce n'est pas nécessaire, mais peut être que lorsque je ferai le travail de régulation pour un système plus précis et plus rapide, je pourrai utiliser cette piste.

Dites moi ce que vous en pensez.

Le pont en H c’est utile pour inverser le sens de l’alimentation. Ça n’a pas de sens sur un système en courant alternatif à mon avis….

Mais bon je ne suis pas expert côté matériel

220V 1000W, d'où le relais statique.

Si tu a du matériel pour faire quelques essais, se serait le top pour clarifier un mode de fonctionnement adapté à ton cas.

Par exemple, pour se mettre en sécurité pour quelques essais:
1 transfo 220V/24V 24VA (watts) mini
1 oscilloscope
1 alim 5V continue
1 Inter ou 1 bp

histoire d'alimenter ta résistance en 24V non dangereux via le relais statique, faire quelques essais marche/arret du relais, et visualiser sur la sortie comment est pilotée la tension à chaque marche arrêt.

Après une fois que tu a cerné cela, tu peux voir ce que tu peux faire, mais effectivement en "Tout ou Rien" tu peux faire beaucoup.

Avant de partir à la retraite (de technicien dans 1 IUT), dans le cadre de la mise en place du tout nouveau BUT, on m'avait demandé de developper une petite enceinte thermique pour que les éléves fassent un TP dans lequel ils devaient eux même choisir un thermo couple et mettre en place une régul.

J'avais donc intégré des résistances chauffantes et des ventilo dans une petite enceinte qye j'avais isolé thermiquement, et le tout était commandé en Tout ou Rien.

Le comportement était tout à fait tel que le décrit J-M-L la courbe de montée en température était assez constante, et avec quelques mesures, on pouvait anticiper l'inertie en chauffe et refroidissement pour en faire une régulation assez fiable.

Pour faire quelques essais qui te permettraient de te familiariser avec ton systéme, je peux te proposer un petit schéma.

100% OK, et en plus, ça ne marche pas en alternatif avec des transistors MOS.

En DC, ca aurait pu être intéressant dans le sens où c'est "shieldable" avec un module tout fait, mais surement pas à ce niveau de puissance, et sur les 4 inter du pont H, 1 seul peut suffire.

Il y a aussi la possibilité de creuser du côté des thyristors/Triacs (inter pour mode AC), mais le Thyristors, c'est souvent ce qu'il y a déjà dans les relais SSR.

Merci, je vais essayer de creuser la piste du SSR. Je vais commencer par des essais. Je reviendrai ici en cas de problème mais je pense pouvoir me débrouiller.

Dernière question, mon SSR actuel (CRYDOM CKRD4830) est-il optimal ou un SSR-25DA serait mieux adapté ?

à regarder la datasheet du CKRD4830, celui que vous avez devrait faire le job si vous le pilotez sous 5V

(mais je rappelle que je ne suis pas expert dans ce domaine)

J'ai pas trop de temps là, mais creuse vers SSR-25V...

Si tu trouve, sinon, idem J-M-L

Parfait merci beaucoup, je vais poursuivre ainsi.