Raspberry Pi - DHT22

Ce tutoriel vous explique comment utiliser un Raspberry Pi pour lire la température et l'humidité à partir du capteur DHT22. En détail, nous allons apprendre :

Nous suggérons :

Préparation du matériel

1×Raspberry Pi 4 Model B
1×DHT22 Temperature Humidity Sensor Module
1×10 kΩ resistor
1×Breadboard
1×Jumper Wires
1×(Optional) Screw Terminal Block Shield for Raspberry Pi
1×(Optional) USB-C Power Cable with On/Off Switch for Raspberry Pi 4B
1×(Optional) Plastic Case and Cooling Fan for Raspberry Pi 4B
1×(Optional) HDMI Touch Screen Monitor for Raspberry Pi

Or you can buy the following sensor kits:

1×DIYables Sensor Kit (30 sensors/displays)
1×DIYables Sensor Kit (18 sensors/displays)
Divulgation : Certains des liens fournis dans cette section sont des liens affiliés Amazon. Nous pouvons recevoir une commission pour tout achat effectué via ces liens, sans coût supplémentaire pour vous. Nous vous remercions de votre soutien.

À propos du capteur de température et d'humidité DHT22

Le brochage du capteur de température et d'humidité

Le DHT22 sur le marché se présente sous deux formes : capteur et module.

Les capteurs DHT22 dans leur forme originale ont quatre broches :

  • GND : Cette broche doit être connectée à la masse (0V)
  • VCC : Cette broche doit être connectée à l'alimentation électrique (5V)
  • DATA : Cette broche est utilisée pour la communication entre le capteur et le Raspberry Pi
  • NC : Cette broche ne doit pas être connectée et peut être ignorée
Brochage du capteur de température et d'humidité DHT22

Le module DHT22 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 le Raspberry Pi

※ Note:

La disposition des broches sur un module peut varier selon les fabricants. Il est essentiel d'utiliser toujours les étiquettes imprimées sur le module lors de son utilisation. Assurez-vous de bien regarder !

Diagramme de câblage

Le câblage vers le Raspberry Pi est le même pour les deux capteurs. Dans sa forme originale, une résistance d'une valeur comprise entre 5K et 10K Ohms est nécessaire pour maintenir la ligne de données haute, permettant ainsi la communication entre le capteur et le Raspberry Pi.

Raspberry Pi - Câblage du capteur DHT22

Diagramme de câblage du capteur de température et d'humidité DHT22 pour Raspberry Pi

This image is created using Fritzing. Click to enlarge image

Connectez le capteur DHT22 au Raspberry Pi comme suit :

  • Broche VCC du DHT22 vers le 5V du Raspberry Pi (broche 2 ou n'importe quelle broche GPIO 5V)
  • Broche GND du DHT22 vers la GND du Raspberry Pi (broche 30 ou n'importe quelle broche GPIO GND)
  • Broche DATA du DHT22 vers une broche GPIO du Raspberry Pi (par exemple, GPIO 12 (broche 32).

Pour une meilleure stabilité, vous devez ajouter une résistance (d'une valeur comprise entre 5K et 10K Ohms) entre les broches VCC et DATA du DHT22.

Raspberry Pi - Câblage du module DHT22

La plupart des modules de capteur DHT22 sont livrés avec une résistance intégrée, éliminant ainsi le besoin de câblage ou de soudure supplémentaire.

Diagramme de câblage du module de température et d'humidité DHT22 de Raspberry Pi

This image is created using Fritzing. Click to enlarge image

Pour simplifier et organiser votre câblage, nous vous recommandons d'utiliser un Screw Terminal Block Shield pour Raspberry Pi. Ce shield garantit des connexions plus sûres et plus faciles à gérer, comme illustré ci-dessous :

Raspberry Pi Screw Terminal Block Shield

Connectez le module DHT22 au Raspberry Pi comme suit :

  • Broche VCC du DHT22 au 5V du Raspberry Pi (broche 2 ou n'importe quelle broche GPIO 5V)
  • Broche GND du DHT22 au GND du Raspberry Pi (broche 30 ou n'importe quelle broche GPIO GND)
  • Broche DATA du DHT22 à une broche GPIO sur le Raspberry Pi (par exemple, GPIO 12 (broche 32)).

Comment programmer le Raspberry Pi pour lire la température et l'humidité à partir d'un capteur DHT22

  • Ouvrez le terminal sur votre Raspberry Pi ou connectez-vous via SSH.
  • Mettez à jour la liste des paquets et installez les bibliothèques nécessaires en exécutant les commandes suivantes :
sudo apt-get update sudo apt-get install python3-dev python3-pip sudo pip3 install Adafruit_DHT
  • Maintenant, vous pouvez écrire un script Python pour Raspberry Pi afin de lire les données du capteur DHT22.
# Ce code Raspberry Pi a été développé par newbiely.fr # Ce code Raspberry Pi est mis à disposition du public sans aucune restriction. # Pour des instructions complètes et des schémas de câblage, veuillez visiter: # https://newbiely.fr/tutorials/raspberry-pi/raspberry-pi-dht22 import Adafruit_DHT import time # Set the sensor type and GPIO pin sensor = Adafruit_DHT.DHT11 pin = 17 # Change this to the GPIO pin you used for DATA try: while True: # Try to read the temperature and humidity from the sensor humidity, temperature = Adafruit_DHT.read_retry(sensor, pin) # If the reading was successful, display the values on the same line if humidity is not None and temperature is not None: print(f"Temperature: {temperature:.1f} °C, Humidity: {humidity:.1f} %") else: print("Failed to retrieve data from the DHT22 sensor.") # Wait some time before taking the next reading time.sleep(2) except KeyboardInterrupt: print("\nExiting...")

Enregistrez le code Python dans un fichier (par exemple, dht22.py) sur votre Raspberry Pi. Ensuite, exécutez le script dans le terminal :

python3 dht22.py
  • Vérifiez les résultats sur le terminal.
PuTTY - Raspberry Pi
Temperature: 25.4 °C, Humidity: 52.7 % Temperature: 25.7 °C, Humidity: 52.1 % Temperature: 26.1 °C, Humidity: 52.3 % Temperature: 25.9 °C, Humidity: 52.3 %

Le script lit en continu les données du capteur toutes les 2 secondes (comme spécifié dans la ligne time.sleep(2)), vous verrez donc les lectures mises à jour toutes les 2 secondes jusqu'à ce que vous arrêtiez le script en appuyant sur les touches Ctrl + C dans le terminal.

Si, pour une raison quelconque, le script ne parvient pas à lire les données du capteur, il affichera :

PuTTY - Raspberry Pi
Failed to retrieve data from the DHT22 sensor.

Connaissances supplémentaires

Comparons les capteurs DHT11 et DHT22.

Les points communs entre DHT11 et DHT22

  • Fournir des informations sur la température et l'humidité.
  • Les broches restent les mêmes.
  • Le câblage vers le Raspberry Pi est inchangé.
  • La programmation, utilisant une bibliothèque, est comparable avec seulement une ligne de code 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

Évidemment, le DHT22 est plus précis que le DHT11 et possède une gamme plus large, bien qu'il soit plus cher.

Vidéo

※ OUR MESSAGES

  • Please feel free to share the link of this tutorial. However, Please do not use our content on any other websites. We invested a lot of effort and time to create the content, please respect our work!