时间:2024-05-22
严林祥,张红雨
(电子科技大学 电子工程学院,四川 成都611731)
在2.45 G无线通信中,目前可以采用的成熟且有统一协议标准的应用领域有ZigBee、蓝牙等。但也有采用封闭协议通信的2.45 G无线技术,如无线鼠标、2.45 G有源RFID读写器等。它们大多使用Nordic Semiconductor公司的nRF24L01芯片,各个厂家可以根据自己的需求制定自己的通信协议[1-2]。虽然蓝牙、ZigBee都是标准协议,但它们协议复杂、开发难度大,而非标准无线射频协议具有低功耗、低成本、易开发等优点。
基于nRF24L01的有源电子标签在物体识别、数据采集等领域中有着广泛的应用前景。但有些场合要求电子标签不能随意拆卸,一旦拆卸必须通知管理人员。在这种场合,标签发送的正常数据包与异常数据包在传输过程中要有不同的竞争级别;合法人员和非法人员对标签操作时的报警机制要有所不同。
本文基于上述问题,对只读型有源电子标签的低功耗、防拆卸和防碰撞等功能进行了讨论。
文中电子标签由电源、主控模块、射频模块和防拆开关4部分组成。电源模块给整个电子标签供电。由于电子标签要求体积小和携带方便,因此可以采用纽扣电池供电。主控模块和射频模块一起实现标签与读卡器的通信。防拆卸有源电子标签结构示意图如图1所示。
图1中,当电子标签固定于监测物体时,防拆开关处于闭合状态。此时主控模块控制射频模块向读卡器发送正确信息。一旦标签与物体非法分离,就改变了标签与物体的状态,使射频模块将这个异常信息发给读卡器。
图1 防拆卸有源电子标签结构示意图
本文采用nRF24L01作为射频芯片,该芯片内置频率发生器、功率放大器、调制器和解调器等功能模块,可使电路设计简单。同时,nRF24L01具有极低的电流消耗,芯片工作在接收模式时的电流仅为12.3 mA,0 dBm功率发射为11.3 mA,掉电模式仅为900 nA[3]。
nRF24L01芯片与主控芯片采用SPI串行接口进行通信。主控制芯片可以使用GPIO模拟SPI接口工作时序或者SPI控制器两种方式来控制射频芯片。GPIO模拟SPI接口的方式会导致比较多的时间耗费在模拟SPI接口的时序上,访问效率比较低。但本文电子标签功能单一,发送信息间隔比较长,这种工作方式可以满足实际的应用。因此,选择价格相对低且不带SPI控制器的MSP430F2121单片机作为主控芯片。该芯片内带Flash存储功能,工作电压在1.8 V~3.6 V之间。实时运行模式下,若工作频率为 1 MHz,电压为 2.2 V,则芯片的工作电流为 250 μA;而在待机模式的电流只有0.7 μA。
如图2所示,拆卸检测电路在硬件中是通过防拆开关SW1来实现的。当开关与物体固定时,开关处于按下状态,此时开关接地,从而MSP430F2121的P2.2管脚输入为低电平;当开关与物体分离时,开关弹起,P2.2输入为高电平。因此,在开关弹开时刻,P2.2管脚会有一个由低电平到高电平的上升沿。当MSP430F2121检测到这个变化时,则进行中断处理。MSP430F2121的其他引脚主要用于与JTAG下载器进行调试。
图2 主控模块与防拆开关原理图
本文射频模块电路主要由nRF24L01、天线、晶振电路组成,如图3所示。MSP430F212采用GPI0模拟SPI接口的方式与nRF24L01通信。其中,标签的天线基于1/4波长单端PCB印制天线理论设计,也可以利用AppCAD软件所提供的微带线模型进行计算[4]。射频模块PCB的设计对标签的整体性能有很大的影响,在PCB设计时,必须考虑到各种电磁干扰问题,注意调整电阻、电容和电感的位置,直流电源及电源滤波电容要尽量靠近nRF24L01的VCC引脚。
除了上述的硬件电路,标签的软件设计对整体的性能也有很大的影响。本文的电子标签软件的主要功能为:系统低功耗控制、防拆开关状态检测和电子标签防碰撞算法,具体如图4所示。
图3 射频模块原理图
图4 防拆卸标签软件流程图
系统初始化后,MSP430F2121进入低功耗模式,定时器中断或开关触发的外部中断将它唤醒。为了降低能耗,nRF24L01工作模式在掉电模式、待机模式I和发射模式之间进行变换。在寄存器设置时,使其进入待机模式I,此时芯片内部振荡器停振,射频收发单元停止工作。发送信息时,芯片工作在发送模式,而在其他空闲时间则使芯片进入低功耗模式(待机模式I)。当nRF24L01进入掉电模式时,芯片内部的各功能模块关闭,保持最小电流消耗。nRF24L01初始化后,把配置寄存器中的电源模式位(PWR_UP)置为 1,接收模式位(PRIM_RX)设置为0,最后通过设置信号线CE为高电平且保持在10 μs以上即可使nRF24L01进入发送模式。在完成一次数据的发送过程中,处于发射模式的时间不会超过4 ms[3]。因此,在标签发送数据的过程中,只有在非常短的时间内电流的数量级会达到毫安级别,而其他时间则处于低功耗状态,电流为微安级别。
nRF24L01有125个频点,能够实现点对点、点对多点的无线通信。在接收模式下有6个数据通道可供选择(如图5所示),而每个数据通道作为RF信道中一个逻辑通道,都有自己的地址。因此,可以将电子标签发送数据包的地址设置为读卡器6个数据通道中的某个未被使用的通道地址,从而实现一个读卡器可以接收6个电子标签的数据。但实际应用中,标签个数远大于6,因此要采用防碰撞算法来解决数据冲突。
图5 nRF24L01点对多点通信结构图
nRF24L01自身有一定的防碰撞能力。当nRF24L01设置为接收模式时,其内部基带协议引擎会不停地搜索6个通道中合法的数据包。但每次只有一个数据通道的数据包被接收处理。
此外,一旦防拆开关弹起,要尽快地将这个异常发送给读卡器。因此可以为携带异常状态的数据包预留一个或两个数据通道。而如果没有发生异常,则把数据包发往事先规定的通道。这样就避免了携带异常状态的数据包与正常状态的数据互相竞争数据通道,从而使读卡器能够快速地处理异常数据包。
如果每个标签采用固定的时间间隔发送数据,发生碰撞的可能性仍然很大。因此可以利用随机数生成函数产生一个在(N1,N2)之间的随机数,把这个随机数给定时计数器赋值,使得定时器的定时间隔在(T1,T2)之间[5-6]。若增大T2-T1,则发生碰撞的概率减小。
nRF24L01发送数据包的数据域长度为 0~32 B,可以根据实际需要对其进行设置。本文将数据包的长度设置为5 B,其中4 B用于存放标签的唯一ID号,1 B用于放置标签的状态。正常情况下,将代表标签与物体未分离的状态写入数据域。一旦标签与物体分离,则把异常状态写入数据域,并且将数据包立即发送出去。当中断函数结束后,在每次发送过程中,主函数通过检测P2.2管脚的高低电平来修改标签与物体的状态。为了准确判断防拆开关是否弹起,可以在两次检测之间加入适当的延时以消除抖动带来的误判。读卡器收到标签发送的信息后,提取其中的标志域,即可实时了解标签与物体的状态。
另外,考虑一种特殊情况:如果某些非法人员将标签与物体强行拆开后,把标签的开关又重新闭合。这样读卡器在读到几个非法状态后,又会马上误以为标签与物体仍然正常。由于非法状态的时间比较短,监测人员可能没有觉察到,但是标签所跟踪的物体已经被盗了。
对于上面的问题,可以通过设计读卡器对标签状态的检测机制来解决。一旦读卡器识别到标签的非法状态,就对这个标签的ID号进行记录。此后,读卡器在读到这个标签的N次范围内,不管这个标签数据包中的状态域代表哪种情况,读卡器都认为是非法状态。当合法人员对标签进行操作时可以将N设置为0,而在正常跟踪监测时,将N设置为一个比较大的数,一旦有非法状态,有足够的报警时间。
测试时读卡器采用1.5 dBi棒状天线与电子标签通信,识别距离可以达到100 m。采用增益更大的天线,使得读取距离更远,可以满足实时监控或查询管理户外物品的应用。同时规定,数据包状态标志为1表示标签固定在所监测的物体上,状态标志为82表示标签与物体分离。改变标签中的开关状态,读卡器接收到的标签发送数据包中ID号和状态标志位如图6所示。其中图6(b)是标签与物体分离时读卡器数据接收界面的实验截图,图中可以发现此时状态位已经改变。
图6 读卡器读到的标签数据截图
本文设计的基于nRF24L01射频芯片的防拆卸只读型有源电子标签体积小、功耗低,可以广泛用于户外物体监测。同时,该电子标签可扩展性强,若将电子标签外接一些数据采集的传感器,将采集到的数据通过射频模块发送给读卡器,即可实现电子标签的无线数据采集与传输。
[1]王爱玲,盛小宝.RFID技术及应用[M].北京:中国物资出版社,2007.
[2]曹青梅,徐立友,曹艳玲,等.基于 nRF24L01的移动数据通讯网络设计[J].微型机与应用,2011,30(24):43-45.
[3]Nordic Semiconductor.nRF24L01 single chip 2.4 GHz transceiver product specification[EB/OL].(2007-xx-xx)[2013-05-03].http://www.nordicsemi.com/eng/Products/2.4GHz-RF/nRF24L01.
[4]赵春晖,张朝柱.微波技术[M]北京:高等教育出版社,2007.
[5]邓一文,张红雨,张鹏程,等.RFID高频读写器防碰撞算法研究[J].电子设计工程,2011,19(19):31-34.
[6]周清.射频识别(RFID)技术中防碰撞算法的研究[D].无锡:江南大学,2012.
我们致力于保护作者版权,注重分享,被刊用文章因无法核实真实出处,未能及时与作者取得联系,或有版权异议的,请联系管理员,我们会立即处理! 部分文章是来自各大过期杂志,内容仅供学习参考,不准确地方联系删除处理!