物联传媒 旗下网站
登录 注册
RFID世界网 >  技术文章  >  其他  >  正文

低功耗RFID数据采集系统的优化

作者:程小辉, 魏 力
来源:电子技术应用
日期:2014-09-10 15:38:58
摘要:分析了低功耗数据采样系统的需求,确认了系统的优化方向。针对系统无线网络簇头节点的硬件电路进行优化设计,将传感器节点进行轮询和数据传输处理完全分离,在保证系统无线数据传输稳定可靠的前提下,缩短数据通信的时间,从而进一步降低系统非簇头节点的功耗。

  在工业生产中,数据采集和监控为提高产品质量、降低成本提供了信息和手段,成为工业生产中不可缺少的部分。与传统有线数据采集系统相比,无线数据采集系统具有灵活、轻便、工作范围大,环境适应能力强等优势[1],解决了传统数据采集系统在一些特殊的环境中布线难的问题。无线采集模块的供电和能耗一直是整个系统设计的重点。在电池供电的系统中,系统的能耗决定整个系统的工作时间长度,电池的更换频率直接关系着整个系统的维护成本。在以收集自然能源的无源系统中,更低的功耗能减少无源电源的设计难度。因此,降低无线数据采集节点的能耗是整个系统设计的首要问题之一。

  1 系统的优化方向和方案

  1.1 系统的优化方向

  无线数据采集的网络拓扑结构分为树形网络、星形网络和对等网络三种,其中树形网络和星形网络应用比较广泛。在这两种网络的数据采集系统中,数据采集模块是非簇头节点。这类节点受供电模块约束较为严重,因此,在实现功能的前提下硬件设计要尽可能采用低功耗元件和简洁的电路,以达到降低功耗的要求。在无线通信平台已经确定的情况下,电路设计相对固定,硬件上的优化空间较小。

  数据阅读器这类簇头节点的设计受功耗的限制相对较小,将整个系统的优化重点放在数据收集节点的通信方式上相对较容易。将整个数据采集过程中的大部分工作尽可能多地安排在簇头节点,减少终端节点的通信工作时间是整体设计的优化方向。

  1.2 优化方案

  轮询是系统收集数据的常用方法。在无线网络中,非簇头节点受到功耗的限制,除上传数据以外,其他时间都会处于休眠状态。为了保证握手与通信成功,簇头节点会增加通信范围内的每个终端节点的询问次数,导致停留在单节点的时间变长。假设采集节点A和F在某一时刻同时唤醒,传统轮询机制在A点上传数据完成后,F点需要历经B、C、D、E 4个节点的轮询时间才能进行通信。将系统对终端节点的轮询和数据传输功能分离,轮询节点时发现某一节点需要进行通信,将该节点信息通知数据采集的模块,负责数据采集的模块收到信息后,立即与该节点进行数据交换。簇头节点在进行数据通信的同时,也进行着轮询。若在A节点数据通信完成之前,轮询已发现F节点数据需要传输,则系统在完成A节点的数据交换后,会立刻进行F节点的通信。这种通信设计方式将提高阅读器找寻工作状态设备节点的效率[2]。尤其在系统中存在数据量较大的单节点时,优势会更加明显。

  2 实验平台的硬件结构

  2.1数据采集终端

  数据采集终端结构如图1所示,分为无线模块、控制芯片、Flash存储、对基模块及串口数据输出5个部分。时基模块用来测量无线模块工作时间,控制芯片通过脉冲信号锁定起始时刻和终止时刻,将时间数据读出并存入Flash中。Flash中的实验数据通过串口上传给电脑。

  时基模块能给多个采集终端提供分辨率为1 μs的时间基准信息。时基模块由硬件逻辑完成,内部结构图如图2所示,TIME_LOCK信号的下降和上升沿锁存时间点,其他信号为CPLD与控制芯片的通信接口。

  2.2 数据阅读器

  数据阅读器的硬件结构如图3所示。本设计使用了双通信模块来实现轮询和数据接收的分离,轮询和数据接收分别工作在两个不同的无线信道上。通信模块1使用CH1信道进行握手,通信模块2使用CH2信道接收数据。公共存储区域用于存放轮询到的节点信息,2个通信模块均能对该区域存储的数据进行修改和读取。

  2.3 NRF24L01无线模块

  NRF24L01是挪威NORDIC公司生产的一款低成本,工作在2.4~2.5 GHz ISM频段的射频收发芯片[3]。芯片的操作和数据读写通过SPI完成。接收模式下,芯片可以同时接收相同信道下6个不同地址的信息。NRF24L01常用模式的工作电流为:(1)发射模式,功率为0 dBm时,工作电流为11.3 mA;(2)接收模式,速率为2 000 kb/s,工作电流为12.3 mA;(3)Standby-I模式,工作电流为32 μA;(4)Power_down模式,工作电流为900 nA。芯片自带的增强型ShockBurstTM模式使执行双向链接协议更为容易、有效,从而保证数据发送可靠性的同时, 降低功耗, 实现在-6 dBm功率下发送数据,平均工作电流可以减小到0.05 mA。

  3 程序设计和细节优化

  3.1 程序设计

  数据阅读器模块1、模块2的程序流程如图4所示。模块1完成初始化后,使用信道CH1进行轮询操作,收到握手信号后,将记录终端编号,刷新公共存储区数据。模块2使用信道CH2收集数据,控制芯片不断循环检测公共存储区的数据更新。发现更新后将数据读入,根据终端编号设置无线模块的地址,并完成握手、数据接收和数据校验。