FHEM – Digitale Ausgänge anlegen und invertieren

Mit diesen vier Zeilen wird ein einzelner Ausgang am DO-Modul definiert und invertiert

define A20.0 readingsProxy modulA20:Port0
attr A20.0 room i2c
attr A20.0 group modulA20
attr A20.0 setList on off
attr A20.0 setFn {($CMD eq "on")?"Port0 off":"Port0 on"}
attr A20.0 devStateIcon on:off:off off:on:on
Unsere Module arbeiten in der invertierten Logik.
Damit ist sichergestellt dass alle Ausgänge bei Spannungs-Wiederkehr AUS-geschaltet bleiben.
In der letzten Zeile erfolgt die Invertierung des Ausgangs.

 

Für den zweiter Ausgang A20.1

define A20.1 readingsProxy modulA20:Port1
attr A20.1 room i2c
attr A20.1 group modulA20
attr A20.1 setList on off
attr A20.1 setFn {($CMD eq "on")?"Port1 off":"Port1 on"}
attr A20.1 devStateIcon on:off:off off:on:on

 

und so weiter bis zum Ausgang A20.7

define A20.7 readingsProxy modulA20:Port7
attr A20.7 room i2c
attr A20.7 group modulA20
attr A20.7 setList on off
attr A20.7 setFn {($CMD eq "on")?"Port7 off":"Port7 on"}
attr A20.7 devStateIcon on:off:off off:on:on

 

Im Raum I2C sind die Ausgänge jetzt so drin.

Wenn auf die Buttons ON OFF geklickt wird schalten die Ausgänge vom I2C-Ausgabemodul. Durch die Invertierung stimmen die texte der Buttons und die Lampe leuchtet wenn der Ausgang tatsächlich EIN ist.

 


Weitere Beiträge zum Thema

[maxmegamenu location=max_mega_menu_1]


 

 

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.