Как откалибровать GPS на Android — навигатор врал на 50 метров

Как откалибровать GPS на Android — навигатор врал на 50 метров

Иду по навигатору, а он уверенно ведет меня параллельной улицей. Синяя точка на карте живет своей жизнью — я стою на месте, она двигается. Поворот пропускаю, потому что приложение спохватывается с опозданием секунд в десять. Знакомо? Я долго думал, что это проблема конкретного навигатора, менял приложения и злился. Потом выяснилось, что дело совсем в другом. Почему телефон показывает неправильное местоположение — там про причины в общем, здесь конкретно о том, как я это починил и выполнил калибровку GPS.

Причины ошибок: отражение сигнала, A-GPS, компас и режим геолокации

Прежде чем что-то чинить, стоит понять, почему GPS ошибается вообще. Причин несколько, и они разные по природе:

  • Отражение сигнала. Сигнал GPS идет от спутников и по пути отражается от зданий, деревьев, рельефа. Телефон получает несколько копий одного сигнала с разной задержкой и путается. В плотной городской застройке это особенно заметно;
  • Устаревшие данные A-GPS. Это вспомогательная технология, которая помогает телефону быстрее найти спутники. Телефон заранее скачивает данные об их положении — своеобразное расписание. Если эти данные устарели, смартфон ищет спутники не там. Точность GPS при этом падает именно в первые минуты после включения навигации;
  • Неоткалиброванный компас. Акселерометр и магнитометр в телефоне влияют на то, куда «смотрит» навигатор. Если они сбиты, навигатор врет не столько с позицией, сколько с направлением движения;
  • Неправильный режим геолокации. Android может работать в нескольких режимах точности. Экономный режим использует только Wi-Fi и сотовые вышки и дает погрешность до нескольких сотен метров.

Последний пункт — самый обидный, потому что проблема решается буквально за десять секунд в настройках. Но, как бы то ни было, в наших широтах есть свои проблемы. Недавно объяснял, почему в России GPS работает хуже, чем раньше. Можете прочитать, если интересно.

Проверка через GPS Test: норма от 3 до 10 метров и 8 спутников

Прежде чем калибровать, стоит понять масштаб проблемы. Я пользуюсь приложением GPS Test — оно бесплатное, показывает, сколько спутников видит телефон, насколько точно их определяет и какова текущая погрешность в метрах.

  1. Установите GPS Test из Google Play или RuStore.
  2. Выйдите на улицу с открытым небом (в помещении спутники ловятся плохо).
  3. Запустите приложение и подождите 1-2 минуты.
  4. Посмотрите на параметр точности (Accuracy) — норма для смартфона от 3 до 10 метров. Если больше 15 метров при ясном небе — есть проблема.
  5. Обратите внимание на количество спутников. Хорошо — 8 и больше активных. Меньше 4 — плохой прием.

Если точность геолокации низкая даже при большом количестве спутников — скорее всего, сбит компас или устарели данные A-GPS. Если мало спутников при ясном небе — возможно, проблема в железе или программном сбое.

Калибровка: компас восьмеркой, сброс A-GPS и режим высокой точности

Есть несколько методов, работающих по-разному. Начинать стоит с простых. Сначала нужно откалибровать компас восьмеркой. Это самый быстрый способ откалибровать магнитометр. Именно он отвечает за то, в какую сторону повернута синяя стрелка в навигаторе:

  1. Возьмите телефон в руку горизонтально, экраном вверх.
  2. Медленно нарисуйте в воздухе цифру 8 — плавно, как будто пишете на доске.
  3. Повторите 5-6 раз в разных плоскостях: горизонтально, вертикально, наклонно.
  4. Откройте любое приложение с компасом и проверьте, совпадает ли показание с реальным направлением.

Звучит немного странно, но работает. После этой процедуры мой навигатор перестал показывать, что я еду в обратную сторону. Далее стоит выполнить сброс данных A-GPS. Этот вариант помогает, если навигация на Android долго ищет сигнал или первые несколько минут сильно врет:

  1. Установите приложение GPS Status & Toolbox (оно есть в RuStore и Google Play).
  2. Откройте приложение, нажмите на три точки в меню.
  3. Выберите «Управление A-GPS» — «Сбросить».
  4. Затем нажмите «Загрузить» — приложение скачает свежие данные о положении спутников.
  5. Выйдите на улицу, запустите навигатор и дайте ему 2-3 минуты на первоначальный поиск.

После сброса телефон заново скачивает актуальные данные о спутниках. Калибровка GPS этим методом особенно помогает, если вы давно не пользовались навигатором или недавно оказались в новом городе после длительного перелета.

Наконец, необходимо правильно настроить геолокацию на Android:

  1. Откройте «Настройки» телефона.
  2. Перейдите в «Местоположение» или «Геолокация».
  3. Убедитесь, что выбран режим «Высокая точность» или вручную включите геолокацию по Wi-Fi и Bluetooth.

Режим экономии батареи использует только сотовые вышки и Wi-Fi. Это дает грубое приближение, которое годится для определения города, но не для навигации на телефоне по улицам.

Что еще влияет: фоновые ограничения, магнитные помехи и карты

Настройки геолокации — не единственное, что влияет на работу навигатора. Вот что еще помогает получить стабильный результат.

Отключите ограничение фоновой активности для навигатора. Многие телефоны автоматически ограничивают приложения в фоне для экономии батареи. Навигатор при этом может терять сигнал при выключенном экране:

  1. Зайдите в «Настройки» — «Приложения».
  2. Найдите ваш навигатор.
  3. Откройте раздел «Батарея» или «Энергопотребление».
  4. Выберите «Без ограничений» или «Не оптимизировать».

Проверьте магнитные помехи. Металлический чехол, магнитный держатель или соседство с автомобильной аудиосистемой могут сбивать магнитометр. Если навигация GPS нестабильна именно в машине — попробуйте другое место крепления телефона.

Обновите карты в навигаторе. Устаревшие карты сами по себе не влияют на точность GPS, но приводят к тому, что синяя точка оказывается «не на той дороге» — дорога физически существует, а в базе ее нет. Особенно актуально для навигаторов с офлайн-картами, где обновления нужно скачивать вручную.

Держите небо открытым. Геолокация на Android работает плохо в подземных парковках, тоннелях и глубоких дворах-колодцах — это физическое ограничение, не баг. Подождите, пока выедете на открытое место.

После всех этих манипуляций мой навигатор перестал врать на 50 метров. Погрешность стала стабильной: 4-6 метров, что для пешей навигации более чем достаточно. Телефон нашел нужный двор с первого раза. Мелочь, но жизнь стала заметно приятнее. Кстати, если тема слежки за местоположением вас беспокоит, почитайте о том, как Android собирает данные геолокации даже когда вы не пользуетесь навигатором. Это отдельный разговор про настройки конфиденциальности.

Оцените новость:

Комментарии (1)

Полезная информация, спасибо!

Другие новости