Arduino - DHT22

In diesem Tutorial lernen wir:

Erforderliche Hardware

1×Arduino Uno R3
1×USB 2.0 Kabel Typ A/B (für USB-A PC)
1×USB 2.0 Kabel Typ C/B (für USB-C PC)
1×DHT22 Temperatur-Feuchtigkeitssensor-Modul
1×10 kΩ Resistor
1×Breadboard
1×Verbindungskabel
1×(Empfohlen) Schraubklemmenblock-Shield für Arduino Uno
1×(Empfohlen) Breadboard-Shield für Arduino Uno
1×(Empfohlen) Gehäuse für Arduino Uno
1×(Empfohlen) Prototyping-Grundplatte & Breadboard-Kit für Arduino Uno

Oder Sie können die folgenden Kits kaufen:

1×DIYables STEM V3 Starter-Kit (Arduino enthalten)
1×DIYables Sensor-Kit (30 Sensoren/Displays)
1×DIYables Sensor-Kit (18 Sensoren/Displays)
Offenlegung: Einige der in diesem Abschnitt bereitgestellten Links sind Amazon-Affiliate-Links. Wir können eine Provision für Käufe erhalten, die über diese Links getätigt werden, ohne zusätzliche Kosten für Sie. Wir schätzen Ihre Unterstützung.

Über den DHT22-Temperatur- und Feuchtigkeitssensor

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

Pinbelegung

DHT22 hat zwei Formen: Sensor und Modul.

DHT22 Temperatur- und Feuchtigkeitssensor Pinbelegung

DHT22-Sensor hat vier Pins:

  • GND-Pin: muss mit GND (0V) verbunden werden
  • VCC-Pin: muss mit VCC (5V oder 3.3V) verbunden werden
  • DATA-Pin: Der Pin wird verwendet, um zwischen dem Sensor und dem Arduino zu kommunizieren
  • NC-Pin: Nicht verbunden, diesen Pin können wir ignorieren

DHT22-Modul hat drei Anschlüsse:

  • GND-Pin: muss mit GND (0 V) verbunden werden
  • VCC-Pin: muss mit VCC (5 V, oder 3,3 V) verbunden werden
  • DATA-Pin: der Pin wird verwendet, um zwischen dem Sensor und dem Arduino zu kommunizieren

Einige Hersteller bieten den DHT22-Sensor in Modulform mit drei Pins an: GND, VCC und DATA-Pins (oder alternativ: -, + und OUT-Pins).

Verdrahtungsdiagramm

In dieser Sensorform ist ein Widerstand von 5 kΩ bis 10 kΩ erforderlich, um die Datenleitung auf High zu halten und die Kommunikation zwischen dem DHT22-Sensor und dem Arduino zu ermöglichen.

Arduino - DHT22-Sensorverkabelung

Arduino DHT22 Temperatur- und Feuchtigkeitssensor Verdrahtungsdiagramm

Dieses Bild wurde mit Fritzing erstellt. Klicken Sie, um das Bild zu vergrößern.

Arduino - DHT22-Modulverkabelung

Die meisten DHT22-Sensor-Module verfügen über einen integrierten Widerstand, sodass Sie ihn nicht hinzufügen müssen. Das erspart uns einige Verdrahtungs- oder Lötarbeiten.

Arduino DHT22 Temperatur- und Luftfeuchtigkeitsmodul Verdrahtungsdiagramm

Dieses Bild wurde mit Fritzing erstellt. Klicken Sie, um das Bild zu vergrößern.

Wie man den DHT22-Temperatursensor programmiert

Die Programmierung für beide Sensoren ist ähnlich. Es gibt nur eine Codezeile, die anders ist.

  • Die Bibliothek einbinden:
#include "DHT.h"
  • Definieren Sie den Arduino-Pin, der mit dem DHT-Sensor verbunden ist:
#define DHT22_PIN 2
  • Deklariere ein DHT22-Objekt
DHT dht22(DHT22_PIN, DHT22);
  • Sensor initialisieren:
dht22.begin();
  • Luftfeuchtigkeit auslesen:
float humi = dht22.readHumidity();
  • Temperatur in Celsius lesen:
float tempC = dht22.readTemperature();
  • Temperatur in Fahrenheit lesen:
float tempF = dht22.readTemperature(true);

Arduino-Code - DHT22

/* * Dieser Arduino Code wurde von newbiely.de entwickelt * Dieser Arduino Code wird der Öffentlichkeit ohne jegliche Einschränkung zur Verfügung gestellt. * Für vollständige Anleitungen und Schaltpläne besuchen Sie bitte: * https://newbiely.de/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"); } }

Schnelle Schritte

  • Verbinde Arduino über ein USB-Kabel mit dem PC
  • Öffne die Arduino-IDE, wähle das richtige Board und den richtigen Port
  • Gehe zum Bibliotheken-Symbol in der linken Seitenleiste der Arduino-IDE.
  • Suche nach „DHT“, und finde dann die DHT-Sensorbibliothek von Adafruit
  • Klicke auf die Schaltfläche Installieren, um die Bibliothek zu installieren.
Arduino DHT-Sensor-Bibliothek
  • Sie werden aufgefordert, weitere Bibliotheksabhängigkeiten zu installieren
  • Klicken Sie auf die Schaltfläche Alle installieren, um alle Bibliotheksabhängigkeiten zu installieren.
Arduino Adafruit einheitliche Sensor-Bibliothek
  • Kopiere den oben gezeigten Code, der zu dem von dir verwendeten Sensor gehört, und öffne ihn mit der Arduino IDE.
  • Klicke auf die Schaltfläche Hochladen in der Arduino IDE, um den Code auf den Arduino hochzuladen.
  • Stell die Umgebung rund um den Sensor wärmer oder kälter ein.
  • Sieh dir das Ergebnis im Serial Monitor an.
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  

Video Tutorial

Wir erwägen die Erstellung von Video-Tutorials. Wenn Sie Video-Tutorials für wichtig halten, abonnieren Sie bitte unseren YouTube-Kanal , um uns zu motivieren, die Videos zu erstellen.

※ UNSERE NACHRICHTEN

  • Sie können gerne den Link zu diesem Tutorial teilen. Bitte verwenden Sie jedoch unsere Inhalte nicht auf anderen Websites. Wir haben viel Mühe und Zeit in die Erstellung der Inhalte investiert, bitte respektieren Sie unsere Arbeit!