base_local_planner generates rotations away from global path
We are trying to use the built in base_local_planner (blp) in move_base for our lawnmower. We have managed to get decent results with the current configuration even though we have some tf/timing issues that we are investigating.
However, I think another problem we are having is that the blp is giving us weird local paths. Visualizing the local paths in rviz (with the trunk rviz for visualizing the path cost as a pointcloud2), the local path is updating quickly and several of the paths will be inline with what we would expect (converging to the global path), but often there will be curved paths that curve away from the global path into the higher cost areas of the map. The robot will jerk in that direction, but it never stays committed to any one path for very long. This is the visual behavior that we have observed with the local path, the end result is that the robot jerks along because a fluid continuous local path is never allowed to play out.
Additionally, we get this behavior where the robot is near the path and facing the right direction (the obvious desired behavior is just to drive straight) and the robot will instead make a 360~ degree turn in the opposite direction of the path, i.e. if the path is like 5-10 cm to the right of the robot and the robot is parallel to the path in the correct direction it will make a complete turn to the left. We aren't sure what this behavior is about, but any insight into the inner workings that could cause this would be awesome.
I think we may have some odd configuration mishap that has result in "local path thrashing", currently we are running with the global costmap and the local costmap in the same frame with an empty map and no localization. You can see our up-to-date configurations here:
Our move_base Configuration Files
I can try to get a video of this behavior in rviz on youtube tonight, but we have spotty internet out here.