Skip to content

MoveIt 2 概览

MoveIt 2 是 ROS 2 中的机器人操作(Manipulation)平台,集成了运动规划、操作、三维感知、运动学与控制方面的最新进展。——整理自 MoveIt 官方文档

如果你刚接触机械臂开发,可以从本页建立整体认识,再进入 概念 与 教程 动手实践。

MoveIt 是 ROS 生态中事实标准的机械臂运动规划与操作框架,自 ROS 1 时代起被工业界与学术界广泛使用;MoveIt 2 是其针对 ROS 2 的版本(2019 年起发布),在实时性、生命周期管理与分布式架构上做了重设计。

它回答的核心问题是:让机械臂(及移动平台上的机械臂)从当前位姿安全、平滑地运动到目标位姿,并完成抓取、放置、避障等操作任务。你描述机器人的模型(URDF/SRDF)与任务目标,MoveIt 负责其中的运动学求解、碰撞检测、轨迹规划与执行监控。

  • 运动规划(Motion Planning):集成 OMPL、Pilz 工业规划器、STOMP、CHOMP 等多种规划算法,在含障碍物的环境中规划无碰撞轨迹,支持关节空间与笛卡尔空间目标。
  • 运动学(Kinematics):内置 KDL 数值解,可接入 TRAC-IK 等插件,支持自定义运动学求解器,处理逆运动学(IK)与正运动学(FK)。
  • 碰撞检测(Collision Checking):基于 FCL 的环境碰撞检测,支持自碰撞、附件物体、遮挡与安全区域约束,并利用近似加速技术实现实时检测。
  • 规划场景(Planning Scene):维护机器人与环境的世界模型——通过传感器(点云、深度图)或用户 API 增删物体,供规划与碰撞检测使用。
  • 轨迹处理(Trajectory Processing):对规划结果做时间参数化、加减速限制与平滑处理,输出可执行的多采样点轨迹。
  • 实时伺服控制(MoveIt Servo):将笛卡尔速度指令实时转换为关节轨迹,用于遥操作、视觉伺服与动态避障场景。
  • 任务编排(MoveIt Task Constructor,MTC):以阶段(Stage)组合的方式描述抓取-放置等多步骤任务,自动生成与调试备选解。详见 MTC 概念。
  • 混合规划(Hybrid Planning):全局规划与局部实时反应相结合的架构,面向动态环境下的长程操作。
  • 工业抓取与放置:料仓取件、传送带跟踪、码垛拆垛,配合相机完成定位抓取。
  • 协作机器人应用:人机共融场景下的安全避障与拖动示教轨迹验证。
  • 移动操作:移动底盘 + 机械臂的复合平台,先导航再操作。
  • 科研原型:新规划算法、抓取策略、学习方法的快速验证平台。
  • 遥操作与远程作业:Servo 模式接入手柄/主手,实现低延迟实时跟随。

使用 MoveIt 的机器人涵盖 Franka、UR、KUKA、ABB、Kinova、Stretch 等主流平台,从小型教育臂到工业重载臂均有案例。

  • 生态成熟:与 ROS 2、RViz、ros2_control、Nav2 深度集成,工具链完整;大量真实机器人配置可直接参考。
  • 插件化架构:规划器、运动学求解器、控制器均可替换,便于在仿真与实物间迁移。
  • 安全意识内建:碰撞检测贯穿规划与执行全程,环境模型实时更新。
  • 仿真即实物:同一套配置可在 Gazebo(配合 ros_gz)与真实硬件上运行,降低迁移成本。
  1. 核心概念:理解 MTC、规划场景、运动学等设计思想;
  2. 教程:从 RViz 快速上手到抓取放置全流程;
  3. 示例 与 How-To 指南:接入自己的机器人、配置与常见任务;
  4. 需要接口细节时查阅 API 文档。

本站内容整理自 MoveIt 官方文档 并中文化;商业支持版本(MoveIt Pro)与项目动态请访问官方站点。