Skip to main content
simulation_remote_assistant 示例应用程序是一个 ROS 软件包,它将 AMR 用作虚拟办公环境中的远程助手。用户可以通过输入自然语言命令与机器人交互,例如”去办公室查看某人”。机器人可以自主导航到指定位置,并按指令执行对象检测任务。
注意更多信息,请参见 GitHub 上的 simulation_remote_assistant。

图: simulation_remote_assistant 的示例效果

Simulation Remote Assistant 的管道流程

图: simulation_remote_assistant 的管道流程

simulation_remote_assistant 管道中使用的 ROS 节点

ROS 节点描述
qrb_ros_simulationqrb_ros_simulation 是一个用于设置 Qualcomm 机器人仿真环境的 ROS 软件包。详细信息,请参见 QRB ROS Simulation。
nn_inference_node加载已训练的 AI 模型、接收预处理后的图像、执行推理并发布结果。详细信息,请参见 NN Inference Node。
yolo_preprocess_node为 Yolo 模型执行预处理和后处理。详细信息,请参见 QRB ROS Tensor Process。
yolo_detection_postprocess_node
yolo_detection_overlay_node
cartographer_node处理传感器数据以执行 SLAM。
cartographer_occupancy_grid_node发布 ROS 占用栅格地图。
nav2_bringup用于机器人导航的 Navigation2 堆栈。
build_map_node构建办公室世界的地图。
nav_preparation_node重新定位并启动导航节点。
task_manager_node解析输入命令并执行操作。

Simulation Remote Assistant 管道中使用的 ROS 主题

ROS 主题类型发布者描述
/scansensor_msgs::msg::LaserScanqrb_ros_simulation用于 SLAM 和建图的 2D 激光雷达扫描数据。
/mapnav_msgs::msg::OccupancyGridcartographer_occupancy_grid_node用于导航的占用栅格地图。
/tftf2_msgs::msg::TFMessageqrb_ros_simulation / cartographer_node坐标系之间的坐标变换。
/odomnav_msgs::msg::Odometryqrb_ros_simulation用于位姿估计的里程计数据。
/cmd_velgeometry_msgs::msg::Twistqrb_ros_simulation用于机器人运动的速度命令。
/goal_posegeometry_msgs::msg::PoseStampedtask_manager_node导航的目标位姿。
/camera/color/image_rawsensor_msgs::msg::Imageqrb_ros_simulation来自仿真相机的 RGB 图像。
/qrb_inference_input_tensorqrb_ros_tensor_list_msgs::msg::TensorListyolo_preprocess_node用于推理的预处理输入张量。
/yolo_detect_tensor_outputqrb_ros_tensor_list_msgs::msg::TensorListnn_inference_node用于检测的推理输出张量。
/yolo_detect_resultvision_msgs::msg::Detection2DArrayyolo_detection_postprocess_node检测到的对象以 2D 边界框结果表示。
/yolo_detect_overlaysensor_msgs::msg::Imageyolo_detection_overlay_node带有边界框的检测叠加图像。

前提条件

设置仿真环境

1

在主机计算机上构建仿真环境

根据 QRB ROS Simulation 的 README 完成以下操作,构建 Qualcomm 机器人仿真环境。确保设备和主机位于同一本地网络中,并可以通过 ROS 通信相互通信。
  1. 在 Ubuntu24.04 主机或 Docker 上设置开发环境。
  2. 从源代码构建。
2

在主机上运行 QRB Robot Base AMR

在仿真办公室世界中运行 QRB Robot Base AMR。

运行开箱即用的 simulation_remote_assistant

在开发套件上,运行以下命令:

构建并运行 simulation_remote_assistant

注意
  • <qir_version>:QIR SDK 的版本,请参见 QIR SDK 2.0 发布说明。
  • <qir_decompressed_path>:QIR SDK 解压后的路径。
1

在主机计算机上构建和打包

  1. 构建示例应用程序项目。
    SSH Session
  2. 打包示例应用程序并推送到设备。
    SSH Session
2

在开发套件上安装并运行

  1. 安装示例应用程序。
    SSH Session
  2. 使用 运行开箱即用的 simulation_remote_assistant 中的步骤运行示例应用程序。