Last Updated on 28. Oktober 2023 by sfambach
Der DHT kann die Luftfeuchtigkeit mit einer Genauigkeit von 5% und die Temperatur mit einer Genauigkeit von +/-2°C messen.
ANMERKUNG: Es gibt eine genauere Version den DHT22.
Ansicht
Fakten
Wertebereich
Beschreibung | Wert |
---|---|
Luftfeuchte [%RH] | 20 – 80 |
Temperatur [°C] | 0 – 50 |
Spannung [V] | 3,3 – 6 |
Pinning
Programmierung
Bibliothek
Adafruit bietet hierzu eine Bibliothek.
https://github.com/adafruit/DHT-sensor-library
Die Bib. muss zuvor über den Bibliothekar der Arduino GUI installiert werden. Zusätzlich wird der Generelle Treiber für Sensoren von Adafruit benötigt.
https://github.com/adafruit/Adafruit_Sensor
Die Einbindung von Bibliotheken im generellen ist unter folgenden Link beschrieben, hier werde ich nicht mehr näher darauf eingehen.
https://fambach.net/arduino-ide#Bibliotheken
Programmierung
Bibliothek mit DHT.h einbinden. Im Konstruktor muss der Sensortyp (DHT11) und der verwendete Daten Pin angegeben werden:
#define DHTPIN 2
#define DHTTYPE DHT11
DHT dht(DHTPIN, DHTTYPE); // Konstruktor
Die Abfrage geschieht mit:
// lesen der Temperatur in °C
readTemperature(false);
// Lesen der feuchtigkeit in %
readHumidity();
Verwandte Beiträge
Probleme
fatal error: DHT.h
Code compiliert nicht. Evtl. wurden die DHT Bibliotheken nicht installiert.
Installiere die DHT lib von Adafruit:
fatal error: Adafruit_Sensor.h
Installiere die Standardlib von Adafruit:
Sonstiges
Ungenau
Bei mir zeigen die DHT11 immer zu viel an, meist sind es über 5°C. Ich bin mir unsicher ob ich nur schlechte Qualität eingekauft habe oder ob der Senosor wirklich so schlecht geeicht ist. Schreibt mal wenn ihr ähnliche Erfahrungen gemacht habt oder noch besser wenn ihr eine Lösung für das Kernproblem habt. Klar ist es möglich den Ausgabe Bereich zu mappen, Ich bin mir aber unsicher ob ein lineares Mapping ausreicht.
Quellen
https://www.adafruit.com/product/386
https://learn.adafruit.com/dht
https://funduino.de/anleitung-dht11-dht22