Документация Engee

Пакет поддержки 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: инфраструктура для запуска косимуляции.

  • Шаг расчета модели, соответствующий частоте цикла автопилота.

Быстрый старт

  1. Установите или обновите подсистему Engee.Интеграции, как показано в статье.

  2. Запустите Ardupilot SITL в режиме расчета физических параметров симуляции из Engee (например, контейнер из примеров пакета поддержки, см. ArduPilot SITL: инфраструктура для запуска косимуляции).

  3. Теперь вы можете использовать библиотеку блоков и функции программного управления Ardupilot.


1. Ardupilot SITL (Software In The Loop) — симулятор, который позволяет запускать прошивку автопилота Ardupilot непосредственно на персональном компьютере без использования какой-либо аппаратной платы управления полетом.
2. JSON-кадр — данные виртуальных датчиков (положение, ориентация, скорости), сериализованные в JSON.