Fürs Wiki: Diskrete Schaltzustände mit DMX und Relais

Begonnen von nexus76, 06 Januar 2017, 02:39:26

Vorheriges Thema - Nächstes Thema

nexus76

Das Externe Modul artdmx ist technisch gut in der Lage, DMX über ArtNet (z.B. Ulrich Radigs Art Net Node) anzusteuern, liefert dabei aber keinen Schaltzustand, sondern nur das leidige "Initialized". Da per Definition DMX nur einen Mastercontroler kennt, und der FHEM diesen darstellt ist dies eigentlich kein Problem, da die Kanaldaten nur gesetzt werden müssen (Das Wort des FHEM ist im angeschlossenen DMX Gesetz). Nun will der Nutzer aber doch wissen, was er geschaltet hat.

Hier ist eine kleine Anleitung, um dies umzusetzen (Beispielhaft). Geschaltet werden soll ein Arduino-DMX-Relais (z.B. tinkerkit DMX Receiver). Dies hat beispielhaft die Zustände Kanalwert 0 (dim=0) => Relais offen (NC), Kanalwert 1 bis 255 (dim=1) => Relais geschlossen (NO).

Hinweis: Im Englischen wird der Schaltzustand im Ruhezustand (Normaly Connected/Normaly Open) angegeben, nicht der Arbeitszustand.
Der Anschluss kann hierbei so erfolgen, dass DMX den Verbraucher einschaltet (NO) oder auch abschaltet (NC) zweites hat den Vorteil, dass über die Belegung der Relais eine Fallback-Beleuchtung (bei ausgeschalteter DMX/FHEM-Steuerung) erreicht werden kann.

Konfiguration (Erfolgreiche artdmx Installation vorausgesetzt).

Definition beispielhaft: Spots auf einem DMX Relais, Kanal 7, Relais als NC beschaltet (auch bei Ausfall der Steuerung wird die Phase geschaltet)

define DMX_Spots_IS DMXDevice simple 7
attr DMX_Spots_IS IODev DMX0
attr DMX_Spots_IS eventMap /dim 0:An/ /dim 1:Aus/
attr DMX_Spots_IS genericDeviceType switch
attr DMX_Spots_IS webCmd An:Aus


Definieren eines Dummys z.B. mit FS20 (Der Hauscode und NodeID hinter "FS20" ist pseudo ID, es funktionieren natürlich auch andere Typen)

define Spots FS20 11114444 1b
attr Spots dummy 1


DOIF als Verknüpfung zwischen DMX-Def und Dummy.

define Spots_an DOIF ([Spots] eq "on") (set DMX_Spots_IS dim 0) DOELSE (set DMX_Spots_IS dim 1)


Als Ziel für Szenarien, Homebridge etc. wird jetzt einfach der Dummy angesprochen, der seinen Schaltzustand speichert.
Durch den definierten Schaltzustand des DMX-Devices sind Inkonsistenzen ausgeschlossen.