HollySys Modbus TCP
EMQX Neuron HollySys Modbus TCP 驱动使用 Modbus TCP 协议,用于采集和利时 PLC 标签的数据,支持 LK/LE 系列 PLC 型号。
Modbus TCP 是一种基于以太网的 Modbus 协议版本,它使用 TCP/IP 协议进行通信。与传统的 Modbus RTU 协议不同,Modbus TCP 允许设备直接通过以太网互联,不需要任何专用的硬件或通信接口。因此,Modbus TCP 具有更高的通信速率和更广泛的应用范围。
添加驱动
在 数据采集 → 南向设备 页点击 添加设备,驱动类型选择 HollySys Modbus TCP。
连接参数
点击驱动卡片进入设备配置页填写:
字段 | 说明 |
|---|---|
| 最大重试次数 | 发送读取指令失败后最大重试次数。 |
| 指令重新发送间隔 | 发送读取指令失败后重新发送读指令时间间隔,单位为毫秒。 |
| 字节序 | 32 位数据类型字节序,ABCD 对应 1234。 |
| 指令发送间隔 | 发送每条读写指令之间的等待时间。某些串口设备在较短时间内接收到连续指令时,可能会丢弃某些指令。 |
| IP 地址 | TCP 连接时,设备的 IP 地址(EMQX Neuron 作为客户端)。 |
| 端口号 | TCP 连接时,设备的端口号(EMQX Neuron 作为客户端)。 |
| 连接超时时间 | 等待设备返回指令响应的时间。 |
| 校验报文头 | 选择是否对报文头进行校验。选择校验后,遇到报文头错误时 neuron 与设备会重新连接。 |
点位配置
以下为本驱动支持的数据类型与地址格式。
数据类型
- BIT
- BOOL
- INT16
- UINT16
- WORD
地址格式
SLAVE!ADDRESS[#ENDIAN]
SLAVE
必填,指从机地址或者是站点号。
ADDRESS
和利时 PLC 将数据单元映射到 Modbus 地址空间,以通过 Modbus TCP 协议进行访问。 EMQX Neuron HollySys Modbus TCP 驱动将 PLC 数据单元名称指定为 ADDRESS,用户不需要关心地址映射的细节。
| 数据区 | Modbus 地址范围 | 属性 | 寄存器大小 | 数据类型 |
|---|---|---|---|---|
| IX (Input) | IX0.0 ... IX0.7, IX1.0 ... IX1.7 ... | Read | 1Bit | BOOL/BIT |
| IW (Input Registers) | IW0, IW1, ... | Read | 16Bit,2Byte | INT16/UINT16 |
| QX (Coils) | QX0.0 ... QX0.7, QX1.0 ... QX1.7 ... | Read/Write | 1Bit | BOOL/BIT |
| QW (Hold Registers) | QW0, QW1, ... | Read/Write | 16Bit,2Byte | INT16/UINT16 |
| MX (Coils) | MX0.0 ... MX0.7, MX1.0 ... MX1.7 ... | Read/Write | 1Bit | BOOL/BIT |
| MW (Hold Registers) | MW0, MW1, ... | Read/Write | 16Bit,2Byte | INT16/UINT16 |
#ENDIAN
选填,字节顺序,适用于 int16/uint16 数据类型,详细说明见下表。
| 符号 | 字节顺序 | 支持的数据类型 | 备注 |
|---|---|---|---|
| #B | 2,1 | int16/uint16 | |
| #L | 1,2 | int16/uint16 | 不填,默认字节顺序 |
TIP
点位字节序优先级高于节点字节序配置。即点位配置字节序后,字节序按照点位的配置,忽略节点配置。 字节顺序可能用 ABCD 表示,只需将 1234 对应 ABCD 即可。例如 ABCD 对应默认字节序 1234 (#LL)。
地址示例
| 地址 | 数据类型 | 说明 |
|---|---|---|
| 1!IX1.0 | bit | 指站号为 1,PLC 数据单元 IX1.0, 只读。 |
| 1!QW0 | int16 | 指站号为 1,PLC 数据单元 QW0, 支持读写。 |
| 2!MW1 | int16 | 指站号为 2,PLC 数据单元 MW1, 支持读写。 |