Arduino und DHT22 Temperatur- und Feuchtigkeitssensorunterstützung
Das Modul DHT22 dient zur Messung von Lufttemperatur und Luftfeuchtigkeit. Das vorgestellte Beispiel zeigt, wie man seine Fähigkeiten über Arduino nutzt.
Das Beispiel verwendet die folgenden Elemente:
DHT22 mit Arduino verbinden:
Um die Temperatur- und Feuchtigkeitswerte aus dem Sensor auszulesen, verbinden Sie das System wie folgt mit dem Arduino:
| Stift DHT22 | Arduino-Stift |
|---|---|
| VCC | 5 V |
| DATUM | 2 |
| Masse | Masse |
Beim Sensor nur ohne Modul muss die Datenleitung zusätzlich über einen Widerstand, in diesem Fall 4,7 kΩ , auf Vcc hochgezogen werden (wie im Bild unten). |
Anschlussplan des DHT22-Sensors mit dem Arduino Uno.
Anschlussplan des DHT22-Sensors (Version mit dem Modul) mit dem Arduino Uno.
Programm für Arduino
Zunächst sollte die Bibliothek zur Arduino-Umgebung hinzugefügt werden (Sketch -> Include Library -> Add .ZIP Library ...).
Im Beispiel wurde folgender Code verwendet:
#include "dht.h"
dht DHT22;
#define DHT22PIN 2 // Arduino Pin 2 als Sensorwert zuweisen
Void-Setup ()
{
Serial.begin (115200); // Initialisierung des seriellen Monitors
Serial.println ("DHT22-Testprogramm");
Serial.println ();
}
leere Schleife ()
{
int chk = DHT22.read (DHT22PIN); // Überprüfen Sie den Zustand des Sensors und zeigen Sie dann eine Nachricht auf dem seriellen Monitor an
Serial.print ("Sensorstatus:");
Schalter (chk)
{
Fall DHTLIB_OK:
Serial.print ("OKt");
brechen;
Fall DHTLIB_ERROR_CHECKSUM:
Serial.println ("Prüfsummenfehler");
brechen;
Fall DHTLIB_ERROR_TIMEOUT:
Serial.println ("Timeout Ende - Keine Antwort");
brechen;
Ursprünglich:
Serial.println ("Unbekannter Fehler");
brechen;
}
Serial.print ("Feuchtigkeit (%):"); // den Feuchtigkeitswert anzeigen
Serial.print ((Float) DHT22.Feuchtigkeit, 2);
Serial.print ("tt");
Serial.print ("Temperatur (C):"); // Anzeige der Temperatur
Serial.println ((float) DHT22.temperature, 2);
Verzögerung (1000); // Verzögerung zwischen aufeinanderfolgenden Lesungen - 1 s
}
Das Ergebnis dieses Programms ist auf dem Bildschirm zu sehen:
Screenshot des seriellen Monitors.


