Пакет поддержки Ardupilot
Пакет поддержки Ardupilot обеспечивает косимуляцию Engee с автопилотом Ardupilot в режиме SITL[1]: модель Engee рассчитывает физику аппарата, а Ardupilot — логику управления, и обе стороны синхронно обмениваются данными по UDP.
Пакет поддержки Ardupilot включает в себя библиотеку блоков Ardupilot и функции программного управления. Пакет использует клиентскую программу Engee.Интеграции. Телеметрию автопилота (сообщения MAVLink) можно параллельно принимать средствами пакета поддержки MAVLink.
Требования
-
Ardupilot SITL, запущенный в режиме, когда физические параметры симуляции рассчитываются внешним источником. В этом режиме SITL не рассчитывает физику аппарата сам: он обменивается с Engee кадрами по протоколу UDP на порту
9002— отправляет ШИМ-кадры управления моторами и получает в ответ JSON-кадр[2] с данными виртуальных сенсоров. Подробнее о протоколе — в документации Ardupilot: Simulation JSON interface, примеры реализации — в репозитории Ardupilot (JSON backend examples). -
Готовая инфраструктура для запуска косимуляции (Docker-контейнер) входит в состав примеров пакета поддержки — см. статью ArduPilot SITL: инфраструктура для запуска косимуляции.
-
Шаг расчета модели, соответствующий частоте цикла автопилота.
Быстрый старт
-
Установите или обновите подсистему Engee.Интеграции, как показано в статье.
-
Запустите Ardupilot SITL в режиме расчета физических параметров симуляции из Engee (например, контейнер из примеров пакета поддержки, см. ArduPilot SITL: инфраструктура для запуска косимуляции).
-
Теперь вы можете использовать библиотеку блоков и функции программного управления Ardupilot.