Все статьи по ArduPilot

Проверено и обновлено: сентябрь 2026. Интерфейсы Mission Planner и параметры устройств меняются, поэтому для конкретной платы сверяйте распиновку и прошивку с документацией производителя.


Что нужно для RTK

  • Совместимый high-precision GNSS-ровер на БПЛА, например устройство на базе u-blox ZED-F9P/F20P или другой приёмник, поддерживаемый ArduPilot.
  • Источник corrections: собственная база, NTRIP-сеть или совместимый correction service.
  • Канал доставки corrections до ровера.
  • Антенна, рассчитанная на диапазоны конкретного приёмника.

Для обычного RTK база и ровер не обязаны быть физически соединены друг с другом. База/сеть формирует correction data, а ровер получает их по выбранному транспорту.

ИНФОГРАФИКА · ПРАКТИЧЕСКАЯ НАСТРОЙКА

Четыре точки, которые должны работать одновременно

Если RTK Fixed не появляется, проверяйте цепочку слева направо. Не меняйте сразу GNSS, radio и ArduPilot.

01 · SOURCEБаза или NTRIP

Есть ли корректная reference position и действительно ли источник выдаёт совместимые corrections?

→
02 · TRANSPORTGCS/MAVLink или direct link

Доходит ли поток без разрывов и с приемлемым age?

→
03 · ROVERСовместимый GNSS + antenna

Есть ли обычный 3D Fix, совпадают ли bands/constellations и принимает ли receiver correction messages?

→
04 · VERIFYFloat → Fixed + logs

Проверить status, HAcc/VAcc, RTCM counters и EKF, а не только цвет индикатора в GCS.

Local baseUSB base → Mission Planner RTK/GPS Inject → MAVLink → vehicle
NTRIPcaster → Mission Planner → MAVLink → vehicle
Direct RTCMbase → transparent data link → rover GNSS input

#fpv-rtk-setup-map{—bg:#F4F8FC;—surface:#FFFFFF;—border:#C7D5E0;—text:#142438;—text2:#31485C;—muted:#536A7D;—cyan:#00758E;—green:#187A4B;max-width:1080px;margin:30px auto;padding:24px;border:1px solid var(—border);border-radius:18px;background:var(—bg);color:var(—text);font-family:»Onest»,Inter,ui-sans-serif,system-ui,-apple-system,»Segoe UI»,sans-serif;box-sizing:border-box}#fpv-rtk-setup-map *{box-sizing:border-box}#fpv-rtk-setup-map .fpv-rsm-eye{font-size:12px;font-weight:800;letter-spacing:.11em;color:var(—cyan);margin-bottom:8px}#fpv-rtk-setup-map h3{margin:0;font-size:clamp(23px,3vw,31px);line-height:1.15;letter-spacing:-.02em}#fpv-rtk-setup-map .fpv-rsm-lead{margin:9px 0 22px;color:var(—text2);line-height:1.6}#fpv-rtk-setup-map .fpv-rsm-grid{display:grid;grid-template-columns:minmax(0,1fr) 28px minmax(0,1fr) 28px minmax(0,1fr) 28px minmax(0,1fr);gap:5px;align-items:stretch}#fpv-rtk-setup-map .fpv-rsm-card{padding:17px;border:1px solid var(—border);border-radius:16px;background:var(—surface);min-height:190px}#fpv-rtk-setup-map .fpv-rsm-card span{display:block;font-size:11px;font-weight:850;letter-spacing:.05em;color:var(—cyan);margin-bottom:17px}#fpv-rtk-setup-map .fpv-rsm-card b{display:block;font-size:17px;line-height:1.3}#fpv-rtk-setup-map .fpv-rsm-card p{margin:8px 0 0;color:var(—text2);font-size:14px;line-height:1.5}#fpv-rtk-setup-map .fpv-rsm-ok{border-color:#9FC8B3;background:#F5FBF7}#fpv-rtk-setup-map .fpv-rsm-ok span{color:var(—green)}#fpv-rtk-setup-map .fpv-rsm-arrow{display:grid;place-items:center;color:var(—cyan);font-size:20px;font-weight:900}#fpv-rtk-setup-map .fpv-rsm-routes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:15px}#fpv-rtk-setup-map .fpv-rsm-routes>div{padding:14px 16px;border:1px solid var(—border);border-radius:14px;background:var(—surface)}#fpv-rtk-setup-map .fpv-rsm-routes strong{display:block;font-size:14px;margin-bottom:6px;color:var(—cyan)}#fpv-rtk-setup-map .fpv-rsm-routes span{display:block;color:var(—text2);font-size:13px;line-height:1.45}
@media(max-width:860px){#fpv-rtk-setup-map .fpv-rsm-grid{grid-template-columns:1fr}#fpv-rtk-setup-map .fpv-rsm-arrow{transform:rotate(90deg);min-height:18px}#fpv-rtk-setup-map .fpv-rsm-card{min-height:auto}#fpv-rtk-setup-map .fpv-rsm-routes{grid-template-columns:1fr}}@media(max-width:520px){#fpv-rtk-setup-map{padding:18px;margin:24px 0;border-radius:14px}}

Три штатных варианта доставки corrections

  1. Локальная база → Mission Planner/QGroundControl → MAVLink → БПЛА.
  2. NTRIP → интернет GCS → MAVLink → БПЛА.
  3. Локальная база → прозрачный data link → второй UART GNSS-ровера.

ArduPilot умеет пересылать RTCM к совместимому RTK-приёмнику в типовой конфигурации. Сам транспорт не делает RTK точнее: важно, чтобы совместимые corrections приходили своевременно и без существенных потерь.

Настройка ровера в ArduPilot

Для обычного serial u-blox разумная отправная точка в ArduPilot 4.6+ — GPS1_TYPE=1 (AUTO) или 2 (uBlox), в зависимости от documented setup. Для DroneCAN GNSS — GPS1_TYPE=9.

Не ставьте Moving Baseline type только потому, что плата основана на F9P. Значения 17/18 предназначены именно для пары u-blox Moving Baseline Base/Rover. Для Unicore UM982 dual-antenna heading используется отдельный type 25.

Если используется второй GNSS, его параметры имеют префикс GPS2_. Начиная с ArduPilot 4.6 параметры конкретного первого/второго GNSS получили структуру GPS1_.../GPS2_....

Локальная база через Mission Planner

  1. Подключите совместимую RTK-базу к компьютеру.
  2. Откройте RTK/GPS Inject и выберите источник базы.
  3. Если точные координаты неизвестны, выполните Survey-In.
  4. После валидной reference position GCS начинает передавать RTCM по MAVLink подключённому аппарату.
  5. На ровере контролируйте переход обычного GNSS solution в RTK Float/Fixed и качество solution.

Survey-In: что означает Acc(m)

Поле SurveyIn Acc(m) задаётся в метрах. В документации ArduPilot для u-blox приводится рекомендация 5 м или лучше; около 2 м часто используется как практическая настройка. Время Survey-In задаётся отдельно.

Survey-In не превращает базу в геодезически известную точку. Он усредняет автономную позицию. Если нужна абсолютная сантиметровая привязка в глобальной системе координат, используйте заранее определённые точные координаты reference point.

Повторное использование одной точки базы

Если база каждый раз ставится в ту же размеченную точку и её точные координаты сохранены, используйте их вместо нового Survey-In. Это сохраняет согласованность координат между выездами.

NTRIP через Mission Planner

Для network RTK подключите vehicle к GCS, убедитесь, что GNSS уже имеет обычное position solution, выберите NTRIP в RTK/GPS Inject и укажите caster/mountpoint. Mission Planner получает correction stream и пересылает его vehicle через MAVLink.

Не привязывайте настройку к одному публичному сервису: доступность и форматы меняются. Выбирайте совместимый mountpoint/VRS вашего провайдера и учитывайте расстояние/архитектуру сети.

Прямой канал RTCM

Если база самостоятельно выдаёт RTCM через UART, прозрачный data link может доставлять поток прямо на correction input rover GNSS. Baud rate, logic levels, pinout и питание зависят от конкретных изделий.

Цвет проводов не является стандартом. Проверяйте TX/RX/GND/power по схеме именно вашей платы.

ZED-F9P и u-center

ZED-F9P умеет работать как base и rover и поддерживает RTCM. Но наборы RTCM messages, TMODE/Survey-In, интерфейсы и сохранение configuration зависят от firmware/protocol version и готовой платы. Используйте актуальный Integration Manual для вашей ревизии, а не универсальную таблицу старых CFG-команд.

DroneCAN RTK

Для DroneCAN-устройства проверьте, что CAN bus настроен, модуль виден в сети и передаёт GNSS data. Не фиксируйте один Node ID как обязательный для всех устройств: назначение зависит от конкретной сети и firmware.

RTK Float и RTK Fixed

Статус Интерпретация
3D Fix Обычное GNSS solution без фиксированного RTK state.
RTK Float Corrections используются, но integer ambiguities ещё не разрешены полностью.
RTK Fixed Получено high-precision fixed carrier-phase solution.

Не привязывайте статусы к цветам интерфейса GCS. Надёжнее читать текстовый status и telemetry/log fields.

Что проверять перед использованием RTK

  • Rover имеет устойчивое обычное GNSS solution.
  • Correction stream поступает и не имеет аномального age/drop.
  • Получен ожидаемый RTK status для задачи.
  • Антенна имеет открытый обзор и корректную RF-интеграцию.
  • Нет GNSS/EKF pre-arm errors.
  • Reference position базы соответствует сохранённой точке либо корректно выполнен Survey-In.

Не используйте «20+ спутников» или HDOP<1.0 как универсальное разрешение. Проверяйте status, accuracy estimates, corrections и EKF.

Если RTK Fixed не появляется

  1. Сначала убедитесь, что есть устойчивый 3D Fix.
  2. Проверьте факт прихода corrections к rover.
  3. Проверьте совместимость messages/signals base и rover.
  4. Проверьте age и целостность correction stream.
  5. Для local base проверьте reference coordinates и завершение Survey-In.
  6. Исключите multipath и self-interference у антенн.
  7. Проверьте UART/DroneCAN и правильный GNSS driver.
  8. В актуальных логах ArduPilot используйте поля GPS/GPA и RTCM fragment counters, если они присутствуют.

Положение антенны на БПЛА

Для high-precision задач имеет значение положение antenna phase center относительно body frame. ArduPilot позволяет задавать lever arm через GPS1_POS_X, GPS1_POS_Y и GPS1_POS_Z. Для GPS-for-Yaw дополнительно критична геометрия между двумя антеннами.

Moving Baseline — отдельная схема

В Moving Baseline обе антенны находятся на одном аппарате и относительный phase baseline используется для heading. Для u-blox ArduPilot имеет GPS1_TYPE=17 и GPS2_TYPE=18 в соответствующей паре. Это не настройка обычной fixed-base RTK системы.

Связанные материалы

Источники

Вывод

RTK-настройка проще диагностируется как цепочка из четырёх узлов: source → transport → rover → verification. Если каждый узел подтверждён отдельно, проблема Fixed находится быстро и без случайного изменения десятка параметров.

Прокрутить вверх
На связи