Teorie

Protokol DMX512

1.1 Historie vzniku

    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í[1] 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 samozřejmě náchylnější na rušení, což v blízkosti několika kilowattových stmívacích jednotek nebylo zrovna veliké plus. 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.

1.2 Technická specifikace EIA485

  • 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 [2] v provedení DIP 8 či SOP 8, nebo dražší a méně dostupné obvody MAX485 od Maxim Integrated Products [3]. 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 [4].

1.3 Popis datového formátu DMX512

    Přenosová rychlost protokolu DMX512 byla stanovena na 250 kBit/s[2]. 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 4.1 převzatého ze stránky Soundlight [33] a příslušné hodnoty jsou v tabulce 4.1. Přenos je realizován asynchronně a jeho začátek je synchronizován nulovou ú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)[3] 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. Některé starší zařízení (jde opravdu o vzácné vyjímky) však mohou mít problém s nulovou mezerou u MTBF. HW pulty pro ovládání mívají právě tuto mezeru nenulovou narozdíl od některých USB kontrolérů.

Obr. 1 - Časový diagram přenosu jednoho datového paketu v protokolu DMX512



číslo Popis Min. Typ. Max. Jednotka
1 Break (Reset) 88 us 176 us 1 s v tabluce
2 MAB (synch. mezera) 8 us - 1 s v tabulce
3 Rámec 43,12 44 44,48 us
4 Start bit 3.92 4 4.08 us
5 LSB (první dat. bit) 3.92 4 4.08 us
6 MSB (poslední dat. bit) 3.92 4 4.08 us
7 Stop bit 3.92 4 4.08 us
8 MTBF (mezera mezi rámci) 0 0 1 s
9 MTBP 0 0 1 s
Tab. 1 - Přehled časování protokolu DMX512/1998



    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 = 22,668 ms

    Z toho vyplývá nejvyšší opakovací frekvence přibližně 44,12 Hz při plně využité sběrnici. Tato hodnota je pro naše účely dostačující.
    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í. Samotné moduly 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 následujícím obrázku.


Obr. 2 – Zapojení sběrnice DMX512


    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 jsem se setkal zatím jen 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, zda-li 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 ří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 čtyřpinovým konektorem je v tabulce 3.


Obr. 3 - Rozmístění pinů na konektoru XLR 5-Pin a 3-Pin




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




Vodič 3-Pin XLR zásuvka (Výstup) 5-Pin XLR vidlice (Vstup)
GND / Stínění Pin 1 Pin 1
Data- Pin 2 Pin 2
Data+ Pin 3 Pin 3
Data2- - Pin 4
Data2+ - Pin 5
Tab. 3 - Zapojení redukce mezi 3 pinovým a 5 pinovým konektorem XLR


_____________________________________
[1]  z rozsahu 0 až 10 V
[2]  Převodní jednotka „k“ má hodnotu 1000 a trvání bitu je 4 us.
[3]  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.

Rychlý kontakt

Eshop: +420 272 272 500
eshop@soh.cz

Pronájem: +420 272 272 501
pronajem@soh.cz


Podporují nás

SOH.cz je účastníkem programu OPPI.


SOH.cz je účastníkem programu OPPI.


SOH.cz je účastníkem programu OPPI.


Ocenění

Ocenění Ocenění Ocenění Ocenění Ocenění Ocenění Ocenění


CZE ENG SVK GER FRA ESP RUS

SOH podpora Teorie