APP下载

线性化误差对于UWB系统定位精度影响分析

2021-05-13高成发

测绘工程 2021年3期
关键词:线性化定位精度偏差

刘 琦,高成发,尚 睿

(东南大学 交通学院测绘工程系,江苏 南京 211189)

室内定位技术多种多样,主要有红外线、超声波、蓝牙、ZigBee、WIFI等。与这些技术相比,UWB技术具有穿透力强、功耗低、抗多径效果好、安全性高、系统复杂度低的特点[1],理论上超宽带定位技术的定位精度可以达到厘米级。

目前,常用的UWB室内无线定位测量方法有很多,包括:基于到达角度(Angle of Arrival,AOA)的定位方法,利用两个或以上接入点提供的AOA测量值,解算待定点位置; 基于接收信号强度(Received Signal Strength,RSS)的定位方法,测量来自多个发射器接收的信号强度,以便使用信号强度作为基站和标签之间距离的估算参数;基于到达时间(Time of Arrival,TOA)的定位方法, 基站通过记录发出测距信号到收到标签确认信号所花费的时间,再乘以信号传播速度,便得到基站与标签之间的距离;基于到达时间差(Time Difference of Arrival ,TDOA)的定位方法等[2]。随着室内环境的扩大化、复杂化以及室内活动时间的增加,大众对于位置服务精度的需求越来越高,用户不仅关心二维位置,更希望掌握准确的三维坐标。

UWB定位技术与卫星定位技术原理相似,都是通过时间同步、单程测距解析实现定位。在UWB和GNSS进行解算时,方程是非线性的,传统方法通过EKF算法,对非线性函数的Taylor展开式进行一阶偏导,忽略其余高阶项,从而将非线性问题转化为线性。文献[3]在紧耦合组合导航系统中比较EKF和UKF算法精度,发现两种算法精度均优于单独使用GPS得到的导航解,UKF略优于EKF算法。文献[4]实验结果表明,UKF比EKF更适合于在INS/GPS系统中使用。但因为UWB定位过程中,基站到达标签的距离较近,所以使用EKF方法产生的线性化误差较大。近年来有人提出利用UKF算法,解决UWB定位方程强非线性的问题[5]。这种方法直接利用非线性模型,避免了EKF中的非线性函数线性化近似过程中复杂的Jacobian矩阵求解。文献[6]阐述一种自适应UKF算法,实验证明,该算法能有效提高定位精度,是一种实时高精度的室内定位算法。文献[7]提出了基于TOA技术的EKF算法,用来降低测量噪声对定位精度的影响。张桀等人在文献[8]改进了TDOA算法,并联合卡尔曼滤波,进一步消除传输过程中误差干扰,达到了20 cm的定位精度。目前,EKF和UKF是两种主要的UWB定位算法,但关于线性化误差对于UWB定位系统的精度影响的研究还很少。

本文阐述了UWB定位的几种常用方法,并分析线性化误差对于UWB定位系统的影响。在此基础上,提出UKF和TDOA算法结合的实验模型。首先在10 m初始偏差下,利用实验数据,比较UKF和EKF两种算法的定位效果;其次考虑到标签初始化坐标偏差的改变会对定位结果产生影响,为探究其影响,在不同的初始偏差设定下,采用EKF和UKF算法进行解算,并对结果进行分析,进一步比较两种算法的定位精度和稳定性。

1 定位方法

1.1 UWB定位方法

对于UWB定位而言,AOA方法需要传感器间的合作,因而会受到误差累积的影响,不如其他算法实用;障碍物导致RSS方法存在多径效应,影响定位精度。因此目前最常用的是TOA和TDOA定位方法。

TOA定位方法属于双向测距技术,需要两次信号传播,在这个过程中会有多径效应、信号时延等误差累积,导致定位结果误差较大;此外,这种方法要求基站和接收机之间实现精确时间同步,这一点难以实现,且成本较高。

TDOA方法避免UWB标签和基站间的往复通讯,需要UWB定位标签发射一次信号,工作时间大大缩短,降低功耗,并且TDOA仅需要保持基站间的时钟同步的要求易于实现,因此本文选用TDOA方法,其具体过程如下:

已知测得第n个基站接收到标签所发出的UWB信号的时刻分别为ti(i=1,2,3,4,…,n),标签到第n个基站的距离为di(i=1,2,3,4,…,n),在所有基站保持时间同步的前提下,即Δti-Δtj≠0(i≠j&i,j=0,1,2,3,…,n),同时利用多个测量值即可求得标签坐标。以4组基站为例,在基站间完全同步的情况下,利用式(1)求解。

(1)

1.2 UWB定位系统线性化误差分析

EKF对非线性函数的Taylor展开式进行一阶线性化截断,忽略其余高阶项,从而将非线性问题转化为线性,可以将卡尔曼线性滤波算法应用于非线性系统中。

EKF算法是对非线性函数的Taylor展开式进行一阶线性化截断并忽略其余高阶项,从而实现非线性问题的线性化,以便于将卡尔曼线性滤波算法用于非线性系统中。UWB定位距离观测方程为:

ρn=dn+δtu-δtn+ε.

(2)

式中:ρn为标签到基站n(n=1,2,3,4)的观测距离,dn为标签到基站n(n=1,2,3,4)的真实距离,δtu为标签钟差,δtn(n=1,2,3,4)为基站钟差,ε为系统噪声误差。

静态状态下进行的本文实验,EKF算法只需要对观测方程进行线性化。用g(xu,yu,zu)表示UWB系统距离观测方程,其Taylor展开式为:

(3)

用X表示状态向量,X0表示其近似估计值,δX=X-X0。A表示g(x)在x0处的一阶偏导,εg表示二阶残余量,

g(X)=g(X0)+AδX+εg,

(4)

(5)

式中:G(X)为海森矩阵(Hessian Matrix),由二阶偏导数构成。假设u代表UWB标签,i代表UWB基站,则基站与标签间的距离表示为:

(6)

Hessian Matrix为:

(7)

在EKF算法中,二阶残余量εg是直接舍去的,就前面提到的线性化误差,曾有学者对其大小给出了边界估计:

(8)

(9)

式中:δ2xu,δ2yu,δ2zu分别为标签坐标的方差,对于卫星导航定位,卫星距离用户约2万km,假设用户坐标误差为100 m,其观测方程线性化误差也不到1 mm,对于绝大多数定位是可以接受的。但是对于UWB定位系统,标签和基站的距离较近,假设两者间距离为20 m,标签坐标误差为5 m,其线性化最大误差可以达到米级,这对于UWB定位结果会产生不可忽略的影响,因此对于UWB定位系统,应采用不产生线性化误差的UKF算法。

1.3 UKF算法原理

无损卡尔曼滤波(Unscented Kalman Filter,UKF),是无损变换(UT)和标准卡尔曼滤波体系的结合,通过无损变换使非线性系统方程适用于线性假设下的标准卡尔曼滤波体系。

对于不同时刻k,由随机变量x和观测变量z组成非线性系统,即:

(10)

式中:xk和xk-1分别是k和k-1时刻的状态向量,zk为观测向量,ωk为状态噪声向量,vk为观测噪声向量,并且二者是互不相关的零均值白噪声序列。

1)确定滤波初值:

(11)

2)计算Sigma点:

(12)

其中

(13)

式中:n为状态向量维数,a为很小的正数,用于确定x周围的Sigma点分布,取值范围10-4~1;k为第二个尺度参数,k=3-n。

3)确定权值:

(14)

4)时间更新:

为了简便起见,设M∈n×n是要恢复的矩阵.rank(M)=r,r≪n.{Mij,(i,j)∈Ω}是M中已知的矩阵元素的集合.尽管M中有n2个元素,但是M的自由度仅为2nr-2r2.当r比较小时,2nr-2r2≪n2.那么,是否有可能在已知矩阵部分元素的情形下,恢复全部的n2个元素呢?一般来讲,不是所有的矩阵都可以从部分元素准确恢复其全部元素,比如下面的矩阵:

(15)

5)测量更新:

(16)

6)滤波更新:

(17)

1.4 基于无损卡尔曼滤波的UWB定位

2 实验与分析

为测试在室内环境下UKF算法的准确性,实验地点选取东南大学四牌楼校区交通楼某实验室内,实验设备为所购买的UWB Mini3模块,设置4个基站和一个标签。在实验场地内,4个基站位置见表1。

表1 4个基站具体位置 m

2.1 10 m初始偏差下UKF和EKF定位准确性

为了比较在10 m的初始偏差下,EKF和UKF算法定位的准确性,本文在试验场地内选取4个点位布设标签,利用其观测数据进行解算,对定位结果进行比较分析,定位结果见图1—图4。

图1 第一组数据定位结果

图2 第二组数据定位结果

图3 第三组数据定位结果

图4 第四组数据定位结果

由图1—图4可以看出,在初始坐标偏差为10 m的情况下,使用EKF方法进行数据解算,在N,E方向上的结果与UKF算法的结果较为接近,但在U方向上,UKF算法的结果要明显优于EKF算法,这是由于EKF算法在线性化过程中产生的误差所导致。图中明显看出,在初始坐标偏差为10 m时,EKF算法很难达到收敛状态,而UKF算法在较短时间内便可收敛,这表明在坐标偏差较大时,UKF算法在定位精度和稳定性上是优于EKF算法的。

2.2 不同初始偏差定位精准

考虑到线性化模型对参数初值比较敏感,因此初始坐标偏差的不同,对于定位结果也会产生不同影响。本次实验,选取第三组数据,给定X0不同的偏差,ΔX分别为(0.1 m,0.1 m,0.1 m)T,(0.5 m,0.5 m,0.5 m)T,(1 m,1 m,1 m)T,(5 m,5 m,5 m)T,来比较在不同偏差情况下,EKF算法和UKF算法的定位效果和稳定性。定位结果如图5—图8所示。

图5 初始偏差0.1 m时定位结果

图6 初始偏差0.5 m时定位结果

图7 初始偏差1 m时定位结果

图8 初始偏差5 m时定位结果

从图5、图6中可以看出,当初始偏差较小时,EKF算法和UKF算法在N,E,U方向的定位精度较为接近,初始偏差较小,线性化误差并不明显,两种方法的定位效果比较接近。分析比较图3,图5—图8可以发现,随着初始偏差的增大,EKF算法在N,E方向上还能保持较好的定位精度,但在U方向上则误差逐渐增大,这是EKF线性化误差累积的结果。而UKF算法,随着初始误差的增大,相比于EKF算法,定位结果并没有出现大幅增大,N,E,U方向都可以保持较好的精度,因为UKF算法避免了线性化过程,其定位结果不受线性化误差的影响。从图3,图5—图8中可以发现,UKF算法可以很快达到收敛,并保持稳定,而EKF算法则随着初始偏差的增大,稳定性逐渐下降。在初始偏差较大时,UKF算法的稳定性和定位精度都明显优于EKF算法。

表2 不同初始偏差下定位结果 m

从表2看出,在初始偏差为0.1 m和0.5 m时,EKF和UKF算法定位结果较为接近。当初始偏差5 m和10 m时,EKF算法在U方向上的定位误差越来越大。而UKF算法,在初始偏差较大时,N,E,U方向上定位精度都能保持在10 cm左右。

当初始偏差较小时,EKF算法与UKF算法的定位效果相接近,但随着偏差的增大,EKF算法在U方向上的定位精度因线性化误差的影响开始增大,并且很难达到稳定。而UKF算法则可以保持较好的定位精度和稳定性,UKF算法优于EKF算法。

3 结论和展望

本文从理论上分析了UWB定位系统距离观测方程的线性化误差,发现对于UWB定位系统传统EKF算法产生的误差不可忽略。在此基础上,采用UKF和TDOA算法结合的实验模型,进行定位精度实验,实验结论如下:

1)对于UWB定位系统,传统EKF算法会产生米级的线性化误差,对定位结果有影响,而采用UKF算法可以避免线性化过程,达到厘米级定位精度。

2)在初始坐标偏差为10 m情况下,UKF和EKF算法平面定位精度相当,但高程方向上,EKF算法误差达到0.35 m,UKF算法误差仅有2 cm。

3)初始坐标偏差在0.5 m以内时,两种算法定位结果相当,随着初始偏差的增大,EKF算法平面精度仍可以保持较高水平,高程方向误差越来越大;而UKF算法,在初始偏差增大情况下,仍然可以保持较好的稳定性和定位精度,在初始偏差为5 m和10 m时,U方向定位精度相比于EKF算法提高达到90%以上。

4)本次实验仅在静态条件下进行测试,如何在动态条件以及复杂环境下保持定位的精度和稳定性,是后续研究内容的重点。

猜你喜欢

线性化定位精度偏差
北斗定位精度可达两三米
如何走出文章立意偏差的误区
“线性化”在多元不等式证明与最值求解中的应用
两矩形上的全偏差
GPS定位精度研究
GPS定位精度研究
组合导航的AGV定位精度的改善
基于反馈线性化的RLV气动控制一体化设计
EHA反馈线性化最优滑模面双模糊滑模控制
空间机械臂锁紧机构等效线性化分析及验证