近年来,矿井安全事故频发。在分析近期几个煤矿特大事故时发现几个共性问题:地面与井下人员的信息沟通不及时;煤矿事故发生后,抢险救灾安全救护的效率低,搜救效果差。为了在矿难发生后能够迅速确认矿难位置和被困员工人数,以最快的速度开展营救工作,保障矿工的生命安全,在矿井中布置基于高新技术的安全监控管理系统势在必行。
本文设计了1个基于CAN总线网络和射频识别技术的矿井定位系统,该系统可以实时地将矿井下人员及矿车的当前位置通过CAN总线网络传送到位于地面的上位机,不仅可以掌握井下作业情况,而且一旦发生安全事故,可以立刻确定被困人员所处的位置及人数,以便迅速展开救援工作。
1、RFID技术和CAN总线简介
射频识别(RFID,RadioFrequencyIdentification)技术是利用无线电波进行通信的一种非接触式自动识别技术。射频识别系统由读写器和电子标签(Tag)组成,每个Tag具有1个全球唯一的ID号,可以与读写器进行无接触的信息交换。根据射频识别系统的工作频率,可分为低频(100—500kHz)、中频(10—15MHz)、射频(850—950MHz)和微波(2.45—5.8GHz)系统,不同的工作频段影响系统的读写距离。按Tag的供电方式,可分为有源和无源两类。
有源Tag需要电源供电,读写距离远,但使用不方便,价格高,寿命有限;无源Tag使用读卡器天线发射的电磁波的能量,因此无源Tag的读写距离有限,但寿命长、体积小。基于在矿井下使用的特殊环境,将Tag嵌人到矿工的安全帽或皮带中,因此本系统使用无源Tag,增加其使用寿命。低频和中频系统对Tag的读写距离只有10cm左右,射频系统的读写距离可达7m左右,微波系统(主要使用有源Tag)可达几十米。由于矿井下需要相对精确的定位信息,而且还要读写方便,本系统选择工作在射频波段,需要在矿井中每隔15m左右安装1个读写器。
CAN(ControllerAreaNetwork)总线最早由德国BOSCH公司提出,主要用于汽车内部测量与控制中心之间的数据通信。由于其良好的性能,广泛应用于其他领域当中,并逐渐成为主要通讯手段。其主要特点有:国际标准的工业级现场总线,传输可靠,实时性高;传输距离远(无中继最远10km),传输速率快(最高1bit/s);单条总线最多可接110个节点,并可方便的扩充节点数;报文为短帧结构并有硬件CRC校验,受干扰概率小,数据出错率极低;出错的CAN节点会自动关闭并切断和总线的联系,不影响总线的通讯;非破坏性总线仲裁技术,可多节点同时向总线发数据,总线利用率高;总线上各节点的地位平等,不分主从,突发数据可实时传输;具有硬件地址滤波功能,可简化软件的协议编制;CAN—bus总线系统结构简单,性价比极高。当矿井通讯网络需求达到更远的通讯距离(大于10km),或者终端数目较多(大于110个)时,安装CANbridge网桥可以成倍地延长通讯距离,也可以成倍地增加CAN—bus网络中终端设备的数目。而且在矿井中使用CAN总线网络还有利于将矿井中相互独立的各种类型系统互通,进行统一管理。
2、矿井定位系统硬件设计
本系统中监控器位于地面的监控室,通过CAN转换卡与CAN总线相连,其上运行由VisualC++编写的监控软件,可以动态显示矿工当前位于哪一基站附近,还可以向某些基站发出查询命令,查询某一员工当前位置;射频读写器作为基站安装在矿井中的已知位置,通过CAN总线与其他基站和监控器相连;矿工进入矿井时都要佩戴安全帽或腰带(内嵌电子标签),并且电子标签的ID已与监控系统信息相关联。当通信距离长、基站节点数量多时,可以使用CANbridge延长CAN总线网络。
本系统使用的无源电子标签是TI公司的RI—UHF—STRAP一08,其符合EPCglobalTMGen2(v.1.0.9)和ISO/IEC18000—6c协议标准,内置192bit的存储器(96bit的EPC存储器、32bit的操作密码、32bit的KILL密码、32bit的Tag—ID存储器),工作在860~960MHz的频段,但此频段还未推出专用的读写器模块,因此本系统的重点是射频读写器的研制。
考虑到矿井中的设备需要防爆安全认证,本系统设计中尽可能地减少外围芯片数量。MCU采用美国微芯公司的PIC18F4580单片机,此单片机集成了基于ECAN技术的CAN总线控制模块、lO位A/D模块、增强的通用串口模块、32KB的增强型Flash存储器等,内部资源丰富,简化了系统设计。
射频收发模块使用AD公司的可编程射频收发芯片ADF7020,工作频率为431~478MHz和862~956MHz波段,收发过程工作在半双工方式,支持ASK/FSK/OOK/GFsK等多种调制方式。CAN总线驱动器使用的是致远电子的通用CAN收发器芯片CTM8251A,此芯片将传统的CAN总线驱动电路的光电隔离和CAN驱动器集成到一块芯片,提高了通信的可靠性。
2.1PICl8F458O与CTM825lA的接口电路PIC18F4580带有CAN控制模块,支持CAN1.2、CAN2.0A、CAN2.0B协议,只需外接CAN驱动器即可实现CAN模块的硬件设计,接口电路如图3所示。CAN发器芯片CTM8251A具有DC2500V隔离功能,符合ISO11898标准,数据速率最高达1Mbps,具有自动热关断保护功能,并且未上电或欠压节点不会影响CAN总线的正常工作。
2.2PIC18F4580与ADF7020的接口电路
PIC18F4580单片机通过ADF7020的串行数据输入引脚SDATA向ADF7020发送编程控制字,控制其工作方式,并可以通过串行数据读回引脚SREAD读取ADF7020的工作状态,SLE引脚作为控制字的锁存信号。DATAI/O引脚是发送信号输入和接收信号输出分时复用引脚,收发工作在半双工方式,因此MCU工作在半双工的同步通信模式下,通过串行同步接口接收或发送数据。当ADF7020接收到一个来自天线的有效信号后,通过INT/LOCK引脚向MCU发出中断信号。
3、系统的软件设计
本设计的编程环境是MPLABIDE软件并内嵌MPLAB—C18,可以支持C语言编程。系统的软件主要分为PIC18F4580初始化、ADF7020初始化、CAN数据收发、读卡器与电子标签间的通信算法等部分。
PIC18F4580初始化主要是对片内各个功能模块的初始化,包括:CAN模块初始化,USART模块初始化,WDT初始化,设置各个端口的方向等。
ADF7020初始化主要包括:设置晶振电路的接人方式,信号的调制/解调方式(ISO/IEC18000—6c标准中使用ASK),定义调制信号的调制输出功率,打开VCO、PLL和输入输出时钟等。在CAN数据收发程序中,读写器的MCU通过CAN总线向上位机实时发送读写器识别出的Tag的相关信息,而CPU接收来自上位机的控制命令数据。
本系统要求读写器能够识别到其覆盖范围内的所有Tag,但在读写器覆盖范围内的Tag会几乎同时响应读写器的指令,这样响应信号就会发生碰撞,导致通信失败,读写器无法正确识别Tag。因此,读写器软件系统要加人防碰撞算法,保证读写器能够与电子标签正确地交换信息。本系统使用支持ISO/IEC18000—6c协议的电子标签,规定使用基于概率类型的时隙随机防碰撞算法。此算法的工作过程为:电子标签进入读写器覆盖范围后进人Ready状态;读写器发送Select命令和Query命令信号(开始一个新的Round周期)并监听响应信号;电子标签收到Query命令后将一个16位的随机(或伪随机)数(数值范围为0000H~3FFFH,即共有多达215个时隙可供使用)装载到时隙计数器中,进入Arbitrate状态,当电子标签每接收到一个QueryRep命令,时隙计数器就会进行减法操作(Query命令中规定了每次减的值Q,而且可以使用QueryAdjust命令修改先前的Query命令规定的Q值);
当计数器减为0时电子标签就进入Reply状态,此时向读写器发出一个16bit的(伪)随机数作为应答信号;如果电子标签收到一个有效的ACK信号(正确包含自己向读写器发送的16bit随机数),那么电子标签就会进入Acknowledged状态,否则如果没有收到正确的ACK,则表明发生碰撞,返回Arbitrate状态;在确认状态中,电子标签向读写器发送包含自己的PC(ProtocolContro1)、EPC(ElectronicProductCode)和16bit的CRC校验等字段的信息;此后读写器向电子标签发出Read命令,可以读Tag的EPC和TID的部分或全部内容;读取后Tag又回到Ready状态。
由于ISO/IEC18000—6c协议使用基于概率类型的时隙随机防碰撞算法,与ISO/IEC18000—6a协议的ALOHA算法和ISO/IEC18000—6h协议的自适应二进制数算法相比,由于时隙随机防碰撞算法在Tag中使用时隙计数器进行防碰撞,大大简化了读写器CPU的编程工作,并提高了读写器的工作效率。
4、结语
本文针对煤矿安全生产的需要,设计了基于RFID技术的矿井定位系统。为了提高系统的可靠性,减小防爆安全认证的难度,设计中使用高集成度芯片,以减少分立元件的数量。在读写器中实现了基于最新的ISO/IEC18000—6c国际标准协议的软件设计,不仅减小了冲突发生的概率,而且大大提高了读写器CPU的效率。读写器与上位机的通信使用了可靠性较高、矿井中广泛使用的CAN总线技术,使地面监控室可以及时了解井下的工作状况。