摘要: Modbus协议是一种适用于工业控制领域的主从式串口通信协议,具有广阔的应用前景。本文在阐述Modbus的基本原理和数据传送模式基础上,分析了Modbus通信的特点,给出了在天津轻轨项目中,采用Modbus通信方式,实现变频器与PLC通信的应用实例。实践表明,Modbus通信方式具有数据传输速度快、距离远、工作可靠、编程简单等优点。
引言
在城市轻轨风机控制系统中,变频器凭借着其变频节能,能软启,可调速等特点有着广泛的应用。但变频器本身对数据的计算、存储、分析能力不足,智能化程度不高等缺点也越发明显[1]。传统的控制常采用硬接线方式,只能单纯的实现控制,但对变频器内部的信息不能查询也无法控制。而RS-485无协议通信方法控制变频器方式编程工作量较大。通过变频器与PLC通信能有效的避免这些不足,提高变频器控制的自动化水平。
Modbus是被广泛应用于PLC与变频器通信的网络协议。采用Modbus通信方式,速度快、距离远、效率高、工作稳定、编程简单等优点。在城市轻轨单向运转的耐高温轴流排热风机控制项目中,风机变频器就是通过Modbus的通信方式实现的,通过Modbus通信将变频器中的电气参数如电流、电压、运行频率和报警信息传送到PLC中,实现PLC对风机启动,旁路切换等自动控制和状态监控。
1 Modbus通信协议
Modbus 协议是法国施耐德公司推出的一个全开放的“主从式(Master/Slave)”通信协议,通过此协议,控制器之间、控制器经由网络(例如以太网)和其它设备之间可以进行通信。它的开放性、可扩充性和标准化使它成为一个通用工业标准。
1.1 Modbus数据单元与帧的定义
Modbus应用协议定义了一个与基本通信层无关的简单协议数据单元(PDU)[2],并将它分为三种形式: Modbus请求PDU,mb_req_ pdu; Modbus响应PD
mb_rsp_pdu; Modbus异常响应PDU, mb_excep_rsp_pdu。定义 mb_ req_pdu:mb_req_pdu={function_ code ,request_data},其中function_ code:[1字节] Modbus功能码。request_ data:[n字节]。mb_rsp_pdu有相同的定义。异常响应PD:mb_excep_rsp_ pdu= {function_code,request_data}:function_code:[1字节] 功能码+0x08,request_ data:[1字节] Modbus异常码。
在特定总线或网络上的Modbus协议映射能够在协议数据单元(PDU)上引入附加域即:地址域和差错校验。 (图片) 1.2 Modbus数据传输形式
Modbus协议在串行链路常用的串行传输模式有两种方式,ASCII和RTU方式,本项目中采用RTU。这种传输模式的报文以纯二进制的方式传送,即每8位字节表示两个十六进制数。以至少3.5个字符时长用以区分两个报文帧。以较高的数据密度实现了更快的吞吐率[3]。
Modbus串行链路协议作为主从协议,在同一时间,只能有一个主站连接在总线上。主站用两种模式向从站发送Modbus请求:单播模式和广播模式。单播模式下主站寻址单个从站,Modbus事务处理包含主站请求和从站应答两个报文。广播模式下主站向所有从站发送请求从站无应答。不同的功能码对应不同的请求模式[4]。
2 Modbus通信在城市轻轨变频器控制中的应用
2.1城市轻轨风机控制对变频器要求
城市轻轨地下车站区间隧道风机设备主要有双向运转的耐高温轴流机械事故风机(TVF风机)和单向运转的耐高温轴流排热风机(U/O风机),其中U/O风机由ATV31变频器启动。隧道风机对变频器控制方式要求[5]:
(1)变频器要考虑BAS系统由中央控制、车站控制、就地控制三级控制,在不同工况模式下的运行模式。
(2)变频器要同时监控风机运行状态、运行时间、消耗功率等重要参数。
(3)变频器的参数能显示在车站主机上,车站主机能在线对变频器的参数进行修改。
(4)变频器能实现工频/变频转换。
ATV31变频器通过Modbus RTU协议与环控电控室U/O控制柜内Twido PLC通信,BAS系统则通过Twido PLC对ATV31变频器实行远程监控,从而实现控制要求。
2.2变频器Modbus通信控制硬件连接
隧道U/O风机变频器ATV31与控制回路中TwidoPLCT通信为Modbus RTU传输协议。采用RS485标准总线,RJ45连接端口,传输介质为屏蔽双绞线连接,线径不超过1mm2。设置Modbus通信模式:/DPT=0(管脚5与管脚7短接),连接如图2所示[6]。
(图片) 2.3变频器通信软件实现
在本项目中,所使用的TwidoPLC编程软件是使用EXCH指令进行消息的发送和接收,%MSG功能块来管理数据交换的。在与ATV31变频器通信时使用的功能码有:读多个内部位:命令码01;读多个内部字:命令码03;写一个字:命令码06;写N个字:命令码16[7]。
EXCH指令格式:[EXCHx%MWi:L] x为串口号,L=字表总字数。
%MSGx指令: x=1或2,分别表示控制器串口1或2
主站程序编写:Twido作为主站与ATV31通信是必须要编写通信程序,而通信程序是通过编写字表的方式进行的。
表1以读N个内部字为例(功能码为03):
表1 读N个内部字字表
- | 索引 | 高字节 | 低字节 | 对应帧结构 | 控制表 | 0 | 01(发送/接收) | 06(发送长度) | - | 1 | 03(接收偏移) | 00(发送偏移) | - | 发送表 | 2 | 从站地址 | 03(请求码) | 主站发送帧头部 | 3 | 读取的第一位的地址 | 主站发送帧数据区 | 4 | 读取的字数N | 接收表 | 5 | 从站地址 | 03(请求码) | 从站响应帧头部 | 6 | 00(接收偏移值) | 2*N读取值占用字节数 | 从站响应帧数据区 | 7 | 读取的第一个字 | 8 | 读取的第二个字 | ··· | ···· | N+6 | 读取的第N个字节 | 令发送数据帧。在数据链路层,PLC将数据帧以RTU的形式发送给变频器,当接收到字符时,间隔t3.5后开始发送,当发送到最后一个字节时延时t3.5后发送结束。当变频器检测到线路上的字符时开始接受数据帧,并对帧进行CRC校验,校验无误后变频器对数据帧进行分析,做出应答。
3 Modbus 通信优势分析
传统的变频器控制主要有三种方式:变频器面板控制,变频器端子控制和变频器模拟量信号控制。传统的控制方式不能够实现远程监控。配置参数只能采用本地设置,接线点多,模拟量传输不稳定。不能实现变频器模式控制[8]。
通过Modbus 通信则能有效的克服传统变频器控制的不足,其主要优点:
(1)通过Modbus可以实现远程控制和监视。变频器配置参数、故障报警、运营时间等信息可在车站主机上显示在,便于数据的记录,统一管理和系统后续开发。车站主机能在线对变频器的参数进行修改,减少了硬节点,节省A/D、D/A模块及成本但同时又增加了控制提高精度和稳定性[9]。
(2)Modbus 通信实现环控系统对全线风机的模式控制和统一调度。在正常运行工况下,中央控制显示U/O风机及其相应风阀的工作状态,车站控制室显示且控制U/O风机及其相应风阀的工作状态,风机按正常工况模式运行;在车站公共区火灾工况下,U/O风机及其相应的风阀能接受车站的控制;在区间事故工况下,全线的U/O风机由中央控制室统一调度。
4 结束语
本文讨论了Modbus在轻轨风机控制项目中与变频器的通信中的应用问题。尤其是在BAS环境控制中,只有通过通信,才可将变频器的内部参数通过PLC传入上层网络,在人机界面上显示。通过数据通信PLC就可以实现对变频器的远程监控,实现变频启动,直流制动,故障查询,旁路切换等功能,极大的提高了变频器控制的自动化水平。该方法已在项目中通过调试达到了良好的运行效果,通信控制稳定,可靠。
参考文献
[1] 刘刚.ATV58变频器的通讯功能[J].电工技术杂志,2000(10):58-60.
[2] GB 19582.3—2004 基于MODBUS协议的工业自动化网络规范[Z].
[3]Schneider Electric Company. Twidosoft软件操作指南.
[4] 荆文利.Modbus协议中有关RTU传输模式的应用[J].纺织机械,2008(5): 34-36.
[5]曲立东.城市轨道交通环境与设备监控系统设计与应用[M]. 电子工业出版社 2008.
第一作者韩婷(1985-),女,2003年毕业于沈阳建筑大学自动化系,获得学士学位,现为沈阳建筑大学控制理论与控制工程专业在读硕士研究生;主要从事地铁环境与设备监控的研究。
10/12/2010
|