DOIF funktioniert nicht immer

Begonnen von MadMax75, 16 April 2016, 08:48:07

Vorheriges Thema - Nächstes Thema

MadMax75

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

Sirel

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

Damian

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
Programmierte FHEM-Module: DOIF-FHEM, DOIF-Perl, DOIF-uiTable, THRESHOLD, FHEM-Befehl: IF

MadMax75

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.


Sirel

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

MadMax75

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

MadMax75

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