新闻中心

EEPW首页 > 手机与无线通信 > 设计应用 > 基于CAN总线和RFID的矿井定位系统设计

基于CAN总线和RFID的矿井定位系统设计

作者:时间:2009-03-19来源:网络收藏

  考虑到中的设备需要防爆安全认证,本中尽可能地减少外围芯片数量。MCU采用美国微芯公司的,此集成了E技术的控制模块、lO位A/D模块、增强的通用串口模块、32KB的增强型Flash存储器等,内部资源丰富,简化了

  射频收发模块使用AD公司的可编程射频收发芯片ADF7020,工作频率为431~478MHz和862~956MHz波段,收发过程工作在半双工方式,支持ASK/FSK/OOK/GFsK等多种调制方式。驱动器使用的是致远电子的通用CAN收发器芯片CTM8251A,此芯片将传统的CAN驱动电路的光电隔离和CAN驱动器集成到一块芯片,提高了通信的可靠性。

  2.1PICl8F458O与CTM825lA的接口电路带有CAN控制模块,支持CAN1.2、CAN2.0A、CAN2.0B协议,只需外接CAN驱动器即可实现CAN模块的硬件,接口电路如图3所示。CAN发器芯片CTM8251A具有DC2500V隔离功能,符合ISO11898标准,数据速率最高达1Mbps,具有自动热关断保护功能,并且未上电或欠压节点不会影响CAN总线的正常工作。

  2.2与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、结语

  本文针对煤矿安全生产的需要,设计了基于技术的系统。为了提高系统的可靠性,减小防爆安全认证的难度,设计中使用高集成度芯片,以减少分立元件的数量。在读写器中实现了基于最新的ISO/IEC18000―6c国际标准协议的软件设计,不仅减小了冲突发生的概率,而且大大提高了读写器CPU的效率。读写器与上位机的通信使用了可靠性较高、中广泛使用的CAN总线技术,使地面监控室可以及时了解井下的工作状况。


上一页 1 2 下一页

评论


相关推荐

技术专区

关闭