基于Android的电厂设备缺陷管理系统设计与实现 下载本文

龙源期刊网 http://www.qikan.com.cn

基于Android的电厂设备缺陷管理系统设计与实现

作者:薛晗光 刘聪睿 崔善玮 来源:《软件导刊》2018年第03期

摘要:

传统的电厂设备缺陷管理方式多为通过纸质单据或在Web系统上进行记录、管理,及时性和准确性较差。针对该问题,设计开发了基于Android平台的设备缺陷管理系统。用户通过普通的Android智能手机就可实现在设备现场即时创建缺陷单,全过程移动办理,简化了用户操作,提高了工作效率和设备缺陷管理水平。 关键词:

电厂;智能手机;缺陷管理;Android;移动应用 DOIDOI:10.11907/rjdk.171292 中图分类号:TP319

文献标识码:A文章编号文章编号:16727800(2018)003014603

英文摘要Abstract:The Power plant traditional management of equipment defect, is mostly through the paper documents or the web system for recording and management, lack of timeliness and accuracy. In response to this problem, the device defect management system based on the Android platform is designed and developed. Users can easily create defects at the equipment site by Android smart phone. The whole process of defects management can be executed by smart phone. The system simplified the user operation, improved the efficiency and management level of equipment defects.

英文关键词Key Words:power plant; smart phone; defects management; Android; mobile application 0引言

设备缺陷管理是电厂设备管理的基础,设备运行的基本状况及健康水平来自于日积月累的设备缺陷数据。设备缺陷管理水平高低是衡量设备管理好坏的标志之一,关系到电厂的安全运行、设备维护及经济效益[1]。

龙源期刊网 http://www.qikan.com.cn

得益于硬件技术的进步和移动互联网普及,基于智能手机的应用日益丰富。在电厂信息化蓬勃发展的趋势下,将智能手机应用于设备缺陷管理,利用其强大的功能,包括拍照、录制音视频、nfc近场通讯、扫描二维码、无线网络连接等,实现对缺陷登录、确认、提交、消缺验收等流程管理[2]。

1缺陷管理系统整体设计 1.1系统业务流程

根据电厂的缺陷管理流程和实际需求,设计出系统整体业务执行流程,如图1所示。巡检员或其他人员在现场发现设备缺陷后,在智能手机上创建缺陷单,添加音视频文件,通过厂内无线局域网上传至服务器。服务器将缺陷单推送至运行人员手机进行审核。审核不通过将退回创建状态或取消缺陷单;审核通过后,推送至检修人员手机进行确认。如果检修人员不认可所提缺陷,可以回退重新分配。确认后,检修人员在现场对缺陷进行消缺。消缺过程中,如无法按时完成可发起延期、挂起和开工子流程。消缺完成后,检修人员在手机上对该缺陷单提交验收,推送至运行人员手机,最终进行验收操作。 1.2系统架构

系统架构由移动端、Web端、服务端和移动服务总线4部分组成。移动端实现用户登录、缺陷业务处理功能,Web端用于展示所有的缺陷单数据信息,服务端为移动服务总线提供数据接口。移动服务总线用于实现用户登录管理及任务在上位机和移动端间的传输。移动服务总线作为上位机、移动端的中间件,接收各方数据请求并将其分发至相应的接收方,最后从接收方获取数据并返回请求方。整个过程不对数据进行任何操作,只作转发。移动服务总线采用Restful技术实现。

移动服务总线轮询从Web端接口中读取当前在线用户的移动端待办任务。取得待办任务后,移动服务总线在表中创建该任务记录,生成任务编号并将任务通知推入移动任务队列中,由移动任务队列推送通知至移动端。移动端收到通知后,后台自动向移动服务总线请求任务数据,收到数据后将其存入移动端数据库中。

移动端每次进入任务列表时(包括点击首页业务按钮进入、程序挂起后再次进入及移动端黑屏后重新解锁进入任务界面3种情况),先判断WiFi连接情况,若有WiFi连接则主动向移动服务总线请求当前任务列表。任务列表基础信息包括任务ID、名称及任务状态。移动端获取数据后,比对每一个任务状态,若有状态变化(Web端状态节点比移动端状态节点靠后)的任务,则将其详细信息获取至移动端;若无WiFi连接,则直接显示当前移动端数据库中的数据。在执行完任务后,将结果数据打包发送至服务端,再由服务端发送至Web端,更新Web端数据。

1.3任务接收和提交

龙源期刊网 http://www.qikan.com.cn

任务推送服务器自动搜索所有可以在移动终端执行的任务,下载任务并打包,通过广播方式发送到每一个移动终端,终端接收到任务会提醒用户收到新的任务,任务接收成功发送“接收成功”标志给接收服务器,则Web应用的任务处于锁定状态,此时任务只能在移动终端办理。如果任务接收失败,服务器需在一定时间后重新发送,服务器端有任务指定重发功能。 任务发送给岗位时,在其中一个移动终端点击打开任务,认为该移动终端接收到此任务,此任务在Web应用锁定,其它移动终端中该任务取消。在无网络情况下不允许打开发送给岗位的任务。任务发送给个人时,移动终端接受到任务即在Web应用锁定。

移动端执行完任务后将结果放入任务提交队列,队列保证任务数据不丢失,且在离线环境下缓存数据,不影响提交操作,提交队列将逐个提交任务至服务端移动服务总线。提交任务数据的同时,通知服务端该任务附件个数。服务端先验证该任务数据是否存在错误,通过验证后,移动服务总线将任务传输至Web端。Web端对任务进行数据、逻辑、权限等多重校验,判断该任务是否提交。如不能提交(如移动办理权被收回、缺少权限等),则返回提交失败至服务端,反之返回提交成功。服务端再将提交结果发送到移动端。任务提交成功后,如果附件个数大于0,则开始上传附件。移动端遍历全部附件,依次上传至服务端。服务端再遍历全部附件,并依次上传至Web端和任务数据进行关联,同时更新任务状态,并返回结果至移动端。任务提交流程如图2所示。 2系统实现 2.1数据交互实现

本文选择Java语言开发Android版本的移动端应用,数据上传/下载采用WebService技术。在上位机服务启动后,系统生成WSDL服务描述文件。移动端通过调用WebService请求,得到WSDL文件后解析该文件内容,了解上位机的服务信息及调用方式,并生成相应的SOAP请求消息。上位机收到客户端的SOAP消息后,解析其中的方法调用和参数格式,调用相应的COM对象完成指定功能,并把返回值放入SOAP回应消息返回给移动端。 在数据格式的选择上,重点对比和测试XML和JSON格式。考虑到XML文件格式复杂,传输占用带宽较高,故没有选用XML语言,而是采用JSON这一轻量级的数据交换格式[3]。JSON数据格式简单,易于读写,占用带宽小,易于解析,客户端JavaScript可以简单通过eval()进行JSON数据读取。JSON格式能直接为服务器端代码使用,大大简化了服务器端和客户端的代码开发量,且易于维护。JSON格式的任务结果数据示例如下: {

\:\, \:\,