GZCOM-NET网关1分钟实现Modbus TCP转RTU

接口/总线/驱动

1143人已加入

描述

随着Modbus TCP和Modbus RTU两种协议在工业现场设备的普及,要实现这两种协议互转的需求日益增加,GZCOM-NET可以实现该转换功能,本文将详细介绍转换原理及使用。

原理概述

1. Modbus RTU/TCP协议简介

Modbus通信协议具有多个变种,其中最著名的是Modbus RTU、Modbus ASCII和Modbus TCP三种。在工业现场一般都是采用Modbus RTU协议。与ModbusRTU协议相比较,ModbusTCP协议则是在RTU协议上加一个MBAP报文头,并且由于TCP是基于可靠连接的服务,RTU协议中的CRC校验码就不再需要,两者帧格式差异如图1所示。
网关
图1

1.1 ModbusRTU

● Modbus RTU数据帧(ADU)由地址+PDU+校验组成,物理层为串口,包括RS232、RS422、RS485。

1.2Modbus TCP

● Modbus TCP数据帧(ADU)由MBAP+PDU组成,物理层为以太网接口;
● MBAP:报文头,长度7个字节。

1.3Modbus RTU/TCP共同点

● Modbus TCP和Modbus RTU数据帧中的PDU部分是相同的;

● PDU: 协议数据单元(Protocol Data Unit),由功能码+数据组成。功能码是一个字节,数据长度不定,由具体功能码的具体功能决定。

2. Modbus RTU转Modbus TCP

Modbus RTU数据帧转为Modbus TCP数据帧过程为取出协议数据单元(PDU),并且加入报文头部(MBAP),将附加地址对应到报文头部的单元标识符,如图2所示。
网关
图2

● 增加了报文头部,并且去掉了附加地址和差错校验;

● 事务处理标识:可以理解为报文的序列号,一般每次通信后就要加1以区别不同的通信数据报文,由客户端生成,应答时复制该值;

● 协议标识符:表示Modbus TCP协议,由客户端生成,应答时复制该值;

● 长度:表示该字节后面的数据长度,单位为字节;

● 单元标识符:设备地址,由客户端生成,应答时复制该值。

3. Modbus TCP转Modbus RTU

Modbus TCP数据帧转为Modbus RTU数据帧过程为取出协议数据单元(PDU),并且加入附加地址和差错校验,将报文头部的单元标识符对应到附加地址,如图3所示。
网关
图3

● 单元标识符作为附加地址;

● 增加差错校验。

网关实现转换

1. Modbus RTU Master(RS485/RS232) 转 Modbus TCP Slave

该转换可实现用户终端作为Modbus TCP从机,数据采集中心作为Modbus RTU主机。网关实现Modbus RTU和Modbus TCP两种数据的转换,使用RS485/RS232接口与Modbus RTU主站通信,使用TCP Client与Modbus TCP从站通信,如图4所示。
网关
图4

1.1 网关协议转换配置
以RS485为例,打开网关网页左边栏,选择【协议转换】,在转换选择页面里选择【Modbus RTU Master(RS485) 转 Modbus TCP Slave】,然后点击【保存】,如图5所示。
网关
图5

1.2 网关TCP Client配置
打开网关网页左边栏,选择【网络配置】,在网络配置面里选择【TCP/UDP Client】,配置客户端参数,然后点击【保存】,如图6所示。
网关
图6

1.3 RS232/RS485配置
打开网关网页左边栏,选择【RS232/RS485配置】,在网络配置面里选择【RS485】,配置串口参数,然后点击【保存】,如图7所示。
网关
图7

1.4 模拟主/从机配置
用PC打开Modbus模拟软件,创建Modbus RTU主机和Modbus TCP从机,如图8所示。
网关
图8

1.5 结果展示
Modbus RTU主机写入Modbus TCP从机的寄存器成功,并且读取Modbus TCP从机寄存器值成功,如图9所示。
网关
图9

2. Modbus TCP Master 转 Modbus RTU Slave
该转换可实现传感器作为Modbus RTU从机,数据采集中心作为Modbus TCP主机。GZCOM-NET作为Modbus TCP和Modbus RTU两种数据的转换网关,使用TCP Server与Modbus TCP主站通信,使用RS485或RS232接口与 Modbus RTU从站通信,如图10所示。
网关
图10

2.1 网关协议转换配置
打开网关的网页配置页面左边栏,选择【协议转换】,在转换选择页面里选择【Modbus TCP Master转Modbus RTU Slave】,然后点击【保存】,如图11所示。
网关
图11

2.2 网关TCP Server配置
打开网关网页左边栏,选择【网络配置】,在网络配置面里选择【TCP Server】,配置服务器参数,然后点击【保存】,如图12所示。
网关
图12

2.3 RS232/RS485配置
RS232/RS485配置方法Modbus RTU Master(RS485/RS232) 转 Modbus TCP Slave一样。

2.4 模拟主/从机配置
用PC打开Modbus模拟软件,创建Modbus TCP主机和Modbus RTU从机,如图 13所示。
网关
图13

2.5 结果展示
Modbus TCP主机写入Modbus RTU从机的寄存器成功,并且读取Modbus RTU从机寄存器值成功,如图14所示。
网关
图14

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分