https://drive.google.com/file/d/1wbu4CFYYdb1A6QALh3H21Rj_6sesPXBn/view
To navigate the Kaya robot, follow these steps:
-
Make sure the
kaya_navigationfolder is placed inside the ROS 2 workspace source directory:~/ros2_ws/src/IsaacSim-ros_workspaces/jazzy_ws/src -
Start Isaac Sim 5.1.0.
-
Open the Kaya robot scene:
kaya.usd -
Press Play in Isaac Sim to start the simulation.
-
Open a terminal and go to the
kaya_navigationdirectory using a relative path from the workspace source directory:cd ~/ros2_ws/src/IsaacSim-ros_workspaces/jazzy_ws/src/kaya_navigation
-
Run the RViz launch script:
./startRViz.sh
After this, RViz should open and the Kaya robot navigation setup should start.
This step creates the map that will later be used by Nav2.
-
Open the Kaya scene in Isaac Sim.
-
Open the Occupancy Map tool:
Tools > Robotics > Occupancy Map. -
In the Occupancy Map extension, set the origin to
X: 0.0,Y: 0.0,Z: -0.65. -
Set the upper bound to
Z: 0.2.This height matches the lidar height of the Kaya robot.
-
Select the
SimpleRoomprim in the stage. -
Click
BOUND SELECTION. -
Verify that the occupancy map bounds cover the complete
SimpleRoomenvironment. -
Delete the
Kayaprim from the stage before generating the map. -
Click
CALCULATE. -
Click
VISUALIZE IMAGE. -
In the Visualization window, save the map image in:
~/ros2_ws/src/IsaacSim-ros_workspaces/jazzy_ws/src/kaya_navigation/maps -
Create a YAML file in the same directory, for example
KayaMap.yaml. -
Copy the generated map parameters from the Visualization window into the YAML file, e.g:
image: KayaMap.png mode: trinary resolution: 0.05 origin: [0.0, 0.0, 0.0] negate: 0 occupied_thresh: 0.65 free_thresh: 0.196
-
Make sure the image name in the YAML file matches the saved map image name.
-
After this, the map is ready to be used with Nav2.
There are two known limitations in the current navigation setup:
-
Global Costmap Obstacle Layer Issue
If the
obstacle_layeris included inside thepluginslist of theglobal_costmapparameters, the implemented areas shown in the RViz map can appear abnormal or incorrect.Because of this, the
obstacle_layershould not be added to theglobal_costmapplugins unless the configuration is carefully adjusted and tested. -
First Goal May Be Aborted
After running the navigation script startRViz.sh and sending the first navigation goal in RViz, the goal will most likely be aborted.
After this first aborted goal, the system usually behaves normally, and the following navigation goals can be executed correctly.