Zum Inhalt

Humidity Bricklet

Humidity Bricklet

Humidity Bricklet

Misst relative Luftfeuchtigkeit mit einer Genauigkeit von 0.01 %.

Initialisierung

Code um das Bricklet anzusteuern

#!/usr/bin/env python
# -*- coding: utf-8 -*-

# Adressierung
# Diese beiden Zeilen nur 1x pro Programm nutzen:
HOST = "localhost"
PORT = 4223

# UID des Bricklets
humidityBrickletUID = "LkJ" # UID aus dem Brick Viewer

# Import der wichtigen Funktionen
from tinkerforge.ip_connection import IPConnection
from tinkerforge.bricklet_humidity_v2 import BrickletHumidityV2

# Verbindung herstellen
ipcon = IPConnection() # Create IP connection
humidityBricklet = BrickletHumidityV2(humidityBrickletUID, ipcon) # Create device object
ipcon.connect(HOST, PORT) # Connect to brickd

Funktionen im Hauptprogramm

Funktionen des Humidity-Bricklet

humidity = humidityBricklet.get_humidity()
gibt die aktuelle Luftfeuchtigkeit in der Einheit 1/100 % zurück. Ein Wert von 2210 entspricht also 22.10 %.

Callback-Funktionen

Callback-Funktion registrieren

humidityBricklet.register_callback(humidityBricklet.CALLBACK_HUMIDITY, humidityCallback)
wobei humidityCallback der Name der gewünschten Funktion ist, welche aufgerufen werden soll. humidityCallback sollte dann so definiert werden: def humidityCallback(humidity): da der jeweilige Feuchtigkeitswert übergeben wird.

Callback-Funktion konfigurieren

humidityBricklet.set_humidity_callback_configuration(period, value_has_to_change, option, min, max)
  • period: Wert in ms in der die Luftfeuchtigkeit überprüft werden soll. Standardwert 0.
  • value_has_to_change: True oder False. Falls True, dann wird die Callbackfunktion nur aufgerufen, wenn sie die Luftfeuchtigkeit geändert hat. Standardwert False
  • option: "x", "o", "i", "<" oder ">". Standardwert: "x"
    • "x" Threshold ist abgeschaltet
    • "o" Threshold wird ausgelöst, wenn der Wert außerhalb der Min und Max Werte sind
    • "i" Threshold wird ausgelöst, wenn der Wert innerhalb der Min und Max Werte sind
    • "<" Threshold wird ausgelöst, wenn der Wert kleiner ist wie der Min Wert (Max wird ignoriert)
    • ">" Threshold wird ausgelöst, wenn der Wert größer ist wie der Max Wert (Min wird ignoriert)
  • min: Luftfeuchtigkeit in 1/100 %. Standardwert: 0
  • max: Luftfeuchtigkeit in 1/100 %. Standardwert: 0

Anbei ein paar Beispiele für mögliche Konfigurationen:

  • humidityBricklet.set_humidity_callback_configuration(1000, False, "x", 0, 0) ruft die Callback-Funktion jede Sekunde auf.
  • humidityBricklet.set_humidity_callback_configuration(1000, True, "x", 0, 0) ruft die Callback-Funktion jede Sekunde auf. Aber nur wenn sich die Luftfeuchtigkeit zwischenzeitlich geändert hat.
  • humidityBricklet.set_humidity_callback_configuration(10000, False, ">", 0, 2600) überprüft die Luftfeuchtigkeit alle 10 Sekunden und ruft die Callback-Funktion auf, falls die Luftfeuchtigkeit von 26% überschritten wird.
  • humidityBricklet.set_humidity_callback_configuration(10000, False, "o", 30*100, 60*100) überprüft die Luftfeuchtigkeit alle 10 Sekunden und ruft die Callback-Funktion auf, falls die Luftfeuchtigkeit den Bereich von 30 % - 60 % verlässt.

Beispiel für humidityCallback

def humidityCallback(pressed):
    print("Luftfeuchtigkeit: " + str(humitiy/100) + "%")
    print("")