WINCC70组态报警声音演示过程

合集下载

WinCC -- 组态报警和消息 -- 声音报警和消息

WinCC -- 组态报警和消息 -- 声音报警和消息
再次到来或者重新启动“Horn”才会被触发。您可以通过设置内部系统变量“@RestartHorn” 为 “1”来重新启动“Horn”。当“Horn”被重新启动后,系统自动重置系统变量“@RestartHorn”的值为
/CN/llisapi.dll/24740744?func=ll&objId=24740... 2008-3-19
/CN/llisapi.dll/24740744?func=ll&objId=24740... 2008-3-19
Siemens - Automation and Drives - Service& Support - Automation Service, Automat... Page 6 of 24
消息的声音输出能够在WinCC服务器和WinCC客户端执行。“Horn”需要在每一WinCC工作站单独配 置。
“Horn”编辑器允许您使用确认变量或者一个确认组来配置一个多重确认。使用确认组的多重确认选件将从 WinCCV6.2以后可以获得。在这里,“Horn”确认可应用于在被设置为相同的确认组的WinCC工作站。确 认组是一个简单的,实现客户端,服务器和冗余服务器器的声音信号输出的多重确认的方法 ,推荐使用一 个确认组的来实现多重确认。
Siemens - Automation and Drives - Service& Support - Automation Service, Automat... Page 2 of 24
“0”。
z 通过用户自定义逻辑设置/重设信号变量 信号变量的值没有必要必须连接到消息级别的报警状态。设置/重设信号变量的逻辑同样也可以在用 户指定逻辑中编程。
显示订货号 如何设置带有声音的信号消息?

wincc7.0中如何用上升沿触发音频输出,起到报警的作用

wincc7.0中如何用上升沿触发音频输出,起到报警的作用

wincc7.0中如何用上升沿触发音频输出,起到报警的作用想在工控机上装音响,设备停机就报警,这个该如何做?问题补充:不想用报警控件来触发让音响报警,除了这个之外还有别的办法吗?重点是在软件上如何编写指令使连接在工控机上的音响发声。

最佳答案其实不用horn报警器也是做出来。

上次试了试完全没有问题。

用wincc的全局脚本,做语音报警,1:用周期性1s做触发器2:当变量”报警”置1时,语音报警一直持续。

当变量”报警”置0时,语音报警停止继续。

程序如下:#include”apdefap.h”intgscaction(void){#pragmacode(“winmm.dll”)voidwinapiplaysounda(char*pszsound,char*hmode,dworddwfla g);#pragmacode()if(gattagbit(“报警”))playsounda(“c:\winnt.400\media\tada.wav”,null,0x1);return0;}注意:1:音乐地址为c:\winnt.400\media\tada.wav。

为\。

是不行的。

2:0x1也可以写成0x8.playsounda函数的说明:参数char*pszsound:指定声音文件(*.wav文件)的全路径。

参数char*hmode:总为0。

参数dworddwflag:snd_sync=0x0000:声音文件播放一次,该脚本一直等到播放结束snd_async=0x0001:声音文件播放一次,同时并行处理该脚本snd_nodefault=0x0002:如果未找到该声音文件,则不播放默认值,而是什么也不播放。

snd_loop=0x0008:重复该声音文件直到下个playsounda 调用(只能通过0x0001)=>总是指定0x0009。

WinCC实现声音报警的方法

WinCC实现声音报警的方法

#include "apdefap.h"int gscAction( void ){#pragma code("Winmm.dll")VOID WINAPI PlaySoundA(char* pszSound,char* hmode,DWORD dwFlag);#pragma code( )if (GetTagByte("TI101")>100){PlaySoundA("C:\\\\Program Files\\\\Windows NT\\\\Pinball\\\\SOUND36.WAV",NULL,1);} return 0;}报警可以用以下两种实现方法:1、建一个全局脚本,时基为2S#include "apdefap.h"int gscAction( void ){#pragma code("Winmm.dll")VOID WINAPI PlaySoundA(char* pszSound,char* hmode,DWORD dwFlag);#pragma code( )if (GetTagByte("TAG")==1) 或if (GetTagByte("TAG")>500) {PlaySoundA("d:\\ringout.wav",NULL,1);}return 0;}用以上程序就可以实现单个变量报警,开关量为1或模似量大于500都可以报警,用户可以根据自己的情况改变以上数值,如果有多个变量可以增加多个if .2、通过报警记录,先在报警记录中组态好报警记录建一个全局脚本,时基为2S#include "apdefap.h"int gscAction( void ){MSG_RTDATA_STRUCT mRT;int i;char* pszToken;//Now is my code#pragma code("Winmm.dll")BOOL WINAPI sndPlaySoundA(char* szWave,DWORD dwFlag);#pragma code()DWORD SND_ASYNC=0x0001;DWORD SND_LOOP=0x0008;DWORD alarmsum,alarmunack;LPCMN_ERROR errorunack,errorsum;#pragma code("msrtcli.dll")#pragma code()LPDWORD lpdwServiceID;MSG_SERVICE_NOTIFY_PROC lpfnNotifyProc;LPMSG_FILTER_STRUCT lpMsgFilter;DWORD dwNotifyMask;LPVOID lpvUser;LPCMN_ERROR lpError;BOOL n1;n1=MSRTGetMsgQuit(&alarmunack,errorunack);SetTagDWord("number",alarmunack);MSRTGetMsgActual(&alarmsum,errorsum);SetTagDWord("sum",alarmsum);if (alarmsum==0)sndPlaySoundA(NULL,SND_ASYNC);else{if (alarmunack>0)sndPlaySoundA("C:\\Program Files\\WindowsNT\\Pinball\\SOUND36.WAV",SND_ASYNC|SND_LOOP);elsesndPlaySoundA(NULL,SND_ASYNC);//sndPlaySoundA("C:\\windows\\media\\office97\\laser.wav",SND_ASYNC|SND_LOOP); }return 1;}这个可以实现报警记录中只要有报警发生,那么就触发声音报警。

wincc7.0中如何用上升沿触发音频输出,起到报警的作用

wincc7.0中如何用上升沿触发音频输出,起到报警的作用

wincc7.0中如何用上升沿触发音频输出,起到报警的作用想在工控机上装音响,设备停机就报警,这个该如何做?问题补充:不想用报警控件来触发让音响报警,除了这个之外还有别的办法吗?重点是在软件上如何编写指令使连接在工控机上的音响发声。

最佳答案其实不用horn报警器也是做出来。

上次试了试完全没有问题。

用wincc的全局脚本,做语音报警,1:用周期性1s做触发器2:当变量”报警”置1时,语音报警一直持续。

当变量”报警”置0时,语音报警停止继续。

程序如下:#include”apdefap.h”intgscaction(void){#pragmacode(“winmm.dll”)voidwinapiplaysounda(char*pszsound,char*hmode,dworddwfla g);#pragmacode()if(gattagbit(“报警”))playsounda(“c:\winnt.400\media\tada.wav”,null,0x1);return0;}注意:1:音乐地址为c:\winnt.400\media\tada.wav。

为\。

是不行的。

2:0x1也可以写成0x8.playsounda函数的说明:参数char*pszsound:指定声音文件(*.wav文件)的全路径。

参数char*hmode:总为0。

参数dworddwflag:snd_sync=0x0000:声音文件播放一次,该脚本一直等到播放结束snd_async=0x0001:声音文件播放一次,同时并行处理该脚本snd_nodefault=0x0002:如果未找到该声音文件,则不播放默认值,而是什么也不播放。

snd_loop=0x0008:重复该声音文件直到下个playsounda 调用(只能通过0x0001)=>总是指定0x0009。

wincc软件报警声音的做法

wincc软件报警声音的做法

Wincc软件报警声音的触发和确认
通过wincc内部变量的Horn变量组,报警记录,报警器,实现触发报警声音
第一步:打开wincc变量管理器,选中内部变量,在Horn变量组新建几个内部变量,本例中新建HORN_ALM,数据格式定无符号的值,8位,16位,32位都可以,本例中定义为32位,新建HORN1,HORN2,HORN3,数据格式为二进制变量
第二步:打开报警记录,在消息下面可以新建消息,本例中创建了三个消息组,按报警的等级创建了一级报警,二级报警,三级报警,等级的划分看项目上是否有要求,没有就不用划分
第三步:将HORN_ALM变量在添加到三个消息组中,消息位不能重复,HORN_ALM定位32位值,消息位可以从0-31中任意选择
第四步:打开报警器,在消息分配中将三个报警等级选上,消息类别对应的变量为新建内部变量的HORN1,HORN2,HORN3
第五步:在信号分配中,组态HORN1,HORN2,HORN3,对应报警声音文件
总共五步步骤可以实现通过Horn变量组,报警记录,报警器,触发报警声音
报警声音的确认:使用wincc AlarmControl报警控件,当报警消息到达后,会出现报警栏中,通过报警栏上的单个确认按钮或全部确认按钮确认到达的报警条目,当报警消息确认后报警声音停止。

WinCC实现声音报警的方法

WinCC实现声音报警的方法
Windows XP电
^JWindo*rs XPK£]WlndQrS XP J
Windows XF PS^Jringin WaVsΛjWιndovs XP ^^jrlngout. WaVrJWindO^SXP
请单击继续
大才
——
40
39
39
首先请记录声音文件所
WaV
.WaV
.VraLv
.Wav
vfs XF腿?单命令・way
工15t辽t∙*3
23
23
22
22
20
20
17
10
7
6
3
2
2
205
□≡≡同步
匚:线性标定
过程值范圉
值1
≡2
变呈值范国
从操作粟纭观点看变星的数据类型
取消

■全局库
÷IBiSPlayrS
÷ _J OPerati on
÷ _J Γl WtELein^nt 2
SlQ
+_J SyiTlbOIS
念项目库
⅛ ⅛β X
^pragmaOPtiOn(mbcs)
//WIN ∞:TAGNAME-BSECTlONeSTART
// syntax: #define TQgNameInAetion "DMTagName11
//nextTQglD:1
//WIN CC:TAGNAME_S ECTIONLEND
/∕WIN∞PICNAME-SECTION-START
inf
+:」InStalIer
,*∣j ⅛v∙⅛
12 sChelnaS
Media
Mi CrOSOft. NEr ms agent Risapps fhui network diagnostic OfnLRe Web P⅛ξβs

详细介绍WinCC报警记录(理论+实操图示)ppt课件

详细介绍WinCC报警记录(理论+实操图示)ppt课件
第6章 报警记录
WinCC中的报警记录编辑器主要用来采集、 显示和归档运行信息及由过程数据状态导致的报警 消息。
本章将介绍如何组态报警以及报警显示界面。
6.1组态报警的相关概念
6.2组态报警
6.3 组态报警显示
6.4 WinCC报警控件标准函数的使用
6.1 组态报警的相关概念 6.1.1归档
根据消息级别,消息状态中发生的变化被写入可 组态的消息归档。消息归档可以分为长期归档和 短期归档。 长期归档:归档的大小要由归档的消息时间跨度 确定。长期归档可以是连续归档或顺序归档。在 连续归档中,达到归档消息的最大数量以后,最 早的消息被覆盖。 短期归档:归档大小要由消息数量确定。短期归 档只能创建为连续归档。在短期归档中最多可存 储10000个消息状态改变。如果已经达到归档消 息的最大数量,最早的消息将被覆盖。
6.1.2消息及确认
1. 单个消息和组消息 2. 2. 单个确认和组确认 3. 事件分为二进制事件和监控事件 4. 初始值消息和新值消息 5. 消息 6. 消息类型、消息类别 7. 消息块 8. 消息事件、消息状态
9. 消息窗口 10. 消息变量 11. 消息的操作步骤 12. 消息行 13. 报表 14. 确认离开的方法 15. 确认变量 16. 状态变量
6.2 组态报警
浏览窗口
ห้องสมุดไป่ตู้
数据窗口
表格窗口
从图中可以看到 报警记录编辑器包含三个区域:
(1) 浏览窗口 组态消息,在根目录下按顺序进入各级文件夹。
(2) 数据窗口 显示可用对象的符号。双击可访问各报警记录设 置。
(3) 表格窗口 包含单个消息和已组态的属性的表格,双击编辑 单个域。
6通.2过.1菜启单动“系文统件向→导选择向导”对话框,如图:

wincc声音报警实现方法

wincc声音报警实现方法
NT\\Pinball\\SOUND36.WAV",SND_ASYNC|SND_LOOP);
else
sndPlaySoundA(NULL,SND_ASYNC);
//sndPlaySoundA("C:\\windows\\media\\office97\\laser.wav",SND_ASYNC|SND_LOOP);
#pragma code("Winmm.dll")
BOOL WINAPI sndPlaySoundA(char* szWave,DWORD dwFlag);
#pragma code()
DWORD SND_ASYNC=0x0001;
DWORD SND_LOOP=0x0008;
DWORD alarmsum,alarmunack;
#pragma code( )
if (GetTagByte("TAG")==1) 或 if (GetTagByte("TAG")>500)
{PlaySoundA("d:\\ringout.wav",NULL,1);}
return 0;
}
用以上程序就可以实现单个变量报警,开关量为1或模似量大于500都可以报警,用户可以根据自己的情况改变以上数值,如果有多个变量可以增加多个if .
MSRTGetMsgActual(&alarmsum,errorsum);
SetTagDWord("sum",alarmsum);
if (alarmsum==0)
sndPlaySoundA(NULL,SND_ASYNC);
else

WINCC实现有声报警的方法

WINCC实现有声报警的方法

WINCC实现有声报警的方法WinCC实现声音报警的方法#include "apdefap.h"int gscAction( void ){#pragma code("Winmm.dll")VOID WINAPI PlaySoundA(char* pszSound,char* hmode,DWORD dwFlag);#pragma code( )if (GetTagByte("TI101")>100){PlaySoundA("C:\\\\Program Files\\\\Windows NT\\\\Pinball\\\\SOUND36.WAV",NULL,1);}return 0;}报警可以用以下两种实现方法:1、建一个全局脚本,时基为2S#include "apdefap.h"int gscAction( void ){#pragma code("Winmm.dll")VOID WINAPI PlaySoundA(char* pszSound,char* hmode,DWORD dwFlag);#pragma code( )if (GetTagByte("TAG")==1) 或 if (GetT agByte("TAG")>500){PlaySoundA("d:\\ringout.wav",NULL,1);}return 0;}用以上程序就可以实现单个变量报警,开关量为1或模似量大于500都可以报警,用户可以根据自己的情况改变以上数值,如果有多个变量可以增加多个if .2、通过报警记录,先在报警记录中组态好报警记录建一个全局脚本,时基为2S#include "apdefap.h"int gscAction( void ){MSG_RTDATA_STRUCT mRT;int i;char* pszT oken;//Now is my code#pragma code("Winmm.dll")BOOL WINAPI sndPlaySoundA(char* szWave,DWORD dwFlag);#pragma code()DWORD SND_ASYNC=0x0001;DWORD SND_LOOP=0x0008;DWORD alarmsum,alarmunack;LPCMN_ERROR errorunack,errorsum;#pragma code("msrtcli.dll")#pragma code()LPDWORD lpdwServiceID;MSG_SERVICE_NOTIFY_PROC lpfnNotifyProc; LPMSG_FILTER_STRUCT lpMsgFilter;DWORD dwNotifyMask;LPVOID lpvUser;LPCMN_ERROR lpError;BOOL n1;n1=MSRTGetMsgQuit(&alarmunack,errorunack); SetTagDWord("number",alarmunack); MSRTGetMsgActual(&alarmsum,errorsum);SetTagDWord("sum",alarmsum);if (alarmsum==0)sndPlaySoundA(NULL,SND_ASYNC);else{if (alarmunack>0)sndPlaySoundA("C:\\Program Files\\Windows NT\\Pinball\\SOUND36.WAV",SND_ASYNC|SND_LOOP); else sndPlaySoundA(NULL,SND_ASYNC);//sndPlaySoundA("C:\\windows\\media\\office97\\laser.wav ",SND_ASYNC|SND_LOOP);}return 1;}这个可以实现报警记录中只要有报警发生,那么就触发声音报警。

WinCC实现声音报警的方法

WinCC实现声音报警的方法
//Syntex: ^define PiCNGmeInACtiOnllPictureNsme"
//next PidD:1
//WlNCCFICNAMEeSECTIONeEND
^include,⅛pdefap h"
^PrSgmaCOde("Winmrn.dll,,)
VOlD WlNAPl PleySOUndA (CharfcPSZSOUnd,ChGL广hmode, DWORD dυvflag);
#Pragma code(
PlaySOUndA(
}
PlaySOUndA ι⅛数的说啊=
姿数char* PSZSoUndt
指定声音文件r.wav ±ftj的全S⅛径G
篆武CharThmodθf为NLILL.
参数DWoRD Clvxflag:
SND,SYNC = OXOOOOf津首文件播取一次J诙脚本一宜尊到播歆结朿
^pragmaOPtiOn(mbcs)
//WIN ∞:TAGNAME-BSECTlONeSTART
// syntax: #define TQgNameInAetion "DMTagName11
//nextTQglD:1
//WIN CC:TAGNAME_S ECTIONLEND
/∕WIN∞PICNAME-SECTION-START
在WirlCC中实现声音报警功能
内容介绍;
1、C脚本播放WaV文件
2、C脚本触发Pe蜂鸣器
3、VBS脚本调用媒体播放器
3、报警器HORN的使用
C脚本播放WaV文杵
ffinclude "aρdefap.h
VOid OnCliCk(Char
ffpragma COde ('Winmrτι.dll

WinCC的声音报警(通过HORN控件和脚本分别实现)

WinCC的声音报警(通过HORN控件和脚本分别实现)

WinCC的声音报警对于组态软件WinCC中的声音报警,也有不少的朋友在讨论这个话题,在这里写的是我在出差期间,需要在项目中用到的声音报警,并且实现自动触发,按钮关闭声音,再次自动触发的循环声音报警代码.1.采用代码实现首先,这是一个全局脚本(在全局脚本中创建一个项目函数,然后调用此函数),可以放在当前显示的画面的任何元素中,并对代码进行如下的添加:建个变量(Bit)“AlarmSound”有报警的时候为“1”,没有报警的时候“0”,写个全局脚本触发器里选择变量触发“AlarmSound”(脚本触发变量为内部变量,若是外部变量则使其与一内部变量关联)int gscAction( void ){#pragma code("Winmm.dll")BOOL WINAPI sndPlaySoundA(char* szWave,DWORD dwFlag);#pragma code()if(GetTagBit("AlarmSound")!=0)sndPlaySoundA("c:\\win2003\\system32\\ALSNDMGR.WAV",0X1|0X8);elsesndPlaySoundA(NULL,0X0);return 0;}即可实现在肩控画面中出现报警的同时启动声音文件.在停止的时候用按钮控制,其中事件代码为:#include "apdefap.h"void OnClick(char* lpszPictureName, char* lpszObjectName, char* lpszPropertyName){#pragma code("Winmm.dll")BOOL WINAPI sndPlaySoundA(char* szWave,DWORD dwFlag);#pragma code()sndPlaySoundA(NULL,0X0);}对上述代码中:关于windows API函数sndPlaySoundA(char* szWave,DWORD dwFlag);char* szWave是声音文件的路径DWORD dwFlag是标识常量0x0:播放WAV文件,播放完毕后将控制转移回你的应用程序中。

wincc多用户组态客户端如何实现语音报警

wincc多用户组态客户端如何实现语音报警

一,打开服务端网络共享
出现问题原因:
网络发现依赖于以下服务项:
Function Discovery Resource Publication
SSDP Discovery
UPnP Device Host
DNS Client
Server
所以将这五项系统级服务启动,并且设置为自动启动,即可,设置方法如下所示:
1. 打开powershell,如图所示:
2. 然后录入:services.msc,回车,如图所示:
3.打开系统服务管理器,如图,找到该服务,右键,属性,如图所示:
然后选择启动类型为"自动",并点击启动,确定如图:
4.依次启动
SSDP Discovery
UPnP Device Host
DNS Client
Server
然后设置为自动就可以了.
5.再次打开控制面板---网络共享中心---高级网络共享设置,勾选为启动网络发现,确定,如图所示:
6.重复打开,发现仍是选中的"启用网络发现",说明已经配置成功了.
二、关闭服务端和客户端防火墙。

三、通过客户端找到服务端语音地址(网络地址)
网络路径为:\\HPJKSEVER\WinCC_Project_hpsevser\Horn\超温保护四、服务端组态语音报警
触发变量:
五、激活服务端wincc,连接客户端wincc即可实现语音报警。

WINCC通过PC电脑主机输出报警音效

WINCC通过PC电脑主机输出报警音效

WINCC通过电脑机箱~输出报警音效
步骤一:建立WINCC变量,对应PLC的报警输出变量(例Q1.0)
步骤二:建立WINCC内部变量,在WINCC报警控件报警时,做为联接电脑里音频文件用。

名称任意:例:1:eorrsond,2:syssond
步骤三:编辑WINCC“报警记录”连接变量Q1.0,做为报警输出
步骤四:编辑WINCC”报警器”
连接变量:
1、消息分配:(可以编辑两种类型的报警,2种形式)
选择“错误”对应wincc内部变量1:eorrsond,
新建行:选择“系统,需要确认”对应wincc内部变量2:syssond 2、信号分配:变量1对应C:\Windows\Media\DJ.wav
变量2对应C:\Windows\Media\任意.wav
注:连接的音频文件,需是(.wav)格式,pcm编码
步骤五:编辑WINCC”画面编辑器”
步骤六:编辑WINCC”画面编辑器”-勾选报警记录运行系统
步骤七:保存,运行,与PLC进行通信,正常运行控制
步骤八:模拟报警变量Q1.0置1,报警记录输出,音频同时播放,步骤九:取消报警,需要点击“WINCC ALARM CONTROL”上按钮,经岗位确认后,进行报警取消。

WinCC实现声音报警的方法

WinCC实现声音报警的方法

内料介绍:C 脚本播放wav 艾件 C 脚木触发PC 蜂鸣器 VBS 脚木调用媒休播放器 报警器HORN 的使用、、、〕._j C:\WIHDOWS\Media、x 名称大才Q Config 亠(Sljonest^p. mi d40 39 3-91 _J CursorsXP 关键性终止.WWXp 电话拨入wav@1 Dowiiloade& Frogrsiii lil^s+ 二 Driver Cacheehome鬥 Fonts 田亡j HelpIIS Temporary Compressed Files ime in£InstallerowsWindows @L|Win ^WindowsWindows ^Jrecycle, w l±lX 首先请记录声音文件所 存放的路径名及文件名 (脚本当中需要填写) j125chemas MediaMicrosoft. HETiris agent crisapps rriuinetwork diagnostic + 因Offline Web Pa.ges +: _j pchoalth;3 Fe^rNet,J Prefetch^Windows X (g^flonri sh. (gjwindovs XFWindows XF town.(Tii iWindows XPWindows XPe]Windows XF(£]Windoys XF 込Ji-ingim wav^Windows XF^^jringout. waWindows XPWindows XFg ijilstart. wav请单击继续电 .wav av .wav .wav .wav 单命令川葩 23 23 22 22 20 20 17 10 7 6 3 2 2 205首先创建一个模拟水泵运行状 态的Bool 型变量“ Pump i ”濟抽电直X f W SE M 舒3舍局库E-C ] Displays + _J Op er at i CRB + 口 FlantELem ents⑥曰 _______ + 口 Symb ols 电SiemensHTAI ■库 D: \TESTPRJ\raCC\ELearning\0®总/电皂X 囤|》注ffii [画&-»—Q-& —M A$¥J -Ky J -?ra IS 曲如如符设管处、员Mf ns D HT昭跟A 全形科暖作规 (Tler AS AS AS Is 安泵变材采操常□□口□口 Hl rr l i ..砂t r r a ^^H M 冷却泵简易立式泵2 口离心泵1[®fil离心泵3 离心泵4离心泵2■对象属性扈性事件SymbolLibrary Cont roll打开泵对象的属性窗口进行属性设置■ Symb olLi brary i几何其它拄岸屁性Pi cture伸展符号翻转对象闪烁速度静态动?原本・0中-500添加泵的湄/停‘控制按钮在画面中插入诊断窗口(使于检验脚本执行过程D■对象冒性11形按钮园形按钮1十-1双点划线线宽二E 智能对象□画面窗口 0控件OLE 元素 筍入/辐出域应用程序窗口 对鎳展性GSC Diagnostics&翠玄应用程厚窗口融示勰翅框题IA斥显可可边标_冒前应用鸟窗口 1是是是是是是是否□匣園函=国形对象 伏态显示厘性爭件划启动/停止“按钮组态事件在以下情况下执行释放左键 按右键 释放右键动作动作边… E直接连接@)・.・ 总册]除鬼)^include •'apdefap -h" void OrtCIick(chIp§zPictureName, char^IpszObjectName, char* IpszPropertyName) { ^pragma option(mbcs)//WINCC:TAGNAME_SECTION_START// syntax:卡define TagNameInAction "DhCTsgMsme" //nextTsglD : 1//WIN CQTAGNAME.S ECTION 上 ND〃 WIN CCPICNAM E_SECTION_START// syntax: #define PicN&melnAction ''PictureName" //next PicID: 1/./WIN CCPICNAM E.SECTION.END ^include "apdefap.h"fKpragmacode ("Winmm.dll '*)VOID WINAPI PlaySoundA (char* pszSound, char^hmode, DWORD dwflag); #pragmacodeO printfC Start V\n H );PlaySoundA(,,C :WINDOWSWedia\VXLARM8.WAV ,,z NULLO); printf(,,End\rAn ,,)J T}t^pragma option (mbes)// WINCCTAG NAME.S E CTION^START//syntax: #define TagNameInAction "DMTagName" //next Tag ID : 1// WINCCTAG NAME_S E CTION.END圖SetTagBit3 SetTagByte 蜀 SetTagChar 圃 SetTagJouble 窗 SetTagDWord ►3SetTagfloa.t 圃 SetTagRaw 圃 SetTagSByte :...3 SetTagSDWord ; (3)SetTagSWord :蜀 SetTag :ViLu.e •““ 畐 SetTagWord.•♦-目 wince启动按钮C 脚本&匸空都崖欽►2Jallocate c_bibgraphics13邑曲 Sgset£1S Q state wait^include "apdefap.h"void OnCli ck(ch IpszPictureName, chs.^ IpszObjectName, char* IpszPropertyName) #pragm a option (m b cs)// WIN CC:TAG NAME^S E CTION_START// syntax: ^define TagNameInActi o n "DMTagName"//nextTagID : 1// WIN CC:TAG NAME.S E CTIO N_END// WIN CC:PICNAME_S ECTION_START// syntax: #define PicNameInAction "PictureName"//next PicID : 1//WINCC:PICNAME_SECTION_END尹in elude "apdefaph"^pragmacode ("Winmm.dll')VOID WIN API PlaySoundACchar" pszSound, char^hmode, DWORD dwflag);#pragmacodeQprintff Start \r\n n):PlaySoundAC'CA^INDOWS^MedisX^L^RMSWAV^N UIXO); printfCEndW1);^etTagBitfPumpI"J); //Return-Type:BOOL^)停止按钮C脚本include "apdefap-h11void OnClick(char^ IpszPictureName, char^ IpszObjectName, chat^ IpszPropertyN ame) {#pragma option(mbcs)//WINCC:TAGNAME_SECTION.START// syntax: #deline TagNamelnAction "DMTagName"//nextTagID : 1//WINCC:TAGNAME_SECTION_END//WINCCFICNAME.SECTION.START// syntax: #deline PicName InAction "PictureName"//nextPiclD:1//WINCC:PICNAME_SECTION_END#include "apdefap.h"#pragma code ("Winmm.dll '*)VOID WIN API PlaySoundA (char^ pszSound, char^ hmode z DWORD dwflag);# pragma codeOprintfCStart^n11);PlaySoundAC'OWINDOWS^Media^LARMS.WAV'LNU 丄0); printfC'End^n'1);SetTagBitC'Pumpl'lO); //Return-Type: BOOL注意:Flag =0x0000,该脚本独占C脚本线程,其它C脚本在此期间无法执行。

WINCC7.0组态报警声音演示过程

WINCC7.0组态报警声音演示过程

一、使用Horn报警器
WINCC软件“帮助”中有报警器用法的详细说明Horn有关的系统变量
@RestartHorn
@Horn TriggeringSingalsActive 禁止或者运行播放声音文件
@HornSettingTagsActive
@HornReset 可以用来确认报警,停止报警声音
开始组态
创建两个信号变量
在图形编辑器下报警记录下完成
打开报警器组态消息分配
组态信号分配(需要提前下载WAW格式的报警声音文件)
二、用C脚本播放WAV文件
组态:启动按钮字体-文本-启动效果-全局颜色方案-否颜色-背景颜色-绿色停止按钮字体-文本-停止效果-全局颜色方案-否颜色-背景颜色-红色为了监视程序运行,要插入智能对象
组态启动按钮C动作
#include”apdefap.h”
#pragma code(”Winmm.dll”)
VOID WINAPI PlaySoundA(char*pszSound,char*hmode,DWORD dwflag); #pragma code()
printf(“Start\r\n”);
PlaySoundA(“C:\\WINDOWS\\Media\\ALARM8.WAV”,NULL,0);
printf(“End\r\n”);
组态启动按钮的SetTagBit 组态停止按钮的SetTagBit
三、用C脚本触发PC蜂鸣器
#include”apdefap.h”
#pragma code(”Kernel32.dll”)
BOOL Beep(DWORD dwFreq,DWORD dwDuration); #pragma code()
BOOL Beep(1000,100);。

WINCC声音报警共14页

WINCC声音报警共14页

WinCC -- 显示订货号站配置声卡或信号模块。

该实例描述了如何组态报警设备的报警和警告事件类来触发语音信号。

下述内容包括了工程站的所有组态(包括冗余服务器和OS客户端组态及消息确认)。

1.按照PCS 7 V6.0组态手册在SIMATIC Manager中组态所有单站、服务器、冗余服务器和客户OS站。

2.在工程站上通过WinCC Explorer打开 SIMATIC PCS 7 单站或服务器OS站。

3.切换到WinCC Explorer中的“内部变量”管理,在“Horn”变量组中分别为报警和警告事件类创建内部变量(也可以创建/选择新的变量组)。

图 01:报警设备编辑器中为后续连接创建内部变量4.注意事项:该程序仅用于在连接的OS客户站上进行组确认的情况下。

这时,需要其他的变量。

在同一组中创建该内部变量并确保对这些变量设置为“项目范围更新”。

图 02:通过“项目范围更新”定义的变量属性对话框5.双击WinCC Explorer中的Horn图标打开报警编辑器。

在“信号分配”标签中的事件类的下拉菜单中选择“报警”,下一行选择“警告”。

插入需要的其他事件类。

图 03:在“信号分配”标签中为报警编辑器组态和选择事件类。

6.通过“变量”栏中的变量选择对话框选择内部变量,该变量先前已被创建用于报警和警告事件类。

在后面通过这些变量的赋值过程控制声信号的触发。

图 04:在“信号分配”标签中选择报警编辑器的内部变量7.在“信号分配”标签中可从下拉菜单中使应用用户权限设置,并且此处必须按优先级激活事件变量。

您可以在文本末列出的文档中找到更多信息。

8.在该例的报警编辑器中组态“信号分配”标签,如下图所示。

图 05:报警编辑器中组态“信号分配”标签9.打开“信号分配”标签。

该标签中,先前选择的变量与信号模块的输出相连接(输出1、2或3),或者,如实例所示,通过声卡为信号的声输出选择语音文件(*.WAV)。

在每行中选择两个内部变量用于报警和警告;通过变量选择对话框的“Tag”栏选择。

WinCC的声音报警(通过HORN控件和脚本分别实现)

WinCC的声音报警(通过HORN控件和脚本分别实现)

WinCC的声音报警对于组态软件WinCC中的声音报警,也有不少的朋友在讨论这个话题,在这里写的是我在出差期间,需要在项目中用到的声音报警,并且实现自动触发,按钮关闭声音,再次自动触发的循环声音报警代码.在这之前我也不会用这一方面的报警,毕竟C语言对我来说,我只能说了解而不是精通,下面的代码实现过程是我从其他地方咨询了多次找来的可行的解决办法.1.采用代码实现首先,这是一个全局脚本(在全局脚本中创建一个项目函数,然后调用此函数),可以放在当前显示的画面的任何元素中,并对代码进行如下的添加:建个变量(Bit)“AlarmSound”有报警的时候为“1”,没有报警的时候“0”,写个全局脚本触发器里选择变量触发“AlarmSound”(脚本触发变量为内部变量,若是外部变量则使其与一内部变量关联)int gscAction( void ){#pragma code("Winmm.dll")BOOL WINAPI sndPlaySoundA(char* szWave,DWORD dwFlag);#pragma code()if(GetTagBit("AlarmSound")!=0)sndPlaySoundA("c:\\win2003\\system32\\ALSNDMGR.WAV",0X1|0X8);elsesndPlaySoundA(NULL,0X0);return 0;}即可实现在肩控画面中出现报警的同时启动声音文件.在停止的时候用按钮控制,其中事件代码为:#include "apdefap.h"void OnClick(char* lpszPictureName, char* lpszObjectName, char* lpszPropertyName) {#pragma code("Winmm.dll")BOOL WINAPI sndPlaySoundA(char* szWave,DWORD dwFlag);#pragma code()sndPlaySoundA(NULL,0X0);}对上述代码中:关于windows API函数sndPlaySoundA(char* szWave,DWORD dwFlag);char* szWave 是声音文件的路径DWORD dwFlag 是标识常量0x0:播放WAV 文件,播放完毕后将控制转移回你的应用程序中。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

.
一、使用Horn报警器
WINCC软件“帮助”中有报警器用法的详细说明
Horn有关的系统变量
专业资料Word
.
@RestartHorn
@Horn TriggeringSingalsActive 禁止或者运行播放声音文件@HornSettingTagsActive
@HornReset 可以用来确认报警,停止报警声音
开始组态
专业资料Word
.
创建两个信号变量
在图形编辑器下报警记录下完成
专业资料Word
.
打开报警器组态消息分配
专业资料Word
.
组态信号分配(需要提前下载WAW格式的报警声音文件)
专业资料Word
.
二、用C脚本播放WAV文件
专业资料Word
.
专业资料Word
.
专业资料Word
.
组态:启动按钮字体-文本-启动效果-全局颜色方案-否颜色-背景颜色-绿色停止按钮字体-文本-停止效果-全局颜色方案-否颜色-背景颜色-红色为了监视程序运行,要插入智能对象
专业资料Word
.
组态启动按钮C动作
专业资料Word
.
#include”apdefap.h”
#pragma code(”Winmm.dll”)
VOID WINAPI PlaySoundA(char*pszSound,char*hmode,DWORD dwflag); #pragma code()
printf(“Start\r\n”);
专业资料Word
.
PlaySoundA(“C:\\WINDOWS\\Media\\ALARM8.WAV”,NULL,0); printf(“End\r\n”);
组态启动按钮的SetTagBit
组态停止按钮的SetTagBit
专业资料Word
.
三、用C脚本触发PC蜂鸣器
#include”apdefap.h”
#pragma code(”Kernel32.dll”)
BOOL Beep(DWORD dwFreq,DWORD dwDuration); #pragma code()
BOOL Beep(1000,100);
专业资料Word。

相关文档
最新文档