论文部分内容阅读
随着物联网技术的发展和无线技术的更新迭代,以GPS为主流的室外定位已不能满足人们的需求,越来越多的人开始关注室内定位技术。基于蓝牙RSSI(Received Signal Strength Indication)的定位技术由于实现成本低,成为室内定位方向的研究热点之一。但是它容易受周围环境的影响而出现较大波动,导致精度较低,性能不稳定。因此为了使基于RSSI的定位结果更加稳定,减少测量误差,引入相应的滤波算法是非常有必要的。本文选择粒子滤波对RSSI进行处理,并以智能手机作为定位终端,同时考虑到手机资源有限,而粒子滤波粒子数目过多会导致计算复杂。所以本文研究如何提升面向RSSI室内定位粒子滤波算法结果的速度和精度。本文对基于KLD(Kullback-Leibler Distance)的自适应粒子滤波的RSSI室内定位算法进行研究和改进。传统的基于KLD粒子滤波的RSSI室内定位算法如果约束误差选取不当,会使粒子数不能正确的根据实际环境动态调整,导致系统的平均定位误差变大。针对这一问题,本文建立带有粒子数目信息的指纹库。在采集指纹的过程中,对每一个采集点使用枚举法在一定范围内按固定步长改变约束误差,对比分析不同约束误差情况下的定位均方根误差和使用固定粒子数的定位均方根误差,选取定位均方根误差最小的约束误差计算该点的粒子数,将该粒子数保存到指纹库中。另外,考虑到离线指纹采集过程中不同采集点不同距离采集的RSSI波动情况不同的特点,对传统WKNN指纹定位算法引入均值,标准差和方向信息进行权值改进得到观测值,降低观测噪声,提高定位精度。在实际测试中,未知节点首先通过改进的指纹算法获取初始位置,利用当前地点下的最优粒子数目进行粒子滤波,得到定位坐标。经过实际测试的结果表明,该定位系统可以在智能手机端实现平均定位点误差在1.61米以内,平均粒子数目为361.85,能够实现在蓝牙扫描频率为3Hz的情况下,平均单步定位时间间隔在466ms以内,滤波算法性能能够满足本文在设计时提出的要求。本文的面向RSSI室内定位的改进自适应粒子滤波算法最终达到了设计时提出的性能指标,对于室内定位算法在实际中的应用有一定的工程实用价值。