《毕业论文(设计)-基于dmx512 协议的灯光控制信号无线传输设计》由会员分享,可在线阅读,更多相关《毕业论文(设计)-基于dmx512 协议的灯光控制信号无线传输设计(8页珍藏版)》请在金锄头文库上搜索。
1、专业好文档基于基于 DMX512 协议的灯光控制信号无线传输设计协议的灯光控制信号无线传输设计华东师范大学 梁艺, 周卫星, 陈炳锐单片机与嵌入式系统应用. 2009 年第 7 期引 言随着数字化技术和计算机技术的广泛普及,舞台和演播厅等灯光控制系统由传统的模拟控制转变为数字控制。为了解决各厂家设备兼容性问题,美国剧场技术协会(USITT)制定了 DMX512 协议标准。由于该协议简单实用,目前几乎所有的灯光及舞台设备生产厂商都支持该控制协议,使之成为灯光控制的国际标准。由于协议规定 DMX512 信号通过 EIA-485 有线线缆进行传输,这就造成在条件不利于有线布线的环境下设备安装困难。因
2、此,设计一种短距离无线通信系统来代替有线线缆完成信号的传输就显得十分必要。1 DMX512 协议简介DMX512 协议适用于一点对多点的主从式灯光控制系统,主控制器往总线发送控制时序,总线上的其他从灯光设备接收总线数据,提取其对应通道的数据,完成控制信号的接收。协议规定控制信号数据包的传输通过异步通信的方式进行。一个 DMX512 数据包包含起始码和512 个数据帧。数据帧内包含 1 个起始位(低电平)、8 个位数据和 2 个停止位(高电平),没有奇偶校验。DMX512 的信号数据传输率为 250 kbps,数据帧每位宽度为 4s,发送一帧需要 44s。一个数据帧代表了一路控制通道,因此该协议
3、支持 512 路控制通道。一般舞台灯光设备可以同时接受多路通道控制。接受的通道数越多,接收的控制数据量也越大,灯光的表现能力也就越强。譬如,某些舞台激光灯可以根据需要投射出不同图案、颜色甚至字符。 DMX512 数据包的传输要符合一定的格式和时序要求。主要包含 1 个至少 88 s 的低电平输出起始标志(Break)、起始码帧、512 个数据帧和最后的数据包结束标志(高电平)。控制器和接收器只有满足 DMX512 数据包的时序要求,才能正常完成主从机之间的通信。具体的信号时序如图 1 所示。2 系统硬件设计21 系统设计框图专业好文档系统设计的目的是利用无线传输代替有线电缆,解决有线布线困难的
4、问题,因此在设计上必须满足轻便易安置的条件,以保证与原有线系统无缝结合。如图 2 所示,整个系统的硬件结构由微控制器单元(MCU)、射频收发单元和电源管理单元 3 部分组成。在工作方式上,一方面发射模块的 MCU 单元接收 DMX512 控制端的总线数据,分析并拆解总线数据,然后将数据经过适当处理之后通过射频发送单元发送出去;另一方面接收模块在接收无线数据之后,由 MCU 单元将数据整合重组,在接收端总线恢复 DMX512 控制信号。这样设计的好处是可以将有线和无线传输相结合。在接收端架设一个无线接收模块就可以保证该区域 DMX512 控制信号得到有效传输,并不需要为每个设备都安置一个无线接收
5、模块。22 微控制器单元本系统的微控制器采用了 STC 系列单片机 STC12C5410。该单片机含有 12 KB 的 Flash 存储器、512 字节 RAM、异步串口(UART)和内部 PLL 单元等。内置的 SPI 总线控制器可以方便地与射频芯片 CC1100 通信,而内部的 ISP(在线可编程)模块允许用户直接通过串口下载程序,给系统软件升级带来便捷条件。由于 DMX512 的数据波特率为 250 kbps,所以选取 16 MHz 晶振作为时钟源,以便产生同频波特率。23 射频收发单元CC1100 是一款低功耗单片射频收发芯片,具有通信距离远、功耗低、接口灵活等优点。该芯片主要设定工作
6、在 315 MHz、433 MHz、868 MHz 和 915 MHz 的工业、科学和医学波段;数据速率支持 12500 kbps 的可编程控制;提供-3010 dBm 的输出功率;最大空地发射距离大于200 m,工作电压为 1836 V;最大支持 64 字节的接收和发送 FIFO。设计人员可以通过 SPI接口完成内部寄存器配置,读写接收发送 FIFO 等内部控制。24 接口电路设计接口电路的设计主要包括 2 部分:DMX512 总线与单片机之间的通信,以及单片机控制 CC1100 射频模块收发数据。由于 DMX512 总线数据帧格式与通用异步串口(UART)格式基本兼容,因此系统与 DMX5
7、12 总线的通信利用串口通信接口。但 DMX512 信号的电气接口标准是 EIA-485,与单片机的 TTL 电平接口不兼容,要实现相互通信,需要采用电平转换芯片作为桥接电路。在分解专业好文档和还原 DMX512 总线数据上,分别采用 MC3486 和 MC3487。在系统发送端,通过 MC3486 将DMX512 总线的差分数据转换为 TTL 电平数据,由单片机的串口接收数据;另外,串口的该引脚还同时连接到单片机的 P32INTO 口,用于识别 DMX512 总线的起始标志(Break),提前通知单片机准备接收总线数据。在系统接收端,通过 MC3487 将单片机串口 TTL 电平数据转换为
8、DMX512差分数据。对 CC1100 的内部寄存器配置和 FIFO 单元读写都通过单片机 4 线 SPI 总线接口来完成。MISO和 MOSI 分别是数据发送、接收端口,SCLK 是同步时钟,SS 用作器件的片选信号。CC1100 的GD02 信号用作内部 FIFO 的状态信号,用于提示单片机 FIFO 空间已满。发射和接收模块接口示意图如图 3 所示,发射模块与接收模块的结构基本一致,只是通信数据流方向相反。 3 系统软件实现31 主要程序流程系统上电后首先进行初始化配置,包括 IO 端口输入输出状态配置、串口配置、SPI 接口设置、CC1100 寄存器配置,以及无线传输数据格式的配置,使
9、系统处于正常工作状态。此时主发射模块等待 DMX512 总线数据的到来。一旦 DMX512 数据包起始标志出现,即打开单片机串口,等待串口接收中断产生。中断产生之后单片机缓存总线数据,激活 CC1100,并向其发送 FIFO 中写入发送数据,然后无线发送出去。接收模块的工作流程和发送模块相反。在初始化完成之后,单片机设置好 CC1100 的 FIFO 寄存器,等待 FIFO 产生外部中断。这里外部中断被用作无线数据接收成功的标志。FIFO 中断产生后,单片机通过 SPI 总线缓存 FIFO 中的数据,并立刻通过串口模拟 DMX512 时序,恢复总线信号,完成信号的无线传输。发送和接收数据流程如
10、图 4 所示。专业好文档32 自定义通信数据格式虽然 CC1100 的传输数率比 DMX512 的时序速率要高,但毕竟 CC1100 的 FIFO 有限,不可能把一个 DMX512 数据包一次性全部发送出去,因此在主从端之问必须协商一种合适的数据通信格式。CC1100 支持 4 种格式的数据包,分别是:定长(小于 255 字节)、变长(小于 255 字节)、无限长和有限长。完整的数据包包括前导码、同步字、数据长度、地址、有效数据和 CRC 校验。本系统采用有效数据为 32 字节的有限长格式,具体的数据格式如下:DMX512 的数据包中包含有 512 路调光数据,而 CC1100 发送一次数据包
11、只包含 32 个有效数据,因此在发送时要在 CC11OO 的地址码段填入该次发送有效数据在总数据包中的序号,以保证接收端在接收的时候按顺序重组成功。33 拆解和重组 DMX512 总线数据系统在对 DMX512 总线数据的拆解和重组过程中,都利用了单片机内部的串口单元。但DMX512 总线数据时序与单片机 UART 串口不完全相同,因此在使用的时候需要做如下修正。主发射端对 DMX512 总线数据的拆解,需要先将串口端口(P31)配置为 IO 口。当接收到DMX512 的起始标志(即 P31=0)时,开启定时器 0 开始计数,88s 溢出中断后准备接收数据。单片机确认 MaB(Mark aft
12、erBreak)信号出现后,配置串口端口为普通串口,开始缓存数据帧。专业好文档从接收端在无数据传输时,要把串口端口配置为 IO 口,并置为高电平。在接收完毕无线数据后,先将串口端口拉低,利用定时器延时超过 88 s,完成起始标志(Break)信号的发送。然后配置串口端口为普通串口,按缓存的顺序将数据发送到 DMX512 总线上。数据发送完成之后,还需要将串口端口还原为普通 IO,发送结束信号(小于 1 s 的高电平),完成 DMX512 时序要求。4 总 结基于 CC1100 设计的 DMX512 灯光控制信号无线传输系统,具有成本低、外围器件少、电路结构简洁的特点。虽然 CC11OO 标称空
13、旷地发射距离可以达到 200 m,但在实际使用时,由于楼宇等建筑物的影响,有效的通信距离为 30 m 左右。因此利用该系统能实现小范围(如室内环境)将DMX512 有线传输转变为无线传输。为了延长系统传输距离,可以考虑在射频收发单元增加功放模块,在保证灯光数据实时传输的条件下,降低通信速率,提高系统传输的稳定性。专业好文档Editors note: Judson Jones is a meteorologist, journalist and photographer. He has freelanced with CNN for four years, covering severe wea
14、ther from tornadoes to typhoons. Follow him on Twitter: jnjonesjr (CNN) - I will always wonder what it was like to huddle around a shortwave radio and through the crackling static from space hear the faint beeps of the worlds first satellite - Sputnik. I also missed watching Neil Armstrong step foot
15、 on the moon and the first space shuttle take off for the stars. Those events were way before my time. As a kid, I was fascinated with what goes on in the sky, and when NASA pulled the plug on the shuttle program I was heartbroken. Yet the privatized space race has renewed my childhood dreams to rea
16、ch for the stars. As a meteorologist, Ive still seen many important weather and space events, but right now, if you were sitting next to me, youd hear my foot tapping rapidly under my desk. Im anxious for the next one: a space capsule hanging from a crane in the New Mexico desert. Its like the set for a George Lucas movie floating to the edge of space. You and I will have the chance to watch a man take a leap into an unimaginable free fall fro