UPGRADE IP 9 verfügbar!
Timberwolf VISU jetzt mit NEUEM Layout Editor
Freie Anordnung, Reihenfolge und Größe der Widgets - viele weitere Verbesserungen
Infos im Wiki: https://elabnet.atlassian.net/l/cp/06SeuHRJ

NEU! Insider & Leistungsmerkmale FÜR ALLE freigeschaltet
Damit kann nun jeder das Upgrade vornehmen und VISU & IFTTT testen. Alle Info hier: viewtopic.php?f=8&t=5074

[Problem] [V3.0 RC5.1] DMX_Test-Modul mit 16 Kanälen verliert einen Kanal

Diskussionen und Fragen zur DMX-Funktion. Zur DMX-Hardware gibt es ein eigenes Unterforum unter Zubehör
Forumsregeln
  • Denke bitte an aussagekräftige Titel und gebe dort auch die [Firmware] an. Wenn ETS oder CometVisu beteiligt sind, dann auch deren Version
  • Bitte mache vollständige Angaben zu Deinem Server, dessen ID und dem Online-Status in Deiner Signatur. Hilfreich ist oft auch die Beschreibung der angeschlossener Hardware sowie die verwendeten Protokolle
  • Beschreibe Dein Projekt und Dein Problem bitte vollständig. Achte bitte darauf, dass auf Screenshots die Statusleiste sichtbar ist
  • Bitte sei stets freundlich und wohlwollend, bleibe beim Thema und unterschreibe mit deinem Vornamen. Bitte lese alle Regeln, die Du hier findest: https://wiki.timberwolf.io/Forenregeln
Antworten

Ersteller
TobiasLessing
Reactions:
Beiträge: 56
Registriert: Do Dez 10, 2020 11:24 pm
Wohnort: Zwochau
Hat sich bedankt: 36 Mal
Danksagung erhalten: 54 Mal

[V3.0 RC5.1] DMX_Test-Modul mit 16 Kanälen verliert einen Kanal

#1

Beitrag von TobiasLessing »

Hallo Zusammen,

ich habe nun meinen Baustein das erste Mal voll ausgereizt und steuere die 16 möglichen (Begrenzung DMX_Test-Modul) Kanäle an. Dazu nutze ich diesen Code:

Code: Alles auswählen

/**
 * DMX-Logik zur Ansteuerung von DMX-Kanälen
 * Input: Übergangszeit (Fadetime); Gammakorrktur-Wert; Sollwert je Kanal
 * TWS-interene Weitergabe und Verarbeitung, daher kein Output
 * 
 * Voraussetzung am DMX-Decoder: Lineare Ausgangscharakteristik (mit Gamma = 1 am TWS, ist auch eine logaritmische Chrakteristik des Decoders nutzbar); Helligkeitssteuerung mit 8-bit ("256-Graustufen"), Ab Decoder die "Einzelkanalsteuerung" auswählen, damit alle DMX-Adressen verarbeitet werden.
 * 
 * Ausgangscharakterisik:
 * Gamma = 1: lineare Dimmkurve
 * Gamme > 1: logartthmische Dimmkurve (1,4..1,6 funktionernen am Skydance D4-L zufriedenstellend)
 * 
 * Die DMX-Startadresse ist um "1" zu reduzieren. Im Modul "DMX-Test" wird dann aufsteigen eine weitere Adresse angesteuert. Sie wird als letzter Parameter im DMX-Test-Modul eingetragen, darf aber selbst keine Variable sein.
 * Beispiel: 4CH-DMX-Decoder mit Startadresse 42 -->
 * ["DMX_Test",["$CH1_DMX_value","$CH2_DMX_value","$CH3_DMX_value"], "$Fade", 41]
 * CH1=DMX-Adresse 41, CH2=DMX-Adresse 42, CH2=DMX-Adresse 43, CH4=DMX-Adresse 44
 * 
 * Hinweise: Die Kanalsbezeichnungs ist ggf. sinnhaft anzupassen
 * 
 * Version V1.1
 * Autor: Tobias Lessing
 * Veröffentlichung: 25.12.2021
 * Bekannte Bugs: Die Wertbegrenzung für die Input habe ich bewusst nicht aufgenommen, um den Code übersichtlich zu halte. Ich vertraue auf eure Geistige Anwesenheit beim Parametrieren. Wer an sich selbst zweifelt, kann selbst Limitter-Module hinzufügen
 */

{
  "_Meta": {
    "Description": "Ansteurungslogik für mehrkanalige DMX-Aufbauten",
    "Version": "1.00",
    "Icon": ""
  },
  "Input": [
      ["Fadetime", "Zeit für Lichtübergang [0,0s .. 1,0s]", "$Fade", "u"], //für alle Kanäle einheitlich
      ["Gamma","Wert für die Gamma-Korrektur[1...3]","$Gamma","u"], //zur Berechung der Gammakorrektur (siehe BEschreibung oben zur Ausgangscharakteristik)
      ["Helligkeit-CH1","Helligkeitswert für Kanal 1 [0...100]","$CH01_brightness","c"], //linearer Eingangswert der Helligkeit des jeweiligen Kanals in %
      ["Helligkeit-CH2","Helligkeitswert für Kanal 2 [0...100]","$CH02_brightness","c"], //s.o.
      ["Helligkeit-CH3","Helligkeitswert für Kanal 3 [0...100]","$CH03_brightness","c"], //s.o.
      ["Helligkeit-CH4","Helligkeitswert für Kanal 4 [0...100]","$CH04_brightness","c"], //s.o.
      ["Helligkeit-CH5","Helligkeitswert für Kanal 5 [0...100]","$CH05_brightness","c"], //s.o.
      ["Helligkeit-CH6","Helligkeitswert für Kanal 6 [0...100]","$CH06_brightness","c"], //s.o.
      ["Helligkeit-CH7","Helligkeitswert für Kanal 7 [0...100]","$CH07_brightness","c"], //s.o.
      ["Helligkeit-CH8","Helligkeitswert für Kanal 8 [0...100]","$CH08_brightness","c"], //s.o.
      ["Helligkeit-CH9","Helligkeitswert für Kanal 9 [0...100]","$CH09_brightness","c"], //s.o.
      ["Helligkeit-CH10","Helligkeitswert für Kanal 10 [0...100]","$CH10_brightness","c"], //s.o.
      ["Helligkeit-CH11","Helligkeitswert für Kanal 11 [0...100]","$CH11_brightness","c"], //s.o.
      ["Helligkeit-CH12","Helligkeitswert für Kanal 12 [0...100]","$CH12_brightness","c"], //s.o.
      ["Helligkeit-CH13","Helligkeitswert für Kanal 13 [0...100]","$CH13_brightness","c"], //s.o.
      ["Helligkeit-CH14","Helligkeitswert für Kanal 14 [0...100]","$CH14_brightness","c"], //s.o.
      ["Helligkeit-CH15","Helligkeitswert für Kanal 15 [0...100]","$CH15_brightness","c"], //s.o.
      ["Helligkeit-CH16","Helligkeitswert für Kanal 16 [0...100]","$CH16_brightness","c"] //s.o.
  ],
  "Output": [ //das Ergebniss wird intern direkt an den Co-Prozessor gegeben und benötigt keine Ausgabe. Zu Kontrolle/Visualisierung könnten hier ggf. Parameter ergänzt werden
  ],
  "Level": [
      ["$Fade","float",1.0], //Übergangszeit
      ["$Gamma","float",1.6], //Korrekturwert der Ausgangscharakteristik ("Gammakorrektur")
      ["$Formula","string","255*(0.01*X1)^X2"], //Korrekturformel für 8-bit Decoder & einen prozentualen Eingangswert
      
      ["$CH01_brightness","float",0.0], //siehe Input
      ["$CH02_brightness","float",0.0], //s.o.
      ["$CH03_brightness","float",0.0], //s.o.
      ["$CH04_brightness","float",0.0], //s.o.
      ["$CH05_brightness","float",0.0], //s.o.
      ["$CH06_brightness","float",0.0], //s.o.
      ["$CH07_brightness","float",0.0], //s.o.
      ["$CH08_brightness","float",0.0], //s.o.
      ["$CH09_brightness","float",0.0], //s.o.
      ["$CH10_brightness","float",0.0], //s.o.
      ["$CH11_brightness","float",0.0], //s.o.
      ["$CH12_brightness","float",0.0], //s.o.
      ["$CH13_brightness","float",0.0], //s.o.
      ["$CH14_brightness","float",0.0], //s.o.
      ["$CH15_brightness","float",0.0], //s.o.
      ["$CH16_brightness","float",0.0], //s.o.
      
      ["$CH01_DMX_value","float",0.0], //interen Berechnungsvariable
      ["$CH02_DMX_value","float",0.0], //s.o.
      ["$CH03_DMX_value","float",0.0], //s.o.
      ["$CH04_DMX_value","float",0.0], //s.o.
      ["$CH05_DMX_value","float",0.0], //s.o.
      ["$CH06_DMX_value","float",0.0], //s.o.
      ["$CH07_DMX_value","float",0.0], //s.o.
      ["$CH08_DMX_value","float",0.0], //s.o.
      ["$CH09_DMX_value","float",0.0], //s.o.
      ["$CH10_DMX_value","float",0.0], //s.o.
      ["$CH11_DMX_value","float",0.0], //s.o.
      ["$CH12_DMX_value","float",0.0], //s.o.
      ["$CH13_DMX_value","float",0.0], //s.o.
      ["$CH14_DMX_value","float",0.0], //s.o.
      ["$CH15_DMX_value","float",0.0], //s.o.
      ["$CH16_DMX_value","float",0.0] //s.o.
  ],
  "Module": [
      ["CalcFormula",["$CH01_brightness","$Gamma"], "$CH01_DMX_value", "$Formula"], //Verrechnung des Helligkeits-Sollwertes für Kanal 1
      ["CalcFormula",["$CH02_brightness","$Gamma"], "$CH02_DMX_value", "$Formula"], //[...] Kanal 2
      ["CalcFormula",["$CH03_brightness","$Gamma"], "$CH03_DMX_value", "$Formula"], //[...] Kanal 3
      ["CalcFormula",["$CH04_brightness","$Gamma"], "$CH04_DMX_value", "$Formula"], //[...] Kanal 4
      ["CalcFormula",["$CH05_brightness","$Gamma"], "$CH05_DMX_value", "$Formula"], //[...] Kanal 5
      ["CalcFormula",["$CH06_brightness","$Gamma"], "$CH06_DMX_value", "$Formula"], //[...] Kanal 6
      ["CalcFormula",["$CH07_brightness","$Gamma"], "$CH07_DMX_value", "$Formula"], //[...] Kanal 7
      ["CalcFormula",["$CH08_brightness","$Gamma"], "$CH08_DMX_value", "$Formula"], //[...] Kanal 8
      ["CalcFormula",["$CH09_brightness","$Gamma"], "$CH09_DMX_value", "$Formula"], //[...] Kanal 9
      ["CalcFormula",["$CH10_brightness","$Gamma"], "$CH10_DMX_value", "$Formula"], //[...] Kanal 10
      ["CalcFormula",["$CH11_brightness","$Gamma"], "$CH11_DMX_value", "$Formula"], //[...] Kanal 11
      ["CalcFormula",["$CH12_brightness","$Gamma"], "$CH12_DMX_value", "$Formula"], //[...] Kanal 12
      ["CalcFormula",["$CH13_brightness","$Gamma"], "$CH13_DMX_value", "$Formula"], //[...] Kanal 13
      ["CalcFormula",["$CH14_brightness","$Gamma"], "$CH14_DMX_value", "$Formula"], //[...] Kanal 14
      ["CalcFormula",["$CH15_brightness","$Gamma"], "$CH15_DMX_value", "$Formula"], //[...] Kanal 15
      ["CalcFormula",["$CH16_brightness","$Gamma"], "$CH16_DMX_value", "$Formula"], //[...] Kanal 16
      
      ["DMX_Test",["$CH01_DMX_value","$CH02_DMX_value","$CH03_DMX_value","$CH04_DMX_value","$CH05_DMX_value","$CH06_DMX_value","$CH07_DMX_value","$CH08_DMX_value","$CH09_DMX_value","$CH10_DMX_value","$CH11_DMX_value","$CH12_DMX_value","$CH13_DMX_value","$CH14_DMX_value","$CH15_DMX_value","$CH16_DMX_value"], "$Fade", 0] //DMX-Ansteuerung für 16 unabhängige Kanäle mit Startadresse "16" (siehe auch oben); das Array für jeden zusätzlichen Kanal mit "$CHx_DMX_value" erweitern
  ]
}

/**Der Schöpfer dieser Custom Logik überträgt die Nutzungsrechte gemäß der TOLL ("Timberwolf Open Logikblock License") die unter https://wrgt.news/TOLL zum Download zur Verfügung steht. */

Für die Inbetriebnahme meiner Installation habe ich nun jeden Kanal im Doktormodus getestet und hab dabei festgestellt, dass einige Kanäle nicht sauber zugeordnet sind. Nun hatte ich zuerst meine Installation im Verdacht (war eine Nachtschicht :roll: ), konnte aber keinen Fehler finden. Hab dann einfach mal den TWS neu gestartet und bin wieder Schritt für Schritt alle Kanäle durchgegangen. Im ersten Anlauf hat es bei Kanal 9 gehakt. Nach dem Neustart kam ich dann bis Kanal 13. Das Fehlerbild beschreibt sich wie folgt:

Einerseits hat er ab Kanal 9/13 alles um eine Adresse verschoben. Dabei hat er eine Adresse quasi rausgelöscht sodass die nachfolgenden "nachgerutscht" sind. Andererseits hat er mit erstmaliger Aktivierung des besagten Kanal 9/13 auch den 16 und damit eigentlich letzten Kanal aktiviert. Auf diesen kann ich dann aber leider nicht mehr zugreifen. Ich bekomme diesen Kanal nicht mehr geändert. Entsprechend bleibt des Licht auch an. Der "gelöschte" Kanal ist dann leider auch nicht mehr erreichbar.

Im o.g. Code ist die Zuordnung meiner Meinung nach fehlerfrei, aber vielleicht ist es auch schon wieder zu spät.
Ich haben drei weitere 16er Bausteine (für zwei 32CH-Decoder). Die ich aber noch nicht durchgetestet habe, das werde ich morgen nachholen. Als Workaround, werde ich meinen 4-Kanal-Baustein achtmal bemühen und sehen ob sich das Problem reproduzieren lässt. Werde mir im Zweifel und mit Abstand auch die Installation noch einmal ansehen, falls ich da doch etwas übersehen habe.

Achso. Ich habe heute das Update auf die V3.0 RC 5.1 durchgeführt, kann aber nicht sagen ob es zuvor gegangen wäre. Ich denk aber das hat damit nichts zu tun.

Hat jemand schon Erfahrung mit einer höheren DMX-Kanalanzahl gesammelt? Was könnte ich sonst noch versuchen? Ich gebe Bescheid, wenn meine Tests noch neue Infos liefern.

Vielen Dank.
Viele Grüße aus Sachsen

Tobias

---

Es hat mich jetzt nicht losgelassen und "morgen" ist ja auch schon. Hab jetzt meine 4CH-Bausteine genutzt (sind acht nicht sechs :shifty: und damit nicht sonderlich praktikabel, aber aktuelle geht es damit) und kann verkünden, dass fast (siehe unten) alles geht wie es soll. Liegt also sehr wahrscheinlich nicht an der Installation.

Wenn ich nun übrigens mit dem 16er-Baustein den letzten Kanal ansteuere bleibt dieser wieder "hängen". Gehe ich mit dem 16er wieder schrittweise durch, hängt er sich reproduzierbar am Kanal 10 auf (10 und 16 befinden sich zum Glück im gleichen Raum, das prüft es sich leichter...). Mit dem 4er-Baustein bekomme ich den Kanal 16 auch nur ausgeschalteten, wenn ich diesen zuvor auf einen anderen Wert als 0 ändere (könnte damit zusammenhängen, dass sich dieser Kanal in diesem Baustein sonst nicht ändert).

Einen kleinen Fehler hab ich wohl aber doch in der Installation: Kanal 13&14 sind physisch an der LED (DTW) vertauscht. Sehe heute im hellen mal ob die Adern am Decoder oder direkt an der LED vertauscht sind. Aber das da der Kanal 16 mit aktiviert wird, sobald ich die 13 ansteuere kann nicht physisch sein.

So jetzt aber. Gute Nacht.

VG Tobias
Zuletzt geändert von StefanW am Mi Mai 18, 2022 12:48 pm, insgesamt 2-mal geändert.
TWS 950Q ID:458, vormals 960Q mit FreshUp, VPN offen, Reboot erlaubt nach Rücksprache
TWS 950Q ID:488, offline
PBM SN 1048
Antworten

Zurück zu „DMX“