Ce tutoriel fait partie de: Capteur numérique d'humidité relative et de température HTU21D
Vidéos relatives au capteur numérique d'humidité relative et de température HTU21D. Des liens vers d'autres vidéos se trouvent ci-dessous.
Leçon 35-2 : Utilisation du capteur de température HTU21D - Code personnalisé
Dans ce tutoriel, nous allons explorer comment utiliser le capteur de température HTU21D avec Arduino pour mesurer la température et l'humidité. Le HTU21D est un capteur fiable et à faible consommation d'énergie qui communique via I2C, ce qui le rend facile à intégrer dans vos projets. À la fin de cette leçon, vous aurez un code fonctionnel qui lit la température en Celsius, Fahrenheit et Kelvin, ainsi que l'humidité relative.

Avant de plonger dans le câblage et le code, il est essentiel de comprendre les composants impliqués. Le capteur HTU21D nécessite des connexions minimales : alimentation, masse et deux fils I2C pour le transfert de données. Cette simplicité en fait un excellent choix pour diverses applications, des stations météorologiques aux dispositifs domotiques. Pour un guide visuel, consultez la vidéo à l'heure 03:45.
Matériel expliqué
Le composant principal de ce projet est le capteur HTU21D, qui mesure la température et l'humidité. Ce capteur peut fonctionner avec des tensions allant de 1,5 V à 3,6 V, ce qui le rend polyvalent pour différentes applications. Il fournit des lectures à haute résolution, avec des mesures de température allant de -40 °C à +125 °C et des lectures d'humidité avec une résolution de 0,04 %.
De plus, le capteur utilise la communication I2C, qui nécessite deux broches : SDA (ligne de données) et SCL (ligne d'horloge). Cela permet une intégration facile avec Arduino et d'autres microcontrôleurs sans nécessiter un câblage complexe. La bibliothèque Adafruit simplifie l'interaction avec le capteur, gérant la récupération des données et les protocoles de communication sans effort.
Détails de la fiche technique
| Fabricant | TE Connectivity |
|---|---|
| Numéro de pièce | HTU21D-F |
| Tension logique/IO | 1,5 - 3,6 V |
| Tension d'alimentation | 3,3 V |
| Consommation actuelle (au repos) | 0,02 µA (typ.) |
| Consommation actuelle (active) | 450 µA (typ.) |
| Plage de température | -40 à +125 °C |
| Plage d'humidité | 0 à 100 %HR |
| Résolution | 0,04 %HR; 0,01 °C |
| Paquet | 6 broches DFN |
- Assurez une alimentation correcte pour éviter d'endommager le capteur.
- Utilisez des résistances de tirage sur les lignes SDA et SCL si elles ne sont pas intégrées.
- Gardez les connexions des capteurs courtes pour minimiser le bruit.
- Surveillez la tension pendant le fonctionnement pour maintenir la stabilité.
- Envisagez d'utiliser un condensateur pour le découplage près des broches d'alimentation.
Instructions de câblage

Pour câbler le capteur de température HTU21D, commencez par connecter l'alimentation et la masse. Connectez la broche gauche du capteur à une source de 3,3 V, en vous assurant qu'elle peut supporter la tension requise. La deuxième broche, généralement marquée en rouge, doit aller à la masse.
Ensuite, connectez la broche SDA du capteur à la brocheA4sur l'Arduino, qui sert de ligne de données pour la communication I2C. Ensuite, connectez la broche SCL à la brocheA5, qui agit comme la ligne d'horloge. Assurez-vous que ces connexions sont sécurisées, car des fils desserrés peuvent entraîner des lectures intermittentes ou un échec de communication avec le capteur.
Exemples de code et guide étape par étape
Dans le code, nous commençons par inclure les bibliothèques nécessaires et par initialiser le capteur. La ligneAdafruit_HTU21DF htu = Adafruit_HTU21DF();crée une instance de la classe capteur. Dans lesetup()fonction, nous démarrons la communication série et vérifions si le capteur est correctement connecté.
void setup() {
Serial.begin(9600);
if (!htu.begin()) {
Serial.println("Couldn't find sensor!");
while (1);
}
}Ce fragment vérifie si le capteur fonctionne correctement. Si ce n'est pas le cas, il affiche un message d'erreur et interrompt le programme. Dans leloop()fonction, nous lisons les valeurs de température et d'humidité en continu.
void loop() {
Serial.print(getHTU('C'));
Serial.print("C");
Serial.print(getHTU('H'));
Serial.println("%");
delay(1000);
}Ici, la fonctiongetHTU()est appelé avec différents paramètres pour récupérer la température en Celsius et l'humidité. Le retard garantit que les relevés sont effectués chaque seconde, offrant une sortie fluide sur le moniteur série. Le code complet est disponible en référence sous l'article.
Démonstration / À quoi s'attendre
Une fois que tout est câblé correctement et que le code est téléchargé, vous devriez voir les relevés de température et d'humidité s'afficher dans le moniteur série. La température sera affichée en degrés Celsius, suivie du pourcentage d'humidité correspondant. Si vous appliquez de la chaleur au capteur, vous devriez observer la température augmenter en conséquence (dans la vidéo à 10:15).
Faites attention aux limites du capteur ; si la température dépasse 125 °C, il peut donner une lecture incorrecte ou afficher zéro. Assurez-vous toujours que vos connexions sont sécurisées et que le capteur est alimenté correctement pour éviter tout problème pendant son fonctionnement.
Horodatages de vidéo
- 00:00Introduction
- 03:45Câblage du capteur
- 05:30Examen du code
- 10:15Démonstration
- 12:00Conclusion
Ce tutoriel fait partie de: Capteur numérique d'humidité relative et de température HTU21D
- Leçon 35-1 : Utilisation du capteur de température HTU21D
- Leçon 35 : Utilisation du capteur de température HTU21D avec Arduino
- Leçon 36 : Utilisation du capteur de température HTU21D avec un écran LCD Arduino Cours étape par étape
- Utilisation de deux capteurs d'humidité et de température HTU21DF supplémentaires avec Arduino
- Affichage de la température d'un HTU21D sur un écran LCD
- Affichage de la température d'un HTU21D sous forme de graphique à barres sur un LCD
- Comment utiliser le capteur d'humidité et de température HTU21DF avec Arduino (code de base)
- Comment utiliser le capteur d'humidité et de température HTU21DF avec Arduino (code personnalisé)
Ce dont vous pourriez avoir besoin
-
Amazon
-
eBayAchetez le HTU21D sur eBayebay.us
-
AliExpressAchetez HTU21D ou SHT21 sur AliExpresss.click.aliexpress.com
Ressources et références
-
ExterneBibliothèque Adafruit HTU21D (GitHub)github.com
-
ExterneDifférence entre HTU21DF et HTU21D (image)robojax.com
-
ExterneHTU21D Fiche technique (PDF)cdn-shop.adafruit.com
Fichiers📁
Fiche technique (pdf)
-
HTU21D_temerature_humidity_datasheet
HTU21D_temerature_humidity_datasheet.pdf0.96 MB