一.GlobalPlanner参数
1.allow_unknown
(bool): 是否允许规划穿过未知区域的路径,只设计参数为true还不行,还要在costmap_commons_params.yaml中设置track_unknown_space参数也为true才可以;
2.default_tolerance
(double): 当设置的目的地被障碍物占据时,需要以该参数为半径寻找到最近的点作为新的目的地;
3.visualize_potential
(bool): 是否从PointClound2计算得到的势场域;
4.use_dijkstra
(bool): 设置为true,使用dijkstra算法,否则使用A*算法;
5.use_quadratic
(bool): 如果设置为true,则会规划一条沿着网格边界的路径,偏向于直线穿越网络,否则将使用梯度下降算法,路径更为光滑点;
6.old_navfn_behavior
(bool): 若在某些情况下,想让global_planner完全复制navfn的功能,那就设置为true,但是需要注意navfn是非常旧的ROS系统中使用的,现在已经都用global_planner代替navfn了,所以不建议设置为true;
7.lethal_cost
(int): 致命代价值,默认为253,可以动态设置该参数;
8.cost_factor
(double): 代价地图与每个代价值相乘的因子;
9.publish_potential
(bool): 是否发布costmap的势函数;
10.orientation_mode
(int):如何设置每个点方向(None=0,Forward=1,Interploalete=2,ForwardThenInterplate=3,Backward=4,Leftward=5,Rightward=6);
11.orientation_windows_size
(int): 根据orientation_mode指定位置积分来得到使用窗口的方向,默认值为1,可以动态重新配置
二.Base_local_planner参数
acc_lim_x
(double_t):机器人在x方向的加速度极限,单位为 meters/sec^2,默认2.5;acc_lim_y
(double_t):机器人在y方向的加速度极限,单位为 meters/sec^2,默认2.5;acc_lim_theta
(double_t):机器人角速度角速度限制,默认3.2;max_vel_x
(double_t):允许给机器人x方向的最大速度,默认0.55;min_vel_x
(double_t):允许给机器人的最小速度,默认0.0;max_vel_theta
(double_t):允许机器人的最大旋转速度,默认是1;min_vel_theta
(double_t):允许机器人最小的旋转速度,默认是-1;min_in_place_vel_theta
(double_t):The absolute value of the minimum in-place rotational velocity the controller will explore", 0.4, 0, 20.0)pdist_scale
(double_t):代价函数中局部路径最后一个点距离路径的权重,默认0.6;gdist_scale
(double_t):代价函数中到达目标距离的权重,默认0.8;occdist_scale
(double_t):控制器避开障碍物的权重,默认0.05;escape_reset_dist
(double_t):震荡标志位在机器人运动多少距离后重置,默认0.1m;escape_reset_theta
(double_t):震荡标志位在机器人运动多少弧度后重置,默认为pi;heading_lookahead
(double_t):在不同旋转速度下机器人能够看多远,默认0.325;holonomic_robot
(bool_t): 是否有y方向的速度,默认为true;escape_vel
(double_t):紧急逃离的速度,默认-0.1;heading_scoring
(bool_t):使用动态窗口还是加速度限制,默认false;heading_scoring_timestep
(double_t):路径前向打分中能够看多久,默认0.1;simple_attractor
(bool_t):(“Set this to true to allow simple attraction to a goal point instead of intelligent cost propagation”, False)
三.DWA参数
sim_time
(double_t):模拟轨迹的时间,即动态窗口大小;sim_granularity
(double_t):给定轨迹的步长,默认0.025米;_sim_granularity
(double_t):给定角度轨迹的弧长,默认0.025弧度;
path_distance_bias
(double_t): 刻画局部路径和全局路径的贴合程度,该权重参数越大说明越贴合,越小说明不用那么贴合。默认32;goal_distance_bias
(double_t):达到局部目标点的权重参数,也用来控制速度。权重如果设置为0表示要求完全到达目标点,这会导致机器人走动缓慢和震荡的现象,因为要求达到目标点的精度太高,所对机器人的控制比较苛刻,默认24;occdist_scale
(double_t): 控制器应该避开障碍物的的轻易程度,避障权重,默认0.01;stop_time_buffer
(double_t):允许认为路径有效的震荡时间 ,默认0.2s;oscillation_reset_dist
(double_t): 震荡标志位在机器人运动多少距离后重置,默认0.05m;oscillation_reset_angle
(double_t): 震荡标志位在机器人运动多少弧度后重置,默认为0.2rad;forward_point_distance
(double_t): 机器人距离潜在打分点的距离,默认0.325;scaling_speed
(double_t):, 0, “The absolute value of the velocity at which to start scaling the robot’s footprint, in m/s”, 0.25, 0)max_scaling_factor
(double_t):影响机器人轮廓的最大因子,默认为0.2;vx_samples
(int_t):x方向速度的样本数,默认3;vy_samples
(int_t):y方向速度的样本数,默认10;vth_samples
(int_t):角速度的样本数,默认20;use_dwa
(bool_t):是否使用动态窗口构建速度样本,默认为true;restore_defaults
(bool_t):是否恢复原本的配置,默认为false;
更多move_base调试参数介绍可参考ROS Navigation Tuning Guide,,中文翻译版导航调试指南