GPS:NTP时间注入的工作原理

Mis*_*ith 31 time gps android ntp

我最近知道目录gps.conf中的/system/etc/文件.似乎将NTP_SERVER值调整到更靠近通常位置的NTP服务器可以改善TTFF.

读取类中的源代码LocationProvider,似乎在启动时,从NTP服务器检索时间并在计算中"注入".每个GPS坐着的AFAIK都有一个非常准确的原子钟,星座中的每一个都与所谓的"GPS时间"同步.一旦接收器有4个或更多卫星,它(通过某种方法)解决了一个方程,其中有四个未知数:x,y,z,b; 其中(x,y,z)是接收器位置,b是接收器内部时钟和(正确)GPS时间之间的时间差.一旦修复,接收器时钟就会与正确的时间同步.(如果我错了,请纠正我).

到目前为止,我对NTP时间注入的工作方式有一些疑问:

  1. GPS时间大致为TAI(国际原子时)加上偏移量.这两次不依赖于地球自转,但UTC确实如此.鉴于NTP服务器返回UTC时间,可以从UTC时间推断GPS时间?
  2. 如何从较近的服务器检索NTP时间可以提高GPS时间近似的"质量"?
  3. 假设我们有一个初始GPS时间值(以某种方式从NTP时间推断),注入是什么?这个时间值是否正确解决方程只有x,y,z为未知数?如果是这样,那么第一个修复也只是近似,不是吗?
  4. GPS时间的高质量初始近似如何改善TTFF?是因为NTP时间质量较低,第一次修复被认为是不可接受和丢弃的?
  5. 是否有一个近似的初始位置有助于检索下一个正确的修复(比如只收听sats的子集)?

Fox*_*Fox 22

好好侦察一下维基百科和其他一些消息来源,让我猜一想.

  1. 是的,您可以从UTC时间推断GPS时间.您只需知道偏移量,该偏移量每15秒传输一次,并在大约18个月内更改一次.资料来源:维基百科

  2. NTP没有给你准确的时间.它测量消息从客户端到服务器的时间以及响应从服务器到客户端的时间.然后使用这些时间来计算连接的延迟.然后将其作为接收时间的偏移量应用.这适用于对称路线.如果路线是不对称的,则会出错.如此靠近服务器,降低不对称的机会和水平,从而降低误差.资料来源:维基百科再次

  3. NTP信号不直接用于获取GPS定位.但要获得准确的修复,您需要非常精确的时钟.我们在这里谈论纳秒.GPS卫星确实传输当前的GPS时间,但即使它以光速传播,也会有一些延迟.GPS接收器无法知道延迟是什么,因此它必须接近几个接收信号.随着接收到的每次传输,时钟变得更加精确.因此,您在开始时拥有的时间越长,获得准确时钟所需的时间就越少.资料来源:维基百科

  4. 很好地解释了3. - 时钟误差越小,接近正确时间所需的信号越少.

  5. 我在这里猜不到,但是有一个大概的位置可以帮助你更好地估计距离卫星的距离,从而延迟.(不确定是否真的使用过.)

我希望它至少有点意义;-)