Hallo zusammen,
ich habe in der Bucht eine RGB-LED Leiste im IP66 Alucase geschossen und
wollte nun mal damit spielen. Es handelt sich um den Typ XB-27 RGB der
Firma Traxon (
http://www2.traxontechnologies.com/get_pic/pdf/2428-EN_Nano_Liner_Allegro_AC_XB_RGB_Spec_v2p3.pdf
).
Das Modul wird direkt an 220V angeschlossen und kann dann dann mittels
DMX512 gesteuert werden.
Ich habe selbst noch nie mit DMX gearbeitet und habe mir erstmal einen
RS485 Controller an den Pi gehangen um mit der UART (8n2) erstmal das
Protokoll/ Timing zu verifizieren. Später soll das alles auf ne Kleine
Platine mit ESP8266 und entsprechend installiert werden.
Es stellen sich mir leider folgende Fragen:
1) DMX ist doch ein adressgesteuertes Protokoll oder nicht? Weder in den
Dokumenten noch auf dem Gerät selbst ist eine Adresse zu finden - auch
kein DIP schalter o.ä.
Gibt es eine Art Broadcast oder ähnliches? Ich finde keine sinnvolle
Info im Netz.
2) Wenn das Gerät dann zu hört, wie sage ich ihm welcher Farbkanal wie
Hell sein soll? Ich habe gelesen dass eine RGB-LED quasi 3 Channel hat.
Man gibt die Adresse des Gerätes an, gibt dann die Intensität des 1ten
Channels an und dann mittels Adress-Inkrement immer so weiter bis alle
Channel eingestellt sind.. stimmt das so?
3) Inkrementiert das DMX-Netzwerk automatisch die Adresse? Heißt wenn
ich nach dem Reset einfach Werte ins Netzwerk Takte, werden dann die
DMX-Slaves intern mitzählen (bei Null beginnend) und dann Ihren Wert
entsprechend rausgreifen?
Dann könnte ich ja einfach 512 mal 0xFF ins Netzwerk packen und quasi
mitzählen wann die LED-Leiste anspricht.. dann wüsste ich die Adresse.
Is das so Richtig?
Vielen Dank schonmal,
Grüße
Tony
Wenn du DMX verwenden möchtest brauchst du meiner Meinung noch einen
Data Injector, siehe Seite 5 von deiner Verlinken Anleitung.
Wie bei den Lampen dann die Adresse festgelegt wird ist mir auch
rätselhaft.
Der fungiert aber nur als Adapter für Versorgungsspannung und DMX.
DMX Adressiert anhand des Frames und dessen Länge. Der Frame darf
maximal 513 byte groß sein. Das erste byte ist die Startadresse die ist
für DMX immer null, danach kommen die Channels.. du musst also nur den
rx count zählen zwischen jeden break.
http://www.soundlight.de/techtips/dmx512/dmxdin.htm
Guten Abend!
Vielen Dank schon mal für die Antworten. Das mit dem Data Injector sehe
ich so wie Marco,... Die Belegung direkt am Stecker sieht nämlich auch
DMX+ und DMX- vor..
@Marco: " Das erste byte ist die Startadresse die ist für DMX immer
null, danach kommen die Channels.."
Das Bedeutet, dass jedes DMX-Gerät die selbe Adresse hat? Dann könnte
ich doch aber keine unterschiedlichen Geräte über eine DMX-Leitung
ansteuern.
Müsste ich nicht alle Adressen durchgehen und dann pro Adresse alle 512
Kanäle probieren (wobei es wahrscheinlich nur 3-5 sein werden)... Wenn
die Lampe dann anspringt, weis ich welche Adresse und welche Channel
verwendet werden oder?
Grüße
Tony
Einige solche "verkettbaren" Geräte "konsumieren" ihre Daten und
schicken den Rest weiter.
Das vereinfacht den Aufbau, auf der Bühne.
Defekte Geräte können ausgetauscht werden, ohne auf dem Mäuseklavier
spielen zu müssen.
Die Verkettungsreihenfolge bestimmt die Adresse des einzelnen Gerätes.
DMX-Geräte, die RDM unterstützen, können auch vom Controller aus eine
Adresse zugewiesen bekommen. Da aber RDM nicht erwähnt wird, würde ich
mal bezweifeln, dass das unterstützt wird.
Da im Handbuch auch nichts von einer Startadresse steht, würde ich auch
davon ausgehen, dass die immer auf Adresse 1 reagieren und am
DMX-Ausgang die restlichen Kanäle wieder ab Adresse 1 raus-senden (also
quasi wie Arduino Fanboy es schon beschrieben hat. Die selbst
konsumierten Kanäle werden quasi am Ausgang weggelassen)
Nein jedes Gerät hat schon seine Adresse und fischt sich aber die Daten
aus dem Frame heraus. Bei deiner Leuchte wird die Adresse ewt. Extern
programmiert. Sonst macht man das mit DIP schaltern.
Der Ausgang des Data Injectors hat ein Offset für die Adresse von 96
Kanälen. Das heißt, alle Geräte haben intern Startadresse 1. Erster Data
Injector versorgt also die LED Leisten mit den physischen Adressen 1-96
von deinem Lichtpult, der nächste von 97 bis 192 usw.
Klingt am Anfang deutlich aufwändiger als die traditionelle Adressierung
per DIP oder im Menü, macht bei größeren Installationen aber durchaus
Sinn.
Damit es nicht zu Missverständnisse kommt der Frame beginnt mit dem
startcode (nicht Adresse). Dieser ist bei Dmx null danach kommen die
Channels.
Bitte beachte auch den break und MAB vor jedem Frame. Außerdem die
Interslottime also das wackeln zwischen den bytes. Was beim RPI oder
ähnliches nicht unbedenklich ist.
Du brauchst dann auch den Injektor nicht.
Der macht ja nichts anderes als 230V AC mit dem DMX Signal zusammen zu
legen.
Wenn du an den Stecker der ersten Lampe An die richtigen Pins die 230V
und das DMX Signal anlegst, dann sollte das gehen.
Naja ich nehme mal das injektor auch für die nötige Trennung sorgt.
Solche Sachen können auch in die Hose gehen. Um wieviel Leuchten geht's
hier eigentlich?
Hallo,
vielen Dank für die Vielen kompetenten Beiträge! Sehr interessante
Punkte dabei die ich beachten/ probieren werde, Spitze!
Es geht tatsächlich nur um 1 (vlt. später eine 2te) Leuchte.
Ich habe mir jetzt ISL3259 RS485-Treiber besorgt.. mit denen habe ich
schon mal gearbeitet.
Hab jetzt ne kleine Aufsteckplatine geätzt die ich auf den Pi stecken
kann und dann werde ich mal was zusammen schreiben um mich mit dem
Protokoll vertraut zu machen.
Danke euch nochmal!
Ich melde mich nochmal wenn es noch Probleme gibt :)
Grüße
Tony
Hallo :)
Ob die Lampe geklaut ist kann ich dir leider nicht sagen (oder zum
Glück?).
Ich hab das Gerät auf Kleinanzeigen von privat bezogen,.. Ob der die
irgendwo entwendet hat oder vlt. in der Branche tätig ist und die noch
übrig war... keine Ahnung.
Aber du hast Recht,.. ich finde auch keine Andre Quelle.
Grüße
Tony
Tony schrieb:> Hallo zusammen,>> ich habe in der Bucht eine RGB-LED Leiste im IP66 Alucase geschossen und> wollte nun mal damit spielen. Es handelt sich um den Typ XB-27 RGB der> Firma Traxon (> http://www2.traxontechnologies.com/get_pic/pdf/242...> ).>> Das Modul wird direkt an 220V angeschlossen und kann dann dann mittels> DMX512 gesteuert werden.
Es gab / gibt bei Traxxon zwei Varianten. Einmal eine Version die immer
den ersten Block aus dem DMX Frame "rausschneidet" und für sich
interpretiert - und eine Version für die man ein Programmiergerät
braucht um die Adresse zu setzen.
Durchaus selten diese schon recht speziellen Leuchten irgndwo auf dem
freien Markt zu finden.
> Ich habe selbst noch nie mit DMX gearbeitet und habe mir erstmal einen> RS485 Controller an den Pi gehangen um mit der UART (8n2) erstmal das> Protokoll/ Timing zu verifizieren. Später soll das alles auf ne Kleine> Platine mit ESP8266 und entsprechend installiert werden.
Das funktioniert so rein elektrisch. Du brauch allerdings low-level
Zugriff, die Timings bei DMX512 sind nicht einfach mit den normalen
Libraries umzusetzen. Am einfachsten ist z.B. ein FTDI USB-Seriell
Wandler. Google mal OpenDMX USB. Den kann du dann ohne großen Aufwand
z.B. mit QLC / Open Light Architecture ansteuern.
> Es stellen sich mir leider folgende Fragen:> 1) DMX ist doch ein adressgesteuertes Protokoll oder nicht? Weder in den> Dokumenten noch auf dem Gerät selbst ist eine Adresse zu finden - auch> kein DIP schalter o.ä.> Gibt es eine Art Broadcast oder ähnliches? Ich finde keine sinnvolle> Info im Netz.http://www.soundlight.de/techtips/dmx512/dmx512.htm
DMX sendet immer einen ganzen Frame. Sprich Kanal 0 bis x. Je kleiner
der Frame, desto öfter wird er widerholt. Jedes Gerät kann jeden Kanal
in dem Frame sehen und wenn es wollte mitlesen. Kommt eine gewisse Zeit
kein Frame gehen alle Geräte in den Bus-Reset. (Die Reaktion kann man
meist einstellen.) Laut standard darf ein Gerät nur "lesen".
> 2) Wenn das Gerät dann zu hört, wie sage ich ihm welcher Farbkanal wie> Hell sein soll? Ich habe gelesen dass eine RGB-LED quasi 3 Channel hat.> Man gibt die Adresse des Gerätes an, gibt dann die Intensität des 1ten> Channels an und dann mittels Adress-Inkrement immer so weiter bis alle> Channel eingestellt sind.. stimmt das so?
Am Gerät stellt man ein auf welchen Kanal ein Gerät reagiert. Gibt es
mehrere Kanäle für ein Gerät wird nur der "erste" eingestellt.
(Einstellung 120 bei einem Moving Head mit 16 Kanälen = Kanal 120 bis
135 werden ausgewertet)
Eine RGB Leuchte mit 3 Kanälen regiert z.B. bei der Einstellung DMX001
auf 1,2,3 jeder der Kanäle enthält einen Wert von 0-255. 1 = R, 2 = G, 3
= B
> 3) Inkrementiert das DMX-Netzwerk automatisch die Adresse? Heißt wenn> ich nach dem Reset einfach Werte ins Netzwerk Takte, werden dann die> DMX-Slaves intern mitzählen (bei Null beginnend) und dann Ihren Wert> entsprechend rausgreifen?
Richtig. Das Timing ist hier enscheidend, vor allem die länge der breaks
/ reset.
> Dann könnte ich ja einfach 512 mal 0xFF ins Netzwerk packen und quasi> mitzählen wann die LED-Leiste anspricht.. dann wüsste ich die Adresse.> Is das so Richtig?
Nein. Du sendest nur die Blöcke die gebraucht werden. Danach kommt eine
Pause um das Ende des Frame anzuzeigen. Brauchst du nur 3 Kanäle, werden
auch nur die 3 gesendet. Je mehr du sendest, desto geringer die
Widerholrate.
Eine eigene Frage?
Dieser Thread ist über 9 Jahre alt.
Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.