Материал обновлён: сентябрь 2026. Главная идея — качество GNSS определяется согласованной картиной нескольких независимых показателей, а не одним порогом.


Главное: четыре слоя диагностики

Хороший HDOP не гарантирует точные координаты, большое число спутников не исключает multipath, высокий C/N0 не доказывает отсутствие spoofing, а статус RTK Fixed не является anti-jam сертификатом.

Для БПЛА полезнее идти сверху вниз: качество сигналов → геометрия решения → оценка неопределённости самим receiver → согласованность с EKF.

Одна цифра не отвечает на вопрос «можно ли доверять позиции?»

Каждый слой видит свой тип проблемы. Решение становится убедительным, когда показатели согласуются между собой.

  1. RF / signal. C/N0, used signals и interference indicators показывают, что приходит на RF-вход и какие сигналы receiver способен сопровождать. Они не показывают геометрию или фактическую ошибку позиции.
  2. Geometry. NSats, HDOP и VDOP описывают пространственную конфигурацию используемых измерений. Они не видят multipath, spoofing или качество antenna/RF-front-end напрямую.
  3. Receiver estimate. HAcc, VAcc, SAcc и fix/RTK status отражают собственную оценку неопределённости receiver. Это модель receiver, а не независимая «истина».
  4. System consistency. EKF innovations и test ratios показывают, согласуются ли GNSS position/velocity/yaw с инерциальной моделью и другими датчиками.

Диагностический принцип: хороший HDOP при растущем HAcc указывает не на проблему геометрии, а на ухудшение качества измерений; хороший GNSS при несогласии EKF требует проверки position/velocity/yaw и других сенсоров; большое число спутников при одновременном падении C/N0 у многих сигналов не означает качественное решение.

C/N0: качество конкретного принимаемого сигнала

C/N0 (carrier-to-noise density ratio) измеряется в dB-Hz. Чем выше значение при прочих равных, тем лучше запас сопровождения сигнала. Но универсальная таблица «выше 50 — отлично, ниже 35 — плохо» слишком груба.

C/N0 зависит от elevation спутника, конкретного сигнала и созвездия, antenna pattern/ground plane, LNA/filters/cable loss, отражений и локальной RF-среды. Практичнее записать baseline собственной установки под открытым небом и смотреть на изменения.

Особенно информативно синхронное падение C/N0 у многих высоких спутников/сигналов после включения конкретной бортовой подсистемы. Один слабый low-elevation signal таким доказательством не является.

HDOP и VDOP: геометрия, не ошибка в метрах

HDOP показывает геометрическое усиление горизонтальной ошибки, VDOP — вертикальной. Меньший DOP обычно лучше, но DOP не измеряет фактическую ошибку позиции и не видит все проблемы RF-тракта.

Поэтому одинаковый HDOP у двух receivers не означает одинаковую точность. Multipath, antenna/RF quality и signal processing могут дать совершенно разный результат.

ArduPilot использует GPS_HDOP_GOOD в pre-arm checks. В официальной документации для сообщения High GPS HDOP прямо указано, что повысить этот порог можно, но это редко хорошая идея: сначала следует улучшить условия приёма.

Количество спутников: used важнее visible

Для обычного 3D-решения математически нужно как минимум четыре независимых satellite measurements, но рабочая multi-GNSS система обычно использует больше. Универсального правила «10 — можно лететь, 12 — безопасно» нет.

Различайте tracked/visible satellites и used measurements. Receiver может видеть сигнал, но не включать его в navigation solution. Именно поэтому NSats полезен только вместе с DOP, C/N0 и accuracy/status.

HAcc, VAcc, SAcc и YAcc

Современные GNSS передают автопилоту собственные accuracy estimates. В ArduPilot сообщение GPA документирует:

  • HAcc — horizontal position accuracy, м;
  • VAcc — vertical position accuracy, м;
  • SAcc — speed accuracy, м/с;
  • YAcc — yaw accuracy, градусы;
  • VDop — vertical dilution of precision;
  • VV — наличие vertical velocity;
  • SMS/Delta — timing данных;
  • AEl — altitude above WGS-84 ellipsoid, если receiver её сообщает.

В текущих логах также доступны RTCMFU и RTCMFD — число использованных и отброшенных RTCM fragments. Они особенно полезны при диагностике RTK correction path.

HAcc/VAcc полезнее попытки переводить HDOP в метры одной постоянной формулой, но и они являются оценкой модели receiver, а не независимым эталоном.

Fix status и RTK

СтатусЧто означает
No Fix / 2DНедостаточно данных для полноценной 3D navigation.
3D FixОбычное трёхмерное GNSS solution.
RTK FloatCorrections используются, но integer ambiguities ещё не полностью зафиксированы.
RTK FixedВысокоточное fixed carrier-phase solution.

RTK Fixed подтверждает состояние RTK solver, но не является доказательством отсутствия jamming/spoofing.

Что смотреть в логах ArduPilot

ИсточникПоля/смыслДля чего
GPSStatus, NSats, HDop, position, velocityБазовая картина navigation solution
GPAVDop, HAcc, VAcc, SAcc, YAcc, timing, RTCM fragmentsAccuracy estimate и correction/timing context
Receiver diagnosticsC/N0, used signals, interference/jamming/security indicatorsRF и signal-processing слой
EKFinnovations/test ratios/variancesСогласованность GNSS с инерциальной моделью и другими sensors

Почему GPS.Alt и Baro.Alt нельзя сравнивать по «магическим 10 метрам»

GNSS altitude и barometric altitude имеют разные error sources и могут использовать разные reference frames. Постоянное расхождение само по себе не доказывает неисправность GNSS.

Полезнее искать внезапные jumps, несогласованность vertical velocity и реакцию EKF.

Старые «анти-помеховые» параметры: не копировать

В старых инструкциях часто встречаются:

GPS_GNSS_MODE = 63
GPS_MIN_DOP = 2.5
EK3_OPTIONS bit 0 = JammingExpected
FS_GPS_ENABLE / FS_GPS_ACTION

Как универсальный набор для современных ArduPilot эти строки неверны или устарели.

  • В ArduPilot 4.6+ используется GPS1_GNSS_MODE; 0 оставляет constellation configuration receiver.
  • GPS_MIN_DOP не является современным штатным GPS parameter с описанным выше смыслом.
  • Нет универсального JammingExpected, который превращает EKF в anti-jam систему.
  • Отдельный старый FS_GPS_* failsafe архивирован; современная логика опирается на EKF/DCM/position-estimate mechanisms.

Что EKF добавляет к диагностике

EKF сравнивает GNSS position/velocity/yaw с прогнозом инерциальной модели и другими observations. Сильное несогласие может привести к rejection measurements и, при продолжительной деградации, к соответствующей failsafe logic.

Это помогает обнаруживать GPS glitches и sensor disagreement, но не является гарантированным anti-spoofing или anti-jamming механизмом.

Dead Reckoning Failsafe: отдельный сценарий Copter

В Copter 4.3+ есть Dead Reckoning Failsafe. Он предназначен для временного продолжения навигации после потери position estimate, если заранее настроена оценка ветра и соответствующие параметры. В документации подчёркнуто, что допустимое время dead reckoning ограничено и конфигурацию нужно тестировать.

Поэтому совет «при потере GPS система всегда перейдёт в AltHold» неверен. Фактическое действие зависит от vehicle type, mode и настроенных failsafes.

Признаки возможной RF-проблемы

  • синхронное падение C/N0 по множеству signals;
  • рост receiver interference/jamming indicator;
  • сокращение used measurements;
  • ухудшение DOP одновременно с ростом HAcc/VAcc;
  • потеря RTK Fixed или рост correction drop counters;
  • GPS/EKF disagreement;
  • position/velocity jumps без соответствующей динамики IMU.

Один признак сам по себе ещё не доказывает jamming или spoofing. Ищите согласованную картину нескольких независимых indicators.

Чек-лист перед полётом без универсальных порогов

  1. Нет GPS/EKF pre-arm errors.
  2. Есть тип solution, требуемый вашей миссией.
  3. NSats/DOP стабильны относительно baseline этой системы.
  4. HAcc/VAcc/SAcc соответствуют требованиям задачи.
  5. Нет аномального общего падения C/N0 или receiver RF/security warnings.
  6. Для RTK corrections поступают, status соответствует ожидаемому, re-fix нормальный.
  7. Известно и проверено поведение аппарата при потере position estimate.

Как построить baseline своей установки

  1. Поставьте аппарат под открытым небом.
  2. Запишите GPS/GPA/EKF и receiver-level signal diagnostics.
  3. Отметьте типичный диапазон NSats, DOP, HAcc/VAcc/SAcc и C/N0 по elevation.
  4. Повторите с включёнными VTX, telemetry, companion computer и другой штатной электроникой.
  5. Если GNSS деградирует, меняйте только один фактор: position antenna, cable, power, filter или antenna.
  6. Повторяйте серии, чтобы отделить свойства установки от естественного изменения satellite geometry.

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

Источники

Вывод

GNSS quality — это не «HDOP меньше X». Наиболее надёжная картина получается, когда signal quality, geometry, receiver accuracy estimate и EKF consistency подтверждают друг друга. Именно так следует анализировать как обычную навигацию, так и RTK.

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