摘要:互联网时代,不同的设备基于相同的网络通讯协议进行信息交流。在工业以太网领域,MODBUS TCP/IP作为一个标准的,开放的通讯协议在工业自动化行业得到了广泛的应用。本文对MODBUS的工作原理,MODBUS TCP/IP数据帧结构进行了全面的阐述,并结合某城市轨道交通项目机电设备通讯的具体事例详细阐述了如何进行MODBUS TCP/IP协议报文分析,为广大技术人员掌握报文解析方法,快速识别并处理故障做出了切实有效的指导。
关键词:网络通信协议;MODBUS TCP/IP协议;报文分析
1.引言
众所周知,随着计算机技术的不断发展,互联网已经深入到我们生活的每一个部分。每一秒钟都有大量的信息在互联网上被传输至不同的终端,然而不同设备之间进行信息交流的基础在于它们都遵循相同的网络通讯协议,即TCP/IP协议(TranSmiSSion Control Protocol/Internet Protocol,传输控制协议/因特网互联协议)[1]。那么在工业电气通信网络里,各个设备之间是怎么通信的呢?
MODBUS是MODICON公司最先倡导的一种应用于电子控制器上的通信规约。通过此规约,控制器相互之间、控制器经由网络(例如以太网、485总线)和其它设备之间可以通信,它已经成为一通用工业标准。有了它,不同厂商生产的控制设备可以连成工业网络,进行集中监控。MODBUS协议采用主从工作方式,允许一台主设备和多台从设备通信,每台从设备地址由用户设定,地址范围为1-255。通信采用命令/应答方式,每一种命令帧都对应一个应答帧。命令帧由主设备发出,所有从设备都将收到报文,但只有被寻址的从设备才会响应相应命令,返回相应的应答帧。
在工业以太网中,基于MODBUS协议衍生出了MODBUS TCP/IP以太网通讯协议。其中TCP是面向连接的通信协议,TCP将包排序并进行错误检查,同时实现虚电路间的连接,一有问题就发出信号,要求重新传输,直到所有数据安全正确地传输到目的地。而IP是给工业以太网中的每一台联网设备规定一个地址。在应用层采用工业领域事实标准MODBUS协议,其网络通信模式采用client/Server方式[2](图1)。
图1 MODBUS TCP/IP 的网络通信模式
MODBUS TCP/IP协议作为一个标准的,开放的协议在工业自动化行业得到了广泛的应用。在国内城市轨道交通建设项目中机电设备就是基于MODBUS TCP/IP协议在综合监控系统上实现了设备状态的实时监视和自动控制。
图2 MODBUS TCP 数据帧格式
2.MODBUS TCP/IP协议分析
2.1 MODBUS TCP数据帧表现形式
以太网TCP/IP通信协议一共有5层,第一层:物理层,提供设备的物理接口,与市售的介质/网络适配器相兼容;第二层:数据链路层,格式化信号到源/目的硬件地址的数据帧;第三层:网络层,实现带有 32 位 IP 地址的 IP 报文包;第四层:传输层,实现可靠性连接、传输、查错、重发、端口服务、传输调度;第五层:应用层,MODBUS 协议报文。那么,在 TCP/IP 以太网上传输的MODBUS TCP数据帧包含报文头、功能代码和数据 3 部分[3](图2)。
2.2 MODBUS 功能代码
MODBUS 功能代码共有 3 种类型分别为[4]:
(1)公共功能代码(如表 4 所示):已定义好的功能码,保证其唯一性,由 MODBUS.Org 认可;
(2)用户自定义功能代码有两组,分别为 65~72 和 100~110,无需认可,但不保证代码使用的 唯一性。如变为公共代码,需交 RFC 认可;
(3)保留的功能代码,由某些公司使用在某些传统设备的代码,不可作为公共用途。
3.应用实例
在城市轨道交通项目中机电类设备安装和调试过程中,我们经常会需要对MODBUS TCP/IP报文进行解析。下面以某城市轨道交通项目火灾自动报警系统与综合监控系统之间出现的调试为例,展示如何进行MODBUS TCP/IP报文的解析。
某站在机电设备安装调试过程中,发现气灭盘控制反馈信号与隧道感温光纤报警信号出现了错误配置。调试人员截取了综合监控系统与FAS(Fire Alarm SyStem 火灾自动报警系统)之间的MODBUS TCP/IP报文(图3)。
图3 FAS系统与综合监控系统之间的MODBUS TCP/IP报文
表1 FAS系统与综合监控系统之间的接口数据点表
我们可以发现FAS系统与综合监控系统之间的MODBUS TCP/IP协议采用的功能码是读取寄存器输入数值的04。根据FAS系统与综合监控系统之间的数据点表(表1),可以查找出气灭盘控制反馈信号与隧道感温光纤报警信号的寄存器地址,进而可以查出寄存器的值,通过寄存器内的数值可以直接判定设备存在的调试故障点。
4.结束语
MODBUS TCP/IP协议作为一个标准的,开放的协议在工业自动化行业得到了广泛的应用。在国内城市轨道交通建设项目中机电设备之间的数据传输多数基于MODBUS TCP/IP协议,因此掌握MODBUS TCP/IP协议报文的解析方法,在机电设备安装、调试过程中意义重大。
参考文献:
[1]万雅静,黄巍,梁玉凤.网络基础实用教程[C].北京:机械工业出版社,2011:14-16.
[2]邬书金,万频等.基于Modbus TCP协议实现PC机与PLC的串行通信[J].可编程控制器与工厂自动化,2009(9):63-64.
[3]徐银生,王昕.基于以太网的Modbus/TCP协议的实时性研究[J],网络新媒体技术,2007:28(12):1256-1259.
[4] Andy Swales,开放型 MODBUS-TCP 规范(中文版)修订版1.0[S].Schneider 电气公司,2005:5-6.
论文作者:张鹏宇,张鹏飞
论文发表刊物:《基层建设》2018年第32期
论文发表时间:2018/12/18
标签:报文论文; 协议论文; 设备论文; 监控系统论文; 代码论文; 功能论文; 以太网论文; 《基层建设》2018年第32期论文;