4、RViz 可视化:启动 MoveIt2 并加载机器人模型,认识 RViz 中的 MotionPlanning 插件,交互式拖拽与规划
好,咱们进入实操环节了。
前面几章我们把 MoveIt2 的架构、运动学、规划器这些概念捋了一遍。说实话,光看代码和理论,你可能会觉得有点虚——到底这玩意儿动起来是什么样?
这一章,我们就让机器人真正“活”起来。
我们会启动 MoveIt2,在 RViz 里加载机器人模型,然后用手拖拽末端,让机器人自己规划路径。嗯,这是你第一次直观感受 MoveIt2 的能力,也是后续所有调试工作的基础。
4.1 启动 MoveIt2 并加载机器人模型
先别急着敲命令。我建议你检查一下环境。
我个人习惯在启动前先确认三个东西:
- ROS 2 环境是否 source 了(
source /opt/ros/humble/setup.bash) - MoveIt2 是否编译成功(
colcon build无报错) - 机器人描述包是否在 workspace 里
确认无误后,我们启动一个经典的 demo——Panda 机械臂。这是 Franka Emika 的 7 轴机器人,MoveIt2 官方用它做示例。
ros2 launch moveit2_tutorials demo.launch.py
这条命令会做三件事:
- 启动 ROS 2 核心节点
- 加载机器人 URDF/SRDF 模型
- 打开 RViz 并加载 MotionPlanning 插件
你可能会看到终端刷出一堆日志。别慌,只要最后出现 You can start planning now! 就说明成功了。
demo.launch.py 里的机器人名称和路径改成你自己的。我曾经有个学生直接复制粘贴,结果加载了个六轴机器人,但配置写的是七轴,卡了半天。
4.2 认识 MotionPlanning 插件
RViz 打开后,你会看到左侧多了一个面板——MotionPlanning。这就是我们和 MoveIt2 交互的核心界面。
这个面板分成几个区域,我一个个说:
| 区域 | 功能 | 我常用的操作 |
|---|---|---|
| Context | 选择规划组、规划器、参考坐标系 | 切换规划组(比如从 arm 到 gripper) |
| Planning | 设置目标位姿、执行规划 | 点击 "Plan & Execute" |
| Manipulation | 拖拽交互、设置拖拽方式 | 勾选 "Allow Dragging" |
| Scene Objects | 添加/移除障碍物 | 添加一个盒子模拟障碍 |
| Stored Plans | 保存和回放规划结果 | 调试时保存几个典型路径 |
你想想看,这么多功能其实就围绕一件事:告诉机器人你想让它去哪儿,然后它自己想办法过去。
4.3 交互式拖拽:最直观的规划方式
好,重点来了。
在 RViz 场景中,你会看到机器人末端(end effector)上有一个三色环——红绿蓝三个箭头和三个圆环。这就是 交互式标记(Interactive Marker)。
怎么用?很简单:
- 拖拽箭头:沿 X/Y/Z 轴平移末端
- 拖拽圆环:绕 X/Y/Z 轴旋转末端
- 拖拽中心球:自由移动(不推荐,容易超出工作空间)
我建议你先拖拽箭头,让末端移动一小段距离。然后点击 MotionPlanning 面板里的 "Plan" 按钮。
你会看到机器人从当前位置,平滑地运动到你拖拽的目标位置。这就是运动规划在起作用。
如果点击 "Plan & Execute",机器人会直接执行规划好的轨迹。在仿真环境里,你会看到机械臂动起来。
4.4 避坑指南:拖拽时常见的几个问题
我遇到过不少同学在拖拽时遇到问题,这里列几个典型的:
- 拖拽没反应:检查是否选中了正确的规划组。有时候默认选的是 gripper,但你拖的是 arm 的末端。
- 规划失败:目标位置太远或太偏。试着把目标放在机器人正前方 30cm 范围内。
- 机器人抖动:可能是碰撞检测太敏感。可以在 Planning 面板里调整 "Planning Time" 到 5 秒以上。
嗯,这里要注意:拖拽只是设置目标,真正的规划是点击 "Plan" 之后才发生的。如果你只是拖拽了标记但没有点 Plan,机器人不会动。
4.5 本章知识体系图
下面这张图帮你梳理了本章的核心逻辑:
4.6 本章小结
这一章我们做了三件事:
- 启动了 MoveIt2 并加载了机器人模型
- 认识了 MotionPlanning 插件的各个区域
- 通过拖拽交互式标记,体验了从拖拽到规划再到执行的完整流程
说实话,这是整个课程里最“好玩”的一章。因为你终于能看到机器人按照你的意图动起来了。
但别光顾着玩。我建议你多试几次:拖拽到不同位置、不同姿态,观察规划结果的变化。你会发现,有些位置规划很快,有些位置会失败——这就是运动学和工作空间的限制在起作用。
嗯,这一章就到这。记住那个三色环的操作手感,后面我们会频繁用到它。
可可精品资料库