第4章 卫星导航原理:GPS/北斗信号结构、伪距与载波相位观测方程、单点定位与差分定位(RTK)原理、卫星导航误差源分析

各位同学,欢迎来到第四章。这一章我们聊聊卫星导航的核心原理。说实话,很多做组合导航的工程师,对卫星导航的理解就停留在“收星、解算、出位置”这个层面。但真正遇到信号遮挡、多径干扰、或者需要做RTK的时候,就抓瞎了。

我个人习惯是,先把信号结构吃透,再谈定位算法。你想想看,连卫星发下来的是什么都不知道,怎么去解算?好,我们开始。

4.1 GPS/北斗信号结构

GPS和北斗的信号结构,说白了就是“载波+伪码+导航电文”三层叠加。我当年刚入行时,总觉得这玩意儿太抽象,直到有一次在实验室用频谱仪看信号,才真正理解。

GPS信号结构:

  • 载波频率:L1(1575.42 MHz)、L2(1227.60 MHz)、L5(1176.45 MHz)
  • 伪随机噪声码(PRN码):C/A码(粗捕获码,1.023 MHz码率)、P码(精码,10.23 MHz码率)
  • 导航电文:50 bps数据率,包含星历、历书、电离层参数等

北斗信号结构(BDS-3):

  • 载波频率:B1I(1561.098 MHz)、B2a(1176.45 MHz)、B3I(1268.52 MHz)
  • 伪码:采用分层码结构,码率更高,抗多径能力更强
  • 导航电文:D1/D2电文,速率有50 bps和500 bps两种

核心要点:GPS和北斗虽然频率不同,但基本原理一致——卫星发射的信号,本质上是“载波+伪码+数据”的调制波。接收机通过捕获伪码的相位,就能测量出信号传播的时间。

嗯,这里要注意:北斗的B1I和GPS的L1频率很接近,但码结构不同。我在做多模接收机时,就遇到过因为码相位搜索策略不对,导致北斗信号捕获失败的情况。后来我调整了搜索步长,问题就解决了。

4.2 伪距与载波相位观测方程

这是定位的核心。伪距和载波相位,是接收机输出的两种基本观测量。很多初学者搞不清它们的区别,我简单解释一下。

伪距观测方程:

ρ = r + c·(δt_u - δt_s) + I + T + ε_ρ

其中:ρ是伪距测量值,r是卫星到接收机的几何距离,c是光速,δt_u是接收机钟差,δt_s是卫星钟差,I是电离层延迟,T是对流层延迟,ε_ρ是测量噪声。

载波相位观测方程:

φ = (r + c·(δt_u - δt_s) - I + T + λ·N) / λ + ε_φ

其中:φ是载波相位测量值(以周为单位),λ是载波波长,N是整周模糊度(整数),其他符号同伪距方程。

个人经验:伪距精度在米级,载波相位精度在厘米级。但载波相位有个整周模糊度问题,需要解算。我曾经在一个项目中,因为整周模糊度解算失败,导致RTK定位结果跳了半米。后来我改用LAMBDA算法,才稳定下来。

为什么伪距和载波相位的电离层延迟符号相反?因为伪距是群延迟,载波相位是相延迟,两者在电离层中的传播特性不同。这个细节,很多教材都没讲清楚。

4.3 单点定位与差分定位(RTK)原理

单点定位,就是只用一台接收机,解算自己的位置。精度一般在3-10米。差分定位,则是利用基准站和流动站的观测值做差,消除公共误差,精度可达厘米级。

单点定位(SPP):

  • 使用伪距观测值
  • 至少需要4颗卫星
  • 解算位置(x,y,z)和接收机钟差
  • 精度受电离层、对流层、星历误差影响

差分定位(RTK):

  • 使用载波相位观测值
  • 基准站和流动站做双差
  • 消除卫星钟差、接收机钟差、电离层延迟(短基线)
  • 需要解算整周模糊度

核心区别:单点定位是“绝对定位”,差分定位是“相对定位”。RTK的精髓在于,通过差分消除了大部分误差,剩下的就是整周模糊度和多路径。

我记得有一次在野外做RTK测试,基准站和流动站距离超过20公里,电离层延迟差异太大,双差后残差依然很大。后来我改用网络RTK(通过CORS站),才解决了这个问题。

4.4 卫星导航误差源分析

误差源分析,是组合导航工程师的基本功。你只有知道误差从哪里来,才能在融合滤波中合理设置噪声参数。

主要误差源:

误差源 典型量级 特性 消除方法
卫星钟差 1-5米 缓慢变化 广播星历修正、差分
星历误差 0.5-2米 缓慢变化 精密星历、差分
电离层延迟 2-20米(天顶) 与频率相关、白天大 双频改正、模型修正、差分
对流层延迟 2-25米(天顶) 与气象相关 模型修正(Saastamoinen、Hopfield)
多路径效应 0.5-5米 与周围环境相关 抗多径天线、扼流圈、信号处理
接收机噪声 0.1-0.5米(伪距) 随机噪声 滤波平滑

避坑指南:我曾经在一个城市峡谷项目中,多路径效应导致定位误差达到10米以上。当时我以为是卫星几何不好,后来发现是旁边玻璃幕墙反射的信号。从那以后,我每次做城市测试,都会先观察周围环境,必要时加装扼流圈天线。

电离层延迟,说白了就是信号穿过电离层时速度变了。白天太阳活动强,电离层电子密度大,延迟就大。双频接收机可以通过两个频率的观测值做无电离层组合,直接消除一阶电离层延迟。这个技术,在RTK和PPP中非常关键。

对流层延迟,则与温度、气压、湿度有关。我建议在组合导航中,至少使用Saastamoinen模型做干延迟修正,湿延迟可以用随机游走估计。嗯,这里要注意:对流层延迟在低仰角卫星上特别大,所以一般会设置15度或10度的仰角截止角。

多路径效应,是最头疼的误差。它不像电离层那样有规律可循,完全取决于环境。我常用的方法是:在信号处理层面,使用窄相关技术;在天线层面,使用扼流圈或抗多径天线;在算法层面,使用多路径检测和剔除。

4.5 知识体系总览

为了让大家更直观地理解本章的知识结构,我画了一张图。这张图展示了从信号结构到定位解算的完整链路。

卫星导航原理知识体系 GPS/北斗信号结构 载波 + 伪码 + 导航电文 观测方程 伪距方程 / 载波相位方程 定位方法 单点定位 / 差分定位(RTK) 误差源分析(贯穿始终) 电离层延迟 2-20米 对流层延迟 2-25米 多路径效应 0.5-5米 卫星/接收机钟差 1-5米 组合导航融合(IMU + GNSS) 利用误差特性,在滤波器中合理设置噪声参数 图4-1 卫星导航原理知识体系总览

这张图把本章的核心内容串起来了。从信号结构出发,到观测方程,再到定位方法,最后是误差源分析。你会发现,误差源分析是贯穿始终的——无论是单点定位还是RTK,都需要考虑这些误差。

我的建议:初学者可以先从单点定位入手,理解伪距方程和最小二乘解算。等熟悉了,再研究载波相位和RTK。不要一上来就啃整周模糊度,容易劝退。

好了,这一章的内容就到这里。卫星导航原理是组合导航的基础,后面的章节我们会基于这些原理,讨论如何与IMU进行深度融合。记住:理解误差源,才能做好融合。


公众号:蓝海资料掘金营,微信deep3321