Arduino - DHT22

Dans ce tutoriel, nous allons apprendre :

Préparation du matériel

1×Arduino Uno R3
1×Câble USB 2.0 type A/B (pour PC USB-A)
1×Câble USB 2.0 type C/B (pour PC USB-C)
1×DHT22 Module
1×10 kΩ Resistor
1×Plaque d'essai
1×Fils de connexion
1×Optionnel: 9V Power Adapter for Arduino
1×Recommandé: Shield à bornier à vis pour Arduino Uno
1×Recommandé: Shield plaque d'essai pour Arduino Uno
1×Recommandé: Boîtier pour Arduino Uno
1×Recommandé: Kit plaque de base prototypage et plaque d'essai pour Arduino Uno

Ou vous pouvez acheter les kits suivants:

1×Kit de Démarrage DIYables STEM V3 (Arduino inclus)
1×Kit de Capteurs DIYables (30 capteurs/écrans)
1×Kit de Capteurs DIYables (18 capteurs/écrans)
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

DHT22
Temperature Range -40°C to 80°CW
Temperature Accuracy ± 0.5°C
Humidity Range 0% to 100%
Humidity Accuracy ± 2 to 5%
Reading Rate 0.5Hz (once every 2 seconds)
Operating Voltage3 to 5V

Schéma de brochage

Le DHT22 existe sous deux formes : capteur et module.

Capteur de température et d'humidité DHT22 Brochage

Le capteur DHT22 a 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 communiquer entre le capteur et l'Arduino
  • Broche NC : Non connectée, nous pouvons ignorer cette broche

Le module DHT22 possède trois 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 communiquer entre le capteur et l'Arduino

Certains fabricants fournissent le capteur DHT22 sous forme de module avec trois broches : GND, VCC et DATA (ou alternativement : -, + et OUT).

Diagramme de câblage

Dans la forme de capteur, une résistance de 5K à 10K Ohms est nécessaire pour maintenir la ligne de données haute et afin de permettre la communication entre le capteur DHT22 et l'Arduino.

Câblage du capteur Arduino - DHT22

Schéma de câblage du capteur de température et d'humidité Arduino DHT22

Cette image a été créée avec Fritzing. Cliquez pour agrandir l'image.

Câblage du module Arduino - DHT22

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 évite certains travaux de câblage ou de soudure.

Schéma de câblage du module de température et d'humidité Arduino DHT22

Cette image a été créée avec Fritzing. Cliquez pour agrandir l'image.

Comment programmer le capteur de température DHT22

La programmation pour les deux capteurs est similaire. Il y a seulement une ligne de code qui diffère.

  • Inclure la bibliothèque :
#include "DHT.h"
  • Définir la broche Arduino connectée au capteur DHT :
#define DHT22_PIN 2
  • Déclarez l'objet DHT22
DHT dht22(DHT22_PIN, DHT22);
  • Initialiser le capteur :
dht22.begin();
  • Lire l'humidité :
float humi = dht22.readHumidity();
  • Lire la température en Celsius :
float tempC = dht22.readTemperature();
  • Lire la température en Fahrenheit :
float tempF = dht22.readTemperature(true);

Code Arduino - DHT22

/* * Ce code Arduino a été développé par newbiely.fr * Ce code Arduino 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/arduino/arduino-dht22 */ #include "DHT.h" #define DHT22_PIN 2 DHT dht22(DHT22_PIN, DHT22); void setup() { Serial.begin(9600); dht22.begin(); // initialize the DHT22 sensor } void loop() { // wait a few seconds between measurements. delay(2000); // read humidity float humi = dht22.readHumidity(); // read temperature as Celsius float tempC = dht22.readTemperature(); // read temperature as Fahrenheit float tempF = dht22.readTemperature(true); // check if any reads failed if (isnan(humi) || isnan(tempC) || isnan(tempF)) { Serial.println("Failed to read from DHT22 sensor!"); } else { Serial.print("DHT22# Humidity: "); Serial.print(humi); Serial.print("%"); Serial.print(" | "); Serial.print("Temperature: "); Serial.print(tempC); Serial.print("°C ~ "); Serial.print(tempF); Serial.println("°F"); } }

Étapes rapides

  • Connectez l'Arduino au PC via le câble USB
  • Ouvrez l'Arduino IDE, sélectionnez la bonne carte et le bon port
  • Naviguez jusqu'à l'icône Libraries sur la barre gauche de l'Arduino IDE.
  • Recherchez "DHT", puis trouvez la bibliothèque de capteurs DHT par Adafruit
  • Cliquez sur le bouton Install pour installer la bibliothèque.
Bibliothèque de capteurs DHT Arduino
  • On vous demandera d'installer d'autres dépendances de bibliothèques
  • Cliquez sur le bouton Install All pour installer toutes les dépendances de la bibliothèque.
Bibliothèque de capteurs unifiée Arduino Adafruit
  • Copiez le code ci-dessus correspondant au capteur que vous avez et ouvrez-le avec Arduino IDE.
  • Cliquez sur le bouton Upload dans Arduino IDE pour téléverser le code sur Arduino.
  • Rendez l'environnement autour du capteur plus chaud ou plus froid.
  • Observez le résultat sur le moniteur série.
COM6
Send
DHT22# Humidity: 31.00% | Temperature: 27.00°C ~ 80.60°F DHT22# Humidity: 31.00% | Temperature: 27.00°C ~ 80.60°F DHT22# Humidity: 31.00% | Temperature: 27.00°C ~ 80.60°F DHT22# Humidity: 31.00% | Temperature: 27.00°C ~ 80.60°F DHT22# Humidity: 31.00% | Temperature: 28.00°C ~ 82.40°F DHT22# Humidity: 31.00% | Temperature: 28.00°C ~ 82.40°F DHT22# Humidity: 31.00% | Temperature: 28.00°C ~ 82.40°F DHT22# Humidity: 31.00% | Temperature: 28.00°C ~ 82.40°F DHT22# Humidity: 32.00% | Temperature: 28.00°C ~ 82.40°F DHT22# Humidity: 31.00% | Temperature: 29.00°C ~ 84.20°F DHT22# Humidity: 32.00% | Temperature: 29.00°C ~ 84.20°F DHT22# Humidity: 31.00% | Temperature: 29.00°C ~ 84.20°F
Autoscroll Show timestamp
Clear output
9600 baud  
Newline  

Vidéo

※ NOS MESSAGES

  • N'hésitez pas à partager le lien de ce tutoriel. Cependant, veuillez ne pas utiliser notre contenu sur d'autres sites web. Nous avons investi beaucoup d'efforts et de temps pour créer ce contenu, veuillez respecter notre travail !