WINCC 报警 声音如何设置

请教一下WINCC里的报警如何发出声音。小弟新手,希望您能尽量简单的指点以下我,呵呵~
现在我做了一个测试的工程,报警里面设置了模拟量报警,报警控件部分没什么问题了,只是如何实现当报警时发出声音这个问题仍然没有解决。
我从百度搜索了好多资源。也看了点介绍,听说有2种主流方法,一种通过C语言的全局脚本,另一种是通过HORN的控件。我的WINCC版本是6.2,我现在已经通过网上的资源做了2个按钮,一个可以发出声音,另一个可以停止发声,接下来就不会做了。请教以下问题:
1、我如何查看我是否安装了HORN控件,HORN控件如何安装
2、通过C语言全局脚本这个方法来添加报警声音的话,具体应该如何操作,网上搜的这个脚本编译的时候有问题。把这个脚本添加上以后又改如何操作呢
 #pragma code("winmm.dll")
BOOL PlaySound(LPCTSTR lpszSound,HMODULE hmodule,DWORD dwsound );
BOOL ss=( GetTagBit("S11.8")==1|| GetTagBit("S12.8")==1|| GetTagBit("S11.7")==1|| GetTagBit("S11.6")==1|| GetTagBit("S11.4")==1|| GetTagBit("S11.5")==1|| GetTagBit("S12.6")==1)
#pragma code( )
if(GetTagBit("111")==1&&ss==1)
{
PlaySound("d:\\qhhmi11-7-11\\ringout.wav",NULL,8 );

最佳答案

1:你可以打开WINCC后,在系统树中看到HORN组件有没有安装,如果没有安装,
   你得重新运行WINCC安装文件,选择自定义安装,在里面虽然看不到HORN组件,但是你把有安装的都安装了,嘻嘻,我就是这么做的。
2:你上面代码肯定有问题呀,首先差一个}。
我给你一个我的代码希望能帮助到你
#include "apdefap.h"

int gscAction( void )
{
#pragma code("winmm.dll")
VOID WINAPI PlaySoundA(char *pszSound,char*hMode,DWORD dwFlag);
#pragma code()
if(GetTagBit("horn_ok")==1)
                           {
                            PlaySoundA(GetTagChar("horn_tag"),NULL,1);//这里面的horn_tag是语音路经,这样可以灵活报警
                             }
if (GetTagWord("horn_ok")==0)//这个条件意思是当用户按了确认报警时要停止报警
                           {
                                   SetTagChar("horn_tag","");//只要给horn_tag为空,就不报警了
                                   SetTagWord("horn_ok",1);

                                   }

return 0; 

}

图片说明:

WINCC 报警 声音如何设置  

提问者对于答案的评价:
时间快到了。先把分给您慢慢看

专家置评

通过安装基本过程控制(Basic Process Control)来安装horn组件。
关于声音报警的设置可以参考 阿鸣 的答案。

原创文章,作者:more0621,如若转载,请注明出处:https://www.zhaoplc.com/plc263785.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2019年6月11日
下一篇 2019年6月11日

相关推荐