Skip to content

RTK GPS (PX4 інтеграція)

Реальний кінематичний час (RTK) забезпечує точність GPS на рівні сантиметрів. Ця сторінка пояснює, як RTK інтегрується в PX4.

TIP

Інструкції щодо використання RTK GPS наведені в розділі Периферійне обладнання > RTK GPS.

Загальний огляд

RTK використовує виміри фази несучої хвилі сигналу, а не інформаційний вміст сигналу. Він покладається на одну вихідну станцію для надання корекцій у реальному часі, які можуть працювати з кількома мобільними станціями.

Для налаштування RTK з PX4 потрібні два модулі RTK GPS та даталінк. Закріплена на землі GPS-одиниця називається Базою, а повітряна одиниця - Ровером. Базова одиниця підключається до QGroundControl (через USB) та використовує даталінк для передачі поправок RTCM до транспортного засобу (за допомогою повідомлення MAVLink GPS_RTCM_DATA). На автопілоті пакети MAVLink розпаковуються та надсилаються до пристрою Rover, де вони обробляються для отримання рішення RTK.

Канал передачі даних зазвичай має підтримувати швидкість висхідної лінії зв’язку 300 байт на секунду (додаткову інформацію див. у розділі Швидкість передачі даних у висхідній лінії зв’язку).

Підтримувані GPS-модулі RTK

Список пристроїв, які ми тестували, можна знайти в посібнику користувача.

:::note Більшість пристроїв поставляється з двома варіантами: базою та ровером. Переконайтеся, що ви обрали правильний варіант. :::

Автоматична конфігурація

Стек GPS PX4 автоматично налаштовує модулі GPS для надсилання та отримання правильних повідомлень через UART або USB в залежності від того, куди підключений модуль (до QGroundControl або автопілота).

Як тільки автопілот отримує повідомлення MAVLink GPS_RTCM_DATA, він автоматично пересилає дані RTCM до приєднаного модуля GPS через існуючі канали передачі даних (для даних корекції не потрібен окремий канал).

:::note Інструмент конфігурації модуля RTK U-Center від u-blox не потрібний/не використовується!

:::

:::note Як QGroundControl, так і прошивка автопілота використовують один і той же стек драйверів GPS PX4 (PX4 GPS driver stack). На практиці це означає, що підтримку нових протоколів і/або повідомлень потрібно додавати лише в одному місці. :::

RTCM повідомлення

QGroundControl налаштовує базову станцію RTK на вивід наступних рамок RTCM3.2, кожну з частотою 1 Гц, якщо не вказано інше:

  • 1005 - Координати станції XYZ для точки антени (Базова позиція), 0.2 Гц.
  • 1077 - Повні псевдодальності GPS, фази несучої, Доплер та сила сигналу (висока роздільна здатність).
  • 1087 - Повні псевдодальності ГЛОНАСС, фази несущої, Доплер і сила сигналу (висока роздільна здатність).
  • 1230 - Зміщення фаз коду ГЛОНАСС.
  • 1097 - Повні псевдодальності Галілео, фази несущої, Доплер і сила сигналу (висока роздільна здатність).
  • 1127 - Повні псевдодальності BeiDou, фази несущої, Доплер і сила сигналу (висока роздільна здатність).

Швидкість передачі даних у напрямку від транспортного засобу (наприклад, дрона) до базової станції або контролера називається "uplink datarate" або просто "дата-швидкістю вгору". Необроблені повідомлення RTCM від бази упаковуються в повідомлення MAVLink GPS_RTCM_DATA та надсилаються через канал передачі даних. Максимальна довжина кожного повідомлення MAVLink становить 182 байти. Залежно від RTCM-повідомлення, повідомлення MAVLink майже ніколи не заповнюється повністю.

Повідомлення про базову позицію RTCM (1005) має довжину 22 байти, тоді як інші всі мають змінну довжину, залежно від кількості видимих супутників та кількості сигналів від супутника (лише 1 для однодіапазонних пристроїв, наприклад, M8P). Оскільки в будь-який момент часу максимальна кількість видимих супутників з будь-якої констеляції становить 12, то за реальних умов теоретично достатньо максимальної швидкості передачі даних в 300 байт/с.

Якщо використовується MAVLink 1, для кожного повідомлення RTCM, незалежно від його довжини, надсилається повідомлення GPS_RTCM_DATA розміром 182 байти. Внаслідок цього приблизна вимога до пропускної здатності каналу зв'язку складає близько 700 байт на секунду. Це може призвести до насичення каналу зв'язку на модулях телеметрії з низькою пропускною здатністю напівдуплексного режиму (наприклад, телеметричні радіозв'язки 3DR).

Якщо використовується MAVLink 2, будь-який порожній простір у повідомленні GPS_RTCM_DATA видаляється. Отримана вимога до пропускної здатності для передачі вгору становить приблизно ту ж величину, що і теоретичне значення (близько 300 байт на секунду).

TIP

PX4 автоматично переключається на MAVLink 2, якщо контрольна станція та модулі телеметрії підтримують це.

MAVLink 2 слід використовувати на каналах з низькою пропускною здатністю для хорошої продуктивності RTK. Необхідно вдбати про те, щоб впевнитися, що ланцюжок телеметрії використовує MAVLink 2 на всіх етапах передачі даних. Ви можете перевірити версію протоколу, використовуючи команду mavlink status у системній консолі:

sh
nsh> mavlink status
instance #0:
        GCS heartbeat:  593486 us ago
        mavlink chan: #0
        type:           3DR RADIO
        rssi:           219
        remote rssi:    219
        txbuf:          94
        noise:          61
        remote noise:   58
        rx errors:      0
        fixed:          0
        flow control:   ON
        rates:
        tx: 1.285 kB/s
        txerr: 0.000 kB/s
        rx: 0.021 kB/s
        rate mult: 0.366
        accepting commands: YES
        MAVLink version: 2
        transport protocol: serial (/dev/ttyS1 @57600)