RTKlib/постпроцессинг

Это официальный evaluation kit, у него несколько иная задача. Не очень понимаю, правда, зачем было, в таком случае, его брать - на предыдущей странице давал ссылку на неплохой девайс для установки на беспилотники, он куда дешевле и ближе к идеалу.

Не подскажите, где можно взять rtkgps+ для android работающую с ublox M8T?
Версия из google play его ещё не поддерживает. Данные идут, в лог пишется, а solution никакие не выдаёт и ничего не рисует.
Под виндами вроде заработало на rtklib с последними патчами (отсюда), нашёл прошлогоднюю сборку rtkgps+ с www.optimalsystem.de с патчем rtklib 2.4.2_p11, по идее там уже должна быть поддержка, но что-то не заводится.

Хотелось взять девайс в корпусе, который можно просто подключить к USB и начать получать сырые данные.
Возиться с платами и заниматься пайкой пока не привлекает.

У меня alpha24, про поддержку 8T не знаю. По идее ты можешь включить сообщения (TKMEA), чисто для GPS они нормально работают.
А вообще по сути надо просто пересобрать librtkgps.so на текущую версии и запихнуть его обратно в apk. Но это над освоить NDK.

Ссылку не читай, возражение пиши.

  • это вот что там внизу торчит? Не USB-порт случайно? Паять вам бы пришлось только если вы захотите к этой штуке прикрутить OpenLog или упомянутый выше Bluetooth.
    Ну да дело (и деньги), естественно, ваше.

“Ответ целиком не читай, возражение пиши.”
Что-то не вижу тут корпуса, зато вижу голую плату, проводами наружу. Нравится вам с таким возиться - да ради бога. А мне бы что-нибудь более законченное. Вот девайсы с www.optimalsystem.de - это хорошая альтернатива, практически готовые решения, но и цена там не такая уж маленькая, и опять же с доставкой в Россию проблемы (т.к. DHL).

Разъем = провода наружу?
Платить за корпус, который можно сварганить из коробочки для бутербродов, больше ста евро - это, безусловно, дело ваше, как я уже сказал.

Попробовал разные режимы.
GPS, Глонасс, Galileo, SBAS одновременно видит нормально. Beidou одновременно с Глонасс не включается, либо то либо то.
Из спутников SBAS из Питера видны EGNOS и GAGAN, максимальная высота у них над горизонтом 20 градусов, на наземных треках видны с перерывами. Однажды поймал сигнал PRN140, я так понимаю это тестовый СДКМ с какого-то Луч-а.

В постобработке, на часовой сессии с балкона, получился static fixed на GPS в паре с базой в 11 км, отклонение в сантиметры. На GPS+Глонасс почему-то получается только float, правда в сантиметрах 5 от fixed.

Подскажите, режим PPP у RTKLib только для двухчастотников или на одночастотнике можно как-то завести?

Подскажите, режим PPP у RTKLib только для двухчастотников или на одночастотнике можно как-то завести?
Почему? И для L1 работает, но для вменяемого результата нужны сутки наблюдений.

Понял, многовато, конечно.
А данные по ионосфере откуда при этом лучше брать? Или без разницы?

PPP режим так и не получилось запустить, как не бился - нет решения и всё тут.

Зато получилось с RtkGps+ под андроидом.
Обновил там rtklib до последней версии (2.4.3 b22), добавил поддержку unix socket которая нужна RtkGps+ для взаимодействия через usb и всё заработало на Samsung Note 4:

Блин, а я всю неделю крутил и так и сяк. Сбилдить удалось, но падает при копировании настроек :frowning:
А PPP да, не работает толком. Разработчик так и написал в одном из issue, что мол берите 2.4.2, а это бетка.

Я только нативную часть менял (подменял в apk и переподписывал), само приложение пока не трогал. Тут лежит моя последняя сборка, можете попробовать если нужно: https://cloud.mail.ru/public/Lsdj/yrZSGweVD

Типа на 2.4.2 оно для одночастотников лучше работает? Что-то сомнения берут.
А есть онлайновые сервисы постобработки PPP с использованием Глонасса? Пока только с GPS видел.

Причем, наверное, только двухчастотный. Даже все сервисы обработки классической статики требуют L2 (тем более PPP), а есть там ГЛОНАСС или нет - вторая частота от этого не появится. За долнгие годы я пришел к выводу что работа с L1 - дело рук самих утопающих (

На 2.4.2 PPP таки заработал, причём даже на связке GPS+Глонасс+Галилео

Эфемериды с часами использовал от glonass-iac.ru, других с поддержкой Галилео пока не нашёл.

#! PRODUCT (IAC RU)
IACRU_EPH_ULT    ftp://ftp.glonass-iac.ru/MCC/PRODUCTS/%y%n/ultra/Stark_%y%m%d%hb.sp3  c:\GNSS_DATA\product\%W
IACRU_CLK_ULT    ftp://ftp.glonass-iac.ru/MCC/PRODUCTS/%y%n/ultra/Stark_%y%m%d%hb.clk  c:\GNSS_DATA\product\%W
IACRU_EPH_RPD    ftp://ftp.glonass-iac.ru/MCC/PRODUCTS/%y%n/rapid/Sta%W%D.sp3     c:\GNSS_DATA\product\%W
IACRU_CLK_RPD    ftp://ftp.glonass-iac.ru/MCC/PRODUCTS/%y%n/rapid/Sta%W%D.clk     c:\GNSS_DATA\product\%W

На 2.4.3 ни в какую. Вероятно поломали там что-то для одночастотников.

http://magicgnss.gmv.com/ppp/
Вот этот сервис от испанцев поддерживает Глонасс, но тоже только двухчастотники.

Давно интересовали вопросы:

  • Если если один из приемников (ровер) одночастотный(L1), дает ли какие-то улучшения использование на базе двухчаcтотного (L1/L2) приемника по сравнению с одночастотным?
  • С утилитами из RTKLib есть одна неприятная особенность. rtkpost.exe / rnx2rtkp.exe ничего не сообщают о том, что делают. Взялись в обработку данные GLONASS или не взялись? Из какого файла были взяты эфемериды? Подхватил уточненные данные с IGS или использует broadcast? Нифига непонятно.
  • Обрабатывал одни и те же наблюдения (база и ровер) в RTKlib и в GNSS Solution. GNSS Solutuin дает fixed решения для гораздо большего числа точек, чем RTKlib. Бывает например RTKLib: fix=54% float 46%, GNSS Solution: fix=97% float=3%. Что подкрутить в RTKlib? GNSS Solution вроде обрабатывает GLONASS, а с RTKlib непонятно (отсюда и возник предыдущий вопрос).
  1. Теоретически через L2 должны быть учтены атмосферные поправки и применены для ровера. Доподлинно надо смотреть исходники.
  2. Включи trace level 5 и твой мозг взорвётся от обилия логов. Но если возникли такие вопросы, думаю они врятли помогут :slight_smile:
  3. Тут бы я сказал как раз на оборот, что rtklib очень мощный инструмент с кучей рычагов для тюнинга. Например в предпоследней статье rtklibexplorer писал про такие настройки как: минимальное количество удержания фазы для фикса, количество фиксов для удержания этого фикса в режиме fix&hold (ну тут я вообще не силён в терминах), время до сброса фикса при отсутствии данных базы, коэффициент когда float считать fix. И ещё куча которые я не разу не крутил. А GNSS Solution - одна кнопка Посчитать. Кроме отключения спутника как либо воздействовать на решения нельзя. Можешь сменить MinRatioToFix на 2 и тоже получишь 99%, но это только красивые цифры.
    Опять же “GNSS Solution вроде обрабатывает GLONASS” - вообще не узнаешь что он там решал. В rtklib же видно сколько спутников участвовало в решении, 10 и больше значит был Глонасс.
  1. Вторая частота на базе ничего не дает если ровер одночастотный. Единственное полезное применение это обработка от нескольких баз, тогда появляется возможность сделать более точный контроль координат этих баз (т.е. вектор база1-база2 будет двухчастотный). емник RTKLib не умеет делать “много-базовое” уравнивание вообще, а GNSS Solutions умеет только для статики.

  2. В GNSS Solutions есть графики невязок, по которым сразу видно какие спутники использовались и насколько они косячат; после просмотра таких графиков рука тянется повысить маску до 12-15°, а некоторые спутники вообще вырезать из обработки в редакторе сессий.

По графикам невязок (residuals) в rtkplot видно какие спутники использовались, они считаются только для тех кто был использован в решении.

Ну ещё PPP для двухчастотника везде работает, можно использовать для автономного вычисления координат базы (если рядом нет других баз).

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

Если невязка во время сессии имеет диапазон > 0.5 цикла и планомерно растет, то как правило это низкий спутник либо отраженка. Возникает логичный вопрос - правильно ли для него решился AR, возможно следует исключить его из обработки. Чем дальше база тем больше спутников имеет большие невязки.