http://wiki.ros.org/teb_local_planner/Tutorials/Setup%20and%20test%20Optimization

简介:本部分关于teb怎样优化轨迹以及怎样自定义配置参数

首先是安装,

sudo apt-get install ros-kinetic-teb-local-planner

也可以从源码安装

然后安装教程

git clone https://github.com/rst-tu-dortmund/teb_local_planner_tutorials.git

教程中包含了一个简单的测试节点test_optim_node,该节点优化了一个固定起始目标点位姿。首先使用Timed-Elastic-Band来配置起始点之间的单个路径规划,然后激活参数/test_optim_node/enable_homotopy_class_planning来在起始目标点之间规划多个拓扑路径。

1.单路径的优化

通过参数服务器来失能参数

rosparam set /test_optim_node/enable_homotopy_class_planning False

然后通过launch启动该节点

roslaunch teb_local_planner test_optim_node.launch

可以从上图看出Timed-Elastic-Band不能跨越障碍物。后面通过多拓扑结构可以解决。

如果想要自定义优化效果,通常修改如下参数,其他参数尽量不要更改,以免出现意想不到的结果。

减少参数no_inner_iterations,no_outer_iterations 以及obstacle_poses_affected ;增加参数值dt_ref

2.在多拓扑结构中多轨迹的优化

使能该参数并启动节点

rosparam set /test_optim_node/enable_homotopy_class_planning True
roslaunch teb_local_planner test_optim_node.launch

结果如下

红色轨迹和最优的一条轨迹。

teb教程1的更多相关文章

  1. teb教程8

    融合动态障碍物 简介:考虑怎样把其他节点发布的动态障碍物考虑进来 1.本部分演示了动态障碍物该如何被包含到teb_local_planner中. 2.写一个简单的动态障碍物的发布器publish_dy ...

  2. teb教程3

    配置和运行机器人导航 简介:配置teb_local_planner作为navigation中local planner的插件 参考teb安装 由于局部代价地图的大小和分辨率对优化性能影响很大,因为占据 ...

  3. teb教程10 teb questions

    http://wiki.ros.org/teb_local_planner/Tutorials/Frequently%20Asked%20Questions

  4. teb教程9

    通过costmap_converter来跟踪和包含动态障碍物 简介:利用costmap_converter来很容易跟踪动态障碍物 1.costmap_converter中提供了一个插件称之为costm ...

  5. teb教程7

    融合自定义的障碍物 简介:本部分讲解怎样考虑其他节点发布的多边形的障碍物. 1.在一些应用当中,可能不想依赖于代价地图或者想添加其他的除了点状的障碍物.你可以发送你自己的障碍物列表到teb_local ...

  6. teb教程6

    代价地图的转换 简介:本部分关于怎样把代价地图转换插件应用到转换占据栅格costmap2d到几何形状来优化(测试阶段) teb_local_planner包支持costmap_converter插件, ...

  7. teb教程5

    跟随全局规划器 简介:本部分是关于如何配置局部规划器严格跟随全局规划,也包括调节在时优和路径跟随上的权衡. 1.先看一下via-points当前的优化行为:启动下面节点 roslaunch teb_l ...

  8. teb教程4

    障碍物避障以及机器人足迹模型 简介:障碍物避障的实现,以及必要参数的设置对于机器人足迹模型和其对应的影响 1.障碍物避障是怎样工作的 1.1 惩罚项 障碍物避障作为整个路径优化的一部分.显然,优化是找 ...

  9. teb教程2

    http://wiki.ros.org/teb_local_planner/Tutorials/Inspect%20optimization%20feedback 检查优化反馈 简介:怎样检查优化的轨 ...

随机推荐

  1. ubuntu16.04安装LNMP(ubuntu+Nginx+mysql+PHP7.0)

    系统环境: Ubuntu 16.04.2 LTS nginx version: nginx/1.10.3 (Ubuntu) PHP 7.0.22-0ubuntu0.16.04.1 mysql  Ver ...

  2. 2018-2-22-在-windows-安装-Jekyll

    title author date CreateTime categories 在 windows 安装 Jekyll lindexi 2018-02-22 17:47:39 +0800 2018-2 ...

  3. Redis的常用功能

    排序: sort mylist 排序 sort mylist alpha desc limit 0 2 字母排序 sort list by it:* desc by命令 sort list by it ...

  4. 如何将excel表格中的纯数字删掉 空白行,然后删除

    excel里如何删除一列中全部数字 1.选择目标区域2.按“F5”,定位条件如下设置,即可选中值为数字的单元格,在按Del. 空白行删除 选择空值,确定,就会将所有空白行选定,然后删除

  5. JS数字转字符串的方法(number to string)

    一.双点解析 ..toString(); 二.括号先计算再转换 ().toString(); 三.加空串 + ''

  6. Java高频经典面试题(第一季)一:自增的分析

    package will01; public class testZiZeng { public static void main(String[] args) { int i = 1; i = i ...

  7. 所有anaconda安装包失败的解决办法汇总

    多试几次,有时候网络不稳定下载一半会停掉 更改Pip源 pip install scrapy -i https://pypi.tuna.tsinghua.edu.cn/simple 1.首先确认镜像源 ...

  8. 简单的51单片机多任务操作系统(C51)

    在网上看到这段代码,所以自己尝试了,可以跑起来,但是没有精确的定时功能,仅仅是任务的调度而已. 数组中是11,而不是12.这里写错了... /* 简单的多任务操作系统 其实只有个任务调度切换,把说它是 ...

  9. vue基础七

    事件处理器 1.监听事件 可以用 v-on 指令监听 DOM 事件来触发一些 JavaScript 代码. <div id="example-1"> <butto ...

  10. 芒果学院Python高级开发课程