发布时间:2019-08-24 来源:众智博远
通过系统 IP 地址建立开放式用户通信连接
S7‑1500R/H 冗余系统可通过开放式用户通信与其它设备进行通信。
在用户程序中可通过“TSEND_C”之类的指令建立连接。S7‑1500R/H 冗余系统不支持所组态的连接。
用户可通过设备 IP 地址建立连接,也可通过 PROFINET 接口的系统 IP 地址建立连接。
如果通过系统 IP 地址建立连接,则通常与主 CPU 进行通信。
建议:始终使用系统 IP 地址进行开放式用户通信。
在冗余模式下,冗余系统可通过任何一个设备 IP 地址建立/终止连接和发送/接收数据。
如果通过设备 IP 地址建立连接,则通过相应的 CPU 进行通信。如果该 CPU 发生故障,则通过该 CPU 的设备 IP 地址进行的所有通信都将失败。
在以下章节中,介绍了如何通过系统 IP 地址从 S7‑1500R/H 冗余系统与另一个 CPU 建立连接。
在 S7‑1500R/H 冗余系统的用户程序中,可通过 TSEND_C 指令建立连接。在其它 CPU 的用户程序中,创建相应的 TRCV_C 指令。
在此,我们将以 S7‑1500R/H 冗余系统与 CPU 1516‑3PN/DP 间的 TCP 连接为例,进行详细说明。
S7‑1500R/H 冗余系统,带有两个 CPU 1513‑1PN
PROFINET 接口 X1 的系统 IP 地址已启用。
CPU 1516‑3PN/DP
CPU 1513R 的 PROFINET 接口 X1 与 CPU 1516‑3 PN/DP 的 PROFINET 接口 X2 位于同一子网中。
图片: TCP连接的组态示例
要与其它 CPU 建立 TCP‑连接,请按以下步骤操作:
在用户程序中,创建一个“TSEND_C”指令。
图片: S7‑1500R/H:“TSEND_C”指令
选择“TSEND_C”指令。
在巡视窗口中,浏览到“属性 > 组态 > 连接参数”(Properties > Configuration > Connection parameters)。
在左侧,S7‑1500R/H 冗余系统为该连接的本地端点:
图片: S7-1500R/H:在 STEP 7 中为指令“TSEND_C”分配参数:
- “接口”(Interface):X1 为当前接口。
- “子网:”(Subnet:):如果接口 X1 分配给 S7 子网,则 STEP 7 中会显示该 S7 子网的名称。
- 选择复选框“使用 H 系统的地址”(Use address of the H‑system)。S7‑1500R/H 冗余系统的系统 IP 地址位于“地址”(Address) 中。
在“端点:”(End point:) 下方的“伙伴”(Partner) 中,选择 CPU 1516‑3 PN/DP 作为通信伙伴。
在“接口:”(Interface:) 下方的“伙伴”(Partner) 中,选择 CPU 1516‑3 PN/DP 的 PROFINET 接口 X2。
在“连接数据”(Connection data) 下方的“本地”(Local) 中,选择设置“
在“连接类型”(Connection typea) 下方的“伙伴”(Partners) 中,选择设置“TCP”。
STEP 7 将在其它 CPU 的用户程序中为连接数据创建一个数据块。
在 CPU 1516‑3PN/DP 的用户程序中创建一个 TRCV_C 指令并按照以下方式分配参数:
图片: S7‑1500R/H:在 STEP 7 中为指令“TRCV_C”分配参数:
要通过两个 CPU 中一个 CPU 的设备 IP 地址建立 OUC 连接:
选择 S7‑1500R/H 冗余系统中所需的 PROFINET 接口。
取消选择“使用 H 系统的地址”(Use address of H‑system) 复选框。
图片: 通过设备 IP 地址建立 OUC 连接