Gazebo vehicles and controller code for synchronized uDrone and Roboato (Robo-boat-o) mapping, part of the CoRAL project at ASU DREAMS Lab.
The original models, controllers, and world for synchronized uDrone-boat operations in Gazebo Classic:
models/heron/— Clearpath Heron catamaran ASV (SDF + STL meshes)models/udrone/— uDrone AUV (SDF/URDF + meshes)src/— Python PID controllers for uDrone attitude and trajectoryworlds/tempe.world— Tempe Town Lake Gazebo worldlaunch/udrone_boat.launch— ROS 1 launch file
PX4 airframe definitions and Gazebo Harmonic models for the Roboato ASV:
px4_airframes/55000_asv_roboato— Hardware airframe (Pixhawk)px4_airframes/55000_gz_xroboato— Gazebo SITL airframemodels/xroboato/— Gazebo Harmonic SDF model (catamaran + hydrodynamics)
| Property | Value |
|---|---|
| Hull | Catamaran, 1.35 m long, 0.98 m wide, 0.32 m tall |
| Mass | 28 kg |
| Thrusters | 2 × water jet (differential drive) |
| Draft | 0.15 m |
| Max speed | ~1.7 m/s (3.3 knots) |
| PX4 Airframe ID | 55000 |
| MAV_TYPE | 11 (Surface Boat) |
Based on the Clearpath Heron catamaran design with Fossen 6-DOF hydrodynamics.
Overlay onto a PX4-Autopilot checkout:
cd PX4-Autopilot
# Copy airframes
cp /path/to/udrone_boat/px4_airframes/55000_asv_roboato \
ROMFS/px4fmu_common/init.d/airframes/
cp /path/to/udrone_boat/px4_airframes/55000_gz_xroboato \
ROMFS/px4fmu_common/init.d-posix/airframes/
# Copy Gazebo model
cp -r /path/to/udrone_boat/models/xroboato \
Tools/simulation/gz/models/Register in PX4 CMakeLists and ensure rc.boat_defaults is in the
CONFIG_MODULES_ROVER_DIFFERENTIAL block of init.d/CMakeLists.txt.
rm -rf build/px4_sitl_default/tmp/rootfs/eeprom/parameters*
make px4_sitl gz_xroboato- auv_udrone — uDrone AUV + Roboato PX4 airframes
- udrone_boat_localization — EKF/UKF state estimators
- CoRAL — Collaborative Robotic Aquatic Laboratory
See repository for license details.