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_vel interface 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.
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:
cmd_velinterface supportSwerve 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:
To maintain consistency with other drive systems, it may be preferable to introduce a reusable
SwerveDriveOdometryutility ingz-math, similar to existing odometry helpers for other drive types.