DMX: Unterschied zwischen den Versionen

Aus Ethersex_Wiki
Wechseln zu: Navigation, Suche
K (hat „Ethersex/dmx“ nach „DMX“ verschoben: vertan)
 
(26 dazwischenliegende Versionen von 4 Benutzern werden nicht angezeigt)
Zeile 3: Zeile 3:
  
 
== Konfiguration ==
 
== Konfiguration ==
 +
In menuconfig:
 +
 +
    ┌──────────────────────────────────────────────────────────────────────────┐
 +
  │ │                Load a Default Configuration  --->                        │ │
 +
  │ │                General Setup  --->                                      │ │
 +
  │ ┌──────────────────────────────────────────────────────────────────────────┐ │
 +
  │ │          [*] Prompt for experimental code                              │ │
 +
  │ │          ...                                                            │ │
 +
  │ └──────────────────────────────────────────────────────────────────────────┘ │
 +
  │ │                Network protocols  --->                                  │ │
 +
  │ │                I/O support  --->                                        │ │
 +
  │ ┌──────────────────────────────────────────────────────────────────────────┐ │
 +
  │ │          (Full-featured) I/O abstraction model (Port I/O)              │ │
 +
  │ │          [ ] HC595 output expansion                                    │ │
 +
  │ │          [ ] HC165 input expansion  (EXPERIMENTAL)  --->                │ │
 +
  │ │          [ ] PS/2 keyboard                                              │ │
 +
  │ │          [-] PS/2: Use German layout                                    │ │
 +
  │ │          [ ] HD44780 module driver (Character-LCD)  --->                │ │
 +
  │ │          [ ] S1D15G10 module driver (130x130-R/G/B-LCD)                │ │
 +
  │ │          [ ] TTY Layer (EXPERIMENTAL)  --->                            │ │
 +
  │ │          [ ] ADC input                                                  │ │
 +
  │ │          [-] KTY Calculation Support                                    │ │
 +
  │ │          [ ] Onewire support                                            │ │
 +
  │ │          [-]  Onewire device detection support                        │ │
 +
  │ │          [-]  Onewire DS2502 (eeprom) support                          │ │
 +
  │ │          [ ] Named and logic state I/O  --->                            │ │
 +
  │ │          [ ] I2C Master Support (EXPERIMENTAL)  --->                    │ │
 +
  │ │          [ ] Camera support (EXPERIMENTAL)  --->                        │ │
 +
  │ │          [ ] FS20 RF-control  --->                                      │ │
 +
  │ │          [ ] Send RC5 IR-codes                                          │ │
 +
  │ │          [ ] PWM Generator  --->                                        │ │
 +
  │ │          [ ] Game Input  --->                                          │ │
 +
  │ │          [ ] Buttons Input  --->                                        │ │
 +
  │ │          [ ] Blinkenlights - MicroControllerUnitFrame  --->            │ │
 +
  │ │          --- Usart Configuration (0/1)                                  │ │
 +
  │ │          [ ] Modbus Support                                            │ │
 +
  │ │          [*] DMX Support  --->                                          │ │
 +
  │ ┌──────────────────────────────────────────────────────────────────────────┐ │
 +
  │ │                          (512) DMX Max Chan                            │ │
 +
  │ └──────────────────────────────────────────────────────────────────────────┘ │
 +
  │ │          (0)  DMX usart select                                        │ │
 +
    └──────────────────────────────────────────────────────────────────────────┘
 +
 +
* DMX Max Chan: Hier ist die Anzahl der DMX Kanäle zu wählen. Die maximale Anzahl von 512 Kanälen sollten nur bei Bedarf eingestellt werden.
 +
 +
* DMX usart select: Für denn Fall das der AVR mehrere USART's besitzt, kann hier eine dieser gewählt werden. Ansonsten steht die usart: 0 zur Verfügung.
  
 
== Anschluss ==
 
== Anschluss ==
 +
DMX ist physikalisch ein RS485 Bus. Die USART des AVRs wird daher an einen Transreceiver, wie zB. dem MAX485 oder SN75176 angeschlossen.
 +
=== Etherrape ===
 +
Beim Etherrape gestalltet sich dies recht einfach, da schon alles vorbereitet ist. Einfach den IC6 bestücken, JP2 nicht und J3 setzten.
 +
 +
D+ und D- liegen dann an der Pin leiste: RS485 an, wobei A D+ und B D- sind.
 +
 +
Massepunkte hat man ja beim Etherrape reichlich, da sucht man sich dann einen freien aus.
 +
 +
=== Net-IO ===
 +
[http://www.dmxcontrol.de/wiki/Art-Net-Node_für_25_Euro#Hardware Hier] ist das ganz gut beschrieben...
 +
=== Andere ... ===
 +
Der Anschluss eines MAX485 an einen AVR gestaltet sich i.d.R. recht einfach (siehe Datasheet des ICs).
 +
 +
''hier bist Du gefordert, zB für das [[AVR_Webmodul]] ...''
 +
 +
=== Pinning ===
 +
Mit Hilfe des Skripts:
 +
./scripts/add-hardware-brocken [Dateiname]
 +
eine passende Konfiguration erstellen.
 +
 +
Beispiel fürs Etherrape:
 +
 +
ifdef(`conf_DMX', `dnl
 +
  /* port config for dmx */
 +
  pin(DMX_RS485EN_PIN, PC2)
 +
  pin(DMX_RS485TX_PIN, PD1)
 +
')
 +
 +
Beispiel fürs Netio (Aufbau nach Anleitung aus dem Wiki von dmxcontrol, s.o.):
 +
ifdef(`conf_DMX', `dnl
 +
  /* port config for dmx */
 +
  pin(DMX_RS485EN, PD3, OUTPUT)
 +
  pin(DMX_RS485TX, PD1, OUTPUT)
 +
')
 +
 +
Zu beachten ist, das der 'Enable-Pin' des Transreceivers auch auf den AVR gelegt wird!
 +
 +
=== Hinweis ===
 +
Bei größeren Projekten bei denen zB. Erdschleifen potentiell auftreten können, sollte über den Einsatz von Optokopplern nachgedacht werden.
 +
 +
== [[EthersexLightingArchitecture#Git_branch | ECMD]] ==
 +
 +
== Artnet ==
 +
 +
Artnet ist ein DMX-over-IP Protokoll. Es können maximal 512 Channels pro Universe versendet werden. Es ist darauf zu achten, dass das ethersex Gerät im Output Universe 0 zu finden ist (Daten, die angezeigt werden sollen oder auf den DMX Output (RS-485) geleitet werden sollen).
 +
 +
[http://qlc.sourceforge.net/ QLC] z.B. fängt aber erst beim universe 1 zu zählen an. (kann in unter protocols->artnet->output universe geändert werden)
 +
 +
'''Wichtig!''' NET_MAX_FRAME_LENGTH muss >= 572 bytes sein da sonst das ArtDMX (DMX Daten) Paket nicht ganz im uip stack ankommt. (einzustellen in menuconfig - Expertenmodus: an)
  
== ECMD ==
 
  
 
== Ausblick ==
 
== Ausblick ==
 +
DMX soll noch erweitert werden, zB. um:
 +
=== [[Stella_Light| Stella]] ===
 +
Evtl. könnte man das [[Ecmd speed protocol]] und [[Stella_Light#Programme|Stella Control]] auch für DMX nutzen...
 +
 +
=== [[Blinkenlights_MCUF|MCUF]] ===
 +
Das [http://wiki.blinkenarea.org/index.php/Protokolle '''m'''icro'''c'''ontroller '''u'''nit '''f'''rame protocol] bietet sich evtl. auch an.
 +
----
 +
 +
= Links =
 +
== DMX ==
 +
[http://de.wikipedia.org/wiki/DMX_(Lichttechnik) Wikipedia-de]
 +
 +
[http://www.opendmx.net/index.php/DMX_4_Linux OpenDMX]
 +
 +
[http://www.hoelscher-hi.de/hendrik/light/profile.htm Hennes Sites]
 +
 +
[http://llg.cubic.org/dmx4linux/avrdmx.html DMX4Linux 2.6 - A DMX device driver package for Linux]
 +
 +
[http://www.plischka.at/DMX-512.html MiniDMX ]
 +
 +
[http://www.dzionsko.de/elektronic/minidmx/minidmx.htm MiniDMX ]
 +
 +
[http://lutz.in.hagen.de/cms/index.php/projekte/udmx-mod/udmx-art-net/menu-id-43.html uDMX Art-Net_ALT]
 +
 +
[http://www.mikrocontroller.com/de/dmx512.php Grundlagen: DMX]
 +
 +
[http://www.ulrichradig.de/home/index.php/avr/rs232-dmx RS232 -> DMX]
 +
 +
[http://www.soundlight.de/techtips/dmx512/dmx512.htm DMX-512 - was ist das?]
 +
 +
== Bezugsquellen ==
 +
Also das ist keine Werbung! Es wurde darum gebeten, einige DMX fähigen Lampen zu nennen:
 +
 +
http://www.musicstore.de/de_DE/EUR/lightmaXX-LED-RGB-Color-Bar-Short-DMX-Wall-Washer/art-LIG0004983-000
 +
 +
http://www.conrad.de/goto.php?artikel=591317
 +
 +
== Beispielbilder ==
 +
<gallery>
 +
Bild:Artnet-example1.jpg
 +
Bild:Artnet-example2.jpg
 +
Bild:Artnet-example3.jpg
 +
Bild:DMXexample1.jpg
 +
Bild:Artnet_dmxconsole.png
 +
</gallery>
 +
 +
[[Category:Ethersex]]
 +
[[Category:StepByStep]]
 +
[[Category:DMX]]

Aktuelle Version vom 10. August 2011, 01:54 Uhr

DMX / DMX512 / DMX-512/1990

Digital Multiplex ist die Abkürzung für das Protokoll, welches in der Veranstaltungs- und Bühnentechnik Verwendung findet. Es ermöglicht die Ansteuerung von diversen Lampen und Effektstrahlern.

Konfiguration

In menuconfig:

   ┌──────────────────────────────────────────────────────────────────────────┐
 │ │                Load a Default Configuration  --->                        │ │
 │ │                General Setup  --->                                       │ │
 │ ┌──────────────────────────────────────────────────────────────────────────┐ │
 │ │           [*] Prompt for experimental code                               │ │
 │ │           ...                                                            │ │
 │ └──────────────────────────────────────────────────────────────────────────┘ │
 │ │                Network protocols  --->                                   │ │
 │ │                I/O support  --->                                         │ │
 │ ┌──────────────────────────────────────────────────────────────────────────┐ │
 │ │           (Full-featured) I/O abstraction model (Port I/O)               │ │
 │ │           [ ] HC595 output expansion                                     │ │
 │ │           [ ] HC165 input expansion  (EXPERIMENTAL)  --->                │ │
 │ │           [ ] PS/2 keyboard                                              │ │
 │ │           [-] PS/2: Use German layout                                    │ │
 │ │           [ ] HD44780 module driver (Character-LCD)  --->                │ │
 │ │           [ ] S1D15G10 module driver (130x130-R/G/B-LCD)                 │ │
 │ │           [ ] TTY Layer (EXPERIMENTAL)  --->                             │ │
 │ │           [ ] ADC input                                                  │ │
 │ │           [-] KTY Calculation Support                                    │ │
 │ │           [ ] Onewire support                                            │ │
 │ │           [-]   Onewire device detection support                         │ │
 │ │           [-]   Onewire DS2502 (eeprom) support                          │ │
 │ │           [ ] Named and logic state I/O  --->                            │ │
 │ │           [ ] I2C Master Support (EXPERIMENTAL)  --->                    │ │
 │ │           [ ] Camera support (EXPERIMENTAL)  --->                        │ │
 │ │           [ ] FS20 RF-control  --->                                      │ │
 │ │           [ ] Send RC5 IR-codes                                          │ │
 │ │           [ ] PWM Generator  --->                                        │ │
 │ │           [ ] Game Input  --->                                           │ │
 │ │           [ ] Buttons Input  --->                                        │ │
 │ │           [ ] Blinkenlights - MicroControllerUnitFrame  --->             │ │
 │ │           --- Usart Configuration (0/1)                                  │ │
 │ │           [ ] Modbus Support                                             │ │
 │ │           [*] DMX Support  --->                                          │ │
 │ ┌──────────────────────────────────────────────────────────────────────────┐ │
 │ │                           (512) DMX Max Chan                             │ │
 │ └──────────────────────────────────────────────────────────────────────────┘ │
 │ │           (0)   DMX usart select                                         │ │
   └──────────────────────────────────────────────────────────────────────────┘ 

  • DMX Max Chan: Hier ist die Anzahl der DMX Kanäle zu wählen. Die maximale Anzahl von 512 Kanälen sollten nur bei Bedarf eingestellt werden.
  • DMX usart select: Für denn Fall das der AVR mehrere USART's besitzt, kann hier eine dieser gewählt werden. Ansonsten steht die usart: 0 zur Verfügung.

Anschluss

DMX ist physikalisch ein RS485 Bus. Die USART des AVRs wird daher an einen Transreceiver, wie zB. dem MAX485 oder SN75176 angeschlossen.

Etherrape

Beim Etherrape gestalltet sich dies recht einfach, da schon alles vorbereitet ist. Einfach den IC6 bestücken, JP2 nicht und J3 setzten.

D+ und D- liegen dann an der Pin leiste: RS485 an, wobei A D+ und B D- sind.

Massepunkte hat man ja beim Etherrape reichlich, da sucht man sich dann einen freien aus.

Net-IO

Hier ist das ganz gut beschrieben...

Andere ...

Der Anschluss eines MAX485 an einen AVR gestaltet sich i.d.R. recht einfach (siehe Datasheet des ICs).

hier bist Du gefordert, zB für das AVR_Webmodul ...

Pinning

Mit Hilfe des Skripts:

./scripts/add-hardware-brocken [Dateiname]

eine passende Konfiguration erstellen.

Beispiel fürs Etherrape:

ifdef(`conf_DMX', `dnl
  /* port config for dmx */
  pin(DMX_RS485EN_PIN, PC2)
  pin(DMX_RS485TX_PIN, PD1)
')

Beispiel fürs Netio (Aufbau nach Anleitung aus dem Wiki von dmxcontrol, s.o.):

ifdef(`conf_DMX', `dnl
  /* port config for dmx */
  pin(DMX_RS485EN, PD3, OUTPUT)
  pin(DMX_RS485TX, PD1, OUTPUT)
')

Zu beachten ist, das der 'Enable-Pin' des Transreceivers auch auf den AVR gelegt wird!

Hinweis

Bei größeren Projekten bei denen zB. Erdschleifen potentiell auftreten können, sollte über den Einsatz von Optokopplern nachgedacht werden.

ECMD

Artnet

Artnet ist ein DMX-over-IP Protokoll. Es können maximal 512 Channels pro Universe versendet werden. Es ist darauf zu achten, dass das ethersex Gerät im Output Universe 0 zu finden ist (Daten, die angezeigt werden sollen oder auf den DMX Output (RS-485) geleitet werden sollen).

QLC z.B. fängt aber erst beim universe 1 zu zählen an. (kann in unter protocols->artnet->output universe geändert werden)

Wichtig! NET_MAX_FRAME_LENGTH muss >= 572 bytes sein da sonst das ArtDMX (DMX Daten) Paket nicht ganz im uip stack ankommt. (einzustellen in menuconfig - Expertenmodus: an)


Ausblick

DMX soll noch erweitert werden, zB. um:

Stella

Evtl. könnte man das Ecmd speed protocol und Stella Control auch für DMX nutzen...

MCUF

Das microcontroller unit frame protocol bietet sich evtl. auch an.


Links

DMX

Wikipedia-de

OpenDMX

Hennes Sites

DMX4Linux 2.6 - A DMX device driver package for Linux

MiniDMX

MiniDMX

uDMX Art-Net_ALT

Grundlagen: DMX

RS232 -> DMX

DMX-512 - was ist das?

Bezugsquellen

Also das ist keine Werbung! Es wurde darum gebeten, einige DMX fähigen Lampen zu nennen:

http://www.musicstore.de/de_DE/EUR/lightmaXX-LED-RGB-Color-Bar-Short-DMX-Wall-Washer/art-LIG0004983-000

http://www.conrad.de/goto.php?artikel=591317

Beispielbilder