Readingsproxy nur schalten wenn der Ausgang den negierten Wert hat

Begonnen von Yepe, 09 August 2017, 13:44:38

Vorheriges Thema - Nächstes Thema

Yepe

Hallo Zusammen,

ich habe ein Problem mit meiner Lichtsteuerung. Ich steuere Lampen mittels readingsProxy, da es der LOGO mehr oder weniger egal ist ob ich "on" "off" oder "Trigger" setze schaltet es egal welcher Zustand der Ausgang hat.
Mein Ziel ist es wenn ich den Schalter auf ON setze nur geschaltet wird wenn der Ausgang auf Off steht und umgekehrt. Ich habe schon ein wenig mit dem setFn rumgespielt aber mangels Kenntnisse bzw. für mich verständlichen Beispiele keine Lösung gefunden.

IST Zustand:
define LOGO1_Ausgang_16 S7_DRead Q16
attr LOGO1_Ausgang_16 IODev LOGO1

define LOGO1_Eingang_16 S7_DWrite db 0 16.0
attr LOGO1_Eingang_16 IODev LOGO1

define LOGO1_Schalter_16 readingsProxy LOGO1_Ausgang_16
attr LOGO1_Schalter_16 devStateIcon on:li_wht_on off:li_wht_off
attr LOGO1_Schalter_16 room LOGO
attr LOGO1_Schalter_16 setFn {fhem("set LOGO1_Eingang_16 trigger")}
attr LOGO1_Schalter_16 setList on off
attr LOGO1_Schalter_16 webCmd on off


Einer meiner Versuche sah so aus:
{if (($CMD eq "on") && (Value("LOGO1_Ausgang_08") eq "off")) {fhem("set LOGO1_Eingang_08 trigger")} else {if (($CMD eq "off") &&  (Value("LOGO1_Ausgang_08") eq  "on")) {fhem("set LOGO1_Eingang_08 trigger")}}}

Mit der Fehlermeldung:
No set implemented for LOGO2_Ausgang_08


Yepe