teb_local_planner teb_local_planner

ROS 1/5 🧩 软硬件结合 已发布
rst-tu-dortmund 1313 Stars BSD-3-Clause BOM 完整度: 0/5 教程完整度: 0/5
teb_local_planner

项目简介

基于Timed-Elastic-Bands的移动机器人最优轨迹规划器(ROS Pac)


teb_local_planner 是一个基于 ROS(机器人操作系统)的开源局部路径规划器,作为 2D 导航栈中 base_local_planner 的插件实现。其核心算法名为“时间弹性带”(Timed Elastic Band),能够在运行时对机器人的轨迹进行局部优化,同时考虑轨迹执行时间、与障碍物的安全距离以及运动学与动力学约束。该规划器特别适用于移动机器人在复杂动态环境中的实时导航,解决了传统路径规划方法在轨迹平滑性、时间效率和约束满足方面难以兼顾的问题。

标签

项目特点

**时间弹性带算法**:核心算法通过优化轨迹的时间分配和空间形状,在保证安全的前提下最小化执行时间。
**拓扑规划**:能够考虑并利用不同的轨迹拓扑结构(如绕行障碍物的不同方向),避免陷入局部最优。
**运动学/动力学约束**:支持对机器人的速度、加速度、转弯半径等运动学与动力学约束进行建模和优化。
**ROS 集成**:作为 ROS Navigation Stack 的标准插件,可以无缝替换或配合其他导航组件使用。
**多种机器人模型**:支持差速驱动、全向驱动以及汽车-like(阿克曼转向)等多种移动机器人模型。
**实时性能**:通过稀疏模型和高效优化算法,能够在机器人运行时进行实时轨迹调整。

技术规格

算法 Timed Elastic Band (TEB)
平台 ROS (Melodic, Noetic 等)
机器人模型 差速驱动、全向驱动、汽车-like (阿克曼)
约束类型 速度、加速度、转弯半径、障碍物距离、轨迹执行时间
优化目标 最小化轨迹时间、最大化障碍物距离、满足运动学约束
拓扑处理 支持 Distinctive Topologies
依赖 Eigen, libg2o, Boost, ROS 基础包
许可证 BSD

项目资源

物料清单 (BOM)

物料名称 数量 参考价格 备注
ROS (Melodic/Noetic) 1 运行环境
teb_local_planner 包 1 核心规划器
导航栈 (move_base) 1 依赖框架
移动机器人平台 1 差速/全向/阿克曼
激光雷达/深度相机 1 用于障碍物检测
里程计传感器 1 用于定位

能力画像

⚪ 记忆与知识检索: 2/5
🔵 逻辑推演: 4/5
⚪ 表达与交流: 1/5
⚪ 感知与观察: 2/5
🔵 数理与计算: 5/5
🔵 动手与操作: 3/5
⚪ 狂热与坚持: 3/5
🔵 创造与创新: 4/5

所需技能

🔧 **动手能力**:需要能够搭建和配置移动机器人硬件平台(传感器、执行器、嵌入式系统)。 💻 **编程能力**:需要精通 C++ 和 ROS 编程,理解 CMake 构建系统,能够阅读和修改优化算法代码。 ⚡ **电子电路**:需要了解机器人传感器(激光雷达、里程计)和执行器(电机驱动)的接口与通信。

适用场景

**服务机器人导航**:在动态环境中为送餐、清洁等机器人提供平滑、高效的局部路径规划。
**自动驾驶汽车**:用于汽车-like 机器人的轨迹规划,考虑转弯半径和速度约束。
**多机器人协同**:在共享空间中为多个机器人规划无碰撞的轨迹。
**复杂环境探索**:在狭窄通道、密集障碍物区域中寻找最优路径。