Is it feasible to use two local planner in Move_base? [closed]
Hi,all, I want to combine the functionality of collision avoidance of DWAPlanner and the functionality of multi-robot collision avoidance of collovid. Both of them are local planner and with different collision avoidance functionality.
I have tried to add them in a base_local_planner.yaml as follows and run it in a turtlebot:
controller_frequency: 10
use_obstacles: false # was true
CollvoidLocalPlanner:
holo_robot: false
wheel_base: 0.25
max_neighbors: 10
neighbor_dist: 1.0
max_vel_x: 0.8 # was 0.5
max_vel_th: 1.0 # was 1.5
min_vel_x: 0.01 # was 0.1
min_vel_th: 0.2
min_vel_y: 0.01 #was 0.0
max_vel_y: 0.1 # was 0.0
min_vel_th_inplace: 0.05 # was 0.5
acc_lim_x: 1.0 #was 5.0
acc_lim_y: 0.2 #was 5.0
acc_lim_th: 0.5 #was 5.2
max_vel_with_obstacles: 0.5
footprint_radius: 0.18 #was 0.17
inscribed_radius: 0.2
yaw_goal_tolerance: 0.5
xy_goal_tolerance: 0.10
latch_xy_goal_tolerance: true
ignore_goal_yaw: false
global_frame: /map
time_horizon: 5.0
time_horizon_obst: 5.0 #was 10.0
time_to_holo: 0.4
min_error_holo: 0.02
max_error_holo: 0.10
delete_observations: false #was true
threshold_last_seen: 0.5 #was 0.5
trunc_time: 1.0
left_pref: -0.05
eps: 0.1
publish_positions_frequency: 5.0
publish_me_frequency: 5.0
type_vo: 0 #HRVO = 0, RVO = 1, VO = 2
orca: true #orca or VO
convex: false #footprint or radius
clearpath: true #clearpath or sampling
num_samples: 100 #num samples
use_truncation: true #truncate vos
TrajectoryPlannerROS:
max_vel_x: 0.50
min_vel_x: 0.10
max_rotational_vel: 1.5
min_in_place_rotational_vel: 1.0
acc_lim_th: 0.75
acc_lim_x: 0.50
acc_lim_y: 0.50
holonomic_robot: false
yaw_goal_tolerance: 0.3
xy_goal_tolerance: 0.15
goal_distance_bias: 0.5
path_distance_bias: 0.5 #was 0.9996
sim_time: 1.5
heading_lookahead: 0.325
oscillation_reset_dist: 0.05
vx_samples: 6
vtheta_samples: 20
dwa: true
DWAPlannerROS:
acc_lim_th: 5.0
acc_lim_x: 1.0
acc_lim_y: 0.0
max_trans_vel: 0.50
min_trans_vel: 0.0
max_vel_x: 0.30
min_vel_x: 0.0
max_vel_y: 0.0
min_vel_y: 0.0
max_rot_vel: 1.0
min_rot_vel: 0.2
# These are guessed tolerance values. Yaw tolerance should be about
# 45 degree and xy tolerance within a foot.
yaw_goal_tolerance: 0.2 # radians
xy_goal_tolerance: 0.2 # meters We increase the stop_time_buffer
# because we have a pretty high latency on the controller. A small
# stop_time_buffer would cause the robot to crash into obstacles
# more often.
stop_time_buffer: 0.8
# Lower the path_distance_bias to make the robot not follow the path
# too strictly and avoid spinning in place when gmapping causes
# jumsp in the robot's pose.
path_distance_bias: 10.0
vx_samples: 10
vy_samples: 1
occdist_scale: 0.02
However, the turtlebot robot couldn't avoid static obstacles as the default functionality in the package "turtlebot_navigation“。 Does any one encounter similar problem before. Thank you!