一种基于dmx512协议的控制系统及其控制方法

文档序号:9528355阅读:957来源:国知局
一种基于dmx512协议的控制系统及其控制方法
【技术领域】
[0001]本发明涉及一种基于DMX512协议的控制系统及其控制方法。
【背景技术】
[0002]DMX512协议是最先由USITT (美国剧场技术协会)提出,作为调光和灯光控制台数据传输标准及灯光行业数字化设备的通用信号控制的国际协议,DMX512协议以其简单可靠,灵活性已在舞台、剧院、演播室灯光控制领域中得到广泛应用,而现在已经越来越多的应用在LED灯具的控制系统中。
[0003]采用DMX512总线协议进行控制,每个产品必须设置唯一的地址。现在市场上常见的有三种写址方式:
1)地址固定方式:DMX512接收器在安装前写入固定地址,安装的时候按照地址顺序进行安装。此种方法安装的烧写地址的工作量大,且容易混淆装错。后期维护的时候要知道故障灯地址,维护麻烦。
[0004]2)拨码方式:在每个设备上配置地址拨码开关,用户根据相应的安装位置拨到对应的地址码。这种方法效率低下,且安装的时候容易出现漏拨,错拨的现象,对施工人员要求比较高。
[0005]3)动态编址方式:每一次系统上电的时候都会重新寻址,但一旦系统中的某个节点损坏就会影响本次的编址动作,系统有可能发生大面积的错误。

【发明内容】

[0006]本发明的目的是为了解决上述问题,提供一种可以实现自动对并行在DMX512总线上的节点控制器进行写址的控制系统及控制方法。
[0007]本发明为实现上述功能,所采用的技术方案是提供一种基于DMX512协议的控制系统,包括DMX512主控制器、数据总线、N个节点控制器(N ^ 1 )、受控电器,所述DMX512主控制器和所述节点控制器通过所述数据总线连成总线型网络,其特征在于,所述节点控制器包括控制信号输入端、控制信号输出端、地址信号输入端、地址信号输出端,所述控制信号输入端连接所述数据总线,所述控制信号输出端连接所述受控电器,第η (1 < η < Ν)个节点控制器的地址信号输入端连接第η-l个节点控制器的地址信号输出端,所述控制系统还包括端部识别标识,第1个节点控制器的地址信号输入端和第Ν个节点控制器的地址信号输出端分别连接端部识别标识。
[0008]进一步的,所述端部识别标识为端口悬空、接地产生的高/低电平,或在所述基于DMX512协议的控制系统中设置信号发生设备,所述端部识别标识为所述信号发生设备所产生的电压或脉冲信号。
[0009]进一步的,所述地址信号输入端和地址信号输出端为通用I/O端口。
[0010]本发明还提供一种上述基于DMX512协议的控制系统的控制方法,其过程如下: DMX512主控制器向数据总线发送控制命令; N个串接的节点控制器(N> 1)接收来自数据总线的所述控制命令第1个节点控制器为首节点,第N个节点控制器为尾节点;
每一个节点控制器,分析所述控制命令,并根据所述控制命令内容执行相应的命令执行程序,所述命令执行程序至少包括写址程序,所述写址程序包括以下步骤:
节点控制器判断该节点是否为首节点:是首节点,节点控制器从总线上读取地址数据,地址数据写入非易失存储器;不是首节点,等待地址信号输入端传来地址数据,读取地址信号输入端的地址数据,地址数据写入非易失存储器;
节点控制器判断该节点是否为尾节点:是尾节点,所述写址程序结束;不是尾节点,从非易失存储器中读取本节点地址数据并进行加1操作生成后续地址数据,将所述后续地址数据向地址信号输出端发出。
[0011]进一步的,所述命令执行程序还包括测试程序,所述测试程序包括以下步骤:
节点控制器判断该节点是否为首节点:是首节点,节点控制器向受控电器发送测试命令;不是首节点,判断地址信号输入端是否有测试命令信号,有测试命令信号则向受控电器发送测试命令,没有则继续检测地址信号输入端;
节点控制器判断该节点是否为尾节点:是尾节点,所述测试程序结束;不是尾节点,向地址信号输出端发出测试命令信号。
[0012]进一步的,所述测试程序中,节点控制器向地址信号输出端发出测试命令信号前经过延时。
[0013]进一步的,所述测试程序在所述写址程序之前执行。
[0014]进一步的,节点控制器判断是否为首节点的方法为,读取地址信号输入端的数据,判断是否为端部识别标识,所述端部识别标识为端口悬空、接地产生的高/低电平,或在所述基于DMX512协议的控制系统中设置信号发生设备,所述端部识别标识为所述信号发生设备所产生的电压或脉冲信号。
[0015]进一步的,节点控制器判断是否为尾节点的方法为,读取地址信号输出端的数据,判断是否为端部识别标识,所述端部识别标识为端口悬空、接地产生的高/低电平,或在所述基于DMX512协议的控制系统中设置信号发生设备,所述端部识别标识为所述信号发生设备所产生的电压或脉冲信号。
[0016]本发明所提供的技术方案不需要开发专门的地址编码器,直接通过主控制器控制写址,写址过程不用人工参与,且写址快捷。同时自动写址的方式也使得设备安装更为容易。
【附图说明】
[0017]图1是本发明控制系统的结构示意图;
图2是本发明控制方法及写址程序的流程图;
图3是本发明控制方法中模块选择过程的流程图;
图4是本发明测试程序的流程图。
【具体实施方式】
[0018]以下结合附图和具体实施例对本发明提出的一种基于DMX512协议的控制系统及其控制方法作进一步详细的说明。
[0019]请参考图1,图1所示是本发明提出的一种基于DMX512协议的控制系统的一个较佳实施例的结构示意图,该系统包括一个DMX512主控制器、数据总线及N个节点控制器(N > 1)。DMX512主控制器的输出端A、B、GND连接数据总线,各节点控制器的控制信号输入端也和数据总线相连,DMX512主控制和各节点控制器构成总线型网络结构。图中的输出端A、B、GND和数据总线仅为示意,并不代表实际的连接线的数量,在应用中需根据芯片选型的不同,如8位、16位或32位芯片连接相应数量的数据线。本实施例中DMX512主控制器通过以太网接口连接内置有控制软件的PC机,其通信协议采用TCP/IP协议,DMX512主控制器接收PC机发来的控制命令转换为DMX512协议后从输出端向数据总线发出控制命令。在一些其他较佳实施例中DMX512主控制器也可以通过无线网络,采用WiF1、蓝牙等通信协议接收用户的控制信号,控制设备也可根据需要灵活配置,如遥控器、控制面板以及手机、平板电脑等移动终端。节点控制器的控制信号输入端连接数据总线,控制信号输出端连接照明设备、电动百叶窗、空调等受控电器,一个节点控制器可以连接一个或多个受控电器,节点控制器从控制信号输入端接收控制命令,翻译成可以对受控电器进行控制的电流或电压信号从控制信号输出端输出。
[0020]除了上述数据传输端口外,节点控制器设有地址信号输入端in端和地址信号输出端out端,所有节点控制器通过in端和out端首尾相连形成串联结构。具体来说N个节点控制器,根据安装位置分别标注为1号节点、2号节点、直至N号节点,第η号节点代表2到Ν中的任一节点1 < η < Ν,第η个节点控制器的in端连接第n_l个节点控制器的out端。而第1个节点之前不存前节点,第N个节点之后也没有第N+1的后续节点。第1个节点控制器的in端和第N个节点控制器的out端分别连接一个特殊的信号源来作为端部识别标识。这个特殊的信号源可以将端口接地形成一个低电平或连接信号发生设备,信号发生设备发出预设的电压或脉冲信号,节点控制器通过比对电压值或脉冲波形是否为预设的端部标识信号,从而来判断该节点是否为端部。在本实施例中,采用TTL门电路,由TTL门电路的输入端负载特性可知,只有在输入端接的串联电阻阻值小于910欧时,其输入的低电平信号才能被门电路识别出来,串联电阻阻值再大的话输入端就一直呈现高电平。而端口悬空时,可认为输入电阻阻值无穷大,会形成高电平信号。由于TTL的此种特性,为简便连接直接将第1个节点控制器的in端和第N个节点控制器的out端悬空,形成高电平来作为端部识别标识。另外在本实施例中节点控制器的in端和的out端均为通用1/0端口(GP10)o
[0021]图2所示为本发明控制方法的第一实施例,如图所示其过程如下:
DMX512主控制器向数据总线发送控制命令;
N个串接的节点控制器(N ^ 1)接收来自数据总线的所述控制命令,第1个节点控制器为首节点,第N个节点控制器为尾节点;
每一个节点控制器,分析所述控制命令,并根据所述控制命令内容执行相应的命令执行程序,请参阅图3,该流程是一个程序模块的选择的过程,因为作为DMX512主控制器进行的控制操作是多种多样的,在本实施例中采用模块化程序设计,对于各种操作编写不同的程序模块,根据命令内容不同分别选择相应的模块执行相应的操作。对于受控电器的控制包括开关、灯具的调光、调色这些程序需根据具体电器编写,这里我们就不再一一说明。本实施例中所要详细说明的,是本发明涉及方法的关键步骤,即当DMX512主控制器发出写址命令时,节点控制器可进行
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1