Skip to main content
simulation_amr_navigation is a simulated sample application that demonstrates how to run navigation2 on Qualcomm robotics platforms within the simulator. The QRB ROS Simulation is a ROS project designed to set up the Qualcomm robotic simulation environment.

Figure: Sample results of simulation_amr_navigation

Pipeline flow for simulation_amr_navigation

Figure: Pipeline flow for simulation_amr_navigation

ROS nodes used in the simulation_amr_navigation pipeline

ROS topics used in the simulation_amr_navigation pipeline

ROS topicTypePublished byDescription
/mapnav_msgs::msg::OccupancyGridcartographer_occupancy_grid_nodeThe 2D occupancy grid map of the environment.
/tftf2_msgs::msg::TFMessagecartographer_occupancy_grid_node, qrb_ros_simulationSpatial relationships between different coordinate frames.
/scansensor_msg::msg::LaserScanqrb_ros_simulation2D laser scan data.
/goal_posegeometry_msgs::msg::PoseStampedApplication to call navigation2The target pose for navigation, including position and orientation in the map frame.

Prerequisites

You have completed the following settings in Set up the environment for running sample applications (Skip the settings of Set up host docker).
  • Set up the device
  • Set up the host computer
NoteEnsure that the board is connected to the simulation host using an Ethernet cable. Otherwise, the sample’s performance may degrade due to data transmission issues.

Set up the simulation environment

  1. On your host computer, complete the following actions to build the Qualcomm robotic simulation environment according to the README of QRB ROS Simulation. Ensure that the device and the host are on the same local network and can communicate with each other through ROS communication.
    1. Set up development environment on Ubuntu24.04 host.
    2. Build from source.
  2. Run the QRB Robot Base AMR Mini on the host.

Run out-of-the-box navigation2

1

Configure navigation2 parameters

Configure navigation2 parameters to use GracefulController.
2

Run the 2D lidar SLAM

3

Run the qrb_slam_service_request script

In a new terminal, run the following commands.
4

Start mapping

Use the keyboard to send 0 control commands to start mapping.
5

Run navigation2

In a new terminal, run the following commands.
6

Send the navigation goal

In a new terminal, run the following commands to send the navigation goal and start navigation.