Inovance Modbus TCP
Inovance Modbus TCP 是一种基于以太网的 Modbus 协议版本,它使用 TCP/IP 协议进行通信。
Neuron 的 Inovance Modbus TCP 插件适配汇川 PLC 点位。
添加插件
在 配置 -> 南向设备,点击添加设备来创建设备节点,输入插件名称,插件类型选择 Inovance Modbus TCP 启用插件。
插件 | 说明 |
---|---|
Inovance Modbus TCP | Modbus TCP 协议实现,适配汇川 PLC 点位。 |
设备配置
点击插件卡片或插件列,进入设备配置页。配置 Neuron 与设备建立连接所需的参数,下表为插件相关的配置项。
字段 | 说明 |
---|---|
指令发送间隔 | 发送每条读写指令之间的等待时间。 |
PLC IP 地址 | TCP 连接时,设备的 IP 地址。 |
PLC 端口号 | TCP 连接时,设备的端口号。 |
连接超时时间 | 等待设备返回指令响应的时间。 |
设置组和点位
完成插件的添加和配置后,要建立设备与 Neuron 之间的通信,首先为南向驱动程序添加组和点位。
完成设备配置后,在南向设备页,点击设备卡片/设备列进入组列表页。点击创建来创建组,设定组名称以及采集间隔。完成组的创建后,点击组名称进入点位列表页,添加需要采集的设备点位,包括点位地址,点位属性,数据类型等。
公共配置项部分可参考连接南向设备,本页将介绍支持的数据类型和地址格式部分。
数据类型
- BIT
- INT8
- UINT8
- INT16
- UINT16
- INT32
- UINT32
- INT64
- UINT64
- FLOAT
- DOUBLE
- STRING
- BYTES
地址格式
ADDRESS[.BIT][#ENDIAN][.LEN[H][L][D][E]][.BYTES]
TIP
由于使用 TCP/IP 协议进行通信,通过 IP 地址及端口号搜索设备,报文无需特别指定站点号,Neuron 默认站点号为 1 。
ADDRESS
必填,指寄存器地址。汇川 PLC 对于 MODBUS 协议支持线圈和寄存器访问。不同于标准 Modbus 协议,每个区域的地址范围如下表所示。
地址区域按 PLC 型号分为两种。
小型 PLC:EASY 系列、H5U 等。
地址 | 地址范围 | 数量 | 属性 | 寄存器大小 | 功能码 | 数据类型 |
---|---|---|---|---|---|---|
M0-M7999(线圈) | 0x0000-0x1F3F (0-7999) | 8000 | 读/写 | 1Bit | 0x01,0x05,0x0f | BIT |
B0-B32767(线圈) | 0x3000-0xAFFF (12288-45055) | 32768 | 读/写 | 1Bit | 0x01,0x05,0x0f | BIT |
S0-S4095(线圈) | 0xE000-0xEFFF (57344-61439) | 4096 | 读/写 | 1Bit | 0x01,0x05,0x0f | BIT |
X0-X1777(8 进制)(线圈) | 0xF800-0xFBFF (63488-64511) | 1024 | 读/写 | 1Bit | 0x01,0x05,0x0f | BIT |
Y0-X1777(8 进制)(线圈) | 0xFC00-0xFFFF (64512-65535) | 1024 | 读/写 | 1Bit | 0x01,0x05,0x0f | BIT |
D0-D7999(保持寄存器) | 0x0000-0x1F3F (0-7999) | 8000 | 读/写 | 16Bit,2Byte | 0x03,0x06,0x10 | 多种 |
R0-R32767(保持寄存器) | 0x3000-0xAFFF (12288-45055) | 32768 | 读/写 | 16Bit,2Byte | 0x03,0x06,0x10 | 多种 |
TIP
X 和 Y 区域的地址以八进制表示。
中型 PLC:AM 系列,AC 系列等。
地址 | 地址范围 | 数量 | 属性 | 寄存器大小 | 功能码 | 数据类型 |
---|---|---|---|---|---|---|
QX0.0-QX8191.7(线圈) | 0x0000-0xFFFF (0-65536) | 65536 | 读/写 | 1Bit | 0x01,0x05,0x0f | BIT |
MW0-MW65535(保持寄存器) | 0x0000-0xFFFF (0-65536) | 65536 | 读/写 | 16Bit,2Byte | 0x03,0x06,0x10 | 多种 |
SM0-SM7999 | 0x0000-0x1F3F (0-7999) | 8000 | 读/写 | 16Bit,2Byte | 0x01,0x05,0x0f | BIT |
SD0-SD7999 | 0x0000-0x1F3F (0-7999) | 8000 | 读/写 | 16Bit,2Byte | 0x03,0x06,0x10 | 多种 |
TIP
M 区域有多种寻址方式,支持如下寻址方式:MX、MB、MW、MD,分别按 bit、Byte、Word、Dword 寻址。 当采用 MX、MB 寻址方式时点位仅支持读属性。
.BIT
选填,寄存器中的特定 bit,例如:
地址 | 数据类型 | 说明 |
---|---|---|
D4.0 | bit | D 区域,地址为 4,第 0 位。 |
D10.4 | bit | D 区域,地址为 10,第 4 位。 |
D1.15 | bit | D 区域,地址为 1,第 15 位。 |
#ENDIAN
选填,字节顺序,适用于 int16/uint16/int32/uint32/float 数据类型,详细说明见下表。
符号 | 字节顺序 | 支持的数据类型 | 备注 |
---|---|---|---|
#B | 2,1 | int16/uint16 | |
#L | 1,2 | int16/uint16 | 不填,默认字节顺序 |
#LL | 3,4,1,2 | int32/uint32/float | 不填,默认字节顺序 |
#LB | 4,3,2,1 | int32/uint32/float | |
#BL | 1,2,3,4 | int32/uint32/float | |
#BB | 2,1,4,3 | int32/uint32/float |
TIP
请注意,汇川插件默认字节顺序为 3,4,1,2 因此字节序符号代表的顺序和通用定义不一致。
.LEN[H][L]
当数据类型为 STRING 类型时,.LEN 是必填项,表示字符串需要占用的字节长度,每个寄存器中包含H,L 两种存储方式,如下列表格所示。
符号 | 说明 |
---|---|
H | 一个寄存器存储两个字节,高字节在前低字节在后。 |
L | 一个寄存器存储两个字节,低字节在前高字节在后。 |
TIP
请注意,汇川插件字符串默认字节序为 L。
.BYTES
选填,读写bytes类型数据的长度,适用于 bytes 数据类型。
TIP
Modbus驱动一个寄存器包含2个bytes,在以bytes数据类型读取和写入Modbus寄存器数据时,请保证bytes参数设置为偶数。
地址示例
地址 | 数据类型 | 说明 |
---|---|---|
D8 | int16 | D 区域,地址为 8,字节顺序为 #L |
D8#L | int16 | D 区域,地址为 8,字节顺序为 #L |
D8#B | uint16 | D 区域,地址为 8,字节顺序为 #B |
D8 | int32 | D 区域,地址为 8,字节顺序为 #LL |
D8#LB | uint32 | D 区域,地址为 8,字节顺序为 #LB |
D8#BB | uint32 | D 区域,地址为 8,字节顺序为 #BB |
D8#LL | int32 | D 区域,地址为 8,字节顺序为 #LL |
D8#BL | float | D 区域,地址为 8,字节顺序为 #BL |
D1.10 | String | D 区域,地址为 1,字符长度为 10,字节顺序为 L,占用的地址为 D1 ~ D5 |
D1.10H | String | D 区域,地址为 1,字符长度为 10,字节顺序为 H,占用的地址为 D1 ~ D5 |
D1.10L | String | D 区域,地址为 1,字符长度为 10,字节顺序为 L,占用的地址为 D1 ~ D5 |
M8 | bit | M 区域,地址为 8 |
X10 | bit | X 区域,地址为 8 |
MX1.1 | bit | M 区域,地址为第一个寄存器第十位 |
MB1 | int8 | X 区域,地址为第一个寄存器低字节 |
MW1 | int16 | X 区域,地址为第二个寄存器 |
MD1 | int32 | X 区域,地址为第三个寄存器 |
应用场景
使用汇川的 PLC 编程软件 AutoShop 可以快速连接 PLC 和 Neuron 并调试,具体操作见 Easy521 连接示例。
数据监控
完成点位的配置后,您可点击 监控 -> 数据监控查看设备信息以及反控设备,具体可参考数据监控。