Wasserpumpe nur bei höheren Temperaturen täglich einschalten

Begonnen von Digimatik, 31 März 2013, 18:59:32

Vorheriges Thema - Nächstes Thema

Digimatik

ich bin mir nicht sicher, ob mein Code so funktioniert:

fhem.cfg:
define LocalWeather Weather 695336 3600 de
attr LocalWeather localicons 1



Garten.cfg:
#########################################################################
##  Wasserpumpe anschalten jeden Tag um 10:00
##  bei positiven Tiefstemperaturen
#########################################################################

define Garten_Wasserpumpe_an at *10:00 { if (ReadingsVal("LocalWeather","fc1_low_c","999") >= 5) {fhem("set gd_Pumpe on") } }
attr Garten_Wasserpumpe_an room Garten



mit dem Befehl
get LocalWeather fc1_low_c

bekomme ich
LocalWeather fc1_low_c => -4

trotzdem erscheint in "everything"
Garten_Wasserpumpe_an Next: 10:00:00

obwohl die Temperatur kleiner als 5 Grad ist.
liegt hier ein Fehler meinerseits vor, oder muss ich 1 Stunde abwarten, bis die Yahoo Werte neu eingelesen wurden?

Markus

so wie ich das sehe schaltet die pumpe um 10:00 Uhr ein aber nur dann wenn die Temperatur > 5 grad ist

was willst du den wirklich Erreichen?
Raspberry Pi2 als FHEM-Plattform
HM, FS20, 1-Wire, PanStamp,LW12,Intertechno,ESPEasy,Alexa

Digimatik

genau das. Es handelt sich um eine Umwälzpumpe für einen kleinen Gartenteich.
Ich schalte die Pumpe unconditional jeden Tag um 22:00 ab, egal ob sie eingeschaltet war. oder nicht

#########################################################################
##  Wasserpumpe anschalten jeden Tag um 10:00
##  bei positiven Temperaturen
#########################################################################

define Garten_Wasserpumpe_an at *10:00 { if (ReadingsVal("LocalWeather","fc1_low_c","-999") >= 5) {fhem("set gd_Pumpe on") } }
attr Garten_Wasserpumpe_an room Garten


#########################################################################
##  Wasserpumpe abschalten jeden Tag um 22:00
#########################################################################
define Garten_Wasserpumpe_aus at *22:00 set gd_Pumpe off
attr Garten_Wasserpumpe_aus room Garten


dadurch das die Tiefstemperatur -4° ist, sollte die Pumpe doch nicht eingeschaltet werden.
Trotzdem erscheint in den "at" events: Garten_Wasserpumpe_an 10:00
Oder habe ich einen Denkfehler, daß das "at" event immer um 10:00 durchgeführt wird, und dabei erst die Kondition geprüft wird?

Puschel74

Hallo,

jetzt wäre noch gut zu wissen was nicht klappt.

Grüße
Zotac BI323 als Server mit DBLog
CUNO für FHT80B, 3 HM-Lan per vCCU, RasPi mit CUL433 für Somfy-Rollo (F2F), RasPi mit I2C(LM75) (F2F), RasPi für Panstamp+Vegetronix +SONOS(F2F)
Ich beantworte keine Supportanfragen per PM! Bitte im Forum suchen oder einen Beitrag erstellen.

MisterEltako

Hi!

Vielleicht reicht dir das schon:

define Check_Temp notify Local_Wetter:(fc1_low_c.*){\
if (isday()) && (ReadingsVal("Local_Wetter", "fc1_low_c","") > 5) {fhem("set gd_pumpe on")}}

...ist natürlich auch abwandelbar :-)

MfG, MisterEltako.
HMLAN-Konfigurations-Adapter, HM-Funkjalousieaktor/HM-Dimmaktor/HM-Schaltaktor f. Markenschalter, Jalousie-/Schaltaktor von Eltako, FT4 v. Eltako, TCM310

Digimatik

Alles ist gut,
ich hatte tatsächlich den Denkfehler, daß das at-event gleichbedeutend mit dem Einschalten ist, was natürlich nicht stimmt.

Ich habe die Zeiten mal so gestellt, daß ich das at-event beobachten kann:
define Garten_Wasserpumpe_an at *19:27 { if (ReadingsVal("LocalWeather","fc1_low_c","-999") >= 5) {fhem("set gd_Pumpe on") } }
attr Garten_Wasserpumpe_an room Garten


Zur Triggerzeit ist nichts passiert.

Ich habe testweise die Bedingung umgekehrt:
define Garten_Wasserpumpe_an at *19:29 { if (ReadingsVal("LocalWeather","fc1_low_c","-999") <= 5) {fhem("set gd_Pumpe on") } }
attr Garten_Wasserpumpe_an room Garten

Zur neuen Triggerzeit wurde die Pumpe eingeschaltet

Sorry, das ich vorschnell gepostet habe.
Aber vielleicht hilft das Codeschnipsel ja jemandem.

Markus

Raspberry Pi2 als FHEM-Plattform
HM, FS20, 1-Wire, PanStamp,LW12,Intertechno,ESPEasy,Alexa