微信在大型输送系统实时故障报警中的应用
2018-01-03焦鋆萍
焦鋆萍,王 萍
(1.上汽大众汽车有限公司南京分公司,江苏南京 211100;2.常州信息职业技术学院,江苏常州 213100)
微信在大型输送系统实时故障报警中的应用
焦鋆萍1,王 萍2
(1.上汽大众汽车有限公司南京分公司,江苏南京 211100;2.常州信息职业技术学院,江苏常州 213100)
汽车整车制造商自动化水平越来越高,很多工位实现了全自动无人生产,甚至往黑灯工厂方向发展。针对设备故障后无人在现场不能及时发现造成大面积停线的问题,利用手机微信的实时性和便携性开发了一套设备故障实时报警系统,及时发现解决设备故障,确保设备开通率。
微信;PLC;实时故障报警
10.16621/j.cnki.issn1001-0599.2017.10.23
0 前言
当前,微信在人们生活中已成为不可或缺的一部分,微信聊天、微信公众号和微信支付等等。微信同样也是一个跨平台的应用,电脑、平板、手机无一不可,尤其是在手机上的应用,其移动性和实时性带来了极大的便利。利用微信开发了一套多PLC的复杂输送线的故障实时报警系统,在实际生产中随时随地将设备故障信息推送给相关人员,节约了维修等待时间,大大提高效率,提高了设备的开通率。
1 现场情况
上汽大众南京工厂拥有一条包含17套西门子319PLC、1165台滚床、45台升降机以及各种转台、横移机等组成的大型全自动输送系统。该系统连接南北两个车身车间并将白车身送至油漆车间。自动化程度高,无操作人员,任何一个点发生故障都不容易发现,发现时已出现输送线断车,生产线停线的情况,故障排除后需要一个充线时间才能恢复生产,大大影响了主线生产的可持续进行。为解决这个问题,提出使用微信将现场发生的故障实时发送给相关维修人员,及时排除故障保证生产持续进行。
2 方案理论分析
17套SIEMENS CPU319F组成的复杂输送线系统对故障信息的采集也是一件很复杂的事,但采用Intouch上位机监控软件可以很方便的与17套PLC相连,并采集PLC发送过来的信息。整个输送线通过CP343-1通信处理器和SCALANCE X204-2连接成了ETHERNET以太网络(图1),Intouch使用DASSIDirect驱动即可通过以太网与西门子PLC通信,实时采集各个PLC的故障信息和状态。故障信息能存储在服务器SQL数据库供查找和分析。既然故障信息已存在SQL数据库中,那就可以利用这个平台通过微信将这些故障信息发出去。同时,有INTOUCH和SQL数据库作为中转,也起到了缓冲作用,可以避免同时触发多条故障信息导致程序无法识别而出现故障信息缺失不能完全发出的情况。有SQL,则只要考虑如何将SQL与微信连接起来,而无需考虑微信与哪个PLC连接,方案高效稳定。通过VB编写相关程序即可将微信和SQL故障信息连接起来,程序自动查询SQL数据库中新增的报警信息并通过接口程序将这个信息发送给需要的微信用户。系统结构如图2所示。
图1 ETHERNET以太网络
图2 系统运行机理
3 程序设计
程序设计主要分为4大部分(图3):SQL数据库模块、微信模块、界面显示模块以及网络连接模块。
图3 程序模块设计
3.1 数据库模块
数据库模块主要是使用VB编写ADODB程序连接数据库并在界面上显示数据库是否连接正常,在故障报警数据库中建立SubmitFlag标志位用于识别这条报警信息有无发送过。select*from SendMessage where SubmitFlag is null or Submit-Flag=‘0’这条数据库查询语句即可查询出还未发送的故障信息。查询出故障信息后需要提取故障信息并处理成需要的故障发送格式,故障信息包括故障发生的时间、故障信息、哪个PLC发生的故障,通过VB字符串拼接为一条故障代码。时间日期+PLC区域+故障内容。
3.2 微信模块
微信模块主要是起信息发送作用,微信公众号分订阅号、服务号和企业号。可以申请一个微信公众平台接口测试账号,可以直接体验和测试公众平台所有高级接口,申请地址是http://mp.weixin.qq.com/debug/cgi-bin/sandbox?t=sandbox/login直接微信扫描即可进入。申请好后需要记录下appID和appsecret,通过这两个东西向微信申请accesstoken,有了accesstoken才能发送信息,同时accesstoken的有效时间只有2小时,超过后要重新获取,故在程序中要做accesstoken获取时间的记录,在过期前要重新申请。申请了测试公众号后即可获得测试号二维码,将这个二维码分享给需要接收故障信息的人员。扫描加入,即可在后台看到加入人的微信号,有了这个微信号就可以给他发信息。微信设置的用户列表是最多100个,足以覆盖整个维修团队。在程序中制作用户维护模块可以增加删减用户,程序即可将故障信息通过微信逐个发给相关人员。
3.3 界面显示模块
界面设计模块主要是显示程序当前运行的状态,起到一个人机交互的作用,包含SQL数据库连接状态、微信信息发送测试、实时发送的故障信息显示、软件使用说明以及用户信息维护等(图4)。
图4 程序界面
3.4 网络连接模块
设备故障信息来源于工业以太网并通过Intouch位机采集,而微信信息发送需要的是Internet网络,故需要配备双网卡的服务器才能运行这套系统,网卡可以是有线网卡也可以是无线网卡。若网卡A上Internet网用于微信信息的发送,而网卡B连接内部工业网供Intouch采集故障信息。网卡A的地址是192.168.10.101,网卡B是192.168.1.10,则需要在CMD里设置route-p add 192.168.1.0 mask 255.255.255.0 192.168.1.1 route-p delete 0.0.0.0 route-p add 0.0.0.0 mask 0.0.0.0 192.168.10.1即可,只要执行一次该命令就会永久生效,即可使用这套微信故障实时报警系统。
4 现场使用效果
现场使用这套输送线故障实时微信报警系统后相关人员都可以第一时间获取输送线设备故障信息(图5),并能及时采取相关措施解决,减少了设备故障的等待维修时间,确保生产线的正常运行。
图5 手机接收信息
5 结束语
利用微信来实时发送工业生产中的故障报警信息,信息发送及时且故障信息丰富,增强了人与设备之间的沟通,节省了维修等待时间。展望未来随着工业以太网的使用越来越普及,设备和外界的连接方式变的越来越方便简洁,而微信放开更多的接口程序,相信有一天可以直接通过手机微信远程查看设备运行信息,进行设备远程诊断,乃至一些现在都无法想象的功能。
[1]廖雯婧,万佳,孙晓徽.基于微信平台的高速公路事故报警查询系统[J].科技创新与应用,2015(29):96.
[2]明日科技.Visual Basic从入门到精通(第3版)[M].北京:清华大学出版社,2012.
[3]李勇舟.基于微信平台的家庭隐患报警系统软件设计与实现[D].武汉:华中师范大学物理科学与技术学院,2015.
U468.2
B
〔编辑 凌 瑞〕