Examples
Tutorial with RealSense, Tutorial with Zed, Tutorial with Isaac Sim
(1)Complete steps 1-7 listed in the quickstart post
=> Already Done
(2)Install and launch Isaac Sim following the steps in the Isaac ROS Isaac Sim Setup Guide documentation
(2)-1 Install Isaac Sim, choosing the appropriate working environment
=> Already Done
(2)-2 Follow the Running Native ROS instructions to ensure that ROS 2 and the required packages are installed to successfully enable the ROS 2 Bridge in Omniverse Isaac Sim
Ubuntu 20.04 Humble
->Install humble from source
ROS 2 Humble Ubuntu 20.04
System requirements
Tier 3: Ubuntu Linux - Focal (20.04) 64-bit
System setup
Set locale
Make sure you have a locale which supports UTF-8
Add the ROS 2 apt repository
Need to add the ROS 2 apt repository to your system
Ensure that the Ubuntu Universe repository is enabled
Now add the ROS 2 GPG key with apt
Add the repository to your sources list
Install development tools and ROS tools
Install common packages
Install packages according to your Ubuntu version
Get ROS 2 code
Install dependencies using rosdep
ROS 2 packages are built on frequently updated Ubuntu systems. It is always recommended that you ensure your system is up to date before installing new packages
Build the code in the workspace
If you have already installed ROS 2 another way (either via Debians or the binary distribution)
Make sure that you run the below commands in a fresh environment that does not have those other installations sourced
Also ensure that you do not have source /opt/ros/${ROS_DISTRO}/setup.bash in your .bashrc
=> Confirmed
Make sure that ROS 2 is not sourced with the command printenv | grep -i ROS. The output should be empty
Environment setup
Source the setup script
Set up your environment by sourcing the following file
Save it in bashrc
Try some examples
Source the setup file and then run a C++ talker:
In one terminal, source the setup file and then run a C++ talker
Source the setup file and then run a Python listener:
Talker saying that it’s Publishing messages and the listener saying I heard those messages
. This verifies both the C++ and Python APIs are working properly
Ensure vision_msgs_package is built from the ros2 branch
The ROS 2 Bridge in Isaac Sim depends on this package, make sure the workspace containing this package is sourced before running Isaac Sim from the same terminal
=> Already Done
(2)-3 Launch Isaac Sim App Selector window
(2)-4 Follow the steps outlined in another documentation
If you have a system level ROS 2 install
Click Open in Terminal button
Open a terminal window and then follow the steps outlined here
ROS2 Setup
Source Ros2
Ensure your ROS2 install is sourced before proceeding
Enabling the ROS2 Bridge Extension
ROS2
Not using a Isaac Sim ROS2 Workspace -> Follow another documentation
Create a file named fastdds.xml under “~/.ros/”
fastddsxml.txt
Paste the above snippet link into the file
Run export FASTRTPS_DEFAULT_PROFILES_FILE=”~/.ros/fastdds.xml” in the terminals that will use ROS2 functions, as well as setting it under “Extra Args” when launching Isaac Sim from the Nucleus Launcher
=> Save it in .bashrc
To enable ROS2 bridge extensions
Go to the extension manager menu Window->Extensions and search for ROS2 bridge
Warning:Only one of the ROS Bridge extensions can be enabled at any given time, so if switching between the two bridges, disable one before enabling the other
(2)-5 Launch Isaac Sim
(2)-6 Open Isaac ROS Sample scene as shown below
Isaac Examples > ROS > Isaac ROS > Samples Scene
(2)-7 Result:
Successful
(3)Disable the clock reset when simulation is stopped
Go to the Stage tab and select /World/ROS_Clock/isaac_read_simulation_time, then untick the Reset On Stop checkbox
(4)Press Play to start publishing data from Isaac Sim
(5)Open a second terminal and attach to the container
(6)In the second terminal, start the isaac_ros_bi3d node using the launch files
Problem: Rviz nothing displayed
Solution: (Searching for it…)
https://forums.developer.nvidia.com/t/tutorial-for-freespace-segmentation-with-isaac-sim-rviz-nothing-displayed/279466
(7)Optionally, you can run the visualizer script to visualize the disparity image
286.1 Turn off this advice by setting config variable advice.detachedHead to false
286.1
286.1 HEAD is now at 2df716c Rebase from ‘upstream’ (no changes)
——
ubuntu_20_foxy_minimal.dockerfile:82
——————–
81 |
82 | »> RUN mkdir -p ${ROS_ROOT}/src &&
83 | »> cd ${ROS_ROOT} &&
84 | »> rosinstall_generator –deps –rosdistro ${ROS_DISTRO} rosidl_runtime_c rcutils rcl rmw tf2_msgs geometry_msgs nav_msgs std_msgs rosgraph_msgs sensor_msgs vision_msgs rclpy ros2topic ros2pkg ros2doctor ros2run ros2node ros_environment > ros2.${ROS_DISTRO}.${ROS_PKG}.rosinstall &&
85 | »> cat ros2.${ROS_DISTRO}.${ROS_PKG}.rosinstall &&
86 | »> vcs import src < ros2.${ROS_DISTRO}.${ROS_PKG}.rosinstall
87 |
——————–
ERROR: failed to solve: process “/bin/sh -c mkdir -p ${ROS_ROOT}/src && cd ${ROS_ROOT} && rosinstall_generator –deps –rosdistro ${ROS_DISTRO} rosidl_runtime_c rcutils rcl rmw tf2_msgs geometry_msgs nav_msgs std_msgs rosgraph_msgs sensor_msgs vision_msgs rclpy ros2topic ros2pkg ros2doctor ros2run ros2node ros_environment > ros2.${ROS_DISTRO}.${ROS_PKG}.rosinstall && cat ros2.${ROS_DISTRO}.${ROS_PKG}.rosinstall && vcs import src < ros2.${ROS_DISTRO}.${ROS_PKG}.rosinstall” did not complete successfully: exit code: 1
Reference:
https://nvidia-isaac-ros.github.io/concepts/scene_reconstruction/bi3d_freespace_segmentation/tutorial_isaac_sim.html
https://nvidia-isaac-ros.github.io/repositories_and_packages/isaac_ros_freespace_segmentation/isaac_ros_bi3d_freespace/index.html#quickstart
https://nvidia-isaac-ros.github.io/getting_started/isaac_sim/index.html
https://docs.omniverse.nvidia.com/isaacsim/latest/installation/install_ros.html
https://docs.omniverse.nvidia.com/isaacsim/latest/installation/install_ros.html#running-native-ros