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()
Callback-Funktionen¶
Callback-Funktion registrieren
humidityBricklet.register_callback(humidityBricklet.CALLBACK_HUMIDITY, humidityCallback)
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 Falseoption
: "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: 0max
: 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("")