项目里有100多个报警信号,客户需要每条报警连接一段对应的报警声音。试了两种方案
1.设置多个“消息等级”,每个消息等级对应一个报警信号,每个消息等级在报警器的“消息分配”中对应一个内部变量(A1.A2.A3……),在“信号分配”中每个内部变量(A1.A2.A3……对应一个报警声音
这个方法可以实现每个报警到来时分别触发内部变量A 1,A2,A3…分别播放不同声音,复位报警时复位掉内部变量就不出声了。但只能建立16个消息等级,也就只能连16个声音,为什么只能16个呢?
方法2,直接在信号分配里连接外部变量与报警声音,可以连接无数条,可这样又会导致外部报警不消失,声音一直播放的状态
是不是我的思路不对,谁能帮我一下,怎么解决这个问题
最佳答案
原因:
1.在wincc报警系统中,最多可创建16中报警类别,每种类别可创建16种报警类型,在horn中都是由报警类别来触发声音,所有这种方法只能添加16种。
2.如果直接组态信号分配,那么更消息也就是报警系统没关系,只是一个变量触发了声音,而在 报警视图中确认是对这个变量不起作用的,因为他不是一条需要确认的报警。
实现100条报警声音,按常理感觉没什么用处,在实际中常用的也就能识别几种声音,难道现场人员要求记住100中声音,跟具声音就能知道报警内容?不常见。
报警的声音提示思路,一般按报警的紧急程度来划分,比如这种类别需要优先处理,另外的报警可能只是警告,所有按报警类别来划分报警的等级,并做不同声音来划分报警紧急程度,是比较合理的。
如果真要实现100钟报警也不是不可以,方法:
使用脚本来触发,在GMsgFunction函数中判断当前报警编号,编号在报警中一定唯一,更具这个编号可使用脚本播放不同的声音,只要有100个声音文件,然后使用语句判断,不同的变化播放不同的声音,对于确认停止声音,同样可以关联确认变量,根据报警编号以及对应的确认变量。来判断停止播放的声音。
获取报警编号,可参考下面链接
发短信模块
http://www.ad.siemens.com.cn/productportal/Prods/s7-200-portal/S7-200-GPRS-MD720-3.aspx
当运行时消息出现时,如何在用户指定的"GMsgFunction()"动作中确定消息文本和过程值?
https://support.industry.siemens.com/cs/cn/zh/view/15350783
提问者对于答案的评价:
谢谢帮助
原创文章,作者:ximenziask,如若转载,请注明出处:https://www.zhaoplc.com/plc363031.html