Исправления DGPS на Android - PullRequest
26 голосов
/ 26 марта 2012

Я занимаюсь разработкой проекта, который предназначен для использования возможностей GPS телефона Android и соседней станции для вычисления местоположения в гораздо более точной степени (см) с использованием технологии RTK DGPS.

До сих пор я не видел, чтобы кто-нибудь говорил, что им действительно удалось выполнить аналогичную задачу (кроме @GPSmaster, , который не объясняет, как ), а APK - нет. кажется, предлагают любую информацию от чипа GPS, кроме местоположения и обновлений сообщений NMEA. Мне нужны, если возможно, псевдодальности и фазы несущей.

Мне было интересно, если:

  • На моем телефоне можно было бы искать перехватчики более низкого уровня, используя собственный код или другие функции отслеживания более низкого уровня;
  • Можно было бы отправить исправления RTCM на чип GPS, присутствующий на одном из этих устройств;

Есть идеи?

Ответы [ 7 ]

5 голосов
/ 13 февраля 2015

Вообще говоря, DGPS - это метод, который повышает точность реального положения за счет устранения большинства атмосферных воздействий на сигнал GPS.В типичном прямом измерении GPS имеется случайная ошибка в диапазонах, рассчитанных для спутников из-за атмосферных воздействий.Вот почему GPS-приемник, оставленный для сбора данных в фиксированном месте, будет казаться, что он находится в эллипсе ошибки.Для двух приемных станций в одной и той же зоне атмосферные эффекты почти идентичны, и они будут блуждать параллельно в пределах их одинаковых по размеру и ориентированных эллипсов ошибок.Если один из двух приемников находится в известном местоположении, то можно найти различия в их видимых местоположениях GPS и нанести их на график из истинного местоположения известной станции, чтобы найти истинное местоположение неизвестной станции.

В те дни (около 1992 г.), когда нам приходилось выполнять DGPS с помощью «постобработки», мы использовали, чтобы взять необработанные данные NEMA, собранные на двух станциях, сопоставить время, вычислить базовый вектор и применить егов известную точку, чтобы найти неизвестную точку.Я думаю, что данные NEMA, которые мы использовали, были записаны только с точностью до 10 секунд.Математика не так уж и сложна.

Я подозреваю, что сообщения NEMA GPS [http://developer.android.com/reference/android/location/GpsStatus.NmeaListener.html] от планшета в известной точке (с чистым небом), вероятно, могут быть отправлены через Интернетгнездо для смартфона (также с чистым видом на небо), которое может затем вычислить разницу и достичь относительного местоположения на расстоянии менее метра на расстоянии нескольких километров, даже если предполагаемое время прохождения через Интернет было проигнорировано.Эта техника, вероятно, все еще будет работать, даже если на планшете и смартфоне будут применены настройки широковещательного DGPS.

4 голосов
/ 12 декабря 2016

С появлением Android 7.1 исходные данные с чипов GPS будут доступны для разработчиков. (http://gpsworld.com/google-to-provide-raw-gnss-measurements/)

Другие, кажется, сделали что-то похожее на то, что вы хотите достичь (http://gpsworld.com/innovation-precise-positioning-using-raw-gps-measurements-from-android-smartphones/)

4 голосов
/ 11 августа 2012

Нет, практически невозможно получить доступ к устройству GPS более низкого уровня с помощью приложения Android.Это имеет несколько причин:

  • Приложение не имеет других средств доступа к устройству GPS, как через API на основе Java.Нативный код запрещен для использования большинством устройств и обычно требует Java-оболочки для туннелирования через песочницу для сенсорных устройств Android.Это составляет основную концепцию безопасности.

  • Если нативный код будет иметь доступ к устройству GPS на более низком уровне, ему придется справиться с протоколами нескольких разных производителей, которые теперь не выделеныAPI.Наилучшие шансы получить доступ к пользовательским кодам NMEA, которые могут по-прежнему зависеть от устройства.

  • Даже если доступ на более низком уровне будет возможен, можно потерять интегрированное объединение других источников местоположения, таких какWLAN и оператор сотовой связи, которые предположительно объединены в собственном коде ниже Java API, но выше протокола NMEA.

2 голосов
/ 31 июля 2012

Ммм.Ваш андроид, вероятно, имеет такую ​​дерьмовую GPS-антенну, что добиться точности в см невозможно.Возможно, если вы усредняете позицию по дням ... обычно поддержка DGPS не публикуется, и не многие чипсеты поддерживают ее.В прошлый раз, когда я видел, что DGPS реализовал это, он включал взлом реальной прошивки GPS-чипа для добавления поддержки.Даже заставить A-GPS работать с произвольным набором микросхем сложно, поскольку они могут не поддерживать документированный способ подачи вспомогательных данных.

1 голос
/ 02 июня 2014

Вы можете использовать коррекции DGPS в Европе через пользовательское приложение для SISnet, получающего сигналы коррекции со спутников расширения EGNOS (http://egnos -portal.gsa.europa.eu / news / egnos-gets-Invite-your-smartphone- 11 ). Однако ему нужна подписка (которая пока еще не открыта для общественности) на SISnet, чтобы получить имя пользователя и пароль для подключения к своим серверам. Там есть некоторые из опубликованных SDK, которые вы можете найти полезными. Просто помните, что вы ограничены только сигналами C / A (псевдодальности), и вы НЕ МОЖЕТЕ получать данные фазы (L1 / L2) от этих дешевых микросхем внутри смартфонов. Вам понадобится прецизионный приемник GNSS, такой как Trimble BD910 (http://www.trimble.com/gnss-inertial/bd910.aspx?dtID=overview) для доступа к сигналу фазы несущей L1 для GPS и ГЛОНАСС. Однако существуют более дешевые чипы, поддерживающие SBAS, но ни один еще не установлен в телефонах.

0 голосов
/ 04 сентября 2012

RTCM исправление может быть отправлено на ваш телефон с помощью NTRIP 'provider'.Затем вам нужно применить его к вашему сырой GPS в вашем Android.

0 голосов
/ 26 июля 2012

Это должно быть связано с аппаратной реализацией, а не с программной реализацией.

В действительности, GPS обычно сопровождается Wi-Fi или 3G для помощи в поиске текущей позиции.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...