为了正常的体验网站,请在浏览器设置里面开启Javascript功能!

IFIX声音报警脚本

2019-02-18 4页 doc 16KB 244阅读

用户头像

is_633808

暂无简介

举报
IFIX声音报警脚本iFix的默认报警音响是通过主板发声的。如果要转到音箱,需要写VBA脚本。 首先,新建一个基于事件项的调度。 触发信息里数据源使用Fix32.THISNODE.ALARMCOUNTERS.F_CV > 0。这里ALARMCOUNTERS是iFix当前报警数量。 事件类型选择“为真时”。 编辑脚本: Private Declare Function sndPlaySound& Lib "winmm.dll" Alias "sndPlaySoundA" (ByVal lpszSoundName As String, ByVal...
IFIX声音报警脚本
iFix的默认报警音响是通过主板发声的。如果要转到音箱,需要写VBA脚本。 首先,新建一个基于事件项的调度。 触发信息里数据源使用Fix32.THISNODE.ALARMCOUNTERS.F_CV > 0。这里ALARMCOUNTERS是iFix当前报警数量。 事件类型选择“为真时”。 编辑脚本: Private Declare Function sndPlaySound& Lib "winmm.dll" Alias "sndPlaySoundA" (ByVal lpszSoundName As String, ByVal uFlags As Long)  ‘声明API调用 Const SND_ASYNC = &H1   ‘SND_ASYNC作为函数的参数,表示循环播放 Private Sub FixEvent1_OnTrue()   ‘事件为真时 Dim X% Dim Pausetime, Start aa: If Fix32.Fix.ALARMCOUNTERS.F_CV > 0 Then ‘当报警数大于零,即有未确认报警 X% = sndPlaySound("c:\aaa.wav", &H1) ‘调用sndPlaySound函数播放硬盘上的wav文件 Else GoTo BB End If Pausetime = 5    ‘循环延时,视所播放声音文件长度调整 Start = Timer Do While Timer < Start + Pausetime DoEvents Loop GoTo aa BB: End Sub 报警音响将一直持续循环播放到确认报警为止。 如果报警音响可选,在触发信息数据源里面添加AND某变量为1或0,然后在相应画面做个切换该数字量的按钮即可。 以上在iFix3.5环境下验证有效。 附:在iFix里实现脉冲按钮脚本 (1) ToggleDigitalPoint "Fix32.THISNODE.BBB.F_CV" Dim Pausetime, Start Pausetime = 2 Start = Timer While Timer < Start + Pausetime DoEvents Wend ToggleDigitalPoint "Fix32.THISNODE.BBB.F_CV" (2) Public Sub PAUSE(PAUSETIME As Double) Dim CURRENTTIME As Date CURRENTTIME = Time While Time < DateAdd("S", PAUSETIME, CURRENTTIME) DoEvents Wend End Sub 以上放到globals-user的脚本里。 Private Sub CommandButton32_Click() closeDigitalPoint " Fix32.THISNODE.BBB.F_CV " user.PAUSE 2 openDigitalPoint " Fix32.THISNODE.BBB.F_CV " End Sub 以上放到按钮脚本中。
/
本文档为【IFIX声音报警脚本】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。 本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。 网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。

历史搜索

    清空历史搜索