Nav2

我们的赞助商

Our Sponsors

服务

如果您需要与 Nav2 相关的专业服务,请联系 Open Navigation,邮箱:info@opennav.org

概述

Nav2 是 ROS 导航堆栈的专业支持后继产品,它部署了与自动驾驶汽车相同的技术,并针对移动和地面机器人进行了优化和重新设计。 该项目允许移动机器人在复杂环境中导航,以完成几乎任何类型的机器人运动学的用户定义的应用程序任务。 它不仅可以从 A 点移动到 B 点,还可以有中间姿势,并表示其他类型的任务,如物体跟踪、完整覆盖导航等。 Nav2 是一个生产级和高质量的导航框架,受到全球 100 多家公司的信赖。 它提供感知、规划、控制、定位、可视化等功能,以构建高度可靠的自主系统。 这将根据传感器和语义数据计算环境模型,动态路径规划,计算电机速度,避开障碍物,并构建更高级的机器人行为。 要了解有关此项目的更多信息,例如相关项目、机器人使用、ROS1 比较和维护者,请参阅 关于和联系方式。 要了解有关导航和 ROS 概念的更多信息,请参阅 导航概念

Nav2 使用行为树通过协调许多独立的模块化服务器来创建定制的智能导航行为。 任务服务器可用于计算路径、控制工作量、行为或任何其他与导航相关的任务。这些单独的服务器通过 ROS 接口(例如动作服务器或服务)与行为树 (BT) 通信。 机器人可能会利用许多不同的行为树来允许机器人执行多种类型的独特而复杂的任务。

下图将让您对 Nav2 的结构有一个良好的初步了解。 请注意,每个服务器中都可以有多个用于控制器、规划器和恢复的插件。这可用于创建上下文导航行为。 每个服务器还会将状态指示器返回给 BT Navigator,以便根据其结果实施上下文行为。

Nav2 的预期输入是符合 REP-105 的 TF 转换、

如果使用静态 Costmap 层,则为地图源、BT XML 文件和任何相关的传感器数据

源。然后,它将在正确配置后为完整或

非完整机器人的电机提供有效的速度命令。我们目前支持所有主要的机器人类型:

完整、差速驱动、腿式和阿克曼(类似汽车)基座类型!我们以独特的方式支持

圆形和任意形状的机器人进行 SE2 碰撞检查。

它具有以下工具:

  • 加载、提供和存储地图

  • 在提供的地图上定位机器人(SLAM 提供初始地图)

  • 规划穿过环境的完整路径,甚至对大型机器人而言在运动学上也是可行的

  • 控制机器人遵循路径并动态调整以避免碰撞

  • 平滑计划,使其更加连续、平滑和/或可行

  • 将传感器数据转换为世界的环境模型

  • 使用行为树构建复杂且高度可定制的机器人行为

  • 在发生故障、人为干预或其他情况时执行预定义的行为

  • 遵循构成任务的顺序航点

  • 管理系统的程序生命周期和服务器的看门狗

  • 轻松动态加载插件,用于创建自定义算法、行为等

  • 监控原始传感器数据,以防即将发生碰撞或危险情况

  • Python3 API 以 Python 方式与 Nav2 及其内部任务服务器交互

  • 输出速度更平滑,以保证命令的动态可行性

  • … 等等!

Navigation2 Block Diagram

我们还提供一组入门插件来帮助您入门。 可以在 导航插件 上找到所有插件的列表 - 但它们包括用于跨常见行为和机器人平台类型的算法。

相关项目

查看与 Nav2 相关的项目:

引用

如果您使用导航框架、此存储库中的算法或其中的想法 请在您的论文中引用此作品!

S. Macenski、F. Martín、R. White、J. Clavero。 马拉松 2:导航系统。 IEEE/RSJ 智能机器人与系统国际会议 (IROS),2020 年。

IROS 2020 关于 Nav2 马拉松实验的演讲:

@InProceedings{macenski2020marathon2,
author = {Macenski, Steven and Martin, Francisco and White, Ruffin and Ginés Clavero, Jonatan},
title = {The Marathon 2: A Navigation System},
booktitle = {2020 IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS)},
year = {2020}
}

如果您在工作中使用了 Nav2 中的任何算法或算法分析,请在您的论文中引用此工作!

S. Macenski、T. Moore、DV Lu、A. Merzlyakov、M. Ferguson, 来自 ROS 维护者的办公桌:机器人操作系统 2 中现代且功能强大的移动机器人算法调查, 机器人和自主系统,2023 年

@article{macenski2023survey,
      title={From the desks of ROS maintainers: A survey of modern & capable mobile robotics algorithms in the robot operating system 2},
      author={S. Macenski, T. Moore, DV Lu, A. Merzlyakov, M. Ferguson},
      year={2023},
      journal = {Robotics and Autonomous Systems}
}

Smac Planner(混合 A*,状态格,2D):

S. Macenski、M. Booker、J. Wallace、 Open-Source, Cost-Aware Kinematically Feasible Planning for Mobile and Surface Robotics,

@article{macenski2024smac,
      title={Open-Source, Cost-Aware Kinematically Feasible Planning for Mobile and Surface Robotics},
      author={Steve Macenski and Matthew Booker and Josh Wallace},
      year={2024},
      journal = {Arxiv}
}

受监管的纯追踪控制器:

S. Macenski, S. Singh, F. Martin, J. Gines, Regulated Pure Pursuit for Robot Path Tracking, Autonomous Robots, 2023.

@article{macenski2023regulated,
      title={Regulated Pure Pursuit for Robot Path Tracking},
      author={Steve Macenski and Shrijit Singh and Francisco Martin and Jonatan Gines},
      year={2023},
      journal = {Autonomous Robots}
}

VSLAM 和服务机器人需求的正式比较:

A. Merzlyakov, S. Macenski. A Comparison of Modern General-Purpose Visual SLAM Approaches. IEEE/RSJ 智能机器人与系统国际会议 (IROS),2021 年。

@InProceedings{vslamComparison2021,
author = {Merzlyakov, Alexey and Macenski, Steven},
title = {A Comparison of Modern General-Purpose Visual SLAM Approaches},
booktitle = {2021 IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS)},
year = {2021}
}