Der DHT22 am D1 Mini - Temperatur und Luftfeuchtigkeit messen - Tutorial

D1 Mini Dez. 27, 2020
https://my.makesmart.net/topic/130/der-dht22-am-d1-mini-temperatur-und-luftfeuchtigkeit-messen-tutorial

Die Auswahl an Temperatursensoren für Arduino, ESP8266 und Raspberry Pi ist groß. Neben dem DS18B20 und dem BME280 kann man mit dem DHT22 eine Temperaturmessung durchführen. Zusätzlich zur Temperatur kann man mit dem DHT22 aber auch noch die Luftfeuchtigkeit bestimmen. Und genau um diese Kombination geht es in diesem Tutorial. Wir werden zusammen den DHT22 als Shield am D1 Mini zum laufen bekommen um die Temperatur sowie die Luftfeuchtigkeit auszulesen. Dieser Code dient als Basic-Code - als Ausgangsbasis für Projekte mit dem DHT22-Shield für den D1 Mini.

Solltest du nicht wissen, wie man einen ESP8266 D1 Mini programmiert, kannst du dir gerne diese Schritt-für-Schritt Tutorial anschauen, in dem alles detailliert erklärt wird.

makesmart_dht22_d1_mini_shield

Die Verdrahtung

Die Verdrahtung ist selbsterklärend. Das Shield kann einfach auf den D1 Mini gesteckt werden. Um die Verdrahtung muss man sich dabei natürlich keine Gedanken machen. Es muss lediglich darauf geachtet werden, dass das Shield richtigherum auf den D1 Mini gesteckt wird. Dazu reicht es, die Bezeichnungen der Pins auf dem Shield mit den Bezeichnungen auf dem D1 Mini zu vergleichen.

Solltet ihr kein Shield haben, sondern nur den DHT22 standalone, könnt ihr den DHT22 wie folgt mit dem D1 Mini verdrahten:

ESP8266 D1 MiniDHT22
3.3V / 5VVCC
GNDGND
D4DATA
-NC

Die Produkte die ich für dieses Tutorial hier verwende, findet ihr hier im Warenkorb im makesmart.shop.

Arduino IDE - Benötigte Libaries

Bevor wir die Temperatur und Luftfeuchtigkeit des DHT22 auslesen können, müssen erstmal die passenden Libraries installiert werden. Libraries werden immer gleich installiert. Und zwar über den Bibliotheksverwalter innerhalb der Arduino IDE.

Arduino IDE└───Werkzeuge    └───Bibliotheken verwalten...

Die passende Library findet ihr über den Suchbegriff DHT22 Sensor Library. Wie die Suche schon verrät, verwenden wir die DHT22 Sensor Library von Adafruit.

makesmart_DHT22_sensor_library_arduino_ide

Der Code

Nach allen Vorbereitungen kann endlich der passende Programmcode ausgeführt werden. Der nachfolgende Code dient als Ausgangslage für eure Projekte mit dem DHT22.

/*    DHT22 Basic Code    Temperatur und Luftfeuchtigkeit auslesen mit einem DHT22 Shield    Created by cooper, 2020    my.makesmart.net/user/cooper*/#include "DHT.h"#define sensor DHT22int dataPin = 2; // PIN D4 = GPIO 2               // DHT22 initialisierenDHT dht(dataPin, sensor);                // Temperaturfloat temperature;// Luftfeuchtigkeitfloat humidity;//Gefühlte Temperaturfloat heatindex; void setup() {  Serial.begin(115200);  delay(100);    pinMode(dataPin, INPUT);  dht.begin();              }void loop() {    temperature = dht.readTemperature(); // Die Temperatur des Sensors  humidity = dht.readHumidity(); // Die Luftfeuchtigkeit des Sensors    // Gefühlte Temperatur wird errechnet aus temperature und humidity  heatindex = dht.computeHeatIndex(temperature, humidity, false);  Serial.println("##############################");  Serial.println("Temperatur: " + String(temperature) + " °C");  Serial.println("Feuchtigkeit: " + String(humidity) + " %");  Serial.println("Gefühlte Temperatur: " + String(heatindex) + " °C");    delay(3500);  }

Es sind drei Variablen verfügbar.

temperature enthält die aktuelle Temperatur als float.

humidity enthält die aktuelle Luftfeuchtigkeit als float.

heatindex enthält die aktuell gefühlte Temperatur als float.

Die Ausgabe im seriellen Monitor sieht wie folgt aus:

##############################Temperatur: 26.10 °CFeuchtigkeit: 32.10 %Gefühlte Temperatur: 25.60 °C

Abschluss

Mit diesem minimal Basic-Code könnt ihr jedes Projekt mit einem DHT22 realisieren. 🍾

Ich für meinen Teil möchte mir jetzt dann einen realtime Temperaturlogger programmieren. Da ist die Temperatur bei gewissen Aktionen festhalten und aufzeichnen möchte. Der D1 Mini dient in dem Fall nur als Messstation, welche die Daten an einen zentralen Server sendet.


Viel Spaß mit euren Projekten! 🙂

Community

Die makesmart Community ist der Ort, an dem du deine Ideen mitteilen und deine Erfahrungen austauschen kannst.

Großartig! Das Abonnement wurde erfolgreich abgeschlossen.
Großartig! Schließe als Nächstes die Kaufabwicklung ab, um vollen Zugriff zu erhalten.
Willkommen zurück! Du hast dich erfolgreich angemeldet.
Erfolg! Dein Konto ist vollständig aktiviert, du hast jetzt Zugang zu allen Inhalten.