李 静,王素珍,贺雪飞
(青岛理工大学 自动化工程学院,山东 青岛266520)
变电站巡检是保障变电站顺利运行的重要措施。传统的变电站巡检多是以纸质为主的人工巡检模式,巡检人员需随身携带大量表格,后期需由人工将巡检数据录入计算机系统,导致巡检工作量大且效率低下;以纸张为载体的数据记录不灵活,巡检内容有任何改变都需重新印制表格,造成极大的浪费。同时,传统的巡检方式无法对巡检工作人员进行有效监督,巡检工作人员可以在签到后不到现场实地巡检或伪造巡检数据,因此常出现人员不到位和巡检不及时的状况,从而导致设备故障处理不及时而引发电力事故。
基于上述问题,本文提出一种基于RFID的巡检技术方案。射频识别技术RFID(Radio Frequency Identification)是一种非接触式的自动识别技术,通过射频信号自动识别目标对象并获取相关数据,识别工作无须人工干预,可工作于各种恶劣环境,与传统的条形码相比具有防水、防磁、耐高温、使用寿命长、读取距离大、标签上数据可以加密、存储数据容量更大、存储信息更改自如等优点[1]。方案运用RFID技术,结合GPRS无线通信技术,解决了巡检人员到位难、信息采集效率低及上传不及时的问题,从而满足了变电站巡检管理信息化和规范化的要求。
典型的射频识别系统由射频标签、读写器和应用系统三部分组成[2]。
RFID工作原理:读写器通过发射天线发送一定频率(低频、高频或超高频)的射频信号,当射频标签进入发射天线工作区域时产生感应电流,射频标签获得能量被激活,将自身编码等信息通过卡片内置的发送天线发送出去,系统接收天线接收到从射频标签发送来的载波信号,经天线调节器传送到读写器,读写器对接收的信号进行解调和解码,交由信息处理系统处理,完成预设功能和自动识别。
本系统由巡检仪、射频标签及管理服务器构成。系统的总体架构如图1所示。
管理服务器是整个系统的大脑,综合管理变电站的巡检,负责人员设备的信息管理、巡检任务的下达以及巡检数据的处理等,控制着整个系统的工作流程。工作开始时由管理服务器下达任务,应用系统处理后对中间件下达指令,规定好读写器读取射频标签的类别和数量。读写器受控发出微波查询信号,在距离射频标签0~10 m范围内时,射频标签收到读写器的查询信号后,将此信号与标签中的数据信息合成一体反射回电子标签读出装置,读写器接收到标签反射回的微波合成信号后,经读写器内部微处理器处理后即可将标签储存的识别代码等信息分离读取出来。
中间件对阅读器传来的数据进行过滤、汇总、计算和分组,减少从阅读器传往服务器的大量原始数据,生成加入了语意解释的事件数据。之后将处理好的巡检数据通过API端口传送给应用系统。应用系统根据现场的具体情况对数据做后续处理。
基于组成系统的三大模块[3],可以把系统的工作流程分为以下三部分:
(1)巡检任务的下达
执行任务前,巡检人员可通过USB端口将当天的巡检任务由主机下载至PDA或由主机通过GPRS无线通信网络直接下达,随后,巡检人员可根据任务进行相应巡检。
(2)巡检任务的执行
巡检人员按指定的巡检路线到达现场,手持巡检仪与作业地点的RFID射频标签通信,在PDA上显示出该区域下的对应检查设备,巡检人员可对设备进行检查,巡检完毕后,将设备检查结果录入PDA上的嵌入式数据库。在信号强的情况下,可通过GPRS网络将数据实时回传主机;当信号较差或无信号时,数据暂存于PDA的嵌入式数据库中,等到信号强时再回传或通过USB接口由局域网将数据上传至管理服务器。
(3)巡检数据的处理
管理服务器对接收的设备的巡检数据进行相应处理,生成设备巡检情况记录表,随后进行综合处理,根据结果分析出设备的运行状况并生成报表,交与有关部门做后续处理。
由于射频干扰和标签读取结构等原因,RFID数据读取的可信度较低,因此,系统增加了对RFID数据的预处理环节,使阅读器读取的数据从时间序列和数值上尽可能地接近真实数据,提高数据的准确度。
RFID数据读取的低可信度主要与其采用的无线射频信号有关,当标签和阅读器数量多时,信号干扰加强,更增加了数据的不准确性。RFID数据的不准确性主要表现为漏读、多读、脏读和乱序四个方面。本文采用Smooth数据清洗算法[4]解决这个问题。具体算法示例如图2所示,在第一次读到EPC事件时,产生evGlimpsed事件,在事件间隔时间不超过1格时,始终处于is-Glimpsed的状态,在第三次读到该EPC事件时,产生evObserved事件,当两个事件单位没有读到该EPC事件时,则产生evLost事件。该算法中cGlimpsed_Timeout和cObserved_Timeout的设置起到了平滑事件流、清洗漏读数据错误的作用[5]。
RFID中间件是实现RFID硬件设备与应用系统之间数据传输、过滤和数据格式转换的一种中间程序[6],是RFID应用部署运作的中枢。它介于读写器模块与应用系统之间,将RFID读写器读取的各种数据信息,经过中间件提取、解密、过滤及格式转换,导入管理服务器,并通过应用系统反应在程序界面上,供操作者浏览、选择、修改和查询[7]。
PDA选用Windows CE操作系统,应用VS2008平台下的C#语言进行开发,C#调用RFID中间件提供的通用API函数来实现对RFID射频卡的初始化、读、写、Key值验证和关闭等操作。
流程初始,通过DllImport经由指定的API端口引用动态链接库[8],之后初始化RFID射频卡。完毕后,系统根据指示开始侦测,寻找有效范围内的RFID卡片,如果检测到相应的射频标签,则开始读取其Key值。若与系统指定相匹配,则可以对标签的数据信息进行读取;若不匹配,则检验下一标签的Key值,依此循环,直至任务完成,如图3所示。
RFID技术在快速发展的同时也暴露出其自身存在的各种安全隐患,如信息泄露和隐私问题等。本文运用Key值更新随机Hash锁的方法来解决RFID运用中的安全问题,实现了安全高效的读取访问控制。
(1)首先在数据库中创建包括H(Key)、ID、Key、Pointer四 列 的 数据库记录,主键为 H(Key)。
(2)锁定标签,阅读器随机选取一个数值回送给该标签作为标签ID的Key值,并在数据库中建立初始记录(H(Key),ID,Key,0)),标签存储接收到的Key值进入锁定状态。
(3)解锁标签,数据库产生一个随机数R传送给阅读器,由阅读器将询问消息Query和R发送给标签;标签根据接收到的R和自身 Key值计算出H(Key)和H(Key‖R)回送给阅读器,随后自行计算H(ID‖R)和Key*=S(Key)(此时Key值不更新)。
图3 RFID操作流程图
(4)阅读器查找数据库记录,若找到记录 i:(H(Keyi),IDk,Keyi,Pointeri),则计算 H(Keyi‖R), 并 比 较 H(Keyi‖R)与 接 收 到 的 H(Key‖R), 若 不 相等,则忽略此消息;若相等,则计算 H(IDk‖R),并将 IDk和H(IDk‖R)的值传送给阅读器。
(5)阅读器将 H(IDk‖R)发送给标签,数据库计算Key*i=S(keyi)和 H(Key*i)。若 Pointeri=0,则添加新记录 J:(H(Key*i),IDk,Keyi,i), 并 修 改 i 为(H(Keyi),IDk,Keyi,j);若Pointeri!=0,则找到第Pointeri条记录并修改成(H(Keyi),IDk,Keyi,i)。
(6)标签将接收到的H(IDk‖R)与第 2步中计算的H(ID‖R)作比较。若相等,则将自身的Key值更新为Key*,进入解锁状态;若不相等,则保持沉默。
该巡检系统的应用,克服了传统巡检方式的种种弊端,既对巡检人员进行了有效的监督,杜绝了玩忽职守现象,又实现了无纸化办公的要求,提高了巡检效率和设备管理水平。该系统的应用必将提高电力生产的安全运行水平,有着广阔的发展前景。
[1]殷波,邓恒,樊大伟.基于条码技术的变电站巡检系统[J].继电器,2002,30(10):58-60.
[2]徐海猛.基于Pocket PC和.NET平台的变电站巡检系统的设计与实现[D].北京:北京邮电大学,2006.
[3]王江涛,王剑,蔡伯根.基于 GPS和RFID技术的铁路信号设备巡检系统[J].铁路学报,2006,28(5):90-94.
[4]BRADBROOK R.Wal-Martand RFID[J].Folding Carton Industry,2004,31(4):30-33.
[5]CHAKRAVARTHY S,MISHRA D S.An expressive event specification language for active databases,UF-CIS-TR-93-007[R].UniverSity of Florid GainesVille,1993:23-25.
[6]成修治,李宇成.RFID中间件的结构设计[J].计算机应用,2008,28(4):1055-1057.
[7]赵黎.RFID中间件事件管理系统的设计与实现[D].武汉:华中科技大学,2006.
[8]GEPPERT A,TOMBROS D.Event—based distributed workflow execution with EVE ,ifi·96.05[R].University Zurich,1996:44-48.