-
Notifications
You must be signed in to change notification settings - Fork 1.3k
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
[SmacPlanner] The footprint is not dynamic #4179
Comments
We set it on initialization https://github.com/ros-planning/navigation2/blob/09ba08b7f45004df92f77fa683ea33d8afa2acce/nav2_smac_planner/src/smac_planner_lattice.cpp#L188 I suppose we could check if its changed in the main planning callback -- if so send it the updated footprint. I wouldn't want to generically do it every iteration since we precompute orientations that would slow down the planner to do when not necessary. That should be a 10 line PR, can you open it :-) |
The footprint change check is already done in the I added it to the main |
You shouldn't need to -- perhaps try removing the pointer reference https://github.com/ros-planning/navigation2/blob/09ba08b7f45004df92f77fa683ea33d8afa2acce/nav2_smac_planner/src/analytic_expansion.cpp#L44? It seems to me that the setFootprint should be sufficient. Reconstructing the entire object shouldn't be necessary and should be avoided (but wouldn't be the end of the world) |
I found the issue. |
Bug report
When the footprint of the robot is changed using the costmap topic, the planner doesn't update the collision_checker so it can plan in obstacles. It can be seen in the
/planned_footprints
(they are using the costmap footprint)The footprint is not a dynamic parameter of the planner, and it's a good point, It must retrieve it from the costmap.
Required Info:
Steps to reproduce issue
Expected behavior
The planner updates the collision_checker and the path doesn't go into obstacles
Actual behavior
The planner doesn't update the collision_checker and the path can go into obstacles
Additional information
Note : If you change the value of the parameter
angle_quantization_bins
, the collision_checker is updated and the path is good.Implementation possibilities:
createPlan()
, update collision_checker before setting the a_start. (tested ✔️ )The text was updated successfully, but these errors were encountered: