Hallo liebe FHEM Experten,
ich habe eine relativ einfache DOIF Anweisung.
In Abhängigkeit ob die Poolpumpe läuft (Status "on") und der aktuellen Pooltemperatur soll die Solarpumpe laufen oder eben nicht.
Leider funktioniert das nur ab und zu.
DOIF (([EDI_Poolpumpe:state] eq "on") and ([Temperaturen:Pooltemperatur]<=30)) (set EDI_Solarpumpe on) DOELSE(set EDI_Solarpumpe off)
Hat jemand eine Idee?
Danke im vorraus!
Markus
Hallo Markus,
deine Klammern werden das Problem sein. Probier mal so:
DOIF ([EDI_Poolpumpe:state] eq "on" and [Temperaturen:Pooltemperatur]<=30) (set EDI_Solarpumpe on) DOELSE (set EDI_Solarpumpe off)
Max
Zitat von: Sirel am 16 April 2016, 11:19:40
Hallo Markus,
deine Klammern werden das Problem sein. Probier mal so:
DOIF ([EDI_Poolpumpe:state] eq "on" and [Temperaturen:Pooltemperatur]<=30) (set EDI_Solarpumpe on) DOELSE (set EDI_Solarpumpe off)
Max
Die Klammerung war überflüssig, aber nicht falsch. Im Zweifelsfall hier die Ausgabe von list des Moduls hier posten, dann kann man sagen warum, wann geschaltet oder nicht geschaltet wurde.
Gruß
Damian
Danke für die Rückmeldungen.
Das mit den Klammern hat das Problem leider nicht gelöst.
Die Solar Pumpe schaltet leider nicht ein - obwohl die Poolpumpe läuft (Status on) und die Temperatur 22,4°C beträgt.
Hallo Markus,
dann benötigen wir, wie Damian schon gesagt hat, mehr Infos.
Mach doch mal ein "List" auf Dein DOIF und poste das Ergebnis hier.
Welche Geräte/Aktoren verwendest Du? Steht die Funkverbindung zur Solar Pumpe bzw. zu der Steckdose usw...
Viele Grüße und schönen Sonntag,
Max
Ich hoffe, das ist die gwünschte Info - bin noch unerfahren mit FHEM
Internals:
DEF ([EDI_Poolpumpe:state] eq "on" and [Temperaturen:Pooltemperatur]<=30) (set EDI_Solarpumpe on) DOELSE (set EDI_Solarpumpe off)
NAME Schaltplan_Solarpumpe
NR 49
NTFY_ORDER 50-Schaltplan_Solarpumpe
STATE aus
TYPE DOIF
Readings:
2016-04-17 13:52:58 Device EDI_Poolpumpe
2016-04-17 12:01:57 cmd_event Temperaturen
2016-04-17 12:01:57 cmd_nr 2
2016-04-17 13:52:58 e_EDI_Poolpumpe_state ON / 0.07 W / 0.0050 A
2016-04-17 13:52:58 e_Temperaturen_Pooltemperatur 23.1
2016-04-17 12:01:57 state aus
Condition:
0 ReadingValDoIf($hash,'EDI_Poolpumpe','state','','',AttrVal($hash->{NAME},'notexist',undef)) eq "on" and ReadingValDoIf($hash,'Temperaturen','Pooltemperatur','','',AttrVal($hash->{NAME},'notexist',undef))<=30
Devices:
0 EDI_Poolpumpe Temperaturen
all EDI_Poolpumpe Temperaturen
Do:
0:
0 set EDI_Solarpumpe on
1:
0 set EDI_Solarpumpe off
Helper:
event last_Toggle_Time: 13:00:09 17.04.2016,current: 0.0050 A,power_now: 0.07 W,power_day: 0.000 kWh,power_week: 0.000 kWh,power_month: 0.000 kWh,ON / 0.07 W / 0.0050 A
globalinit 1
last_timer 0
sleeptimer -1
timerdev EDI_Poolpumpe
timerevent last_Toggle_Time: 13:00:09 17.04.2016,current: 0.0050 A,power_now: 0.07 W,power_day: 0.000 kWh,power_week: 0.000 kWh,power_month: 0.000 kWh,ON / 0.07 W / 0.0050 A
triggerDev EDI_Poolpumpe
timerevents:
last_Toggle_Time: 13:00:09 17.04.2016
current: 0.0050 A
power_now: 0.07 W
power_day: 0.000 kWh
power_week: 0.000 kWh
power_month: 0.000 kWh
ON / 0.07 W / 0.0050 A
triggerEvents:
last_Toggle_Time: 13:00:09 17.04.2016
current: 0.0050 A
power_now: 0.07 W
power_day: 0.000 kWh
power_week: 0.000 kWh
power_month: 0.000 kWh
ON / 0.07 W / 0.0050 A
Internals:
Itimer:
Readings:
0 EDI_Poolpumpe:state Temperaturen:Pooltemperatur
all EDI_Poolpumpe:state Temperaturen:Pooltemperatur
Regexp:
0:
All:
State:
Trigger:
Attributes:
cmdState an|aus
group Schaltpläne
room Pool
Schönen Sonntag - Problem ist glaube ich behoben.
Ich habe das Reading "state" verändert, somit keine Übereinstimmung mit on, daher Solarpumpe nicht ein.
Danke für die Hinweise - schönen Sonntag noch!
Markus