基于无线ZigBee技术的区域精确定位

2016-12-08 08:27杨柳松潘洪雨卢晓琳韦玉琼张劲松
中国新技术新产品 2016年20期
关键词:引擎数据包无线

杨柳松潘洪雨卢晓琳韦玉琼张劲松

(东北林业大学,黑龙江 哈尔滨 150040)

基于无线ZigBee技术的区域精确定位

杨柳松潘洪雨卢晓琳韦玉琼张劲松

(东北林业大学,黑龙江 哈尔滨 150040)

摘要:人们对于在复杂的室内环境中所关心的目标进行监控和定位的需求与日俱增,如工厂、仓储、地下停车场等,常需要确定相关人员及重要设施在室内的位置信息。所以制定出一套定位精度高、成本低廉、实现简单且鲁棒性好的无线传感器网络室内定位系统是本文研究的重点。本文以CC2431无线定位引擎为定位核心,搭建了基于ZigBee技术的区域定位系统。该定位系统满足低成本、低功耗的要求,可以实现精确的区域定位。

ZigBee技术;精确定位;无线传感器网络

当前GPS是比较成熟的室外定位技术。然而在区域环境下,GPS信号遇到障碍物时信号大大衰减,定位精度急剧下降,且其功耗大。因此制定出一套成本低廉、定位精度高、实现简单且稳健性好、安全可靠、算法复杂度低的无线传感器网络区域定位系统是本文的研究重点。ZigBee技术是一种低功耗、低成本、低数据传输率、短距离的无线通信技术,将ZigBee技术应用到无线传感器网络中,能够实现精确地区域定位,若目标脱离该区域则报警提示。

1.系统方案的设计

本系统采用的是ZigBee室内定位方法。ZigBee区域定位系统是一个可视化的无线传感器网络定位系统,此定位系统包括ZigBee技术的无线传感器网络与定位监控部分。对于定位监控部分,终端PC机是其的重要组成部分。首先,此PC机上应该装有能够查看实时定位的监控软件,之后,此终端PC机需要使用USB转串口线与该传感器网络的网关部分进行连接,相关用户能够使用这个软件对ZigBee网络进行配置与管理,对于网络节点的数据,也可通过此软件来得到。如果用户需要相关网络节点的实时位置坐标,可以通过此监控软件形象化的交互界面,方便的得到其坐标。ZigBee网关节点,参考节点和盲节点等3种类型的节点组成了ZigBee无线传感器网络。其中,参考节点是坐标确定的静态节点,本网络中选择以CC2430为主芯片的模块,盲节点是能够随意挪动的一种节点,是未定位的节点,本网络中使用的是CC2431模块。盲节点通过与参考节点之间通信的方式来接收各个参考节点的数据包,盲节点从参考节点的数据包中即可得到各个参考节点的坐标。CC2431模块自带的定位引擎部分通过计算得到的盲节点的坐标值,参考节点与盲节点的相关信息传递到Zigbee网关节点,再由网关经USB转串口线传送到上位机,最后由定位监控软件给用户展现出来,若目标脱离该区域则报警提示。这便是本定位系统的总体设计。图1所示为本系统总体的系统结构图。

图中1、2、3、4为CC2430芯片;5为CC2431芯片;6、10、11、12、13为静态节点(参考点);14为盲节点;7为网关;8为终端PC机;9为手机。

图1 系统结构图

2.硬件系统

2.1 网络中节点的设计

ZigBee无线定位网络有3种类型的节点,分别是ZigBee网关节点(I,0cation Dongle)、参考节点(Reference Nodes)和盲节点(Blind Nodes)。

2.2 CC2430/CC2431芯片

CC2430模块与CC2431模块在外观上是没有任何差异的,两种模块都可以用作路由器、协调器或终端节点。在ZigBee无线网络系统中,CC2431模块具有自带的定位引擎部分,是具有定位功能的。因此CC2431模块不仅可以作为网关和参考节点,还可以作为盲节点使用。而CC2430模块没有定位引擎部分,所以CC2430模块仅能够用来作为网关节点和参考节点使用。

2.2.1 CC2431定位原理

CC2431模块的定位引擎是基于RSSI技术。在Zigbee无线定位系统中,参考节点是已知自身坐标值的静态节点,此类节点已知自己的坐标值,且可将其坐标经由发送的数据包告知周围的节点。而盲节点的坐标不是已知的,它会从参考节点处接收相关的数据包,从而获得周围参考节点的位置信息及相应的RSSI值。之后将这些信息均送入定位引擎,便可得到通过定位引擎计算的盲节点的坐标。这个过程中,从参考节点发出,到盲节点的数据包至少应该包括参考节点的坐标(水平位置参数X和竖直位置参数Y),而RSSI值可由接收节点计算获得。

3.软件系统

ZigBee无线传感器网络的软件部分由上位机的软件部分和下位机的软件部分组成。本定位系统在研制开发过程中,应用的定位监视软件是Z. Location Engine,该软件用来给PC机调试。Zigbee无线传感器网络中的节点有多种类型,各个节点的功能也不尽相同。所以下位机软件的编写要大大地难于上位机软件的编写,它一般使用嵌入式软件系统来实现。本系统采用了嵌入式的集成开发环境IAR EW8051对下位机的软件部分进行开发编写。

3.1 系统各节点设计

本项目在前期研发验证阶段,使用6个参考节点,1个盲节点。

首先,定位操作应该使用“最优”参考节点,现使用具有的6个参考节点。五边形区域a,b,c,d,e,f处各放置一个参考节点,五边形每个角为参考节点,盲节点在五边形内部。首先,找到周围一个具有最高RSSI值的节点,同时计算一个补偿值,让其“移动”到五边形范围的中心。因为这个节点的RSSI值是已经知晓的,便可很容易得到与这个节点的距离。然后,找到周围除了“最强”节点之外的各个节点。用刚才所得到的补偿值对各个节点进行修正。之后,将所有节点的信息传送到定位引擎,并得到最后的坐标信息。最后,在计算过程中加入补偿值。完成这些计算之后,盲节点在全局网格中的位置就确定了。

表1 定位实验测量结果图

结语

本系统使用CC2431模块和CC2430模块,设计并搭建了ZigBee无线传感器网络室内定位系统。第一步,确定参考节点的位置坐标,对参考节点进行测试分析,初步验证系统的正确性。第二步,在参考节点围成的定位区域中寻找到盲节点,表示无线传感器网络组网成功。通过以上的定位实验,经测量得到带有定位引擎的CC2431模块可以实现1.5m左右的定位精度。本系统能够满足低功耗、低成本的要求,仅用两节电池便可使CC2430/31模块工作半年左右。由于时间和笔者技术水平等主客观因素的限制,本课题在取得阶段性成果的同时,依然有些问题需要深入研究,例如:对硬件平台进行改进,在节点中增加功率放大器,提高无线节点通信距离等。

[1]贺茂平.基于ZigBee网络室内定位系统设计与实现[D].武汉理工大学,2012.

[2] Instruments T. CC2431 system-on-chip for 2.4 GHz Zig Bee/IEEE 802. 15. 4 with location engine[EB/OL]. 2007. http://focus. ti. com/docs/prod/folders/print/cc2431. html.

[3]晁楠.基于ZigBee无线网络的小车控制[D].西安科技大学,2009.

[4]刘艳,吴蒙.基于ZigBee技术的室内定位系统的研究[J].计算机技术与发展,2014(4):181-185.

[5]饶志训.基于ZigBee技术的室内定位系统研究[D].湖北工业大学,2014.

TN925

A

猜你喜欢
引擎数据包无线
基于ARM的无线WiFi插排的设计
SmartSniff
ADF7021-N在无线寻呼发射系统中的应用
无形的引擎
基于Cocos2d引擎的PuzzleGame开发
视觉注意的数据包优先级排序策略研究
移动IPV6在改进数据包发送路径模型下性能分析
One Engine Left只剩下一个引擎