ESP8266 - DHT11
Ce tutoriel vous explique comment utiliser l'ESP8266 pour lire la température et l'humidité à partir du capteur DHT11. En détail, nous apprendrons :
- Comment connecter l'ESP8266 au capteur DHT11
- Comment programmer l'ESP8266 pour lire les valeurs de température et d'humidité à partir d'un DHT11
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 du capteur de température et d'humidité DHT11
Schéma de brochage du capteur de température et d'humidité
Le DHT11 sur le marché se présente sous deux formes : capteur et module.
Le capteur DHT11 dispose de quatre broches :
- Broche GND : doit être connectée à GND (0V)
- Broche VCC : doit être connectée à VCC (5V)
- Broche DATA : utilisée pour la communication entre le capteur et l'ESP8266
- Broche NC : Non connectée, cette broche peut être négligée
![Capteur de température et d'humidité DHT11 - Brochage](https://newbiely.fr/images/tutorial/dht11-temperature-humidity-sensor-pinout.jpg)
Le module DHT11 a trois broches :
- Broche GND (-) : doit être connectée à GND (0V)
- Broche VCC (+) : doit être connectée à VCC (5V)
- Broche OUT : utilisée pour la communication entre le capteur et l'ESP8266
※ NOTE THAT:
La disposition des broches sur un module peut varier en fonction du fabricant. Il est IMPÉRATIF d'utiliser les étiquettes imprimées sur le module comme référence. Assurez-vous de regarder de près !
Diagramme de câblage
Câblage du capteur ESP8266 - DHT11
Une résistance d'une valeur entre 5K et 10K Ohms est nécessaire pour maintenir la ligne de données à un niveau haut, permettant ainsi la communication entre le capteur et l'ESP8266.
![Schéma de câblage du capteur de température et d'humidité ESP8266 NodeMCU DHT11](https://newbiely.fr/images/tutorial/esp8266-dht11-temperature-humidity-sensor-wiring-diagram.jpg)
This image is created using Fritzing. Click to enlarge image
Voir plus dans l'agencement des broches de l'ESP8266 et comment alimenter l'ESP8266 et d'autres composants.
Câblage du module ESP8266 - DHT11
La plupart des modules de capteur DHT11 intègrent une résistance, ce qui élimine le besoin de câblage supplémentaire ou de soudure.
![Schéma de câblage du module de température et d'humidité ESP8266 NodeMCU DHT11](https://newbiely.fr/images/tutorial/esp8266-dht11-temperature-humidity-module-wiring-diagram.jpg)
This image is created using Fritzing. Click to enlarge image
Comment programmer le capteur de température DHT11
- Pour commencer, la bibliothèque doit être incluse :
- Spécifiez la broche ESP8266 qui est connectée au capteur DHT11.
- Précisez le type de capteur : DHT11
- Créez un objet DHT.
- Commencez l'installation du capteur :
- Lisez la valeur d'humidité.
- Lisez la température en Celsius.
- Lisez la température en Fahrenheit.
Code ESP8266 pour DHT11
Étapes rapides
Pour commencer avec l'ESP8266 sur Arduino IDE, suivez ces étapes :
- Consultez le tutoriel comment configurer l'environnement pour ESP8266 sur Arduino IDE si c'est la première fois que vous utilisez ESP8266.
- Câblez les composants comme indiqué sur le schéma.
- Connectez la carte ESP8266 à votre ordinateur via un câble USB.
- Ouvrez Arduino IDE sur votre ordinateur.
- Choisissez la bonne carte ESP8266, tel que (par exemple, NodeMCU 1.0 (Module ESP-12E)), et son port COM respectif.
- Connectez un câble USB entre l'ESP8266 et le PC.
- Ouvrez Arduino IDE, sélectionnez la bonne carte et le bon port.
- Cliquez sur l'icône Libraries dans la barre gauche de l'Arduino IDE.
- Recherchez "DHT", puis localisez la bibliothèque du capteur DHT par Adafruit.
- Appuyez sur le bouton Install pour compléter l'installation.
![Bibliothèque de capteur DHT11 ESP8266 NodeMCU](https://newbiely.fr/images/tutorial/esp8266-dht-library.jpg)
- Vous serez invité à installer certaines autres dépendances de bibliothèques.
- Pour installer toutes ces bibliothèques, cliquez sur le bouton Install All.
![Bibliothèque de capteurs unifiée Adafruit ESP8266 NodeMCU](https://newbiely.fr/images/tutorial/adafruit-unified-sensor-library.jpg)
- Copiez le code correspondant au capteur que vous avez et ouvrez-le avec l'IDE Arduino.
- Cliquez sur le bouton Upload dans l'IDE Arduino pour compiler et téléverser le code vers l'ESP8266.
- Modifiez la température de l'environnement autour du capteur.
- Consultez le résultat sur le moniteur série.
Vidéo
Connaissances supplémentaires
Comparons les capteurs DHT11 et DHT22.
Les points communs entre DHT11 et DHT22
- Les brochages restent identiques.
- Le câblage vers l'ESP8266 est inchangé.
- La programmation, avec l'utilisation d'une bibliothèque, est comparable, nécessitant seulement la modification d'une ligne de code.
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 |
De toute évidence, le DHT22 est plus précis que le DHT11, a une gamme de mesures plus large, mais coûte plus cher.