-
Notifications
You must be signed in to change notification settings - Fork 397
Description
Desired behavior
Gazebo currently provides built-in drive systems such as AckermannSteeringDrive, DiffDrive and MecanumDrive, but does not include a native implementation for a swerve drive (four-wheel independent steering, 4WISD) system.
I would like to propose adding a SwerveDrive system plugin to gz-sim with the following capabilities:
- Four independently steerable wheels
- Independent wheel velocity control
cmd_velinterface support- Omnidirectional motion capability
- Consistent odometry estimation
Swerve drive systems are increasingly common in modern mobile robotics platforms due to their maneuverability and efficiency. Providing native support would expand gz-sim’s coverage of mobile robot kinematic models.
Implementation suggestion
The proposed SwerveDrive system would:
- Follow the architectural pattern of existing drive systems (DiffDrive, MecanumDrive, AckermannDrive)
- Compute steering angles and wheel velocities from commanded twist
- Publish odometry based on wheel states
- Include integration tests and example world files
To maintain consistency with other drive systems, it may be preferable to introduce a reusable SwerveDriveOdometry utility in gz-math, similar to existing odometry helpers for other drive types.
Metadata
Metadata
Assignees
Labels
Type
Projects
Status