使用S7-1500冗余PLC 建立ModbusTCP通信
1.1 网络结构1.2 系统 IP 介绍1.3 Modbus TCP 通讯编程1.3.1 CPU 做服务器1.3.2 CPU 做客户端1.1 网络结构
以 CPU151 7H 为例, 网络结构示意如下图所示:
CPU 1517H 冗余 PLC 有 PROFINET X1 接口和 X2 接口, Modbus TCP 通讯可以将设备(例如 Standard PLC)通过交换机接入到任何网络接口中。如果接入 X1 接口,需要通过交换机接入到 MRP 环网中,但是并不需要支持 H-sync 转发。如果接入 X2 接口,只需要使用交换机将设备(例如 Standard PLC)接入就可以, 不需要组成 MRP 环网,同时交换机也不需要选择支持MRP 和 H-sync 转发。
1.2 系统 IP 介绍
对于 S7-1500R/H 冗余系统除了各 CPU 的设备 IP 地址之外, S7-1500R/H 冗余系统还可以分配以下系统 IP 地址:
两个 CPU 上 PROFINET 接口 X1 的系统 IP 地址两个 CPU 上 PROFINET 接口 X2 的系统 IP 地址
通过系统 IP 地址,可与其它设备(如, HMI 设备、 CPU、 PG/PC)进行通信。 这些设备通常通过系统 IP 地址与冗余系统的主 CPU 进行数据通信。这样,可确保在冗余操作中原来的主CPU 发生故障后,通信伙伴可在 RUN-Solo 系统状态下与新的主 CPU(之前的备用 CPU) 进行数据通信。每个系统 IP 地址都有一个虚拟 MAC 地址, 用户可在 STEP 7 中启用该系统 IP 地址。
与设备 IP 地址相比,系统 IP 地址的优势:
通信伙伴专与主 CPU 进行通信。即使主 CPU 故障,仍可通过系统 IP 地址与 S7-1500R/H 冗余系统进行数据通信。
以下介绍 Modbus TCP 通讯的连接的建立与编程。
1.3 Modbus TCP 通讯编程
1.3.1 CPU 做服务器
本节以 CPU 1517H 作为服务器端与 ModScan32 进行 Modbus TCP 通讯组态步骤如下:
设定 ModScan32 步骤
同时可以在 TIA Portal 中的网络视图(图 1 ) 中也可看到链接已经建立完成, ID 为 1 的 OUC连接的状态已经变成绿色了。
下面可以通过 ModScan32 向寄存器中写入数据进行测试,从图 2 中可以看到向 40001 中写入数据 55, 然后在 PLC 侧的 DB 块中可以看到第一个数据变成了 55。或者将 PLC 侧Sever_Data[9]的数值修改成 1 05,同时可以看到 ModScan32 这侧的 40010 的数值变成了 1 05。
1.3.2 CPU 做客户端
本节以 CPU 1517H 作为客户端与 Modbus TCP Client Tester 软件进行 Modbus TCP 通讯。
组态步骤如下:
未编辑完,待续….