GPS: Как работает внедрение времени NTP

Недавно я узнал о файле gps.conf в каталоге / system / etc / . Похоже, что это так. настройка значений NTP_SERVER для серверов NTP ближе к обычному местоположению улучшает TTFF.

При чтении исходного кода в классе LocationProvider кажется, что при загрузке время извлекается с сервера NTP и «вводится» в вычисления. AFAIK каждый спутник GPS имеет очень точные атомные часы, и каждый в созвездии синхронизирован с так называемым "временем GPS". Как только приемник получает 4 или более спутников, он решает (каким-либо методом) уравнение, в котором есть четыре неизвестных: x, y, z, b; где (x, y, z) - местоположение приемника, а b - разница во времени между внутренними часами приемника и (правильным) временем GPS. После исправления часы приемника синхронизируются с правильным временем. (Пожалуйста, поправьте меня, если я ошибаюсь).

На данный момент у меня есть несколько вопросов относительно того, как работает инъекция времени NTP:

  1. Время GPS - это примерно TAI (международное атомное время) плюс смещение. Эти два времени не зависят от вращения Земли, в отличие от UTC.Учитывая, что серверы NTP возвращают время UTC, можно вывести время GPS из времени UTC?
  2. Как получение времени NTP с ближайшего сервера улучшает «качество» приближения времени GPS?
  3. Предполагая, что у нас есть начальное значение времени GPS (полученное каким-то образом из времени NTP), о чем инъекция? Считается ли это значение времени правильным для решения уравнения с неизвестными только x, y, z? Если так, то первое исправление - это всего лишь приближение, не так ли?
  4. Как более качественное начальное приближение для времени GPS улучшает TTFF? Причина в том, что при более низком качестве времени NTP первые исправления считаются неприемлемыми и отбрасываются?
  5. Помогает ли наличие приблизительного начального положения получить следующее правильное исправление (например, прослушивание только подмножества спутников)?
31
задан mirabilos 26 May 2015 в 13:04
поделиться