基于频差估计的卫星导航监测站单卫星多历元校时方法
2023-05-05张勇虎冯璐胡杰韩旭李润东
张勇虎 冯璐 胡杰 韩旭 李润东
(1.湖南卫导信息科技有限公司 湖南省长沙市 410005 2.长沙学院 湖南省长沙市 410022)
卫星导航系统是各领域和基础设施的重要组成部分,在社会经济运行中扮演着重要的角色,尤其是在低轨卫星精密定轨[1]、地震预警[2]、实时大气监测[3]以及全球、区域短报文通信及国际搜救服务[4]等方面有重要作用;与此同时卫星导航系统还可以为用户提供精确授时服务,即卫星授时技术。除导航定位等重要功能以外,卫星授时也是卫星导航系统重要的基本功能之一。“授时”是PNT(Positioning Navigation and Timing)体系[5]的重要组成之一,并且随着社会发展以及科技进步,人们对授时精度的要求也越来越高。
在卫星授时领域中,单向授时一直是一个值得深究的授时方法,同时也是部分授时方法的前提,对其精度问题进行研究可有利于提高卫星的授时精度并且减小钟差误差,也有利于提高卫星定位的精度和稳定性。因此,精确的授时方法以及精确稳定的卫星钟差产品一直是该领域的研究热点。接收机频差是影响钟差的主要因素之一,对此,本文提及一种顾及频差的监测站单星多历元校时方法,即根据多星单历元本地钟差误差计算原理求得各个时刻未考虑频差时的钟差结果,随后利用最小二乘法计算得频差,最后根据单星多历元本地钟差计算原理,利用单星单历元本地钟差计算结果与频差计算结果求得单星多历元本地钟差。文献[6]中提及了一种顾及轨道误差的实时GPS 钟差顾及方法,该方法对于GPS 实时轨道异常的卫星可以准确识别并剔除,提高GPS 实时钟差估计的稳定性,可有效提高授时精度,但是忽略了接收机频差对钟差误差的影响;文献[7]提出的GPS接收机单向授时算法的研究为本文中接收机对钟差误差的影响的分析提供的借鉴;
最后将由单星单历元本地钟差计算原理、单星多历元本地钟差计算原理计算得到的单星单历元和单星多历元的本地钟差,对比两者误差可知单星多历元较单星单历元精确度更高,并且误差范围在-1.5ns ~3ns。
1 单星多历元对本地钟差的精确度的影响
单星授时是指在用户设备不发射信号的前提下,仅通过接收就可以获得高精度的系统时间。单星授时的目的是得到本地时钟与系统时间的时间差,即本地钟差,然后直接或间接将本地时间同步到系统时间。北斗单向授时获得的是本地时间与北斗卫星的时间偏差。所以,本地钟差的精确水平直接影响了单星授时的精确水平。
1.1 接收机频差对本地钟差误差的影响
接收机频差是指地面观测站在接收卫星信号时卫星与测站发生了相对运动,导致各观测结果之间存在一个频率差值,且运动速度越高频差越大。
所以时间越长,频差就会越大,所以每过一段时间,就得消除一次频差带来的影响,根据多星单历元本地钟差误差计算原理可以求得各个时刻未考虑频差时的钟差结果:
上式中:
∆tRj表示由多星单历元本地钟差误差计算原理计算得到未考虑频差的本地钟差,单位:秒;
∆tR表示考虑频差后的本地钟差,单位:秒;
∆t 表示从开始接收卫星信号到该时刻的时间差,单位:秒;
∆f 表示频率差值,单位:赫兹;
需利用最小二乘法计算钟差∆tR和频差∆f:
H 矩阵中的∆t1、∆t2、…、∆tj表示相较于开始时刻的时间间隔;
X 矩阵中的∆f 表示通过最小二乘法计算出的本地频差;
Y 矩阵中的∆tR表示开始时间未考虑频差时的本地钟差;
Y 矩阵中的∆tR1,∆tR2,…,∆tRj表示各个历元对应的各种误差。
由上式可以求得频差不变的时间内本地频差∆f 的值,于是可以利用本地钟差∆tR和本地频差∆f 根据(8)公式求出此段时刻内各个时刻的真实钟差值∆tRj':
1.2 单星单历元本地钟差计算原理
利用单星单历元计算本地钟差误差是指根据单颗卫星的数据依次计算多个历元的本地钟差。
由于观测点坐标x、y、z 已知,假设在历元t 时刻,利用接收机在已知坐标的观测点上观测卫星Sj,相应的伪距观测方程为:
上式中:
x、y、z 表示观测点位置,单位:米;
Xj、Yj、Zj表示卫星位置,单位:米;
∆tj表示卫星钟差,单位:米(已乘以光速进行转换);
∆tR表示接收机钟差(也称为本地钟差),单位:米(已乘以光速进行转换);
δion表示电离层延迟改正,单位:米;
δtro表示对流层延迟改正,单位:米;
∆ρ 表示地球自转改正(受地球自转的影响,在卫星信号发射时刻对应的地固坐标系和信号被接收机接收的时刻对应的地固坐标系是不一样的,伪距修正应加上地球自转改正)。
所以在顾及其他误差影响的前提下历元t 时刻接收机的钟差∆tR为:
上式中,伪距ρ'、卫星位置(Xj、Yj、Zj)、卫星钟差∆tj、电离层延迟δion、对流层延迟δtro、地球自转改正∆ρ 为提供的已知参数,再将其单位转化为秒:
上式中:
∆tR表示计算得的本地钟差;
∆tR'表示数据文件提供的已知的参数;
c 表示光速,取值299792458.458m/s。
随后根据(1)公式得到其考虑频差影响后的结果。
而本地钟差的误差D_value 为:
由此可以看出,接收机的伪距测量精度、观测测站已知的位置精度、卫星的位置精度、卫星钟差的精度、对流层延迟改正以及电离层延迟改正的精度等是接收机钟差的精度水平的主要影响因素。
1.3 单星多历元本地钟差计算原理
利用单星多历元计算本地钟差误差是指利用单颗卫星多个历元直接按频差进一步减小本地钟差的误差。
所以,只要在单星单历元本地误差计算的基础上再消除各个历元之间的频差影响,就可以获得更加精确的本地钟差。由于频差一段时间内是不变的,利用宽度为N 的滑动窗计算各个历元的频差最为精确,经测试,当滑动窗宽度N为30个历元时是较其他宽度更为精确的。频差计算可参考1.1 接收机频差对本地钟差误差的影响。
同样,与单星单历元求解本地钟差类似,接收机的伪距测量精度、观测站已知的位置精度、卫星的位置精度、卫星钟差的精度、对流层延迟改正以及电离层延迟改正的精度等因素会影响单星多历元原理计算本地钟差的精度水平。
使用单颗卫星多个历元数据计算本地钟差,计算结果如下:
由图1 可知,横坐标为周内秒,纵坐标为误差值(单位为秒),使用单星多历元本地钟差计算方法,误差值大约在-1.5ns ~3ns 之间。
图1:单星多历元本地钟差误差-时间图(N 为30)
1.4 单星单历元、多历元计算本地钟差精度对比
分别使用单颗卫星单历元数据、单颗卫星多历元数据两种方法进行本地钟差计算并进行对比,情况如下。
如图2 为单星单历元、单星多历元本地钟差误差对比图,横坐标为周内秒,纵坐标为误差值(单位为秒),实线表示单星多历元计算方式得到的误差,虚线表示使用单星单历元计算方式得到的误差,由单星单历元本地钟差计算原理、单星多历元本地钟差计算原理计算得到单星单历元和单星多历元的本地钟差,对比其误差可知单星多历元较单星单历元精确度更高,两者相差约一个数量级,后者较前者抖动幅度更小。
图2:单星单历元、多历元本地钟差误差对比图(N 为30)
2 结论
为了提高单星单向授时的精度,本文提出一种顾及频差的监测站单星多历元校时方法,即首先分析出接收机频差对本地钟差误差的影响,根据多星单历元本地钟差误差计算原理求得各个时刻未考虑频差时的钟差结果,随后利用最小二乘法计算得频差,最后根据单星多历元本地钟差计算原理,利用单星单历元本地钟差计算结果与频差计算结果求得单星多历元本地钟差计算结果。本文所提及的单星多历元校时方法较单星单历元校时方法精度更高,并且通过计算得出误差范围在-1.5ns ~3ns。