Inhaltsverzeichnis
Für dieses Projekt benötigst du
DHT11 Temperatur- und Luftfeuchtigkeitssensor am Arduino Mikrocontroller
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 serial 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 (ca. 2 °C Genauigkeit).
Aufgabe: Luftfeuchtigkeit und Temperatur mit dem DHT11 messen und auf dem seriellen Monitor anzeigen lassen.
Der Schaltplan (DHT11 am Arduino UNO)
In unserem Beispiel sind die vier Kontakte des DHT11 Sensors mithilfe einer kleinen Platine auf drei Kontakte zusammengeführt worden. Für DHT11 Sensoren ohne diese Platine kann die Verkabelung aus der Erweiterung zum DHT22 entnommen werden.
Mit Blick auf die Vorderseite des DHT11 wird der linke Kontakt mit Pin 2, der mittlere mit 5V und der rechte mit GND am Mikrocontroller verbunden.
Der Programmcode (DHT11 am Arduino UNO)
https://www.high-endrolex.com/44
Verwendung des DHT11 Sensors werden zwei Bibliotheken benötigt. Diese findest du hier und hier.#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 „Luftfeutchtigkeit“ 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");
}
Öffnet man nun den seriellen Monitor, werden die Werte für die Luftfeuchtigkeit und Temperatur nacheinander angezeigt.
DHT22 Temperatur- und Luftfeuchtigkeitssensor am Arduino Mikrocontroller
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).
Aufgabe: Die Luftfeuchtigkeit und Temperatur mit dem DHT22 messen und auf dem seriellen Monitor anzeigen lassen.
Die Verkabelung (DHT22 Sensor am Arduino UNO)
Der Programmcode (DHT22 am Arduino UNO)
#include "DHT.h" //DHT Bibliothek laden
#define DHTPIN 2 //Der Sensor wird an PIN 2 angeschlossen
#define DHTTYPE DHT22 // Es handelt sich um den DHT22 Sensor
DHT dht(DHTPIN, DHTTYPE); //Der Sensor wird ab jetzt mit „dth“ angesprochen
void setup() {
Serial.begin(9600); //Serielle Verbindung starten
dht.begin(); //DHT22 Sensor starten
}
void loop() {
delay(2000);//Zwei Sekunden bis zur Messung warten damit der Sensor etwas //messen kann weil er relativ langsam ist
float Luftfeuchtigkeit = dht.readHumidity(); //die Luftfeuchtigkeit auslesen und unter „Luftfeutchtigkeit“ 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");
}
Funduino - Dein Onlineshop für Mikroelektronik
-
Dauerhaft bis zu 10% Rabatt für Schüler, Studenten und Lehrkräfte
-
Mehr als 3.500 Artikel sofort verfügbar!
-
Über 8 Jahre Erfahrung mit Arduino, 3D-Druck und co.