2002 年 9 月
第 13 卷 第 3 期
照明工程学报
ZHAOMING GONGCHENG XUEBAO
Sep1 2002
Vol113 No13
DMX512 控制协议及其实现
方福波 刘有源 陈定方
(武汉理工大学 , 武汉 430063)
摘 要 : 本文介绍了一种数字调光协议 DMX512 协议 , 主要介绍了该协议所规定的数据格式、传送格式、电缆、连
接器、终结器等 , 给出了软硬件实现
方法
快递客服问题件处理详细方法山木方法pdf计算方法pdf华与华方法下载八字理论方法下载
。
关键词 : DMX512 ; 数据包 ; 控制器 ; 调光器 ; 单片机
The Protocol and Realization of DMX512
Fang Fubo Liu Youyuan Chen Dingfang
( Wuhan University of Technology , Wuhan 430063)
Abstract
This paper introduces a digital Multiplexing standard , and the data format , data transmission , cable , con2
nector , terminator are explained. Meanwhile , this paper provides the scheme to realize the system with hardware
and softward.
Key words : DMX512 ; Data packet ; controller ; dimmer ; Microcontroller
引言
DMX512 协议是美国剧场技术协会 ( United
States Institute for Theater Technology , USITT) 制定的数
字多路复用协议 , 其制定的初衷是为了使舞台、剧
场等地所使用的众多的调光器和控制器能相互兼容。
虽然它不是一个行业或国家
标准
excel标准偏差excel标准偏差函数exl标准差函数国标检验抽样标准表免费下载红头文件格式标准下载
, 但是由于它的简
单性和实用性 , 自从出台以来 , 得到了世界各地生
产商和使用者普遍承认。在国内也有越来越多的生
产厂家在生产或关注采用 DMX512 协议的数字调光
设备。
1 DMX512 协议简介
DMX512 是一个数字调光协议 , 应用它能够对
舞台、剧场、演播室等场所的调光器及其他的控制
设备进行数字控制 , 适用于一点多点的主从式控制
系统 , 其互连形式采用了多点总线结构 , 不存在信
息通路阻塞问
题
快递公司问题件快递公司问题件货款处理关于圆的周长面积重点题型关于解方程组的题及答案关于南海问题
, 其连线简单 , 可靠性高 , 系统结
构如图 1 所示。
图 1 DMX512 系统结构
协议对数据的格式、数据的传输、联接电缆和
连接方式、联结器、终结器等做了规定。
111 数据的格式及传输
DMX512 协议规定数据以数据包的形式通过异步
通讯的方式进行传输。每个数据包由若干数据帧组
成 , 每帧数据包括 1 位低电平起始位、8 位数据位和
2 位高电平停止位。DMX协议要求数据传输的波特率
为 250kbΠs , 亦即每位的传输时间为 4us , 每帧数据的
传输时间为 44us , 它支持多达 512 帧数据传输 , 每帧
数据与相应的控制支路相对应。数据包的传送要符合
一定的格式和时序要求。为了使接收器能够分辨出第
一帧数据 , 每一个数据包以一个不短于 88us 的低电
平信号为起始信号 , 即所谓的“Break”信号 , 接收
器接收到“Break”信号就准备接受随后而来的数据
帧 ; 紧接着“Break”信号之后是不短于 8us 的高电平
信号M. a. b (Mark after Break) ; 之后就是数据帧。
在 DMX512 协议中 , M. a. b 之后的第一帧数据被称
为“Start2code”, 在协议中规定其为零 , 但在实际应
用中可以由生产厂家自己确定其具体的值 , 以传递特
殊消息。“Start2code”标明其后面的数据是 8 位控制
信号数据帧。数据帧之间可以有时间间隔 , 也可以没
有 ; 同样 , 数据包之间可以有时间间隔 , 也可以没
有。DMX512 协议规定“Break”信号、M. a. b 信号
的最短时间 , 并规定“Break”信号、M. a. b 信号、
数据帧之间及数据包之间的时间间隔的最大值不得超
过 1s , 否则做出错处理 , 但是 DMX512 协议并未对出
错处理做任何规定。DMX512 协议所规定的数据格式
如图 2 所示。控制器和接收器都必须严格满足
DMX512 数据的时序要求 , 实现各设备的兼容性的关
键也就在于此处。
图 2 DMX512 数据包格式
112 联接电缆
联接电缆是 DMX512 系统中相当重要的一个环
节 , 众多的系统故障都是由电缆引起。DMX512 协
议规定所用电缆必须符合 EIA485 规范。DMX512 系
统采用 EIA485 差动方式传输数据 , 因此数据传输距
离较远 , 最大可达 1km。为了达到好的传输质量和
远的传输距离 , DMX512 协议要求所用电缆为全编
织的双绞或多绞线 , 并且用金属箔屏蔽 , 电缆电压
降要小 , 要能够承受足够大的应力 , 有良好的机械
性能。DMX512 系统中电缆通过 5 引脚 XLR 连接头
与设备相连接 , 其中公头与电缆连接 , 母头与控制
设备相连 , 实际在目前的协议中只有 3 引脚是必须
的 , 保留另外一对引脚的应用 , 以备 DMX512 后期
版本的扩展 , 在目前的系统中这对引脚可以用来作
为信息反馈传输线。连接头 5 引脚的定义如下 :
PIN 1 地线 (屏蔽线)
PIN 2 控制信号负极 (Datal - )
PIN 3 控制信号正极 (Datal + )
PIN 4 可选信号负极 (Data2 - )
PIN 5 可选信号正极 (Data2 + )
113 终结器
在系统最末一个调光器上必须装上终结器 , 也
就是在连接头的 2 脚和 3 脚间接上一适当阻值的电
阻。如果终端电阻不适合 , 当数据信号到达最末的
调光器时 , 信号会被反射到控制器 , 对于一定长度
的导线和一定的环境中时 , 反射信号足以覆盖真实
信号 , 而导致误动。在 DMX512 系统中所用电缆的
阻抗大约为 85~150 欧姆 , 终结器电阻阻值应与电
缆阻抗相匹配。
2 控制系统的实现
DMX512 系统包括四个部分 : 发送控制信息的控
制器、传输信号的电缆、接收信号并进行控制动作的
调光器和终结器。控制器可选用微机或单片机。采用
微机可以很方便的实现可视化控制 , 可以随时进行远
程控制 , 但如果直接采用微机发送数据 , 则无法满足
DMX512 的数据时序要求 , 而实现 DMX512 的关键就
在于满足 DMX512 协议所规定的数据发送和接受时序
要求。在对适时性要求不高的场合可采用微机与单片
机结合的方法 , 微机和单片机之间采用串口通讯传递
控制信息 , 而由单片机发出满足 DMX512 的数据时序
的数据包 ; 而在对适时性要求较高的场合用微机进行
控制则需要开发实现数据时序转换的转接卡 , 这涉及
到 ISA 或 PCI板卡的开发 , 本文不做讨论。系统要做
的一件很重要的事就是分辨出数据包的起始点以正确
的接收数据 , 这可以利用中断服务来实现。利用定时
器是很方便的 , 但由于在控制系统中定时器有可能作
为他用 , 而系统又必须在某段不间断的检测数据的起
始位置 , 为了不占用系统的定时器资源 , 可用程序计
数来解决。采用单片机发送和接收数据的系统简图
(图 3) 如下。
图 3 控制系统简图
控制器端的主要任务就是发出满足 DMX512 的
95第 13 卷第 3 期 方福波等 : DMX512 控制协议及其实现
数据时序要求的控制信息数据包 , 为了达到 250kbΠs
波特率的异步 11 位数据传送的要求 , 控制器端单片
机可工作在方式 2 状态 , 单片机晶振可采用 8M 或
16M。发送数据程序流程如图 4 所示 :
接收端通过外部中断响应来检测数据的起始位
置 , 当接收到 Break 信号后 , 系统相关计数变量寄
存器复位 , 准备接收数据 ; 当接收到 Start code 信号
后 , 对其后面的数据帧进行计数 , 当数据帧数与预
设的本机地址相等时接收该帧数据并停止本机串口
接收数据 , 开始检测是否有 Break 信号 , 否则就放
弃该帧数据 , 等待下一帧数据。为了不占用定时器
设置串口工作方式
开串口中断
T
P311 = 0
延时 88us 以上
P311 = 1
F
发送数据帧
延时
清 TI
数据包发送完 ?
T
发送下一数据包 ?
F
其他处理程序
图 4 发送程序流程图
资源 , 采用程序计时 , 由外部中断 0 触发计时 , 由
外部中断 1 停止计时。由于接收端在响应串口中断
后有响应的处理程序 , 要花费一定的时间 , 为了保
证数据帧的正确接收 , 单片机的处理速度应尽量的
快 , 串口中断响应程序执行时间不得超过 44us。为
了满足数据的时序要求并提高单片机处理的速度 ,
单片机应采用 16M 晶振。接收端相关程序流程图
(图 5) 如下。
接收端主程序流程 :
开始
设置串口工作方式
设置中断优先级
开外部中断 0
其他处理程序
图 5 接收端主程序流程图
外部中断 0 服务程序流程 (图 6) :
开始
关外部中断 0
调用计时子程序
开外部中断 1
图 6 接收端外部中断 0 程序流程图
外部中断 1 服务程序流程和串口中断服务程序流程
(图 7 和图 8) :
开始
关外部中断 1
停止计时
计时时间 > 88us ?F
开外部中断 0 T
计时时间 < 1s ?
F
T
数据帧计数寄存器 R3 、R4 复
开串口中断 错误处理子程序
中断返回
图 7 接收端外部中断 1 程序流程图
06 照明工程学报 2002 年 9 月
开 始
读取串口数据
SBUF →A
数据标志 data = 1 ?F
置 data 标志
T
R3 + R4 = 本机地址 ?
F
R3 加 1
R3 > 255 ?
T
R4 加 1F
T
保存数据
关串口中断
清 data 标志
开外部中断 0
清 RI
中断返回
图 8 接收端串口中断程序流程图
参 考 文 献
[1 ] Adam Bennette. Recommended Practice for DMX512.
London , 1994.
[2 ] Steven B. Carlson. A Guide Tour of DMX512. http :
∥www. roscoet. com/ dmxtour. htm , 1996.
[3 ] A Simple Guide to Understanding DMX. http : ∥www.
cheaplights. com.
[4 ] Ben Joseph Akiba. DMX512/ 1990 Digital Data Trans2
mission. http : ∥ mouse. host. sk/ download/
dmx512. txt , 1990. 4.
[5 ] 胡汉才 . 单片机原理及其接口技术. 北京 : 清华
大学出版社 , 1996. 7.
[6 ] 李华. MCS251 系列单片机实用接口技术 , 北京 :
北京航天航空大学出版社 , 1993. 8.
(上接第 57 页)
另外 , 为避免灯具温度过高而使灯泡、电器寿
命缩短 , 电器元件绝缘性能降低 , 对隧道灯具内部
热量的处理也正在受到逐步重视。可以采用用石棉
等导热性差的
材料
关于××同志的政审材料调查表环保先进个人材料国家普通话测试材料农民专业合作社注销四查四问剖析材料
隔热 , 采用散热片、散热孔、散
热助散热。国外还有采用散热导筒加扇强迫通风散
热方式。较为理想的是在隧道灯具上设置专用通气
孔 , 气孔中安装活性碳过滤器 , 有效散热的同时 ,
吸附外部空气中的脏物 , 避免灯具内污染和老化。
4 结束语
我国高等级公路的建设和发展 , 极大地促进了
隧道灯具发展。全行业应通力合作 , 从理论研究 ,
灯具零部件、电器制造等多方面努力提高我国隧道
灯具的技术水平。
当今社会 , 公路隧道灯具技术发展日新月异。
为了提高公路隧道照明质量 , 保证行车安全 , 适应
人们价值观念的变化 , 公路隧道灯具将向高效节能 ,
突出现代照明技术的作用 , 适应隧道环境的方向发
展。
参 考 文 献
[1 ] 北京照明学会照明
设计
领导形象设计圆作业设计ao工艺污水处理厂设计附属工程施工组织设计清扫机器人结构设计
专业委员会. 照明设计手
册. 北京 : 中国电力出版社 , 1998
16第 13 卷第 3 期 方福波等 : DMX512 控制协议及其实现