Outils pour utilisateurs

Outils du site


arduino:thermometre

Un thermomètre pour les lycéens

Projet réalisé par Stéphane LAURENT professeur de physique-chimie et Sylvie BERNARD-VILLAIN technicienne de laboratoire au lycée Valin de La Rochelle.

Présentation

Pour tracer des courbes de changement d'état avec nos élèves, nous avons fabriqué des thermomètres à partir d'un microcontrôleur Arduino Uno et d'un capteur de température DS18B20.

Une interface graphique permet l'acquisition des températures et le tracé en direct de la température en fonction du temps. Elle peut gérer jusqu’à trois thermomètres simultanément. Elle est téléchargeable gratuitement sur cette page.



  • Le capteur de température DS18B20 permet de mesurer des températures allant de -55°C à +125°C avec une précision de ±0,5°C pour une mesure comprise entre -10°C et 85°C.
  • Le graphique se trace automatiquement.
  • Les mesures peuvent être exportées vers le presse-papiers, enregistrées dans un fichier Excel ou dans un fichier CSV.
  • Le graphique peut être enregistré aux formats png, jpg, svg ou pdf.


Exemple d'utilisation


Le graphique obtenu dans l'interface graphique pour la vaporisation


Le graphique obtenu pour la fusion après exportation dans Regressi


L'utilisation de Regressi n'est absolument pas obligatoire. C'est juste pour montrer qu'il est très facile d'exporter les mesures acquises par l'interface graphique.



Conception du thermomètre

Les composants

Pour simplifier au maximum la conception de ce thermomètre, nous utiliserons un module base shield Grove, évitant ainsi les soudures.

arduino.jpg
Arduino Uno
23,90 €
Module Grove base shield
4,80 €
Ecran LCD 2×16 Grove
7,15 €
Capteur de température Grove
9,30 €
Câbles Grove
2,95 €
  • Les prix indiqués sont à titre indicatif et sont susceptibles de varier selon le fournisseur.
  • Les composants électroniques proviennent principalement de chez Go Tronic.

Sur l'une des photos de présentation ci-dessus, l'Arduino est installé dans un boitier noir. L'avantage est qu'il est bien protégé, l'inconvénient c'est qu'il n'est pas utilisable pour un autre usage.

Le montage

  • Le module base shield Grove doit être branché sur l'Arduino Uno.
  • Le capteur de température est branché sur la broche D5.
  • L'écran LCD est branché sur une broche I2C.

Si vous utilisez le thermomètre uniquement avec l'interface graphique, l'écran n'est pas indispensable .

Sur les photos, nous utilisons une plaque rassemblant différents modules Grove.
Elle n'est absolument pas indispensable. Cliquez ici pour plus de renseignements sur cette plaque.

L'interface graphique "Thermomètre"

Le thermomètre doit être relié par un câble USB avec l’ordinateur. Ensuite il suffit d'ouvrir « Thermomètre.exe ».



Un clique sur le graphique permet de l'afficher en plein écran

Démarre / Arrête l'acquisition des températures. Un point rouge s'allume devant la date lorsque la température est enregistrée.

Permet de sélectionner les options.


  • La modification des options est possible à tout moment même pendant l'acquisition des températures.
  • L'indication de la durée totale n'est pas indispensable. Si le champ reste vide, l'échelle de temps s'actualisera automatiquement.


Efface les mesures et le graphique en cours.


Exporte les mesures soit vers le presse-papiers, soit vers Excel, soit au format csv. Le graphique peut être enregistré aux formats png, jpg, svg ou pdf.


Téléchargements

L'interface graphique


L'interface graphique est téléchargeable ici, quel que soit le nombre de capteurs de température utilisés.

Attention, certains antivirus déclarent comme faux positif le fichier principal de l'interface graphique !
Vous devez alors intervenir sur l'antivirus pour éviter son effacement.


Les codes Arduino pour le thermomètre (capteur de température et écran LCD Grove)

Le code Arduino n'est pas le même suivant si vous utilisez un, deux ou trois capteurs de température :

1 capteur 2 capteurs 3 capteurs

Code Arduino


Télécharger

Télécharger

Télécharger



Broche(s) à utiliser

D5


D5 et D6


D5, D6 et D7

Vous pouvez éventuellement calibrer le capteur de température de manière “logiciel” en utilisant un thermomètre étalon ou par des mesures de référence (température d'ébullition de l'eau par exemple). Il faudra alors modifier la ligne suivante :

float calibration1 = 0;  // valeur de la calibration du thermomètre 1


Deux bibliothèques doivent être installées avant de téléverser le code Arduino. Voir plus bas.



Fabrication du thermomètre sans matériel Grove

Ce thermomètre peut aussi être fabriqué sans matériel Grove. Le capteur de température est toujours un DS18B20 et l'écran est un écran LCD 16×2 I2C. Il faut ajouter une résistance de 4700 Ω.

Schéma du circuit


Les codes Arduino pour le thermomètre (non Grove)

Le code Arduino n'est pas le même suivant si vous utilisez un, deux ou trois capteurs de température :

1 capteur 2 capteurs 3 capteurs

Code Arduino


Télécharger

Télécharger

Télécharger

Broche(s) à utiliser

7


6 et 7


5, 6 et 7

Pour les thermomètres précédents (non Grove), nous avons utilisé une broche par capteur de température. Or en utilisant un bus 1-Wire ou (OneWire), les capteurs DS18B20 peuvent s'associer sur une même broche. Le montage et le code Arduino sont alors différents. Pour plus d'information cliquez ici.



Rappel sur l'installation d'une bibliothèque

Le code Arduino précédent utilise des bibliothèques. Elles doivent être installées avant le téléversement du code dans l'Arduino.

  • Ouvrez l’IDE Arduino et aller dans Croquis –> Inclure une bibliothèque –> Gérer les bibliothèques ;



  • Pour le capteur de température Grove, il faut installer la bibliothèque Dallas Temperature :

  • Pour l'écran LCD Grove, il faut installer la bibliothèque indiquée ci-dessous :


  • Pour l'écran LCD non Grove, il faut installer la bibliothèque indiquée ci-dessous :



  • Cette page a été consultée par 2 visiteurs aujourd'hui.
  • Cette page a été consultée par 126 visiteurs depuis le 16/06/2024.


arduino/thermometre.txt · Dernière modification : 23/06/2024 12:58 de Stéphane LAURENT

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki