2. GNSS基础原理

各位同学,今天我们来聊聊GNSS的底层逻辑。说实话,刚入行那会儿,我也被GPS、北斗这些名词搞得晕头转向。但干久了你会发现,万变不离其宗——所有定位系统,本质上都是在回答三个问题:卫星在哪?信号怎么传?距离怎么算?

2.1 四大全球导航卫星系统概览

目前全球有四大GNSS系统在运行。我习惯把它们比作四个“星座家族”,各有各的性格。

系统 国家 卫星数量(约) 轨道高度 特点
GPS 美国 31颗 20200 km 最成熟,民用普及度最高
北斗 中国 30颗 21500 km + GEO/IGSO 有短报文通信,亚太区域优势明显
GLONASS 俄罗斯 24颗 19100 km 频分多址,高纬度覆盖好
Galileo 欧盟 24颗(在轨) 23222 km 民用信号精度高,抗干扰强

你可能会问:为什么要有这么多系统?说白了,多系统融合能显著提升定位的可靠性和精度。我在做城市峡谷测试时遇到过这种情况——单GPS在楼宇间只能看到4颗星,加上北斗后能搜到10颗以上,定位瞬间稳了。

2.2 卫星轨道与星座设计

卫星不是随便扔到天上就行的。轨道设计直接决定了你的接收机在什么时间、什么地点能收到信号。

2.2.1 轨道参数与类型

描述卫星轨道,我们常用六个开普勒轨道根数。嗯,这里不展开数学推导,你只需要记住:轨道高度、倾角、偏心率这三个参数最影响实际使用。

  • MEO(中地球轨道):GPS、北斗、GLONASS、Galileo的主力轨道。高度约2万公里,周期约12小时。
  • GEO(地球静止轨道):北斗的特色。卫星相对地面静止,适合区域增强。
  • IGSO(倾斜地球同步轨道):北斗独有。像“8”字形在亚太上空摆动,提升高纬度覆盖。

核心知识点:卫星星座设计的目标是保证全球任意地点、任意时刻至少能看到4颗卫星。GPS用了6个轨道面,每个面4颗星;北斗则混合了MEO+GEO+IGSO,实现了亚太区域的“五星级”覆盖。

2.2.2 星座设计的避坑指南

我曾经参与过一个项目,只用了GPS单系统做高精度定位。结果在下午3点到4点之间,PDOP值突然飙到8以上——说白了就是卫星几何构型太差,定位精度直接崩了。后来我们加入了北斗和Galileo,PDOP值稳定在2以下。

所以我的建议是:能用多系统就别用单系统。星座设计再完美,也架不住高楼遮挡和几何衰减。

2.3 伪距测量原理

伪距测量是GNSS最基础的测距方式。你想想看,接收机怎么知道卫星离自己多远?

原理其实很简单:距离 = 信号传播时间 × 光速。但问题来了——卫星时钟和接收机时钟不同步,测出来的时间差里包含了钟差,所以叫“伪距”。

2.3.1 伪距观测方程

伪距观测方程长这样:

P = ρ + c·(dt_r - dt_s) + I + T + ε

其中:

  • P:伪距观测值
  • ρ:卫星到接收机的几何距离
  • c:光速
  • dt_r:接收机钟差
  • dt_s:卫星钟差
  • I:电离层延迟
  • T:对流层延迟
  • ε:其他误差(多路径、噪声等)

说白了,伪距测量就是“带误差的距离”。但别小看它——伪距的优点是稳定、无模糊度,单点定位全靠它。

我的经验:伪距测量受电离层影响很大。白天和晚上的伪距误差能差好几米。如果你做的是普通导航,用双频接收机能直接消除电离层误差——这是我最推荐的方案。

2.4 载波相位测量原理

伪距精度在米级,但载波相位能把精度推到厘米甚至毫米级。为什么?因为载波的波长更短——GPS L1载波波长约19厘米,相位测量精度可达波长的1%左右。

2.4.1 载波相位观测方程

载波相位观测方程:

Φ = ρ + c·(dt_r - dt_s) - I + T + λ·N + ε

注意这里多了一个 λ·N——整周模糊度。这是载波相位测量最头疼的问题。

你想想看,接收机只能测量载波的小数部分,整数部分(N)是未知的。不解决这个模糊度,你就没法得到精确距离。

2.4.2 整周模糊度解算

解算模糊度的方法有很多,我常用的有:

  • LAMBDA方法:最小二乘模糊度降相关平差。业内标准做法。
  • 三差法:通过差分消除模糊度,但会放大噪声。
  • 已知基线法:如果基线长度已知,可以直接反算模糊度。

注意:载波相位测量还有一个坑——周跳。信号短暂失锁后,整周计数会跳变。我曾经在动态测试中遇到过连续周跳,解算结果直接发散。解决办法是:用双频数据检测周跳,或者用高采样率(10Hz以上)降低失锁概率。

2.5 伪距 vs 载波相位:怎么选?

对比项 伪距 载波相位
精度 米级(1-10米) 厘米级(1-2厘米)
模糊度 无 有(需解算)
周跳 无 有(需检测修复)
适用场景 普通导航、单点定位 高精度测量、RTK、PPP
抗干扰能力 较强 较弱(易受多路径影响)

我的建议是:能用载波相位就用载波相位,但一定要做好模糊度解算和周跳处理。如果条件不允许(比如信号遮挡严重),退而求其次用伪距+滤波也能凑合。

2.6 本章知识体系图

下面这张图帮你理清本章的核心逻辑:

GNSS基础原理知识体系 四大GNSS系统 卫星轨道与星座 伪距测量 载波相位测量 GPS / 北斗 GLONASS / Galileo 多系统融合 提升可靠性与精度 MEO / GEO / IGSO 轨道参数与覆盖 PDOP几何精度因子 星座设计避坑 伪距观测方程 P = ρ + c·dt + I + T 米级精度 无模糊度、稳定 载波相位方程 Φ = ρ + λ·N + ... 厘米级精度 需解算整周模糊度 核心挑战:误差源 → 电离层/对流层/多路径/钟差/噪声 普通导航:伪距为主 高精度定位:载波相位+RTK/PPP

这张图把本章的核心逻辑串起来了。你从上往下看:先了解四大系统,再理解轨道设计,然后掌握两种测距方法,最后落到实际应用。每个环节都有坑,但每个坑也都有解法。

总结一句话:GNSS定位的本质是“测距+解算”。伪距给你一个大概位置,载波相位给你精确位置。两者结合,再加上多系统融合,才能在各种环境下都拿到可靠的结果。