Skip to content

cmdvel_to_ackermann confused track_width and wheel_base#18

Open
JaFeKl wants to merge 1 commit intoisaac-sim:mainfrom
JaFeKl:main
Open

cmdvel_to_ackermann confused track_width and wheel_base#18
JaFeKl wants to merge 1 commit intoisaac-sim:mainfrom
JaFeKl:main

Conversation

@JaFeKl
Copy link

@JaFeKl JaFeKl commented Mar 10, 2026

Hi I came across the following issue where I would propose some changes:

Summary

This PR fixes the steering-angle conversion in cmdvel_to_ackermann by using wheel_base (axle distance) instead of track_width (left-right wheel separation).

Why

For Ackermann/bicycle-model steering:

  • Turning radius is R = v / ω
  • Steering angle is δ = atan(L / R), where L is the wheelbase

Using track_width in this formula produces incorrect steering commands.

Changes

  • Updated steering computation to:
    • steering_angle = atan(wheel_base / turning_radius)
  • Removed backward-compatibility logic for track_width
  • Removed track_width parameter declarations and usages from node scripts and launch files
  • Standardized parameter interface to wheel_base only

Impact

  • Breaking change: track_width is no longer accepted by cmdvel_to_ackermann
  • Users must pass wheel_base in launch/config files

Validation

  • Verified no remaining track_width references in the cmdvel_to_ackermann package
  • Diagnostics report no errors in edited files

Copy link

@pulkitg01 pulkitg01 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good to me, thanks for the fix.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants