FHEM Forum

FHEM => Anfängerfragen => Thema gestartet von: Christian72D am 24 Oktober 2015, 18:23:07

Titel: Strom abhängig von Türöffnung schalten
Beitrag von: Christian72D am 24 Oktober 2015, 18:23:07
Ich steh gerade etwas auf dem Schlauch: ich würde gerne den Strom im Garten einschalten sobald ich die Gartentüre öffne.

Ich hatte gehofft/gedacht daß es SO gehen würde:

define Aussenstrom_Schalten DOIF ([K.Tuer:STATE] eq "on") (set Aussenstrom on) DOELSEIF ([K.Tuer:STATE] eq "off") (set Aussenstrom off)

Der Code scheint (von der Syntax her) richtig zu sein, aber es wird nichts geschaltet
K.Tuer ist der Drehgriffschalter und Aussenstrom ein Kanal vom 4fach Hutschienen Aktor.

Wo ist mein Fehler?
Titel: Antw:Strom abhängig von Türöffnung schalten
Beitrag von: kumue am 24 Oktober 2015, 19:49:08
versuch es mal mit

define Aussenstrom_Schalten DOIF ([K.Tuer:state] eq "on") (set Aussenstrom on) DOELSEIF ([K.Tuer:state] eq "off") (set Aussenstrom off)

bzw.

define Aussenstrom_Schalten DOIF ([K.Tuer] eq "on") (set Aussenstrom on) DOELSEIF ([K.Tuer] eq "off") (set Aussenstrom off)
Titel: Antw:Strom abhängig von Türöffnung schalten
Beitrag von: Amenophis86 am 24 Oktober 2015, 23:31:40
Reagiert das Doif denn, wenn der Status der Tür sich ändert, dann liegt es ja klar am Kommando. Wenn nicht am Trigger.
Titel: Antw:Strom abhängig von Türöffnung schalten
Beitrag von: Christian72D am 25 Oktober 2015, 06:43:42
Ich habe jetzt mal beide Varianten angelegt, beide reagieren wohl nicht.

Der Statur der Tür ändert sich aber wie gewünscht.

Woran liegts?
Titel: Antw:Strom abhängig von Türöffnung schalten
Beitrag von: SvenJust am 25 Oktober 2015, 07:05:44
Das State des Sensors heißt "open" bzw "closed" und nicht on oder off.  Also im DOIF entsprechend ändern...

VG Sven
Titel: Antw:Strom abhängig von Türöffnung schalten
Beitrag von: Christian72D am 25 Oktober 2015, 07:59:28
Na super, auf alles geachtet, aber nicht DARAUF... JETZT gehts natürlich.

DANKE!

Wenn da jetzt noch eine Gartentür dazu kommt muß die Syntax dann wie folgt aussehen?

define Aussenstrom_Schalten DOIF ([K.Tuer] eq "open" OR [G.Tuer] eq "open") (set Aussenstrom on) DOELSEIF ([K.Tuer] eq "closed" AND [G.Tuer] eq "closed") (set Aussenstrom off)

Code editiert damit es hier richtig steht!
Titel: Antw:Strom abhängig von Türöffnung schalten
Beitrag von: Amenophis86 am 25 Oktober 2015, 14:16:23
immer noch open, aber sonst ja.

So würdest du anschalten, sobald eins auf ist und ausschalten, wenn beide zu sind.
Titel: Antw:Strom abhängig von Türöffnung schalten
Beitrag von: Christian72D am 28 Oktober 2015, 17:31:22
So, der nächste Kontakt ist angekommen, leider ist wohl ein Fehler in der Syntax:

define Aussenstrom_Schalten DOIF ([K.Tuer] eq "open" OR [Ke.Tuer] eq "open") (set Aussenstrom on) DOELSEIF ([K.Tuer] eq "closed" AND [Ke.Tuer] eq "closed") (set Aussenstrom off)

Als error reading bekomme ich:
perl error in condition: InternalDoIf('K.Tuer','STATE','') eq "open" OR InternalDoIf('Ke.Tuer','STATE','') eq "open": syntax error at (eval 3828) line 1, near ""open" OR "
Titel: Antw:Strom abhängig von Türöffnung schalten
Beitrag von: Amenophis86 am 28 Oktober 2015, 17:52:33
das mag jetzt echt bescheuert klingen, aber hast du das or mal klein geschrieben? Weiß nicht, ob es daran liegt, aber sonst sehe ich aktuell keinen Fehler.
Titel: Antw:Strom abhängig von Türöffnung schalten
Beitrag von: Damian am 28 Oktober 2015, 17:58:57
Zitat von: Christian72D am 28 Oktober 2015, 17:31:22
So, der nächste Kontakt ist angekommen, leider ist wohl ein Fehler in der Syntax:

define Aussenstrom_Schalten DOIF ([K.Tuer] eq "open" OR [Ke.Tuer] eq "open") (set Aussenstrom on) DOELSEIF ([K.Tuer] eq "closed" AND [Ke.Tuer] eq "closed") (set Aussenstrom off)

Als error reading bekomme ich:
perl error in condition: InternalDoIf('K.Tuer','STATE','') eq "open" OR InternalDoIf('Ke.Tuer','STATE','') eq "open": syntax error at (eval 3828) line 1, near ""open" OR "

Operatoren wie or oder and werden in Perl klein geschrieben und die Bedingung in DOIF ist Perl.

Gruß

Damian
Titel: Antw:Strom abhängig von Türöffnung schalten
Beitrag von: Christian72D am 29 Oktober 2015, 05:34:55
Ah OK... ich hatte es nur der Übersichtlichkeit GROSS geschrieben, danke, jetzt läuft alles.