2、GNSS定位原理:卫星定位基础、伪距测量、载波相位、定位误差源
2.1 卫星定位基础:四颗卫星就能定你的位?
很多人问我,为什么手机导航需要搜到至少4颗卫星?其实说白了,这是个三维空间里的几何问题。
你想想看,在三维空间里确定一个点,需要三个坐标:经度、纬度、高度。但卫星定位有个特殊之处——接收机的时间通常不准。民用接收机的时钟精度远不如卫星上的原子钟,这就引入了第四个未知数:钟差。
所以,我们实际上要解四个方程:
- X、Y、Z(位置坐标)
- Δt(接收机钟差)
四颗卫星,正好提供四个距离观测值。这就是“四星定位”的根本原因。我个人习惯把这个过程叫做“空间交会”——就像用四根已知长度的绳子,在太空中找到它们的交汇点。
核心公式:
ρi = √[(xi - x)2 + (yi - y)2 + (zi - z)2] + c · Δt
其中ρi是第i颗卫星的伪距观测值,(xi, yi, zi)是卫星坐标,c是光速。
2.2 伪距测量:最简单的距离测量方式
伪距测量,是GNSS定位最基础的手段。它的原理其实很直观:
卫星发射一个信号,接收机收到它。记录下信号从卫星到接收机飞了多长时间,乘以光速,就是距离。嗯,这里要注意——这个“距离”并不真实,因为它包含了各种误差,所以我们叫它“伪距”。
我在项目中遇到过这样一个坑:某款低成本接收机,伪距测量噪声特别大,定位结果跳来跳去。后来发现是码跟踪环路的带宽设置太宽了。调窄之后,伪距精度明显提升。
伪距测量的关键参数:
| 参数 | 典型值 | 说明 |
|---|---|---|
| C/A码码片宽度 | 293.05米 | GPS L1 C/A码的一个码片对应的距离 |
| 伪距测量精度 | 1-3米(民用) | 受多径、噪声等因素影响 |
| 码跟踪环带宽 | 0.1-2 Hz | 带宽越窄,噪声越小,但动态响应越慢 |
避坑指南:我曾经调试一个车载定位模块,发现伪距测量值总是偏大。排查了三天,最后发现是天线电缆的延迟没补偿。记住,电缆延迟会直接叠加到伪距上,1米电缆大约带来5纳秒的延迟。
2.3 载波相位测量:厘米级精度的秘密武器
伪距测量精度在米级,对于很多应用来说不够。那怎么办?用载波相位。
载波相位的原理,说白了就是测量卫星信号载波的相位变化。GPS L1的载波频率是1575.42 MHz,波长大约19厘米。如果能精确测量相位到0.01周,理论上就能达到毫米级的精度。
但这里有个大问题——整周模糊度。你只能测量相位的小数部分,不知道信号传播过程中经历了多少个整周。这就好比你知道自己走了0.3圈操场,但不知道总共走了多少圈。
为什么会这样?因为接收机刚开机时,不知道卫星信号的初始相位。我刚开始做RTK(实时动态差分定位)时,最头疼的就是解算整周模糊度。后来总结了一套经验:
- 先用伪距做个粗定位,把模糊度范围缩小到几十周内
- 用LAMBDA算法搜索最优的整数解
- 用Ratio值检验解的正确性(Ratio > 3才算可靠)
载波相位观测方程:
Φ = ρ + c · (dtr - dts) + λ · N + εΦ
其中Φ是载波相位观测值(以周为单位),λ是波长,N是整周模糊度,εΦ是相位噪声(通常只有几毫米)。
2.4 定位误差源:谁在偷走你的定位精度?
定位误差源,我把它分成三大类:卫星端、传播路径端、接收机端。每一类都有各自的“捣乱分子”。
2.4.1 卫星端误差
- 星历误差:卫星广播的轨道参数不准确。我记得有一次用某颗老卫星的数据,定位结果偏了十几米。后来查了星历的年龄,已经超过4小时了。
- 卫星钟差:虽然卫星有原子钟,但依然存在漂移。地面监控站会定期修正,但修正后的残差仍有1-2纳秒。
- 相对论效应:卫星在高速运动,时间会变慢。这个效应如果不补偿,每天会累积约38微秒的误差,对应11公里的距离误差。
2.4.2 传播路径误差
这是最让人头疼的部分。我做过一个测试:在开阔地带定位精度2米,到了城市峡谷直接跳到15米。罪魁祸首就是多径效应。
| 误差源 | 典型大小 | 应对方法 |
|---|---|---|
| 电离层延迟 | 2-10米(白天) | 双频消除、模型修正 |
| 对流层延迟 | 2-25米 | 模型修正(如Saastamoinen模型) |
| 多径效应 | 0.5-50米 | 扼流圈天线、窄相关技术 |
注意:多径效应是城市环境定位精度的头号杀手。我曾经在深圳华强北测试,多径误差最大达到过80米。这种情况下,任何算法都救不了,唯一的办法是换天线位置。
2.4.3 接收机端误差
- 接收机噪声:热噪声、量化噪声等。好的接收机噪声水平在0.5米以内,差的能到3米。
- 天线相位中心变化:天线接收信号的位置不是固定的,随卫星仰角变化。高端天线会标定这个参数。
- 通道间偏差:不同卫星信号经过不同通道处理,会产生微小差异。
2.5 知识体系总览
下面这张图,是我自己总结的GNSS定位原理知识框架。每次带新人时,我都会先让他们看这张图,建立整体认知。
个人经验:我建议初学者先吃透伪距测量,再攻克载波相位。伪距是基础,载波相位是进阶。很多定位漂移问题,根源都在伪距质量上。先把伪距搞干净了,再谈厘米级定位。
好了,这一章的内容就到这里。定位原理是后面所有诊断和修复工作的基础。下一章我们会深入讨论具体的漂移现象和诊断方法。