APP下载

基于有源RFID的牧场定位技术研究

2018-08-06卢圣文

网络安全与数据管理 2018年7期
关键词:读写器测距体温

卢圣文,欧 文

(1.中国科学院物联网研究发展中心,江苏 无锡 214135; 2. 中国科学院大学 微电子学院,北京 100049;3.中国科学院微电子研究所,北京 100029)

0 引言

在我国,目前对奶牛的养殖等主要采用传统编码以及无源RFID进行溯源管理, 存在信息量小、不能采集奶牛生命体征信息、识别距离短和不能主动发送自身信息等问题。随着智能化时代的到来,物联网在各个方面得到广泛应用,牧场管理的智能化需求也日益凸显。牧场管理的智能化主要体现在对动物体的位置信息、生命体征信息两方面的监控,实现养殖过程中对动物健康状态的更精细化的管理。在生命体征方面有体温、血压、呼吸和脉搏等反映健康状态的指标,目前的研究主要集中在对体温的监测上,中国农业科学院的蔡勇研究了牛的体温监测[1],浙江大学杨威研究了鸡的体温监测[2]。在位置信息方面,关键是传感器的位置信息获取,主要有基于测距的定位方法和距离无关的定位方法两类。基于测距的定位通过测量节点之间的距离或角度关系,使用三边测量法、三角测量法或极大似然估计法计算节点位置。目前的测距方法[3]有到达时间法(Time Of Arrival,TOA)[4]、到达角度法(Angle Of Arrival,AOA)[5]、到达时间差法(Time Difference On Arrival,TDOA)[6]和接收信号强度法(Received Single Strength Indicator,RSSI)[7]。距离无关的定位方法有质心定位法[8]、DV-Hop算法[9]和近似三角形内点法(Approximate Point-in-Triangulation, APIT)[10]等。本文针对牧场管理需求,重点针对低成本和低功耗的要求,实现了集成动物体温采集的RIFD标签,研究改进和实现了基于RSSI测距的定位算法。

1 有源RFID系统组成及其工作原理

有源RFID系统可以分为三个部分:有源标签、读写器和上位机。有源标签通过唯一的身份标识号(Identification,ID)互相区分,标签可以通过集成传感器完成对特定物理量的测量。有源标签通过传感器测量到需要的物理量并将其与自身ID打包发送给附近的读写器,读写器接收到信号后初步处理并存储在读写器的存储设备中,上位机通过通信接口读取读写器的存储器获取相关信息并进一步处理,获得体温及位置信息,最后将处理结果显示在上位机中[11]。

1.1 标签的电路设计

根据牧场需求设计了一种能采集奶牛体温的有源RFID标签,其电路包括以下几个模块:体温采集模块、电源管理模块、微控制模块、射频模块和天线。其结构如图1所示。

图1 标签电路结构

考虑到标签低功耗和限定尺寸的应用需求,选择NRF24LE1芯片作为主控芯片和射频芯片。该芯片是一款集成了微控制器模块和射频模块的芯片,芯片内包含2.4 GHz低功耗无线收发内核NRF24L01P、高性能51内核和丰富的外设资源,芯片有多种工作模式方便进行低功耗设计,芯片有电压检测功能可以进行电路低电压保护,QFN24封装的NRF24LE1芯片的封装尺寸仅为4 mm×4 mm,方便标签电路设计。由于成品的温度传感器采集奶牛的体温时操作复杂,本文标签利用热敏电阻配合NRF24LE1芯片自带模数转换器(Analog-to-Digital Converter,ADC)完成采集奶牛体温的电路,将热敏电阻放入牛耳蜗或标签穿孔部位可以方便地采集牛的体温,测量精度为±1 ℃,满足牛体温采集要求。标签采用合适尺寸的纽扣电池供电。

1.2 读写器的电路设计

针对读写器所需实现的功能设计的读写器电路包括以下几个模块:电源管理模块、串口通信模块、微控制器模块、射频收发模块和天线。其结构如图2所示。

考虑到读写器采集RSSI值和存储容量的应用需求,选择NRF51822芯片作为主控芯片和射频芯片。该芯片是一款集成了微控制器模块和射频模块的芯片,其2.4 GHz射频模块能与NRF24LE1兼容,其控制器内核为32位ARM Cotex-M0,比NRF24LE1有更大的存储空间和更快处理速度,NRF51822芯片能读取RSSI值。当读写器与标签通信地址匹配时,读写器与标签之间可以相互通信,读写器检测接收到的信号强度得到对应的RSSI值。

图2 读写器的电路结构

2 RSSI定位原理及算法研究

基于RSSI测距的定位算法包括两个部分:RSSI测距和根据距离定位。具体过程为建立信号传输模型,读取RSSI值并根据信号传输模型计算未知节点与已知节点的距离d,根据距离关系计算出未知节点位置坐标。

2.1 信号传输模型

目前无线信号模型普遍采用Shadowing模型[12],该模型可表示为:

(1)

式(1)中d0为参考距离;RSSI0为参考距离d0处的接收信号强度;d为待测距离,单位为m;n为信号衰减因子(与信号传播环境有关);ξ为一个高斯随机变量;RSSI为待测距离为d时的接收信号强度。RSSI值为接收信号功率的对数表达形式,单位为dB。

在实际应用过程中,通过取平均值的校正方式消去高斯变量对测量结果的影响,可将式(1)简化为:

RSSI=Q-10nlgd

(2)

常量Q表示距离为1 m时的RSSI值;n为信号传输常数,与信号传输环境有关;d为接收端与发射节点之间的距离。

2.2 定位算法研究

基于测距的定位算法主要包括三角定位法、三边定位法和极大似然估计法。

三角测量法利用两个天线阵列测量未知节点到两个天线阵列的角度,两个天线阵列位置已知时根据两角一边确定三角形可以确定未知节点坐标。

三边测量法利用未知节点到三个已知节点的距离可以确定未知节点坐标。如图3所示,已知三点A(xa,ya)、B(xb,yb)和C(xc,yc),未知节点D(x,y)到三点距离分别为da、db和dc,可得方程组如式(3)所示:

(3)

解上述方程组可得D点坐标为:

(4)

三边测量法受环境因素干扰可能没有唯一解,当已知节点不少于3个时,可以通过极大似然估计法求出联立方程组的最优解作为节点坐标。

图3 三边测量法示意图

三角测量法需要布置天线阵列,成本较高。极大似然估计法需要布置较多的读写器,成本较高。三边测量法由于需要先计算未知节点到已知节点之间的距离,精度受环境影响严重。针对环境因素对定位精度的影响,本文提出了改进的三边定位法,提高了定位精度和算法的环境适应性。

未知节点D到三个已知节点A、B和C的RSSI值分别为RSSIa、RSSIb和RSSIc,通过RSSI之间的差值消去常量Q对计算结果的影响,可得:

(5)

联立式(3)和式(5),可得式(6),式(6)中,当三个RSSI值互不相等时,解为两个圆的交点,有两个点,其中一个解坐标在定位范围之外舍去;当三个RSSI值有两个相等时,解为圆和直线的交点,其中一个解在定位范围之外舍去;当三个RSSI均相等时,解为两直线交点(判断解的坐标是否在定位范围内,舍去不在定位范围内的解)。

(6)

改进的算法在计算过程中消去了常量Q,可以减少因环境不同引起Q的不同而导致的测距误差,从而提高三边测量法的精度和环境适应性。

3 系统软件设计

有源RFID的软件分为上位机和下位机两部分,下位机又分为读写器软件和标签软件两部分。上位机和下位机之间通过串口进行通信。

3.1 下位机软件设计

标签的主要功能为牛体温采集和与读写器通信。根据标签的低功耗要求,应使标签大部分时间处在休眠模式,休眠模式下有两种唤醒方式:定时唤醒和中断唤醒。标签唤醒之后采集数据并打包自身ID发送到读写器,发送完成进入休眠状态。其主程序流程如图4所示。读写器的主要功能为与标签通信和与上位机通信。读写器大部分时间处于信号扫描状态,接收到信号之后读取信号RSSI值、标签ID和动物体温,将读取到的数据打包发送到上位机。当查找标签时,读写器进入广播模式,广播需要查找标签的ID,对应标签收到信号后产生中断信号,收到对应标签的应答后读写器结束查找返回信号扫描状态。其主程序流程如图5所示。

图4 标签主程序流程图

图5 读写器主程序流程图

3.2 上位机软件设计

上位机的主要功能为接收读写器数据,计算标签坐标,显示定位结果、标签ID和动物体温。上位机大部分时间处在数据采集状态,通过串口读取读写器发送来的RSSI值、标签ID和动物体温,根据RSSI值计算出标签位置,判断标签位置和动物体温是否正常,当标签位置或者动物体温异常时产生报警信号,显示标签ID、标签位置和动物体温。当查找标签时,将需要查找的标签ID发送给读写器,收到读写器的应答后上位机结束查找,返回数据采集状态。其主程序流程如图6所示。

图6 上位机主程序流程图

4 实验与结果分析

实验环境选择在室外开阔地,实验过程中标签与阅读器均离地1 m。先进行测距实验,建立无线信号模型;再进行定位实验,通过无线信号模型与测量数据完成定位实验并分析定位结果。

4.1 测距实验

将读写器固定在一点,测量不同距离d对应的RSSI值。具体过程为:选择一块室外空旷地段;将读写器固定在1 m高的固定点处;将标签固定在与读写器距离为d、离地高度为1 m处以0 dBm功率发送自身ID;读取读写器端的RSSI值和ID;记录实验数据并完成对数拟合。测距实验结果如图7所示。

图7 测距实验结果

拟合结果为A=-47.76、n=2.49,均方差为3.79,确定系数为0.867 6。将得到的无线信号模型用于定位实验。

4.2 定位实验

将读写器固定在定位范围的三个角上,测量不同坐标点(x,y)对应的三个读写器RSSI值。具体过程为:选择一块空旷室外广场;将三个读写器固定在边长为20 m的正方形中三个点上,正方形区域为定位范围;将标签固定在正方形内一些已知坐标点处,以0 dBm 功率发送自身ID;分别读取三个读写器的RSSI值和ID;记录实验数据并根据无线信号模型完成标签定位。定位实验结果如表 1所示。

三边测量法的最大定位误差为3.73 m,最小误差为1.36 m,平均误差为2.14 m,改进之后定位的最大误差为2.25 m,最小误差为0.98 m,平均误差为1.39 m,改进之后的算法整体精度提高了35%。消去Q的影响后,定位精度有较大提高,环境适应性更强,能更好地满足牧场定位需求。

表1 定位实验结果 (m)

三边测量法的最大定位误差为3.73 m,最小误差为1.36 m,平均误差为2.14 m,改进之后定位的最大误差为2.25 m,最小误差为0.98 m,平均误差为1.39 m,改进之后的算法整体精度提高了35%。消去Q的影响后,定位精度有较大提高,环境适应性更强,更能满足牧场定位需求。

5 结论

本文主要开发了牧场定位系统,研究并优化了定位算法。经过实验测试,结果表明该系统能够实现奶牛的定位,平均定位精度1.39 m,可满足牧场需求。下一步应该扩大定位范围,研究三维定位算法,从而减少牧场阅读器的布置节约成本,并完成现场环境下的测试验证。

猜你喜欢

读写器测距体温
体温低或许寿命长
体温小问题,引出大学问
体温值为何有时会忽然升高?
类星体的精准测距
浅谈超声波测距
老年人的体温相对较低
基于PSOC超声测距系统设计
相对差分单项测距△DOR
基于视频抓拍读写器的高速公路防倒卡研究
基于随机时隙的RFID读写器防冲突方法