新闻中心

EEPW首页 > 网络与存储 > 设计应用 > GZCOM-NET网关1分钟实现Modbus TCP转RTU

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

作者:ZLG致远电子 时间:2022-12-07 来源:电子产品世界 收藏

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

本文引用地址://www.cghlg.com/article/202212/441361.htm

原理概述

1. Modbus RTU/TCP协议简介

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

image.png

1

1.1 ModbusRTU

Modbus RTU数据帧(ADU)由地址+PDU+校验组成,物理层为串口,包括RS232RS422RS485

1.2Modbus TCP

● Modbus TCP数据帧(ADU)MBAP+PDU组成,物理层为以太网接口;

MBAP:报文头,长度7个字节。

1.3Modbus RTU/TCP共同点

Modbus TCPModbus RTU数据帧中的PDU部分是相同的;

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

2. Modbus RTUModbus TCP

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

image.png

2

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

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

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

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

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

3. Modbus TCPModbus RTU

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

image.png

3

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

增加差错校验。

网关实现转换

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

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

image.png

4

1.1 网关协议转换配置

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

image.png

5

1.2 网关TCP Client配置

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

image.png

6

1.3 RS232/RS485配置

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

image.png

7

1.4 模拟主/从机配置

PC打开Modbus模拟软件,创建Modbus RTU主机和Modbus TCP从机,如图8所示。

image.png

8

1.5 结果展示

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

image.png

9

2. Modbus TCP Master Modbus RTU Slave

该转换可实现传感器作为Modbus RTU从机,数据采集中心作为Modbus TCP主机。GZCOM-NET作为Modbus TCPModbus RTU两种数据的转换网关,使用TCP ServerModbus TCP主站通信,使用RS485RS232接口与 Modbus RTU从站通信,如图10所示。

image.png

10

2.1 网关协议转换配置

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

image.png

11

2.2 网关TCP Server配置

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

image.png

12

2.3 RS232/RS485配置

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

2.4 模拟主/从机配置

PC打开Modbus模拟软件,创建Modbus TCP主机和Modbus RTU从机,如图 13所示。

image.png

13

2.5 结果展示

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

image.png

14




评论


相关推荐

技术专区

关闭