feat: Multiagent functionality
This PR adds multiagent functionality to the Ardupilot simulation.
Previous discussions:
- https://github.com/ArduPilot/ardupilot_gazebo/issues/89
- https://discuss.ardupilot.org/t/multi-vehicle-zephyr-and-iris-ardupilot-gazebo-simulation-going-to-different-points-in-gazebo-simulation-for-the-same-lat-lon-alt/90686/4
- https://github.com/ArduPilot/ardupilot_gz/issues/65
This work builds on #64 extending the spawning via launch file functionality from just the Lidar example to all models available in this repository. The multiagent part is an extension of https://github.com/srmainwaring/ardupilot_gz/tree/prs/pr-multi-vehicle. It takes into account the proper namespace handling for all nodes including RVIZ where the config was switched to use relativ paths and the ros_gz_bridge where the robot name is dynamically swapped out.
Example usage:
ros2 launch ardupilot_gz_bringup multiagent.launch.py
Further changes:
- Extracted common code from
iris_lidar.launch.py,iris.launch.pyandwildthumper.launch.pyintorobot.launch.pyto decrease duplicated code - Added
guilaunch argument to make it possible to not start Gazebo GUI
Thanks @TannerGilbert, this looks like a great addition. I'll try to get this running under my macOS / Jazzy setup and give feedback.
@srmainwaring Thanks. If you have any feedback or desired improvements please let me know. Just FYI I developed + tested this on Ubuntu 22.04 with ROS 2 Humble.
Hey @srmainwaring did you have a chance to look at the PR? Let me know if there is anything you would like me to address.
Hye @srmainwaring and @Ryanf55 , Just checking in, did you get a chance to look at the PR? Let me know if there is anything specific you would like me to address.
Hey @srmainwaring and @Ryanf55 sorry for the repeated pings. I'm just checking in, did you get a chance to look at the PR?