Mesurer la température et l’humidité à l’aide du DHT11 et de l’ESP8266 NodeMCU

ESP8266 15-10-25
11 0

Plan du tutoriel

1- Objectif du tutoriel

2- Principe de fonctionnement du capteur DHT11

3- Les composants nécessaires

4- Montage du système

5- Programme MicroPython

 

Objectif du tutoriel

L’objectif de ce tutoriel est d’apprendre à mesurer la température et l’humidité de l’air en utilisant le capteur DHT11 connecté à la carte ESP8266 NodeMCU.

À travers ce projet, nous allons comprendre comment le capteur DHT11 fonctionne, comment le relier à la carte ESP8266 via les broches de données et comment programmer cette carte pour lire les valeurs mesurées par le capteur.

Les données de température et d’humidité seront affichées directement sur le moniteur série (ou sur un écran LCD I2C si disponible).

Ce tutoriel permettra donc de :

- découvrir le principe de fonctionnement du capteur DHT11.

- apprendre à connecter correctement le DHT11 à la carte ESP8266 NodeMCU.

- écrire un programme en MicroPython pour lire et afficher les données mesurées.

- comprendre comment exploiter ces valeurs dans des applications IoT, telles qu’une station météo connectée ou un système de surveillance d’environnement.

 

Principe de fonctionnement du capteur DHT11

Le DHT11 est un capteur numérique capable de mesurer la température et l’humidité relative de l’air. Il est largement utilisé dans les projets électroniques et IoT pour sa simplicité d’utilisation et son faible coût.

1. Structure du capteur

Le capteur DHT11 est composé de deux éléments principaux :

Un capteur d’humidité de type capacitif : il mesure l’humidité relative de l’air.

Une thermistance (résistance dépendant de la température) : elle mesure la température ambiante.

Ces deux composants sont reliés à un microcontrôleur interne intégré dans le module DHT11, qui se charge de convertir les valeurs analogiques en données numériques prêtes à être envoyées vers la carte (comme l’ESP8266 NodeMCU).

2. Mesure de l’humidité

Le capteur d’humidité contient deux électrodes entourant un matériau polymère conducteur.
Lorsque le taux d’humidité de l’air change, la quantité d’eau absorbée par le polymère varie, ce qui modifie sa capacité électrique.
Cette variation de capacité est convertie en un signal numérique représentant le pourcentage d’humidité relative (en %RH).

3. Mesure de la température

La thermistance interne change de résistance selon la température de l’air.

Cette variation est détectée par le microcontrôleur du DHT11, qui calcule la température en degrés Celsius (°C).

4. Communication avec la carte ESP8266 NodeMCU

Le DHT11 envoie les données numériques (température et humidité) via une seule broche de données (Data).

La communication se fait selon un protocole de signal série spécifique à synchronisation par temporisation.

Après une requête envoyée par l’ESP8266, le DHT11 répond avec un paquet de 40 bits (5 octets) contenant les valeurs d’humidité, de température et un bit de vérification (checksum) pour garantir la fiabilité des données.

Les composants nécessaires

1- Carte ESP8266 NodeMCU

La carte ESP8266 NodeMCU est une carte de développement qui sert à lire les données de température et d’humidité fournies par le capteur DHT11, à les traiter et à les afficher sur un écran LCD I2C.

2- Écran LCD I2C 20x4

L’écran LCD 20x4 avec interface I2C permet d’afficher facilement les valeurs de température et d’humidité mesurées sans passer par le moniteur série.

3- Capteur DHT11

C’est le capteur principal qui capte les variations de température et d’humidité et envoie les valeurs numériques à la carte NodeMCU.

4- Plaque d’essai (Breadboard)

plaque d'essai

La breadboard est une plaque de prototypage utilisée pour réaliser les connexions sans soudure.

Elle permet de connecter facilement les broches du DHT11 à celles de la carte NodeMCU à l’aide de fils dupont.

5- Fils de connexion (Fils Dupont)

Fils de connexion

Les fils dupont sont utilisés pour relier les composants électroniques entre eux (VCC, GND, DATA).

On utilise des fils mâle-femelle ou mâle-mâle selon les besoins du montage.

 

Montage du système

Détail des connexions :

Pour le Capteur DHT11 :

- Connecter la broche VCC(+) du DHT11 à 3V de la carte ESP8266

- Connecter la broche DATA du DHT11 à la broche D0 (GPIO16) de la carte ESP8266

- Connecter la broche GND(-) du DHT11 à la broche GND de la carte ESP8266

Pour l'Afficheur LCD I2C :

- Connecter la broche VCC de l'afficheur à 5V de la carte ESP8266

- Connecter la broche GND de l'afficheur à GND de la carte ESP8266

- Connecter la broche SDA de l'afficheur à la broche D2 (GPIO4) de la carte ESP8266

- Connecter la broche SCL de l'afficheur à la broche D1 (GPIO5) de la carte ESP8266

Programme MicroPython

Voici un programme complet en MicroPython pour lire la température et l’humidité à l’aide du capteur DHT11 connecté à la carte ESP8266 NodeMCU :

Bibliothèques requises : i2c_lcd et lcd_api → pour afficher les informations sur l’écran LCD I2C.

Explication du code :

1- Importation des modules :

- machine : permet de configurer les broches GPIO.

- dht : contient les fonctions pour communiquer avec le capteur DHT11.

- time : utilisé pour insérer des pauses entre les lectures.

2- Initialisation du capteur :

- Le DHT11 est branché sur la broche D0 (GPIO16) de la carte ESP8266.

- La ligne d = dht.DHT11(p16) crée un objet pour interagir avec le capteur.

3- Mesure et affichage :

- d.measure() lance une nouvelle mesure.

- d.temperature() lit la température en degrés Celsius.

- d.humidity() lit le taux d’humidité relative en pourcentage.

- lcd.putstr() affiche Les données l'écran LCD I2C.

- time.sleep(4) permet d’attendre 4 secondes entre deux mesures (le DHT11 ne supporte pas des lectures trop rapides).

0 commentaire

laisser un commentaire

Veuillez noter s'il vous plaît*

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Passion de robotique

Atelier robotique

Construction des robots

Bras robotique

Maison intelligente

But de ce site web

La robotique éducative joue un rôle important dans l'éducation des enfants et des jeunes en les aidant à acquérir des compétences en science et technologie.
Dans ce cadre notre site web représente une excellente ressource pour les parents, les enseignants et les enfants qui souhaitent découvrir la robotique.

Coordonnées

Zaouiet Kontech-Jemmel-Monastir-Tunisie

+216 92 886 231

medaliprof@gmail.com

Photos des articles

Site robotique réalisé par Mohamed Ali-Prof Info