Skip to content

Scferro/boat model#25199

Closed
scferro wants to merge 3 commits intoPX4:mainfrom
scferro:scferro/boat-model
Closed

Scferro/boat model#25199
scferro wants to merge 3 commits intoPX4:mainfrom
scferro:scferro/boat-model

Conversation

@scferro
Copy link
Copy Markdown

@scferro scferro commented Jul 12, 2025

Solved Problem

Currently, there is no surface vehicle simulation in Ignition Gazebo, only in Gazebo Classic. This PR ports the USVDynamics plugin from Gazebo Classic and creates the sitl simulation for the boat.

Fixes PX4-gazebo-models Issue #110
Associated PX4-gazebo-models PR#112

Solution

Screencast.from.07-12-2025.02.59.24.PM.webm
  • Add complete USV dynamics plugin for modern Gazebo with full 6-DOF hydrodynamics physics
  • Port all physics calculations from Gazebo Classic including added mass matrix, linear/quadratic drag, grid-based buoyancy, and Coriolis effects
  • Add boat airframe configuration (4025_gz_boat) with proper marine vehicle parameters
  • Configure ESC failure detection bypass for marine vehicles
  • Implement proper force application using modern Gazebo ExternalWorldWrenchCmd component

Changelog Entry

Feature: Modern Gazebo USV/Boat Simulation Support

  • Ported USV dynamics plugin from Gazebo Classic to Gazebo Ignition
  • Boat airframe (4025_gz_boat) for marine surface vehicle simulation in Ignition
  • Proper buoyancy, drag, and added mass effects
    Documentation: Requires boat model from PX4-gazebo-models repository

Alternatives

We could also:

  • Use Gazebo built in buoyancy plugin, however this does not support other surface dynamics such as the drag effects of water.

Test coverage

  • Integration test: Plugin loads and applies forces without errors in gz-sim
  • Simulation testing: Boat maintains proper buoyancy, responds to propeller thrust, exhibits realistic marine vehicle dynamics
  • Physics validation: Behavior matches Gazebo Classic USV plugin implementation
  • Hardware testing logs: N/A (simulation-only feature)

Context

This ports the existing boat simulation from Gazebo Classic to Gazebo Ignition, as Classic is now EOL.

@dagar
Copy link
Copy Markdown
Member

dagar commented Aug 8, 2025

Did you see the failing checks?

image

@github-actions github-actions Bot added the status:stale Inactive and may be closed. label Sep 13, 2025
@github-actions
Copy link
Copy Markdown

This pull request has been closed after being marked as stale with no further activity. Thank you for the time and effort you put into this contribution. If you’d like to continue the discussion or update the work, please feel free to reopen it or submit a new PR.

@github-actions github-actions Bot closed this Oct 13, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

status:stale Inactive and may be closed.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Boat model and world missing

2 participants