自适应GPS/北斗矢量跟踪算法的制作方法

文档序号:12269118阅读:506来源:国知局

本发明属于卫星信号接收领域,具体为一种自适应GPS/北斗矢量跟踪算法,来提高GNSS接收机的性能,广泛适用于弱信号和高动态环境。



背景技术:

全球卫星导航系统(GNSS,Global Navigation Satellite System)快速发展的近20年间,各个系统发射卫星数量不断增加,单星系的导航服务已不能满足用户定位导航需求,且由于动态性、城市建筑物密集带来的多径效应和峡谷森林等复杂环境造成的遮挡大大影响了接收机定位导航的精度和实时性,传统跟踪环路已不能达到定位导航要求,因此提高定位导航的精确性和实时性具有重要的研究意义。



技术实现要素:

本发明为了提高定位导航的精确性和实时性,提供了自适应GPS/北斗矢量跟踪算法。

本发明是采用如下的技术方案实现的:自适应GPS/北斗矢量跟踪算法,包括以下步骤:

卫星信号(卫星信号包括GPS信号和北斗信号)被接收机接收到以后经过下变频到中频信号,中频信号经过A/D转换后变成数字中频信号;

数字中频信号首先经过捕获得到粗略的码相位、多普勒后,输入跟踪环路中,由跟踪环路进行对载波和伪码的剥离;

在跟踪环路中数字中频信号与码发生器产生的伪码进行相关运算,数字中频信号与载波发生器产生的载波进行相关运算,相关运算结果经过预滤波卡尔曼得到码相位误差、载波相位误差以及频率误差;

预滤波卡尔曼把码相位误差、载波相位误差以及频率误差输入到导航卡尔曼,由导航卡尔曼计算k时刻的接收机位置、速度信息,同时导航卡尔曼提供K时刻的伪距率信息,反馈输入到预滤波卡尔曼,使k+1时刻输出的码相位误差、载波相位误差以及频率误差更加准确;

通过导航卡尔曼解算k时刻的差值后,将误差经过神经网络的在线训练,并将训练结果反馈给NCO,NCO控制码发生器和载波发生器生成的k+1时刻的伪码和载波。

本发明在GPS/北斗系统的矢量跟踪环路中应用了预滤波和导航滤波结构,并且预滤波结构代替了传统的鉴别器结构;预滤波的输出作为导航滤波器的输入,并由导航滤波器来更新预滤波的伪距率;最后由导航滤波器的输出作为神经网络的输入,为导航解算部分提供更准确的码相位和多普勒信息。整个过程中,算法的位置和速度误差相比于传统的矢量跟踪环路有所提高,并且所提出的系统相比于传统的矢量跟踪环路更能适应弱信号和高动态环境。

附图说明

图1为本发明矢量跟踪环路的结构示意图。

具体实施方式

自适应GPS/北斗矢量跟踪算法,包括以下步骤:

卫星信号被接收机接收到以后经过下变频到中频信号,中频信号经过A/D转换后变成数字中频信号;

数字中频信号首先经过捕获得到粗略的码相位、多普勒后,输入跟踪环路中,由跟踪环路进行对载波和伪码的剥离;

在跟踪环路中数字中频信号与码发生器产生的伪码进行相关运算,数字中频信号与载波发生器产生的载波进行相关运算,相关运算结果经过预滤波卡尔曼得到码相位误差△τ、载波相位误差△φ以及频率误差△f,将码相位误差△τ、载波相位误差△φ以及频率误差△f输入到导航卡尔曼进行计算,得到用户位置、速度信息;

预滤波卡尔曼把码相位误差、载波相位误差以及频率误差输入到导航卡尔曼,由导航卡尔曼计算k时刻的接收机位置、速度信息,同时导航卡尔曼提供K时刻的伪距率信息反馈输入到预滤波卡尔曼,使k+1时刻输出的码相位误差△τ、载波相位误差△φ以及频率误差△f更加准确;

通过导航卡尔曼解算k时刻的测量值与估计的测量值的差值后,将误差ε经过神经网络的在线训练,并将训练结果反馈给NCO,NCO控制码发生器和载波发生器生成的k+1时刻的伪码和载波。

具体实施时,GPSL1信号的伪码的码率为1.024Mbps,码长度为1023码片,北斗B1信号测距码码率为2.046Mbps,码长度为2046码片,北斗B1信号用的是QPSK调制,GPSL1信号用的是BPSK调制,根据信号的特点,本发明选择北斗B1的I之路分量来完成GPS/北斗组合矢量跟踪环路。为了同时跟踪GPS信号和北斗信号,图1所示为GPS/北斗结合矢量跟踪环路。在这个跟踪环路中包括六部分:载波/码发生器、相关器、预滤波卡尔曼(预滤波EKF)、导航卡尔曼(导航EKF)、NCO。如果导航EKF直接处理由相关器输出的信息,那么计算压力会非常大,本发明提出的预滤波EKF不仅减小了导航EKF的计算压力,而且更好的估计了环路的偏差,同时为了使偏差估计更加准确,通过导航EKF的估计伪距率来更新预滤波的伪距率。

预滤波EKF的状态方程为式(1):F为状态转移矩阵,wk为过程噪声,由于GPSL1信号和北斗B1信号带宽不同,因此环路噪声也是独立的,那么状态转移矩阵为:其中fca为载波频率,fL1/B1分别为GPSL1信号或北斗B1信号频率,Tc为相关积分时间,状态方程的码相位误差△τ、载波相位误差△φ以及频率误差△f,如下式(3)所示:

预滤波EKF的测量方程为:z=hkxk+vk(4),hk表示测量值与状态量之间的关系,vk表示测量噪声,相关器的输出作为预滤波卡尔曼的输入,由GPSL1信号和北斗B1信号得到的测量值分别为ZL1和ZB1,IP、QP为相关器即时支路输出,IE、QE为相关器超前支路输出,IL、QL为相关器滞后支路输出。

预滤波EKF的输出作为导航EKF的输入,由于导航EKF的输出比预滤波EKF的输出值精确,因此可以通过导航EKF估计值来反馈更新预滤波EKF,同时输出信息一部分作为神经网络的输入,另一部分作为NCO的控制命令。

导航卡尔曼的状态方程和测量方程分别为:

在式(6)中,Xk为状态方程,为状态转移矩阵,δxk,δyk,δzk为位置误差、为速度误差、δbk为钟差和为钟漂;Wk为过程噪声。在式(7)中,表示测量值与状态量之间的关系,定义如下:

其中,为接收机位置,(xi,yi,zi)为卫星位置,测量噪声νk~N(0,RNF)。

由于导航滤波器的输出比预滤波滤波器的输出值精确,因此可以通过导航滤波器估计值来反馈更新预滤波卡尔曼。此时由导航卡尔曼传递到预滤波卡尔曼的伪距率表达如下:

其中ri和ru分别为卫星和接收机的位置矢量。

在GPS/BDS双系统跟踪矢量环路中,由导航卡尔曼输出对NCO的控制命令负责本地伪码和载波的生成,由导航滤波器反馈给NCO的控制命令为:

其中,分别表示由导航滤波器反馈给GPSL1信号和北斗B1信号的码NCO的控制命令,分别表示由导航滤波器反馈给GPSL1信号和北斗B1信号的载波NCO的控制命令,λcode,L1,λcode,B1分别为GPSL1信号和北斗B1信号的码片长度;λB1,λL1分别为GPSL1信号和北斗B1信号的载波波长;fcode,L1,fcode,B1分别为GPSL1信号和北斗B1信号的码频率;fL1,fB1分别为GPSL1信号和北斗B1信号的载波频率。φk+1,φk分别为k+1和k时刻的载波相位值,fd为载波多普勒。

为了进一步提高矢量跟踪环路在动态弱信号环境下的性能,本发明提出了使用神经网络辅助矢量跟踪环路的结构。将导航卡尔曼的输出作为神经网络的输入,通过神经网络的在线训练,一旦信号受到遮挡等,就由神经网络为NCO提供更精确的码相位和多普勒频移信息。

神经网络中,在K时刻测量值Zk与估计的测量值之间的差值可以定义为:

可以得到下面的式子:

若信号情况良好,那么此时神经网络在线训练,ε为神经网络的输出,表达如下:

上式中,m为星历,在下一星历时刻输出ε。

本发明在自适应GPS/北斗跟踪环路中使用了预滤波结构,预滤波代替传统跟踪环路的鉴别器,一方面融合北斗与GPS信号,另一方面减小了导航卡尔曼的计算压力;预滤波输出的码相位误差△τ、载波相位误差△φ以及频率误差△f作为导航卡尔曼的输入,并且由于导航卡尔曼对伪距率的估计更加精确,使用导航卡尔曼的伪距率来更新预滤波卡尔曼伪距率;最后利用RBF神经网络的在线学习,导航卡尔曼的输出作为RBF神经网络的输入,当接收机处于信号遮挡等弱信号情况下时,提高了接收机的定位性能。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1