刘英杰 王伟雄 李中兴 王新华 林创鲁 陈敏 黄代民
(广州市特种机电设备检测研究院)
电梯是垂直运输的主要交通工具,随着我国经济建设的发展,电梯的使用不仅遍及各行各业,而且与人民的生活紧密相关。电梯安全运行涉及生产、安装、检验、维护、修理等多个环节[1]。按照传统的处理方法对电梯进行检验、记录、备案、检索已比较困难,特别是随着电梯数量的迅速增加,人机比矛盾更加突出[2]。电梯现场检验往往需要查询被检电梯的维护保养记录、历史检验等信息,并记录检验结果。而目前常用的检验方法是将历史检验和维护数据、现场检验原始记录和检验合格记录分开录入数据库,存在作业效率低、历史检验信息和维护信息利用率低、信息化管理不便等问题[3]。为了提高检验效率,本文提出基于Socket的电梯安全检验数据远程传输系统,重点论述了数据远程通讯方法的工作原理和实现过程。
电梯安全检验数据远程传输系统是利用现代通信、物联网、RFID、微电子和高精度测量等先进技术,实现电梯检验的智能化、电梯能效检测和管理的高效化。考虑各子系统间的协同和融合,统一规划[4-5],基于 Socket的电梯安全检验数据远程传输系统结构图如图1所示。电梯基本信息存储在数据中心,检验终端通过3G网络访问远程服务器,调取电梯检验记录信息。
图1 基于Socket的电梯安全检验数据远程传输系统结构图
基于 Socket的电梯安全检验数据远程传输系统由检验终端和智能查询服务器组成,通过现场数据挖掘机与实时通讯机实现客户端与远程服务器数据的远距离传输。其中,现场数据挖掘机负责在线监控检验终端与检验智能查询服务器的连接情况;实时通讯机负责提供检验终端与检验智能查询服务器之间的通讯服务。电梯检验的通讯过程具体分为:检验任务分发与终端显示、检验信息回放、记录数字化和网络对时。基于Socket的电梯安全检验数据远程传输数据 流如图2 所示。
图2 基于Socket的电梯安全检验数据远程传输数据流
采用 Socket技术实现客户端与远程服务器之间的远程通讯。其具有传输时间短、高可靠、加密特性、传输数据可自定义等特点。适合客户端与远程服务器之间的实时数据交互,而且安全性能好,满足检测系统数据传输的实时性与可靠性要求。
1.2.1 在C#中Socket的实现方法
基于 Socket的电梯安全检验远程数据传输系统是基于微软的C# Socket网络编程实现的,使用包含丰富子程序的Net. Sockets程序包,开发电梯检验系统网络应用程序。在远程服务器与客户端之间创建Socket套接字构建通讯通道,数据的发送与接收都由该通道实现。客户端通过Connect与远程服务器相连,在保证客户端与远程服务器之间有效绑定的情况下,将电梯检验项目数据、检验任务下发信息、检验信息回传数据等以文件流的方式发向目的终结点,同时在目的终结点处利用Listen来监听Socket接口上的连接请求,调用Accept完成数据接收操作。在Socket通讯完成时,要使用Close和Shutdown来禁止和关闭Socket套接字。Socket的通信原理图如图3 所示[6-8]。为保证通讯可靠,使用 TCP三次握手通讯方式,在移动检验终端向监控软件发送同步序列编号后,监控软件响应并应答,移动检验终端确认后双方处于同步发送与接收状态,虚连接建立。
1.2.2 通讯数据结构设计
为保证远程服务器与客户端之间的数据实时准确通讯,将通讯的数据进行封装处理,并定义多个通讯结构体。远程服务器与客户端之间按照约定的通讯结构体以文件流的形式通讯,在目的终结点同样以该结构体进行数据拆解,实现数据的远距离准确传输。电梯检验任务的分发和终端显示通讯结构体如下:
图3 Socket通讯原理图
1)电梯检验任务的分发
2)电梯检验信息的回放
3)检验参数回传
使用检验智能查询服务器前,需要建立电梯 ID库,并保证检验终端与电梯检验智能查询软件通讯正常。
每次检验前需要检查各项设备的运行状况,确保现场数据挖掘机能正常运作,通过远程拨号获取检验任务信息并在检验终端上显示,检验开始。
检验终端通过RFID读取电梯ID号,也可以手动输入,并从远程服务器下载该电梯的历史检验记录,智能移动终端将回传的历史检验数据显示在用户界面上。电梯历史检验信息的回放程序设计流程如图4所示。
图4 电梯检验信息的回放流程图
远程服务器向客户端以文件流形式发送历史检验记录,存储在“D:\CHECKFILE\”目录,文件流读取代码如下:
成功登录现场数据挖掘机,检验终端在线下载检验任务判断标准,并对各项检验参数进行判断,对不合格项生成列表清单。当网络无响应时,可通过U盘将检验参数信息导进电梯检验智能查询软件,由软件操作写入到数据库中。
为保证检验终端与远程服务器时间一致,每次登录时需要进行网络对时。检验终端上传本地时间,现场数据挖掘机将上传的时间与服务器时间校对(以服务器时间为基准),校对后的时间回传给检验终端。
设计中,采用基于Windows操作系统的检验终端作为客户端,在远程主机上内嵌现场数据挖掘机和电梯检验智能查询软件作为远程服务器。
测试过程中,检验员在检验终端通过远程拨号下载远程服务器下发的电梯检验任务信息,并在任务信息对应的检验界面进行检验操作,完成后将检验项目数据封装,以文件流的形式回传给远程服务器,由它进行入库处理。在检验终端的界面上设置信息回放按钮,可以查询到历史检验记录。
电梯现场检测界面如图5所示。其中,√表示该项合格;×表示该项不合格;空白表示无此项。在要求输入具体参数的地方输入检测结果,由软件自动判定是否合格,提高了效率。
电梯检验智能查询软件界面如图6所示。具体包括:基本信息管理、电梯信息管理、电梯检验数据统计查询、系统操作四大菜单。其中,系统基本信息管理完成对用户及检验员信息管理;电梯信息管理完成电梯信息入库登记操作;电梯检验数据统计查询完成检验任务分发和历史记录回放操作;系统操作菜单完成基本的系统操作。
图5 电梯现场检测界面
图6 电梯检验智能查询软件界面
测试表明,采用基于 Socket电梯安全检验远程数据传输的方法,远程服务器能正确下发电梯检验任务信息,并能无差错地接收来自检验终端的电梯检验数据文件流,数据通讯正确,实时性好。在实际应用中,可同时支持多台检验终端在线工作,服务器响应快而稳定,支持大数据入库处理,满足远程通讯要求,从而提高电梯安全检验的效率与智能化水平。
[1]辛宏彬,高勇,井德强,等.电梯检验检测技术综述[J].机械工程与自动化,2012,12(01):187-188.
[2]尹浩.关于电梯检验案例分析[J].大观周刊,2011,65(51):106-109.
[3]张清鹏,刘方亭.电梯检测系统的应用[J].中国仪器仪表,2009(4):83-86.
[4]胡建凯.浅谈家用电梯的检验方法[J].中国电梯,2012,32(9):67-68.
[5]于涛,王健.基于Socket通讯技术的上层监控软件的实现[J].计算机技术与发展,2009,19(3):243-245.
[6]何进,谢松巍.基于 Socket的 TCP/IP网络通讯模式研究[J].计算机应用研究,2001,18(8):134-135.
[7]李伯全,潘海彬,罗开玉,等.远程测控数据传输中Data Socket技术应用[J].江苏大学学报(自然科学版),2004,25(4):64-68.
[8]蒋敏,单家芳,孔军.基于Socket的多平台通讯研究[J].计算机工程与应用,2005,41(36):135-137.
[9]陈勇鑫.浅析电梯的检验检测工作及检测现场安全管理[J].价值工程,2011,30(12):255-257.