Table of Contents |
---|
Description
This application note describes step to launch lidar-based SLAM on iRobot Create3 with NavQPlus as a compute board.
Preparation
The application note assume the following preparation steps are concluded:
Setup Linux Host for Running Rviz
Put your robot on a level surface, make sure there are no dangling wires that could damage the robot or the NavQPlus board during the movements.
Installing Heatsinks on NAVQ+
To prevent the kit from heating it is recommended to install heatsinks on NAVQ+. Install PcCooler Ram Heatsinks RHS-03 or similar on MCU U1 and SDRAM U2 following instructions of heatsink vendors.
See below the picture of NAVQ+ with installed heatsinks:
Launching SLAM/Navigation Stack
Open a terminal window.
Log in to the NavQPlus console:
Code Block ssh user@<navqplus-ip>
Make sure USB1 is in the host mode:
Code Block sudo sh -c 'echo host > /sys/kernel/debug/usb/38100000.usb/mode' && lsusb
Output:
Code Block Bus 002 Device 002: ID 0451:8140 Texas Instruments, Inc. TUSB8041 4-Port Hub Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub Bus 001 Device 005: ID 2109:0101 VIA Labs, Inc. USB 2.0 BILLBOARD Bus 001 Device 004: ID 05e3:0608 Genesys Logic, Inc. Hub Bus 001 Device 003: ID 10c4:ea60 Silicon Labs CP210x UART Bridge Bus 001 Device 002: ID 0451:8142 Texas Instruments, Inc. TUSB8041 4-Port Hub Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Place the robot on the initial place outside the base.
Start the navigation applications:
Code Block /opt/ros/humble/share/create3_slam_launch/scripts/start_slam -b
Leave the window open with the application running.
Launching Rviz
Perform the steps below on your Desktop PC:
Restart
chrony
service:Code Block sudo systemctl restart chrony
(Use your Desktop PC password.)
Set up
cyclonedds
as default RMW:Code Block export RMW_IMPLEMENTATION="rmw_cyclonedds_cpp"
Start Rviz:
Code Block /opt/ros/humble/share/create3_slam_launch/scripts/start_rviz
Setting Movement Goals in Rviz
In the Rviz window use the 2D Goal Pose toolbar button and then click to the location you want the robot to move to.
The robot moves to the assigned point.
Navigation Through Waypoints
In the Rviz window perform the following steps:
Open the Panels->Add new panel menu and select Navigation 2. The Navigation 2 panel is displayed in Rviz window.
In the Displays view press Add, in the By Topic tab select /waypoints (Marker Array) to add Marker Array to the Displays view.
On the Rviz menu toolbar press the + sign and select nav2_riz-plugins. A new button, Nav2 Goal, appears on the toolbar.
In the Navigation 2 panel press Startup Waypoint/Nav through Poses Mode.
Press Nav2 Goal on the toolbar and click on the map in Rviz window to specify a way point. wp_1 appears on the map.
Repeat step 5 to specify more way points.
To make the robot follow way points starting from wp_1 press Start Waypoint Following in Navigation2.
To remove the current way points in the Displays view clear the Marker Array checkbox.
To set up a new root for the robot using waypoints feature, check the Marker Array checkbox and start from Step 4.