×
家电数码 > 手机 > 详情

基于二进制防碰撞算法的RFID定位系统的设计

发布时间:2021-04-16 发布时间:
|

摘要:设计了一种以PIC16F877A为主控芯片的RFID定位系统,以低成本、低功耗的2.4 GHz CC2500作为射频收发芯片。从硬件电路设计和软件设计实现方面阐述了RFID定位系统设计的基本流程,并在CC2500的硬件功能基础之上,采用二进制搜索法有效地解决了多标签识别防碰撞的问题。通过接收标签的RSSI值,采用LANDMARC定位算法实现精确定位。
关键词:CC2500;RSSI;RFID;LANDMARC;读写器;标签

引言
目前,有很多定位技术都可以对物体进行定位,但在小区域(如室内)定位服务中,现有的定位技术存在着一定的缺陷,如GPS技术用于停车场这种小区域的定位服务中,成本太高而且定位精度不高。其他技术如超声波技术、射频识别(Radio Frequency Identication,RFID)技术、IEEE802.11、超宽带(UWB)等,应用于室内定位服务,各有优劣。射频识别定位技术以其非接触、非视距、灵敏度高和成本低的优点,正成为定位系统的优选技术。然而,在实际应用中不可能只对一个标签定位,多标签定位必然会造成标签之间的碰撞,为了解决标签之间的碰撞问题,目前国内外所研究的防碰撞算法如下:多址技术(SDMA、TDMA、CDMA、FDMA),ALOHA防碰撞算法二进制防碰撞算法。其中二进制防碰撞算法易于实现且效率和精度高,近几年得到广泛运用。

1 设计方案
阅读器采用的是PIC16F877A微控制器,阅读器与标签都是利用模拟SPI口与CC2500射频模块的数字接口进行通信。作为阅读器部分的PIC 16F877A则用其TXD与RXD引脚通过MAX3232实现电平转换后,与PC机的串口相连以实现读写器读取数据的功能。
读写器与标签之间的射频信号通过空间耦合实现无线信息传递,读写器通过与标签的无线通信,获得接收信号强度指示(RSSI)值,再采用LANDMAR定位算法,就可以计算出目标的相对坐标位置,实现精确定位。在大多数情况下读写器在识别标签时难免会出现碰撞的问题,为了解决这一问题,利用二进制搜索法来防止多标签识别时发生碰撞。系统框图如图1所示。

 

a.JPG


1.1 微控制器
本系统读写器和标签都采用PIC16F877A作为微控制器。PIC16F877A是8位的高性价比微控制器,并且采用不同的宽度,便于实现全部指令的单字节化、单周期化,从而有利于提高CPU执行指令的速度。此外,数据存储空间比较大,拥有8K×14个字节Flash程序存储器、368×8个字节数据存储(RAM)空间、256×8个字节EEPROM数据存储空间。还具有8级的硬件堆栈、内部看门狗定时器、低功耗休眠模式、25 mA的吸入/拉出电流。外部具有3个定时器模块。它还具有2个16位捕捉器、2个16位比较器、2个10位PWM模块、10位多通道A/D转换器、通用同步异步接收/发送器等功能模块。它具有功耗低、驱动能力强、外接电路简单、寻址简单、指令条数少等优点。
微控制器PIC16F877A通过SPI接口与CC2500射频收发芯片实现数据的接收与发送。PC机可以利用串口调试助手发送命令,通过RS232串口连接读写器,控制读写器与标签之间的一切操作。
1.2 射频收发芯片
无线通信的通信距离、通信效率与其主芯片密切相关。CC2500是一种低成本的2.4 GHz射频收发芯片,为低功耗无线应用而设计。电路工作在2 400~2 483.5 Hz的ISM(工业、科学及医学)和SRD(短距离设备)频率波段。
射频收发芯片集成了一个数据传输可达500 kbps的高度可配置的调制解调器。通过开启集成在调制解调器上的前向误差校正选项,使性能得到提升。CC2500为数据处理、数据缓冲、突发数据传输、清晰信道评估、连接质量指示和电磁波激发提供广泛的硬件支持。CC2500在通信中空中接口的数据是以一个固定格式传输,读写器和标签之间的数据传输必须严格按照这个格式进行,否则无法通信。
导言、同步字与CRC校验在发送数据时是由CC2500硬件自动添加,在接收时由硬件自动去除。在信道特性较好的场合,为了提高识别速度,可设定16位的导言与16位的同步字。CC2500在固定长度通信模式下,可删去长度域;在可变长度通信模式,需要8位的长度域给出除去导言与同步字外所有数据负载的字节数。其数据格式如图2所示。

b.JPG


CC2500与MCU之间的接口通过SPI接口相连,MCU通过SPI接口向CC2500发送操作命令,配置其调制方式、工作频率等参数,通过命令配置其为接收状态、发送状态、空闲状态或休眠状态。

 


『本文转载自网络,版权归原作者所有,如有侵权请联系删除』

热门文章 更多
一种音响系统中电子三分频滤波器的设计方法