How does the local planner determine when the goal is reached?
Hey everyone
I have a maybe simple question, how does the local planner described in the navigation tutorial determine when the goal is reached?
My question arises due to my testing of the local planner. I have 5 goals/offices in an simulated environment with odometry noise. Move_base tells whether the goal have been reached successfully but I also want the pose. So after each goal have been reached I publish the pose estimated by AMCL. I can see it fits very well with the xy goal tolerance but some times it is off by 1-3cm which it not much but I still find it very strange. The move_base should not confirm a succeeded reached goal if it is 1-3cm outside the defined tolerance. It have made me question how the local planner actually determines when a goal is reached but I can not find any detailed documentation on this and I hope someone here can help.
It might sound like nitpicking but for my master I can not omit such an obvious abnormality. My setup of the local planner is shown below:
controller_frequency: 5.0
- TrajectoryPlannerROS:
- max_vel_x: 0.5
- min_vel_x: 0.0
- max_vel_theta: 1.0
- min_vel_theta: 0.0
- max_rotational_vel: 1.0
- min_in_place_rotational_vel: 0.75
- escape_vel: -0.20
- acc_lim_th: 1.5708
- acc_lim_x: 0.5
acc_lim_y: 0.5
holonomic_robot: false
- yaw_goal_tolerance: 0.7854
xy_goal_tolerance: 0.10
dwa: true
- simple_attractor: false