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

图:simulation_remote_assistant 的示例效果
仿真远程助手的管线流程
图:simulation_remote_assistant 的管线流程
simulation_remote_assistant 管线中使用的 ROS 节点
| ROS 节点 | 说明 |
|---|---|
qrb_ros_simulation | qrb_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 | 解析输入命令并执行动作。 |
仿真远程助手管线中使用的 ROS 话题
| ROS 话题 | 类型 | 发布者 | 说明 |
|---|---|---|---|
/scan | sensor_msgs::msg::LaserScan | qrb_ros_simulation | 用于 SLAM 和建图的 2D 激光雷达扫描数据。 |
/map | nav_msgs::msg::OccupancyGrid | cartographer_occupancy_grid_node | 用于导航的占用栅格地图。 |
/tf | tf2_msgs::msg::TFMessage | qrb_ros_simulation / cartographer_node | 坐标系之间的坐标变换。 |
/odom | nav_msgs::msg::Odometry | qrb_ros_simulation | 用于位姿估计的里程计数据。 |
/cmd_vel | geometry_msgs::msg::Twist | qrb_ros_simulation | 用于机器人运动的速度命令。 |
/goal_pose | geometry_msgs::msg::PoseStamped | task_manager_node | 导航的目标位姿。 |
/camera/color/image_raw | sensor_msgs::msg::Image | qrb_ros_simulation | 来自仿真相机的 RGB 图像。 |
/qrb_inference_input_tensor | qrb_ros_tensor_list_msgs::msg::TensorList | yolo_preprocess_node | 用于推理的预处理输入张量。 |
/yolo_detect_tensor_output | qrb_ros_tensor_list_msgs::msg::TensorList | nn_inference_node | 用于检测的推理输出张量。 |
/yolo_detect_result | vision_msgs::msg::Detection2DArray | yolo_detection_postprocess_node | 以 2D 边界框结果表示的检测到的物体。 |
/yolo_detect_overlay | sensor_msgs::msg::Image | yolo_detection_overlay_node | 带有边界框的检测叠加图像。 |
前提条件
- 您已完成为运行示例应用设置环境中的以下设置(跳过 Set up host docker 的设置)。
- 设置设备
- 设置主机
- 按照使用 QAIHUB 生成 YOLOv8 模型中的步骤生成模型文件,并下载 coco-labels YAML 文件。然后,将它们推送到设备上的
/opt/model/目录。
设置仿真环境
- 在主机上,根据 QRB ROS Simulation 的 README 完成以下操作,构建 Qualcomm 机器人仿真环境。确保设备和主机位于同一局域网内,并且可以通过 ROS 通信相互通信。
- 在 Ubuntu24.04 主机或 Docker 上设置开发环境。
- 从源码构建。
- 在主机上,在仿真办公室世界中运行
QRB Robot Base AMR。
运行开箱即用的 simulation_remote_assistant
在开发套件上,运行以下命令:
构建并运行 simulation_remote_assistant
-
在主机的终端中,运行以下命令:
注意
<qir_version>:QIR SDK 的版本,请参阅 QIR SDK 2.0 发行说明。<qir_decompressed_path>:QIR SDK 解压后的路径。
- 构建示例应用项目。
- 打包示例应用并推送到设备。
-
在开发套件上,运行以下命令:
- 安装示例应用。
- 按照运行开箱即用的 simulation_remote_assistant 中的步骤运行示例应用。
- 安装示例应用。

