傅金琳,许俊杰,刘红光,杨 涛,张 丞
(1. 天津航海仪器研究所,天津 300131;2. 中国移动天津公司,天津 300308)
环路跟踪卡尔曼滤波算法的性能分析
傅金琳1,许俊杰2,刘红光1,杨 涛1,张 丞1
(1. 天津航海仪器研究所,天津 300131;2. 中国移动天津公司,天津 300308)
基于卡尔曼滤波的环路跟踪算法多是通过一定仿真证明算法性能,没有系统性性能评估,难以较好指导工程应用。在原有算法基础上进行了优化,并系统性地对比分析、评估了基于卡尔曼环路滤波算法性能,以期为算法工程化提供指导。首先提出对跟踪环路反馈调整量进行预测,使之更符合系统实际,减小环路跟踪误差。而后基于卫星信号模拟器输出信号和自生产信号源,充分评估基于卡尔曼滤波环路跟踪算法的收敛时间和灵敏度。仿真结果表明,相比目前工程常用的二阶FFL辅助三阶PLL算法,基于卡尔曼滤波环路跟踪算法能够缩短环路所需稳定时间约90%,并能提升跟踪灵敏度约5 dB,有效改善弱信号场景中接收机输出信息的完好性和连续性。
卡尔曼滤波;环路跟踪;收敛时间;跟踪灵敏度
全球导航卫星系统(GNSS)的应用目前已经渗透到国防、农业、工业、交通、城市建设等诸多领域,而且新的应用市场不断出现,致使相关消费群体迅速增加,围绕GNSS及其应用已经形成了一个庞大的产业[1]。然而卫星信号容易受到障碍物遮挡、多径效应等的影响,导致接收机接收的信号功率衰减严重,普通接收机在这种弱信号环境中特别容易失锁,卫星失锁后还需要一定的时间进行失锁重捕、重跟踪,这严重影响卫星导航输出信息的稳定性、连续性和完好性[2]。
针对此问题,广大学者开始了高性能跟踪技术的研究,即如何在弱信号等复杂电磁环境中实现卫星接收机的高精度、高可靠性导航信息输出。由于接收机性能同时受到外界噪声和载体动态应力两方面的影响,有些学者提出采用锁频环(FLL)辅助锁相环(PLL),还有的提出采用卡尔曼滤波(KF)[3-4]、扩展卡尔曼滤波[5-6]EKF)或者无迹卡尔曼滤波(UKF)[7],还有的提出了矢量跟踪技术[8-11]。这些算法能够在一定程度上改善接收机跟踪性能,提升接收机输出的导航信息质量。然而大多数学者只是提出算法本身,通过一定仿真证明提出算法的有效性,鲜有对算法性能进行系统性评估的,不能有力指导算法的工程应用。针对此问题,本文贴合工程实际,对基于卡尔曼滤波的跟踪算法进行了一点改进,充分评估算法性能,以期能指导算法的工程化。
1.1 卡尔曼跟踪环模型
图1给出了基于卡尔曼滤波的卫星接收机载波跟踪环路示意图。
图1 基于卡尔曼滤波跟踪环路Fig.1 Tracking loop based on Kalman filter
首先通过本地数控振荡器(NCO)复现的载波信号来剥离接收机数字中频(SIF)信号的载波,以产生同向(I)和正交(Q)采样数据。而后,I和Q分量与本地复现即时(P)码做相关运算,得到信号i和q:
式中:D(n)为正负1的数据电平值;为复制的C/A码与接收到的卫星C/A码之间的相位差;θe(n)为复制载波与接收到的载波相位差;ni(n)和nq(n)分别为i、q两路的噪声。
接下来相关结果经积分累加器单元后分别输出相干积分Ips和Qps:
式中:Ncoh表示相干积分时间T内输入到积分器的数据个数。将式(1)和式(2)分别代入式(3)和式(4)可得:
式中:NI( n)和Nq( n)分别为噪声ni( n)和nq( n)的叠加值,且服从均值为0,方差为σ2的正态分布。
Ips和Qps经过环路鉴别器得到相位误差θe和频率误差fe作为卡尔曼滤波器的观测量,经过卡尔曼滤波后得到载波NCO的控制参数,以保证环路的稳定跟踪。
定义载波卡尔曼滤波的状态量为
式中:θ为本地载波相位误差;ω0为本地载波多普勒频率误差;ω1为本地载波多普勒频率变化率误差。
离散化的本地载波线性状态方程表示为
式中:Φ为状态转移矩阵;B为输入转移矩阵;U为本地载波反馈的调整量,且;n为过程噪声,,其协方差矩阵为。
在给出卡尔曼滤波状态方程后,给出卡尔曼滤波观测方程,用载波相位估计误差和载波频率估计误差作为观测量,即观测量,其中,从而观测表示为
1.2 反馈调整量的计算
在接收机载波跟踪环路的卡尔曼滤波中,当前时刻载波NCO调整量是从前一个预检积分时间内输入的中频信号中提取的,如果直接利用此调整量去调节载波NCO,会导致本地载波与输入载波相比存在一定的时间滞后,并使导航电文解调产生误码,因此这里在环路设计中引入状态补偿器,以修正调整量的滞后性误差。
接收机载波跟踪环路调整间隔为一个预检积分时间T,即卡尔曼滤波状态估计的滞后时间为T,因此调整量U与状态量X直接的关系为
1.3 卡尔曼跟踪算法递推
卡尔曼跟踪算法是根据前一时刻对状态的估计值和当前时刻的观测值来获得当前时刻的滤波值,因此整个环路滤波过程可以分为状态预测和状态更新两部分。
1)预测
一步状态预测方程:
一步状态预测均方误差:
2)更新
滤波增益:
状态估计方程:
状态估计均方差:
为了更好地体现基于卡尔曼滤波跟踪算法的性能,这里分别基于采集的卫星信号模拟器信号和自生产信号仿真对比分析基于卡尔曼滤波的跟踪算法性能和目前工程化较为常用的二阶FLL辅助三阶PLL环路跟踪算法性能。
2.1 基于模拟器信号仿真分析
基于Matlab平台,仿真对比分析卡尔曼滤波算跟踪法与二阶FLL辅助三阶PLL算法的性能差异。GPS中频信号基于卫星信号模拟器采集,采样率为62 MHz,数字载波频率为8.58 MHz。运动场景为初始速度为北向10 m/s,加速度为北向10g。
图2给出了采用二阶FLL辅助三阶PLL算法与卡尔曼滤波跟踪算法时,接收机载波跟踪环路运行400 ms的I路累积值。理论上GPS I路累加值为方波形状,在远离0值的两侧。从图2中可以看出,卡尔曼滤波算法在10 ms后I路累加值即为远离0值的方波,不会出现数据的误判;而二阶FLL辅助三阶PLL算法大概在140 ms后I路累积值才稳定,数据位不会误判。可见在此运动场景中,卡尔曼滤波相比二阶FLL辅助三阶PLL算法所需稳定时间极大改善,提升了93%。
图3给出了采用二阶FLL辅助三阶PLL算法与卡尔曼滤波算法时,接收机载波跟踪环路运行5000 ms的相位误差情况。从图3中可知,二阶FLL辅助三阶PLL算法需要约800 ms才能完全收敛,而卡尔曼滤波算法需要约80 ms即能完全收敛。可见采用卡尔曼滤波收敛时间改善了90%。在稳定跟踪后,两种滤波算法下,环路相位误差差不多,即卡尔曼滤波算法不能提升接收机的测速精度。
图2 两种滤波算法I路累加值比较Fig.2 Comparison on I values of the two filtering methods
图3 两种算法相位误差比较Fig.3 Comparison on phase errors of the two algorithms
2.2 基于自生成信号仿真分析
1)仿真条件
基于自编中频信号数据对不同载波环路跟踪算法的跟踪灵敏度进行评估。中频信号采样率为62 MHz,数字载波频率为8.58 MHz,数据位都为正1。
2)跟踪灵敏度仿真分析
图4给出了静态下二阶FLL辅助三阶PLL算法的跟踪灵敏度。从图4可知,在信噪比为-31 dB时,二阶FLL辅助三阶PLL算法跟踪中I路累加值不会出现负值,即数据位不会出现错判。当信噪比为-32 dB时,载波环路I路累加值出现负值。因此认为二阶FLL辅助三阶PLL算法的跟踪灵敏度为信噪比-31 dB。
图4 静态下的二阶FLL辅助三阶PLL算法跟踪灵敏度Fig.4 Tracking sensitivity of the two order FLL aided three order PLL algorithm under static conditions
图5给出了静态下基于卡尔曼滤波的载波跟踪算法跟踪灵敏度。从图5中可知,当信噪比为-36 dB时,I路累加值不会出现负值,而当信噪比为-37 dB时,I路累加值出现了负值,即数据位可能出现误判,因此认为基于卡尔曼滤波的载波跟踪算法的灵敏度为信噪比-36 dB。
图5 静态下基于卡尔曼滤波跟踪算法的跟踪灵敏度Fig.5 Tracking sensitivity of tracking algorithm based on Kalman filter under static state
对比图4和图5可知,基于卡尔曼滤波载波跟踪算法相比二阶FLL辅助三阶PLL算法的跟踪灵敏度提升了5 dB。载波环路跟踪灵敏度的提升等效于抗宽带干扰能力的提升,因此基于卡尔曼滤波载波跟踪算法相比二阶FLL辅助三阶PLL算法的抗宽带干扰能力提升了5 dB。
本文首先给出了基于卡尔曼滤波载波跟踪算法的理论分析,建立了数学模型,而后分别基于卫星信号模拟器采集数据和自生成中频信号对比分析了基于卡尔曼滤波载波跟踪算法和二阶FLL辅助三阶PLL算法的性能。仿真结果表明,基于卡尔曼滤波载波跟踪算法相比二阶FLL辅助三阶PLL算法能够更有效缩短载波环路稳定跟踪时间,静态下跟踪灵敏度提升了5 dB。因此基于卡尔曼滤波载波跟踪算法较为适用于城市、密林等弱信号场景的跟踪,且在信号失锁时能实现快速跟踪,有效改善卫星接收机输出信息的完好性和连续性。
(References):
[1] 张小军, 郭承军, 曹建蜀. 基于卡尔曼滤波的GPS高动态载波跟踪环路设计[J]. 测绘科学, 2015, 40(3): 21-25.Zhang Xiao-jun, Guo Cheng-jun, Gao Jian-shu. High-dynamic carrier tracking loop of GPS receiver based on Kalman filter[J].Science of Surveying and Mapping, 2015, 40(3): 21-25.
[2] Kazemi P L, O’Driscoll C. Comparison of assisted and stand-alone methods for increasing coherent ntegratiion time for weak GPS signal tracking[C]//Proc. of ION GNSS. Savannah, GA. 2008: 1730-1740.
[3] Liu Gang, Guo Mei-feng, Zhang Rong, et al. Hardware implementable vector tracking loop for GNSS/INS deep integration[J]. Journal of Chinese Inertial Technology,2015, 23(2): 189-195.
[4] Barreau V, Vigneau W, Macabiau C, et al. Kalman filter based robust GNSS signal tracking algorithm in presence of ionospheric scintillations[C]//2012 6thESA Workshop on Satellite Navigation Technologies. 2012: 1-8.
[5] 李理敏, 龚文斌, 刘会杰, 等. 基于自适应扩展卡尔曼滤波的载波跟踪算法[J]. 航空学报, 2012, 33(7): 1319-1328.Li Li-min, Gong Wen-bin, Liu Hui-jie, et al. A carrier tracking algorithm based on adaptive extended Kalman filter[J]. Acta Aeronautica et Astronautica Sinica, 2012, 33(7): 1319-1328.
[6] Luo Y, Wu W Q, Babu R, et al. A simplified baseband prefilter model with adaptive Kalman filter for ultra-tight Compass/INS integration[J]. Sensors, 2012, 12(7): 9666-9686.
[7] 张光龙, 张会生, 李立欣. 基于UKF的高动态GPS载波跟踪[J]. 计算机系统应用, 2014, 2(3): 181-185.Zhang Guang-long, Zhang Hui-sheng, Li Li-xin. High dynamic carrier tracking method based on UKF[J]. Computer Systems Applications, 2014, 2(3): 181-185.
[8] Peng Sen-lin, Morton Y, Di Rui-hui, A multiple-frequency GPS software receiver design based on a vector tracking loop[C]//2012 IEEE/ION PLANS. 2012: 495-505.
[9] 谢非, 刘建业, 李荣冰, 等. 基于快速相干运算的卫星接收机矢量跟踪算法[J]. 中国惯性技术学报, 2014, 22(1): 94-99.Xie Fei, Liu Jian-ye, Li Rong-bing, et al. Vector tracking algorithm based on fast correlation operation in GNSS receivers[J]. Journal of Chinese Inertial Technology, 2014,22(1): 94-99.
[10] Lin T, Driscoll C O, Lachapelle G. Development of a context-aware vector-based high-sensitivity GNSS software receiver[C]//Proceeding of ION NTM. San Diego, CA,2011: 1043-1055.
[11] 傅金琳, 赵子阳, 李醒飞, 等. 惯导速度辅助接收机跟踪环路算法[J]. 中国惯性技术学报, 2016, 24(3): 330-336.Fu Jin-lin, Zhao Zi-yang, Li Xing-fei, et al. INS velocityaided receiver tracking loop algorithm[J]. Journal of Chinese Inertial Technology, 2016, 24(3): 330-336.
Performance analysis of tracking loop Kalman filter algorithm
FU Jin-lin1,2, XU Jun-jie2, LIU Hong-guang1, YANG Tao1, ZHANG Cheng1
(1. Tianjin Navigation Instruments Research Institute, Tianjin 300131, China;2. China Mobile communication group Tianjin Co., Ltd., Tianjin 300308, China)
Some simulations have been done to prove the advantages of the tracking loop algorithm based on Kalman filter, but there is few systematic performance evaluation. These results have little guide to the engineering application. In this paper, the original algorithm is optimized, and the performance of the tracking loop based on Kalman filtering is systematically-comparatively analyzed and evaluated. First of all,the tracking loop feedback adjustment is proposed to make it more in line with the actual system situation.Then based on the signal from the satellite signal simulator and the signal source from the production, the sensitivity and convergence time of the tracking loop algorithm based on Kalman filter is fully evaluated. The simulation results show that, compared with the current two-order FFL aided three-order PLL algorithm, the tracking loop algorithm based on Kalman filter reduces the convergence time by about 90%, and improves the tracking sensitivity by about 5dB, which effectively improves the integrity and continuity of the receiver output information in weak signal scene.
Kalman filter; tracking loop; convergence time; tracking sensitivity
U666
:A
1005-6734(2017)03-0309-04
10.13695/j.cnki.12-1222/o3.2017.03.006
2017-03-23;
:2017-05-15
2015年度天津市企业博士后创新项目择优资助计划
傅金琳 (1984—),女,博士后,高级工程师,研究方向为综合导航技术。Email: linkimf@163.com