Verwendung eines DHT11 / DHT22-Sensors unter io...

Verwendung eines DHT11 / DHT22-Sensors unter ioBroker

Verwendung eines DHT11 / DHT22-Sensors unter ioBroker

Der DHT11 bzw. DHT22 (gelegentlich auch als AM2302 bezeichnet) ist ein kombinierter Sensor zur Messung von Umgebungstemperatur und Luftfeuchtigkeit. Durch seinen geringen Preis eignet er sich prima, um eine kleine Wetterstation zu realisieren.

Der Sensor befindet sich in einem kleinen Plastikgehäuse. An der Unterseite befinden sich vier Anschlüsse, von denen aber nur drei genutzt werden:

 

DHT22

            VCC  Data  x   GND

 

VCC = Versorgungsspannung 3,3 - 6V

Data = Datenleitung

x = nicht belegt

GND = Masse

 

Um den Sensor nutzen zu können, muss er dem System bekannt gemacht werden. Das geschieht in der Datei /boot/config.txt. Dort wird folgende Zeile eingefügt:

 

DHT22-config_txt-iobroker

 

Danach bitte den Raspberry Pi mit sudo reboot neustarten, um den Treiber zu aktivieren

Nun zum Anschluss des Sensors:.

Als GPIO-Pin nutzen wir den Pin 24, was auf der RasPiLC-Platine dem Pin 9 des Modulports entspricht. Dieser ist im Normalfall nicht belegt (auch nicht, wenn ein Modul gesteckt ist) und kann frei genutzt werden.

Angeschlossen werden Pin 1 des Sensors an Pin 1 des Modulports (Betriebsspannung von 5V), Pin 2 des Sensors wird mit Pin 9 des Modulports verbunden (Datenleitung) und Pin 4 des Sensors an Pin 3 des Modulports (Masse).

Das Ganze kann dann so wie im folgenden Bild aussehen (Testaufbau):

DHT22-RasPiLC-Modulport

 

Nun muss der Sensor nur noch in ioBroker ausgelesen werden. Dazu nutzen wir den parser-Adapter und legen wie folgt eine neue Zeile an:

 

DHT22-iobroker_parser

 

Da der Sensor immer zwei Werte liefert,müssen auch zwei Datenpunkte angelegt werden, nämlich für Temperatur und für Luftfeuchtigkeit.

Zu beachten ist, dass der Sensor nur höchstens alle zwei Sekunden einen Wert liefern kann, was aber für normale Zwecke völlig ausreicht. In unserem Fall holen wir nur alle 60 Sekunden einen neuen Wert (Intervall = 60000ms).

Nachdem die Einträge angelegt und gespeichert sind, sollten im Reiter "Objects" die beiden neuen Datenpunkte zu finden sein. Falls nicht, hilft ein Aktualisieren oben rechts.

 

DHT22-iobroker-objects

 

Nun ist die Einrichtung schon fertig und die Werte können weiterverarbeitet werden (Anzeige in Visualisierung, in Scripten etc.)

 

ACHTUNG! Durch die neue Installationsroutine von ioBroker wird dieser nun unter einem eigenen Benutzer ausgeführt und nicht mehr als "root". Daher kann es sein, dass der Zugriff auf die Systemdateien verweigert wird, was sich in einer Meldung wie "Datei nicht gefunden" auswirkt. Um dies zu beheben, muss als mit einem Editor (z.B. nano) in der Datei "/lib/systemd/system/iobroker.service" der Eintrag "User=iobroker" in "User=root" geändert werden.

So sollte die geänderte Datei dann aussehen:

iobroker_root_neu2