2、全球导航卫星系统(GNSS)基础:GNSS系统组成、定位原理、误差源分析

各位同学好,我是老张。今天咱们聊聊GNSS,也就是全球导航卫星系统。说实话,搞自动驾驶这些年,我见过太多人把GNSS想得太简单,觉得不就是个GPS嘛。其实这里面的门道,比你想象的多得多。

2.1 GNSS系统组成:天上飞的,地上跑的,手里拿的

GNSS系统说白了,就是三大部分:空间段、地面段、用户段。我习惯叫它们「天上的、地上的、手里的」。

2.1.1 空间段——卫星星座

目前全球有四大卫星导航系统:

  • GPS(美国):24颗卫星,全球覆盖最成熟。我记得2010年第一次做车载导航时,用的就是GPS L1频段,那时候精度也就10米左右。
  • 北斗(中国):目前有30多颗卫星,特色是短报文通信。我在项目里用过北斗+GPS双频,效果确实比单GPS好。
  • GLONASS(俄罗斯):24颗卫星,频率分多址。说实话,早期GLONASS的稳定性一般,但近几年改善不少。
  • 伽利略(欧盟):目前30颗左右,精度号称1米以内。我还没在实际量产车上用过,但测试过,确实不错。

关键点:自动驾驶中,我们通常使用多系统融合。比如GPS+北斗+GLONASS,这样卫星数量多,遮挡环境下也能保持定位。

2.1.2 地面段——监控站和主控站

地面段负责监控卫星状态、上传星历、修正时间。说白了,就是给卫星「擦屁股」的。卫星在天上飞,轨道会漂,时钟会偏,地面段就是干这个的。

2.1.3 用户段——接收机

这就是咱们车上的GNSS接收机。我建议选接收机时,重点关注三点:

  • 频点支持:至少支持L1/L2双频,最好支持L5
  • 通道数:至少72通道,越多越好
  • 更新率:自动驾驶至少10Hz,最好20Hz

2.2 定位原理:三球交汇,没那么玄乎

GNSS定位原理,说白了就是「三球交汇」。你想想看,如果你知道卫星A离你多远,卫星B离你多远,卫星C离你多远,那你的位置不就是三个球的交点吗?

具体来说:

  1. 卫星发射信号,包含卫星位置和发射时间
  2. 接收机收到信号,记录到达时间
  3. 时间差 × 光速 = 距离
  4. 至少4颗卫星,解算出三维位置+时间

避坑指南:我曾经犯过一个低级错误——以为3颗卫星就够了。实际上,因为接收机时钟和卫星时钟不同步,需要第4颗卫星来解算钟差。所以最少需要4颗卫星才能定位。

定位方程其实很简单:

// 伪距观测方程
ρ_i = sqrt((x - x_i)² + (y - y_i)² + (z - z_i)²) + c * Δt

其中:
ρ_i:第i颗卫星的伪距观测值
(x, y, z):接收机位置(未知)
(x_i, y_i, z_i):第i颗卫星位置(已知)
c:光速
Δt:接收机钟差(未知)

嗯,这里要注意,实际解算时用的是最小二乘法或者卡尔曼滤波。我习惯用卡尔曼滤波,因为可以结合IMU做组合导航,效果更好。

2.3 误差源分析:为什么GNSS不准?

这个问题我经常被问到。说白了,GNSS误差来源主要有这几类:

2.3.1 卫星端误差

  • 星历误差:卫星轨道预报不准。我记得有一次项目测试,发现定位突然跳了5米,查了半天是星历更新延迟了。
  • 卫星钟差:卫星上的原子钟也会漂移。虽然地面段会修正,但修正值本身也有误差。

2.3.2 传播路径误差

  • 电离层延迟:信号穿过电离层时,速度会变慢。双频接收机可以消除这个误差,单频机只能靠模型修正。
  • 对流层延迟:大气中的水汽、温度变化也会影响信号。这个误差在低仰角卫星上尤其明显。
  • 多路径效应:信号反射后到达接收机,造成测距误差。这是城市峡谷中最头疼的问题。

警告:多路径效应是自动驾驶的「隐形杀手」。我曾经在隧道出口处遇到过,GNSS定位突然跳了10米,差点导致车辆变道到错误车道。所以一定要结合IMU和轮速计做融合。

2.3.3 接收机端误差

  • 接收机噪声:硬件本身的噪声,一般0.5-1米
  • 天线相位中心变化:天线接收信号的位置会随方向变化

2.4 知识体系总览

下面这张图是我自己画的,把GNSS的核心逻辑串起来了。你仔细看看,应该能一目了然。

GNSS知识体系总览 空间段(卫星) 地面段(监控站) 用户段(接收机) 定位原理:三球交汇 卫星位置已知 → 测距(伪距) → 解算(最小二乘/卡尔曼滤波) → 位置+时间 卫星端误差 传播路径误差 接收机端误差 星历误差 卫星钟差 电离层延迟 对流层延迟 多路径效应 接收机噪声 天线相位中心变化 核心思路:多系统融合 + 差分修正 + 组合导航 = 厘米级定位 GPS + 北斗 + GLONASS + 伽利略 | RTK/PPP | GNSS + IMU + 轮速计

2.5 实际项目中的经验总结

最后,我分享几个实际项目中的经验:

场景 常见问题 我的建议
城市峡谷 卫星遮挡严重,定位跳变 使用多系统融合,结合IMU做航位推算
隧道 完全无GNSS信号 提前预判,切换到IMU+轮速计模式
高架桥下 多路径效应严重 使用抗多路径天线,降低低仰角卫星权重
开阔道路 精度一般 使用RTK差分,精度可达厘米级

核心总结:GNSS不是万能的,但没有GNSS是万万不能的。在自动驾驶中,GNSS提供绝对位置基准,IMU提供相对位置推算,两者结合才是王道。我做了这么多年,最大的体会就是——别迷信任何一个传感器,融合才是出路。

专注资料整理