Labortagebuch - Arduino - Raspberry Pi
17.11.2019 - Der Feuchtigkeits- und Temperatursensor DHT11

Der Feuchtigkeitssensor DHT11


Verkabelung des Sensors mit dem Arduino
Die Sensoren  DHT11 und DHT22  bieten die Möglichkeit mit dem Arduino die Luftfeuchtigkeit und Temperatur zu messen. Die Messwerte können dann über den seriellen Monitor oder einem LCD angezeigt werden. Der DHT11 Sensor misst im Luftfeuchtigkeitsbereich von ca. 20-80% (5% Genauigkeit) und im Temperaturbereich von ca. 0-50°C (2°C Genauigkeit).
Auch mit dem DHT22 kann die Luftfeuchtigkeit und Temperatur gemessen werden. Dieser Sensor ist etwas genauer und hat größere Messbereiche. Bei der Luftfeuchtigkeit misst der Sensor im Bereich von 0-100% (2-5% Genauigkeit) und bei der Temperatur im Bereich von -40 bis 125°C (0,5°C Genauigkeit). Dazu muss im Programm-Code folgendes geändert werden:

#define DHTTYPE DHT11 -> #define DHTTYPE DHT22
Der Programm-Code

#include "DHT.h" //DHT Bibliothek laden
#define DHTPIN 2 //Der Sensor wird an PIN 2 angeschlossen
  #define DHTTYPE DHT11
// Es handelt sich um den DHT11 Sensor
DHT dht(DHTPIN, DHTTYPE);
// Der Sensor wird ab jetzt mit „dth“ angesprochen

void setup() {  
Serial.begin(9600); //Serielle Verbindung starten  
dht.begin(); //DHT11 Sensor starten
}

void loop() {    delay(2000);
//Zwei Sekunden Vorlaufzeit bis zur Messung (der Sensor ist etwas träge)  
  float Luftfeuchtigkeit = dht.readHumidity();
//die Luftfeuchtigkeit auslesen und unter „Luftfeuchtigkeit“ speichern
    float Temperatur = dht.readTemperature();
//die Temperatur auslesen und unter „Temperatur“ speichern    
Serial.print("Luftfeuchtigkeit: ");
//Im seriellen Monitor den Text und  
Serial.print(Luftfeuchtigkeit);
//die dazugehörigen Werte anzeigen  
Serial.println(" %");  Serial.print("Temperatur: ");
Serial.print(Temperatur); Serial.println(" Grad Celsius"); }


Ausgabe des seriellen Monitors
INFO

Für die Programmierung benötigt man eine Arduino-Library. Diese kann von folgenden Seiten heruntergeladen werden:

Github

Arduino-Seite