Przystępując do opisu
zakładamy, że Czytelnik posiada wiedzę na temat
podstaw elektroniki i techniki cyfrowej i transmisji
szeregowej.
DMX jest systemem cyfrowym, to znaczy, że bity
reprezentowane są przez poziomy napięć 1 (wysoki, HI)
i 0 (niski, LO). Szerzej o tym na stronie Połączenie.Sygnał
jest taktowany zegarem 250kHz, co odpowiada długości
pojedynczego bitu - 4 mikrosekundy.
1. Brak sygnału.
Ten stan sygnalizowany jest przez występowanie stałego
poziomu HI na linii.
2. Break.
Początek pakietu zapowiadany jest przez wystąpienie
stanu LO na czas minimum 88 mikrosekund.
Odpowiada to wysłaniu 22 bitów LO na linię
transmisyjną.
Sygnał Break może trwać dłużej, lecz nie może
być krótszy niż 88 mikrosekund.
Z reguły Break trwa ok. 100-120 mikrosekund.
3. Mark After Break (MAB).
MAB następuje natychmiast po zakończeniu Break i ma
postać impulsu HI o czasie minimum 8 mikrosekund (2
bitów).
Tutaj pojawił się problem - w pierwszym standardzie DMX
czas ten wynosił 4 mikrosekundy (1 bit), w obecnym DMX
(1990) - 8 mikrosekund (2 bity).
Powoduje to problemy przy współpracy nowych konsolet ze
starymi urządzeniami i na odwrót.
W wyniku niezgodności cały pakiet może zostać
odrzucony jako błędny lub dane trafią do innych
kanałów niż powinny. Co to oznacza np. dla skanera
albo głowy - lepiej nie mówić...
Należy zawsze się upewnić co do zgodności urządzeń.
Niektóre z nich mają dedykowany przełącznik dla
zmiany czasu MAB. Maksymalny czas trwania MAB wynosi 1
sekundę.
4. Start Code (SC).
SC następuje zaraz po MAB i posiada format jak kanały
danych.
Jego długość to 11 bitów (44 mikrosekundy) i jest
informacją o początku strumienia danych.
W rzeczywistości SC to dane dla nieistniejącego kanału
nr 0 (zero) i jego wartość wynosi także zero.
Struktura tego i wszystkich następnych kodów
kanałowych (ramki)jest następująca:
- pierwszy bit jest bitem startu (początkowym) i zawsze
jest LO;
- osiem następnych bitów to bity danych;
- dwa ostatnie bity to bity stopu (końcowe) i zawsze są
HI.
W chwili obecnej SC MUSI mieć wartość
zero.
5. Mark Time Between Frames (MTBF).
Jego długość może wynosić od 0 do 1 sekundy, im
krótszy tym lepszy.
MTBF oddziela bity stopu jednego kanału od bitu startu
następnego i jest obowiązkowo HI.
6. Channel Data (CD).
Dane dla kolejnych kanałów, w formacie jak dla SC, od
kanału 1 do 512 (lub mniej), rozdzielone MTBF.
7. Mark Time Between Packets (MTBP).
Po nadaniu danych ostatniego kanału linia
zostaje wprowadzona w stan HI. Czas ten to MTBP, może
wynosić od 0 do 1 sekundy. Powyżej 1 sekundy jest
traktowany jako przerwa w nadawaniu (brak sygnału -
BREAK - punkt 1).
Potem wszystko zaczyna się od nowa: MTBP, Break,
MAB,SC,CD, MTBF, CD, [MTBF, CD...] MTBP...
Bardzo miłą sprawą jest to, że nie ma przymusu
wysyłania wszystkich 512 kanałów w pakiecie.
Każdy odbiornik posiada wewnętrzny licznik podający
numer aktualnie wysyłanego CD. Jeżeli zostanie wykryty
stan MTBP, licznik ten zostaje wyzerowany i urządzenie
odbiera kanały od numeru 1.
Jeżeli np. budujemy 16-kanałowy pulpit to po nadaniu 16
CD można ustawić na linii MTBP i nadawać znowu od
kanału pierwszego, urządzenia będą w stanie
zdekodować taki sygnał. Oczywiście jeśli adres w
urządzeniu będzie wyższy od naszego 16 to nic się nie
będzie działo...
Tabela czasów dla sygnału USITT DMX
512 (1990)
Element |
Min
[usec] |
Typ
[usec] |
Max
[usec] |
Break |
88 |
88 |
1 000 000 |
MAB |
|
8 |
|
Ramka |
|
44 |
|
Bity Start/Stop/Dane |
|
4 |
|
MTBF |
0 |
NS* |
1 000 000 |
MTBP |
0 |
NS* |
1 000 000 |
*NS - Not Specified - ustalane przez
projektanta nadajnika, musi się zawierać między Min a
Max
Wykres sygnału DMX (1 pakiet)

|