Hi @ddomit, it would be great to have your help to improve support for Ignition Gazebo.
Updating the documentation is might be a good place to start! The Gazebo documentation in the ArduPilot wiki refers to the pre-Ignition version (Gazebo9 and Gazebo11) rather than the Ignition version that is used for ship landing. There is some documentation in the various GitHub repos that host the component parts, but there isn’t an overall manual that ties it all together.
The starting point for running the ship-landing simulation is to get a working Ignition Gazebo / ArduPilot / ardupilot_gazebo environment set up with some simple models. When that is working you can set up the sea surface simulation and run the environment for multiple vehicles.
Useful documents / repos:
- Ignition installation: https://gazebosim.org/docs/garden
- ArduPilot dev environment: Welcome to the ArduPilot Development Site — Dev documentation
- ardupilot_gazebo plugin: GitHub - ArduPilot/ardupilot_gazebo: Plugins and models for vehicle simulation in Ignition Gazebo with ArduPilot SITL controllers
- Example models: SITL_Models/Ignition at master · ArduPilot/SITL_Models · GitHub
- Sea simulation: GitHub - srmainwaring/asv_wave_sim at demo/ship-landing-v2
- @tridges ship landing instructions: Ship Landing Support
Depending on your experience and interests there is a range of things to work on:
- Improve the documentation
- Add models for different vehicle types
- Improve the aerodynamics physics (propeller models, lift-drag models for aircraft)
- Improve the hydrodynamics models (thruster models, hydrodynamics behaviour)
- Improve the environmental models (waves performance and visual fidelity, wind models, sea currents models)
- Integrate different sensors with SITL: cameras, laser scanners, sonar
- ROS / ROS2 / mavlink integration - simulating off board planning etc.
- Python scripting of Ignition / ArduPilot simulation environments
Plenty to do!