wincc v6.0 报警声音
112.95.251.214
发布于2014-04-16 18:10
160
0
标签:
为数不多的机会用wincc来做上位机,麻烦报警声音怎么来做。有没有相关的参考资料。
佳答案
1.winccv6.0可以用horn组态实现声音报警,不用编程。
打开horn,在messageassignment选项页选定messageclass为error,定义一个bool型的tag;在signalassingment选项页选定tag为刚才定义的bool型的tag,在sound中选择要播放的.wav声音文件。
运行时,只要error类别的报警触发,则bool型的tag置位,.wav声音循环播放;在报警控件中确认报警,.wav声音中止,也可以将bool型的tag复位,.wav声音中止。
horn是基本过程控制(bpc)的组件,标准安装是不会安装的。
安装wincc时选择“自定义安装”,已经安装了就选择“安装卸载组件”,组件栏中选择“选项”,右边栏子选项选择“basicprocesscontrol”安装即可。
2.自定义两个内部32位变量stat1和stat1_save,然后在报警记录里面消息位使用外部变量,状态位为stat1中的位。然后在脚本中:
定义两个dword变量a1、b1连接stat1和stat1_save。
#pragmacode("winmm.dll")
voidwinapiplaysounda(char*pszsound,char*hmode,dworddwflag);
#pragmacode()
a1=gettagdword("stat1");
b1=gettagdword("stat1_save");
if((a1^b1)&a1)
settagbit("ok_1",1);
if(gettagbit("ok_1"))
playsounda("c:\winnt\music\06.wav",null,1);
settagdword("stat1_save",a1);