3. GNSS误差源:电离层延迟、对流层延迟、多路径效应、卫星钟差、接收机钟差、相对论效应

做定位算法这些年,我最大的感受就是:GNSS定位本质上是一场与误差的博弈。你想想看,卫星在两万公里外发信号,信号穿过大气层、绕过建筑物、最后落到你的接收机上,这一路上有多少因素在干扰它?

今天我们就来把这些误差源一个一个拆开看。我个人习惯把它们分成三类:与传播路径有关的与硬件设备有关的与物理规律有关的。这样分类,调试的时候思路会清晰很多。

核心观点:GNSS定位精度提升的过程,本质上就是对这些误差源进行建模、估计、消除的过程。你每消除一个误差,定位精度就上一个台阶。

GNSS误差源 传播路径相关 硬件设备相关 物理规律相关 电离层延迟 对流层延迟 多路径效应 卫星钟差 接收机钟差 相对论效应 消除误差 → 提升定位精度

3.1 电离层延迟

电离层延迟是GNSS定位中最大的误差源之一。说白了,就是信号穿过电离层时,被那里的自由电子"拖慢"了。这个延迟有多大?在太阳活动高峰期,天顶方向能达到十几米,低仰角的时候甚至能到几十米。

为什么会这样?电离层里有大量自由电子,它们对电磁波有折射作用。信号频率越低,折射越明显。所以L1和L2频段的延迟量是不一样的——这就是双频接收机能消除电离层延迟的原理。

我的经验:我在做车载定位项目时,遇到过夏天午后定位突然变差的情况。排查了半天,发现是太阳耀斑爆发导致电离层剧烈扰动。后来我养成了一个习惯:做高精度定位时,先查一下当天的电离层活跃指数。

消除电离层延迟的常用方法:

  • 双频组合法:利用L1和L2频段延迟量的差异,构建无电离层组合观测值。这是最经典的方法。
  • 模型改正法:使用Klobuchar模型、NeQuick模型等。单频接收机常用。
  • 差分法:短基线RTK中,电离层延迟被差分掉大部分。

3.2 对流层延迟

对流层延迟和电离层不同。对流层是中性大气,不色散——也就是说,它对所有频率的信号延迟量是一样的。所以双频法在这里不管用。

对流层延迟可以分成两部分:干分量湿分量。干分量占90%左右,可以用模型算得很准;湿分量只占10%,但变化快、难建模。

分量类型 占比 影响因素 建模难度
干分量 约90% 气压、温度 容易(Saastamoinen模型精度可达厘米级)
湿分量 约10% 水汽含量 困难(需要水汽辐射计或PPP估计)

注意:我曾经在沿海城市做测试,湿度大、水汽变化快,对流层湿分量估计不准导致定位飘了半米。后来改用随机游走模型实时估计湿延迟,效果好了很多。记住:静态场景和动态场景的对流层处理策略是不一样的。

3.3 多路径效应

多路径效应,说白了就是信号"抄了近路"——卫星信号除了直射路径,还从建筑物、地面、水面反射过来。反射信号和直射信号叠加,导致测距误差。

这个误差有多烦人?我举个例子:在停车场附近做测试,多路径误差能到几十米,而且它不像电离层那样有规律可循,很难用模型消除。

应对多路径的常用手段:

  • 天线设计:使用扼流圈天线,抑制低仰角反射信号
  • 信噪比检测:反射信号通常信噪比低,可以设置阈值剔除
  • 接收机算法:窄相关技术、多路径估计延迟锁定环(MEDLL)

避坑指南:我曾经在立交桥下做动态测试,多路径导致定位结果跳来跳去。后来发现是桥体金属结构造成的强反射。从那以后,我每次做测试前都会先观察周围环境,避开明显的反射源。

3.4 卫星钟差

卫星上装的是原子钟,精度很高,但也不是完美的。卫星钟差通常在几纳秒到十几纳秒之间,换算成距离就是几米。

好消息是,卫星钟差可以通过导航电文中的钟差参数来改正。广播星历提供的钟差精度在2-5纳秒左右。如果你需要更高精度,可以用精密星历,精度能到0.1纳秒以内。

卫星钟差的特点:

  • 随时间缓慢变化,可以用多项式拟合
  • 不同卫星的钟差相互独立
  • 差分定位中可以消除

3.5 接收机钟差

接收机钟差和卫星钟差是"一对难兄难弟"。不同的是,接收机用的是石英钟,精度比原子钟差好几个数量级。石英钟的漂移率大,而且受温度影响明显。

接收机钟差怎么处理?

  • 作为未知参数估计:在定位解算时,把接收机钟差和位置一起估计出来。这是最常用的方法。
  • 星间差分:在RTK中,通过双差观测值消除接收机钟差。

我的习惯:做单点定位时,我一般把接收机钟差当作白噪声过程来估计。如果接收机用了温补晶振(TCXO),钟差变化会平稳一些,可以用随机游走模型。

3.6 相对论效应

这个误差源很有意思,它来自爱因斯坦的相对论。卫星在高速运动(约3.8公里/秒),而且处于不同的引力势中,这会导致卫星上的时钟比地面时钟走得快一点。

具体来说:

  • 狭义相对论:卫星高速运动,时间变慢。每天约慢7微秒。
  • 广义相对论:卫星离地心远,引力势高,时间变快。每天约快45微秒。
  • 综合效果:每天约快38微秒。换算成距离,如果不修正,每天会累积约11公里的误差!

好在卫星出厂时已经做了频率补偿,把原子钟的标称频率调低了约0.0045 Hz。这样在轨运行时,相对论效应正好把频率"拉回"到正确值。

注意:相对论效应还有一项周期项,由卫星轨道的偏心率引起。这个项虽然小(最大约2米),但在高精度定位中不能忽略。我记得在做PPP解算时,如果不加这个周期项修正,定位结果会有一个明显的系统性偏差。

好了,这六类误差源我们就聊完了。你可能会问:这么多误差,怎么处理得过来?其实在实际工程中,我们不是一次性处理所有误差的。而是根据定位精度需求,选择性地消除主要误差项。做米级定位,电离层和对流层用模型改正就够了;做厘米级定位,那就得用差分或PPP技术,把能消除的误差都消除掉。