wincc报警功能如何实现技巧 点击:3374 | 回复:14



Smile-lyc

    
  • [管理员]
  • 精华:127帖
  • 求助:50帖
  • 帖子:3482帖 | 22331回
  • 年度积分:1963
  • 历史总积分:145694
  • 注册:2006年8月04日
发表于:2017-03-03 14:03:52
楼主

如何触发计算机扬声器的声音? 
首先必须在画面中插入报警控件,可以用以下两种方式来确认信息: 
可以用如下的函数来确认单条信息: 
4版本和低于此版本的WinCC:BOOL OnBtnSinglAckn(char*lpszPictureName,char*lpszObjectName)
5版本和高于此版本的WinCC:BOOL AXC_OnBtnSinglAckn(char*lpszPictureName,char*lpszObjectName) 

可以用如下的函数确认报警窗口所有可见的报警: 
4版本和低于此版本的WinCC:BOOL OnBtnVisibleAckn(char*lpszPictureName,char*lpszObjectName)
5版本和高于此版本的WinCC:BOOL AXC_OnBtnVisibleAckn(char*lpszPictureName,char*lpszObje 


1分不嫌少!


楼主最近还看过



研讨会宣传员_3259

  • [版主]
  • 精华:3帖
  • 求助:110帖
  • 帖子:1928帖 | 14403回
  • 年度积分:102
  • 历史总积分:64749
  • 注册:2020年3月27日
发表于:2017-03-03 14:06:15
1楼

牛气冲天的帖子,学习并顶你!

gongkongXman

  • 精华:0帖
  • 求助:0帖
  • 帖子:182帖 | 479回
  • 年度积分:285
  • 历史总积分:6652
  • 注册:2002年7月30日
发表于:2017-03-03 14:07:04
2楼

写的不错。


来人啊,传旨:赏……

Smile-lyc

  • [管理员]
  • 精华:127帖
  • 求助:50帖
  • 帖子:3482帖 | 22331回
  • 年度积分:1963
  • 历史总积分:145694
  • 注册:2006年8月04日
发表于:2017-03-03 14:07:35
3楼

如何实现从WinCC运行画面跳转至WinCC控制中心? 

最好的方式是在WinCC运行画面上做一个按钮,该按钮应该置为密码保护,在该按钮上设置C-action。 
低于WinCC V5.0:
#pragma code("user32.dll")
Bool SetForegroundWindow(HWND);
#pragma code()
HWND handle;
Handle=FindWindow("MCPFrameWndClass",NULL);
If(!SetForegroundWindow(handle))printf("\r\n SetForeground fails");
5.0版本和高于此版本的WinCC:
#pragma code("user32.dll")
Bool SetForegroundWindow(HWND);
#pragma code()
HWND handle;
Handle=FindWindow("WinCCExplorerFrameWndClass",NULL);
If(!SetForegroundWindow(handle)) printf("\r\n SetForeground fails");

如何在WinCC中读取计算机系统时间? 

可以编写如下的C-action: 
#pragma code("kernel32.dll");
Void GetLocalTimes(SYSTEMTIME* lpst);
#pragma code();
SYSTEMTIME time;
GetLocalTime(&time);
SetTagWord("Varname",time.wYear );
SetTagWord("Varname",time.wMonth );
SetTagWord("Varname",time.wDayOfWeek );
SetTagWord("Varname",time.wDay );
SetTagWord("Varname",time.wHour );
SetTagWord("Varname",time.wMinute );
SetTagWord("Varname",time.wSecond );
SetTagWord("Varname",time.wMilliseconds );

如何经由Windows对话框设置日期和时间? 

可以将修改日期、时间的Windows对话框调出来,调用程序如下: 
#include "apdefap.h"
void onClick(char*lpszPictureName,char*lpszObjectName,
char* lpszPropertyName)
{ ProgramExecute("C:\\WIN95\\control.exe timedate.cpl"); } 
注意:您在使用此程序时,需根据您的Control Panel安装的具体路径来填写。

如何在WinCC里用C语言调用SQL语言? 

1、创建一个SQL文件。
此文件在ISQL中创建,文件内容是所希望执行的SQL语句。 

2、在WinCC的C Script中编写程序调用此SQL文件,如以下程序所示: 

#include "apdefap.h"
void OnLButtonDown(char* lpszPictureName, 
char* lpszObjectName,
char* lpszPropertyName, 
UINT nFlags, int x, int y)
{
char*a="C:\\SIEMENS\\Common\\SQLANY\\ISQL-q-b-c
UID=DBA;PWD=SQL;DBF=E:\\testsql\\testsqlRT.DB;
DBN=CC_testsql_99-12-03_12:48:26R;READ
E:\\testsql\\test.sql";
printf("%s\r\n",a);
ProgramExecute(a);
}
下面是一个简单的SQL文件内容:
select * from pde#hd#t#test;
output to E:\\test2.txt FORMAT ascii

注意:文件名及路径中不要带空格。


如何整点启动归档? 

在"Global Script"下的Project functions编写函数:cyclicarchive 
BOOL cyclicarchive()
{
#pragma code ("kernel32.dll");
void GetLocalTime (SYSTEMTIME* lpst);
#pragma code();
SYSTEMTIME time;
Int t1;
GetLocalTime(&time);
t1=time.wMinute;
if(t1==00)
{
SetTagBit("startarchive",1);
return(BOOL)(GetTagBit("startarchive"));
}

在Tagloging中的"Properties of process tag"中的"Archive Tag"tab下的Archiving type选择Cycle-selective,在"Event"标签下的"Start Event"内选择cyclicarchive函数。 

如何在按键组合被禁用的情况下,从WinCC运行环境进入WinCC Control Center? 

最好是做一个按钮,该按钮需要用用户权限保护,在该钮中编写如下C-action: 
低于WinCC 5.0版本:
#pragma code ("user32.dll");
BOOL SetForegroundWindow(HWND);
#pragma code();
HWND handle;
handle=FindWindow("MCPFrameWndClass",NULL);
If (!SetForegroundWindow(handle))
Printf ("\r\n SetForeground fails");

WinCC 5.0版本以及更高的版本:
#pragma code("user32.dll");
BOOL SetForegroundWindow(HWND);
#pragma code();
HWND handle;
handle=FindWindow("WinCCExplorerFrameWndClass",NULL);
If (!SetForegroundWindow(handle))
Printf ("\r\n SetForeground fails"); 


怎样对一个WinCC的项目进行转换? 

当对一个V4.X版本的WinCC项目升级到5.X时,V4.X下的项目必须进行版本转换。若使用"交叉索引"编辑器时,必须保证项目已进行了正确无误的转换。 
项目转换分下列几步依次完成:
在WinCC资源管理器中,选中图形编辑器,击鼠标右健。 
1.全局库的转换
在弹出下拉菜单中选中"转换全局库"条目,系统会自动对全局库进行转换, 转换结束后退出。 
2.项目库的转换
在弹出下拉菜单中选中"转换项目库"条目,确认后系统自动对库进行转换。 
3.图形画面转换
在弹出下拉菜单中选中"转换画面"条目,在弹出画面按"确认"后,系统自动进行所有画面的转换。 
注意:包含有"未定义对象"的画面,如在PC机上未装相应对象服务器的,决不要转换, 否则画面会被损坏。 
4.基本数据转换
分屏向导:在WinCC资源管理器中,打开分屏向导(在基本数据项下)的弹出式菜单,并选择"打开"条目。
报警记录向导:在WinCC资源管理器中,打开报警记录向导的弹出式菜单(在基本数据项下),并选择"打开"条目。

我用WinCC Web Navigator时,为什么总是提示错误信息"The maximum permissible number of user is connected to the WinCC-Server"? 

您使用WinCCV5/SP1和Web NavigatorV1.0时,您看到以上错误信息,错误原因是: 
实际用户数目超过授权数量限制。
措施:升级WebNavigator,使其能支持更多的客户端。 
缺少授权,WinCC会提示您所缺少的授权。
措施:添加所缺的授权。 
未将"WebNavigatorRT.exe"加在WinCC启动列表中。
措施:将此文件加入WinCC的启动列表中。

courage__sky

  • 精华:0帖
  • 求助:0帖
  • 帖子:0帖 | 130回
  • 年度积分:0
  • 历史总积分:158
  • 注册:2016年5月16日
发表于:2017-07-20 08:55:42
4楼

谢谢楼主的分享,希望能有有用谢谢楼主的分享

猫和夜晚

  • 精华:0帖
  • 求助:0帖
  • 帖子:0帖 | 33回
  • 年度积分:0
  • 历史总积分:262
  • 注册:2017年7月19日
发表于:2017-07-20 09:17:14
5楼

好好干发货发货发过火发黑寡妇

weishaojun125

  • 精华:0帖
  • 求助:0帖
  • 帖子:2帖 | 761回
  • 年度积分:0
  • 历史总积分:491
  • 注册:2008年2月15日
发表于:2017-08-14 13:22:53
6楼

好东西,学习了,谢谢分享…………

lpcqql

  • 精华:0帖
  • 求助:0帖
  • 帖子:4帖 | 50回
  • 年度积分:0
  • 历史总积分:109
  • 注册:2007年3月20日
发表于:2017-08-16 17:01:54
7楼

牛气冲天的帖子,学习并顶你!

心情

  • 精华:0帖
  • 求助:0帖
  • 帖子:0帖 | 7回
  • 年度积分:0
  • 历史总积分:55
  • 注册:2017年9月12日
发表于:2017-10-09 08:35:16
8楼

ttttttttttttttttttttttttttttt

认真的雪_90

  • 精华:0帖
  • 求助:0帖
  • 帖子:4帖 | 228回
  • 年度积分:14
  • 历史总积分:458
  • 注册:2007年7月31日
发表于:2017-10-14 12:59:06
9楼

不错的脚本,工程用的上

shaoyu0517

  • 精华:0帖
  • 求助:0帖
  • 帖子:0帖 | 36回
  • 年度积分:0
  • 历史总积分:121
  • 注册:2017年10月15日
发表于:2017-10-16 08:21:07
10楼

不错,值得学习,看一下

cyf612

  • 精华:0帖
  • 求助:0帖
  • 帖子:0帖 | 82回
  • 年度积分:0
  • 历史总积分:118
  • 注册:2017年2月08日
发表于:2017-10-23 19:43:50
11楼

好东西,学习了,谢谢分享………

百年蓝黑

  • 精华:0帖
  • 求助:0帖
  • 帖子:0帖 | 160回
  • 年度积分:0
  • 历史总积分:127
  • 注册:2017年12月04日
发表于:2018-02-09 08:39:31
12楼

mark一下,日后学习

小皇冠

  • 精华:0帖
  • 求助:0帖
  • 帖子:0帖 | 30回
  • 年度积分:0
  • 历史总积分:106
  • 注册:2018年2月10日
发表于:2018-02-14 11:50:29
13楼

学习交流非常好

lee1204

  • 精华:0帖
  • 求助:0帖
  • 帖子:0帖 | 82回
  • 年度积分:0
  • 历史总积分:112
  • 注册:2018年3月01日
发表于:2018-03-02 15:17:07
14楼

楼主是个非常有才的人 由衷的感谢分享


热门招聘
相关主题

官方公众号

智造工程师