
作者:张占领-西门子工业技术支持中心写在前面(文中超链接仅在微信公众号“智能制造之家”有效)前面我们介绍了很多WinCC相关的知识:典型架构及选型指南WinCC的虚拟化架构与技术WinCC与第三方系统......
写在前面(文中超链接仅在微信公众号“智能制造之家”有效)
前面我们介绍了很多WinCC相关的知识:
典型架构及选型指南
WinCC的虚拟化架构与技术
WinCC与第三方系统数据交互—IndustrialDataBridge
WinCC与MES的生产工单和批次数据交互
WinCC是如何承接上层MES和下层PLC的通信的?
也介绍了西门子的冗余系统:
什么是冗余系统—记1515R冗余编程组态调试
什么是软冗余——S7-300/400软冗余调试学习
今天来聊一聊WinCC与西门子S7-1500R/H系统的通信~
以下为本次采用的软件和硬件:
软件:
WinCC:
Step7:SIMATICSTEP7ProfessionalV16
硬件:
CPU1515R-2PN
IM155-6PN
方法1:系统IP通信
WinCC通过S7-1500R/H的系统IP通信,这时S7-1500R/H的2个CPU被看作1个PLC,系统IP自动连接到主PLC。当主PLC宕机后,WinCC通过此系统IP自动切换到备用PLC上。这种方式组态简单,与单PLC无异,WinCC通信连接中的IP地址输入S7-1500R的系统IP即可。
这种方式适用PC是单网卡的网络结构
这种连接方式下支持符号访问,也支持AS读取变量,我们着重介绍方法2
方法2:通过系统变量通信
开始支持通过”系统变量“控制的S7-1500R/H冗余通信。可支持单网卡的网络,也可支持双网卡的冗余网络。
原理:WinCC与主PLC的固定IP通信,监视”通讯连接状态的系统变量“,当主PLC宕机后,WinCC通过“通信控制变量”切换到备用PLC的固定IP进行通讯。
组态步骤如下:
第一步:创建连接
在WinCC中创建CPU1的连接,用其固定IP地址
第二步:创建系统变量
在WinCC连接下,手动创建系统变量,变量名格式为“@连接名称@变量名称”。变量地址为空或者使用PLC中没有用到的地址。其变量名称和数据类型如下
各系统变量的作用如下:
“@connectionname@ForceConnectionState”:用来建立/终止冗余连接,设置为1:建立连接,设置为0:断开连接。这里此变量建议设置初始值为1
“@connectionname@AlternativeAddress”:设置与备用CPU(CPU2)的连接的参数属性,格式为“AccessPoint=访问点名称;IPAddress=备用PLCIP地址;”,需要设置初始值备用连接和组态的连接可以使用同一个访问名,也可以使用不同的访问名。使用不的访问名时,WinCC可以指定两块网卡分别连接S7-1500R的两个CPU。
“@connectionname@UseAlternativeAddress”:设置使用组态的连接还是备用连接,设置为1:使用备用连接,设置为0:使用组态的连接。
“@connectionname@OpStateConfiguredAddress”:读取S7-1500R的CPU1当前的操作模式,0:notconnected,4:STOP,6:STARTUP,8:RUN,22:SYNCUP。
“@connectionname@@OpStateConfiguredAddress”:读取S7-1500R的CPU2当前的操作模式,0:notconnected,4:STOP,6:STARTUP,8:RUN,22:SYNCUP。
“@connectionname@RedundantCPUs”:指示所连接的控制器是否冗余,设置为1:代表所连接的PLC是S7-1500R/H,设置为0代表所连接的PLC是非冗余的S7-1200/1500。这里设置初值为1。
第三步:变量赋初值
为“@AlternativeAddress”和“@RedundantCPUs”赋初值。
“@AlternativeAddress”为“AccessPoint=CP_H1_1:;IPAddress=192.168.1.2;”
“@RedundantCPUs”为1。
第四步:创建全局动作
通过变量“@UseAlternativeAddress”设定WinCC的连接参数,包括访问点和PLCIP地址。
注意:修改“@UseAlternativeAddress”的值后,需重新置位“@ForceConnectionState”。
1、创建全局VBS动作
创建全局VBS动作,自动切换WinCC连接参数,包括下面2种情况:
(1)当前连接中断
(2)S7-1500/1200被置STOP模式
判断方法:
(1)@ConnectionState=0代表当前连接中断。
(2)WinCC连接正常时(@ConnectionState=1)
当@UseAlternativeAddress=0并且@OpStateConfiguredAddress=4时,代表当前WinCC连接到CPU1,并且所连接的CPU为STOP模式。
当@UseAlternativeAddress=1并且@OpStateAlternativeAddress=4时,代表当前WinCC连接到CPU2,并且所连接的CPU为STOP模式。
VBS动作脚本
以上脚本可以在WinCC帮助中搜索‘VBS381’来获取
2、VBS动作的触发器
当WinCC连接中断或所连CPU的操作模式变为STOP时,需要触发切换脚本。
设置VBS动作的触发器
相关推荐
工业以太网网络拓扑、冗余环网入门与实例分析—PN
西门子WinCCOA的冗余、分布式及混合模式浅析:从软件架构到实例应用
使用S7-1200和1500轻松连接物联网MQTT消息服务器
当树莓派+S7-1500与阿里云跨界相遇-自动化工程师的数字化之路
第五步:启动运行
在WinCC启动列表中选择“全局脚本运行系统”,然后激活WinCC运行系统。
可以看到,当WinCC与主PLC连接网络中断或主PLC变成STOP模式时,WinCC连接都会切换连接至备用PLC,保证正常通信。
说明:1、WinCC使用两块网卡和S7-1500R/H通信
WinCC可组态不同的网卡进行通信。设置变量“@AlternativeAddress”使连接不同的访问名,本文中,主连接使用访问名“CP_H1_1:”,备用连接使用访问名“CP_H1_2:”,这样WinCC就可以使用两块不同的网卡分别连接冗余的两个CPU。
2、如何确保WinCC连接到主CPU
WinCC通过系统IP与S7-1500R/H通信时,是系统主动识别并连接到主CPU的。但WinCC通过系统变量控制通信连接的方式,则不一定,需要确保WinCC中设定的主连接(如IP地址)是指向当前实际的主CPU(S7-1500面板上显示P为主CPU,B为备CPU).
硬核专辑
工业热点|数据采集|应用与库(西门子、罗克韦尔、倍福等)
WinCC技术|工业网络|MES技术相关|工业巨头战略布局|工业通讯案例
仿真与虚拟调试|职业感悟、认知提升|自动化控制标准合集
解析工业网络中的交换、路由、VLAN,工业网络的个人进阶指南|原创
2020-09-16
工业软件:一文讲透国内外MES/MOM市场格局,主流厂商及其优势行业
2020-09-19
工业网络的两层与三级-从PLM、MES到SCADA、PLC的连接
2020-09-15
工业互联网平台核心技术之一:数据集成与边缘处理
2020-09-12
到底是什么让工程师成了一份苦逼的工作??
2020-09-09
工业软件巨头解读:西门子是一家软件公司,达索是一家“3D体验”公司
2020-09-08
西门子、施耐德、罗克韦尔PLC程序设计漏洞探秘
2020-09-07
一文了解西门子、达索、施耐德、罗克韦尔等巨头数字化工厂仿真软件
2020-08-27
WinCC(TIAPortal)访问SQLSERVER数据库
2020-08-22
134页官方PPT解读西门子数字化工业服务
2020-08-24
WinCC与MES的生产工单和批次数据交互
2020-08-07