GPS从入门到放弃(十六)--- 卫星时钟误差和卫星星历误差
GPS从入门到放弃(十六)— 卫星时钟误差和卫星星历误差
卫星时钟误差
GPS卫星钟差(简称卫星钟差)是衡量GPS卫星时钟与标准时间之间差异的一种指标。尽管GPS卫星采用了高精度原子钟以确保极高的时钟精度,并具有较长的稳定性能;但这些原子钟依然存在频率漂移和老化等问题,在长期运行中会导致与标准时间产生一定的偏差。这一偏差必须进行必要的校正才能实现精准的时间传递。此外,在其他GNSS系统如北斗等导航系统中也会遇到类似问题,在此仅以GPS为例进行说明。
在GPS的说明书里采用二次多项式模型来表征卫星钟差。基于GPS时间t下的卫星钟差\Delta t_s其表达式可表示为:
\Delta t_s = a_{f0} + a_{f1}(t - t_{oc}) + a_{f2}(t - t_{oc})^2 + \Delta t_r
其中 a_{f0}、a_{f1} 和 a_{f2} 是系数;基准时间基准点设定了 t_{oc};目标计算时刻是 t;而 \Delta t_r 则代表相对论修正因子。
在该定位服务网页的第一子帧部分中包含了几个关键参数。通过求取该定位服务中的这些参数并代入预设公式即可准确推导出卫星时钟误差。
特别注意对 t-t_{oc} 的值进行处理:当该值超过 3 \times 1e^5 秒时,请将其减去 6 \times 1e^5 秒;如果该值低于 -3 \times 1e^5 秒,则需加回 6 \times 1e^5 秒。具体原因在于GPS系统每周重置时间基准以消除累积误差,并要求所有时间数据保持在-3\times1e^5 ~ +3\times1e^5秒的范围内。
让我们来探讨式中相对论效应修正项的具体处理方式。其中包含了狭义相对论效应与广义相对论效应。虽然GPS卫星已根据理论上的时空变换对时钟频率进行了校正。然而由于卫星运行轨道并非完美圆周而是椭圆轨迹这导致在不同运行阶段上对时钟频率的影响程度呈现出差异性因此还需采取相应的措施进行校正。
GPS的接口说明文档中给出的相对论修正项为:
\Delta t_r = F e \sqrt{A} \sin E_k
其中F=\frac{-2\sqrt{\mu}}{c^2}被视为一个关键参数,并被广泛应用于天体力学研究中。
此外,在讨论单频接收机相关特性时(如:GPS导航电文),我们还需考虑群波延迟修正这一因素。因为之前介绍的二次多项式模型主要针对双频接收机设计(如:双频接收机技术解析),将其应用于单一频率场景下,则需补充两个不同频率间的校正系数(如:T_{gd})。这种处理方式也可与电离层延时校正过程同步执行(如:RTKLIB中的实现方式),例如,在RTKLIB中就是这么做的。(参考:电离层延时)。(参考:DCB差分码偏差)
计算卫星钟差的时间导数后可知其结果表明卫星钟漂 Δṫ_s 的计算结果为:
Δṫ_s = a_{f1} + 2a_{f2}(t−t_{{oc}}) + F e \sqrt{A} \dot{E}_k \cos E_k
其中 \dot{E}_k 的具体数值可通过星历参数进行计算得出,并且建议读者进一步了解具体的计算方法可参见前述GPS卫星速度解算一文中的详细讲解
卫星星历误差
卫星运行于太空环境,在此期间其运行轨道会受到多种因素的影响。这些因素包括地球质量分布不均导致的作用力、潮汐效应、大气阻力以及太阳光压等因素。这些作用共同导致了卫星运行轨迹复杂多变。由此可知,基于星历计算所得的卫星位置与实际位置之间总会存在一定的偏差。这个差异则被定义为卫星星历误差
卫星星历误差属于系统误差类别的数值表现为一个三维空间中的矢性成分。其数值表现为一个三维空间中的矢性成分可分解为三个正交方向上的矢性成分即径相位项切线项及法线项。其中位于接收机与卫星连线所在的正交轴上的径相位项是决定因素而其伪距观测结果的变化基本不受切线项及法线项的影响这些非径相位相关的因素对其伪距观测结果的变化基本没有显著影响
目前常用的星历有广播星历和精密星历。
-
定位卫星播放使用的便是广播星历。
其存在不稳定性,并受到多个因素在一定程度上随机影响了用户的使用体验。
广播星历误差在GPS定位系统中已确认为重要的影响因素之一。
基于广播星历计算所得的数据可将卫星定位精度降至分米级别。 -
用于实现高精度卫星定位的技术基础即为精密星力数据。
其中一类数据基于多颗地面观测站持续监测收集的信息,并经过系统性地处理分析后最终确定为。
现有的GPS精密轨道数据主要包括两类:
一种是由美国国防制图局(DMA)负责生产的,
另一种是由国际 geodetic system(IGS)组织提供的。
其中一类的数据精度达到厘米级水平,
而另一类则可望达到五厘米级别的精确度。
误差消除
這兩種錯誤對所有接收器而言都是相同的。然而,因為這些錯誤影響範圍相似,建議采用\text{Diff}來消除這些影響。
值得补充的是,在GPS卫星位置解算[()中所获得的结果中,我们计算得到的卫星位置是在信号发射当口位于WGS-84坐标系中的位置信息。然而,在实施定位方程解算[()的过程中,则要求我们关注的是接收端设备接收到信号时所对应的卫星地理位置数据。由于地球自转的影响,在接收机端接收到信号后WGS-84坐标系统已经发生了变化趋势因此必须执行坐标转换操作以实现准确的数据对应关系建立。设地球自转角速度为\omega_e单位为弧度每秒;而从信号发送到接收所经历的时间间隔记为\tau则有:通过建立如下的数学模型我们可以实现所需坐标的精确转换
为了实现接收机定位解算的目的,在此过程中我们采用以下方式:即用 [x_s,\: y_s,\:z_s]^T 替代 [x_k,\: y_k,\:z_k]^T ,以便有效消除地球自转所带来的影响。
由于我们在定位过程中需要考虑几何距离,在实际操作中我们采用了一种更为简便的方法:通过在定位方程中加入由地球自转产生的修正项Δr来替代原来的计算方式。为了便于后续推导或便于理解这一过程,在引入修正项之前我们先进行了必要的理论推导。假设单位观测矢量为\boldsymbol{e}表示接收端的方向向量,则卫星在接收和发射信号时的位置差异矢量记作\Delta\boldsymbol{p}。由于位置差异仅影响到径向分量(即与观测方向一致的方向),因此有\Delta r = \boldsymbol{e}\cdot\Delta\boldsymbol{p}
又因为 \omegA \tau 的值较小,在此情况下可视为 \cos(\omegA\tau) \approx 1,\: \sin(\omegA\tau) \approx \omegA\tau 且 \sin(\omegA\tau) << 1 ,从而得到:
\boldsymbol{e} = \frac{1}{c\tau}[x - x_s,\:y - y_s,\:z - z_s] \approx \frac{1}{c\tau} [x - x_k,\:y - y_k,\:z - z_k]
\Delta \boldsymbol{p} = [x_k-x_s,\:y_k-y_s,\:z_k-z_s] \approx [-y_k\omega_e\tau,\:x_k\omega_e\tau,\:0]
该式表明\Delta r大致等于\frac{1}{c\tau}乘以方括号内的项,并进一步简化为\frac{\omega_e}{c}(yx_k - xy_k)
其中接收机位置可表示为 [x,\:y,\:z]^T ,而光速则用变量 c 来表示。在部分文献中提到过 \Delta r 这一术语,并将其称为Sagnac效应修正项的一种表现形式。即是采用此方法计算修正后的几何距离的具体实现细节可参考附录中的代码段
double geodist(const double *rs, const double *rr, double *e)
{
double r;
int i;
if (norm(rs,3)<RE_WGS84) return -1.0;
for (i=0;i<3;i++) e[i]=rs[i]-rr[i];
r=norm(e,3);
for (i=0;i<3;i++) e[i]/=r;
return r+OMGE*(rs[0]*rr[1]-rs[1]*rr[0])/CLIGHT;
}
