作者: 张占领 - 西门子工业技术支持中心

来源:西门子文档“WinCC_S71500R_GS”

写在前面(文中超链接仅在微信公众号“智能制造之家”有效)

前面我们介绍了很多WinCC相关的知识:

WinCC V7.5典型架构及选型指南

WinCC的虚拟化架构与技术

WinCC与第三方系统数据交互—IndustrialDataBridge

WinCC与MES的生产工单和批次数据交互

WinCC是如何承接上层MES和下层PLC的通信的?

也介绍了西门子的冗余系统:

什么是冗余系统—记1515R冗余编程组态调试

什么是软冗余——S7-300/400软冗余调试学习

今天来聊一聊WinCC与西门子S7-1500R/H系统的通信~

WinCC与S7-1500R/H冗余系统通信有2种方式

以下为本次采用的软件和硬件:

软件:

WinCC : SIMATIC WinCC V7.5 SP1

Step7:SIMATIC STEP7 Professional V16

硬件:

CPU 1515R-2 PN

IM 155-6 PN

方法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:通过系统变量通信

WinCC V7.5 SP1 开始支持通过”系统变量“控制的S7-1500R/H冗余通信。可支持单网卡的网络,也可支持双网卡的冗余网络。

原理:WinCC与主PLC的固定IP通信,监视”通讯连接状态的系统变量“,当主PLC宕机后,WinCC通过“通信控制变量”切换到备用PLC的固定IP进行通讯。

组态步骤如下:

第一步:创建连接

在WinCC中创建CPU1的连接,用其固定IP地址

第二步:创建系统变量

在WinCC连接下,手动创建系统变量,变量名格式为“@连接名称@变量名称”。变量地址为空或者使用PLC中没有用到的地址。其变量名称和数据类型如下

各系统变量的作用如下:

  1. “@@ForceConnectionState” :用来建立/终止冗余连接,设置为1:建立连接,设置为0:断开连接。这里此变量建议设置初始值为1
  2. “@@ConnectionState” :用来反馈冗余连接状态, 值为1时代表连接已经建立,值为0时代表连接已经断开
  3. “@@ConfiguredAddress” :用来反馈所组态的连接参数属性。格式为“AccessPoint=访问点名称;IPAddress=PLC IP地址;”
  4. “@@AlternativeAddress” :设置与备用 CPU(CPU2) 的连接的参数属性,格式为“AccessPoint=访问点名称;IPAddress=备用PLC IP地址;”,需要设置初始值备用连接和组态的连接可以使用同一个访问名,也可以使用不同的访问名。使用不的访问名时,WinCC可以指定两块网卡分别连接S7-1500R的两个CPU。
  5. “@@CurrentAddress” :反馈当前连接的参数属性。
  6. “@@UseAlternativeAddress” : 设置使用组态的连接还是备用连接,设置为1:使用备用连接,设置为0:使用组态的连接。
  7. “@@OpStateConfiguredAddress ” :读取S7-1500R的CPU1 当前的操作模式,0: not connected,4: STOP,6: STARTUP,8: RUN,22: SYNCUP。
  8. “@@>@OpStateConfiguredAddress” :读取S7-1500R的CPU2 当前的操作模式,0: not connected,4: STOP,6: STARTUP,8: RUN,22: SYNCUP。
  9. “@@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的连接参数,包括访问点和PLC IP地址。

注意:修改“@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

西门子WinCC OA的冗余、分布式及混合模式浅析:从软件架构到实例应用

使用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 (TIA Portal) 访问 SQL SERVER数据库

2020-08-22

134页官方PPT解读西门子数字化工业服务

2020-08-24

WinCC与MES的生产工单和批次数据交互

2020-08-07

wincc工程组态论文_WinCC与S7-1500 R/H冗余系统的通信解析相关推荐

  1. wincc工程组态论文_WinCC组态的功能有哪些

    描述 WinCC作为一个HMI/SCADA软件系统,既是一个人机界面,又用作监视.控制和采集,其具备的以下基本功能(如图1所示): 1.画面功能(GraphicsSystem):监视底层设备数据.工艺 ...

  2. wincc工程组态论文_VBA技术在WinCC工程组态中的应用.pdf

    VBA技术在WinCC工程组态中的应用 学兔兔 VBA技术在WinCC工程组态中的应用 ApplicationofVBAinWinCCprojectconfiguration 梁洪方',黄玉彦 ,乔茜 ...

  3. wincc工程组态论文_基于WinCC软件的组态设计与实现

    论文编号:ZD818    论文字数:21315,页数:41,附任务书,开题报告,文献综述.MCG文件 基于WinCC软件的组态设计与实现 摘要:本文主要介绍WinCC组态软件的功能和使用方法.提出了 ...

  4. 如何在TIA 博途 WinCC中组态WinCC Runtime Advanced 和 S7 控制器的PROFINET通信连接?

    如何在TIA 博途 WinCC中组态WinCC Runtime Advanced 和 S7 控制器的PROFINET通信连接? 前提条件: • WinCC (TIA 博途) 高级版 • STEP 7 ...

  5. 西门子wincc工程项目实例 wincc7.0 水处理项目水,处理工程项目(渗透、反渗透、含锌水、含铬水处理、制造纯水等)其中包括配套的S7程序

    西门子wincc工程项目实例 wincc7.0 水处理项目水,处理工程项目(渗透.反渗透.含锌水.含铬水处理.制造纯水等)其中包括配套的S7程序. 此项目工程中,对结构变量,脚本,C语言,以及怎样将报 ...

  6. 博图程序需要手动同步_西门子博图v15新功能-工程组态选件

    PLCSIM Advanced在循环 OB(如循环中断 OB)的过程映像分区上实现 PLCSIM Advanced 与协同仿真工具的同步. 支持非循环服务 (RDREC/WRREC) 和中断(如硬件中 ...

  7. 基于S7–1500的单部六层电梯教程(一)

    Background: 该系列文章写于2020/8月,西门子智能制造线上赛期间. 疫情原因,西门子智能制造挑战赛于2020年发起了一次线上赛.线上赛的资格赛就是利用EET评分的单部六层电梯的程序编写. ...

  8. 西门子wincc工程项目实例 wincc7.0 水处理项目水,处理工程项目

    西门子wincc工程项目实例 wincc7.0 水处理项目水,处理工程项目(渗透.反渗透.含锌水.含铬水处理.制造纯水等)其中包括配套的S7程序. 此项目工程中,对结构变量,脚本,C语言,以及怎样将报 ...

  9. wincc上位机与1200组态步骤_博途v13的wincc能组态上位机吗

    请问博途v13的wincc与wincc v7.3的区别在哪儿 最佳答案 可以的 博图WINCC分三个版本,其中Professional版本可以组态上位机运行系统comfort和basic 版本仅用于触 ...

最新文章

  1. php 如何发送json数据格式,Php如何使用curl发送json格式数据实例
  2. Python网络爬虫与信息提取(二)(BeautifulSoup库)
  3. 数据可视化|实验三 分析特征内部数据分布于分散状况
  4. 出海,这可能会是国产浏览器产品的唯一出路
  5. 完美程序员的10种品质
  6. Azure KUDU工具
  7. Linux---用户与用户组管理
  8. sprintf与swprintf
  9. sersync实现多台服务器实时同步文件
  10. pyqt5 tablewidget 设置行高_Python+PyQt5基础开发(10)
  11. Eplan教程——利用在线帮助系统解读项目检查错误消息
  12. 关于为了吃瓜通宵7天写了一个网站却没钱买域名这件小事
  13. Spark独到见解--Action算子总结
  14. OpenStack创建实例提示失败的具体原因如下: created even after we waited 191 seconds or 61 attempts
  15. 关于深入理解Java线程
  16. 结算时打印购物小票,计算此次获得的会员积分
  17. 浅谈5G通信面临的电磁兼容挑战及解决方法
  18. 什么是hql,与sql的区别
  19. c语言找出链表中倒数第k的数,查找链表中倒数第k个结点
  20. 搜索框和按钮放在同一行

热门文章

  1. 如何用 JS 实现 3D 赛车效果
  2. dayjs Timezone 设置默认时区
  3. PAT-A1011 World Cup Betting
  4. 关于人脸识别技术的调研报告
  5. Unity3D占用内存太大怎么解决呢? -补
  6. 数据挖掘项目的特征和关键环节
  7. java中的in的语法_java的输入语法
  8. 在地图上,如何对一个地区进行矩形划分
  9. 家谱管理系统c++实现
  10. 解决DVWA“reCAPTCHA key: Missing”