Arduino Nano - DHT22

Deze handleiding legt uit hoe u met Arduino Nano de temperatuur en vochtigheid meet met een DHT22 sensor. We leren in detail:

We adviseren:

Hardware Benodigdheden

1×Official Arduino Nano
1×Alternatief: DIYables ATMEGA328P Nano Development Board
1×USB A naar Mini-B USB-kabel
1×DHT22 Temperatuur en Vochtigheid Sensor Module
1×10 kΩ weerstand
1×Breadboard (experimenteerprint)
1×Jumperdraden
1×(Aanbevolen) Schroefklem Uitbreidingsboard voor Arduino Nano
1×(Aanbevolen) Breakout Uitbreidingsboard voor Arduino Nano
1×(Aanbevolen) Stromsplitter voor Arduino Nano

Of u kunt de volgende kits kopen:

1×DIYables Sensorkit (30 sensoren/displays)
1×DIYables Sensorkit (18 sensoren/displays)
Openbaarmaking: Sommige van de links in deze sectie zijn Amazon-affiliate links. We kunnen een commissie ontvangen voor aankopen die via deze links worden gedaan, zonder extra kosten voor u. We waarderen uw steun.

Over de DHT22 Temperatuur- en Vochtigheidssensor

Pinout van de DHT22 Temperatuur- en Vochtigheidssensor

De DHT22 sensor is op de markt verkrijgbaar in twee vormen: sensor en module.

De DHT22 sensor heeft vier pinnen:

  • GND pin: moet verbonden worden met GND (0V)
  • VCC pin: moet verbonden worden met VCC (5V)
  • DATA pin: wordt gebruikt voor communicatie tussen sensor en Arduino Nano
  • NC pin: niet gebruikt, deze pin kan genegeerd worden
DHT22 temperatuur- en vochtigheidssensor pinout

De DHT22 module heeft drie pinnen:

  • GND pin (-): moet verbonden worden met GND (0V)
  • VCC pin (+): moet verbonden worden met VCC (5V)
  • OUT pin: wordt gebruikt voor communicatie tussen sensor en Arduino Nano

※ Notiz:

De pinindeling van een module kan per fabrikant verschillen. Het is essentieel om altijd de op de module afgedrukte labels te raadplegen bij gebruik. Kijk goed!

Bedradingsschema

Arduino Nano - DHT22 Sensor Bedrading

Een weerstand tussen 5 kΩ en 10 kΩ is noodzakelijk om de datalijn hoog te houden, waardoor communicatie tussen de sensor en Arduino Nano mogelijk is.

Arduino Nano DHT22 Temperatuur- en vochtigheidssensor bedradingsschema

This image is created using Fritzing. Click to enlarge image

Arduino Nano - DHT22 Module Bedrading

De DHT22 sensormodule heeft een ingebouwde weerstand, waardoor extra bedrading of solderen niet nodig is. Dit bespaart tijd en moeite.

Arduino Nano DHT22 Temperatuur- en vochtigheidsmodule bedradingsschema

This image is created using Fritzing. Click to enlarge image

Hoe te Programmeren voor DHT22 Temperatuursensor

  • De eerste stap is het includen van de bibliotheek:
#include "DHT.h"
  • Geef de Arduino Nano-pin op die verbonden is met de DHT22 sensor.
#define DHT_PIN 3 // Arduino Nano pin verbonden met DHT22 sensor
  • Geef het type sensor aan: DHT22
#define DHT_TYPE DHT22
  • Maak een DHT-object aan.
DHT dht22(DHT_PIN, DHT_TYPE);
  • Start het sensor-setup proces:
dht22.begin();
  • Lees de vochtigheidswaarde uit.
float humi = dht22.readHumidity();
  • Lees de temperatuur in Celsius uit.
float temperature_C = dht22.readTemperature();
  • Lees de temperatuur in Fahrenheit uit.
float temperature_F = dht22.readTemperature(true);

Arduino Nano Code voor DHT22

/* * Deze Arduino Nano code is ontwikkeld door newbiely.nl * Deze Arduino Nano code wordt zonder enige beperking aan het publiek beschikbaar gesteld. * Voor volledige instructies en schema's, bezoek: * https://newbiely.nl/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"); } }

Snelle Stappen

  • Sluit een USB-kabel aan tussen de Arduino Nano en de PC.
  • Open de Arduino IDE, selecteer het juiste board en de juiste poort.
  • Klik op het Libraries-icoon in de linkerbalk van de Arduino IDE.
  • Zoek naar “DHT” en vind de DHT sensor bibliotheek van Adafruit.
  • Klik op de Installeren-knop om de bibliotheek te installeren.
Arduino Nano DHT22 sensor bibliotheek
  • U wordt gevraagd om enkele extra bibliotheek-afhankelijkheden te installeren.
  • Klik op de Installeer Alles-knop om ze allemaal te installeren.
Arduino Nano Adafruit Unified sensor bibliotheek
  • Kopieer de code voor uw sensor en open deze in de Arduino IDE.
  • Klik op de Uploaden-knop in de Arduino IDE om de code te compileren en te uploaden naar de Arduino Nano.
  • Verander de temperatuur van de omgeving rondom de sensor.
  • Controleer de resultaten in de Seriële Monitor.
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  

Video Tutorial

We overwegen het maken van videotutorials. Als u videotutorials belangrijk vindt, abonneer u dan op ons YouTube-kanaal om ons te motiveren de video's te maken.

Bekijk onze videotutorial voor een visuele begeleiding bij dit project! De video biedt extra inzichten en helpt u stap voor stap.

Extra Kennis

Laten we de DHT11 en DHT22 sensoren vergelijken.

Gemeenschappelijke eigenschappen tussen DHT11 en DHT22:

  • Pinouts blijven hetzelfde.
  • De bedrading naar een Arduino Nano is identiek.
  • Programmeren, met behulp van een bibliotheek, is vergelijkbaar, met slechts één regel code die anders is.

Verschillen tussen DHT11 en DHT22

DHT11 DHT22
Prijs ultra laag geprijsd laag geprijsd
Temperatuurbereik 0°C tot 50°C -40°C tot 80°C
Temperatuurnauwkeurigheid ± 2°C ± 0,5°C
Vochtigheidsbereik 20% tot 80% 0% tot 100%
Vochtigheidsnauwkeurigheid 5% ± 2 tot 5%
Meetfrequentie 1Hz (één keer per seconde) 0,5Hz (één keer per 2 seconden)
Afmetingen 15,5mm x 12mm x 5,5mm 15,1mm x 25mm x 7,7mm

Het is duidelijk dat de DHT22 nauwkeuriger is dan de DHT11, een groter bereik heeft, maar ook duurder is.

※ ONZE BERICHTEN

  • U bent welkom om de link naar deze tutorial te delen. Gebruik onze inhoud echter niet op andere websites. We hebben veel moeite en tijd gestoken in het maken van de inhoud, respecteer alstublieft ons werk!