KY-015 Kombi-Sensor (Temperatur & Feuchtigkeit)
Dieser Sensor ist ein Mischung aus Temperatursensor und Luftfeuchtigkeitssensor in einer kompakten Bauform.
- Arduino
- Raspberry Pi
- Micro:Bit

Dieser Sensor ist ein Kombination aus Temperatursensor und Luftfeuchtigkeitssensor, vereint in einer kompakten Bauform. Der Nachteil hierbei ist jedoch die geringe Abtastrate der Messung, so dass nur alle 2 Sekunden ein neues Messergebnis zur Verfügung steht. Dieser Sensor ist somit vorallem für Langzeit-Messungen geeignet.
Technische Daten
Chipsatz | DHT11 |
Kommunikationsprotokoll | 1-Wire |
Messbereich | 0°C bis 50°C |
Messgenauigkeit | ±2°C |
Messgenauigkeit | ±5%RH |
Messbare Luftfeuchtigkeit | 20-90%RH |
Pin-Belegung
Codebeispiel Arduino
Anschlussbelegung Arduino
Arduino | Sensor |
---|---|
Pin 2 | Signal |
5 V | +V |
GND | GND |
Für das folgende Codebeispiel wird eine zusätzliche Bibliothek benötigt:
DHT-sensor-library von Adafruit | veröffentlicht unter der MIT License
Dieser Sensor gibt sein Messergebnis nicht als analoges Signal auf einen Ausgangspin aus, sondern kommuniziert diesen digital kodiert.
Das unten stehende Beispiel verwendet die erwähnte Bibliothek. Laden Sie sich daher die Bibliothek herunter und entpacken Sie diese in Ihren Arduino-Library-Ordner, welcher sich standardmäßig unter (C:\Benutzer[Benutzername]\Dokumente\Arduino\libraries) befindet. Alternativ ist diese auch im untenstehenden Download Paket enthalten.
// Adafruit_DHT Library wird eingefügt
#include "DHT.h"
// Hier kann der jeweilige EingangsPin deklariert werden
#define DHTPIN 2
// Der Sensor wird initialisiert
#define DHTTYPE DHT11 // DHT 11
DHT dht(DHTPIN, DHTTYPE);
void setup()
{
Serial.begin(9600);
Serial.println("KY-015 Test - Temperatur und Luftfeuchtigkeits-Test:");
// Messung wird gestartet
dht.begin();
}
// Hauptprogrammschleife
// Das Programm startet die Messung und liest die gemessenen Werte aus
// Zwischen den Messungen wird eine Pause von 2 Sekunden eingelegt,
// damit beim nächsten Druchlauf eine neue Messung erfasst werden kann.
void loop() {
// Zwei Sekunden Pause zwischen den Messungen
delay(2000);
// Luftfeuchtigkeit wird gemessen
float h = dht.readHumidity();
// Temperatur wird gemessen
float t = dht.readTemperature();
// Hier wird überprüft, ob die Messungen fehlerfrei druchgelaufen sind
// Bei Detektion eines Fehlers, wird hier eine Fehelrmeldung ausgegeben
if (isnan(h) || isnan(t)) {
Serial.println("Fehler beim Auslesen des Sensors");
return;
}
// Ausgabe in die serrielle Konsole
Serial.println("-----------------------------------------------------------");
Serial.print("Luftfeuchtigkeit: ");
Serial.print(h);
Serial.print(" %\t");
Serial.print("Temperatur: ");
Serial.print(t);
Serial.print(char(186)); //Ausgabe <°> Symbol
Serial.println("C ");
Serial.println("-----------------------------------------------------------");
Serial.println(" ");
}
Bitte beachten Sie, dass der Sensor nur etwa alle 2 Sekunden ein neues Messergebnis zur Verfügung stellt.
Beispielprogramm Download

Dieser Sensor ist ein Kombination aus Temperatursensor und Luftfeuchtigkeitssensor, vereint in einer kompakten Bauform. Der Nachteil hierbei ist jedoch die geringe Abtastrate der Messung, so dass nur alle 2 Sekunden ein neues Messergebnis zur Verfügung steht. Dieser Sensor ist somit vorallem für Langzeit-Messungen geeignet.
Technische Daten
Chipsatz | DHT11 |
Kommunikationsprotokoll | 1-Wire |
Messbereich | 0°C bis 50°C |
Messgenauigkeit | ±2°C |
Messgenauigkeit | ±5%RH |
Messbare Luftfeuchtigkeit | 20-90%RH |
Pin-Belegung
Codebeispiel Raspberry Pi
Anschlussbelegung Raspberry Pi
Raspberry Pi | Sensor |
---|---|
GPIO 23 [Pin 16] | Signal |
+3,3V [Pin 1] | +V |
GND [Pin 6] | GND |
Das Programm nutzt zur Ansteuerung des DHT11-Sensors die entsprechende Adafruit_CircuitPython_DHT Library der Firma Adafruit. Diese wurde mit der MIT OpenSource-Lizenz veröffentlicht.
Diese muss zuvor installiert werden. Aktualisieren Sie daher zunächst Ihre Paketliste und installieren Sie die erforderlichen Abhängigkeiten mit den folgenden Befehlen:
sudo apt-get update
sudo apt-get install build-essential python-dev
sudo apt install gpiod
sudo pip3 install adafruit-circuitpython-dht
Nun kann das folgende Python Beispiel verwendet werden. Das Programm startet die Messung am Sensor und gibt die gemessenen Werte für den Luftdruck und die Temperatur (in °C und °F) aus.
import time
import board
import adafruit_dht
# Initialisieren Sie das dht-Gerät, wobei der Datenpin mit Pin 16 (GPIO 23) des Raspberry Pi verbunden ist:
dhtDevice = adafruit_dht.DHT11(board.D23)
# Sie können DHT22 use_pulseio=False übergeben, wenn Sie pulseio nicht verwenden möchten.
# Dies kann auf einem Linux-Einplatinencomputer wie dem Raspberry Pi notwendig sein,
# aber es wird nicht in CircuitPython funktionieren.
# dhtDevice = adafruit_dht.DHT22(board.D18, use_pulseio=False)
while True:
try:
# Drucken der Werte über die serielle Schnittstelle
temperature_c = dhtDevice.temperature
temperature_f = temperature_c * (9 / 5) + 32
humidity = dhtDevice.humidity
print("Temp: {:.1f} F / {:.1f} C Humidity: {}% ".format(temperature_f, temperature_c, humidity))
except RuntimeError as error:
# Fehler passieren ziemlich oft, DHT's sind schwer zu lesen, einfach weitermachen
print(error.args[0])
time.sleep(2.0)
continue
except Exception as error:
dhtDevice.exit()
raise error
time.sleep(2.0)
Bitte beachten Sie, dass der Sensor nur etwa alle 2 Sekunden ein neues Messergebnis zur Verfügung stellt.
Beispielprogramm Download
Zu starten mit dem Befehl:
sudo python3 KY015-RPi.py

Dieser Sensor ist ein Kombination aus Temperatursensor und Luftfeuchtigkeitssensor, vereint in einer kompakten Bauform. Der Nachteil hierbei ist jedoch die geringe Abtastrate der Messung, so dass nur alle 2 Sekunden ein neues Messergebnis zur Verfügung steht. Dieser Sensor ist somit vorallem für Langzeit-Messungen geeignet.
Technische Daten
Chipsatz | DHT11 |
Kommunikationsprotokoll | 1-Wire |
Messbereich | 0°C bis 50°C |
Messgenauigkeit | ±2°C |
Messgenauigkeit | ±5%RH |
Messbare Luftfeuchtigkeit | 20-90%RH |
Pin-Belegung
Codebeispiel Micro:Bit
Anschlussbelegung Micro:Bit:
Micro:Bit | Sensor |
---|---|
Pin 1 | Signal |
3V | +V |
GND | GND |
Für das folgende Codebeispiel wird eine zusätzliche Library benötigt:
pxt-DHT11_DHT22 von alankrantas | veröffentlicht unter der MIT License
Diese Library müssen Sie vor der Benutzung des Codes zu Ihrer IDE hinzufügen. Fügen Sie die Library zu Ihrer IDE hinzu, indem Sie auf "Erweiterungen" klicken und die folgende URL in das Suchfeld eingeben: https://github.com/alankrantas/pxt-DHT11_DHT22.git. Bestätigen Sie die Suche mit [Enter].
