DASA Simulation Environment for Heterogeneous Robot Swarm
The simulation environment for heterogeneous robot swarm is provided to facilitate the development for swarm cooperation. The environment is based on the Gazebo engine.
1. File Directory
The workspace for the simulation environment is located in ~/DASA_space/virtual_simulation/catkinws_dasasim,
scripts/: the folder that contains convenience scripts to launch simulation
src/dasa_swarm_sim: the package that includes launch files and scripts for Gazebo environment setting.
src/mavlink: the customized mavlink package from https://github.com/cloudkernel-tech/mavlink-gdp-release (dev_kerlouddasa branch)
src/mavros: the customized mavros package from https://github.com/cloudkernel-tech/mavros (dev_kerlouddasa branch)
2. Software Dependencies
The simulation environment depends on the virtual simulation package for DASA vehicles that are located in ~/DASA_space/virtual_simulation.
3. How to Use
To run swarm simulation for 3 DASA vehicles, please run:
bash scripts/run_swarm.sh
To run swarm simulation for 15 DASA vehicles (5 uavs, 5 flying rovers and 5 rovers), please run:
bash scripts/run_swarm_test.sh
These scripts will launch the roscore, SITL and mavros nodes for DASA vehicles. Users can then utilize the mavros nodes to operate these vehicles.
Note that users are recommended to run the simulation in a powerful PC for the second case, otherwise the computer might not be responsive due to intensive communications between multiple nodes.
The rqt graph example for the simulation is given below:
The simulation view for 15 DASA vehicles is shown as: