ROS导航系列(四):全局路径规划器的参数配置分析

全局路径规划器global_planner的参数配置与分析

nav_core中提供了对应的全局路径规划接口。要想使用机器人move_base提供的便利,我们需要按照接口来实现全局路径规划算法。

global_planner是ros提供的一个全局规划器,是原本的全局规划器navfn的替代品。继承nav_core::BaseGlobalPlanner的接口。

更新

在研究teb_local_planner的时候,对参数朝向有了新的认知,详情请移步link

一、global_planner相关参数

注意: 所有最后标明(动态配置)的参数,都是使用功能包dynamic_reconfigure实现的参数配置。详情可以查看link

  1. /allow_unknown(bool, default:true)
    是否选择探索未知区域。如果和costmap配合使用的时候,其对应参数track_unknown_space必须同样设置为true

  2. /default_tolerance(double, default: 0.0)
    靠近目标点的周围多少数值就算到了目标点

  3. /visualize_potential(bool, default: false)
    可能区域是否可视化

  4. /use_dijkstra(bool, default: true)
    如果设置为false就用A*

  5. /use_quadratic(bool, default:true)
    是否使用二阶近似

  6. /use_grid_path(bool, default: false)
    输出路径是否遵循网格边界,否则就使用梯度下降法

  7. /old_navfn_behavior(bool, default: false)
    如果你想要让global_planner跟之前的navfn版本效果一样,就设true

  8. /lethal_cost(int, default: 253)
    障碍物致命区域的代价数值(dynamic reconfigure, 可以动态参数配置)

  9. /neutral_cost (int, default: 50)
    中立区域的cost值(动态配置)

  10. /cost_factor(double, default: 3.)
    cost因子,用于将每层costmap对应的cost数值乘起来(动态配置)

  11. /publish_potential (bool, default: True)
    发布可能的代价地图(动态配置)

  12. /orientation_mode (int, default: 0)
    设置每个点的朝向。 (None=0, Forward=1, Interpolate=2, ForwardThenInterpolate=3, Backward=4, Leftward=5, Rightward=6)(动态配置)

  13. /orientation_window_size(int, default 1)
    根据方向模式(参数12)指定的位置导数,确定使用哪个窗口来确定方向(动态配置)

二、测试

使用dijkstra算法的对应potential_map:
在这里插入图片描述
使用A*算法的对应potential_map:

在这里插入图片描述
但是在最开始的阶段,总是会出现:

[ERROR] [1611670223.557818434, 295.312000000]: NO PATH!
[ERROR] [1611670223.557951973, 295.312000000]: Failed to get a plan from potential when a legal potential was found. This shouldn't happen.

我认为出现这种情况是因为,跟机器人设定的方向orientation_mode有关。

总体来说这个global_planner不好用。

全局路径规划还是建议使用默认的navfn插件。

评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值