研发、生产、销售、售后一站式服务
小述:阿泰,你知道使用卫星定位系统精确定位用户的位置,最少需要接收几颗卫星的信号吗?
阿泰:应该是3颗吧?
小述:不对,最少需要接收4颗卫星的信号。
阿泰:不是求解出该用户的三维坐标x,y,z就行吗?也就是对应用户所在位置的经度、纬度和海拔高度......
小述:这只是理论上能得出的结果。事实上,手机时间和卫星时间之间的误差也需要考虑进去。
卫星定位的基本原理是测定卫星与接收器之间的距离。以卫星为中心,以该距离为半径画球面,不同卫星确定的不同球面的交点,即为该接收器所在位置。
具体来说:卫星每时每刻都在向全世界发射电磁信号,该信号中包含时刻t及该时刻下卫星的坐标x,y,z(以地心为圆心建立空间坐标系)等信息。
当地面用户的接收器在t₁时刻接到该信息后,t₁减去卫星信号的时刻t可得时间差△t。由于电磁信号是以光速c(30万公里/秒)行进,由此可得卫星与接收器之间的距离L=c·△t 。
举例来说:阿泰驾车时使用卫星导航系统,卫星1为他服务。在北京时间8:00:00,卫星1发出了一个信号,含卫星坐标(x₁,y₁,z₁)和时刻t₁=8:00:00,该信号以光速c传输到地球上。
假设阿泰的信号接收器——手机(坐标x,y,z)接到该信号时的时刻t₁是8:00:02,那么△t₁=8:00:02-8:00:00=2秒,得出阿泰和卫星1之间的距离L₁=c·△t₁=60万公里(假设值)。
根据空间几何,利用三角函数可列公式:
(x₁-x)² + (y₁-y)² +(z₁-z)² = (c·△t₁)²
用户接收到3颗卫星的信号,可联立三个方程组:
①(x₁-x)²+(y₁-y)²+(z₁-z)²=(c·△t₁)²
②(x₂-x)²+(y₂-y)²+(z₂-z)²=(c·△t₂)²
③(x₃-x)²+(y₃-y)²+(z₃-z)²=(c·△t₃)²
三个方程解3个未知数,是有解的。由此我们可以得到阿泰的三维坐标(x,y,z),这也就是理论上使用卫星定位只需要3颗卫星的原因。
但是,在实际应用中,会出现一个问题:△t的确定,受到双方时间精准性的影响。
卫星上使用的是原子钟,时间极其精准,卫星信号发出的时间t没有问题。但用户手机上的时钟精度低,与卫星的标准时间会有t₀的误差(t₀为误差值,是未知的)。
所以会出现这样的情况:我们以为阿泰的手机是在8:00:02接到的信号,但实际此时是8:00:01。△t应该是1秒而不是2秒,而这个结果再乘以光速c之后,误差就会变得特别大,因此定位结果可能会相差数公里,从而失去定位的意义。
那该如何消除误差呢?这就需要引入第四颗卫星,来消除误差t₀的影响,也就是需要求出t₀的值。
具体来说,将真正的时差定义为(△t-t₀),联立四个方程组可得:
①(x₁-x)²+(y₁-y)²+(z₁-z)²=[c·(△t₁-t₀)]²
②(x₂-x)²+(y₂-y)²+(z₂-z)²=[c·(△t₂-t₀)]²
③(x₃-x)²+(y₃-y)²+(z₃-z)²=[c·(△t₃-t₀)]²
④(x₄-x)²+(y₄-y)²+(z₄-z)²=[c·(△t₃-t₀)]²
四个方程式计算出4个未知数,由此可计算出阿泰的精确坐标(x,y,z),并得知用户信号接收设备和卫星两者间相应的时间误差t₀。
因此,卫星定位系统要想精确定位用户的位置,最少得接收到4颗卫星的信号。