ros-planning / navigation_experimental

Experimental navigation techniques for ROS robots.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

robot tends to oscillate a lot while moving foward with pose follower local planner

tomin11 opened this issue · comments

Using navfn as the global planner. The movement is fine with straight paths and with spin turns.
But when it comes to curved paths and paths that need the robot to turn first and then move forward, the robot turns to the desired goal position, continues on that path for some time and then it starts oscillating clockwise and anticlockwise after which it continues moving towards the goal. This is repeated till it reaches the goal. This is a diff drive robot.
The pose follower params used are:
PoseFollower:
k_trans: 2.0
k_rot: 0.8
tolerance_trans: 0.15
tolerance_rot: 0.13
tolerance_timeout: 0.3
holonomic: false
holonomic_robot: false
samples: 150
max_vel_lin: 0.5
min_vel_lin: 0.0
max_vel_th: 0.20
min_vel_th: 0.01
min_in_place_vel_th: 0.0
in_place_trans_vel: 0.0
trans_stopped_velocity: 0.0001
rot_stopped_velocity: 0.0001
allow_backwards: true
turn_in_place_first : true
max_heading_diff_before_moving: 0.3

acc_lim_x: 0.25
acc_lim_y: 0.0
acc_lim_theta: 0.5
max_vel_x: 0.5
min_vel_x: 0.1
max_vel_theta: 1.0
min_vel_theta: 0.01
min_in_place_vel_theta: 0.2
escape_vel: -0.1
holonomic_robot: false
yaw_goal_tolerance: 0.13
xy_goal_tolerance: 0.15
sim_time: 2.0
sim_granularity: 0.25
angular_sim_granularity: 0.025
vx_samples: 150
vtheta_samples: 150
controller_frequency: 50
dwa: true
oscillation_reset_dist: 0.02

PoseFollower is a really basic trajectory following algorithm, so consider switching to something more sophisticated. That being said, I've looked at your parameters and the PoseFollower code, and I can't see anything wrong.

Some suggestions you could try:

Thank you for your response. I would like to share a video.
github_issue

Here, the white arrow is the odometry and the green line is the global plan of pose follower.

That is very strange. Could you record a rosbag of the following topics?

  • global plan
  • odom
  • tf
  • laser scans
  • cmd_vel

pose_follower_issue.tar.gz
Here is the rosbag with the required topics. @mintar

this was solved by using sbpl as the global planner instead of navfn according to Mr.Eitan in http://ros-users.122217.n3.nabble.com/Nav-Stack-with-nonholonomic-robots-td1404191.html