Thermomètre Infrarouge
Lorsque j'ai acheté mon thermomètre infrarouge il y a quelques mois j'en étais très satisfait. Pour la modique somme de 23€ je pouvais enfin mesurer la température de composants et dissipateurs :
PEAKMETER PM6530C |
1. Le besoin
Peu à peu, certains inconvénients se sont fait ressentir.La mesure d'une température de composants ne se fait pas en cinq secondes et il est souvent nécessaire de procéder à différents tests sous diverses conditions afin de pouvoir juger si la température d'un composant se trouve dans une plage acceptable. Il est également intéressant de pouvoir apprécier le temps de montée ou de descente de la température.
Avec un thermomètre infrarouge classique l'obligation d'appuyer sur la gâchette pour effectuer la mesure n'est pas très pratique pour surveiller la température d'un composant pendant de longues minutes. Une possibilité de fixation sur un support serait également appréciée. Il n'y a pas non plus de sortie USB pour relever une courbe de température.
Pour résumer mon besoin se situe plus dans un thermomètre d'établi sur pied, connecté en USB, et éventuellement détachable (donc équipé d'une batterie) pour des mesures ponctuelles.
Entre acheter un thermomètre USB à 150€ et réaliser moi-même un thermomètre strictement adapté à mon besoin, le choix fut rapide.
J'avais déjà connaissance de ce composant, le MLX90614 :
MELEXIS MLX90614ESF-BAA |
MELEXIS MLX90614ESF-ACF |
Il existe en plusieurs versions :
- tension d'alimentation 5V ou 3V
- cône de vision étroit 10° ou large 30°
- boîtier TO39 ou autre
J'ai choisi un MLX90614ESF-ACF (5V, 10°).
Je pense que l'on peut aussi utiliser un MLX90614ESF-BAA si on l'équipe d'un petit tube noir de ⌀8mm x 15mm afin de réduire son cône de vision, et d'un régulateur 3V ou 3.3V.
Le MLX90614ESF-BAA, moins cher, n'aura pas de possibilité de réglage d'émissivité, mais pour mesurer des températures de composants, généralement noirs, cela ne devrait pas poser de problème.
J'ai testé également ce module :
Module MLX90614ESF-BAA |
2. Alimentation
2.1. Alimentation USB
Le montage peut être alimenté par le cordon USB de l'ARDUINO. Il consomme au maximum 40mA pendant la mesure.2.2. Alimentation par batterie
Il est tout à fait envisageable d'alimenter le thermomètre par batterie ou alimentation externe. Un connecteur est prévu à cet effet.L'alimentation par batterie doit fournir 5V. Plusieurs solutions sont possibles :
- 1 batterie LITHIUM-ION + convertisseur stepup
- 3 batteries NI-MH + convertisseur stepup
- 1 bloc secteur
1 batterie 18650 de 2000mAH devrait avoir une autonomie de 60 heures, une batterie 16340 de 500mAH 4 fois moins.
Le mode LOW-POWER de l'ARDUINO est utilisé entre deux mesures afin de ne pas provoquer de surconsommation.
2.3. Chargeur
Un chargeur TP4056 peut être intégré à la carte alimentation pour une utilisation intensive. Pour une utilisation occasionnelle on rechargera la batterie sur un chargeur de table classique.3. Le matériel
J'ai utilisé le matériel suivant :- Un ARDUINO NANO
- un MLX90614ESF-ACF
- un afficheur OLED SSD1306 0.96 pouces 128x64
- un bouton-poussoir 12mm
- deux boutons-poussoir 6mm verticaux
- une ou deux diodes laser 5V 5mW
- une résistance de 100Ω
- un connecteur 6 broches femelle coudé au pas de 2.54mm
- pour un choix du mode °C ou °F par cavalier :
- un connecteur 3 broches coudé + un cavalier au pas de 2.54mm
- ou
- un interrupteur à glissière à 90°
- ou
- aucun des deux si l'on désire un affichage en °C uniquement
- un connecteur 3 broches tulipe ou DUPONT au pas de 2.54mm
- une résistance de 1MΩ film métallique 1%
- une résistance de 330KΩ film métallique 1%
- une diode 1N5817
pin header 6 points coudé |
- un boîtier de batterie 18650 ou 16340
- un interrupteur à glissière
- un convertisseur stepup
- MT3608 + inductance 1mH + condensateur 470µF
- ou
- POLULU U1V11F5 + résistance 100KΩ
- option chargeur intégré
- un chargeur TP4056
- ou
- une diode 1N5817
- un connecteur 3 broches mâle au pas de 2.54mm
Si on a choisi un connecteur DUPONT femelle, un connecteur DUPONT mâle sera plus adapté, mais l'écartement entre les deux cartes sera supérieur de 2mm.
4. Les Schémas
Pour récupérer le projet voir plus bas : 11. Téléchargements.
4.1. Carte thermomètre
La carte thermomètre |
Le jumper et l'inverseur MODE jouent le même rôle : permettre l'affichage de la température en °C ou °F. On peut choisir l'une ou l'autre des solutions suivant que l'on souhaite changer souvent le mode d'affichage on non. Par défaut l'affichage se fait en °C (si l'entrée D5 est en l'air).
Le bouton-poussoir SHOOT active la diode laser en direct sans passer pas le microcontrôleur.
La diode D1 protège le montage en cas d'inversion de l'alimentation.
Le pont de résistances R1 + R2 permet de mesurer la tension de la batterie.
4.2. Carte alimentation
La carte alimentation |
Le convertisseur MT3608 est assez bruyant et je remarque que le montage est assez sensible à ce bruit. La sortie de ce convertisseur doit être filtrée (inductance L1 + condensateur C1). Le convertisseur POLULU U1V11F5 n'aura pas besoin de ces composants.
Voir cet article : https://riton-duino.blogspot.com/2019/11/convertisseurs-stepup-stepdown.html
Dans le cas où un chargeur TP4056 est utilisé il n'y a pas de diode de protection contre l'inversion de polarité de la batterie, car il faudrait placer cette diode entre la batterie et le chargeur TP4056, ce qui empêcherait la charge de celle-ci.
Comme la batterie est censée rester en place, il suffit de la placer dans le bon sens lors du montage.
Si par contre si le chargeur TP4056 n'est pas implanté, comme la batterie est censée être démontée pour être rechargée, il serait dommage de la réintroduire accidentellement dans le mauvais sens.
Mettre en place la diode D1 1N5817 permet d'éviter les accidents (comme précisé sur le schéma ci-dessus).
4.3. Carte capteur
On
peut ajouter une petite carte optionnelle regroupant le capteur et la
ou les LEDs, venant s'enficher sur le connecteur 6 points de la carte
thermomètre.
En fonction du capteur choisi (module MLX90614ESF-BAA ou MLX90614ESF-ACF) elle aura besoin de composants différents :
- MLX90614ESF-ACF ou MLX90614ESF-BAA : deux résistances pullup
- MLX90614ESF-BAA : régulateur 3.3V
- module MLX90614ESF-BAA : rien
Carte MLX90614ESF-BAA ou MLX90614ESF-ACF |
Carte pour module MLX90614ESF-BAA |
Je n'ai pas prévu de carte pour le MLX90614ESF-BAA seul, avec régulateur 3.3V, car le module MLX90614ESF-BAA est moins cher en général, et comporte déjà les composants nécessaires.
On peut se passer de cette carte si l'on préfère fixer le capteur et les diodes sur un support et faire le raccordement pas des fils. Dans ce cas il vaudra mieux éviter le métal, car le boîtier des diodes est relié au fil bleu, ou alors il faudra prévoir un isolant.
5. La réalisation
5.1. Version USB seul
Si le thermomètre doit être utilisé exclusivement sur USB, le connecteur P2 3 broches peut être omis, ainsi que la diode D1 et la résistance R1.
5.2. Version autonome
Si le thermomètre doit être autonome, la carte alimentation par batterie est nécessaire.
En fonction de la batterie choisie, souder un support de batterie 18650 ou 16340. Attention au sens (le pôle + est en haut si la carte est vue batterie à gauche : voir photos plus bas).
En fonction du convertisseur choisi :
- MT3608 : ajouter l'inductance L1 de 1mH et le condensateur C1 de 470µF
- U1V11F5 : ajouter la résistance R1 de 100KΩ et remplacer l'inductance L1 par un strap
Souder le connecteur P1 3 broches (j'ai utilisé 3 pattes de LEDs) à l'arrière de la carte, ainsi que le chargeur TP4056 s'il est nécessaire.
Si le chargeur TP4056 n'est pas implanté, on peut mettre en place la diode D1 1N5617 sur les pastilles prévues (voir photos plus bas).
5.3. Attention
Si le PCB est une réalisation maison (ce qui est mon cas), il est préférable de vérifier qu'il n'y ait pas de court-circuits entre pistes sur la carte alimentation, spécialement entre 3.7V et GND.
En cas de court-circuit une batterie LITHIUM-ION est tout à fait capable de faire fondre des pistes d'un millimètre de largeur, et même beaucoup plus.
Également, ne pas poser la carte équipée de sa batterie sur un bureau encombré. Fils, pattes de composants, trombones qui traînent, etc. doivent être tenus à distance.
5.4. Les diodes laser
Ces diodes sont des modèles bas de gamme amplement suffisantes pour l'application :
Elles sont composées d'un petit circuit imprimé pincé dans le boîtier. Le boîtier comporte un réglage de l'optique (les deux pièces de laiton sont vissées l'une dans l'autre).
Il est conseillé d'essayer ces diodes avant de les mettre en place, et après avoir éventuellement paufiné le réglage, il vaut mieux bloquer le filetage avec un point de colle. On peut aussi bloquer la petite carte dans le boîtier par le même moyen.
Les trous dans la carte capteur font 6mm. Il faudra coller les diodes une fois que celles-ci sont en place et que leur faisceau a été réglé. On peut effectuer le réglage facilement à l’œil, en visant une cible à quelques dizaines de centimètres.
6. IDE ARDUINO
Il vous faudra bien entendu installer les bibliothèques ARDUINO suivantes :
Librairie low-power : https://github.com/rocketscream/Low-Power.git
Librairie MLX90614 : https://github.com/sparkfun/SparkFun_MLX90614_Arduino_Library.git
Librairie SSD1306 : https://github.com/adafruit/Adafruit_SSD1306.git
Dans l'IDE, dans le menu "Outils/Type de Carte" choisir "Arduino Nano". Dans le menu "Outils/Processeur" choisir "ATmega328p" ou "ATmega328p (old bootloader)".
7. Le code
Pour récupérer le projet voir plus bas : 11. Téléchargements.Le code permet de choisir entre la librairie SparkFun et celle d'AdaFruit. La librairie AdaFruit ne permettra pas de régler l'émissivité.
Elle conviendra donc au capteur modèle MLX90614ESF-BAA.
L'option par défaut est : SPARKFUN
#define NO_SENSOR 0 // no sensor for test purpose only
#define ADAFRUIT 1 // use ADAFRUIT only when no emissivity tuning is required
#define SPARKFUN 2 // SPARKFUN : the best
#define SENSOR_LIBRARY SPARKFUN
Il faut donc choisir ADAFRUIT si l'on utilise le capteur MLX90614ESF-BAA.
8. Utilisation
8.1. Réglage
ATTENTION : si l'on utilise la carte alimentation avec un convertisseur stepup MT3608, il faudra avant tout régler celui-ci sur 5V avant d'assembler les deux cartes.La chute de tension de la diode de protection D1 de la carte thermomètre est négligeable (200mV).
8.2. Bouton
Le bouton SHOOT allume la diode laser. Il est utilisé uniquement pour la visée. Lorsqu'il est relâché, la mesure continue.8.3. Émissivité
Les boutons PLUS et MINUS permettent de régler l'émissivité du matériau dont on va mesurer la température (voir ICI). Il faut maintenir le bouton appuyé pour effectuer le réglage : la valeur est incrémentée ou décrémentée toutes les 500ms.Si le bouton est appuyé pendant plus de 5 secondes, le réglage d'émissivité passe en mode rapide : la valeur est incrémentée ou décrémentée toutes les 100ms.
L'émissivité par défaut est de 95%, ce qui correspond à la majeure partie des objets noirs que je mesure, composants électroniques en particulier.
La valeur d'émissivité choisie est stockée dans l'EEPROM de l'ARDUINO.
8.4. Mode °C °F
Le jumper ou l'inverseur MODE permet de sélectionner le mode d'affichage °C ou °F. Le petit OLED affiche la température ambiante, l'émissivité et la température de l'objet.8.5. Indicateur de capacité
En haut à gauche de l'écran la capacité de la batterie est affichée sous forme d'un rectangle plein, plus ou moins haut (de 1 à 10 pixels). Si aucune batterie n'est présente, rien n'est affiché.8.6. Sortie USB
La mesure est permanente et les informations sont remontées par le cordon USB vers le PC toutes les 500ms :27.53,21.27
27.89,21.27
27.95,21.27
28.09,21.27
28.11,21.27
25.63,21.27
La première information est la température de l'objet mesuré, la deuxième est la température ambiante. Il est facile de récupérer ensuite ces valeurs avec un terminal (y compris le moniteur série ARDUINO) et de les stocker dans un fichier pour les exploiter avec un tableur ou un autre logiciel.
9. Photos
Voici quelques images du thermomètre :En bas de droite à gauche : les deux boutons + / -, le bouton SHOOT, le connecteur MODE.
Le capteur est enfiché directement dans le connecteur, tout du moins provisoirement, pour la photo.
Comme on peut le voir, sans cavalier sur le connecteur 3 points il affiche la température en °C. Pour afficher en °F, il faudra placer un cavalier sur les deux bornes du bas.
La température ambiante est affichée sous le titre, suivie de l'émissivité, puis de la température de l'objet visé.
Vue de côté |
On voit également en dessous le connecteur tulipe 3 points prêt à accueillir les broches de la carte l'alimentation par batterie.
La NANO et l'afficheur sont montés sur support (ce n'est pas une obligation).
Voici la carte alimentation par batterie :
Vue de dessus |
Si l'on choisit de se passer de chargeur, souder la diode D1 1N5817 (l'emplacement est indiqué).
J'ai choisi le convertisseur POLULU U1V11F5 (l'inductance L1 est remplacée par un fil).
Si l'on choisit le MT3608 son emplacement est indiqué, ainsi que de celui de l'inductance L1 et du condensateur C1.
Rappel : régler le MT3608 sur 5V avant de relier les deux cartes.
vue côté chargeur |
Je conseille de souder les broches sous la carte alimentation d'abord. Ensuite vérifier visuellement (ou avec un multimètre) l'absence de court-circuit à l'emplacement des soudures (il y a un plan de masse et il est facile de déborder). Mettre en place le chargeur sur les six broches et souder le module.
Vue de côté |
Attention : si le connecteur 3 boches de la carte thermomètre est du type tulipe, ne pas utiliser de broches du type connecteur DUPONT mâle, elles n'entreraient pas dans le connecteur tulipe. Si l'on utilise un connecteur femelle DUPONT ce sera plus facile.
Si la carte thermomètre est réalisée en simple couche (PCB maison, ce qui est mon cas), un connecteur DUPONT femelle sera difficile à souder sous la carte à moins de le surélever de 2mm ou 3mm. Avec un PCB industriel à trous métallisés ce sera plus facile (soudure côté composants).
Les 4 colonnettes sont des modèles 2.5mm x 10mm. Avec un connecteur 3 broches DUPONT des colonnettes de 12mm (PCB à trous métalisés) ou 15mm (PCB simple face) seront préférables.
La batterie en charge |
La carte capteur MLX90614ESF-BAA + diodes laser :
La carte en place sur le connecteur 6 points :
10. Essais
Lorsque le capteur est dirigé vers ma jambe (photo N°1 ci-dessus) il est normal qu'il affiche seulement 28.67°C, je ne suis pas en short !Si je place la paume de la main devant le capteur il affiche 29°. C'est normal aussi, les mains sont plus froides que le reste du corps.
Le thermomètre PEAKMETER PM6530C affiche les mêmes valeurs, à quelques dixièmes de degrés près.
11. Téléchargements
Pour télécharger le projet :https://bitbucket.org/henri_bachetti/infrared-thermometer
Cette page vous donne toutes les informations nécessaires :
https://riton-duino.blogspot.com/p/migration-sous-bitbucket.html
12. Conclusion
Voici un petit thermomètre sur pied bien pratique pour faire des mesures précises. Il permet de surveiller la température d'un objet tout en conservant les mains libres, et éventuellement de faire des relevés de courbes.Cordialement
Henri
est ce que ce thermomètre peut être utilisé pour mesurer la température corporelle à distance
RépondreSupprimermerci beaucoup <3
Bien évidemment, c'est clairement dit au paragraphe 10.
Supprimermerci beaucoup
Supprimerest ce que ce thermomètre peut il mesurer la temperature corporelle
RépondreSupprimerVoir réponse ci-dessus.
SupprimerBonjour,
RépondreSupprimerOù avez vous acheté le MLX90614ESF-ACF?
Je l'avais acheté chez TME, mais ils ne le distribuent plus, sauf sous forme de module DFROBOT, hors de prix.
RépondreSupprimerOn le trouve aussi sur AliExpress :
https://fr.aliexpress.com/wholesale?catId=0&initiative_id=SB_20211114054135&origin=y&SearchText=MLX90614
Attention le modèle MLX90614ESF DCI fonctionne sous 3V, mais les modules intègrent un régulateur.
Merci beaucoup, sur aliexpress je n'ai trouvé que des BAA; DCI et GY, est ce que les DCI ou GY permettent le réglage de l'émissivité? (c'est ce qui m'intéresserai, c'est pour cela que je cherche un ACF)
Supprimerhttps://www.sparkfun.com/datasheets/Sensors/Temperature/SEN-09570-datasheet-3901090614M005.pdf
SupprimerD'après la datasheet :
ACF veut dire 5V, gradient compensated, 10° angle de mesure
DCI veut dire 3V, gradient compensated, I
Je ne vois pas à quoi correspond I mais si les photos sont exactes il s'agit probablement de la version longue, angle de mesure 10°.
L'essentiel pour vous est que la deuxième lettre soit C (gradient compensated).
J'ai trouvé un DCI, merci beaucoup pour vos réponses
RépondreSupprimersvp j'ai besoins de votre aide j'ai déjà faisait un thermomètre pour mon projet de fin d'étude mais j'ai utilisé un capteur infrarouge au lieu de laser ms je vois que les valeurs de la temperature sont bizarres et je savait pas comment résolu ce problème je veux une réponse svp.
RépondreSupprimerBonjour. Il serait plus pratique de poser vos questions sur le forum ARDUINO : https://forum.arduino.cc/c/international/francais/49
SupprimerOn pourrait échanger plus facilement, publier du code, des images, etc.