Skip to main content
该抓取和放置仿真示例应用使用基于 C++ 的机器人操作 ROS 2 节点 simulation_sample_pick_and_place,演示使用 MoveIt2 进行运动规划、使用 Gazebo 进行物理仿真的自主抓取和放置操作。
注意更多信息请参阅 GitHub 上的 simulation_sample_pick_and_place

simulation_sample_pick_and_place 的管线流程

image

simulation_sample_pick_and_place 管线中使用的 ROS 节点

simulation_sample_pick_and_place 管线中使用的 ROS 话题

ROS 话题类型说明
/joint_statessensor_msgs/msg/JointState所有机器人关节控制信息的实时数据。
/hand_controller/controller_statecontrol_msgs.msg.ControllerState夹爪控制器的当前状态和状态信息。
/rm_group_controller/controller_statecontrol_msgs.msg.ControllerState机械臂控制器的当前状态和状态信息。
/robot_descriptionstd_msgs.msg.String用于机器人建模和可视化的 XML 格式 URDF 机器人描述。
/robot_description_semanticstd_msgs.msg.String用于 MoveIt 规划和配置的 SRDF 语义机器人描述。

前提条件

您已完成为运行示例应用设置环境中的以下设置。
  • 设置设备
  • 设置主机 docker

设置仿真环境

  1. 在主机上,根据 QRB ROS SimulationREADME 完成以下操作,构建 Qualcomm 机器人仿真环境。确保设备和主机位于同一局域网内,并且可以通过 ROS 通信相互通信。
    1. 在 Ubuntu24.04 主机或 Docker 上设置开发环境。
    2. 从源码构建。
  2. 在主机上运行 qrb ros simulation。打开一个终端并运行以下命令,启动 Gazebo 仿真环境:
  3. Gazebo 中选择 Play 按钮开始仿真,然后打开另一个终端并运行以下命令,启动控制器管理器:

运行开箱即用的 simulation_sample_pick_and_place

  1. 在开发套件上,打开一个终端并运行以下命令,启动 moveit ROS move group:
    如果 ROS 节点启动成功,将出现以 [move_group-1] You can start planning now! 开头的日志。
  2. 打开另一个终端并运行以下命令,启动抓取和放置示例应用:
结果 如果 ROS 节点启动成功,您可以在 Gazebo 中看到机械臂执行抓取和放置操作。

构建并运行 simulation_sample_pick_and_place

  1. 在主机的终端中,运行以下命令:
    注意
    • <qir_version>:QIR SDK 的版本,请参阅 QIR SDK 2.0 发行说明
    • <qir_decompressed_path>:您解压 QIR SDK 的路径。
    1. 构建示例应用项目。
    2. 打包示例应用并推送到设备。
  2. 在开发套件上,运行以下命令:
    1. 安装示例应用。
    2. 按照运行开箱即用的 simulation_sample_pick_and_place 中的步骤运行示例应用。