基于CC2530的场馆人员无线定位系统研究与实现
扫描二维码
随时随地手机看文章
引言
科技馆、博物馆,展览馆等场馆对观众的管理和疏导,过去主要靠人工监控和利用摄像头辅助监控了解各个区域客流情况,进行人工干预,但对观众的数量、分布情况和管理人员的位置等信息无法实时获取,给场馆管理以及其各项活动的开展带来不便。人员无线定位管理系统可通过对移动目标进行信息采集处理,实现对目标的自动定位识别和数据的统计分析。当前技术最成熟和应用比较广泛的是美国的GPS、俄罗斯的Glonass和中国的Compass北斗星三种利用卫星定位的技术,卫星定位在空间立体定位、动态物体速度测量等方面有很好的性能,但是经济投入大,成本费用高,对很多地下环境、室内环境都不实用。近年来基于WSN(无线传感器网络)定位问题的研究进展迅猛,为室内无线定位提供了许多新的解决方案和构建思路来实现WSN的定位问题,同时可以解决费用高,成本大的根本问题。本文通过应用CC2530芯片设计基于ZigBee无线传感器网络的低成本、低功耗和具有较高定位精度的场馆人员无线定位管理系统。
1无线传感器网络的定位算法
无线传感器网络的定位算法一般可分为基于距离测量的定位算法和与距离无关的定位算法两大类。与距离无关的定位算法主要有质心法,DV—Hop,APIT和,MDS-MAP等。与距离无关的定位算法不用计算出节点之间的实际距离,而是估算出两者的间距或大致地确定节点所处的区域,对节点硬件要求较低,有利于降低成本和功耗,但其定位精度不高。基于距离测量的定位算法一般可分为4种:基于信号到达时间测距定位算法TOA、基于信号到达时间差测距定位算法TDOA、基于信号到达角测距定位算法AOA和基于接收信号强度测距定位算法RSSI。TOA、TDOA方法在室内环境中由于多径效应的影响,信号是经过多条路径先后达到的,根据到达时间来测距,因此这就造成了测距的不精确性。AOA方法虽然原理很简单,实现的定位精确度也很高,但是其成本也很昂贵,需要阵列天线的支持,这就局限了其应用。基于接收信号强度定位算法RSSI简单高效,廉价实用,而且RSSI算法在对抗多径效应方面比TOA、TDOA方法都要好,并且不需要额外的硬件支持,RSSI值直接在无线射频收发芯片中就有存储器存储该值,从而可以计算出节点之间的距离,所以基于RSSI的定位算法是WSN节点定位较常采用的方法。
2传统的RSSI定位算法及其缺陷
传统的RSSI接收信号强度的定位方法,是在已知发射节点的发射信号强度,根据接收节点收到的信号强度,计算出信号的传播损耗,再利用理论和经验模型将传输损耗转化为距离值,最后根据距离计算节点的位置.接收信号强度(RSSI)理论值可由式(1)表示:
其中信号的衰减与距离成对数衰减关系。式中:代表信号传播常量,表示信号能量随着距离的增加而衰减的速率:d代表距发射器间的距离;代表距离lm时的接收信号强度。参数n和A由系统所处的环境决定。计算未知节点坐标时,首先在能够接收到回应的信号中选择几个信号强度最大的参考节点信号,利用前面的信号衰减模型计算出未知节点与系统中几个参考节点之间的估计距离,再用三边测距法计算出未知节点的坐标。
传统的RSSI定位算法是利用无线信号传输的理论或经验模型来将传输损耗转化为距离,其中依据经验选定的参数一
旦选定,将不再更改。但在实际应用中,当外界环境发生变化时,信号的衰减与距离之间的关系因子是发生变化的,此时依据经验模型将使得测距误差增大。此外在具体应用中,受到墙壁、地面、人体等一些障碍物影响,电磁波会存在反射、衍射等,导致单次测得的RSSI值误差可能会很大,进而导致测距误差增大。三边测距法的缺陷是:由于受到环境因素的影响和各节点硬件参数和功耗之间的差异,所测出的距离不可能是理想值,导致三边测距法中的三个圆周难以相交于一点,而是相交于一个小区域,因此利用此方法计算出来的(X,Y)坐标值存在一定的误差。
3RSSI定位算法的改进和优化
由于环境、信号传播等因素对RSSI定位方法的精度影响比较大,造成定位误差的因素主要有:信号传输距离、障碍物的阻隔、多径效应和环境的动态变化等,需要在在传统的RSSI定位算法基础上进行改进和参数的优化。改进的算法通过模型自适应阶段对信号衰减模型的参数进行校准,引入高斯滤波处理对RSSI值进行修正,在极大似然估算法引入加权矩阵来计算未知节点的坐标位置。
3.1模型自适应阶段
选取合适的信号衰减模型可以使测量结果有较高的准确度,在实际应用当中为了使不同节点在不同的环境中的模型参数都能接近理想值,要求信号衰减模型需要根据环境因素的变化而进行实时的调整。模型自适应阶段是在所有节点顺利加入网络以后,未知节点广播信号之前,已知距离的参考节点之间通过信号的传输进行测量,对信号衰减模型的各项参数进行校准吐在选取的信号衰减模型式(1)中,参数A为距离lm时的接收信号强度,一般不会有很大的变化,通常只在安装时对参考节点各个方向的A值进行测量。测量时以参考节点为圆心,在半径1m的圆周上平均分布多个参考节点,然后测量圆周上所有参考节点的RSSI值,然后根据式(2)求出平均值。
参数n为信号传播常量,是信号能量随着距离的增加而衰减的速率,受环境的影响变化比较大,是主要需要进行修正的参数。在每个参考节点的周围分布有N个参考节点,参考节点的位置坐标为已知量,与周围参考节点测距后,得到和周围参考节点之间的N个距离值,由式(1)就能得到N个信号传播常量n,为了减小误差,一般取N个节点测量得到的n值的平均值如式(3)所示:
由于环境、信号传播等因素对RSSI值的影响比较大,在不同的时间内即使相同的距离也会产生一定的波动,因此在计算参数n之前,首先收集不同时间内的RSSI值,然后取其平均值参与计算,如式(4)所示:
3.2高斯滤波处理
在实际中,某一时间段内同一个节点可以收到多个RSSI值。信号强度值在实际环境中存在很大的波动性,因而在利用RSSI值计算距离之前,为避免RSSI值的不稳定性,使RSSI值能精确体现无线信号的传输距离,可以通过滤波处理使RSSI的值平滑。大量测试表明接收节点在某个特定位置上收到的RSSI值其误差大小具有随机性,服从或近似服从正态分布,符合引入高斯模型进行处理的原则,可应用高斯滤波处理对测量得到的RSSI值进行修正,在高概率发生区选择概率大于0.6(0.6的取值是根据工程中的经验值)的范围[8]„经过高斯滤波后,RSSI的取值范围为[0.15中,3.09巾]。其中o和卩见式(5)、(6)所示:
把该范围内的RSSI值全部取出,再求几何平均值,即可得到最终的RSSI值。高斯模型解决了RSSI在实际测试中易受干扰、稳定性差等问题,提高了定位精度。
3.3加权极大似然估算法
由于三边测距法存在缺陷,改进算法采用极大似然估算法计算未知节点的坐标位置。极大似然估算法基本思想是通过未知节点和多个坐标已知的参考节点的距离关系来建立方程组,并通过最小二乘法来解方程从而得到未知节点的位置坐标叫已知n个参考节点的坐标分别为(X1,Y1)(X2,Y2)...(Xn,Yn),它们到未知节点(X,Y)的距离分别为弗d”...dn,则有式(7):
该方程为非线性方程组,用方程组中的前n-1个方程减去第n个方程后,可得到线性化的方程式(8):
用最小二乘法求解方程(8)得:
极大似然估算法假设所有参考节点是一致的,但由于受到环境因素影响、节点硬件参数和功耗之间的差异,所有参考节点的信号质量不可能都相同,这样计算出来的结果就会存在较大的误差。这时可以利用距离近的节点信号强度可靠性高,而距离远的节点信号强度可靠性低这个特点,在极大似然估算法上引入加权矩阵叫节点的权值与距离成反比,距离越近的节点权值越高,选择可靠性高的节点来减少误差。假设接收到的参考节点最大距离为Dmax,而最小距离为Dml„,中间值Dmid=(Dmax+Dm„,)/2,则节点i的权值W=DmiJD、,加上加权矩阵后,采用极大似然估算法计算未知节点的坐标可以转换为式(10):
其中W表示加权矩阵。某些节点由于受到障碍物的影响使得测量得到的距离比实际距离远,节点获得的相应权值也会减少,因此采用加权计算后在一定程度上还可以减小障碍物的影响。4场馆人员无线定位系统的设计
4.1京更件设计方案
定位系统主要由三部分构成,分别是协调器、参考节点和定位节点(未知节点)见图1所示:
图1系统组成图
图1中,协调器节点的任务是建立网络,配置其他申请入网的节点,响应和转发上位机的指令,向上位机传达其收到的其他节点的数据;
而参考节点的任务是辅助定位节点实现定位,即在获得定位节点的定位请求数据包中的RSSI后,打包自身节点ID和位置距离信息后原路传回至定位节点;
定位节点的任务是发送定位请求信号并获得参考节点的位置距离信息,该节点在接收足够参考节点信息后将其发送给协调器节点,传回上位机监测软件计算位置实现定位。
根据对比和测试,从成本、集成度等方面出发,选择使用CC2530芯片作为系统中的参考节点、未知节点和协调器节点的核心芯片。CC2530是德州仪器推出的完整用于2.4GHzIEEE802.15.4/RF4CE/ZlgBee的第二代片上系统解决方案,它结合了高性能的2.4GHzDSSS(直接序列扩频)射频收发器和一个高性能低功耗的8051微控制器,用于搭建功能健全价格低廉的网络节点,CC2530支持最新的ZigBee协议一一ZigBee2007/PR0。定位系统中三种节点的硬件设计方案见图2所示,它们中的协调器节点、参考节点和定位节点的硬件设计是相同的,只是软件编程时有所区别。
4.2系统的软件设计
本定位系统采用IAREmbeddedWorkbench软件进行定位程序的开发,IAR是一款完整、高度精确且很容易使用的专业嵌入式应用开发工具,通过运用IAR开发环境,在
ZigBee协议栈的基础上实现网络的搭建和通信,并根据三种节点需要实现的不同功能,对协调器节点、参考节点和定位节点的软件进行设计。系统主要流程如图3所示。
5系统测试
整个测试是在展厅内12mX12m的矩形区域内展开
的,6个参考节点的坐标分别固定为(0.00,0.00)、(12.00,0.00)、(0.00,5.00)、(12.00,5.00)、(0.00,12.00)、(12.00,12.00);未知节点可以在参考节点包围的区域内任意移动,参考节点距离地面高度均为200cm,分别对采用本改进算法的系统和采用CC2431定位引擎的系统进行了对比测试。测试结果见图4和表1。
改进的算法对一些周围障碍物较多,或处在复杂环境中的节点精度得到改善;个别周围障碍物较少的节点,或处在比较简单环境中的节点误差有增大的现象。另外,测试过程中发现,测试范围内人员移动也会对测量结果有一定的影响,人员的移动导致无线信号在传输过程中的反射、绕射情况变得更为复杂,从而影响定位结果,移动人员越多,对定位精度的影响就越大,尤其对传统的RSSI算法的系统影响较大。从测试结果可以看出,改进算法的稳定性和精度比采用CC2431定位引擎有了一定的提高。
6结语
本文通过构建基于CC2530的场馆人员无线定位管理系统,对无线传感器网络的定位技术进行了研究,分析了传统的RSSI定位算法和缺陷以及各种定位误差的影响因素,在传统的RSSI定位算法基础上进行改进和参数的优化。测试结果表明,采用了改进算法的系统定位精度和稳定性比采用CC2431的定位引擎有了比较明显的提高,可以满足室内人员的定位要求,具有一定的应用价值。
20211221_61c1a67b581af__基于CC2530的场馆人员无线定位系统研究与实现