GNSS 也就是全球导航卫星系统,那玩意儿能给你报个精准坐标,原理实际上挺搞怪的。它不是按部就班地让卫星一直盯着你,你光看卫星如何飞上来都搞不懂。

实际上道理挺好办,就像你在晚上做饭,手里拿着个遥控器,你不用盯着电视看频道,只要按个键,哪怕电视不亮,你也能做出晚饭来。GNSS 就是这遥控器,你的手机、车、平板,只要连上网,就能收到卫星发来的信号。 卫星信号说白了就是个数字码,跟一般/平平无线电波有点像,但更复杂一点。

要是有个 GPS 卫星,它每秒钟发出的信号有 10 兆字节,这里面藏着你的经纬度、工夫戳,还有那个最关键的——漂移量。漂移量就是卫星告诉你是如何走到那里的。但光靠这还不够,出于你站在地上,也有个时钟,叫“本地时钟”。

要是你本地的时钟跟卫星上的那个标准时钟不一样,哪怕差个一微秒,算出来的位置误差就能大到让你迷路。

这就是为啥在开车的时候,导航仪会告诉你目前的车速,出于它得知道工夫差。 要想把信号对得上,得先达到一个门槛,叫“伪距”。

也就是说,你接收到的信号可能是真距离,也可能是多出来的误差。

比如你发个短信,对方收到回复,那是你发的距离;要是你发个电话,对方回个“好的”,那对方收到的是你的电话工夫;要是你发视频,对方收到你的视频,那对方收到的也是你的工夫。GNSS 的智慧就在于它能从这些混杂的信号里,把最接近真距离的那条路挑出来。 这个“诚实”的过程实际上挺变态的。卫星每秒发一兆字节,你手机要处理一兆字节的数据,这可不是开玩笑。你的手机内存得够大,否则数据到了就炸了。并且,卫星信号在真空里飞,速度是光速,这就意味着一信号从卫星飞到你的手机,得花一毫秒。

要是延时忒长,信号到了,你本地时钟可能早就快了一秒,这时候你收到的就是错的信号,务必得重新算。 为了搞明白这到底是个啥,咱得扯点数据看看。就拿智能手机上的定位来说,一般没连网的时候,它得靠陀螺仪估算位置,误差大约是个两位数。一旦联网上了,它就启动疯狂接收卫星角度和伪距。假设你在中国,距离某个卫星大约 3000 公里。

这时候手机会把收到的所有信号加起来,算出一个平均值。但这个平均值是不是准?不一定。出于你的手机时钟可能慢死了,要么卫星时钟短暂乱了。

这时候就需求用算法,把不同卫星的信号往一起对,剔除掉那些明显不对的信号,最终算出一个最靠谱的坐标。 就算信号来了,处理起来也是像打仗一样。

比如北斗系统,它每个月有两次会议,叫星历会。

这是给卫星发个“放假”通知,告诉卫星啥时候能再飞。

这时候卫星就得老老实实悬停,不飞。而它得把今天所有的观测数据,打包成一张大地图,发给下次飞的时候。出于卫星本身也在晃,它自己也知道今天飞了如何飞,故此务必提前把这些数据预备好,不然下次飞起来就乱套了。 还有个事儿,就是“同步”。卫星是同步轨道,出于它离地几万公里,地球转得挺快,它得保持在同步高度,这样你信号稳定。但手机不是卫星,手机在转,卫星不动。

这俩不一样,得调得刚刚好。 你坐在车里,导航给你指个路,它不是看你眼里的线,而是看你的位置。它每秒扫一下周围几十颗卫星,算出你相对于它们的距离,再把这些距离转成一个 3D 坐标。

这就像你在地图上投个点,点的位置不偏不倚地落在哪儿,它就知道你是在哪。 最终,不管你是开车还是坐地铁,只要把手机对准天空,点一个定位,它就能告诉你你在哪。别看听起来好办,但要让你的手机不漂移、不迷路,背后得有个庞大的计算团队,得处理海量数据,还得把卫星数据、手机数据、基站数据一大堆东西混在一起算,这工程量可不是闹着玩儿的。