1. 定位技术概述:从卫星信号到位置坐标

各位同学,咱们这门课叫《定位模块仿真联调实战》。第一节课,得先把地基打牢。说白了,就是搞清楚你手里的 GPS/北斗模块,到底是怎么算出你在哪儿的。

我刚开始做嵌入式定位项目时,也犯过嘀咕:不就是收个卫星信号吗?怎么还分那么多系统?精度还忽高忽低?后来踩了不少坑,才慢慢摸清门道。今天我就把这些经验掰开揉碎,跟你聊聊。

1.1 GNSS 定位原理:三球交汇与时间差

GNSS 的全称是全球导航卫星系统。它的核心原理,其实就一句话:通过测量卫星到接收机的距离,解算出接收机的位置。

怎么测距离?靠时间。卫星发射信号,接收机收到信号,记录下时间差。时间差乘以光速,就是距离。你想想看,如果知道一颗卫星的位置和它到你的距离,那你就在以这颗卫星为球心的球面上。知道两颗卫星,就缩小到两个球面的交线圆上。知道三颗卫星,就锁定到三个球面的两个交点上。其中一个交点在地球表面附近,那就是你的位置。

这就是经典的三球交汇原理。但实际中,接收机时钟和卫星时钟不同步,会引入误差。所以需要第四颗卫星来解算时间偏差。这就是为什么 GPS 至少需要 4 颗卫星才能定位。

核心公式: 伪距观测方程

ρ = r + c·Δt + ε

其中 ρ 是测量伪距,r 是真实几何距离,c 是光速,Δt 是钟差,ε 是其他误差。

我在项目中遇到过一个问题:明明搜到 8 颗星,定位却飘得厉害。后来排查发现,是其中几颗卫星仰角太低,信号穿过大气层路径太长,误差太大。所以实际定位时,不仅要看卫星数量,还要看卫星的几何分布。

1.2 四大全球卫星导航系统简介

目前全球有四大 GNSS 系统。我按个人习惯,把它们分成「老大哥」和「后起之秀」两类。

系统名称 所属国家/地区 卫星数量(约) 特点
GPS 美国 31 最成熟,民用 L1 频段,全球覆盖
北斗 中国 30 有短报文通信,三频信号
GLONASS 俄罗斯 24 频分多址,高纬度地区表现好
Galileo 欧盟 26 民用信号精度高,搜救功能

GPS 是资历最老的。从 1970 年代开始建设,1995 年全面运行。它的 L1 频段(1575.42 MHz)是所有民用接收机的基础。我记得早期做模块选型时,很多厂家只支持 GPS,现在基本都支持多系统了。

北斗 是后起之秀。2020 年完成全球组网。它有个独门绝技——短报文通信。在没手机信号的地方,可以用北斗发短信。我有个朋友做户外救援设备,就靠这个功能。

GLONASS 和 Galileo 各有千秋。GLONASS 用频分多址,抗干扰能力强一些。Galileo 的民用信号设计更现代,精度理论上比 GPS 民用信号高。

我的建议: 做产品选型时,优先选支持多系统(GPS+北斗+GLONASS)的模块。多系统融合能显著提高定位可用性和精度。我最近一个项目用了 GPS+北斗双模,在城市峡谷环境下,定位成功率从 60% 提升到了 85%。

1.3 定位精度与误差来源

定位精度不是固定的。它受很多因素影响。我把它分成三类:卫星端误差、传播路径误差、接收机端误差。

1.3.1 卫星端误差

  • 星历误差: 卫星播报的轨道位置不准。地面监控站会定期更新,但总有偏差。
  • 卫星钟差: 卫星上的原子钟也不是绝对精准。虽然地面会做修正,但残差依然存在。
  • 相对论效应: 卫星高速运动,时间会变慢。这个效应如果不修正,每天会累积约 38 微秒的误差,对应 11 公里的定位偏差。嗯,这里要注意,现代接收机固件里已经做了修正,但如果你自己写定位算法,千万别忘了。

1.3.2 传播路径误差

  • 电离层延迟: 电离层中的自由电子会减慢信号传播速度。这是最大的误差源之一。双频接收机可以消除大部分电离层误差。
  • 对流层延迟: 大气中的水汽和干空气也会影响信号。这个误差与温度、湿度、气压有关。
  • 多路径效应: 信号被建筑物、地面反射后进入接收机。我吃过这个亏。有一次在停车场测试,定位突然跳了 50 米。后来发现是旁边玻璃幕墙反射的信号干扰了直射信号。

1.3.3 接收机端误差

  • 接收机噪声: 硬件电路的热噪声、量化噪声等。
  • 天线相位中心偏差: 天线的电气中心与物理中心不重合。
  • 通道间偏差: 不同接收通道之间的硬件差异。

避坑指南: 我曾经在一个项目中,把接收机放在金属桌面上测试。结果定位精度一直很差。后来才发现,金属桌面严重干扰了天线接收。接收机天线一定要远离金属物体,最好放在开阔地带。

1.4 知识体系框架图

下面这张图,把本章的核心知识点串起来了。你可以把它当作一个思维导图。

定位技术概述知识框架 GNSS 定位技术 定位原理 三球交汇原理 伪距测量方程 至少 4 颗卫星解算 四大卫星系统 GPS(美国) 北斗(中国) GLONASS(俄罗斯) Galileo(欧盟) 误差来源 卫星端:星历/钟差 传播路径:电离层/对流层/多路径 接收机端:噪声/天线偏差 核心要点 多系统融合 + 误差建模 = 高精度定位 实际项目中,误差控制比算法本身更重要

1.5 小结

这一章我们聊了 GNSS 定位的基本原理,认识了四大卫星系统,也分析了误差从哪来。你可能会觉得内容有点多。没关系,后面每一章都会围绕这些基础展开。