卷烟厂设备ControlLoigx控制系统通信改造

2014-12-14 03:56房华伟
设备管理与维修 2014年6期
关键词:数据表主站寄存器

房华伟

(广西中烟工业有限责任公司柳州卷烟厂 广西柳州)

ControlLogix控制系统不仅自带RS232串行通信端口支持DF1/DH485协议,还提供丰富的通信模块支持EtherNet、ControlNet、Modbus和Profibus等多种网络协议,进一步扩展系统应用的灵活性。

一、问题的提出

广西中烟柳州卷烟厂烟叶醇化库采用ControlLogix控制系统调节库区环境恒温恒湿,该系统安装MVI56 ADM通信扩展模块,基于自定义协议读取下位TB2X系列总线温湿度巡检仪的数据。由于TB2X巡检仪升级换代,新巡检仪采用新的Modbus RTU协议,不再支持原有自定义协议,因此需要对ControlLogix控制系统进行改造。

MVI56 ADM模块是一种C语言开发模块,允许用户自己开发通信协议(包括Modbus RTU通信协议),但实施难度非常大,购买Modbus通信专用模块MVI56 MCMR,虽然编程简单方便,但价格昂贵。综合考虑,将3台TB2X巡检仪通过总线接到PLC控制站,利用ControlLogix自带串行口进行Modbus RTU通信,实现对库区温湿度数据的远程读取和在线校准。

二、基于Modbus RTU协议的通信实现

1.软、硬件配置

加装1个有源RS232/485接口转换器将ControlLogix控制器连接到RS485网络,实现Modbus RTU一主多从通信(图1)。主要使用ControlLogix编程软件RSLogix 5000 V19、PLC通信软件RSLinx V2.5以及RockWell公司给出的Modbus通信例程ModbusMaster.ACD(存放在RSLogix5000软件安装路径下面的Samples文件夹)。

图1 改造后的网络结构

2.软件设计

ControlLogix控制器串行口实现Modbus通信支持的功能码见表1,并且仅支持RTU传输模式,不支持ASCⅡ模式,需要注意通信过程中此端口不能再用于编程。

表1 例程支持的Modbus RTU功能码

(1)从例程ModbusMaster.ACD中复制用户自定义数据类型、控制器标签和周期任务到工程文件。①打开ModbusMaster.ACD文件,在左侧导航栏中找到“数据类型”,选择“用户定义”,然后复制用户自定义数据类型“Mod_Command_Structure”和“Mod_Status”,粘贴在自建的工程文件同样位置。②在ModbusMaster.ACD文件左侧导航栏中找到“控制器ModbusMaster”,选择“控制器标签”,将所有共11个控制器标签粘贴在自建的工程文件同样位置。③找到“任务”,选择“MainTask”,将“Modbus_Interface”程序粘贴到自建的 RSLogix 5000工程中的MainTask任务中。

(2)配置控制器通信端口。在自建的RSLogix5000工程文件中访问控制器属性,找到"串行端口"和"用户协议"选项卡,分别确定本案例通信波特率为19200、数据位8、奇偶校验无、结束位1和读/写缓冲区大小200字,其他选项保持不变。

(3)配置控制器标签。根据实际需要配置Mod_Commands,例如读取2#TB2X巡检仪,起始地址20480,每次读取16个寄存器,主站从数据表字2开始写入数据,配置通信命令标签(图2)。Modbus主站数据表有4个标签组:①线圈数据(Mod_Data_Coils0标签),数据以位格式从读或写入这个数组;②触点数据(Mod_Data_Contacts1标签),数据以位格式写入这个数组;③输入寄存器数据(Mod_Data_InpReg3标签),数据以字格式写入这个数组;④保持寄存器数据(Mod_DataHoldReg4标签),数据以字格式从读或写入这个数组。

当Modbus主站需要向从站写入特定数据时,用户需要数据被准确放入从站的输入寄存器中,例如Mod_Commands[1].AddressOffsetinMaster=2,Mod_Commands[1].StartingAddress=3,前一个表示在主站数据表的地址偏移,后一个表示相应从站的起始地址,两个标签均以字为单位进行操作。按照上面设置,从、主站保持寄存器数据表分别偏移3个字和5个字(图3)。按照实际需求配置完成所需的命令标签后,在控制器标签Mod_Cmd_Number输入执行命令的总个数,注意这里要和用户 实际配置命令标签的数量一致。

图2 通信命令标签配置

图3 主站向从站写保持寄存器数据位置

图4 使能Modbus通信程序

(4)使能程序并校验下载。用户还需要编写程序段对ControlLogix控制器4个标签组进行读取写入操作,即完成与下位TB2X巡检仪的数据交换。为使能新程序,还必须将控制器标签Mod_Active的值由0改为1(图4),然后对新程序进行校验,最后下载运行。

三、运行效果

改造后使用ControlLogix自带串行口实现了Modbus RTU通信,可对3台TB2X巡检仪共54个温湿度数据进行有效监视和远程校准,满足了烟叶库区恒温恒湿控制实时性的要求,节省了改造成本,提高了企业管理效率和自动化水平。

猜你喜欢
数据表主站寄存器
STM32和51单片机寄存器映射原理异同分析
Lite寄存器模型的设计与实现
湖北省新冠肺炎疫情数据表
基于列控工程数据表建立线路拓扑关系的研究
EtherCAT主站与主站通信协议的研究与实现*
多表远程集抄主站系统
图表
基于改进经济压差算法的主站AVC的研究
关口电能计量故障监测报警装置及主站研究
基于VSL的动态数据表应用研究