PPP优化算法在BDS中的应用研究

作者: 贾耀清 黄竹韵 张文卓

PPP优化算法在BDS中的应用研究0

摘要:在定位问题中,精确点定位技术(Precise Point Positioning, PPP) 虽然结合了标准单点定位技术(Standard Point Positioning, SPP) 和实时动态定位技术(Real time Kinematic, RTK) 二者的优势,在一定程度上消除了对基站的依赖,但是当观测噪声增加时,仍然面临定位精度不高和收敛速度慢的问题。针对以上问题,建立一种基于北斗卫星导航系统的PPP算法的模型并改进模型的内部结构,提出一种基于小波神经网络和卡尔曼滤波相结合的算法。实验结果表明优化后的PPP算法不仅提高了定位的准确性而且还加速了收敛的速度,在列车盲区定位问题中,实验误差E(X)能够得到进一步的缩小。

关键词:北斗导航;精确点定位;小波神经网络;卡尔曼滤波;列车盲区定位

中图分类号:TP311    文献标识码:A

文章编号:1009-3044(2022)20-0099-04

1 引言

北斗卫星导航系统(BeiDou Navigation Satellite System, BDS) 是一项极为庞杂的系统工程[1-2],中国北斗导航系统的发展战略可以分为三步走,第一步是建立示范导航系统(北斗一号);第二步是实现区域导航卫星系统(北斗二号);在北斗二号稳定运行的基础上,最后一步是从区域服务扩展到全球服务(北斗三号)。2018年12月27日,北斗3号完成18颗中微卫星核心星座的部署,开始提供全球基础服务。如图1所示,这是北斗三号卫星的运动轨迹图。定位是BDS的主要功能之一,卫星导航系统定位需要解算3个位置参数和1个时钟偏差参数,所以最少需要同时观测到4颗卫星才可解算定位(精度还与其他很多因素有关) ,如图2,从可见卫星数目图中可以了解北斗系统基本的覆盖区域。近年来,各个国家正加速迈入全球化的导航时代,2021年3月,北斗三号卫星正式开通,因此研究基于北斗三号卫星的精密单点定位算法具有重要意义。全球卫星导航系统(Global Navigation Satellite System, GNSS) 可以提供给广大用户最全面的时空间信息服务,在军事和国防领域,GNSS能够精确制导和精准打击,而且在民用领域诸如民航、电力、交通、金融、通信等领域也扮演十分重要的角色[3-4]。北斗卫星是目前世界四大卫星导航系统之一,也是起步最晚的卫星导航系统,但是近年来发展迅猛,基于北斗的应用也必然会越来越多[5]。

2000年10月到2007年2月,我国发射了4颗北斗导航试验卫星。2007年4月到2019年12月,我国一共发射了53颗北斗导航卫星。如图2所示,这是北斗可见的卫星数量。2022年,卫星覆盖范围将会扩展至全球。届时,提供的服务类型将会更加丰富。如表1所示。

表2提供了卫星轨道高度和发射日期。

我国自主研发的北斗卫星导航系统结合了被动式和主动式两种定位方式。主动式卫星定位原理如下:

1) 地面中心站会向两颗北斗卫星发射请求信号;2) 卫星将这个信息进行全域广播;3) 如果用户机需要定位,它就会响应这个信息;4) 卫星将用户机的定位需求转发给地面中心站;5) 地面中心站根据它发出信号和用户机返回的信号解算出用户机到卫星再到地面中心站的距离,减去卫星到地面中心站的距离,可以得到卫星到用户机的距离;6) 根据用户到第一颗卫星的距离,可以得到第一个球面A,根据到第二颗卫星的距离可以得到第二个球面B,与地球的球面C,三者相交,地面中心站计算出用户机所在的位置,通过卫星将位置提供给用户机,完成一次定位。

被动式定位使用三颗卫星通过伪码的形式,计算出位置信息。但是,卫星使用的是原子钟,用户机上使用的是晶振,很难实现准确的时间同步,所以会使用第4颗卫星来纠正误差,所以说需要4颗以上的卫星才可以进行准确定位[6]。

目前北斗三号系统正处于稳定运行阶段,关于北斗三号的高精度定位技术的研究也正在如火如荼地进行,如何实现更高精度与更快速度的定位成为近年来的热点[7-8]。特别是针对现实生活中列车盲区定位问题,能否实现列车的盲区定位关系到乘客的生命财产安全,为了解决列车运行过程中经过特殊地形(例如隧道) 或者是有强烈干扰不能够接收到位置信息等关键数据的问题,利用改进后的PPP算法进行盲区定位,同时与传统的航位推算(DeadReckoning, DR) 定位原理相比,实验仿真证明了此算法在列车盲区定位问题的实用性,进一步说明了改进后的PPP优化算法具有潜在的应用价值与意义。

2 误差分析

2.1 与导航卫星有关的误差

有卫星的星历误差、卫星钟差、SA误差以及相对论效应。星历误差指的是计算得到的位置信息与实际的位置信息产生的差值;卫星钟差指的是卫星上使用的石英钟产生的误差;相对论效应指的是卫星和接收机所处的时间空间等信息不同而引起的误差。其计算公式的影响如下:

[Δf=Δf1+Δf2]

式中,

[Δf1=-12gRmc2(RmRs)⋅f0]

[Δf2=gRmc2(1-RmRs)⋅f0]

2.2 信号传输路径的误差

多路径延迟如图3所示,经过反射后到达接收机的信号和直接到达接收机的信号相混淆称为多路径效应。在研究过程中,一般将该效应对载波相位的影响控制在波长的50%以内。如图4所示,信号的传播依次经过了电离层和对流层,由于受到电离层和对流层中一些粒子的影响,传播的信号就会发生变化,此时就需要对电离层和对流层的模型进行修正处理。这些与信号传播所带来的误差最后都会对PPP算法造成影响。

信号传输路径的误差一般是人为不可以控制的,因为这是信号传输过程中所必然经历的过程。

2.3 与测试站有关的误差

与测试站有关的误差主要包括接收机时差和海洋负荷潮汐等。如果接收机中的钟频稳定度低,为了提高系统的稳定程度,常需要改用氢钟。这种由接收机钟差造成的PPP精度降低,会导致BDS系统定位准确度下降。海洋负荷潮汐主要包括日周期和半日周期。建立海洋负荷潮汐的模型如下:

[ΔRocean=i=1NAricos(ωi+ϕi+δri)AEWicos(ωit+ϕi+δEWi)ANSicos(ωit+ϕi+δNSi)]

式中,阶数用N表示,幅角用ϕi表示,分潮波的频率以ωi表示,世界时用t表示,目前一般认为大于第11阶就不会有影响。将海洋潮汐改正后放到地球参考系中表示如下:

[ΔR=RZ(-λ)RY(φ)ΔRocean]

与测试站有关的误差是信号传输所经历的必然结果,在人为可控的情况下如何缩小这样的误差是研究的重点。

3 模型建立与优化

3.1 非差非组合模型

在BDS中,若忽略电离层的影响,可以建立一种无电离层组合模型,但是这样就会造成以后的观测噪声成倍增加。因此,为了尽可能准确计算产生的误差,一般利用另一种模型——非差非组合模型。进行计算与处理的公式的一般形式如下:

[P1=ρ+c⋅(dt-dT)+T+IL1+dmP1+εP1P2=ρ+c⋅(dt-dT)+T+γIL2+dmP2+εP2L1=ρ+c⋅(dt-dT)+T-IL1+λ1B1+δmL1+εL2=ρ+c⋅(dt-dT)+T-γIL1+λ2B2+δmL2+εL2]

式中,各种参数信息如表2所示。

该模型的建立,可以计算ENU的平均偏差,但随着观测站的增加,计算量也会呈现线性的增大。无电离层组合模型虽然参数个数较少,但是其观测噪声偏大的影响不能不考虑。

3.2 WNN和Kalman Filter相结合的模型

卡尔曼滤波[9]是一种经典的滤波算法,在BDS中,使用卡尔曼滤波处理数据是必要的。所以,首先建立该模型如下:

[Xk=Φk,k-1Xk-1+Γk-1Wk-1Lk=HkXk+Vk]

Wk和Vk满足如下关系:

[E(Wk)=0,cov{Wk,Wj}=E[WkWTj]=QkδkjE(Vk)=0,cov{Vk,Vj}=E[VkVTj]=Rkδkjcov{Wk,Vk}=E[WkVTj]=0]

Dirac-δ函数:

[δkj=1(k=j)0(k≠j)]

在PPP中,首先要选取状态向量:

[X=x,y,z,dt,ZWD,x·,y·,z·,dt·,ZWD·,N1,...,NsT]

[Φk,k-1]和[Γk-1]表示如下:

[Φk,k-1=I6×6ΔtI6×606×(s+u)06×6I6×606×(s+u)0(s+u)×60(s+u)×6I(s+u)×(s+u)]

[Γk-1=12Δt2⋅I6×6Δt⋅I6×60(s+u)×(s+u)]

状态向量Xk的估计值[X∧k]如下:

[X∧k,k-1=Φk,k-1X∧k,k-1]

①估计状态向量:

[X∧k=X∧k,k-1+Kk(Lk-Hk⋅X∧k,k-1)]

②增益滤波:

[Kk=Pk,k-1⋅HTk⋅(Hk⋅Pk,k-1⋅HTk+Rk)-1]

③预测方差:

[Pk,k-1=Φk,k-1Pk-1ΦTk,k-1+Γk-1Qk-1ΓTk-1]

④方差估计:

[Pk=(I-Kk⋅Hk)⋅Pk,k-1]

综上,建立以上卡尔曼滤波的模型已经完成,需要将该模型引入到神经网络中。但由于系统中存在硬件误差等原因,会导致经过卡尔曼滤波获得的速度波形与实际速度波形有所偏差,进而使得到的定位信息不准确,针对以上问题构建小波神经网络和卡尔曼滤波相结合的模型。

如图5所示,小波神经网络是一种特殊的神经网络模型,它将神经网络的激活函数替换成小波函数,在建立这种小波神经网络的结构时,利用小波分析理论能够进行平移变换等操作,基于以上的理论分析,建立的模型在理论上可以逼近任意函数。与卡尔曼滤波相结合之后,滤波效果将会更加明显,不管是遇到其他噪声还是其他干扰的状况下,系统的鲁棒性会得到一定的提升。与此同时,信号的反馈是进行信息更新的手段。正是由于结合了神经网络的监督控制方法,一方面,提升了系统的定位准确率,另一方面也加速了算法的收敛速度。

如图6所示,小波神经网络和卡尔曼滤波相结合的滤波方案,列车的运动参数传入北斗定位系统中,信号经过卡尔曼滤波之后,一方面,会将导航参数误差传入北斗定位系统中,另一方面,信号会经过小波神经网络进行参数修正[10]。最后,系统输出的是滤波后的信号。

3.3 DR定位模型

如图7所示,在实际的列车定位中,建立二维坐标轴,列车轨迹是在该二维坐标轴中运动[11-12]。

设定位置起始点为(x0, y0),初始角度为θ0,则可以得到以下公式。

[x1=x0+S0sinθ0x2=x1+S1sinθ1y1=y0+S0cosθ0y2=y1+S1cosθ1θ1=θ0+Δθ0θ2=θ1+Δθ1]

4 实验

软件的主界面如图8所示,分成四个模块。分别是:一、Kalman滤波模块,二、计算三向误差模块,三、收敛性分析模块,四、定位分析模块。其中,一、Kalman滤波模块计算了状态向量、增益滤波、预测方差和方差估计。二、三向误差模块计算了东北地三向的误差。三、收敛性分析是比较只有Kalman滤波和WNN和Kalman相结合。四、定位分析是针对实际问题计算传统DR定位和改进后的算法定位。

经典小说推荐

杂志订阅