您现在所在的是:

西门子SIEMENS

回帖:0个,阅读:349 [上一页] [1] [下一页]
7747
大连德嘉工控WB 版主
文章数:1719
年度积分:813
历史总积分:7747
注册时间:2018/5/31
发站内信
发表于:2024/7/4 10:34:01
#0楼
       很多现场情况会遇到控制柜突然停电,柜子里的PLC及相关设备都会断电停机,导致上位机WinCC不正常退出,很有可能会使数据库不完整,导致下次WinCC启动时不能正常工作(经常要消耗大量的时间才能进入运行状态,甚至会出现死机现象),因此我们给出的解决方案是:配备小容量UPS电源,只要WinCC这台电脑能工作几分钟即可,以及添加断电时继电器触发节点。本文介绍通过WinCC的C脚本功能,保证下次WinCC启动的数据完整性和快速性,WinCC会自动退出的功能。
1、以S7-1200PLC为例,建立连接后,首先在WinCC上定义变量,例如:“powoff”
附件 图片1.jpg
2、然后在全局脚本中打开“C编辑器”,然后新建动作,另存为action.pas,全局脚本的C-Editor全局动作里面就会出现action.pas
附件 图片2.jpg
3、双击action.pas重新进行编辑触发器,编写如下代码:
附件 图片3.jpg
#include "apdefap.h"
int gscAction( void )
{
if (GetTagBit("powoff")==1)
{ExitWinCC ();};
return 0;
}
4、点击信息/触发器图标——触发器——周期——添加周期,触发器名称例如“aaa”,周期选择2秒,选择确定
附件 图片4.jpg
5、然后可以在画面上,添加一个输入/输出域,选择关联变量“powoff”。
附件 图片5.jpg
6、最后在计算机属性里,勾选“全局脚本运行系统”,然后运行WinCC
附件 图片6.jpg
运行后发现当变量“powoff”即M0.0,值由0变为1时,WinCC就会自动退出运行系统,并且自动关闭WinCC软件。
7、本文只是介绍了简单情况,如要实现更复杂的情况(比如:继电器动作后延时5秒后WinCC自动退出等等)都可通过C脚本方式实现!
[此贴子已经被作者于2024/7/4 11:48:55编辑过]

关于我们 | 联系我们 | 广告服务 | 本站动态 | 友情链接 | 法律声明 | 非法和不良信息举报

工控网客服热线:0755-86369299
版权所有 工控网 Copyright©2024 Gkong.com, All Rights Reserved

31.2002