Skip to content

MoveIt 集成 ​

本教程将展示如何在 IsaacSim 中使用 MoveIt 控制捷勃特机器人。

MoveIt 集成演示

概述 ​

本案例演示了如何使用 MoveIt 控制 IsaacSim 中带有夹爪的捷勃特机器人。夹爪使用 Robotiq 开源 URDF。

原理 ​

topic_based_ros2_control 将 MoveIt 的规划结果通过指定 topic 发送,并接收指定 topic 的反馈,从而实现对机器人动作的控制。

前置条件 ​

ROS 2 Python 3.11 配置 ​

由于 ros2-humble 安装的是 Python 3.10 版本,而 IsaacSim 使用 Python 3.11 版本,因此需要配置 Python 3.11 版本的 ROS 2。

参考配置指南:https://github.com/camopel/isaacsim-ros2-python3.11

安装依赖 ​

bash
sudo apt install ros-humble-topic-based-ros2-control

快速使用指南 ​

步骤 1:将项目添加到 ROS 2 工作空间 ​

bash
# 终端 1
source /opt/ros/humble/setup.bash  # python3.10 的 ros2
cp -r isaacsim_moveit {你的工作空间}/src
cd {你的工作空间}/
colcon build
source install/setup.bash

步骤 2:启动 MoveIt 2 ​

bash
ros2 launch gbt_gripper_moveit_config demo.launch.py

步骤 3:启动 IsaacSim ​

bash
# 终端 2
source /opt/ros/humble_ws/install/setup.bash  # python3.11 的 ros2
cd ~/isaacsim
./isaac-sim.sh

步骤 4:在 IsaacSim 中加载场景 ​

  1. 点击 File -> Open
  2. 选择工作空间中的 isaacsim_moveit 文件夹
  3. 打开 ./gbt_c7a_moveit.usd
  4. 点击 Play 按钮启动模拟

步骤 5:控制机器人 ​

完成上述步骤后,即可通过 RViz 中的 MoveIt 控制 IsaacSim 中的捷勃特机器人。

MoveIt 功能 ​

功能描述
运动规划规划从起点到目标点的轨迹
碰撞检测检测机器人与环境中的障碍物碰撞

配置参数 ​

MoveIt 参数 ​

参数说明默认值
planning_time规划时间限制5.0 s
num_planning_attempts规划尝试次数10
planning_pipeline规划管道ompl

相关资源 ​

下一步 ​