酷安APP 发现科技新生活

【图文科普】GPS是如何做到准确定位的?

和魔理沙结婚

2024-04-23 Windows11

引言:目前的民用级卫星定位在GPS III和各种辅助技术的加持下已经可以做到车道级别的精度了(2m以内)。打开搜索引擎关于它们原理的介绍很多都是停留在软文级别的参数和象征意义升华,很少有浅显易懂的底层原理介绍。今天我们就结合一些公开信息,来介绍GPS及其类似技术的底层原理。希望能帮助大家更好的理解这个改变我们生活的技术,在底层是如何运作的。

文章省流:
GPS定位的步骤:(1)接收卫星信号(2)对电磁波信号进行解算。

正文:
现在只需 1999元你就可以买到一个支持双频GPS定位的智能手机,它能帮你在驾驶时实现车道级的定位。

1999元就能买到支持双频GPS的手机

1.什么是GPS?
之前我写过一篇介绍最新版GPS III的文章
查看链接
有兴趣的可以去看看,这里就简单说一下:
GPS是全球定位系统(英文:Global Positioning System)的英文首字母缩写,是美国研制发射的一种以人造地球卫星为基础的高精度无线电导航的定位系统。

2.它们是如何定位的?
简单说起来就两个步骤:接收卫星信号、解算信号。
(1)第一步信号的接收
我们以初代GPS为例,发射在 6 个轨道平面的 24 颗卫星,可以保证在地球的任何地点都可以至少收到其中 4 颗的信息。而通过卫星位置、接收时间和时间差,可以在空间中画出至少三个球面,收取信号的位置就在球面的交汇点上。

GPS大致原理示意图

(2)第二步信号的解算
注:充分理解原理可能需要初中物理和高中数学的知识。
当你在地球上某个位置,拿着一个可以接收卫星信号的设备,比如手机,而天上飞着卫星,此时想要求取你在空间中的坐标 x、y、z,关键是测量卫星跟你之间的距离 S。
首先,通过卫星的星历数据能计算出卫星的坐标 x1、y1、z1,这些是已知的。

根据收到的卫星报文及星历获取卫星的坐标

只需要根据勾股定理求立方体的对角线长度,就能用这个式子表示卫星跟你之间的距离 S。
其次,卫星发出的电磁波信号也能测距。已知电磁波传播的速度,光速 c 每秒近 30 万公里(299 792 458 m/s),乘上电磁波从卫星发出到手机接收所耗费的时间 tB-tA, 即为距离。

根据光速及时间差测得到卫星的距离

这个时间和距离的计算实际上要靠测距码。
卫星和手机会同时按相同规则持续生成一段测距码,而卫星会将测距码通过电磁波发送给手机。
但发送过程需要时间,所以手机接收到卫星发来的测距码时,会发现和自己生成的测距码有偏移,即为电磁波传播的时间。

利用测距码计算时间差

以GPS的 L1C 信号为例,测距码速率为 1.023 Mbps,周期1ms,单个码片的宽度为速率的倒数,约1 μs。当偏移了 12 万个码片,即电磁波传播时间约为 0.117 秒,可算出距离约为 35166 公里。

知道距离,就可以得到这个等式,其中三个未知量 x、y、z 仍然无法求解。但只要有 3 颗卫星,就能列出 3 个等式构成方程组,进而求出你的坐标 x、y、z。

通过3个卫星的数据列出3个联立方程组(红色为未知数)

看起来似乎轻松又简单,然而,得到这样的坐标根本不准。

因为里面任何参数哪怕再小的误差都会让定位大幅偏移,比如电磁波传播的时间,只要 0.000 001 秒的误差,计算距离就会变化 300 米。

为了减小这个误差,我们首先得考虑在卫星上的钟准不准。

GPS卫星上搭载了高精度的原子钟

GPS卫星上搭载的原子钟,精度可达 300 万年只差一秒,但在太空中运行,它却会遭遇相对论效应(卫星绕地球运行的速度非常快,已经产生了足以影响精度的狭义相对论钟慢效应)。

高速运动的卫星产生的相对论效应对精度有不可忽略的影响

简单来说,根据狭义相对论,卫星相对地面快速运动,那么从地面观测卫星上的时间会变慢。

而根据广义相对论,卫星相比地面离地心更远,拥有的引力势能绝对值也更小,时间又会比地面更快。

两者对卫星上时钟的综合影响就是比地面上的钟走得更快,其变化量可以用这个公式表示。

引入参数量化相对论效应的影响

那么如何才能消去这个变化量呢?
公式的前半部分可以通过地心引力常数 μ、光速 c 等数值计算得出。假设卫星在距离地心 36 000 公里的圆轨道运行,那么卫星上的时间会比地面每秒快上 0.000 000 000 51 秒左右。
消除这部分的变化量可以在卫星发射之前就按一定倍数先调低卫星上原子钟的频率,让它走得更慢。

根据地面计算和轨道测量的数据调低原子钟频率

但卫星实际运行的轨道其实是椭圆,由相对论效应引发的变化会有周期性变化,主要是公式的后半部分。
当然,这也可以通过轨道偏心率、长半轴、偏近点角等参数计算得出数值实时修正。

用多参数对Δf进行修正

但这还不够,原子钟在无人维护情况下本身运行时仍有误差,卫星坐标在计算时也有误差,电磁波在大气中传播时受电离层、对流层影响速度也会变化。

不过别担心,今天已经有各种各样的数学模型可以计算出这些误差的数值。

考虑大气层层折射修正公式的联立方程组

然而,还有个麻烦的误差,就是地面接收机的时间误差。像手机这类设备会因为各种各样的原因出现误差,且误差大小很难直接计算修正。

我们可以把这个误差也设为一个未知量,引入第 4 颗卫星,得到四个等式就能求出接收机的时间误差和坐标这四个未知量,进而更精确地确定你的位置。(这就是为什么能接收到的卫星越多定位约精确的原因)

引入终端修正参数的联立方程组

此外为了让方程组解算出的数据更精确还可以引入多频段的信号(双频GPS)来消除电离层折射误差、抑制多径效应(城市复杂环境中高层建筑对GPS信号的多次反射导致设备错误计算信号的传播时间,进而得出错误的位置结论,产生近百米的误差)。

支持双频GPS的设备更能适应城市复杂环境的导航

现在GPS还可以通过地面基准站的地基增强、星基增强(准天顶系统)、WIFI蓝牙辅助定位等方式,更能实现分米级、厘米级乃至后处理毫米级的高精度定位。
这种定位技术的应用在当代生活中已经随处可见。从大坝监测、电力通信、精准农业,到公交车、共享单车、手机,你都可以看到它的身影。

在遥远的古代海上航行的船员通过星光计算方位确定航向,而在今天我们通过人造卫星发出的电磁波为我们指明路途终点的方向,当你仰望星空时星空也在指引(物理)你。

当你仰望星空时星空也在指引(物理)你

#车道级导航#

参考信息源:
1.某前知名视频科普博主 Vol.023 如何准确定位你的手机
2.某前知名视频科普博主 Vol.130 北斗卫星为你做了什么
3.什么值得买 -双频GPS手机购买指南
4.知乎话题 -如何理解狭义相对论中的「钟慢效应」,其发生条件是什么?
5.公众号(雷达通信电子战)-GPS信号L1频段C/A码的产生、自相关特性以及模糊函数 

大部分内容参考至引用源的视频并做了一些合乎时宜的改动,并对部分问题进行了拓展解释。