Skip to content

Conversation

@howardcochran
Copy link

In testing, I found that setting the new parameter
control_look_ahead_poses to 3 improved path following
accuracy very much. However, in cases where need to arrive
at a very precise goal (as by setting xy_goal_tolerance to 0.01),
it could cause the robot to overshoot the goal and then oscillate
back and forth over the goal indefinitely.

This new parameter fixes that by preventing
control_look_ahead_poses from selecting one of the last few
poses of the path.

Since this new dynamic parameter affects the behavior of an
existing parameter, it makes sense to make the existing
one dynamic also. For completeness, I made all remaining
parameters in the trajectory group be dynamic, as there is no
reason I can see not to do that.

Howard Cochran added 2 commits October 17, 2019 17:26
The code handles on-the-fly changes to these parameters just like all
the others, so go ahead and make them dynamic:

* min_samples
* max_samples
* global_plan_prune_distance
* min_resolution_collision_check_angular
* control_look_ahead_poses

This is in preparation for adding a new parameter related to the last
one in this list. It would be awkward for it to by dynamic while this is
not.
Never look ahead to the last few poses of the plan in order to prevent
oscillating forward and backward over the goal when the
xy_goal_tolerance is small. Specified by new parameter
prevent_look_ahead_poses_near_goal whose default is zero.
@howardcochran howardcochran changed the title Add prevent_look_ahead_poses_near_goal to fix osciallation Add prevent_look_ahead_poses_near_goal to fix oscillation Oct 21, 2019
@corot corot changed the base branch from kinetic-devel to melodic-devel November 25, 2021 00:21
@corot corot changed the base branch from melodic-devel to kinetic-devel November 25, 2021 00:22
@corot
Copy link
Collaborator

corot commented Nov 26, 2021

Hey, thanks for the PR; very valuable. I open another PR to melodic. I suppose you don't care anymore about merging this to kinetic, right?

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