Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Steering Command Converter for CARLA Set Up Incorrectly #10311

Open
3 tasks done
stevenbrills opened this issue Mar 19, 2025 · 1 comment
Open
3 tasks done

Steering Command Converter for CARLA Set Up Incorrectly #10311

stevenbrills opened this issue Mar 19, 2025 · 1 comment
Labels
type:bug Software flaws or errors.

Comments

@stevenbrills
Copy link
Contributor

stevenbrills commented Mar 19, 2025

Checklist

  • I've read the contribution guidelines.
  • I've searched other issues and no duplicate issues were found.
  • I'm convinced that this is not my fault but a bug.

Description

The config file for the raw_vehicle_command_converter in the current autoware_carla_interface package is set to NOT convert steering commands from Autoware.

Image

However, the interface in carla_ros.py uses the steering command as a steering actuation command itself and not a steered tire angle. See the line where out_cmd.steer is being set in the image below. The existing conversion uses the "in_cmd.actuation.steer_cmd" which is the steered wheel angle (since raw vehicle command converter is not converting the tire angle to actuator signals) and multiplies it by the steer ratio and the maximum wheel angle of the vehicle. Then it assigns it to the out_cmd.steer control command which takes in actuator values and not steered tire angles.

Image

This apparently works for small tire angles that are used as steering actuation signals directly but breaks down for large angles, particularly during high curvature free-space maneuvers. In any case this is incorrect semantically.

Expected behavior

The input steering tire angle should be converted to valid steering actuation signals that lie between -1 and 1 and can be consumed by CARLA.

Actual behavior

The vehicle is unable to track high curvature paths when interfacing with CARLA.

Steps to reproduce

  1. Load a CARLA town with a valid parking lot
  2. Launch the stack with CARLA as the sim option and set a goal in a parking lot that requires sharp maneuvers.
  3. The is_steering_converged flag should stop the vehicle from continuing mid-way.

Versions

  • OS: Ubuntu 22.04
  • ROS2: Humble
  • Autoware: main

Possible causes

Incorrect conversion of the steering tire angle to actuator signals. However, simply setting the conversion to be true is insufficient as CARLA uses a constant high steering rate to simulate the wheel angle movement and leads to oscillations using the current steering map. The out_cmd.steer_cmd should simply be set as the input actuator command times the max_steer_ratio.

Additional context

No response

@maxime-clem
Copy link
Contributor

@stevenbrills Thank you very much for working on this ! I should be able to test your PR on Monday and I look forward to the improved steering performance.

@idorobotics idorobotics added the type:bug Software flaws or errors. label Mar 21, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
type:bug Software flaws or errors.
Projects
Status: To Triage
Development

No branches or pull requests

3 participants