您的位置 首页 > 数码极客

[wincc如何组态报警]Wincc报警记录!

1.1 在PLC中建立智能语音报警功能码传递,当有事件发生时,报警功能码自动产生。

1.2 录音或者是使用语音合成软件,生成语音文件例如:

将这些语音文件放置到一个固定的目录,例如D:\DTSGF\sound

1.3在WinCC中建立全局动作事件代码:使用变量MW12触发。

#include "a;

int gscAction( void )

{

#pragma option(mbcs)

#include "dmclient.h"

#pragma code ("kernel32.dll")

VOID WINAPI Sleep ( DWORD dwMilliseconds );

char szSoundPath[50];

int num=0;

num= GetTagWord("MW12");

if(num>0)

{

sprintf(szSoundPath,"%d.wav", num);

cc_playsound(szSoundPath);

//Sleep(1000);

}

return 0;

}

函数cc_PlaySound,是语音播放函数。

#pragma option(mbcs)

#include "a;

void cc_playsound(char* lpszSoundFile)

{

#pragma code("winmm.dll")

BOOL PlaySound(LPCTSTR lpszSound, HMODULE hModule,DWORD dwSound);

#define SND_FILENAME 0x00020000L

#define SND_ASYNC 0x0001

#define SND_LOOP 0x0008

#pragma code()

BOOL bRet = FALSE;

char szProjectPath[_MAX_PATH];

char szSoundPath[_MAX_PATH];

if (lpszSoundFile == NULL)

{

bRet=PlaySound(NULL,NULL,SND_FILENAME|SND_ASYNC);

}

else

{

GetProjectPath(szProjectPath);

sprintf(szSoundPath,"%sSound\\%s", szProjectPath, lpszSoundFile);

bRet=PlaySound(szSoundPath,NULL,SND_FILENAME|SND_ASYNC);

}

if (bRet == FALSE)

{MessageBeep((WORD)-1);}

}

责任编辑: 鲁达

1.内容基于多重复合算法人工智能语言模型创作,旨在以深度学习研究为目的传播信息知识,内容观点与本网站无关,反馈举报请
2.仅供读者参考,本网站未对该内容进行证实,对其原创性、真实性、完整性、及时性不作任何保证;
3.本站属于非营利性站点无毒无广告,请读者放心使用!

“wincc如何组态报警,Wincc报警记录,wincc如何组态报警控件,wincc如何做报警,在WinCC中组态报警消息的组件是”边界阅读