常见问题

1、Modbus RTU和 Modbus TCP的区别?

 

Modbus RTU

Modbus TCP

物理接口(介质) RS485/232/422(屏蔽双绞线) RJ 45口(以太网线)
通讯层级 OSI模型1、2、7层 OSI模型1、2、3、4、7层
通讯结构 主从的方式 客户机/服务器的方式
报文结构 带CRC校验 不带,用TCP报文中的校验
传输速率 速度慢 速度快
节点数 1主对多从(一个网段32节点) 1个连接对1个
支持广播 支持 不支持

2、为什么 Function Code 3、4每次只能读请求最大125个字?

Modbus功能代码 读取从站(服务器)功能-标准寻址
01 读取输出位:每个请求1到2000个位
02 读取输入位:每个请求1到2000个位
03 读取保持寄存器:每个请求1到125个字
04 读取输入字:每个请求1到125个字

Modbus TCP 的 PDU 为253字节,读请求返回报文中,功能码占1字节,数据字节长度占1字节,因此有效数据:253-1-1=251字节;

由于 Function Code 3、4 读取的单位为字,因此数据长度必须为偶数,所以每帧只能传送250个字节的数据,即125个字。

3、为什么Function Code 16每次只能写请求最大123个字?

Modbus功能代码 写入从站(服务器)功能-标准寻址
05 写入一个输出位:每个请求1个位
06 写入一个保持寄存器:每个请求1到一个字
15 写入一个或多个输出位:每个请求1到1968个位
16 写入一个或多个保持寄存器:每个请求1到123个字

Modbus TCP 的 PDU 为253字节,写请求报文中,功能码占1字节,起始地址占2字节,寄存器个数占2字节,数据字节长度占1字节,因此有效数据:253-1-2-2-1=247字节;

由于 Function Code 16写入的单位为字,因此数据长度必须为偶数,所以每帧只能传送246个字节的数据,即123个字。

4、关于所需授权的数量?

针对不同的硬件,所需MODUBS TCP授权的数量,请查看下表。

5、CP343-1 lean是否支持Modbus TCP通信,连接数量?

答:支持,8个连接。

6、PN接口或CP接口,同一个接口是否同时支持Modbus TCP客户端和服务器模式?

答:支持同时使用两种模式。

7、 哪些CPU和CP支持Modbus TCP通信?

答:https://support.industry.siemens.com/cs/cn/zh/view/104946406

8、 哪些端口可以用于Modbus TCP通信?哪些设备支持端口复用?

答:https://support.industry.siemens.com/cs/cn/zh/view/34010717

9、 Modbus TCP授权选型

产品 订货号 使用CPU固件版本/注意事项
SIMATIC Modbus/TCP CP

6AV6676-6MB00-6AX0 (packet)

6AV6676-6MB00-6AD0 (download)

固件V3.2以上的S7-300 CPU
固件V6.0及其以上的S7-400 CPU
2XV9450-1MB00 所有固件版本
SIMATIC Modbus/TCP PN

6AV6676-6MB20-3AX0 (packet)

6AV6676-6MB20-3AD0 (download)

固件V3.2及其以上的S7-300 CPU
固件V6.0及其以上的S7-400 CPU
固件V3.2及其以上的ET 200 CPU
2XV9450-1MB02 所有固件版本