GPS 到底是怎么工作的?

Hacker News Top 新闻

摘要

一篇互动文章拆解 GPS 的工作原理——从把纳秒级信号延迟换算成距离,到利用卫星进行三边测量,甚至包括爱因斯坦相对论修正。

暂无内容
查看原文 导出为 Word 导出为 PDF
查看缓存全文

缓存时间: 2026/04/22 10:31

GPS 到底是怎么工作的?(互动式探索)

来源:https://perthirtysix.com/how-the-heck-does-gps-work

几何、秒表和爱因斯坦理论如何联手让 GPS 成为现实

Shri Khalpada(https://perthirtysix.com/team)

Shri Khalpada

2026 年 4 月 11 日

“How The Heck?”系列互动科普之一,带你拆解日常技术。

如果你喜欢,可关注作者(https://bsky.app/profile/shrikhalpada.dev)或请他喝杯咖啡(https://www.buymeacoffee.com/shrikhalpada)!

如果你和我一样,出门全靠 GPS 导航,那你一定在错过出口、手机重新定位的慌乱中闪过一念:它到底怎么知道我在哪儿?

答案既比你想象的简单,也比你想象的复杂。GPS 本质上是一把“翻译器”:把时间翻译成距离。卫星发出信号,手机收到,两者之间的延迟告诉你卫星有多远。其余所有步骤,只是让这条测量足够精确:搞定烂时钟、卫星几何,最后还要请爱因斯坦出面。


一把尺子

TL;DR
GPS 把时间变成距离。信号跑 1 纳秒 ≈ 0.3 米。

每次定位都从一块秒表开始。卫星以光速广播信号,手机记录耗时。时间 × 光速 = 距离。
这就是 GPS 的基石。


一颗卫星,一个环

TL;DR
一颗卫星只能告诉你“多远”,不能告诉你“哪边”。你可能在环上任意一点。

测到一颗卫星,只能得到距离,没有方向。信号走了多久,你就离卫星大概多远。把所有满足该距离的点画出来,在地球表面(其实是个椭球,但看成环就行)上就是一个环。你知道自己在这条环上,却不知道具体在哪。

为什么是环?海拔呢?
想象两个肥皂泡相切,重叠部分是一个圆。卫星信号是一个球,地球是另一个球,相交处就是地表的一个环。你就在环上某处。

(这只是直观模型;GPS 实际在三维空间解算,含海拔,所以飞机、飞船都能用。)

未按比例
卫星 A 以光速向你的手机发信号。
点一下“ping”看它如何把信号送到地球。


三颗卫星,一个点

TL;DR
三颗卫星给出三个环,交于唯一一点:你。

一个环不够;第二颗卫星再给一个环,两环相交于两点;第三颗卫星的环只通过其中一点。
这个过程叫三边测量。每颗卫星提供一个方程:

已知卫星位置 ,测得距离 ,可解三个未知数 。

未按比例
每颗卫星的环都穿过你的位置。
逐个点“ping”试试。

不是三球交两点吗?
理论上没错,但其中一个点要么在地心深处,要么在太空几千公里外,接收机直接扔掉。所以实际只用三颗卫星就能定地表一点。


时钟大麻烦

TL;DR
手机时钟(相对)烂。第 4 颗卫星搞定它:只有唯一一种钟差能让四球交于一点。

上面的数学默认手机精确知道信号耗时。
每颗 GPS 卫星自带原子钟,30 万年误差 1 秒;手机只是廉价石英晶振,一抖就是微秒(上千纳秒)。1 微秒钟差 ≈ 300 米位置误差,秒秒钟飘出几个街区,没法用!

解法:再加一颗卫星。

简单说:只有一种特定的钟差,能让四个球同时交于一点。第 4 颗卫星给出足够信息,求出这个钟差后,一次性修正所有距离,模糊解瞬间清晰。
概念上,就是系统算出让红色新环与其它三环完美相交所需的“时间偏移”。

钟差数学
把手机的时钟误差 当成第 4 个未知数:

左边是到卫星 的真实几何距离; 是用手机烂钟测得的“伪距”,所有卫星都差同一个常数 。四颗卫星四个方程,同时解出 。收敛瞬间,四球交于一点——接收机既知道位置,也知道了准确时间。

所以你的手机时间其实超准:它一直在跟太空里的原子钟对表!


相对论“税”

TL;DR
不睬爱因斯坦,GPS 一天能飘 10 公里。

四颗卫星、钟差搞定后,还差最后一步。

把时间本身也看成一块表:环境能让它变快或变慢。GPS 必须修正两种效应:

  • 狭义相对论(速度):卫星飞 14 000 km/h,钟每天慢约 7 微秒。
  • 广义相对论(引力):离地 20 200 km,重力更弱,钟每天快约 45 微秒。

两者不抵消,引力效应更强。

若无修正,卫星钟每天快 38 微秒;光每微秒走 300 米,相当于 24 小时漂移 ≈ 10 公里。

工程师在地面就把卫星钟调慢 0.00457 Hz,上去后“刚好”准。

未按比例
无修正时累计误差
第 0 天:漂移 0 μs ≈ 0 km 误差
……
第 1 天:漂移 38 μs ≈ 11.4 km 误差

没有这些修正,GPS 几小时就废。手机还能把你定到几米内,这不仅是现代工程奇迹,更是爱因斯坦理论每天都在被验证的沉默证据。


众人拾柴

实际中,手机不会只抓 4 颗星,通常锁 8–12 颗甚至更多。多出来的信号不改变核心算法,但能平均误差、挑最佳几何。星越多,交点越锐利。

而且不止美国 GPS:俄罗斯有 GLONASS,欧盟有 Galileo,中国有 BeiDou。手机全收,相当于头顶 100+ 个原子钟跨国合作给你报位置。

卫星分布也关键。如果星全挤在天空一角,环之间夹角太平,交会区域会是一片“毛团”。GPS 工程师把这叫几何精度因子(GDOP)。好几何=星铺满天空,交点尖锐。手机芯片自动选星,把 GDOP 压到最低。

城市里,信号可能先撞楼再进手机,秒表以为你更远(路程变长),这叫多路径误差,是城区定位飘的主要原因。现代接收机用各种算法滤反射,仍是 GPS 最难啃的骨头之一。

总之,手机只靠测量几万公里外几束光的行程,就能把你定到几米内,想想还是震撼。

想再深挖,Bartosz Ciechanowski 的互动长文是业界金标准,信号调制、轨道力学、接收机架构应有尽有。


谢谢阅读!

喜欢这类内容,可在BlueSky关注我。
想再支持,请买杯咖啡,替我续命服务器!☕

相似文章

HTTP标头如何导致time.gov偏离UTC时间

Lobsters Hottest

本文详细介绍了一项技术调查,解释了HTTP标头如何导致time.gov网站出现时间偏差,并阐述了NTP与HTTP时间同步之间的差异。

时间黑客:利用音频谐波欺骗原子钟

Lobsters Hottest

本文探讨了消费级原子钟如何通过音频谐波信号被欺骗的漏洞,并详细说明了由于电离层传播问题,在美国东海岸接收 NIST 的 WWVB 无线电信号所面临的技术挑战。

B-52轰炸机星辰追踪器内的机电角度计算机

Lobsters Hottest

本文详细介绍了B-52轰炸机天文罗盘天体导航系统中使用的机电角度计算机,它能够自动追踪星体并执行三角函数计算,在GPS时代到来之前实现精确的航向和位置测定。