DMX512 (někdy také Digital Multiplex) je povelový protokol pro digitální přenos řídících informací, vyvinutý pro řízení světelné jevištní techniky a světelných efektů. Jde o digitální náhradu analogového řízení, kde základní řídicí veličinou je konkrétní hodnota napětí. Specifikace vychází z průmyslového standardu EIA485, který byl dříve značen jako RS-485, případně RS485. Protokol není opatřen časovými značkami, není opatřen kódováním ani jinou ochranou signálu, ani nepřenáší zpětnou vazbu. Z tohoto důvodu jsou z ovládaných zařízení vyloučena zařízení pro pyrotechnické efekty, protože protokol nezaručuje ochranu proti náhodnému odpálení při poruše signálu.

Historie vzniku

editovat

Protokol DMX512 byl navržen v roce 1986 institutem USITT [1] pro řízení stmívačů a dalších speciálních efektů pomocí digitálního rozhraní. Měl nahradit do té doby používané analogové řízení, kde jako řídící veličina sloužila konkrétní hodnota napětí na řídícím kabelu. S tím bylo spojeno hned několik potíží: Pro každý řízený vstup (např. jeden kanál stmívače) byl potřeba jeden vodič, navíc nebyla vždy přesně dána řídící veličina, neboť vlivem výrobních tolerancí mohla různá zařízení chápat či vydávat mírně odlišné povely. Také analogový přenos byl náchylnější na rušení, což v blízkosti výkonných stmívacích a spínacích jednotek (zdroje rušení) bylo nevýhodné. Různí výrobci pro svá zařízení používali různé způsoby ovládání, s různými typy kabeláže, což znesnadňovalo až znemožňovalo jejich vzájemné propojování do rozsáhlejších celků.

Základem protokolu DMX512 je jeho elektrická specifikace. Ta vychází z osvědčeného průmyslového standardu EIA485 (dříve značeno RS-485 popř. RS485), a vzhledem k používání tohoto standardu v průmyslu jsou i technické prostředky pro jeho implementaci levné a přizpůsobené pro náročné podmínky.

Elektrická specifikace (EIA485)

editovat
  • Diferenciální (symetrický) napěťový přenos po kroucené dvoulince se schopností pracovat od napájecího napětí +5 V
  • Rozsah přípustného napětí na sběrnici od -7 V do +12 V
  • Možnost připojení až 32 přijímačů v jednom segmentu (existují budiče umožňující použít až 256 přijímačů)
  • Impedanční přizpůsobení linky – odporem (terminátor) 120 Ohmů
  • Minimální zatěžovací impedance vysílače je 60 Ohmů
  • Maximální zkratový proud vysílače je 150 mA proti zemi, 250 mA proti 12 V
  • Maximální délka kabelu je 4000 stop (přibližně 1200 m) při přenosové rychlosti max. 400 kBit/s.
  • Počet segmentů není limitován
  • Budič musí být schopen dodat na sběrnici rozdílové vstupní napětí od 1,5 do 5 V
  • Budič musí mít ochranu pro případ, že by se více budičů pokoušelo vysílat na sběrnici
  • Přijímač by měl mít minimální vstupní impedanci 12 kOhmů
  • Přijímač musí mít minimální vstupní citlivost +- 200 mV
  • Toto vše musí být přijímač schopen zpracovat i při souhlasném stejnosměrném napětí na sběrnici od -7 V do +12 V.

Jako převodníky mezi úrovní TTL a EIA485 jsou běžně dostupné obvody např. SN75176B od Texas Instruments v provedení DIP 8 či SOP 8, který používá například interface DMX PIPE, nebo dražší a méně dostupné obvody MAX485 od Maxim Integrated Products, nebo jejich levnější ekvivalent mnohých výrobců, jako např. ADM485, ST485, atp. Pro galvanické oddělení existuje i řada dalších obvodů, které mají vše potřebné na jednom čipu. Jde např. o obvody ISO485P od Burr-Brown, nebo ADUM5241 od Analog Devices.

Datový formát DMX512

editovat

Přenosová rychlost protokolu DMX512 byla stanovena na 250 kBit/s(1. Data jsou po sběrnici posílána sériově a jak název napovídá, paketem obsahujícím maximálně 512 datových bajtů. Po sběrnici se posílají pouze data bez adresy. Každé zařízení má nastavenou svou vlastní počáteční adresu a od této adresy přečte požadovaný počet bajtů. Počáteční adresa může tedy nabývat hodnotu 0 až 511. Budou-li mít dvě stejná zařízení stejnou adresu, budou také na posílané povely reagovat společně. Tak lze připojit ke sběrnici i více zařízení - za předpokladu, že bude jejich funkce společná. Časování v protokolu DMX512 je vyobrazeno na obrázku 1 a příslušné hodnoty jsou v tabulce 1.

Klidový stav sběrnice je logická 1. Přenos je realizován asynchronně a jeho začátek je synchronizován vysláním nulové úrovně „Break“ (Reset), která musí trvat nejméně 88 us, a následující synchronizační mezerou MAB (Mark After Break) s vysokou úrovní a minimální délkou trvání 8 us. Dále následuje první poslaný rámec (start code) a za ním zbývajících 512 datových rámců. Každý rámec (přenesený bajt) se skládá z jednoho start bitu, osmi datových bitů bez parity a dvěma stop bity. Mezi jednotlivými rámci mohou být mezery MTBF (Mark Time Between Frames) a MTBP (Mark Time Between Packet) v délce nejvíce 1 s.

 

Obrázek 1 – Časový diagram přenosu jednoho datového paketu v protokolu DMX512

Tabulka 1 – Přehled časování protokolu DMX512/1998
č. Popis Min. Typ. Max. Jednotky
1 Break (Reset) 88 88 μs
2 MAB (synchronizační mezera) 8  - 1 s μs
3 Rámec 43,12 44,0 44,48 μs
4 Start bit 3,92 4,0 4,08 μs
5 LSB (první datový bit) 3,92 4,0 4,08 μs
6 MSB (poslední datový bit) 3,92 4,0 4,08 μs
7 Stop bit 3,92 4,0 4,08 μs
8 MTBF (mezera mezi rámci) 0 0 1,00 s
9 MTBP (mezera mezi pakety) 0 0 1,00 s

Z přenosové rychlosti 250 kBit/s vyplývají následující časové údaje: Doba trvání jednoho bitu je 4 us a datového rámce 44 us (11 bitů). Celý přenos s celkovým počtem 512 datových bajtů má délku trvání danou následující rovnicí:

Break + MAB + (1 + 512) * rámec = 88 + 8 + 513 * 44 = 22668 us

Z toho vyplývá nejvyšší opakovací frekvence přibližně 44,12 Hz při plně využité sběrnici.

Další stavy, které se mohou na sběrnici objevit, jsou dlouhodobý výskyt vysoké, nebo nízké úrovně. Pakliže je delší než 1 s, je stav vyhodnocen jako ztráta signálu. Reakce na tento stav je nechána na libovůli výrobce. Často zařízení setrvávají v naposledy nastavené pozici, někdy se resetují.


1) Převodní jednotka „k“ má hodnotu 1000 a trvání bitu je 4 us.

2) V normě je tento rámec definovaný jako nulový, za předpokladu, že následující datové bajty se budou týkat pouze stmívacích jednotek. V praxi je však jeho hodnota ignorována, neboť jsou mnohdy na jedné sběrnici společně stmívače a jiná zařízení. Dodržení této normy by přineslo komplikace s potřebou měnit tuto hodnotu, a tím by došlo k násobnému zvýšení latence.

Propojení jednotek protokolem DMX512

editovat

Samotné jednotky jsou zapojeny v topologii sběrnice, kde na straně vysílače a přijímače musí být zakončovací odpor (terminátor). Lze použít také rozbočovačů (splitters) a opakovačů (repeaters). Příklad takového zapojení modulů je uveden na obrázku 2.

 
Zapojení sběrnice DMX 512

Jak již bylo v úvodu řečeno, pro propojení se používá symetrického kabelu, tedy dvou aktivních datových vodičů se společným stíněním. Podle normy DMX512/1998 je standardní konektor pětipinový XLR, kde je zásuvka na straně vysílače a vidlice na straně přijímače, avšak v praxi se setkáte s používáním třípinové verze konektoru XLR. Pro propojení modulů je někdy navrhováno použití symetrického mikrofonního kabelu. V tomto případě je ale důležité zkontrolovat, zdali není stínění zapojeno na kostru konektoru. Správně podle normy musí být na pinu číslo 1. Podle manuálového listu od výrobce osvětlovací techniky American DJ případné připojení stínění na kovový kryt konektoru může zapříčinit zkrat nebo nevyzpytatelné chování. Zapojení konektoru XLR je vyobrazeno na obrázku 3, zapojení propojovacího kabelu v tabulce 2 a zapojení redukce mezi tří a pětipinovým konektorem je v tabulce 3.

 
Rozmístění pinů na konektoru XLR


Zapojení kabelu ke konektoru XLR
Pin Vodič Signál
1 stínění Zem 0V
2 1 pár (black) Data-
3 1 pár (white) Data+
4 (již se nepoužívá) 2 páry (green) Data2-
5 (již se nepoužívá) 2 páry (red) Data2+


Tabulka 3 – Zapojení redukce mezi 3 pinovým a 5 pinovým konektorem XLR

Externí odkazy

editovat

[1] Oficiální stránky institutu USITT

[2] Řízení světelné techniky komunikující protokolem DMX512

[3] Česko-slovenský web věnující se osvětlování Archivováno 18. 12. 2014 na Wayback Machine.