Android Framework обеспечивает доступ к необработанным измерениям GNSS на нескольких устройствах Android.
Инструменты можно найти в репозитории GPS Measurement Tools на GitHub, который включает исходный код предварительной версии GnssLogger и исполняемые файлы для настольного приложения GNSS Analysis для Linux , Windows и macOS . Руководство по установке и использованию .
Дециметровый вызов для смартфонов Google
Google, Отделение спутниковой навигации Института навигации и Kaggle спонсируют 3-й конкурс Smartphone Decimeter Challenge на конференции ION GNSS+. Конкурс начинается 12 сентября 2023 года и заканчивается 23 мая 2024 года. Более 150 новых трасс, содержащих первичные измерения ГНСС, данные датчиков и точные данные наземных измерений, будут доступны для публичного просмотра. Участие в конкурсе открыто для всех. Участникам рекомендуется представить тезисы доклада на сессию «Smartphone Decimeter Challenge», которая состоится на конференции ION GNSS+ 2024.
Дополнительную информацию, включая правила и положения, можно найти на странице конкурса на Kaggle , которая откроется 12 сентября 2023 года в 15:30 по MDT.
Устройства Android, поддерживающие необработанные измерения GNSS
Поддержка необработанных измерений GNSS обязательна для устройств под управлением Android 10 (уровень API 29) и выше. На Android 9 (уровень API 28) и ниже поддержка необработанных измерений GNSS обязательна для всех устройств Android с аппаратным обеспечением 2016 года выпуска или новее. В настоящее время более 90% существующих телефонов Android поддерживают необработанные измерения.
Поддержка некоторых полей необработанных измерений ГНСС необязательна и может зависеть от используемого чипсета ГНСС. Примеры таких полей:
- Псевдодальность и скорость псевдодальности.
- Навигационное сообщение.
- Значение автоматического регулятора усиления (АРУ).
- Накопленный дельта-диапазон (ADR) или фаза несущей.
- Поддержка нескольких частот
Большинство флагманских телефонов Pixel, Motorola, Samsung, Xiaomi, OnePlus и других крупных производителей уже поддерживают частоты L1 и L5. Флагманские телефоны Pixel, а также другие флагманские телефоны крупных производителей, не использующие чипсеты Qualcomm Snapdragon, предоставляют данные об ADR (фазе несущей) в качестве части первичных измерений.
База данных возможностей GNSS для различных устройств Android, предоставленная сообществом, упоминается в статье «Краудсорсинг возможностей GNSS для устройств Android» .
Дополнительную информацию об определениях полей необработанных измерений, предоставляемых устройствами Android, см. в разделе Глобальные навигационные спутниковые системы .
Производители оригинального оборудования (OEM), разработчики и исследователи могут использовать инструменты на этой странице для тестирования новых конструкций телефонов, проверки функциональности, разработки новых алгоритмов, оценки улучшений в реализации системы GNSS, а также для создания приложений с добавленной стоимостью.
Пример кода клиента SUPL
Suplclient — это пример кода, который обращается к supl.google.com для получения эфемерид в режиме реального времени. Класс SuplTester
представляет собой пример использования проекта клиента SUPL. SuplTester
настраивает параметры TCP-соединения SUPL, затем на заданной широте и долготе отправляет запрос LPP SUPL и выводит ответ сервера SUPL.
Информация о калибровке антенны
Начиная с Android 11 (уровень API 30), класс GnssAntennaInfo
позволяет получить доступ к характеристикам антенны, таким как координаты смещения фазового центра (PCO), поправки на изменение фазового центра (PCV) и поправки на усиление сигнала. Эти поправки можно применять к необработанным измерениям для повышения точности.
При использовании GnssAntennaInfo
помните о следующих особенностях поведения системы. Они предназначены для повышения конфиденциальности пользователей.
- Характеристики, предоставляемые этим API, относятся только к модели устройства, а не к отдельному устройству.
Регистрация необработанных измерений
Вы можете использовать Android Studio для создания приложения, которое собирает необработанные измерения GNSS и другие данные о местоположении и записывает их в файл. Пример исходного кода такого приложения см. в разделе «Инструменты измерения GPS» .
Google GNSSLogger — это пример приложения, разработанного с этой функцией. Для получения данных GNSS с помощью этого примера приложения ваше устройство должно поддерживать необработанные измерения GNSS.
После записи журнала GNSS с помощью GNSS Logger вы можете скопировать файлы журнала с устройства на компьютер для дальнейшего анализа. Из GNSS Logger вы можете отправить файлы себе по электронной почте или сохранить их на Google Диске. Кроме того, вы можете сохранить файлы с помощью приложения для управления файлами на устройстве или с помощью Android Debug Bridge (ADB), как описано в разделе Копирование файлов на устройство и с него .
Анализ необработанных измерений
Приложение GNSS Analysis считывает необработанные измерения GPS/GNSS, собранные GNSS Logger, и использует их для анализа поведения приемника GNSS, как показано на рисунке 1.
Вы можете загрузить приложение для систем Linux , Windows и macOS .
Рисунок 1. GNSS Logger собирает измерения, которые могут быть использованы GNSS Analysis.
Приложение GNSS Analysis создано на основе MATLAB , но для его запуска MATLAB не требуется. Приложение скомпилировано в исполняемый файл, который устанавливает копию среды выполнения MATLAB.
Панель управления анализом GNSS
Панель управления GNSS Analysis, показанная на рисунке 2, позволяет управлять функциями приложения, такими как:
- Выберите, какие спутники будут отображаться.
- Контролируйте исходное положение, скорость и время (PVT), используемые для расчета погрешностей измерений.
- Формирование аналитических отчетов.
- Определите окно данных между начальным и конечным временем.
)
Рисунок 2. Панель управления анализом GNSS
Интерактивные графики анализа GNSS
Приложение GNSS Analysis предоставляет интерактивные графики, организованные в столбцах радиочастот (РЧ), часов и измерений, как показано на рисунке 3.
)
Рисунок 3. Приложение GNSS Analysis, отображающее интерактивные графики.
В столбце RF показаны следующие данные:
- Для каждого созвездия четыре спутника с наиболее сильным сигналом.
- Для каждого спутника временной график зависимости плотности несущей от шума (C/No).
- Карта положения спутников на небе.
В столбце «Часы» показаны следующие данные:
- Псевдодальности.
Частота смещения часов приемника, которая вычисляется с использованием одной из следующих опорных позиций:
- Автоматически вычисляемое среднее положение.
- Широта, долгота и высота вводятся пользователем.
- Файл Национальной ассоциации морской электроники (NMEA) с эталонным значением PVT.
Смещение резервных часов, сохраняющих время, когда приемник сбрасывает рабочий цикл основного генератора.
В столбце измерений показаны следующие данные:
- Результаты определения положения методом наименьших квадратов, полученные из исходных псевдодальностей. Весовые коэффициенты рассчитываются с использованием заявленной неопределенности каждого измерения, которая является частью спецификации API для исходных измерений.
- Ошибки каждой псевдодальности для каждого измерения.
Ошибки каждой скорости псевдодальности для каждого измерения.
Отчет об испытаниях GNSS-анализа
GNSS Analysis может создать отчёт об испытаниях, как показано на рисунке 4, который оценивает реализацию API, полученный сигнал, поведение часов и точность измерений. Для каждого случая приложение сообщает, прошёл ли приёмник тест или нет, основываясь на результатах, измеренных по сравнению с известными эталонными показателями. Отчёт об испытаниях полезен производителям устройств, которые могут использовать его при разработке и внедрении новых устройств. Чтобы создать отчёт об испытаниях, нажмите кнопку «Создать отчёт» .
Рисунок 4. Отчет об испытаниях GNSS-анализа
Вкладка «Сравнение» обеспечивает параллельное сравнение (см. рисунок 5) значений C/No из нескольких файлов журналов GNSS, что полезно при сравнении характеристик радиочастот нескольких устройств.
Рисунок 5. Параллельное сравнение данных C/No из нескольких файлов журналов
Интересуетесь исходным кодом? Проект GPS Measurement Tool предоставляет пример MATLAB с открытым исходным кодом, который можно использовать для выполнения следующих действий с использованием сигналов созвездия GPS:
- Считывайте данные, полученные с помощью образца приложения GNSS Logger.
- Вычислить и визуализировать псевдодальности.
- Вычислить положение и скорость методом наименьших квадратов.
- Просмотр и анализ фазы несущей.
Заметки о выпуске приложения GNSS Analysis v4.6.0.1
Приложение GNSS Analysis версии 4.6.0.1 включает в себя следующие обновления:
- Созданный на базе Matlab R2022a GnssAnalysisTool предоставляет доступ к новым функциям:
- Окно статуса прокручивается автоматически: последнее сообщение о статусе всегда видно.
- Добавлена таблица сравнений C/N0 по созвездиям и сравнение L1 с L5.
- Добавлен график остаточной скорости псевдодальности.
- Удалены отдельные вкладки для стационарного или подвижного справочного PVT, что упрощает просмотр выбранного типа справочного PVT.
- Результаты «Создать отчет» перенесены из HTML в окно статуса.
- Удалена вкладка «Планировщик миссий». Используйте gnssmissionplanning.com/ или www.gnssplanning.com/.
- Исправления, связанные с анализом файла наблюдений RINEX.
- Возврат к источнику эфемерид NASA CDDIS для GPS и GLO, когда BKG не работает.
- Перейти с igs.bkg.bund.de на igs-ftp.bkg.bund.de
- Не выходите из анализа, если загрузка эфемерид GAL, QZSS или BDS не удалась.
- Создайте анализ Antenna CNo, даже если чипсет не поддерживает BaseBandCNo
Руководство по установке и эксплуатации .
Оставьте отзыв
Мы хотим улучшить поддержку ГНСС на Android. Сообщите нам о любых проблемах с поддержкой ГНСС на Android, используя систему отслеживания проблем ГНСС . Перед тем, как опубликовать сообщение, проверьте, не обсуждалась ли ваша проблема в разделе часто задаваемых вопросов .
Если вы использовали инструменты анализа GNSS, пожалуйста, оставьте отзыв, ответив на короткий опрос . Если у вас есть другие вопросы или вы хотите обратиться за поддержкой, см. раздел «Ресурсы поддержки разработчиков» .
Ответы на часто задаваемые вопросы можно найти в разделе «Часто задаваемые вопросы по инструментам анализа GNSS» .