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

Autoware ignores obstacles located vehicle_length away after goal #2513

Closed
3 tasks done
VRichardJP opened this issue Dec 16, 2022 · 12 comments · Fixed by #2558
Closed
3 tasks done

Autoware ignores obstacles located vehicle_length away after goal #2513

VRichardJP opened this issue Dec 16, 2022 · 12 comments · Fixed by #2558
Assignees
Labels
component:planning Route planning, decision-making, and navigation. (auto-assigned)

Comments

@VRichardJP
Copy link
Contributor

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

When an obstacle is in front of the vehicle, on the path:
Screenshot from 2022-12-16 13-46-38

When an obstacle is in front of the vehicle, more than vehicle_length away from the goal pose
Screenshot from 2022-12-16 13-47-03

It seems that obstacle_stop_planner is not considering the obstacle in the second situation, because the obstacle is further away than vehicle_length. I don't know if it is necessary to keep the same safety distance in both situations. However, we definitely need a bigger margin in the second case

Expected behavior

Keep some safety distance from obstacle, even for the goal.

Actual behavior

Autoware stops and touches the vehicle in front

Steps to reproduce

planning simulator

Versions

No response

Possible causes

No response

Additional context

No response

@ismetatabay
Copy link
Member

@VRichardJP Hi, at obstacle_stop_planner package, there is a parameter for extending trajectory to consider after goal obstacle.

Please check:

extend_distance: 0.0 # extend trajectory to consider after goal obstacle in the extend_distance [m]

At this case below (yellow borders describes vehicle footprint on goal_pose), i updated extend_distance parameter to 5.0 meter. According to this parameter, obstacle_stop_planner stops the vehicle before it reach goal_pose.

Selection_031

@ismetatabay ismetatabay added the component:planning Route planning, decision-making, and navigation. (auto-assigned) label Dec 16, 2022
@VRichardJP
Copy link
Contributor Author

I see! Should we then change the default value? Anything is better than 0 at this point.

@ismetatabay
Copy link
Member

It also makes sense to me to set the default value of extend_distance to 1.0 [m] or 2.0 [m] to avoid undesirable situations. What do you think? @satoshi-ota

@satoshi-ota
Copy link
Contributor

@VRichardJP @ismetatabay I think so too. We set the parameter at 5.0 in other project.

@brkay54
Copy link
Member

brkay54 commented Dec 20, 2022

Should it be set as parameter? I think extend_distance should depend vehicle's dimensions and should be calculated in node like: distance_base_to_front + margin.

@satoshi-ota
Copy link
Contributor

satoshi-ota commented Dec 20, 2022

@brkay54 cc @kosuke55 I agree with you. I think we can remove the parameter. On ther other hand, I also think It might be better to add a new parameter (e.g. stop_for_obstacle_behind_goal) to indicate whether the vehicle stops for obstacles behind the goal.

@ismetatabay
Copy link
Member

@brkay54 @satoshi-ota @VRichardJP If its okay for you, I will create PR for this issue. I think adding stop_for_obstacle_behind_goal (default value is true) parameter for the indicate extend trajectory along vehicle length or not extending trajectory after goal for obstacle checking.

@VRichardJP
Copy link
Contributor Author

VRichardJP commented Dec 21, 2022

I am not sure I get everything. Is it the current behavior?

  1. when on the path, ego keeps some distance from obstacles = base_link to front + fixed margin
  2. for the goal case, obstacle search distance is increased by another parameter (currently 0.0). If an obstacle is on the extended path, the behavior is the same than 1.

With the PR, 1. is unchanged, and 2. is replaced by a bool which, if true, defines the distance automatically (based on the value from 1.)

Is it correct?

@ismetatabay
Copy link
Member

@VRichardJP Hi, In the current implementation, there is a certain trajectory where the objects will be checked. This is equals to : path trajectory + goal pose + (base to front). With this PR, we extend the obstacle detection area by an extra vehicle length.

For example, let the object on the trajectory and obstacle stop planner set a stop point from 20 meters away and its stops the vehicle. If this point far away from goal pose than base to front length of vehicle, object will not be detected and vehicle doesn't stop.

In other words, we extend the detection area twice with PR (base_link to front + rear_overhang + base_link_to_front):

1. when on the path, ego keeps some distance from obstacles = `base_link` to front + fixed margin

@stale
Copy link

stale bot commented Feb 19, 2023

This pull request has been automatically marked as stale because it has not had recent activity.

@stale stale bot added the status:stale Inactive or outdated issues. (auto-assigned) label Feb 19, 2023
@ismetatabay
Copy link
Member

hi @satoshi-ota @VRichardJP @brkay54, sorry for late (i am busy with field testing). I updated the extending algorithm according to the osbtacle stop planner's max_longitudinal_margin param (see).

@stale stale bot removed the status:stale Inactive or outdated issues. (auto-assigned) label Feb 21, 2023
@kosuke55
Copy link
Contributor

kosuke55 commented Feb 27, 2023

@ismetatabay @satoshi-ota @VRichardJP @brkay54
Hi, thanks for your PR, I added a specific margin for behind the goal same to obstacle_cruise_planner in #2953
This parameter assumes parallel parking behind another car like in pull_over

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
component:planning Route planning, decision-making, and navigation. (auto-assigned)
Projects
None yet
Development

Successfully merging a pull request may close this issue.

5 participants