APP下载

基于CC2431的室内定位系统

2009-05-12

现代电子技术 2009年2期
关键词:室内定位

吕 源 李 军

摘 要:在室内环境下对移动目标定位可使用的技术主要有超声波定位技术、射频识别技术以及基于接收信号强度(RSSI)的定位技术。经过比较,基于接收信号强度(RSSI)的定位技术更适合于复杂的室内环境。介绍基于RSSI定位机制的CC2431片内集成定位引擎在室内定位系统中的应用,并在室内环境下进行了实测,其定位效果良好。

关键词:CC2431;信号接收强度;定位引擎;室内定位

中图分类号:TP274;TP368.1 文献标识码:B

文章编号:1004 373X(2009)02 095 03

Indoor Location System Based on CC2431

LV Yuan,LI Jun

(College of Electronic Information & Control Engineering,Beijing University of Technology,Beijing,100022,China)

Abstract:The technology of locating mobile target in indoor environment includes ultrasonic localization,RFID and received-signal-strength-based localization.By comparison,the received-signal-strength-based localization is more suited for the complex indoor environment.It introduces the location engine integrated in CC2431 and the application of location engine in indoor localization.Finally,the localization system is used in real indoor environment and gains satisfied effectiveness.

Keywords:CC2431;received-signal-strength;location engine;indoor localization

随着无线通信和无线传感器网络技术的发展,基于位置的服务(LBS)显得越来越重要。在室外环境下,全球定位系统(GPS)已经比较成功地解决了定位问题,它通过GPS接收机测量来自5~24个卫星信号的到达时间差(TDOA)进行位置估算,可以提供接近全球的定位覆盖范围。而在室内环境下,GPS系统由于卫星信号被阻隔而无法完成定位。与此同时,室内定位服务的需求日益增加,室内定位技术的研究成为各大高校、研究机构和企业的一个

研究热点。

1 室内定位技术

目前已有的室内定位技术主要有:超声波定位技术、射频识别技术(RFID)以及基于接收信号强度(RSSI)的定位技术。

超声波定位技术[1]大都采用反射式测距法,即发射超声波并接收由被测物产生的回波,根据回波与发射波的时间差计算出待测距离。超声波定位系统由若干应答器和1个主测距器组成。主测距器放置在被测物体上,在上位机指令信号的作用下向位置固定的应答器发射同频率的无线信号,应答器在收到无线信号后向主测距器发射超声波信号,从而得到主测距器与各个应答器之间的距离,进而确定被测物体的坐标。Cricket Location Support System和Active Bat Location System是目前成功使用的两个系统。但是这类系统需要大量的底层硬件设施投资,成本太高,无法大面积推广。

射频识别(RFID)系统主要由电子标签、读卡器以及在标签与读卡器之间传递射频信号的微型天线3部分组成。当标签置于读卡器发出固定频率的电磁场附近获得了能量并产生上电复位后,原本处于“休眠状态”的标签被激活,并将含有自身种类识别码标志、制造商标志等信息代码调制到载波上经卡内天线发射出去,供读卡器处理识别。该定位技术最典型的例子是LANDMARC系统[2],该系统用活性参考标签Tag替代离线数据采集,其动态参考信息能够实时捕捉环境变化,提高定位精度和可信度。活性参考标签Tag的应用免去了每个测试点数百次的人工数据采集,且能更好地适应室内环境的波动,提高定位精度。该项技术的定位精度在很大程度上与设备的数量和分布有关,并要求有与之相配套的设备和基础设施。

基于接收信号强度(RSSI)[3]定位技术,并根据接收节点收到的信号强度,计算出信号的传播损耗;利用理论与经验模型,将传输损耗转化为距离,再计算出节点的位置。目前很多控制芯片都具有测量RSSI的功能,无需添加额外的硬件设备来进行精确的时间同步和角度测量,降低了成本,系统的可扩展性良好。因此该项技术已成为室内定位技术的研究热点。

2 CC2431定位系统

CC2431[4]是TI公司推出的针对无线传感器网络ZigBeeTM / IEEE 802.15.4应用的片上系统(SoC)解决方案。其内部集成了CC2420射频收发器、工业标准增强型8051MCU内核、128 KB Flash ROM和8 KB RAM。由于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) 待机模式下小于0.6 μA电流损耗,外部中断能唤醒系统;

(13) 低功耗模式与主动模式之间的快速切换保证了低占空比系统的超低平均功耗;

(14) 硬件支持CSMA/CA功能;

(15) 较宽的电压范围(2.0~3.6 V);

(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所示。

图1 CC2431定位引擎操作流程

定位引擎需要3~16个参考节点的坐标[x0,y0,x1,y1,…,x15,y15]作为输入。参考节点的坐标表示每个参考节点的位置,是在[0,63.75]范围内的无符号数值。最高分辨率为0.25 m。所有参考坐标被装载入RF寄存器REFCOORD。在写入寄存器REFCOORD之前,寄存器LOCENG.REFLD位必须置1以指示有1组参考坐标要写入。16个坐标对都必须写入,当定位引擎使用的参考节点数少于16个时,为了标记某些参考坐标未使用,将0载入作为未使用的参考坐标值,这些参考节点的RSSI值为0.0。当所有参考坐标写入后,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]。假设定位引擎搜索被限制在一个矩形区域,坐标为(x璵in,y璵in)和(x璵ax,y璵ax),输入定位引擎的4个搜索边界参数为x璵in,x璬elta,y璵in,y璬elta,其中x璬elta=x璵ax-x璵iny璬elta=y璵ax-y璵in,如果选择在整个可能的区域内搜索,则这4个参数值为:0.0,63.75,0.0,63.75。如果某个参数遗漏,则定位引擎无法正确地估算位置。RSSI值是对应于一组参考坐标的RSSI测量值,其范围在[-40 dBm,-95 dBm],精度0.5 dBm,写入时符号被去掉。如果使用的参考节点个数少于16个,则必须写入0.0作为接收信号强的度值。所有测量得到的参数都装载入RF寄存器MEASPARM。在写入MEASPARM之前,寄存器位LOCENG.PARLD必须置1,以指示有1组测量得到的参数要写入。参数装载过程开始后,所有22个参数都必须被写入。测量得到的参数写入顺序为[A,n,x璵in,x璬elta,y璵in,y璬elta,RSSI0,RSSI1,…,RSSI15]。当参考坐标和测量得到的参数写入后,通过将寄存器位LOCENG.RUN置1启动定位估计计算。当LOCENG.DONE置1时,估计得到的坐标可以从寄存器LOCX和LOCY中读出。LOCENG.RUN置1到读出估计坐标的时间间隔则根据搜索边界参数的不同在50 μs~13 ms之间变化。定位引擎不产生任何中断请求。由LOCX寄存器给出的x坐标估计值包含一个偏移量,该偏移量必须被去除,以得到真实的x坐标。去除的方法如下:x=(x璍OCX-x璵in+1)%(x璬elta+1)+x璵in。可直接使用由LOCY寄存器给出的y坐标估计值。

2.2 CC2431定位系统的操作流程

CC2431定位系统[4]由网络监控管理设备、参考节点与盲节点组成。其中,网络监控管理设备使用串口发送和接收定位协议消息,它依附于主系统并且被用作汇聚节点接收盲节点响应、配置参考节点以及设置盲节点参数。当网络监控管理设备应用程序接收到盲节点的响应信息时,通过串口把数据传给主系统。盲节点包含CC2431定位引擎,定位引擎通过无线测距范围内应答的参考节点坐标以及发送至这些参考节点信息的RSSI值完成定位运算。盲节点首先发出一定时序的RSSI Blast信息广播,当等待盲节点已配置完成规定的时间间隔后,盲节点向参考节点发出XY-RSSI请求广播,每个接收到RSSI Blast信息广播的参考节点将进行接收到信息的RSSI值计算,当接收到XY-RSSI请求时,参考节点将向盲节点发回其位置信息以及RSSI值。整个定位系统的定位时序图如图2所示。

3 实验测试及验证结果

这里以TI公司的CC2431节点作为实验平台,选择8.0 m×8.0 m的实验室作为实地测试环境进行测试,在实验室的4个墙角及中间位置布置了5个CC2431作为参考节点,其位置已知且固定不动。盲节点对均匀分布在测试环境内的49个点进行定位测试,定位结果如图3所示:

图2 定位系统定位时序图

图3 定位测试结果

根据获取的待定位节点坐标实测数据,通过Matlab进行数据处理,以得到系统的定位误差,定位误差的分布如图4所示:

图4 定位误差累积分布函数曲线

由图4曲线可以看出,在室内环境下,采用CC2431定位系统能够分别实现50%和90%的定位,结果误差前者在1.0 m以内,后者在2.5 m以内,完全能够达到室内环境下定位精度的要求。

4 结 语

首先比较目前已有的室内定位技术的优缺点,重点介绍CC2431定位引擎的使用方法和CC2431定位系统的定位流程。完成了定位系统的部署,定位结果令人满意。CC2431能够满足低功耗、抗干扰、准确快速定位的要求,为室内定位提供具有竞争力的解决方案。

参考文献

[1]马玉秋,龙承志,沈树群.长距离移动定位技术与室内定位技术[J].数据通信,2004(5):39-41.

[2]孙瑜,范平志.射频识别技术及其在室内定位中的应用[J].计算机应用,2005,25(5):1 025-1 208.

[3]张明华,张申生,曹健.无线局域网中基于信号强度的室内定位[J].计算机科学,2007,34(6):68-71,75.

[4]CC2431 Location Engine Data Sheet.

[5]CC2431ZDK Development Kit User Manual.Rev.1.5.

[6] 艾春丽,张凤登,刘荣鹏.基于CC2500的无线楼宇跟踪系统软硬件设计.现代电子技术,2007,30(19):138-140.

[7]徐澄,安博文.无线局域网中的载波侦听.现代电子技术,2005,28(8):18-19.

作者简介 吕 源 山东嘉祥人,北京工业大学硕士研究生。主要研究方向为无线传感器网络、室内定位技术。

李 军 山东烟台人,北京工业大学硕士研究生。主要研究方向为无线传感器网络、室内定位技术。

猜你喜欢

室内定位
基于超宽带的室内定位算法研究
室内定位技术研究
面向老年人的室内定位系统
无线传感器网络室内测距与定位算法应用研究
基于WiFi的室内定位中AP选择方法研究
一种基于位置指纹的WSN室内安全定位算法
基于RFID的室内定位技术研究
基于NFC的博物馆智能导航系统设计