问题背景:
厂务各系统,比如大宗气/特气/纯水/废水/化学品/空调/动力/FMCS等,都会采用组态软件比如intouch、ifix、wincc等去监控大量传感器的数据,以便实现对系统的自动化控制。当系统中有警报出现时一般是通过值班人员查看并通知相关人员去处理。但是,有时当有重要警报出现时,可能由于值班人员疏忽而延迟了处理时间从而会对生产或安全造成影响
解决办法:
使用SMSAlarm软件,通过dde/opc协议,从图控软件上读取相关的数据并根据报警条件以电话、短信、邮件、微信的形式通知到相关人员,使他们能第一时间了解警报信息,及时处理掉问题
步骤:
本例以SMSAlarm的微信报警为例,从wincc的建点,到SMSAlarm把此点的报警发送到微信上,做详细介绍
所需软件:
wincc 7.4中文版
SMSAlarm 7.20
所需硬件: 无,需要电脑能连上外网
一、在wincc上执行建点(如果已经有点可略过)
- 打开 SIMATIC WinCC Explorer.新建一个单用户项目myproject1
- 新建一个内部变量tag1
- 新建一个画面
- 双击打开这个画面添加一个输入输出域,并绑定点tag1
点击画面上的运行按钮,运行系统
- 添加对内部点tag1的仿真,从开始菜单里面打开wincc tag simulator,选择edit/new tag,从弹出的变量选择框中选择tag1
- 选择start simulation后,可以看到画面上的点的值已经和仿真器上的一致了
二、在SMSAlarm上操作
- 以管理员权限打开SMSAlarm,这里以7.20版本为例讲解
- 切换到微信页,微信扫描上面的二维码,关注SMSAlarm消息订阅公众号,并点击获取openid,把获取到的openid复制下来,后面会用到
- 切换到SMSAlarm的联系人页面,新建一个联系人比如名字叫李雷,在微信openid文本框中输入刚获取到的openid,并把通知方式勾选为微信
- 切换到SMSAlarm的组页面,新建一个联系人组water1,并把刚建的联系人李雷加入到这个组里面
- 添加一个到OPCServer.Wincc.1的opc连接,如下图
- 在OPCServer.WinCC.1下面新建一个组名字叫group1,如下图
- 右键group1选择new tagitem,如下图浏览到wincc里面的tag1,并设置tag1的所属组为water1
此时可以看到tag1的值已经读取到 (如果未读取到,可以把绿色大按钮重新按成绿色)
- 在仿真器上修改tag1的值为90,此时在SMSAlarm上可以看到tag1值已经更新,并且背景颜色变为红色,如果在30秒内报警没有消失,SMSAlarm会把此报警发给group1组里的所有工程师级别的联系人
- 30秒之后,李雷可以在公众号里接收到微信报警通知,如下图