autowarefoundation / autoware.universe

https://autowarefoundation.github.io/autoware.universe/
Apache License 2.0
1.03k stars 656 forks source link

The Freespace Planner currently uses a detached ROS clock instead of a node clock when populating headers #9161

Open stevenbrills opened 1 month ago

stevenbrills commented 1 month ago

Checklist

Description

The freespace planner populates headers with a detached clock causing the output trajectories to use system time instead of sim time when the rest of the stack is using sim time. This causes downstream issues, particularly in the trajectory follower subsystem where the velocity buffer is cleared based on a time threshold which doesn't happen since the discrepancy between the system time and sim time prevents it from meeting the buffer clearance threshold.

Expected behavior

The output trajectory should reflect time from the source specified globally.

Actual behavior

The output trajectory from the freespace planner uses the incorrect clock to populate the header causing the downstream is_steering_converged flag in the trajectory follower from being satisfied.

Steps to reproduce

  1. Launch a simulator with a town which has a parking lot, the default Town05 in CARLA works well.
  2. Launch the Autoware stack and give a goal that takes the vehicle into the parking lot.
  3. Once the vehicle parks, give another goal that takes it back into the lane.

Versions

Possible causes

Incorrect detached clock being used to populate the header in the trajectory.

Additional context

No response

stevenbrills commented 1 month ago

fixes #9152