Приложение ГЛОНАСС для Android
Обновлено: 21.11.2024
Как вы можете собирать высокоточные данные GNSS от приемников Arrow в своем собственном приложении для Android?
Наша цель Eos Positioning Systems ® (Eos) — сделать высокоточное определение местоположения максимально простым и гибким, независимо от того, какое устройство вы выберете. Вот почему наши приемники Arrow Series® работают практически с любым устройством или готовым приложением.
На самом деле, Eos сотрудничает со многими ведущими поставщиками мобильных приложений, чтобы ваш выбор программного обеспечения был разнообразным и надежным.
Компания Eos разработала приемники Arrow для работы с любым приложением, включая ваше собственное. И один из самых популярных вопросов, которые мы получаем: «Как мне настроить приложение для Android для сбора местоположений Arrow GNSS?»
В этой статье мы:
- Объясните, как ваша стрелка передает данные о местоположении вашему приложению для Android через Bluetooth®.
- Покажите, как использовать бесплатное приложение для мониторинга GNSS Eos Tools Pro для перезаписи внутреннего местоположения.
- Покажет, как поддерживать метаданные GNSS в собственном приложении.
- Помочь вам решить, следует ли вам подключить приложение напрямую к приемнику Arrow или использовать Eos Tools Pro в качестве ссылки.
Давайте начнем с понимания самого популярного рабочего процесса Android для Arrow: обмена данными GNSS из Arrow в вашем приложении Android через Eos Tools Pro.
Как Eos Tools Pro передает данные GNSS в ваше приложение для Android?
Ваш приемник Arrow может напрямую подключаться к приложению Eos Tools Pro на вашем устройстве Android благодаря Bluetooth®.
Что такое Eos Tools Pro?
Eos Tools Pro – это наше бесплатное приложение для мониторинга GNSS, доступное бесплатно в Google Play. После загрузки Eos Tools Pro просто подключите его к приемнику Arrow через Bluetooth®, и вы сможете отслеживать высокоточные данные GNSS в Eos Tools Pro.
Чтобы поделиться этими высокоточными координатами с вашим собственным приложением для Android, все, что вам нужно сделать, это включить фиктивное местоположение на вашем Android.
Как заменить внутреннее местоположение данными со стрелками, включив «фиктивное местоположение»
Устройства Android поставляются с так называемым «Внутренним расположением». Внутреннее местоположение — это встроенная функция определения местоположения вашего устройства Android. Например, источником внутреннего местоположения вашего телефона или планшета может быть внутренний GPS или, возможно, интернет-сеть. Точность определения внутреннего местоположения устройства Android обычно варьируется от пяти до десятков метров.
Однако заменить внутреннее местоположение более точными координатами с внешнего устройства GNSS на устройстве Android очень просто. Все, что вам нужно сделать, это включить фиктивное местоположение .
Mock Location – это функция Android, доступная в режиме "Разработчик", которая позволяет перезаписывать внутреннее местоположение Android данными GNSS из внешнего источника, например потоком данных Arrow из Eos Tools Pro.
Выполнив эти два шага, вы готовы использовать координаты Arrow в любом приложении для Android:
- Установите и подключите Eos Tools Pro к Arrow
- Включить фиктивное местоположение
Фактически любое приложение для Android, которое ранее использовало внутреннее местоположение Android, теперь будет использовать данные о местоположении со стрелкой. Это помещает субметровые или сантиметровые координаты GNSS прямо в ваше собственное приложение для Android.
Имейте в виду, что фиктивное местоположение передает только ваши GNSS-координаты (X, Y и Z), расчетную горизонтальную точность, а также информацию о скорости и курсе относительно земли (COG). Чтобы поделиться метаданными GNSS с приемника Arrow в приложении для Android, нужно выполнить еще один шаг.
Как поддерживать метаданные GNSS в вашем приложении с помощью нашей собственной реализации
Что такое метаданные GNSS и зачем мы их собираем?
Метаданные GNSS — это информация о качестве вашего местоположения и дифференциальных поправках. Например, метаданные могут включать в себя индикатор дифференциального статуса местоположения, такой как «нескорректированный», «DGNSS», «фиксированный RTK» или «плавающий RTK».
Метаданные GNSS важны, потому что они помогают мобильным бригадам принимать более взвешенные решения в полевых условиях, упрощают утомительный рабочий процесс, ранее связанный с постобработкой, и предоставляют средства для сохранения «родословной» ваших местоположений собранных активов.
Eos предлагает бесплатную проприетарную реализацию, которая позволяет извлекать метаданные GNSS из Eos Tools Pro и легко использовать их в приложении для Android без какой-либо сложной разработки программного обеспечения. Чтобы начать работу с проприетарным контентом, свяжитесь с Eos.
Обмен данными GNSS с помощью Eos Tools Pro — самый популярный метод, который выбирают пользователи Arrow. Однако вы также можете подключить свое приложение для Android — вместо Eos Tools Pro — напрямую к Arrow через Bluetooth®.
Некоторые пользователи Arrow выбирают этот рабочий процесс. Вот почему.
В чем преимущество прямого подключения моего приложения к Arrow?
Стоит отметить, что только одно приложение может подключаться к приемнику Arrow через Bluetooth®.Это означает, что вам придется выбирать между Eos Tools Pro и вашим приложением.
Как вы решаете?
Ответ: зависит.
Мы рекомендуем задать два вопроса о вашем рабочем процессе.
Во-первых, соответствует ли ваш рабочий процесс этим двум требованиям?
- Да, мое приложение может считывать стандартные данные NMEA с внешнего приемника GNSS.
- Нет, мой рабочий процесс не требует подключения к сети RTK (ИЛИ) Да, в моем приложении есть клиент NTRIP, так что я могу подключаться к сети RTK.
Если ваше приложение может считывать данные NMEA и вы не будете использовать наземные службы коррекции (например, сеть RTK), вы можете подключить свое приложение напрямую к приемнику Arrow.
В этом случае использование Eos Tools Pro совершенно необязательно.
Почему же большинство пользователей до сих пор используют Eos Tools Pro?
Eos Tools Pro предлагает расширенные функции, которых может не быть в вашем приложении для сбора данных. Например:
- Звуковые сигналы для контроля допустимых порогов
- Поддержка смещения нулевой точки XYZ и вертикальной нулевой точки (например, ортометрических высот)
- Поля метаданных GNSS, которые могут не отслеживаться в других приложениях
- И многое другое
В связи с этим мы рекомендуем большинству пользователей подключаться к Arrow через Eos Tools Pro и следовать рабочим процессам Mock Location и метаданных для использования местоположения и метаданных GNSS.
Но что делать, если ваш рабочий процесс требует внесения поправок наземным способом, например из сети RTK?
Во-вторых, если для вашего рабочего процесса требуется сеть RTK, ваше приложение должно поддерживать клиент NTRIP или вам нужно использовать Eos Tools Pro
Если в вашем приложении нет клиента NTRIP, но вам требуются исправления RTK, вам потребуется использовать Eos Tools Pro, чтобы воспользоваться преимуществами клиента NTRIP. Клиент NTRIP — это то, что позволяет вам использовать преимущества наземных систем дополнений (LBAS), таких как поправки RTK.
Очень немногие приложения для сбора данных на рынке имеют собственный встроенный клиент NTRIP. Вместо этого эти приложения сохраняют свои собственные проекты простыми и оставляют эту специализированную задачу GNSS такому приложению, как Eos Tools Pro. Во многих приложениях, которые рекомендует Eos, уже реализована поддержка функции метаданных Eos.
Заключительные размышления перед сбором высокоточных местоположений GNSS в собственном приложении
Независимо от того, какой вариант вы выберете, мы надеемся, что эта статья немного облегчила вам понимание того, как делиться данными о местоположении Arrow и получать их в своем собственном приложении для Android.
Но помните, что вы можете подключить к Arrow только одно приложение через Bluetooth®. Если вы попытаетесь подключить несколько приложений к одному приемнику, вы можете столкнуться с такими проблемами, как обрыв или нестабильное соединение Bluetooth®.
Пользователи Android могут загрузить приложение GPSTest, которое проверит, использует ли ваш телефон в настоящее время спутники Galileo для определения своего местоположения.
Используйте приложение GPSTest (или аналогичное), чтобы узнать, выигрывает ли ваш смартфон от повышенной точности позиционирования, которую обеспечивает Galileo.
Поскольку Galileo — встроенная функция аппаратного обеспечения смартфона, единственный способ использовать возможности Galileo на своем телефоне – это приобрести телефон с чипом, который отслеживает работу Galileo. Хорошей новостью является то, что большинство чипов, установленных в телефонах, являются мульти-Глобальной навигационной спутниковой системой (), что означает, что они используют данные более чем из одного созвездия GNSS. Вопрос в том, какие созвездия использует ваш телефон?
Пользователи Android могут выбрать одно из нескольких приложений, большинство из которых доступны бесплатно, которые будут проверять, использует ли ваш телефон в настоящее время спутники Galileo или Глонасс, чтобы определить его местоположение. Например, чтобы проверить, использует ли ваш телефон Galileo, вы можете загрузить приложение GPSTest из магазина Google Play или F-Droid. Это приложение с открытым исходным кодом, разработанное доктором Шоном Барбо, который является главным разработчиком мобильного программного обеспечения для исследований и разработок в Центре исследований городского транспорта Университета Южной Флориды, отображает информацию о спутниках в режиме реального времени в поле зрения вашего устройства. р>
После установки просто запустите приложение. «Всего за несколько секунд вы сможете увидеть доступные спутники, передающие данные о местоположении на ваше устройство», — говорит доктор Барбо. Приложение показывает четыре глобальных созвездия: GPS (американский флаг), Galileo (флаг ЕС), (российский флаг) и Beidou (китайский флаг).На нем также показаны региональные спутниковые системы дополнений (), включая QZSS (японский флаг), GAGAN (индийский флаг), ANIK F1 flag (канадский флаг), Galaxy 15 (американский флаг), Inmarsat 3-F2 и 4-F3 (британский флаг). флаг), SES-5 (флаг Люксембурга) и Astra 5B (флаг Люксембурга).
"Скорее всего, вы увидите, что ваш телефон использует несколько GNSS для позиционирования, и если одним из них является Galileo, вы должны увидеть синий флажок Galileo в приложении", – отмечает д-р Барбо.
"Если на экране состояния рядом со спутником Galileo стоит буква U, это значит, что этот спутник используется вашим устройством для расчета вашего местоположения в данный момент".
Однако д-р Барбо отмечает, что те, кто в настоящее время использует свои смартфоны в сети, не увидят флаг Galileo, даже если аппаратное обеспечение их телефонов поддерживает сигналы Galileo. Это связано с тем, что Федеральная комиссия по связи США (FCC) должна сначала одобрить Galileo, прежде чем какие-либо устройства смогут использовать его сигналы на территории США. Заявка Европейской комиссии находится на рассмотрении FCC, и мы надеемся, что это региональное ограничение будет снято в ближайшее время.
Другая информация, предоставляемая приложением, включает:
- Широта и долгота устройства
- Географическая высота
- Общее количество спутников в поле зрения
- Надежность текущей конфигурации спутников и ее влияние на точность
- Текущее местное время, считанное с GNSS
- Время первого исправления ()
- Скорость устройства
- Идентификаторы спутников
- Несущая частота сигнала (, L5, E1, E5) на поддерживаемых устройствах
- Отношение несущей к шуму
- Высота и азимут спутника
- Если устройство получило информацию (альманах, эфемериды) о текущем положении каждого спутника
- Расчетная горизонтальная и вертикальная точность определения местоположения
- Оценка скорости и точности пеленга
Чтобы узнать больше обо всех многочисленных функциях GPSTest, прочитайте это.
В дополнение к GPSTest пользователи могут выбирать из множества подобных приложений. Чтобы увидеть, как Galileo повышает точность GPS, пользователи могут загрузить GNSS Compare. Это приложение, победившее в конкурсе приложений Galileo, который был организован совместно с .
Так в чем же дело?
Когда ваш телефон вычисляет свое местоположение с помощью GNSS, доступ к большему количеству спутниковых сигналов означает более высокую точность определения местоположения и более быстрое исправление. Таким образом, преимущество наличия телефона с поддержкой Galileo заключается в том, что местоположение можно рассчитать с использованием 17 доступных в настоящее время спутников Galileo (обновление: 22 спутника в 2020 г.), помимо GPS и других созвездий GNSS. Это особенно полезно в городских условиях, где узкие улицы и высокие здания блокируют спутниковые сигналы и ограничивают полезность многих мобильных сервисов.
«Устройства с поддержкой Galileo определенно имеют преимущество: чем больше спутников, тем лучше вы определяете свое местоположение, — говорит д-р Барбо. «Вы определенно выиграете от более точного и надежного позиционирования, которое помогает обеспечить Galileo, особенно с появлением новых устройств, поддерживающих двухчастотную GNSS как для GPS, так и для Galileo».
●Что такое GNSS View?
GNSS View предоставляет версию приложения для Android, основанную на веб-приложении «GNSS View». Это приложение оптимизировано для 32-разрядной версии.
Это приложение позволяет узнать положение спутников позиционирования, таких как QZSS и GPS, в указанное время и в указанном месте.
Спутники позиционирования, отображаемые в представлении GNSS, не основаны на информации о спутниках, непосредственно полученной смартфоном, а отображаются на основе расположения спутников, рассчитанного на основе общедоступной информации об орбите.
●Функции GNSSView 3
【Главная】
・Вы можете перейти к экрану позиционного радара или экрану дисплея дополненной реальности с экрана запуска приложения.
・Вы можете просмотреть руководство по эксплуатации и конфиденциальность политика этого приложения через веб-сайт.
【Позиционный радар】
・Предоставляется радиолокационное изображение позиционирующих спутников, таких как QZS и GPS, в виде графика неба в указанное время и в указанном месте.
・Позиционирующие спутники можно указать из QZSS, GPS, GLONASS, BeiDou, Galileo, SBAS.
・Вы также можете выбрать определенные сигнальные спутники для отображения на радаре.
・Вы можете видеть выбранные спутники, задав угол наклона маски возвышения.
・Вы можете переключать расположение спутников на восток и запад, включать/выключать вращение и включать/выключать отображение номера спутника.
・Отображает HDOP, VDOP, общее количество спутников и количество спутников позиционирования в расположении спутников, отображаемых на радаре.
【AR Display】
・Положение спутников позиционирования, таких как QZSS и GPS, на небе из вашего текущего местоположения можно увидеть через вашу камеру Android в указанное время.
・Для отображения спутники, необходимо включить информацию о местоположении смартфона и завершить позиционирование. Поэтому для отображения может потребоваться время.
・Позиционирующие спутники можно указать из QZSS, GPS, ГЛОНАСС, BeiDou, Galileo, SBAS.
・Вы также можете выбрать определенные сигнальные спутники для отображения на радаре.
・Вы можете видеть выбранные спутники, задав угол наклона маски возвышения.
●Поддерживаемые версии
・iOS 8.0
・iOS 8.1
・iOS 8.2
・iOS 8.3
・iOS 8.4
・iOS 9.0
・iOS 9.1
・iOS 9.2
・iOS 9.3
・iOS 10.0
・iOS 10.1
・iOS 10.2
・iOS 10.3
・iOS 11.0
・iOS 11.1
・iOS 11.2
・iOS 12.0
・iOS 12.1
・iOS 12.2
・iOS 12.3
・iOS 12.4
・iOS 13.0
・iOS 13.1
・iOS 13.2
・iOS 13.3
Последние несколько версий Android превратили его в мощный инструмент для обработки данных Глобальной навигационной спутниковой системы (GNSS) из таких систем, как Глобальная система позиционирования (GPS) и Galileo. Устройство с Android 7.0 и выше поддерживает официальный API для измерения псевдодальности и навигационных сообщений, что позволяет разработчикам вычислять позиции в приложениях. Ранее все приложения были ограничены использованием позиций, рассчитанных аппаратным обеспечением GNSS, которое представляло собой черный ящик. Агентство GNSS Европейского Союза (GSA) даже выпустило практическое руководство, описывающее технический процесс использования необработанных данных измерений. Google также открыл набор инструментов для обработки и визуализации измерений.
Допустим, вам не терпится поработать с необработанными данными измерений GNSS. Вы запускаете приложение для сбора необработанных данных измерений (например, мое приложение GPSTest или GNSSLogger), а затем используете инструменты Google для визуализации этой информации. Но вы видите нечто удивительное — данные выглядят прерывистыми с частыми пробелами.
Используя настройки Android по умолчанию, вы можете увидеть «прерывистые» данные измерений GNSS, особенно для L5 (Источник: Эндрю Ву, GPSTest Google Group)
Что-то не так с вашим устройством? Приложение неправильно записывает данные?
Оказывается, это ожидаемое поведение по умолчанию для GNSS на Android. Когда приложение активирует GNSS, с точки зрения пользователя это выглядит так, как будто оборудование GNSS постоянно активно — вы видите обновления местоположения примерно раз в секунду, когда перемещаетесь по карте.
Однако для экономии заряда аккумулятора Android в течение этого времени постоянно включает и выключает аппаратное обеспечение GNSS. Таким образом, GNSS включается только на долю секунды, прежде чем снова отключится, и эти периоды «выключения» могут привести к пробелам в данных. Эти пробелы кажутся особенно заметными для сигналов L5 или E5a на двухчастотных устройствах.
К счастью, если вы хотите оставить оборудование GNSS постоянно включенным, пока приложение использует GNSS, в Android 9 был добавлен соответствующий параметр. Однако найти его непросто.
EDIT Aug 2021 — На Android 12 и более поздних версиях в GPSTest версии 3.9.13 и более поздних версиях теперь вы можете включить это как настройку в приложении в GPSTest из-за < em>новый системный API Android 12. Его легко найти — больше не нужно возиться с параметрами разработчика!
Во-первых, вам нужно включить скрытое меню "Параметры разработчика". Перейдите к настройкам системы Android, затем прокрутите вниз и нажмите «О телефоне», затем прокрутите вниз и семь раз нажмите «Номер сборки»:
Чтобы активировать параметры разработчика, в настройках системы Android в разделе "О телефоне" нажмите "Номер сборки" семь раз
Вы должны увидеть сообщение, поздравляющее вас с тем, что вы стали разработчиком.
(Примечание. В зависимости от вашей версии Android меню «Номер сборки» может находиться в другом месте — см. эту страницу для получения дополнительной информации, если ваше устройство не соответствует скриншотам выше)
Затем вернитесь на главную страницу настроек Android. В зависимости от вашей версии Android новое видимое меню «Параметры разработчика» должно отображаться здесь внизу или в подменю «Система» (оно может быть свернуто в настройках «Дополнительно»). На снимке экрана ниже показана настройка для Android 11.
"Параметры разработчика" обычно находятся в настройках системы или в подменю "Система", в зависимости от версии Android. Android 11 показан выше.
После того, как вы перейдете к «Параметры разработчика», прокрутите вниз, пока не найдете параметр «Принудительно выполнять полные измерения GNSS» — вам нужно включить его.
Если вы вернетесь к приложению для сбора необработанных данных измерений GNSS и запишете новые данные, повторяющиеся пробелы исчезнут:
При включенном параметре "Принудительно выполнять полные измерения GNSS" повторяющиеся пробелы в данных исчезают (Источник: Эндрю Ву, GPSTest Google Group)
Этот параметр особенно важен, если вы хотите использовать приложение, в котором используется кинематика в реальном времени (RTK) или измерения фазы несущей, поскольку прерывания в данных помешают его правильной работе. Если вам нужно более подробное объяснение того, почему рабочий цикл является убийцей RTK, ознакомьтесь с отличной презентацией Google I/O «Как получить точность определения местоположения с точностью до одного метра с устройств Android», подготовленной Фрэнком ван Диггеленом из Google.
Теперь вы знаете, как использовать скрытую настройку в системе Android «Параметры разработчика» для «Принудительно выполнять полные измерения GNSS», которая отключит рабочий цикл GNSS на вашем устройстве. Обратите внимание, что при этом оборудование GNSS остается активным только тогда, когда приложение активно прослушивает обновления местоположения — в противном случае GNSS останется отключенным.
Имейте в виду, что когда этот параметр включен, а GNSS активна, существует компромисс со временем работы от батареи, поскольку оборудование больше не будет периодически отключаться на доли секунды для экономии энергии. Сколько? Чтобы дать вам приблизительное представление, в приведенной выше презентации Google I/O Фрэнк Ван Диггелен говорит, что "при непрерывной работе GNSS потребляет менее 20 % энергии, потребляемой экраном, когда он включен".
Большой открытый вопрос — повысит ли эта настройка точность определения местоположения в таких популярных приложениях, как Google Maps?
Приложения, которые получат наибольшую выгоду, это те, которые могут вычислять свое собственное местоположение с помощью измерений RTK/фазы несущей (в отличие от использования местоположений, рассчитанных аппаратным обеспечением GNSS). приложения делают это. В декабре 2020 года компания Google объявила о развертывании новой функции для устройств Android, позволяющей использовать трехмерные данные о зданиях в своем «объединенном» поставщике геолокации, но конкретно о RTK не упоминается.
Для остальных приложений, использующих определение местоположения напрямую с оборудования GNSS, которые не используют RTK, предположительно, если устройство может сохранять блокировку GNSS, это было бы лучше, чем повторное получение данных, но только тестирование в реальных условиях может сказать, это имеет заметное значение в реальном мире с современными устройствами.
Если вам интересно, попробуйте измерить точность GNSS на вашем Android-устройстве с помощью GPSTest до и после включения параметра «Принудительно выполнять полные GNSS-измерения» и дайте мне знать, что вы видите, в комментариях ниже.
Удачных непрерывных измерений GNSS! У вас есть опыт работы с функцией «Принудительные полные измерения GNSS»? Пожалуйста, поделитесь своими мыслями в комментариях ниже!
Была ли эта статья полезной? Рассмотрите возможность подписаться на меня в Medium. Если вы являетесь пользователем приложения с открытым исходным кодом GPSTest и хотите поддерживать его, вы можете проверить GPSTest “ Страница «Купи мне кофе»:
Читайте также: