MODBUS TCP和MODBUS RTU的差别
Posted sjwudhwhhw
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了MODBUS TCP和MODBUS RTU的差别相关的知识,希望对你有一定的参考价值。
TCP和RTU协议非常类似,只要把RTU协议的两个字节的校验码去掉,然后在RTU协议的开始加上5个0和一个6并通过TCP/IP网络协议发送出去即可
MBAP Header长度共7个字节,分别为Transaction identifier(事务标识符),Protocol identifier(协议标识符),Length(长度),
Unitidentifier(单元标识符)组成,具体如下表所示:
+------------+---------+-----------------------------+----------------------+----------------------------+
| 字 段 | 长 度 | 描 述 | 客 户 端 | 服 务 端 |
+------------+---------+-----------------------------+----------------------+----------------------------+
| 事务标识符 | 2 Bytes | 标示一个MODBUS请求/响应事务 | 由客户端初始化 | 从接收到的请求数据帧中复制 |
+------------+---------+-----------------------------+----------------------+----------------------------+
| 协议标识符 | 2 Bytes | 0 = MDOBUS协议 | 由客户端初始化 | 从接收到的请求数据帧中复制 |
+-------------+--------+-----------------------------+----------------------+----------------------------+
| 长 度 | 2 Bytes | 下列各项的字节数 | 由客户端初始化(请求) | 由服务端初始化(响应) |
+-------------+--------+-----------------------------+----------------------+----------------------------+
| 单元标识符 | 1 Bytes | 标示一个已连接在串行线或 | 由客户端初始化 | 从接收到的请求数据帧中复制 |
| | | 其他总线的远程从站连接 | | |
+------------+---------+-----------------------------+----------------------+----------------------------+
实际上Modbus协议包括ASCII、RTU、TCP。
标准的Modicon控制器使用RS232C实现串行的Modbus。Modbus的ASCII、RTU协议规定了消息、数据的结构、命令和就答的方式,数据通讯采用Maser/Slave方式。
Modbus协议需要对数据进行校验,串行协议中除有奇偶校验外,ASCII模式采用LRC校验,RTU模式采用16位CRC校验.
ModbusTCP模式没有额外规定校验,因为TCP协议是一个面向连接的可靠协议。
MODBUS TCP和MODBUS RTU的差别不是很大。
二者相同的地方是应用数据单元是一致的。
差别是MODBUS TCP是传输在TCP/IP网络上的,多了一个报文头,少了CRC校验,采用TCP的502端口
RTU多了设备地址和CRC校验
再分享一下我老师大神的人工智能教程吧。零基础!通俗易懂!风趣幽默!还带黄段子!希望你也加入到我们人工智能的队伍中来!https://blog.csdn.net/jiangjunshow
以上是关于MODBUS TCP和MODBUS RTU的差别的主要内容,如果未能解决你的问题,请参考以下文章