Modbus通讯

Modbus通讯

1、串行传输模式

Modbus 串行链路协议是一个主-从协议。 在同一时刻,只有一个主节点连接于总线,一个或多个

子节点 (最大编号为 247) 连接于同一个串行总线。 Modbus 通信总是由主节点发起。子节点在没

有收到来自主节点的请求时,从不会发送数据。子节点之间从不会互相通信。主节点在同一时刻只

会发起一个Modbus 事务处理。

节点以两种模式对子节点发出 Modbus 请求:

1、单播模式, 主节点以特定地址访问某个子节点, 子节点接到并处理完请求后, 子节点向

主节点返回一个报文(一个 '应答')。在这种模式, 一个 Modbus 事务处理包含 2 个报文: 一个

来自主节点的请求, 一个来自子节点的应答。每个子节点必须有唯一的地址 (1 247),这样

才能区别于其它节点被独立的寻址。

2、在广播模式,主节点向所有的子节点发送请求。对于主节点广播的请求没有应答返回。广播

请求一般用于写命令。 所有设备必须接受广播模式的写功能。 地址 0 是专门用于表示广播数据的

Modbus通讯_第1张图片

两种串行传输模式被定义:RTU 模式ASCII 模式

Modbus 串行链路上所有设备的传输模式 (和串行口参数) 必须相同。
所有设备必须必须实现 RTU 模式。 ASCII 传输模式是选项。
设备应该由用户设成期望的模式,
RTU ASCII。 默认设置必须为 RTU 模式

1.1 RTU传输模式

当设备使用 RTU (RemoteTerminal Unit) 模式在 Modbus 串行链路通信, 报文中每个 8位字节含

有两个4位十六进制字符。 这种模式的主要优点是较高的数据密度, 在相同的波特率下比ASCII

式有更高的吞吐率。每个报文必须以连续的字符流传送。

Modbus通讯_第2张图片

1.2 ASCII传输模式

Modbus 串行链路的设备被配置为使用 ASCII (American Standard Code for Information

Interchange) 模式通信时, 报文中的每个 8 位子节以两个 ASCII 字符发送。当通信链路或者设备

无法符合RTU 模式的定时管理时使用该模式。

: 由于一个子节需要两个字符,此模式比 RTU 效率低。


2、TCP/IP模式

MODBUS 报文传输服务提供设备之间的客户机 / 服务器通信, 这些设备联接在一个 TCP/IP 网络上。
这个客户机
/ 服务器模式是基于 4 种类型报文:
1、 MODBUS 请求
2、 MODBUS 证实
3、 MODBUS 指示

4、MODBUS 响应

Modbus通讯_第3张图片

2.1 TCP/IP MODBUS报文分析

Modbus通讯_第4张图片

Modbus通讯_第5张图片

Modbus通讯_第6张图片


你可能感兴趣的:(Modbus)