微波EDA网,见证研发工程师的成长!
首页 > 射频和无线通信 > 射频无线通信文库 > 基于ZigBee技术的有源RFID系统

基于ZigBee技术的有源RFID系统

时间:07-04 来源:维库电子市场网 点击:

网络存在。这就需要系统中读写器(一般与服务器直接串口相连)将网络建立起来,并负责地址的分配和成员的加入、节点设备数据的更新、设备关联表的维护。标签发现网络,就会请求加入网络。入网成功后,标签就与其中读写器建立父子关系,时刻保持通信。为了降低标签功耗,标签具有定时休眠的功能。

  本系统采用Z-stack 协议栈来完成网络的建立及路由或标签的入网,从而建立通信链路。

  2.1.1 网络形成

  读卡器上电后,将扫描DEFAULT_CHANLIST 指定的通道,最后在其中之一形成网络(根据ZDAPP_CONFIG_PAN_ID 的值)。然后调用ZDO 层的初始化设备函数ZDOInitDevice(0)设置NV 网络状态:

  networkStateNV=INITDEV_NEW_NETWORK_STAT;最终触发网络初始化函数,设置网络初始化事件;ZDO层任务事件处理函数对网络初始化事件进行处理,调用ZDO_StartDevice()函数,将改变设备状态为协调器启动:devState = DEV_COORD_STARTING;然后调用NWK 层网络形成请求函数:NLME_Network-FormationRequest();NWK 层通过调用MAC 和PHY 层相关功能函数执行一些列网络形成动作,最终形成网络。

  2.1.2 标签加入网络

  标签在上电初始化以后,经过初始化设备、设置NV 网络状态、触发网络初始化函数、设置网络初始化事件、启动设备后将改变设备状态为发现网络:

  devState = DEV_NWK_DISC;调用NWK 层发现网络请求函数:NetworkDiscoveryRequest();然后NWK 层通过调用MAC 和PHY 层相关功能函数执行一些列发现网络动作,发送发现网络消息至ZDO 层。ZDO 层接收到该消息后,修改设备状态为正在加入网络:

  devState = DEV_NWK_JOINING; NWK 层通过调用MAC 和PHY 层相关功能函数执行一些列请求加入网络动作,并发送加入网络指示消息至ZDO 层。ZDO层任务事件处理函数将执行处理加入网络函数:

  ZDApp_ProcessNetworkJoin();修改设备状态为终端设备:devState = DEV_END_DEVICE.设置ZDO 状态改变事件: osal_set_event(ZDAppTaskID, ZDO_STATE_CHANGE_EVT );最终加入已有网络,与读卡器进行通信。

  2.2 读写器与有源RFID 标签的软件流程图

  读写器设备初始化后首先要检测是否有网络存在,这决定了读写器是作为网络的协调器还是路由器,来完成相应的功能。标签设备初始化后,首先加入网络,再执行设备程序,完成传感器数据采集等功能。

  在它休眠醒来或数据发送完成后,要检测一下是不是已经离开网络。如果标签远离与它通信的读写器,它将通过孤点方式再次申请加入网络,与新的读写器建立通信。读写器与有源RFID 标签的具体工作流程如图3 所示。

  

  图3 读写器与有源RFID 标签的具体工作流程。

  2.3 低功耗设计

  由于标签是有源RFID,低功耗设计是非常重要的。在设计中,主要采用增加休眠时间还减少通信流量两种方法来实现的。标签在休眠时的功耗将近为唤醒时的千分之一,在保证监控的真确性的前提下,增长休眠时间是低功耗设计的一个重要手段。设计中用定时器1 作为定时休眠,休眠时间为10s.具体实现:

  __interrupt void T1_ISR(void)

  { IRCON &= ~0x02; //清中断标志

  counter++;

  if(counter == 250)

  {counter = 0;timetemp = 10; }//10 秒到

  PowerMode(3); }//进入休眠模式3

  为了减少标签的通信流量,标签会记录上一次的状态(如温度变化),根据状态是否变化来决定是否传输数据。具体实现:

  if(oldstate!=newstate)

  {zb_SendDataRequest(0xFFFE,REPORT_CMD_ID, 2, pData,0,AF_ACK_REQUEST,0);} //发送数据请求

  else{PowerMode(3);}}//进入休眠模式3

  3 测试结果

  在测试时,我们模拟仓库管理系统。将标签中写入了物体的具体信息(我们这里写入一个ID 号),并在标签上设计了温度传感器电路,用来实时监测物体周围环境信息。读卡器与计算机相连,通过串口显示标签的信息。串口显示如图4 所示。

  

  图4 测试显示结果。

  4 结语

  本文基于ZigBee 技术设计了一种工作频段为2.4GHz 的有源RFID 系统。改善了目前RFID 系统识别距离短,组网不灵活,抗干扰能力差的缺点。详细地介绍了整个系统的开发流程。但是此系统中标签价格仍然昂贵,只适合于贵重物体跟踪等少数场合。随着技术水平的不断提高,生产出价格低廉,集成度更高的射频芯片,使得芯片体积更小,价格更低,此系统便可以得到广泛应用。

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top