Hallo Zusammen,
ich wollte dieses Jahr mein Chilli-Gewächshäuschen mittels FHEM steuern. Dazu habe ich einen ESP8266, der die Klimadaten (Boden- und Lufttemperatur, Luftfeuchtigkeit) mittels MQTT an FHEM übermittelt:
define ChilliKlima MQTT_DEVICE
attr stateFormat Luft Temperatur °C, Luftfeuchtigkeit %rH; Boden Bodentemperatur °C
attr subscribeReading_Bodentemperatur chilli/soiltemperature
attr subscribeReading_Luftfeuchtigkeit chilli/humidity
attr subscribeReading_Temperatur chilli/temperature
Das funktionert ohne Probleme. Der ESP übermittelt die Werte alle 10 Minuten, oder wenn sich die Temperatur um mehr als 0.2°C/die Feuchtigkeit um mehr als 1% geändert hat.
Als Aktoren habe ich (momentan noch, soll duch ESP mit TRIAC/Relais via MQTT ersetzt werden) EdiPlugs, zum Beispiel:
define ChillyHeizmatte EDIPLUG 10.120.120.202
atter model SP2101W
Nun versuche ich, die Bodentemperatur auf einen Wert zu regeln, ich verwende dazu THRESHOLD:
define ChilliBodenRegler ChilliKlima:Bodentemperatur:0.5:24 ChilliHeizmatte
Das funktionert auch eine Weile sehr gut. Nur zwischendurch scheint es so, wie wenn der EdiPlug das Kommando nicht erhält oder nicht ausführt, und dann steigt/fällt die Temperatur munter weiter. Ich habe bei Threshold keine Möglichkeit gefunden anhand des Status des EdiPlugs (ChilliHeizmatte:onoff) das Komando zu wiederholen, bis der gewünschte Zielzustand zurückgmelden wurde.
Weiss jemand Rat?
Danke und Gruss, Edi
P.S.: Meine 2. Idee war, das mit einem DOIF zu tun, so im Stile define ChilliBodenRegler DOIF ([ChilliKlima:Bodentemperatur] < 23.5] AND [ChilliHeizmatte:onoff] eq "off") (set ChilliHeizmatte on)
, da man ja beim DOIF das attribut do
auf always
setzen kann. Allerdings funktioniert nicht mal DOIF ([ChilliKlima:Bodentemperatur] < 23.5]) (set ChilliHeizmatte on)
Hängt das mit dem MQTT_DEVICE zusammen?