怎样利用报警记录或HORN实现报警后输出变量

我用的WINCC6.0 SP3。现在是用一模拟量报警后驱动一继电器工作。是单一变量。。我是新手,麻烦详细一点。谢谢/

问题补充:
报警和继电器输出的点,不是同一个站,用PLC程序做是不是太麻烦了?全局有几十个报警输出,用HORN好像是只要有故障就输出,我只是要把其中一个报警用继电器输出,或音响输出。又没有HORN详细设置或简单点的全局代码?

最佳答案

#pragma code("Winmm.dll")
void WINAPI PlaySoundA(char* pszSound ,char* hmode,DWORD dwFlag);
#pragma code()
 DWORD A1,A2,A3,A4,A5,A6,A7;
 DWORD B1,B2,B3,B4,B5,B6,B7;
A1=GetTagDWord("YQ_ALARM_1");
A2=GetTagDWord("YQ_ALARM_2");
A3=GetTagDWord("YQ_ALARM_3");
A4=GetTagDWord("YQ_ALARM_4");
A5=GetTagDWord("YQ_ALARM_5");
A6=GetTagDWord("YQ_ALARM_6");
A7=GetTagDWord("COMM_ALARM");
B1=GetTagDWord("YQ_ALARM_SAVE_1");
B2=GetTagDWord("YQ_ALARM_SAVE_2");
B3=GetTagDWord("YQ_ALARM_SAVE_3");
B4=GetTagDWord("YQ_ALARM_SAVE_4");
B5=GetTagDWord("YQ_ALARM_SAVE_5");
B6=GetTagDWord("YQ_ALARM_SAVE_6");
B7=GetTagDWord("COMM_ALARM_SAVE");
if(
 ((A1^B1)&A1)|
 ((A2^B2)&A2)|
 ((A3^B3)&A3)|
 ((A4^B4)&A4)|
 ((A5^B5)&A5)|
 ((A6^B6)&A6)|
 ((A7^B7)&A7)
)
SetTagBit("yq_alarm_out",1);
if (GetTagBit("yq_alarm_out"))
PlaySoundA("c:\\winnt\\Media\\chord.wav",NULL,1);
SetTagDWord("YQ_ALARM_SAVE_1",A1);
SetTagDWord("YQ_ALARM_SAVE_2",A2);
SetTagDWord("YQ_ALARM_SAVE_3",A3);
SetTagDWord("YQ_ALARM_SAVE_4",A4);
SetTagDWord("YQ_ALARM_SAVE_5",A5);
SetTagDWord("YQ_ALARM_SAVE_6",A6);
SetTagDWord("COMM_ALARM_SAVE",A7);
return 0; 
以上脚本报警第一次来置位yq_alarm_out,你可以手动复位这个变量,如果要驱动q点,则可以定义外部变量yq_alarm_out,连接参数q地址输出。

提问者对于答案的评价:
可以参考

专家置评

请参考《WinCC实现声音报警的方法》:
http://www.ad.siemens.com.cn/service/elearning/course/892.html

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

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2017年5月28日 上午1:11
下一篇 2017年5月28日

相关推荐

  • STEP和WINCC的变量编译

    我现场有三个STEP7-300的PLC站分别是PLC1、PLC2和PLC3,三个PLC站通过以太网连接到中控室,三个PLC站的程序我已经编写好,我在WINCC里面建了三个连接分别为…

    SIMATIC WinCC 2019年6月11日
  • wincc的连接和版本

    1:请问 7.3版本的和7.0版本的授权是否通用?2:相对于低版本,高版本的优势在哪里?3:wincc的容错连接和控制器的 是否对wincc有版本要求。4:分享…

    SIMATIC WinCC 2021年7月5日
  • WINCC的难点

    1、如图,WINCC里以前建立的报警列表里若干个报警信息,现在不用了,怎样能一下全部删除呢?一个一个删很费劲的。2、报警列表下面不知怎么设置的,跳出了几百条系统的报警信息,哪个参数…

    2018年12月9日
  • 求助WINCC 脚本不启动运行

    脚本运行是变量自加一脚本以及脚本触发都做好 变量也挂好 但是运行时候就是没有变化 一直显示1无变化 这个是什么情况求大神指教 谢谢…

    2020年11月1日
  • wincc和200OPC通信按钮不灵及结构变量如何操作?

    wincc与 2个200PLC进行PPI通讯,我的波特率选择是187.5kbps。1、发现在进行阀门面板内进行手动操作的时候,经常出现开阀、关阀指令无输出现象,偶尔会有开…

    2017年11月18日
  • wincc 如何限制用户使用项目管理器?

    wincc 如何限制用户使用项目管理器? 限制操作员编辑项目,但系统管理人员可以通过授权修改?如何实现?  是否通过用户管理器实现,如何实现…

    SIMATIC WinCC 2019年6月11日
  • wincc 项目界面中关于按钮动态向导

    #define Tag_ID "ID"#define Tag_OP "OP"#define&nbsp…

    SIMATIC WinCC 2020年11月1日
  • wincc7.0实现管道液体流动

    本人刚入工控这行,以前看到别人做的画面,管道平时显示灰色,等相应的泵,阀门开启后,会有水流动态显示,现在我想在wincc中实现,求各位帮帮我,谢谢 最佳答案 http://www.…

    SIMATIC WinCC 2021年7月5日
  • WICC画面中线条颜色怎么更改

    小弟初学WINCC,从库中调一些电机,阀类的,可以直接选择中后,在调色板更换颜色,为什么我自己画了个圆形,一些线条,无法更改颜色,选择中后,在调色板中换了颜色,实际画面中颜色没变呢…

    2019年6月11日
  • 博途WINCC中文本域中的文本如何根据值的不同而变化

    我需要一个变化的文本 最佳答案 博途软件,左侧项目树中,打开HMI,可以看到“文本和图形列表”,双击打开即可看到当前已经存在的列表名称。点击“添加”,即可新建一个文本列表,在下方的…

    SIMATIC WinCC 2020年11月1日