0
$\begingroup$

Rosanswers logo

Hello,

I finally managed to set up SBPLLatticePlanner (as a Global Planner) and pose_follower (as a local planner) on my robot (ROS Hydro and Ubuntu 12.04).

However, the robot is always stuck and does not move, and after a while I get this message:

[ERROR] [1417330887.447088561]: Aborting because the robot appears to be oscillating over and over. Even after executing all recovery behaviors

I'm sure that SBPLLatticePlanner works fine, since the robot is moving to the goal when using DWAPlannerROS, so the issue is probably pose_follower.

My robot is non holonomic but can rotate in place.

Here's the yaml file I am using for pose_follower:

PoseFollower:
  k_trans: 2.0
  k_rot: 2.0
  tolerance_trans: 0.05
  tolerance_rot: 0.04
  tolerance_timeout: 0.5
  holonomic: false
  samples: 1
  max_vel_lin: 0.3
  min_vel_lin: 0.1
  max_vel_th: 0.1
  min_vel_th: 0.0
  min_in_place_vel_th: 0.2
  in_place_trans_vel: 0.05
  trans_stopped_velocity: 0.0001
  rot_stopped_velocity: 0.0001

Yaml file for DWAPlannerROS

DWAPlannerROS:

  max_vel_x: 0.3  # 0.55
  min_vel_x: 0.0 

  max_vel_y: 0.0  # diff drive robot
  min_vel_y: 0.0  # diff drive robot

  max_trans_vel: 0.2 # choose slightly less than the base's capability
  min_trans_vel: 0.1  # this is the min trans velocity when there is negligible rotational velocity
  trans_stopped_vel: 0.1

  # Warning!
  #   do not set min_trans_vel to 0.0 otherwise dwa will always think translational velocities
  #   are non-negligible and small in place rotational velocities will be created.

  max_rot_vel: 2.0  # choose slightly less than the base's capability
  min_rot_vel: 0.4  # this is the min angular velocity when there is negligible translational velocity
  rot_stopped_vel: 0.4
  
  acc_lim_x: 1.0 # maximum is theoretically 2.0, but we 
  acc_lim_theta: 2.0
  acc_lim_y: 0.0      # diff drive robot

# Goal Tolerance Parameters
  yaw_goal_tolerance: 0.3  # 0.05
  xy_goal_tolerance: 0.15  # 0.10
  # latch_xy_goal_tolerance: false

# Forward Simulation Parameters
  sim_time: 1.0       # 1.7
  vx_samples: 6       # 3
  vy_samples: 1       # diff drive robot, there is only one sample
  vtheta_samples: 20  # 20

# Trajectory Scoring Parameters
  path_distance_bias: 90.0      # 32.0   - weighting for how much it should stick to the global path plan
  goal_distance_bias: 24.0      # 24.0   - wighting for how much it should attempt to reach its goal
  occdist_scale: 0.50           # 0.01   - weighting for how much the controller should avoid obstacles
  forward_point_distance: 0.325 # 0.325  - how far along to place an additional scoring point
  stop_time_buffer: 0.2         # 0.2    - amount of time a robot must stop in before colliding for a valid traj.
  scaling_speed: 0.25           # 0.25   - absolute velocity at which to start scaling the robot's footprint
  max_scaling_factor: 0.2       # 0.2    - how much to scale the robot's footprint when at speed.

# Oscillation Prevention Parameters
  oscillation_reset_dist: 0.05  # 0.05   - how far to travel before resetting oscillation flags

# Debugging
  publish_traj_pc : true
  publish_cost_grid_pc: true
  global_frame_id: odom


# Differential-drive robot configuration - necessary?
#  holonomic_robot: false

Any thoughts?

Thanks


Originally posted by ROSCMBOT on ROS Answers with karma: 651 on 2014-11-30

Post score: 0

$\endgroup$

1 Answer 1

0
$\begingroup$

Rosanswers logo

It looks like you've set samples: 1 for the pose_follower. You may want to increase that a bit.

You may also want to adjust the rotational velocity limits to be similar to the limits that you're using for DWAPlannerROS.


Originally posted by ahendrix with karma: 47576 on 2014-11-30

This answer was ACCEPTED on the original site

Post score: 0


Original comments

Comment by ROSCMBOT on 2014-12-01:
Changing the parameters didn't fix the issue yet. The robot is sometimes rotating around itself, but does not move towards the goal.

$\endgroup$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.