前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >ROS2极简总结-Nav2-概述(下)恢复器

ROS2极简总结-Nav2-概述(下)恢复器

作者头像
zhangrelay
发布2021-12-02 13:06:07
5980
发布2021-12-02 13:06:07
举报

恢复器概述 Recovery Overview

注意最右侧黄色部分,具体如下。

插件 Plugins
  • BackUp 备份
  • Spin 旋转
  • Wait 等待

恢复服务器 Recovery Server

定义机器人可以执行的恢复操作。

[nav2_costmap_2d]

  • 清除代价地图

[nav2_recoveries]

  • 旋转 - 按给定角度原地旋转
  • 备份 - 给定距离的线性平移
  • 停止 - 停止机器人
代码语言:javascript
复制
recoveries_server:
  ros__parameters:
    costmap_topic: local_costmap/costmap_raw
    footprint_topic: local_costmap/published_footprint
    cycle_frequency: 10.0
    recovery_plugins: ["spin", "backup", "wait"]
    spin:
      plugin: "nav2_recoveries/Spin"
    backup:
      plugin: "nav2_recoveries/BackUp"
    wait:
      plugin: "nav2_recoveries/Wait"
    global_frame: odom
    robot_base_frame: base_link
    transform_timeout: 0.1
    use_sim_time: False
    simulate_ahead_time: 2.0
    max_rotational_vel: 1.0
    min_rotational_vel: 0.4
    rotational_acc_lim: 3.2

生命周期管理器 Life Cycle Manager

NAV2 中的节点由 ROS2 的生命周期管理器管理(参考ROS2极简总结,核心和新增概念部分)。

Nav2目标

Nav2 的目标是:

  • 可定制 - 定制行为的逻辑能力,更少分叉代码
  • 模块化 - 更轻松地替换规划器和控制算法
  • 可扩展性 - 使用 Python 或其他语言编写规划程序和控件

使用以下方法提高质量:

  • 可靠性 - 系统应该能够以一致的方式执行
  • 质量 - 提交的代码应该在合并前进行验证
  • 可维护性 - 工作流程应防止上述回归

Nav2总结

  • 许多节点参与导航功能实现,都非常重要的。
  • 基于插件的,如果有自定义的规划器,可以把它当作插件来使用
  • 很多参数(可以对其中一些使用动态重新配置)
  • 始终小心命名(主题、TF),否则容易出错。
  • 使用行为树 XML 编排导航操作

关于导航实践部分,请参考:

  • Nav2极简笔记系列
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2021/09/01 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 恢复器概述 Recovery Overview
    • 恢复服务器 Recovery Server
      • 生命周期管理器 Life Cycle Manager
      • Nav2总结
      领券
      问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档