随着无线通信和无线传感器网络技术的发展,基于位置的服务(LBS)显得越来越重要。在室外环境下,全球定位系统(GPS)已经比较成功地解决了定位问题,它通过GPS接收机测量来自5~24个卫星信号的到达时间差(TDOA)进行位置估算,可以提供接近全球的定位覆盖范围。而在室内环境下,GPS系统由于卫星信号被阻隔而无法完成定位。与此同时,室内定位服务的需求日益增加,室内定位技术的研究成为各大高校、研究机构和企业的一个研究热点。
1 室内定位技术
目前已有的室内定位技术主要有:超声波定位技术、射频识别技术(RFID)以及基于接收信号强度(RS—SI)的定位技术。
超声波定位技术大都采用反射式测距法,即发射超声波并接收由被测物产生的回波,根据回波与发射波的时间差计算出待测距离。超声波定位系统由若干应答器和1个主测距器组成。主测距器放置在被测物体上,在上位机指令信号的作用下向位置固定的应答器发射同频率的无线信号,应答器在收到无线信号后向主测距器发射超声波信号,从而得到主测距器与各个应答器之间的距离,进而确定被测物体的坐标。Cricket Loca—tion Support System和Active Bat Location System是目前成功使用的两个系统。但是这类系统需要大量的底层硬件设施投资,成本太高,无法大面积推广。
射频识别(RFID)系统主要由电子标签、读卡器以及在标签与读卡器之间传递射频信号的微型天线3部分组成。当标签置于读卡器发出固定频率的电磁场附近获得了能量并产生上电复位后,原本处于“休眠状态”的标签被激活,并将含有自身种类识别码标志、制造商标志等信息代码调制到载波上经卡内天线发射出去,供读卡器处理识别。该定位技术最典型的例子是LAND—MARC系统,该系统用活性参考标签Tag替代离线数据采集,其动态参考信息能够实时捕捉环境变化,提高定位精度和可信度。活性参考标签Tag的应用免去了每个测试点数百次的人工数据采集,且能更好地适应室内环境的波动,提高定位精度。该项技术的定位精度在很大程度上与设备的数量和分布有关,并要求有与之相配套的设备和基础设施。
基于接收信号强度(RSSI)定位技术,并根据接收节点收到的信号强度,计算出信号的传播损耗;利用理论与经验模型,将传输损耗转化为距离,再计算出节点的位置。目前很多控制芯片都具有测量RSSI的功能,无需添加额外的硬件设备来进行精确的时间同步和角度测量,降低了成本,系统的可扩展性良好。因此该项技术已成为室内定位技术的研究热点。
2 CC2431定位系统
CC2431是TI公司推出的针对无线传感器网络ZigBeeTM/IEEE 802.15.4应用的片上系统(SoC)解决方案。其内部集成了CC2420射频收发器、工业标准增强型8051MCU内核、128 KB Flash ROM和8 KBRAM。由于CC2431可工作在4种工作模式下,且工作模式之间的转换时间较短,因而能够满足超低功耗系统的要求。CC2431的主要性能特点如下:
(1)定位引擎能精确计算网络中节点位置;
(2)具有高性能低功耗的8051控制器核;
(3)集成符合IEEE 802.15.4标准的2.4 GHz RF无线收发机(具有工业级领先的CC2420射频内核);
(4)优良的无线接收灵敏度和强大的抗干扰性能;
(5)128 KB可编程闪存;
(6)8 KB RAM,4 KB带所有功耗模式数据保持功能;
(7)强大的DMA功能;
(8)极少的外部元器件;
(9)网状网络仅需单一晶体;
(10)低电流损耗(微控制器运行于32 MHz时,接收和发射分别为27 mA和25 mA);
(11)休眠模式时仅0.9μA电流损耗,外部中断或RTC能唤醒系统;
(12)待机模式下小于O.6μA电流损耗,外部中断能唤醒系统;
(13)低功耗模式与主动模式之间的快速切换保证了低占空比系统的超低平均功耗;
(14)硬件支持CSMA/CA功能;
(15)较宽的电压范围(2.O~3.6V);
(16)数字化的RSSI/LQI支持;
(17)具有电池监测和温度传感器;
(18)多达8路输入的8~14位模/数转换;
(19)集成AES一128安全协处理器;
(20)带有两个功能强大的支持多组协议的USART;
(21)支持硬件调试;
(22)集成看门狗定时器;
(23)具有1个符合IEEE 802.15.4规范的MAC计时器,1个常规的16位计时器和两个8位计时器;
(24)21个普通I/O引脚,其中两个具有20 mA驱动能力;
(25)强大灵活的开发工具。
2.1 CC2431定位引擎的操作
CC2431的定位引擎采用基于接收信号强度指示(RSSI)的距离定位方法,根据接收信号强度及已知参考节点位置,准确计算出待定位节点的位置,然后将位置信息发送给接收端,与集中型定位系统相比,进行分布节点定位,以减少网络通信量和网络通信延迟。CC2431的定位引擎操作流程如图1所示。
定位引擎需要3~16个参考节点的坐标[x0,y0,x1,y1,…,x15,y15]作为输入。参考节点的坐标表示每个参考节点的位置,是在[O,63.75]范围内的无符号数值。最高分辨率为0.25 m。所有参考坐标被装载入RF寄存器REFCOORD。在写入寄存器REFCOORD之前,寄存器LOCENG.REFLD位必须置1以指示有1组参考坐标要写入。16个坐标对都必须写入,当定位引擎使用的参考节点数少于16个时,为了标记某些参考坐标未使用,将0载入作为未使用的参考坐标值,这些参考节点的RSSI值为O.O。当所有参考坐标写入后,LOCENG.REFLD=0。定位引擎除了需要参考坐标外,还需要一组测量参数,这些参数包括:2个射频参数A和n,4个搜索边界坐标和16个RSSI值。定义参数A为距离发射机1 m参考距离下接收信号强度的绝对值,定位引擎要求参数A的范围为[30.0,50.0],精度为0.5。参数A为无符号定点值,最后一位为小数位,其余位表示整数部分。参数n被定义为路径损耗指数(描述信号功率随着距离的增加而衰减的速率),这种衰减正比于d=n(d表示发射机与接收机之间的距离)。在估算定位x,y坐标时,先设定搜索边界,以降低错误和估计时间,最大搜索区域的x,y范围为[0.0,63.75]。假设定位引擎搜索被限制在一个矩形区域,坐标为(xmin,ymin)和(xmax,ymax),输入定位引擎的4个搜索边界参数为xmin,xdelta,ymin,ydelta,其中xdelta=xmax一xminydelta=ymax-ymin,如果选择在整个可能的区域内搜索,则这4个参数值为:0.0,63.75,0.0,63.75。如果某个参数遗漏,则定位引擎无法正确地估算位置。RSSI值是对应于一组参考坐标的RSSI测量值,其范围在[一40 dBm,一95 dBm],精度0.5 dBm,写入时符号被去掉。如果使用的参考节点个数少于16个,则必须写入0.O作为接收信号强的度值。所有测量得到的参数都装载入RF寄存器MEASPARM。在写入MEASPARM之前,寄存器位LOCENG.PARID必须置1,以指示有1组测量得到的参数要写入。参数装载过程开始后,所有22个参数都必须被写入。测量得到的参数写入顺序为[A,n,xmin,xdelta,ymin,ydelta,RSSI0,RSSI1,…,RSSI15]。 当参考坐标和测量得到的参数写入后,通过将寄存器位LOCENG.RUN置1启动定位估计计算。当LOCENG.DONE置1时,估计得到的坐标可以从寄存器LOCX和LOCY中读出。LOCENG.RUN置1到读出估计坐标的时间间隔则根据搜索边界参数的不同在50μs~13 ms之间变化。定位引擎不产生任何中断请求。由LOCX寄存器给出的x坐标估计值包含一个偏移量,该偏移量必须被去除,以得到真实的x坐标。去除的方法如下:x=(xLOCX-xmin+1)%(xdelta+1)+xmin。可直接使用由LOCY寄存器给出的y坐标估计值。
2.2 CC2431定位系统的操作流程
CC2431定位系统由网络监控管理设备、参考节点与盲节点组成。其中,网络监控管理设备使用串口发送和接收定位协议消息,它依附于主系统并且被用作汇聚节点接收盲节点响应、配置参考节点以及设置盲节点参数。当网络监控管理设备应用程序接收到盲节点的响应信息时,通过串口把数据传给主系统。盲节点包含CC2431定位引擎,定位引擎通过无线测距范围内应答的参考节点坐标以及发送至这些参考节点信息的。RSSI值完成定位运算。盲节点首先发出一定时序的RSSIBlast信息广播,当等待盲节点已配置完成规定的时间间隔后,盲节点向参考节点发出XY—RSSI请求广播,每个接收到RSSI Blast信息广播的参考节点将进行接收到信息的RSSI值计算,当接收到XY—RSSI请求时,参考节点将向盲节点发回其位置信息以及RSSI值。整个定位系统的定位时序图如图2所示。
3 实验测试及验证结果
这里以TI公司的CC2431节点作为实验平台,选择8.O m×8.0 m的实验室作为实地测试环境进行测试,在实验室的4个墙角及中间位置布置了5个CC2431作为参考节点,其位置已知且固定不动。盲节点对均匀分布在测试环境内的49个点进行定位测试,定位结果如图3所示:
根据获取的待定位节点坐标实测数据,通过Mat—lab进行数据处理,以得到系统的定位误差,定位误差的分布如图4所示:
由图4曲线可以看出,在室内环境下,采用CC2431定位系统能够分别实现50%和90%的定位,结果误差前者在1.O m以内,后者在2.5 m以内,完全能够达到室内环境下定位精度的要求。
4 结 语
首先比较目前已有的室内定位技术的优缺点,重点介绍CC2431定位引擎的使用方法和CC2431定位系统的定位流程。完成了定位系统的部署,定位结果令人满意。CC2431能够满足低功耗、抗干扰、准确快速定位的要求,为室内定位提供具有竞争力的解决方案。