Skip to content

Setup du simulateur

Le simulateur que nous allons installer dans ce guide tourne sur gazebo (pour un x500 quadrotor).

Voici la configuration que nous allons considérer ici pour l’installation de cette simulation :

  • Ubuntu 24.04.3 LTS
  • ROS 2 Jazzy

WSL2 pour windows

Afin de faire tourner cette simulation sur windows, nous allons installer WSL2. Si vous êtes sur Linux, vous pouvez passer cette étape.

Lancer dans un terminal lancé en mode administrateur

1
wsl --install

Puis installez la distribution Ubuntu 24.04 LTS

1
wsl --install Ubuntu-24.04

Éventuellement, lancez là par défaut lorsque vous ouvrez WSL :

1
wsl --set-default Ubuntu 24.04

Installation du simulateur

Ensuite, nous allons suivre le guide disponible en 1 Ce qui est important de retenir ici est que nous allons remplacer: le drone physique (ensemble des capteurs + moteurs + contrôleur de vol) par un drone simulé (gazebo) que l’on peut configurer avec QGroundcontrol l’ordinateur de bord (la RPi) par votre ordinateur qui tourne sur Linux (WSL) la communication entre les deux acteurs précédents utilise toujours Micro XRCE-DDS Agent & Client mais en interne QGroundcontrol demeure identique à notre utilisation précédente, nous n’aurons simplement pas à calibrer les capteurs, …

Installation de PX4 (pour utiliser le simulateur PX4)

Suivre la procédure donnée dans le guide dans la section concernée. Commande pour lancer le simulateur :

1
make px4_sitl gz_x500

Installation de ROS 2 jazzy

[!WARNING] NE PAS SUIVRE CETTE SECTION → Suivre plutôt le guide d’installation de la doc de ROS2 jazzy en 3

Installez - à la fin du guide - la version “recommanded” et non la version “bare bones” avec la commande suivante

1
sudo apt install ros-jazzy-desktop

[!IMPORTANT] L’installation de pyros-genmsg setuptools peut nécessiter l’installation d’un environnement virtuel pour python. Ainsi à chaque fois que vous souhaitez utiliser le simulateur, n’oubliez pas de sourcer

  • ROS2 : source /opt/ros/jazzy/setup.bash
  • environnement python : source ~/path-to-your-env/bin/activate

Setup Micro XRCE-DDS Agent & Client

Suivre la procédure donnée dans le guide dans la section concernée.

Commande pour lancer la communication entre la simulation gazebo et l’ordinateur :

1
MicroXRCEAgent udp4 -p 8888

Installation de QGroundcontrol

Suivre le guilde en 2

Build & Run ROS 2 Workspace

Installer colcon

1
sudo apt install colcon

Remplacez chaque commande ROS2 du guide (qui utilise ROS2 "humble") par “jazzy” Suivre la procédure donnée dans le guide dans la section concernée

Le build de l’espace de travail ROS2 peut prendre un peu de temps.

Enfin, si ce n’est déjà fait, lancez dans l’ordre :

  • Fenêtre Terminal 1 Start the agent with settings for connecting to the uXRCE-DDS client running on the simulator:

    1
    MicroXRCEAgent udp4 -p 8888
    
  • Fenêtre Terminal 2 Start a PX4 Gazebo simulation using:

    1
    2
    cd ~/PX4-Autopilot
    make px4_sitl gz_x500
    
  • Fenêtre Terminal 3

    1
    ./QGroundControl-x86_64.AppImage
    
  • Fenêtre Terminal 4 :

    1
    2
    3
    4
    source /opt/ros/jazzy/setup.bash
    cd ~/ws_sensor_combined/
    source install/local_setup.bash
    ros2 launch px4_ros_com sensor_combined_listener.launch.py
    

Vous devriez observer les données suivantes défilées dans le dernier terminal.

Environnement de simulation