Симуляция PX4
Основная статья: https://dev.px4.io/en/simulation/
Симуляция PX4 возможна в ОС Linux и macOS с использованием систем симуляции физической среды jMavSim и Gazebo.
jMavSim является легковесной средой, предназначенной только для тестирование мультироторных летательных систем; Gazebo – универсальная среда для любых типов роботов.
Запуск PX4 Sitl
- Склонировать репозиторий с PX4.
git clone https://github.com/PX4/Firmware.git
cd Firmware
jMavSim
Основная статья: https://dev.px4.io/en/simulation/jmavsim.html
Для симуляции с использованием легковесной среды jMavSim используйте команду:
make posix_sitl_default jmavsim
Для использования модуля расчета позиции LPE вместо EKF2, используйте:
make posix_sitl_lpe jmavsim
Gazebo
Основная статья: https://dev.px4.io/en/simulation/gazebo.html
Для начала установите Gazebo 7. На Mac:
brew install gazebo7
На Linux (Debian):
sudo apt-get install gazebo7 libgazebo7-dev
Запустите симуляцию, находясь в папке Firmware:
make posix_sitl_default gazebo
Можно запустить симуляцию в headless режиме (без оконного клиента). Для этого используйте команду:
HEADLESS=1 make posix_sitl_default gazebo
Подключение
QGroundControl автоматически подключится к запущенной симуляции при запуске. Работа будет осуществляться также, как и с настоящим полетным контроллером.
Для подключение MAVROS к симуляции необходимо использовать протокол UDP, локальный IP-адрес и порт 14557, например:
roslaunch mavros px4.launch fcu_url:=udp://@127.0.0.1:14557