Arduino - Capteur de température et d'humidité
Dans ce tutoriel, nous allons apprendre :
- Les différences entre le capteur de température et d'humidité DHT11 et DHT22
- Comment lire la valeur de température et d'humidité du DHT11 en utilisant Arduino
- Comment lire la valeur de température et d'humidité du DHT22 en utilisant Arduino
Si vous souhaitez uniquement obtenir la température, nous vous recommandons d'utiliser un capteur de température étanche DS18B20 à la place. C'est un capteur peu coûteux et soigné. Vous pouvez le placer dans de l'eau chaude ou froide.
Préparation du matériel
Or you can buy the following sensor kits:
1 | × | DIYables Sensor Kit (30 sensors/displays) | |
1 | × | DIYables Sensor Kit (18 sensors/displays) |
À propos des capteurs de température et d'humidité DHT11 et DHT22
Les points communs entre DHT11 et DHT22
- Les brochages sont identiques
- Le câblage vers Arduino est le même
- La programmation (avec une bibliothèque) est similaire (seule une ligne de code est différente)
Les différences entre DHT11 et DHT22
DHT11 | DHT22 | |
---|---|---|
Price | ultra low cost | low cost |
Temperature Range | 0°C to 50°C | -40°C to 80°C |
Temperature Accuracy | ± 2°C | ± 0.5°C |
Humidity Range | 20% to 80% | 0% to 100% |
Humidity Accuracy | 5% | ± 2 to 5% |
Reading Rate | 1Hz (once every second) | 0.5Hz (once every 2 seconds) |
Body size | 15.5mm x 12mm x 5.5mm | 15.1mm x 25mm x 7.7mm |
Operating Voltage | 3 to 5V | 3 to 5V |
Comme vous pouvez le voir, le DHT22 est un peu plus précis, a une plus grande portée mais est plus cher que le DHT11.
Brochage
Le capteur DHT11 et DHT22 sous leur forme originale possèdent quatre broches :
- Broche GND : doit être connectée à GND (0V)
- Broche VCC : doit être connectée à VCC (5V ou 3.3V)
- Broche DATA : la broche est utilisée pour la communication entre le capteur et l'Arduino
- Broche NC : Non connectée, nous pouvons ignorer cette broche
Certains fabricants fournissent les capteurs DHT11 et DHT22 sous forme de module avec trois broches : GND, VCC et les broches DATA (ou alternativement : -, + et les broches OUT).
※ NOTE THAT:
Sous forme de module, l'ordre des broches peut varier selon les fabricants. Utilisez TOUJOURS les étiquettes imprimées sur le module. Regardez de près !
Diagramme de câblage
Le câblage vers l'Arduino est le même pour les deux capteurs. Sous forme originale, une résistance de 5K à 10K Ohms est nécessaire pour maintenir la ligne de données haute et permettre la communication entre le capteur et l'Arduino.
Arduino - Câblage du capteur DHT11
This image is created using Fritzing. Click to enlarge image
Arduino - Câblage du capteur DHT22
This image is created using Fritzing. Click to enlarge image
Câblage du module Arduino - DHT11
La plupart des modules de capteur DHT22 possèdent une résistance intégrée, donc vous n'avez pas besoin de l'ajouter. Cela nous épargne certains travaux de câblage ou de soudure.
This image is created using Fritzing. Click to enlarge image
Câblage du module Arduino - DHT22
La plupart des modules de capteur DHT22 possèdent une résistance intégrée, vous n'avez donc pas besoin de l'ajouter. Cela nous économise quelques travaux de câblage ou de soudure.
This image is created using Fritzing. Click to enlarge image
Comment programmer le capteur de température DHTxx
La programmation pour les deux capteurs est similaire. Il n'y a qu'une seule ligne de code qui diffère.
- Inclure la bibliothèque :
- Définissez la broche Arduino connectée au capteur DHT :
- Définir le type de capteur : DHT11 ou DHT22 (Ceci est la ligne de code différente)
ou
- Déclarer l'objet DHT
- Initialiser le capteur :
- Lire l'humidité :
- Lire la température en Celsius :
- Lire la température en Fahrenheit :
Code Arduino - DHT11
Code Arduino - DHT22
Si vous comparez les deux codes ci-dessus, vous remarquerez qu'une ligne est différente (ligne 11)
Étapes rapides
- Connectez l'Arduino au PC via le câble USB
- Ouvrez l'IDE Arduino, sélectionnez la bonne carte et le bon port
- Naviguez jusqu'à l'icône Libraries sur la barre gauche de l'IDE Arduino.
- Recherchez "DHT", puis trouvez la bibliothèque de capteurs DHT par Adafruit
- Cliquez sur le bouton Install pour installer la bibliothèque.
- On vous demandera d'installer d'autres dépendances de bibliothèques.
- Cliquez sur le bouton Install All pour installer toutes les dépendances des bibliothèques.
- Copiez le code ci-dessus correspondant au capteur que vous avez et ouvrez-le avec Arduino IDE
- Cliquez sur le bouton Upload dans l'Arduino IDE pour téléverser le code vers Arduino
- Rendez l'environnement autour du capteur plus chaud ou plus froid
- Consultez le résultat sur le moniteur série.