1、 第 37 章 MODBUS TCP/IP 网关 功能 EasyBuilder Pro V4.00.01 1 1 1 37. MODBUS TCP/IP 网关功能 本章节说明如何使用 MODBUS TCP/IP 网关功能并建立地址对应表。 37. MODBUS TCP/IP 网关功能 1 37.1. 概要 2 37.2. 如何建立一个地址对应表 2 37.3. 地址对应设定须知 5 第 37 章 MODBUS TCP/IP 网关 功能 EasyBuilder Pro V4.00.01 2 2 2 37.1. 概要 以往若要使用 SCADA (Supervisory Control and Da
2、ta Acquisition) 软件去存取与 触摸屏 连接的 PLC 数据时,需通过数据传输先将 PLC 数据传送至 触 摸屏 的本地地址,再于 电脑 上使用 MODBUS TCP/IP 通讯协议去读取 触摸屏 的本地地址将 PLC 数据取回。 现在用户可以通过 EasyBuilder 提供的 MODBUS TCP/IP 网关功能,将 MODBUS 与 PLC 的地址预先设定对应后,即可以直接利用 MODBUS TCP/IP 通讯协议存取 PLC 上的数据。 37.2. 如何建立一个地址对应表 新增一 个地址对应表 ,请依照下列步骤: 1. 于 “系统参数设定 设备清单 ” 新增欲监控的 PL
3、C 设备。 (以 FATEK FB Series 为例 ) 2. 新增 一个 MODBUS Server (以太网 ),并启用 “MODBUS TCP/IP 网关 ”,如下图: 第 37 章 MODBUS TCP/IP 网关 功能 EasyBuilder Pro V4.00.01 3 3 3 3. 点选 “地址对应表 ” 按钮后,会显示预设的对应表,用户可以依需求修改并新增其它对应表。 4. 假设, SCADA 需存取 FATEK FB Series PLC 的 D0 寄存器开始的连续 50 个地址,设定如下: 第 37 章 MODBUS TCP/IP 网关 功能 EasyBuilder Pr
4、o V4.00.01 4 4 4 第 37 章 MODBUS TCP/IP 网关 功能 EasyBuilder Pro V4.00.01 5 5 5 (1) 设定欲对应的寄存器类型,此范例为 “字符 ”。 (2) 设定欲对应的寄存器之存取模式,此范例为 “读 /写 ”。 (3) 设定欲对应的 MODBUS 起始地址,此范例为 “4x1”。 (4) 设定欲对应的 PLC 起始地址,此范例为 “D0”。 (5) 设定欲对应地址的范围大小,此范例为 “50”。 (6) 选择是否要高 /低字节或高 /低字符组转换。 上图的设定内容说明 MODBUS Server 4x1 4x50 地址对应到 FATE
5、K FB Series PLC 的 D0 D49 地址。 5. 完成以上设定后, SCADA 只需利用 MODBUS TCP/IP 协议,发送读 /写 4x1 4x50 地址的命令,即可以直接存取 FATEK FB Series PLC 的 D0 D49 地址。 37.3. 地址对应设定须知 “MODBUS TCP/IP 网关 ” 功能不支持使用 UDP。 只支持使用 MODBUS Server (以太网 ) 接口。 系统提供寄存器 LW-9288,可用来指示此功能数据传送是否正常。 各错误码表示如下: 数值 定义 0 正常 1 读取或写入未定义在地址对应表中的寄存器 2 读取或写入的地址范围
6、超出单一地址对应表所定义的数据长度 (或是读取 /写入跨表格的寄存器 ) 3 命令格式未遵循 MODBUS TCP/IP 通讯协议 4 修改只允许读取的寄存器 5 读取只允许写入的寄存器 6 在设定的时间 内无法得到 PLC 的正确响应 7 使用了 MODBUS Server 不支持的功能码 各个对应表间定义的寄存器之地址范围不可重复。 启用 “MODBUS TCP/IP 网关 ” 功能后, EasyBuilder 将取消 MODBUS Server 与 触摸屏 地址间原有的对应关系,包含: (1) 0x, 1x 对应到 LB 第 37 章 MODBUS TCP/IP 网关 功能 EasyBu
7、ilder Pro V4.00.01 6 6 6 (2) 3x, 4x 对应到 LW, RW 因此如需通过 0x, 1x, 3x, 4x 的命令来存取 LB 或 LW 的数据,仍需先将地址对应关系重新设定于 “地址对应表 ” 中,可参考下列设定内容。 SCADA 一次只能读取 /写入一个对应表内的寄存器,即无法使用同一个 MODBUS 命令存取不同表格中的寄存器。 以上图为例,于 “对应表 1” 设定 MODBUS 4x1 对应到 D200 地址,长度为 99;于 “对应表 2” 设定 MODBUS 4x100 对应到 R0 地址,长度为 100,若此时 SCADA 发出一道命令要一次读取 4x 1 4x199 长度为 199 的地址,因已经跨表格存取,此命令将不被 触摸屏 接受,应将命令分为两道分别存取 4x1 4x 99 和 4x100 4x199。如下图: