Ask Your Question

Revision history [back]

click to hide/show revision 1
initial version

TEB_local_planner oscillates when strafing only

Hi all!

I have a holonomic robot and use TEB local planner which works fine in general, but the last bit still resist all my tuning efforts: When the bot is strafing only, i.e. the bot looks along the x-axis and moves along the y-axis, it starts oscillating when getting closer to the goal. This does not happen when the goal is in forward direction, it happens only when moving sidewards and the goal direction is orthogonal to the path.

I tuned a lot, but this behaviour seems to be independent of parameters and the underlying local costmap, it happens on completely free space as well.

Any tipps where I could dig in?

For completeness, my parameters are: base_local_costmap.yaml

TrajectoryPlannerROS:
  holonomic_robot: true

  min_in_place_vel_theta: 0.0
  y_vels: [-0.1, -0.01, 0.01, 0.1 ]

  max_vel_theta: 0.3
  min_vel_theta: -0.3
  escape_vel: -0.100    
  max_vel_x: 0.100     
  min_vel_x: -0.100
  max_vel_y: 0.100     
  min_vel_y: -0.100     
  acc_lim_theta: 0.05
  acc_lim_x: 0.05
  acc_lim_y: 0.05

controller_frequency: 5 

clearing_rotation_allowed: false
recovery_behaviors: [{name: aggressive_reset, type: clear_costmap_recovery/ClearCostmapRecovery}]

teb_local_planer.yaml:

odom_topic: /odom
map_frame: /map

global_plan_overwrite_orientation: False    
max_global_plan_lookahead_dist: 10.0
costmap_obstacles_behind_robot_dist: 3.0    
feasibility_check_no_poses: 10

max_vel_x: 0.100
max_vel_x_backwards: 0.100
max_vel_y: 0.100
max_vel_y_backwards: 0.100

max_vel_theta: 0.3
min_vel_theta: -0.3 

acc_lim_x: 0.05
acc_lim_y: 0.05
acc_lim_theta: 0.05
min_in_place_vel_theta: 0.3

footprint_model: 
  type: point            

xy_goal_tolerance: 0.02
yaw_goal_tolerance: 0.1

min_obstacle_dist: 0.30
inflation_dist: 0.50
include_costmap_obstacles: True

optimization_activate: True
optimization_verbose: False
penalty_epsilon: 0.03
exact_arc_length: true 

weight_acc_lim_x: 3.0     
weight_acc_lim_theta: 3.0

weight_kinematics_nh: 1.0                   
more osscilations 
weight_kinematics_forward_drive: 0.0
weight_kinematics_turning_radius: 0.0       

enable_homotopy_class_planning: True