4. 卫星导航基础:GPS/北斗信号结构、伪距与载波相位观测、单点定位与RTK定位原理

各位同学,今天我们来聊聊卫星导航的底层逻辑。说实话,很多做组合导航的工程师,对卫星信号的理解停留在「能定位就行」的层面。但真正遇到多径、周跳、信号遮挡这些坑时,你会发现——不懂信号结构,你连问题出在哪都找不到。

我个人习惯把卫星导航拆成三块来看:信号长什么样我们能测到什么怎么算出位置。咱们一个一个说。

4.1 GPS/北斗信号结构:从卫星到天线的旅程

卫星信号说白了就是电磁波,但它不是裸奔的。GPS和北斗都用了码分多址(CDMA)技术。什么意思?就是所有卫星都在同一个频率上喊话,但每颗卫星有自己的「暗号」——伪随机码。

GPS的L1频段(1575.42 MHz)上,调制着两种码:C/A码(粗捕获码)和P(Y)码(精密码)。C/A码是民用的,码速率1.023 MHz,周期1毫秒。北斗的B1I信号类似,码速率2.046 MHz。嗯,这里要注意:北斗的码长更长,捕获难度其实比GPS大一点。

核心概念:卫星信号 = 载波 + 测距码 + 导航电文

  • 载波:高频正弦波,负责把信息带下来
  • 测距码:伪随机序列,用来测距离
  • 导航电文:卫星星历、钟差、电离层参数等「说明书」

我在项目中遇到过一件事:某次测试,定位精度突然从厘米级掉到米级。排查了半天,发现是接收机跟踪的卫星信号从L1C/A跳到了L2C,而我们的算法没做频间偏差补偿。说白了,不同频段的信号经过硬件时,延迟是不一样的。这个坑,很多新手会踩。

4.2 伪距与载波相位观测:两个尺子,一个粗一个精

接收机能给我们两种观测值:伪距载波相位。你可以把它们想象成两把尺子。

伪距:用测距码来量。码元宽度约300米(C/A码),所以伪距的噪声在米级。优点是没有整周模糊度,直接就能用。缺点是精度低。

载波相位:用载波波长来量。L1波长19厘米,精度能到毫米级。但问题来了——接收机只能测到不足一整周的小数部分,整周数N是未知的。这就是著名的整周模糊度问题。

我的经验:伪距和载波相位要配合使用。伪距提供初始位置,载波相位提供精细修正。就像你用卷尺量房间长度,先用米尺粗测,再用游标卡尺精读。

伪距观测方程长这样:

ρ = r + c*(dt_r - dt_s) + I + T + ε

其中ρ是伪距观测值,r是真实几何距离,dt_r和dt_s是接收机和卫星钟差,I和T是电离层和对流层延迟,ε是噪声。

载波相位观测方程:

φ = (r + c*(dt_r - dt_s) - I + T)/λ + N + ε

注意电离层项符号相反!这是因为载波相位受电离层影响是「超前」的,而伪距是「延迟」的。这个细节,做双频组合时特别重要。

4.3 单点定位:最朴素的定位方式

单点定位(SPP),就是只用一台接收机,解算自己的位置。原理很简单:四颗卫星,四个方程,解四个未知数(x,y,z,dt_r)

但实际做起来,你会发现精度只有5-10米。为什么?因为误差源太多了:

  • 卫星钟差:虽然广播星历给了修正参数,但残差还有几纳秒
  • 电离层延迟:单频接收机只能用模型修正,效果一般
  • 对流层延迟:干分量好修,湿分量难搞
  • 多径效应:信号反射导致测距偏差,这是最头疼的

我曾经在立交桥下做测试,单点定位结果直接飘了30米。后来分析数据发现,有颗卫星的信号被桥体反射了三次才到天线。嗯,多径是城市环境下的头号杀手。

避坑指南:单点定位时,一定要检查卫星的仰角和信噪比。我习惯把仰角低于10度、信噪比低于35 dB-Hz的卫星直接剔除。虽然卫星少了,但定位结果反而更稳。

4.4 RTK定位:用差分干掉公共误差

RTK(实时动态差分定位)的原理,说白了就是「你错我也错,咱俩一减就对了」。

基准站放在已知坐标点上,它算出自己的伪距/载波相位观测值与真实值的差异,然后通过数据链发给流动站。流动站用这个差分修正,就能把公共误差(卫星钟差、电离层、对流层)几乎全部消除。

RTK的核心是整周模糊度固定。一旦固定成功,定位精度就能到厘米级。固定失败的话,就只能用浮点解,精度掉到分米甚至米级。

我画了一张图,帮你理解RTK的流程:

RTK定位核心流程 卫星 公共误差路径 基准站 已知坐标 (x₀,y₀,z₀) 流动站 待求坐标 (x,y,z) 差分修正数据 双差观测值 → 整周模糊度固定 → 位置解算 关键:消除卫星钟差、接收机钟差、电离层/对流层延迟 厘米级定位结果

RTK的关键技术点有三个:

  1. 双差观测:站间差分消除接收机钟差,星间差分消除卫星钟差
  2. 模糊度搜索:常用LAMBDA算法,在整数域里搜索最优的N值
  3. 周跳检测:载波相位一旦失锁,整周计数就会跳变,必须检测并修复

我的建议:做RTK时,一定要关注Ratio值(最优解与次优解的比值)。我一般要求Ratio > 3.0才认为固定成功。如果Ratio在2.0-3.0之间,我会用部分固定策略——只固定那些置信度高的卫星,剩下的用浮点解。

最后说一句,RTK不是万能的。在城市峡谷、隧道、高架桥下,卫星信号被遮挡,RTK很容易失锁。这时候就需要组合导航来救场了——这也是我们这门课后面要讲的重点。

好了,卫星导航的基础就聊到这儿。记住:信号结构决定你能测到什么,观测值决定你能算多准,定位算法决定你能用多稳。这三层,一层都不能少。


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