Высокоточная навигация на основе кинематики реального времени RTK для приёмников НАВИА

Опубликовано в номере:
PDF версия
В статье представлены новые возможности навигационных приемников производства НАВИА, такие как поддержка высокоточной навигации на основе фазовых измерений и функции RTK.

Приемники НАВИА ML8089F на базе чипсета STA8089 и планируемой серии CL8090F/CL8090FS на базе чипсета STA8090 с версией программного обеспечения 4.5.7CP, универсальной для перечисленных устройств, поддерживают навигационные системы GPS/Galileo/ГЛОНАСС/BeiDou/QZSS. Они работают в диапазоне L1 и поддерживают 48 обычных каналов и дополнительно два канала быстрого определения. Это классические современные навигационные приемники общего назначения, для которых поддержка высокоточной навигации на основе фазовых измерений — это программная опция, реализующая возможности чипсета STA8089/STA8090 и не увеличивающая стоимость самого приемника. Однако следует понимать, что для полноценной реализации этой функции потребуется несколько более совершенная антенна и весь антенный тракт конечного устройства в целом.

Функция фазовых измерений открывает новые возможности для повышения точности решения навигационной задачи для навигационного приемника, но все возможности фазовых измерений не могут быть раскрыты без применения внешней корректирующей информации о быстро меняющейся задержке сигнала спутников. Чем чаще эта информация обновляется, тем выше средняя получаемая точность измерений позиции, и применение RTK (Real Time Kinematic — «кинематика реального времени») — это один из самых эффективных и современных способов получения субдециметровой (в диапазоне L1) и даже субсантиметровой точности (в диапазоне L1+L2). Требуется видимость не менее пяти спутников как для приемника, уточняющего свое положение (ровера), так и для приемника, знающего свое положение с высокой точностью (базовой станции, БС). В реальности чем больше спутников участвует в решении навигационной задачи, чем лучше видимость открытого неба в точке измерений, антенна имеет наилучшие параметры, а высокочастотная часть устройства более качественно спроектирована, тем выше точность решения, причем для БС требования к оборудованию даже выше, чем для ровера.

Чтобы обеспечить пользователю свободу выбора в реализации вышеперечисленных возможностей, приемники НАВИА с версией программного обеспечения 4.5.7CP могут передавать «сырые» данные измерений псевдодальностей и другие параметры измерений по каждому спутнику для внешней обработки в служебных сообщениях STMicroelectronics в составе потока NMEA0183 с заголовком сообщений $PSTM и в потоке RTCM3. Таким образом, навигационная задача может быть решена во внешнем приложении, например в программном пакете RTKLib, который является свободно распространяемым программным обеспечением, доступным в виде исполняемых файлов и исходных кодов на сайте [3].

Данный программный продукт позволяет решить навигационную задачу совместно по данным измерений параметров спутников в БС, которая точно знает свое местоположение, и данным измерений параметров тех же спутников на ровере, положение которого необходимо определить с высокой точностью, как в режиме реального времени, так и в постобработке. По сути, для БС, положение которой известно, периодически вычисляется разница между расчетными данными и реально измеренными. Это и будет погрешностью, данные о которой по каждому спутнику используются при расчете позиции ровера. У RTKLib очень широкие возможности, поэтому пакет уже успел стать практически стандартом для применения в геодезических задачах.

Для первоначальных тестов оборудования в режиме реального времени можно не передавать данные через GSM-модем: достаточно длинного кабеля, чтобы обеспечить расстояние между антеннами БС и ровера не менее нескольких метров для статических тестов. Для тестов в динамике можно перемещать только антенну ровера, насколько позволяет ее кабель. Этого вполне достаточно для оценки точности навигационного решения, ведь речь идет о точности, измеряемой сантиметрами, поэтому больших перемещений приемника не нужно.

Конечно, для начала экспериментировать с собственной БС проще и нагляднее, но с учетом того, что существует достаточно много коммерческих сетей, предоставляющих данные в формате RINEX на определенные периоды для определенного региона покрытия на коммерческой основе, можно в дальнейшем использовать эти данные в режиме постобработки вместо данных собственной БС. С учетом того что удаленность выбранной БС от ровера не должна превышать 30 км, можно сказать, что покрытие таких сетей в крупных городах обычно практически полное, а вне крупных населенных пунктов покрытие частичное. Возможно получение данных БС в реальном времени через сетевой протокол NTRIP, а также любой другой способ получения данных от коммерческого поставщика.

Заказать образцы
Заказать образцы

Оборудование

Для первичных тестов использовались две отладочные платы NAVIA GPS-GLONASS DEMOBOARD для приемников НАВИА ML8089F (рис. 1, 2), изначально разработанные для демонстрации инерциальной навигации на базе данного типа приемников, но эти возможности приемников не рассматривались, поэтому гироскопы и разъемы для получения данных одометра не устанавливались. Одна плата использовалась как БС, другая — как ровер. Антенны находились рядом на расстоянии примерно 4 м на высоте не более 2 м от земли, измерения проводились на открытой местности без перемещения антенны ровера. Обе платы были подключены к одному ноутбуку с запущенным на нем программным обеспечением RTKLib.

 

Рис. 3. Антенна НАВИА MPR107

Применялись антенны с подавлением отраженного сигнала НАВИА MPR107 (рис. 3) для БС и более компактные Tallisman TW2400 (рис. 4) для ровера. При размещении антенн для экспериментов с высокоточной навигацией следует учитывать, что, если для высокоточных измерений (в данном случае) используются обычные антенны, кабели не должны быть перепутаны между собой, разъемы SMA хорошо затянуты и т. д. В общем, к экспериментам надо готовиться тщательно, иначе хорошего результата не получить.

Обработка в реальном времени

Для работы в реальном времени с RTKLib в приемнике НАВИА ML8089F необходимо включить выдачу данных в формате RTCM3, поддерживаемом программой RTKNAVI, также входящей в RTKLib.

Рис. 4. Антенна Tallisman TW2400

Это можно сделать последовательностью команд, подавая их на порт приемника НАВИА ML8089F с помощью программы navia_viewer доступной на сайте [1], или через любую терминальную программу, или средствами RTKLib, что мы и сделаем.

После подачи данной последовательности команд выдача потока NMEA сменится на поток RTCM3.

$PSTMSETPAR,1227,9,2

$PSTMSAVEPAR

$PSTMSETPAR,1227,20020,1

$PSTMSAVEPAR

$PSTMSRR

Переключить обратно на выдачу потока NMEA можно следующей последовательностью команд (прием команд NMEA при выдаче потока RTCM3 сохраняется):

$PSTMSETPAR,1227,9,1

$PSTMSAVEPAR

$PSTMSETPAR,1227,20020,2

$PSTMSAVEPAR

$PSTMSRR

Также параметры порта RTCM можно настроить в следующих конфигурационных регистрах приемника с помощью navia_viewer на вкладке «Параметры»:

CDB-ID 138 – RTCM PORT SETTING

CDB-ID 139 – RTCM PORT BAUDRATE SETTING

Но это нам не понадобится. Если команды подаются через терминал, то признаком их успешного выполнения будет смена потока сообщений NMEA0183 на сплошной поток байтов — RTCM3 представляет собой бинарный протокол со сложной структурой пакетов.

В потоке RTCM3 приемник может передавать следующие сообщения:

RTCM1077 Extended GPS Code, Phase, CNR and Doppler Measurements

RTCM1087 Extended GLONASS Code, Phase, CNR and Doppler Measurements

RTCM1127 Extended BeiDou Code, Phase, CNR and Doppler Measurements

RTCM0063 BDS Ephemerides (a test message)

This message is a test log of RTCM3.x which contains BDS satellite ephemeris information.

RTCM1006 Station Coordinates Stationary RTK Base Station ARP with Antenna Height

RTCM1019 GPS Ephemerides

RTCM1020 GLONASS Ephemerides

Для сравнения в сообщениях $PSTM проприетарного протокола STMicroelectronics, на основе которых были получены данные постобработки, почти все данные измерений для каждого спутника (Satellite Number, Pseudo range, Satellite tracking Frequency Offset и др.) содержатся в сообщении $PSTMTS. Для каждого спутника формируется отдельное сообщение. Также формируются сообщения $PSTMSBAS — SBAS Satellite Data и ряд других. Работу с сообщениями протокола STMicroelectronics мы рассмотрим далее в разделе, посвященном постобработке.

Данные «сырых» измерений параметров спутников присутствуют и в потоке RTCM3, и в сообщении $PSTMTS, поэтому можно сказать, что мы должны получить сходные результаты при обработке в реальном времени и постобработке на одинаковых приемниках, антеннах и в одинаковых условиях приема. Но при обработке в реальном времени, конечно, все будет выглядеть более наглядно.

Подключаем платы с установленными приемниками к компьютеру, размещаем антенны.

Для получения решения в реальном времени воспользуемся программой RTKNAVI из RTKLib. Запускаем ее и видим примерно то, что показано на рис. 5.

Рис. 5 Главное окно Программы RTKNAVI

Нажимаем кнопку <Options…> в главном окне. Во вкладке Setting1 устанавливаем настройки, как показано на рис. 6.

Рис. 6. Настройки на вкладке Setting1

Для упрощения задачи определения координат БС установим автоматическое определение ее позиции RTCM Antenna Position в опциях на вкладке Positions (рис. 7).

Рис. 7. Настройки на вкладке Positions

Нажимаем <OK>, чтобы запомнить настройки.

Настроим порты для приема потока RTCM3 от БС и ровера, нажав кнопку <I> в главном окне программы (рис. 5).

Кнопки <Opt> открывают окно настройки для каждого порта или другого источника данных (рис. 8).

Рис. 8. Окно настроек Serial Options

Нажатие кнопки <Cmd> открывает окно (рис. 9), позволяющее задать последовательность команд для каждого приемника в начале измерений и после их окончания, если это необходимо. Например, так можно настроить приемник на выдачу сообщений RTCM3, а затем отключать выдачу сообщений RTCM3, восстанавливая выдачу потока NMEA0183. Поэтому приемники можно не настраивать в самом начале, а ввести все необходимые конфигурационные команды в этом окне.

Рис. 9. Окно настроек SerialTCP Commands

Кнопки <O> и <L> в главном окне программы позволяют настроить запись входных данных приемников и выходных потоков программы в файл, передать в физические порты компьютера или на удаленный сервер, если это необходимо. Возможности очень широкие.

После нажатия кнопки <Start> в главном окне программы ожидаем решения навигационной задачи (последовательно позиция должна быть уточнена от SINGLE и FLOAT (рис. 10) до FIX, что соответствует максимальной точности). Соответственно, точность решения будет увеличиваться постепенно, в обычных условиях потребуется не менее
10–15 мин для достижения точности FIX.

Все зависит от условий приема, видимости спутников и типов применяемых антенн.

Посмотреть результат в виде трека можно, нажав кнопку <Plot> (рис. 11), которая запускает программу RTKPLOT. Данная программа имеет много режимов отображения позиции в виде различных графиков и на картах Google (см. документацию RTKLib).

Возможный вариант решения навигационной задачи в RTKPLOT представлен на рис. 12. Можно оценить среднее соотношение точности для решений SINGLE, FLOAT и FIX; зеленый курсор, показывающий одно из решений FIX, закрывает все поле решений FIX в данном масштабе   — точность решений FLOAT и FIX различается в десятки раз. Поле решений FIX в более крупном масштабе показано на рис. 17.

Рис. 12. Определение статической позиции в RTKPLOT

Постобработка

Как уже было сказано выше, данные измерений с учетом фазы сигнала могут быть получены как через проприетарные сообщения $PSTM, которые приемник передает в общем NMEA-потоке и выдача которых включена по умолчанию, но к сожалению, RTKLib пока не поддерживает проприетарный протокол STMicroelectronics, поэтому для конвертирования потока от приемника при постобработке мы будем применять программу rinex_tools, входящую в комплект обновления программного обеспечения STA8089-90_Binary_Image_v4_5_7_CP приемника НАВИА ML8089F вместо RTKCONV. В остальном все так же, как в руководстве к пакету программ RTKLib.

Записываем поток от БС и ровера с помощью программы STRSVR, входящей в состав RTKLib (рис. 13).

Рис. 13. Главное окно программы STRSVR

В данном случае запись идет из последовательного порта, но возможна запись данных NTRIP из потоков TCP/IP и файлов с серверов HTTP и FTP, кроме того, программа умеет конвертировать различные форматы навигационных файлов в формат RTCM2 и RTCM3.

Запись можно вести на одном компьютере параллельно в двух запущенных экземплярах программы STRSVR, конфликтов не возникает.

Затем с помощью rinex_tools (вместо RTKCONV) конвертируем записанные потоки в формат RINEX (Receiver Independent Exchange Format). Для удобства можно использовать командный файл следующего содержания:

rinex_tools.exe rtk1.bin rtk1

rinex_tools.exe rtk2.bin rtk2

pause

В результате получаем два файла RINEX observation file с расширением .obs (rtk1.obs и rtk2.obs для БС и ровера) и два файла RINEX navigation file с расширением .nav (rtk1.nav и rtk2.nav, рис. 14), с которыми работаем далее.

Рис. 14. Результат работы программы rinex_tools

С помощью программы RTKPOST и файлов .obs для БС и ровера получаем совместное решение навигационной задачи (рис. 15).

Рис. 15. Главное окно программы RTKPOST

Сначала нажимаем кнопку <Options…>

Настройки на вкладке Setting1 аналогичны установкам при обработке в реальном времени. Устанавливаем режим Kinematic для работы ровера в движении, но если нужно получить просто точные координаты точки, где находится ровер, можно выбирать Static (рис. 6).

Указываем на вкладке Position в окне Option, что координаты БС берем из заголовка файла RINEX (рис. 16).

Рис. 16. Настройки на вкладке Positions для RTKPOST

Для преобразования нажимаем кнопку <Execute> (рис. 15).

Нажимаем кнопку <Plot…> в левом нижнем углу окна RTKPOST и смотрим визуализацию трека, сохраненного
в файле с расширением .nmea в формате NMEA0183 в открывшемся окне RTKPLOT (рис. 17).

Рис. 17. Визуализация трека постобработки в RTKPLOT

Зеленые метки — это высокоточные решения позиции ровера с применением данных, полученных от БС, на приведенном фрагменте антенна ровера не перемещалась. Видно, что решение FIX периодически теряется, и получается точность FLOAT, затем решение FIX опять появляется.

Заключение

Приемник НАВИА ML8089F на базе чипсета STA8089 и его последующие версии позволяют повысить точность навигационного решения на основе методов, ранее применявшихся только в геодезических системах, при использовании навигационного оборудования, которое раньше могло применяться лишь для классической маршрутной навигации, повышая точность систем без значительного удорожания и сокращая огромный разрыв в точности получаемого навигационного решения между классическими навигационными и геодезическими системами. Это может обеспечить внедрение решений высокоточной навигации в широкий круг устройств, и прежде всего в обычные трекеры на транспорте, где высокоточная навигация раньше не могла применяться из-за высокой стоимости оборудования. Данное решение не заменяет собой геодезические системы, но сокращает огромный разрыв между точностью геодезических систем и обычных трекеров. С учетом того, что одним из основных направлений, где применяются навигационные модули, является оборудование для транспорта, в дальнейшем мы расскажем о построении мобильного ровера с поддержкой RTK на базе решений STMicroelectronics.

Литература

http://naviaglonass.ru/

http://www.st.com/

http://www.rtklib.com/

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *