Mesure de la température avec une CTN Utilisation de la relation de Steinhart Hart
Capteur de température à CTN
Isolation de la CTN Nous allons tout d abord procéder à l isolation électrique de la CTN. Pour cela il nous faut de la gaine thermorétractable, en fonction des cotes du composant: Dans notre exemple: 2 cm de gaine de diamètre 2mm 4 cm de gaine de diamètre 6mm Une source de chaleur un briquet ou la panne du fer à souder. Une gaine thermorétractable est un tube en plastique souple qui se resserre quand il est exposé à une température assez élevée. Le diamètre se réduit généralement d'un facteur 2 ou 3.
Isolation d'une CTN Vers vidéo YouTube https://youtu.be/vqoxptcl2ig
Utilisation de la relation de Steinhart Hart Programmation Arduino et Python.
Modélisation de la caractéristique de la CTN La relation théorique pour un semi conducteur est celle de Steinhart Hart Nous allons pour cela relever la température et la valeur de la résistance électrique de la CTN pour trois points expérimentaux. Nous pourrons alors déterminer les trois coefficients C1 C2 C3 à l aide d un programme Python.
Mesure de la résistance de la CTN en fonction de trois températures expérimentales Nous allons tout d abord brancher la CTN à un ohmmètre à l aide de deux pinces crocodiles. Une sonde de température nous indique la température de référence en degrés celsius, nous plaçons la CTN contre la sonde. Nous préparons deux béchers notés A et C. Dans le A, nous versons de l eau avec du chlorure de sodium et de la glace. Dans le C, nous versons de l eau chauffée préalablement avec une bouilloire électrique.
Mesures de la résistance de la CTN et de la température de trois points expérimentaux. Vers vidéo YouTube https://youtu.be/kr4kvcifztm
Modélisation de la caractéristique de la CTN La relation théorique pour un semi conducteur est celle de Steinhart Hart Nous pourrons déterminer les trois coefficients C1 C2 C3 à l aide d un programme Python.
Pourquoi le programme Python un langage simple et mathématiquement puissant. Le langage Python est libre et gratuit. Les plus d Edupython Une interface traduite en français pour une plus grande convivialité. Une documentation en français téléchargeable sur le site d EduPython
Entrée de la température et de la résistance des trois points expérimentaux pour le calcul des coefficients C1 C2 C3 Programmation en Python. Vers vidéo YouTube https://youtu.be/ixomwxpcmvw
Procédure pour l utilisation du programme Python A voir sur les 2 prochaines diapositives Lancer le logiciel Edupython Dans fichier choisir nouveau et Nouveau module Python L éditeur d affichage python est disponible. Dans la partie saisie copier coller le programme python disponible dans ce diaporama Puis exécuter.
Programme Python pour le calcul des coefficients C1,C2,C3 1/2 from math import * from math import log as ln # ----------------Relevé du premier point : à une température Tun correspond une résistance de la CTN Run Tun = eval(input('entrez la temperature T1 du premier point (en degres Celsius) : ')) Run = eval(input('et la resistance R1 du premier point (en ohms) : ')) print('/t-----------------la temperature T1 du premier point (en degres Celsius) est ',Tun,'la resistance R1 du premier point (en ohms) est ',Run,'-----------------------') Tdeux = eval(input('entrez la temperature T2 du deuxieme point (en degres Celsius) : ')) Rdeux = eval(input('et la resistance R2 du deuxieme point(en ohms) : '))#print('/t-----------------la temperature T1 du premier point (en degres Celsius) est ',Tun,'la resistance R1 du premier point (en ohms) est ',Run,'-----------------------') print('/t-----------------la temperature T2 du premier point (en degres Celsius) est ',Tdeux,'la resistance R2 du premier point (en ohms) est ',Rdeux,'-----------------------') Ttrois = eval(input('entrez la temperature T3 du troisieme point (en degres Celsius) : ')) Rtrois = eval(input('et la resistance R3 du troisieme point (en ohms) : ')) print('/t-----------------la temperature T3 du premier point (en degres Celsius) est ',Ttrois,'la resistance R3 du premier point (en ohms) est ',Rtrois,'-----------------------') La suite : prochaine diapositive
#calculs Tun = Tun + 273.15 Tdeux = Tdeux + 273.15 Ttrois = Ttrois + 273.15 Yun=1/Tun Ydeux = 1/Tdeux Ytrois = 1/Ttrois Lun = ln (Run) Ldeux = ln (Rdeux) Ltrois = ln (Rtrois) Programme Python pour le calcul des coefficients C1,C2,C3 2/2 a = (Ldeux-Ltrois)/(Lun-Ldeux)*(pow (Ldeux,3) - pow (Lun,3)) + (pow (Ldeux,3) - pow (Ltrois,3)) b = Ydeux - Ytrois - ((Ldeux-Ltrois)/(Lun-Ldeux))*(Yun-Ydeux) C3 = b / a C2 = (1/(Lun-Ldeux))*(Yun-Ydeux-C3*(pow(Lun,3) - pow(ldeux,3))) C1 = Yun - C2*Lun - C3*pow (Lun,3) #Affichages de A, B et C print('\t ###################################################################') print('dans l\'equation 1/T = C1 + C2*ln R + C3*(ln R)^3 on sait désormais que :') print('\t ###################################################################') print('le coefficient C1 vaut ', C1) print('le coefficient C2 vaut ', C2) print('le coefficient C3 vaut ', C3) Fin du programme python
Utiliser un dispositif avec microcontrôleur et capteur (CTN) pour mesurer la température
Arduino, dis-moi qui tu es! Arduino est une plate-forme électronique open source basée sur du matériel et des logiciels faciles à utiliser pour construire des projets électroniques. C est ce que l on appelle un microcontrôleur. Un microcontrôleur est un circuit intégré capable de recevoir de l information, qui va ensuite pouvoir commander d autres composants électroniques. Arduino se compose à la fois d une carte de circuit imprimé physique et d un logiciel (ou Integrated Development Environment (IDE)) qui s exécute sur votre ordinateur et qui vous permet de retranscrire le code sur la carte physique. Arduino utilise une interface de programmation simplifiée. Il suffit d un ordinateur, d un câble USB et d un minimum de connaissances en programmation pour commencer à créer.
Câblage du microcontrôleur 7
Câblage du microcontrôleur La CTN et la résistance sont montées en série avec une source de tension constante de 5 V venant du module Arduino (5V - GND). Le potentiel entre les deux composants relié à A0 de la carte Arduino permet de remonter à la valeur de la résistance de la CTN. R CTN = R0 (( 5 - U R0 ) / U R0 )
Procédure pour l utilisation du programme Arduino A voir sur les 2 prochaines diapositives Après avoir branché votre carte Arduino grâce à votre cordon USB sur votre ordinateur. 1.Copier le programme permettant de calculer la température dans le logiciel Arduino (IDE). Lancer le logiciel Arduino. Dans Fichier choisir Nouveau. L éditeur d affichage Arduino est disponible. Supprimer les instructions. Dans la partie saisie Copier / Coller le programme Arduino (disponible dans ce diaporama). 2.Compiler le programme. Compiler : procédé de traduction d'un programme écrit et lisible par un humain, en un programme exécutable par un ordinateur. Cliquer sur Croquis puis sur Compiler. 3.Vérifier le type arduino uno et le port de communication ex com3. Cliquer sur Outils puis Type de carte pour le type. Cliquer sur Outils puis Port pour la communication ex COM3. 4.Téléverser le programme de l ordinateur vers le module Arduino. Cliquer sur Croquis puis sur Téléverser. 5.Lecture de la température sur le moniteur. Cliquer sur Outils puis sur Moniteur série.
Programme Arduino pour le calcul de la température // Calcul de la température à partir de la relation de Steinhart-Hart 1/2 #define Vcc 5 // Tension d'alimentation #define Ro 10000 // Résistance du pont #define C1 8.039930670518272e-05 #define C2 0.0004026482708499132 #define C3-5.627937032775093e-07 float u; // Tension CTN float R; // Résistance CTN float logr; // ln(r) float T; // Température en C void setup() { Serial.begin(9600); // Paramétrage du port série } La suite : prochaine diapositive
Programme Arduino pour le calcul de la température 2/2 void loop() { u = analogread(a0)*5.0/1023; // Lecture tension en V R = Ro * (Vcc-u)/u; // Calcul de la résistance logr = log(r); // Calcul de ln(r) T = (1.0 / (C1 + C2*logR + C3*logR*logR*logR)); // Calcul de la température T = T - 273.15; // Conversion en C Serial.print("R = "); // Début affichage Serial.print(R); Serial.println(" Ohm"); Serial.print("T = "); Serial.print(T); Serial.println(" C"); Serial.println(" "); // Fin affichage delay(1000); // Temporisation de 1s } Fin du programme Arduino
Programme pour mesurer la température avec arduino Vers vidéo YouTube https://youtu.be/k9uhdp_xvpq
Mise en application Mesure de la température avec arduino Vers vidéo YouTube https://youtu.be/tetmhvfxlli
Résultat de l étude L association du microcontrôleur et du montage électronique composé d une CTN (10 kω) et d une résistance (10 kω) permet de réaliser un thermomètre électronique. La précision obtenue dans une mesure ponctuelle est de l ordre de 1 dixième de degré celsius.
Observations des mesures de températures Nous avons fait des relevés de la température au cours du temps dans des conditions identiques. Les relevés montrent une dérive de la température. C Comment améliorer ce dispositif pour réduire les dérives du thermomètre étudié? mn
Améliorations possibles L essai réalisé avec une CTN et une résistance de 10 kω met en évidence que la CTN chauffe. (la puissance dissipée par le montage est de l ordre de 25 mw partagée entre la CTN et la résistance). On peut améliorer le montage : En utilisant une résistance et une CTN de 100 kω. En l alimentant seulement le temps de la mesure avec une sortie commandée (la meilleure solution).
Voici pour terminer la vidéo pour récapituler l ensemble de l étude. Nous arrivons à terme de notre étude,l intérêt de la relation de Steinhart Hart est de réaliser le modèle mathématique de la température avec seulement 3 points expérimentaux. Ce modèle associé au montage proposé permet de réaliser un thermomètre électronique d une précision de 1 dixième de degré celsius avec une dérive de 0,4 C après 90 mn. Nous vous proposons de revoir les différentes étapes de l étude en regardant cette vidéo. Vers vidéo YouTube https://youtu.be/znnmhao-kjq Réalisation : Jean Luc Happe Sylvain Adam