Arduino Nano - DHT22

Ce tutoriel vous explique comment utiliser un Arduino Nano pour lire la température et l'humidité à partir d'un capteur DHT22. En détail, nous apprendrons :

Nous suggérons :

Préparation du matériel

1×Arduino Nano
1×USB A to Mini-B USB cable
1×Temperature and Humidity Sensor DHT22
1×10 kΩ resistor
1×Breadboard
1×Jumper Wires
1×(Optional) 9V Power Adapter for Arduino Nano
1×(Recommended) Screw Terminal Adapter for Arduino Nano

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é DHT22

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

Le capteur DHT22 a 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'Arduino Nano
  • Broche NC : non nécessaire, cette broche peut être négligée
DHT22 capteur de température et d'humidité brochage

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 l'Arduino Nano

※ NOTE THAT:

L'agencement des broches sur un module peut varier d'un fabricant à l'autre. Il est essentiel de toujours se référer aux étiquettes imprimées sur le module lors de son utilisation. Regardez de près !

Diagramme de câblage

Arduino Nano - Câblage du capteur DHT22

Une résistance de 5K à 10K Ohms est nécessaire pour maintenir la ligne de données haute, permettant ainsi la communication entre le capteur et l'Arduino Nano.

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

This image is created using Fritzing. Click to enlarge image

Câblage du module Arduino Nano - DHT22

Le module capteur DHT22 est équipé d'une résistance intégrée, ce qui élimine le besoin de câblage supplémentaire ou de soudure. Cela nous permet de gagner du temps et de l'effort.

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

This image is created using Fritzing. Click to enlarge image

Comment programmer le capteur de température DHT22

  • La première étape consiste à inclure la bibliothèque :
#include "DHT.h"
  • Spécifiez la broche Arduino Nano qui est connectée au capteur DHT22.
#define DHT_PIN 3 // Broche Arduino Nano connectée au capteur DHT22
  • Précisez le type de capteur : DHT22
#define DHT_TYPE DHT22
  • Créez un objet DHT.
DHT dht22(DHT_PIN, DHT_TYPE);
  • Commencez le processus de configuration du capteur :
dht22.begin();
  • Lisez la valeur d'humidité.
float humi = dht22.readHumidity();
  • Lire la température en Celsius.
float temperature_C = dht22.readTemperature();
  • Lisez la température en Fahrenheit.
float temperature_F = dht22.readTemperature(true);

Code Arduino Nano pour DHT22

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

Étapes rapides

  • Connectez un câble USB à l'Arduino Nano et au PC.
  • Ouvrez l'IDE Arduino, sélectionnez la carte et le port appropriés.
  • Cliquez sur l'icône Libraries dans la barre gauche de l'IDE Arduino.
  • Recherchez "DHT" et trouvez la bibliothèque de capteurs DHT par Adafruit.
  • Appuyez sur le bouton Install pour installer la bibliothèque.
Bibliothèque de capteur DHT22 pour Arduino Nano
  • Vous serez invité à installer d'autres dépendances de bibliothèque.
  • Pour installer toutes, cliquez simplement sur le bouton Install All.
Bibliothèque de capteurs unifiés Adafruit pour Arduino Nano
  • Copiez le code de votre capteur et ouvrez-le dans l'IDE Arduino.
  • Cliquez sur le bouton Upload dans l'IDE Arduino pour compiler et téléverser le code sur l'Arduino Nano.
  • Modifiez la température de l'environnement autour du capteur.
  • Vérifiez les résultats sur le moniteur série.
COM6
Send
Humidity: 31.00% | Temperature: 27.00°C ~ 80.60°F Humidity: 31.00% | Temperature: 27.00°C ~ 80.60°F Humidity: 31.00% | Temperature: 27.00°C ~ 80.60°F Humidity: 31.00% | Temperature: 27.00°C ~ 80.60°F Humidity: 31.00% | Temperature: 28.00°C ~ 82.40°F Humidity: 31.00% | Temperature: 28.00°C ~ 82.40°F Humidity: 31.00% | Temperature: 28.00°C ~ 82.40°F Humidity: 31.00% | Temperature: 28.00°C ~ 82.40°F Humidity: 32.00% | Temperature: 28.00°C ~ 82.40°F Humidity: 31.00% | Temperature: 29.00°C ~ 84.20°F Humidity: 32.00% | Temperature: 29.00°C ~ 84.20°F Humidity: 31.00% | Temperature: 29.00°C ~ 84.20°F
Autoscroll Show timestamp
Clear output
9600 baud  
Newline  

Vidéo

Connaissances supplémentaires

Comparons les capteurs DHT11 et DHT22.

Les points communs entre DHT11 et DHT22

  • Les brochages restent les mêmes.
  • Le câblage pour un Arduino Nano est identique.
  • La programmation, avec l'aide d'une bibliothèque, est comparable, avec seulement une ligne de code distincte.

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

Il est évident que le DHT22 est plus précis que le DHT11, a une gamme plus large, mais est plus coûteux.

※ 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!