FHEM Forum

FHEM => Anfängerfragen => Thema gestartet von: kermi am 11 April 2013, 18:07:32

Titel: suche Lösungsvorschlag für Schalten in Abhängigkeit von 2 dummys
Beitrag von: kermi am 11 April 2013, 18:07:32
Hallo alle miteinader,

Ich suche einen Lösungsansatz für das abhängige Schalten eines Aktors.

Ich habe zwei dummys - d1 und d2 - sowie einen normalen Aktor a1.
Ich möchte gerne Aktor a1 nur dann einschalten wenn d1 und d2 den status on haben und sobald d1 oder d2 den Status off hat, den Aktor a1 wieder ausschalten.

Vielleicht kann mir ja mal einer auf die Sprünge helfen.

Danke
Stephan

Titel: Aw: suche Lösungsvorschlag für Schalten in Abhängigkeit von 2 dummys
Beitrag von: justme1968 am 11 April 2013, 18:21:06
schau dir mal structure an. z.b. so:define beide structure d d1 d2
attr beide clientstate_behavior relative
attr beide clientstate_priority off on

und ein notify an die structure hängen.

gruss
  andre
Titel: Aw: suche Lösungsvorschlag für Schalten in Abhängigkeit von 2 dummys
Beitrag von: MisterEltako am 11 April 2013, 20:26:05
Hi!

define d1 dummy
define d2 dummy

define Kontrolle notify d1.*|d2.* {\
  if ((Value("d1") = "on") && (Value("d2") = "on")) {\
     fhem("set a1 on");;\
  } else {\
     fhem("set a1 off");;\
 }\
}

MfG,MisterEltako.
Titel: Aw: suche Lösungsvorschlag für Schalten in Abhängigkeit von 2 dummys
Beitrag von: kermi am 11 April 2013, 20:27:17
hmm... so habe ich es auch gemacht, aber es funktioniert nicht mehr seit dem update auf 5.4


define beide structure d d1 d2
attr beide clientstate_behavior relative
attr beide clientstate_priority off on
attr beide room Heizung
define FileLog_beide FileLog ./log/Thermostat-%Y.log beide
attr FileLog_beide room Heizung


der Schaltbefehl:

define Heizung_einSchalten1 notify beide:on {fhem("define Heizung_einSchalten_at1 at +00:00:05 set Schalter_Therme on")}

der Status der Struktur ändert sich brav in der Weboberfläche, es fehlt einfach der Befehl zum einschalten von "Schalter_Therme"

ich bin echt ratlos und lagsam wirds kalt hier :(

Gruss
Stephan
Titel: Aw: suche Lösungsvorschlag für Schalten in Abhängigkeit von 2 dummys
Beitrag von: MisterEltako am 11 April 2013, 20:34:29
Hast du es schon mit meinem Tip probiert?

MfG,MisterEltako
Titel: Aw: suche Lösungsvorschlag für Schalten in Abhängigkeit von 2 dummys
Beitrag von: kermi am 11 April 2013, 20:42:14
Hi MisterEltako

danke für den Code, bekomme aber folgende merkwürdige Fehlermeldung:

2013.04.11 20:32:51 3: Kontrolle return value: Can't modify non-lvalue subroutine call in scalar assignment at (eval 20388) line 1, near ""on") "
Titel: Aw: suche Lösungsvorschlag für Schalten in Abhängigkeit von 2 dummys
Beitrag von: kermi am 11 April 2013, 20:43:10
ahh, hab grad die Änderung gesehen, probiers gleich noch einmal
Titel: Aw: suche Lösungsvorschlag für Schalten in Abhängigkeit von 2 dummys
Beitrag von: justme1968 am 11 April 2013, 20:48:07
bei mir geht das notify, mit version 5.4.

um einzugrenzen ob das notify der structure nicht geht oder das einschaltkomando bau mal als kommando beim notify {Log 3, "on"} das ein und schau ob etwas im log file ankommt.

warum schaltest du nicht direkt ein sondern mit 5 sekunden Verzögerung ?

gruss
  andre
Titel: Aw: suche Lösungsvorschlag für Schalten in Abhängigkeit von 2 dummys
Beitrag von: kermi am 11 April 2013, 20:52:25
es sind eigentlich 3 min Verzögerung weil die Stellmotore so lange brauchen bis sie auf sind.
log baue ich gleich mal ein.
Titel: Aw: suche Lösungsvorschlag für Schalten in Abhängigkeit von 2 dummys
Beitrag von: kermi am 11 April 2013, 21:12:05
hi andre,

es wir nichts ins log geschrieben, rein garnichts.
schalte ich die struktur manuell wird ins log "on" geschrieben.

schalte ich die struktur manuell funktioniert ja auch alles. iss schon komisch.
Titel: Aw: suche Lösungsvorschlag für Schalten in Abhängigkeit von 2 dummys
Beitrag von: kermi am 11 April 2013, 21:16:49
Hi MisterEltako

bekomme leider immer noch eine merkwürdige meldung ins log:

3.04.11 20:53:56 3: Kontrolle return value: Can't modify non-lvalue subroutine call in scalar assignment at (eval 24945) line 1, near ""on") "

2013.04.11 20:56:37 3: Kontrolle return value: Can't modify non-lvalue subroutine call in scalar assignment at (eval 24946) line 1, near ""on") "



Gruss
Stephan
Titel: Aw: suche Lösungsvorschlag für Schalten in Abhängigkeit von 2 dummys
Beitrag von: justme1968 am 11 April 2013, 21:19:45
mach mal bitte ein list auf deine d1 und d2.

haben die wirklich die statii on und off ?

gruss
  andre
Titel: Aw: suche Lösungsvorschlag für Schalten in Abhängigkeit von 2 dummys
Beitrag von: MisterEltako am 11 April 2013, 21:20:26
Hi!

Hatte leider statt eq das Gleichheitszeichen verwendet....

So passt es jetzt:

define d1 dummy
define d2 dummy
define a1 dummy
define Kontrolle notify d1.*|d2.* {\
if ((Value("d1") eq "on") && (Value("d2") eq "on")) {\
fhem("set a1 on");;\
} else {\
fhem("set a1 off");;\
}\
}

MfG, MisterEltako.
Titel: Aw: suche Lösungsvorschlag für Schalten in Abhängigkeit von 2 dummys
Beitrag von: kermi am 11 April 2013, 21:25:40
ja, haben sie beide:

d1
Internals:
   CFGFN      ./FHEM/heizung.cfg
   NAME       regelleiste_sw_Heizung
   NR         374
   NTFY_TRIGGERTIME 2013-04-11 21:21:34
   STATE      on
   TYPE       dummy
   Readings:
     2013-04-11 21:21:34   state           on
Attributes:
   Steuerung_Heizung1 Heizung_Solar
   alias      HilfsSW Struktur/Status für Heizung
   room       Heizung
   setList    on off
   webCmd     on:off


d2
Internals:
   CFGFN      ./FHEM/heizung.cfg
   NAME       sw_hilfe_Solarthermie
   NR         381
   STATE      on
   TYPE       dummy
   Readings:
     2013-04-11 21:10:22   state           on
Attributes:
   Steuerung_Heizung1 Heizung_Solar
   alias      Thermie - HilfsSW Struktur/Status für Heizung
   room       Heizung
   setList    on off
   webCmd     on:off


Titel: Aw: suche Lösungsvorschlag für Schalten in Abhängigkeit von 2 dummys
Beitrag von: kermi am 11 April 2013, 21:37:28
ja, Danke MisterEltako, die Heizung läuft erstmal wieder. Kann ich bei fhem("set a1 on");;\ noch ein at einbauen?

Vielen Dank euch beiden für die Mühen und die Zeit.
Ich werde mich totzdem noch weiter damit beschäftige, kann ja nicht sein dass die Struktur nicht mehr schaltet.

Gruss
Stephan
Titel: Aw: suche Lösungsvorschlag für Schalten in Abhängigkeit von 2 dummys
Beitrag von: MisterEltako am 11 April 2013, 21:48:36
Hi!
Natürlich!
z.B.
define d1 dummy
define d2 dummy
define a1 dummy
define Kontrolle notify d1.*|d2.* {\
if ((Value("d1") eq "on") && (Value("d2") eq "on")) {\
fhem("define Heizung_ein at +00:00:05 set a1 on");;\
} else {\
fhem("set a1 off");;\
}\
}

MfG, MisterEltako
Titel: Aw: suche Lösungsvorschlag für Schalten in Abhängigkeit von 2 dummys
Beitrag von: kermi am 11 April 2013, 22:02:28
super, läuft, nochmal vielen Dank MisterEltako und andre.
Die Lösung mit if else gefällt mir eigentlich auch besser als das Konstrukt mit der Struktur.

Schönen Abend noch.
Stephan