
硬核科普来了。所有的全球卫星导航系统(GNSS),包括GPS在内,全部都在解决一个问题:时间同步。解决好了时间同步问题,定位、导航就是顺理成章的事情了。我们其实可以说GNSS或者GPS就是一个超级精密的时间同步系统,它将卫星时钟和用户设备(手机,车载导航仪,带定位功能的电子表)时钟完成精密同步,从而实现授时、定位功能。
为什么GPS是一个时间同步问题呢?可以用这么一个例子简单理解GPS的原理,首先假设我们手上有一块手表,这块手表和卫星上的手表完全同步,换句话说就是同一时刻这两块手表显示相同时间。在此前提下,卫星发出信号,在信号发出的那一时刻给信号盖一个时间戳,记为t0;接收机接收信号,接收那一时刻也盖一个时间戳,记为t1。那么卫星到接收机的距离S = ( t1 - t0 ) * 光速。再根据三角定位原理,需要三颗卫星到接收机的距离测量值,以及卫星的位置,便可以推算出接收机的位置,这就是GPS单点定位的基本原理。
原理说起来很简单,但是这里面最重要的前提却很难实现,即卫星和地面接收机的时钟完全同步,这就回到我们刚才讲到的话题,其实GPS/GNSS问题就是一个时间同步的问题,GPS接收机怎么实现与卫星时间同步的呢?答案是引入一个的接收机钟差,通过多颗卫星到接收机距离之间的约束关系来求解这个接收机钟差。上述约束过程比较抽象,可以用下图所示的场景帮助理解。
图中顶部表示的是正确求解钟差的情况,黑色箭头是卫星到汽车的距离测量值,红色箭头是估计的接收机钟差。注意,这里接收机的钟差是指接收机相对GPS时的钟差,所以它跟卫星无关,换句话说接收机钟差对每颗卫星是一样的。正确求解的情况下,两颗卫星对应的距离加上钟差后会指向同一个点,这是我们可以说定位结果收敛了。上图中底部是定位结果不收敛的情况。接收机内部反复尝试各种钟差结果,直到找到一个可以让定位结果收敛的钟差为止。
注意,定位结果收敛后,我们可以认为接收机时钟与卫星时钟完全同步了,也就是说我们手机上看的时间,带GPS功能电子表上的时间,车载导航的时间是通过GPS卫星精密授时的,这样的一个授时关系是通过GPS的原子钟,以及多颗卫星定位结果强约束条件下得到的,理论上应该是非常精确的。
=========================================================
坑先挖这儿,如果有人继续看我再更。GPS/GNSS的设计有很多有意思的技术细节可以科普,慢慢更吧。各位看完点个赞,谢谢啦!
