DMX 是Digital MultipleX 的缩写,意为多路数字传输(具有512条信息的数字多路复用”)。DMX512控制协议是美国舞台灯光协会(usITT)于1990年发布的灯光控制器与灯具设备进行数据传输的工业标准,全称是USITTDMX512(1990);
DMX512 在其物理层采用EIA-485差分信号,结合可变尺寸,基于分组的通信协议。它是单向的。DMX512不包含自动错误检查和纠正功能,因此不适用于危险应用,如烟火或舞台装置的移动。电磁干扰,静电放电,不正确的电缆端接,电缆过长或电缆质量都可能造成虚假触发,但是在连接控制器(如照明控制台)与调光器和特效设备等都有广泛应用。
2、DMX512协议分析
2.1、DMX512指令帧介绍:
每一个DMX 控制字节叫做一个指令帧,称作一个控制通道,可以控制灯光设备的一个或几个功能。一个DMX 指令帧由1个开始位(S)、8个数据位(D0-D8)和2个结束位(E)共11位构成,采用单向异步串行传输,如图1所示。
图1 DMX512 定时程序的帧结构(上图)和信息包结构(下图)
图1 中虚线内控制指令中的S 为开始位,宽度为一个比特,是受控灯具准备接收并解码控制数据的开始标志;
E为结束位,宽度为两个比特,表示一个指令帧的结束;
D0~ D7为8 位控制数据,其电平组合从00000000一11111111 共有256个状态(对应十进制数的0~255),控制灯光的亮度时,可产生256个亮度等级,0000~ (0)对应灯光最暗,11111111(255)对应灯光最亮。
DMX512指令的位宽(每比特宽度)是4 us,每一个指令帧11位,故指令帧宽度为44 us,传输速率为1/44us = 250 kbps。
2.2、DMX512信息包
一个完整的DMX512信息包(Packet)由一个M