2. GPS定位原理回顾:信号组成、伪距测量、定位解算过程、影响定位精度的因素
做定位漂移优化这么多年,我见过太多人一上来就调滤波参数、改传感器融合策略,结果漂移反而更严重。为什么?因为没搞懂GPS到底是怎么算出位置的。说白了,你不了解定位的底层原理,就永远不知道漂移的根因在哪。
这一章,我带你把GPS定位的完整链路走一遍。从卫星发出来的信号长什么样,到手机怎么算出经纬度,再到哪些环节最容易引入误差。嗯,这些都是后面讲漂移治理的基础。
2.1 GPS信号组成:卫星到底在广播什么?
每颗GPS卫星都在不停地往外发信号。这个信号里包含三样东西:
- 载波:L1频段(1575.42 MHz)和L2频段(1227.60 MHz)。L1上调制了C/A码和导航电文,L2主要用于军用和双频校正。
- 测距码:C/A码(粗捕获码),码长1023个码片,周期1毫秒。每个卫星有自己唯一的C/A码,接收机靠这个区分是哪颗卫星在说话。
- 导航电文:每秒50比特,包含卫星星历(轨道参数)、卫星钟差校正参数、电离层延迟参数、历书(所有卫星的概略轨道)等。
2.2 伪距测量:距离是怎么算出来的?
接收机测量卫星信号从卫星到接收机的传播时间,乘以光速,就得到了距离。但这里有个坑——卫星时钟和接收机时钟不同步。
卫星上装的是原子钟,精度极高。接收机里用的是石英钟,便宜但会飘。所以测出来的距离不是真实距离,而是带钟差误差的「伪距」。
伪距观测方程长这样:
ρ = r + c·(δt_u - δt_s) + I + T + ε
其中:
- ρ:伪距观测值
- r:卫星到接收机的真实几何距离
- c:光速
- δt_u:接收机钟差
- δt_s:卫星钟差(广播星历中会给出校正参数)
- I:电离层延迟
- T:对流层延迟
- ε:多路径效应、接收机噪声等其他误差
2.3 定位解算过程:从伪距到经纬度
接收机拿到至少4颗卫星的伪距观测值后,开始解算位置。这个过程我拆成三步来讲:
- 卫星位置计算:从导航电文中提取星历参数,代入轨道模型,算出每颗卫星在发射信号时刻的ECEF坐标(地心地固坐标系)。
- 建立观测方程组:每颗卫星提供一个伪距方程,未知数是接收机三维坐标(x, y, z)和接收机钟差δt_u,共4个未知数。
- 最小二乘迭代求解:方程组是非线性的,需要用牛顿-拉夫森法或最小二乘法迭代求解。一般迭代3-5次就能收敛。
解出来的坐标是ECEF下的,再通过坐标转换变成我们熟悉的经纬度和海拔。
关键点:定位解算的精度高度依赖伪距观测值的质量。如果某颗卫星的伪距误差很大(比如多路径严重),它会像「一颗老鼠屎坏了一锅粥」一样拉偏整个解算结果。这就是为什么高端接收机在做定位解算前会先做RAIM(接收机自主完好性监测),把异常卫星剔除掉。
下面这张图展示了从卫星信号到最终定位输出的完整流程:
2.4 影响定位精度的因素:漂移从哪来?
你想想看,GPS信号从两万公里外的卫星发出来,穿过电离层、对流层,经过高楼反射,最后落到你手机那个小天线里。这一路上每一步都在引入误差。我把主要因素整理成了一张表:
| 误差来源 | 典型误差量级 | 对漂移的影响 | 缓解手段 |
|---|---|---|---|
| 卫星钟差 | 1-2米 | 系统性偏差,所有卫星共有的误差 | 广播星历中的钟差校正参数 |
| 星历误差 | 1-3米 | 卫星轨道预测不准导致位置计算偏差 | 使用精密星历(事后)或实时差分 |
| 电离层延迟 | 5-15米(白天) | 信号穿过电离层时折射,白天比晚上严重 | 双频接收机、电离层模型校正 |
| 对流层延迟 | 2-6米 | 低仰角卫星影响更大 | 对流层模型(如Saastamoinen模型) |
| 多路径效应 | 1-10米(极端可达50米) | 信号反射后与直射信号叠加,伪距测量出现尖峰误差 | 扼流圈天线、仰角屏蔽、多路径检测算法 |
| 接收机噪声 | 0.5-1米 | 随机抖动,每次定位结果都不一样 | 高质量射频前端、载波平滑伪距 |
| 几何精度因子(DOP) | 放大倍数(GDOP通常1-6) | 卫星几何分布差时,误差被放大数倍 | 选择卫星子集优化GDOP |
2.5 几何精度因子(DOP):为什么有时候定位特别差?
DOP这个概念,我单独拿出来讲。因为它不是误差本身,而是误差的「放大器」。
DOP值反映的是卫星在天空中的几何分布质量。如果卫星分布很散(一颗在东边,一颗在西边,一颗在南边,一颗在头顶),DOP值就小,定位精度好。如果卫星都挤在一个方向,DOP值就大,定位精度差。
常见的DOP类型:
- GDOP(几何精度因子):综合位置和时间精度
- PDOP(位置精度因子):三维位置精度
- HDOP(水平精度因子):水平方向精度——这个对导航最直接
- VDOP(垂直精度因子):高程精度——通常比HDOP大1.5-2倍
好了,GPS定位原理这部分就讲到这里。你理解了信号怎么来、距离怎么测、位置怎么算、误差从哪来,后面再讲漂移治理的时候,我提到「多路径抑制」「电离层校正」「DOP加权」这些概念,你就知道它们是在解决哪个环节的问题了。