Tutorial: Docking with Nova Carter Using Nav2 and FoundationPose in Sim

Prerequisites

Finish the Tutorial for FoundationPose with Isaac Sim.

Instructions

  1. Set up Isaac Sim:

https://media.githubusercontent.com/media/NVIDIA-ISAAC-ROS/.github/main/resources/isaac_ros_docs/robots/nova_carter/set_up_isaac_sim.gif/
  • Install and launch Isaac Sim following the Isaac Sim Setup here.

  • Add the charging dock at the path localhost/NVIDIA/Assets/Isaac/Props/NVIDIA/Carter/ChargingDock/charging_station_galileo.usd to the Isaac ROS Sample scene.

  • Adjust docking and robot transforms as desired. For example: set dock to (-10.0, 14.0, 0.01, 0.0, 0.0, 180) and set robot to (-2.0, 14.0, 0.0, 0.0, 0.0, 180).

  • Press Play to initiate data publishing from Isaac Sim.

  1. Build and install the required packages:

  1. Make sure you followed the Prerequisites and you are inside the Isaac ROS Docker container.

  2. Install the prebuilt Debian package:

    sudo apt-get install -y ros-humble-nova-carter-bringup
    
  1. Run the launch file:

    ros2 launch nova_carter_docking docking_with_fp_sim.launch.py init_pose_x:=-2.0 init_pose_y:=14.0 init_pose_yaw:=3.14
    
  2. Send a docking action:

    ros2 action send_goal /dock_robot opennav_docking_msgs/action/DockRobot "
    {
        use_dock_id: false,
        dock_pose: {
            pose: {
            position: {x: -10.0, y: 14.0, z: 0.0},
            orientation: {x: 0.0, y: 0.0, z: 1.0, w: 0.0}
            },
            header: {
            frame_id: 'map'
            }
        },
        dock_type: 'nova_carter_dock',
        navigate_to_staging_pose: true
    }"
    
https://media.githubusercontent.com/media/NVIDIA-ISAAC-ROS/.github/main/resources/isaac_ros_docs/robots/nova_carter/docking_with_fp_sim.gif/

Docking with Nova Carter in Isaac Sim Using FoundationPose

Troubleshooting

If the Nova Carter does not establish contact with the dock after the docking process is complete, consider adjusting the external_detection_translation_x parameter in /workspaces/isaac_ros-dev/src/nova_carter/nova_carter_docking/params/nova_carter_docking_fp.yaml. The default value is -0.15. You may increase this value to bring the Nova Carter closer to the dock. More details for docking parameters can be found on GitHub.