Modbus TCP 服务器/客户端

简介

与 Modbus 串行链路不同,Modbus TCP/IP 不以层次结构为基础,而是基于客户端/服务器模型。

TM4ES4 模块同时实现了客户端和服务器服务,因此,它既可以启动对其他控制器和 I/O 设备的通讯,也能响应来自其他控制器、SCADA、HMI 以及其他设备的请求。Modbus 服务器功能缺省处于未激活状态。

无需配置,TM4ES4 模块即可支持 Modbus 服务器。

Modbus 服务器/客户端包含在固件中,不需用户进行任何编程操作。通过此功能,可以在 RUNNING、STOPPED 和 EMPTY 状态下对其进行访问。

Modbus TCP 客户端

Modbus TCP 客户端无需任何配置,即可支持 PLCCommunication 库中的以下功能块:

oADDM

oREAD_VAR

oSEND_RECV_MSG

oSINGLE_WRITE

oWRITE_READ_VAR

oWRITE_VAR

有关详细信息,请参阅功能块描述

Modbus TCP 服务器

Modbus 服务器支持以下 Modbus 请求:

功能代码

十进制(十六进制)

子功能

十进制(十六进制)

功能

1 (1h)

 

读取数字量输出 (%Q)

2 (2h)

 

读取数字量输入 (%I)

3 (3h)

 

读取保持寄存器 (%MW)

6 (6h)

 

写入单个寄存器 (%MW)

8 (8h)

 

诊断

15 (Fh)

 

写入多个数字量输出 (%Q)

16 (10h)

 

写入多个寄存器 (%MW)

23 (17h)

 

读取/写入多个寄存器 (%MW)

43 (2Bh)

14 (Eh)

读取设备标识

诊断请求

下表包含数据选择代码列表:

数据选择代码

描述

0x00

保留

0x01

基本网络诊断

0x02

以太网端口诊断

0x03

Modbus TCP/端口 502 诊断

0x04

Modbus TCP/端口 502 连接表

0x05 - 0x7E

为其他公共代码保留

0x7F

数据结构偏移