上一篇我们讲了:
《为什么机器人能厘米级定位?------一篇讲透 GPS、北斗 与 RTK》
很多人已经知道:
普通 GPS:
3~10 米误差
RTK:
厘米级定位
但问题来了:
RTK 为什么能这么准?
它到底做了什么?
为什么同样都是接收卫星信号,
普通 GPS 只能到米级,
而 RTK 却能达到厘米级?
今天我们就从工程视角,
真正讲透:
RTK 的核心------差分定位。
一、先理解一个关键问题
RTK 的本质,
其实是在解决:
"GPS 误差"
上一篇我们提到:
普通 GPS 并不精准
误差通常:
3~10 米
甚至更大。
二、GPS 为什么会有误差?
很多人以为:
卫星定位应该非常准
实际上:
GPS 信号在传播过程中会受到很多影响。
三、GPS 的误差来源
这里是面试常问。
1. 大气层误差
卫星信号从太空传到地面,
会经过:
- 电离层
- 对流层
于是:
信号发生偏移
2. 多路径反射
城市中非常明显。
例如:
卫星信号
↓
高楼反射
↓
设备收到"绕路"信号
于是:
距离计算错误
3. 卫星自身误差
包括:
- 卫星时钟误差
- 轨道误差
4. 接收机误差
设备本身:
- 天线
- 芯片
- 算法
也会影响定位。
四、普通 GPS 为什么没法自己修正?
因为:
"设备不知道自己错了多少"
例如:
GPS 算出来:
当前位置:
(100, 100)
但真实位置可能是:
(103, 97)
问题是:
设备并不知道真实位置
所以:
无法纠错。
五、RTK 的核心思想
终于来到核心。
RTK 本质:
"找一个知道真实位置的人来帮你纠错"
这个"人":
就是:
基站(Base Station)
六、什么是 RTK 基站?
RTK 基站:
本质上是:
"位置固定且已知的 GPS 设备"
例如:
基站真实位置:
(100,100)
这个位置:
是提前精确测量好的。
七、基站是怎么发现误差的?
这是 RTK 最核心的地方。
1. 基站接收 GPS 信号
基站也会像普通 GPS 一样:
接收卫星数据。
2. GPS 计算当前位置
假设:
GPS 算出来:
(103,98)
但基站真实位置明明是:
(100,100)
于是:
基站立刻知道:
当前 GPS 存在误差
误差可能是:
x方向 +3米
y方向 -2米
八、RTK 差分的核心
关键来了。
基站会把:
当前误差
发送给机器人。
于是:
机器人就能:
"修正自己的 GPS 结果"
这就是:
差分(Differential)
九、RTK 工作流程(核心)
这是整篇最重要的图。
卫星
↓
基站(已知位置)
↓
计算误差
↓
发送差分数据
↓
移动设备(Rover)
↓
修正定位结果
↓
厘米级定位
十、为什么基站能帮机器人纠错?
因为:
"距离很近"
这是 RTK 的关键前提。
举例
如果:
基站和机器人距离较近
那么:
它们接收到的:
- 大气层误差
- 卫星误差
- 时钟误差
会非常接近。
因此:
基站测到的误差
≈
机器人测到的误差
于是:
基站的误差修正,
对机器人同样有效。
十一、为什么 RTK 能达到厘米级?
因为:
它不是:
单纯依赖 GPS 自己算位置
而是:
实时修正误差
所以:
精度会大幅提升。
十二、RTK 中两个高频概念
面试非常爱问。
1. Fix
固定解
厘米级精度
说明:
RTK 已经稳定完成解算。
这是理想状态。
2. Float
浮点解
精度较低
说明:
- 还没稳定
- 卫星不够
- 解算未完成
十三、为什么 RTK 有时候会失效?
很多人以为:
RTK 永远精准
其实不是。
十四、RTK 常见失效场景
1. 树木遮挡
树林里:
卫星信号会变差
2. 高楼遮挡
城市峡谷问题。
3. 多路径反射
信号被建筑物反弹。
4. 基站异常
差分数据错误。
5. 卫星数量不足
可见卫星太少。
十五、RTK 为什么常结合 IMU?
真实机器人里:
RTK 通常不是单独工作的。
而是:
RTK
+
IMU
+
编码器
原因:
RTK 不是时时刻刻都稳定
例如:
- 树林
- 隧道
- 高楼
会导致:
信号丢失
这时候:
IMU 可以短时间维持运动估计。
十六、RTK 在机器人中的真实系统
真实工程通常:
RTK模块
↓
NTRIP差分
↓
定位解算
↓
地图系统
↓
电子围栏
↓
路径规划
↓
机器人运动控制
所以:
RTK 只是:
"定位系统的一部分"
十七、RTK 中常见协议(了解)
工程里经常看到:
| 协议 | 作用 |
|---|---|
| NMEA | 定位数据 |
| RTCM | 差分数据 |
| NTRIP | 网络传输差分 |
十八、工程里 Android / IoT 怎么接 RTK?
通常:
RTK模块
↓
串口 / 蓝牙 / TCP
↓
Android解析
↓
地图显示
很多机器人:
实际上就是:
Android 在做上层定位系统。
十九、面试怎么回答 RTK 差分?
推荐回答:
标准答案(面试版)
RTK 的核心是差分定位。
它通过固定基站计算 GPS 当前误差,
再把误差数据发送给移动端,
移动端利用差分数据修正自己的定位结果,
从而实现厘米级定位。
因为基站与移动端距离较近,
它们受到的大气层、
卫星误差等影响非常接近,
所以基站误差可以用于移动端修正。
二十、总结
一句话总结:
GPS 负责"算位置"
RTK 负责"修正误差"
本质:
普通 GPS:
自己算
RTK:
别人帮你纠错
这就是:
RTK 能达到厘米级定位的核心原因。
下篇预告
下一篇我们继续:
《机器人为什么会"漂"?------RTK 漂移问题详解》
深入讲透:
- 为什么 RTK 也会漂
- 多路径反射是什么
- 树木为什么影响定位
- 城市峡谷问题
- 为什么机器人会突然"跳点"
- IMU 为什么必须融合
这些才是真实工程中的核心问题。