Что такое EKF3
EKF3 (Extended Kalman Filter 3) — это алгоритм расширенного фильтра Калмана, используемый в ArduPilot для оценки положения, скорости и угловой ориентации летательного аппарата.
EKF3 является развитием предыдущих версий:

Эволюция AHRS в ArduPilot: DCM → EKF1 → EKF2 → EKF3
Ключевые особенности EKF3:
- Оценка всех 3 осей акселерометра (в отличие от EKF2, который оценивал только вертикальную ось)
- Поддержка сенсорной аффинности — использование неосновных экземпляров датчиков
- Возможность переключения между GPS и без-GPS режимами в полёте
- Поддержка новых сенсоров: маяки, энкодеры колёс, визуальная одометрия
Архитектура и принцип работы
Схема работы ArduPilot с EKF3:

Архитектура ArduPilot: RC Receiver → RCMAP → Attitude Controller → Navigation Controller → Servo Function
Оцениваемые состояния (22 состояния):
| Категория | Параметры |
|---|---|
| Позиция | Север, Восток, Вниз (NED) |
| Скорость | VN, VE, VD (м/с) |
| Ориентация | Roll, Pitch, Yaw |
| Смещения | Гироскоп X,Y,Z, Акселерометр Z |
| Магнитное поле | Земное поле N,E,D + смещения корпуса |
| Ветер | Скорость ветра N,E |
Принцип работы фильтра:
- Предсказание состояния — интеграция данных IMU (гироскопы, акселерометры)
- Коррекция — использование измерений GPS, барометра, компаса, дальномера
- Оценка ошибок — матрица ковариации состояний
- Инновации — разница между предсказанным и измеренным значением

График инноваций магнитометра IMX, IMY, IMZ во время полёта
Сравнение с коммерческими системами
Обзор коммерческих систем
| Система | Производитель | Тип | Открытость |
|---|---|---|---|
| EKF3 (ArduPilot) | ArduPilot Community | Открытая | Полная |
| DJI Flight System | DJI | Проприетарная | Закрытая |
| Autel Flight System | Autel Robotics | Проприетарная | Закрытая |
| XAG SuperX | XAG | Проприетарная | Закрытая |
| TopXGun T1 | TopXGun | Проприетарная | Закрытая |
DJI Navigation System
Особенности DJI:
- Проприетарный алгоритм навигации (не EKF в классическом понимании)
- Интеграция с DJI Mobile SDK
- Поддержка RTK для высокой точности
- Закрытая архитектура — невозможность модификации
XAG Agricultural System

XAG P Series Agricultural Drone
Особенности XAG:
- SuperX 4 Pro flight controller
- JetSeed AI engine для автономных операций
- Advanced RTK для точного позиционирования
- Специализация на сельскохозяйственных применениях
- Интеграция с полевыми сенсорами и тракторами
TopXGun Flight System

TopXGun T1 Flight Controller Components [[Image Search]]
Особенности TopXGun:
- T1 Flight Controller с модульной архитектурой
- IP67 защита от пестицидов
- 8 встроенных режимов полёта
- Поддержка до 128 waypoints
- Специализация на сельскохозяйственных дронах
Технические характеристики
Сравнительная таблица
| Параметр | ArduPilot EKF3 | DJI | XAG | Autel | TopXGun |
|---|---|---|---|---|---|
| Алгоритм | Extended Kalman Filter | Проприетарный | Проприетарный + AI | Проприетарный | Проприетарный |
| Открытость кода | Да (GPLv3) | Нет | Нет | Нет | Нет |
| Поддержка IMU | До 2+ независимых ядер | 1-2 | 1-2 | 1-2 | 1 |
| Сенсорная аффинность | Да | Ограничено | Нет | Нет | Нет |
| RTK поддержка | Да (через GPS) | Да (встроенная) | Да (встроенная) | Да | Да |
| Без-GPS навигация | Да (Optical Flow, VIO) | Ограничено | Ограничено | Ограничено | Ограничено |
| Настраиваемость | Полная | Минимальная | Минимальная | Минимальная | Минимальная |
| Стоимость | Бесплатно | $500-$50,000+ | $10,000-$30,000+ | $1,000-$10,000+ | $5,000-$20,000+ |
Поддерживаемые сенсоры EKF3

Подключение GPS/Compass к ArduPilot Autopilot [[Image Search]]
| Сенсор | EKF3 | DJI | XAG | TopXGun |
|---|---|---|---|---|
| GPS/GNSS | ✓ | ✓ | ✓ | ✓ |
| Барометр | ✓ | ✓ | ✓ | ✓ |
| Компас | ✓ | ✓ | ✓ | ✓ |
| Optical Flow | ✓ | ✗ | ✗ | |
| Лидар/Дальномер | ✓ | ✓ | ✓ | ✓ |
| Визуальная одометрия | ✓ | Ограничено | ✗ | ✗ |
| Энкодеры колёс | ✓ | ✗ | ✗ | ✗ |
| Маяки (UWB) | ✓ | ✗ | ✗ | ✗ |
Преимущества и недостатки
ArduPilot EKF3
Преимущества:
- Полная открытость и прозрачность алгоритмов
- Возможность тонкой настройки всех параметров
- Поддержка широкого спектра сенсоров
- Бесплатное использование
- Активное сообщество разработчиков
- Наиболее сложный и надёжный EKF-алгоритм
Недостатки:
- Требует технических знаний для настройки
- Нет готовой технической поддержки
- Время на отладку и конфигурацию
- Риск ошибок при неправильной настройке
DJI
Преимущества:
- Готовое решение «из коробки»
- Отличная техническая поддержка
- Интуитивный интерфейс
- Высокая надёжность
Недостатки:
- Закрытая архитектура
- Ограниченная кастомизация
- Зависимость от производителя
- Геозоны и ограничения
XAG
Преимущества:
- Специализация на сельском хозяйстве
- AI-интеграция для автономных операций
- RTK высокой точности
- Экосистема сельскохозяйственных решений
Недостатки:
- Высокая стоимость
- Закрытая система
- Ограниченное применение вне сельского хозяйства
TopXGun
Преимущества:
- IP67 защита для сельскохозяйственных условий
- Модульная архитектура
- Поддержка 128 waypoints]
Недостатки:
- Ограниченная документация
- Закрытая система
- Меньшее сообщество пользователей
Рекомендации по выбору
Когда выбирать ArduPilot EKF3:
- Исследования и разработка — требуется доступ к алгоритмам
- Специфические применения — нужны уникальные сенсоры
- Бюджетные проекты — бесплатное ПО
- Образование — изучение навигационных алгоритмов
- Без-GPS операции — требуется визуальная одометрия
Когда выбирать коммерческие системы:
| Сценарий | Рекомендация |
|---|---|
| Коммерческая съёмка | DJI |
| Сельское хозяйство (крупное) | XAG или DJI Agras |
| Сельское хозяйство (бюджет) | TopXGun |
| Инспекции инфраструктуры | DJI или Autel |
| Исследования/Разработка | ArduPilot EKF3 |
| Военные/Спец применения | ArduPilot EKF3 |
Полезные ссылки
ArduPilot Документация
- Extended Kalman Filter Overview
- EKF Navigation Tuning
- EKF3 Affinity and Lane Switching
- GitHub ArduPilot EKF3
Коммерческие системы
Сравнения
Заключение
EKF3 в ArduPilot представляет собой наиболее сложный и надёжный EKF-алгоритм среди доступных решений для БПЛА [[5]]. Его главные преимущества — открытость, гибкость и поддержка широкого спектра сенсоров.
Коммерческие системы (DJI, XAG, Autel, TopXGun) предлагают готовые решения с минимальными требованиями к настройке, но ограничивают возможность кастомизации и зависят от производителя.
Выбор зависит от задачи: для исследований и специфических применений — ArduPilot EKF3, для коммерческой эксплуатации — готовые системы от DJI/XAG.
