Коротко. Dead Reckoning Failsafe — это ограниченный по времени способ продолжить управляемый полёт и попытаться вернуться домой после потери оценки положения. Это не «полёт без GPS на неопределённое время»: результат зависит от ветра, оценки скорости, IMU, компаса, расстояния до Home и настроек EKF.
В этой статье разберём последовательность событий, параметры и типовые причины, почему Dead Reckoning не запускается, заканчивается раньше ожидаемого или переходит к LAND. Ниже есть интерактивная ветка диагностики.

Что именно делает Dead Reckoning
В Copter Dead Reckoning доступен начиная с версии 4.3. Он может использоваться при потере GPS или другой оценки положения, например Optical Flow. Failsafe срабатывает по тем же условиям, что и EKF failsafe: две из вариаций compass, position или velocity превышают FS_EKF_THRESH в течение примерно одной секунды.
- Автопилот обнаруживает ухудшение оценки положения, а не просто «мало спутников».
- После потери GPS аппарат ещё некоторое время продолжает управляемый полёт. В официальном описании для типового сценария указано около 7–10 секунд.
- В GCS появляется сообщение
Dead Reckoning started, а аппарат переходит к RTL и начинает движение домой. - Если за
FS_DR_TIMEOUTаппарат не достиг Home, срабатывает EKF failsafe и выполняется переход к LAND согласно текущей логике. - Восстановление GPS во время возврата не означает автоматический выход из RTL: режим нужно рассматривать как уже начатую защитную процедуру.
EK3_DRAG_BCOEF_X, EK3_DRAG_BCOEF_Y и EK3_DRAG_MCOEF. Их нельзя копировать между разными рамами и силовыми установками.Параметры и подготовка
| Параметр | Роль | Что проверить |
|---|---|---|
FS_DR_ENABLE |
Включение и действие Dead Reckoning | В официальной документации значение 2 соответствует RTL; доступные варианты сверяй с полным деревом параметров текущей сборки. |
FS_DR_TIMEOUT |
Сколько секунд аппарат может продолжать сценарий без позиции | Подбирай по реальному времени управляемого полёта и запасу до безопасной зоны; для большинства аппаратов речь идёт о десятках секунд, не о минутах. |
FS_EKF_THRESH |
Порог вариаций EKF | Не увеличивай его только для того, чтобы скрыть раннее срабатывание. Сначала проверь GPS, компас, вибрации и питание. |
EK3_DRAG_BCOEF_X/Y, EK3_DRAG_MCOEF |
Модель сопротивления и оценка ветра | Настройка зависит от рамы, массы, пропеллеров и полётных режимов. Неверная модель ухудшает прогноз возврата. |
RCx_OPTION=65 |
Стендовый сценарий отключения GPS через AUX | Используй только для контролируемого теста; канал можно выбрать другой, если это предусмотрено текущей конфигурацией. |
Интерактивная диагностика
Выбери наблюдаемое событие и его уточнение. Результат не меняет параметры: он показывает, что проверить в GCS и DataFlash-логе.
Что произошло после потери позиции?
Сначала выбери событие, затем ближайшее уточнение.
1. Наблюдаемое событие
2. Уточнение
Как тестировать без риска
- SITL сначала. Проверь переходы, сообщение
Dead Reckoning started, RTL и завершение поFS_DR_TIMEOUTв симуляторе. - Реальный аппарат — только после проверки. Используй свободную площадку, заранее назначенный ручной режим и отдельный канал для контролируемого сценария потери GPS.
- Не тестируй рабочей батареей до критического порога. Для проверки battery failsafe и Dead Reckoning нужны разные сценарии.
- Сохрани DataFlash-лог. Иначе после одного срабатывания будет трудно отличить GPS-проблему от EKF, компаса или вибраций.
RC9_OPTION=65 для отключения GPS. Это пример стендового сценария, а не универсальная рекомендация для любого борта.Что смотреть в логе
- GCS: точное время и текст
Dead Reckoning started, а также последующее сообщение о режиме. - MODE: был ли переход в RTL или последующий LAND.
- GPS/XKF/NKF/VIBE: качество GPS, вариации EKF и вибрации до и после потери позиции, если эти сообщения присутствуют в конкретной прошивке.
- Временная шкала: не исправляй всё сразу. Сначала найди первый сигнал, который вышел за норму.
Источники
- ArduPilot: Dead Reckoning Failsafe — условия, параметры, тестовый сценарий и переход к RTL/LAND.
- ArduPilot: EKF Failsafe — вариации EKF и связь с FS_EKF_THRESH.
- ArduPilot Discourse: Dead Reckoning Failsafe is not effective — неофициальный опыт тестирования.
- ArduPilot Discourse: Dead Reckoning Stops Early Due to EKF Failsafe — практический пример раннего завершения через EKF failsafe.
Проверено 01.08.2026. Параметры и доступные действия сверяй с полной таблицей текущей прошивки и типом аппарата.
