- 1. Overview
- 2. Maintainer
- 3. Run Isaac Sim
- 4. Build
- 5. Debug
- 6. (Optional) Visualize UR5 Frames using the Universal ROS2 Package
This repository contains the environment to run and test algorithms for the UR5 of the Laboratory of Robotics at Federal University of Bahia (UFBA). It is possible to test sensors integrations such as RGB+D cameras, generate point clouds, etc.
Keywords: Robot manipulators, UR5 Simulation, LaR UFBA
Authors: Caio Viturino Affiliation: UFBA (PhD Candidate) / SENAI SIMATEC (Robotics Specialist) Maintainers: Caio Viturino (engcaiobarros@gmail.com / caio.viturino@fieb.org.br)
The ur5_isaac_simulation
package has been tested under [ROS] Humble and Ubuntu 22.04.
OS | ROS | Isaac Sim | CUDA | Nvidia Driver |
---|---|---|---|---|
Ubuntu 22.04 | ROS2 Humble | 2022.2.1 | 12.0 | 525.105.17 |
The simplest way to install the nvidia driver is to go to "Additional drivers" and choose "using NVIDIA driver metapackage from nvidia-driver-525 (proprietary)"
. If you have any trouble installing this driver, uninstall the all the nvidia drivers before installing a new one:
sudo apt-get remove --purge '^nvidia-.*'
- The following launch file executes the UR5 and Robotiq 2F-140 controllers and also opens RVIZ2:
ros2 launch ur5_isaac_simulation ur5_isaac_ros2.launch.py
- Run the UR5 Isaac Simulation main node
ros2 run ur5_isaac_simulation ur5_isaac_ros2
- Isaac Sim takes some time to load when the following warning message appears. In this case, just wait a few seconds (280 or more depending on your GPU).
After the following warning message appears, Isaac sim should not take too long to load:
[Warning] [gpu.foundation.plugin] Waiting for compilation of ray tracing shaders by GPU driver: 30 seconds so far
[gpu.foundation.plugin] Ray tracing shader compilation finished after 281 seconds
-
Clone this repository inside your src folder
cd YOUR_WORKSPACE/src git clone THIS_REPOSITORY_LINK
-
Build the all package or only your package
cd YOUR_WORKSPACE # 5. Build all packages colcon build # 6. Or only your package colcon build --packages-select my_package
-
Source ROS2 and your ROS2 workspace:
# source ROS2 Humble source /opt/ros/humble/setup.bash # your your workspace cd YOUR_WORKSPACE source install/local_setup.bash
-
Install the package dependencies:
cd YOUR_WORKSPACE rosdep install --from-paths src -y --ignore-src --rosdistro humble
In order to debug the ROS2 nodes, follow the steps:
- Install this ROS Extension.
- Create a launch file and include all the nodes you want to debug.
- Open the workspace folder in vscode and build with
ctrl+shift+b
using colcon build. If you have the wrong folder opened in vscode, it is going to create the build folders in the wrong location. - Create a debug configuration in launch.json with the following parameters:
{ "name": "ROS: Launch", "type": "ros", "request": "launch", "target": "path_to_launch_file" },
You might want to visualize the UR5 frames in order to study direct or inverse kinematics. Follow the next steps to visualize the UR5 frames in RVIZ and control it using joint state publisher.
sudo apt-get install ros-humble-joint-state-publisher-gui
Clone the Universal Robots ROS2 Description package into your workspace
cd YOUR_WORKSPACE/src
git clone https://github.com/UniversalRobots/Universal_Robots_ROS2_Description
Checkout the branch to the ROS2 version (ros2 branch). The ros2 branch is the main branch. Just verify if the branch is the ros2.
cd YOUR_WORKSPACE/src/Universal_Robots_ROS2_Description
git checkout ros2
Install the package dependencies:
cd YOUR_WORKSPACE
rosdep install --from-paths src -y --ignore-src --rosdistro humble
Source ROS2 and build the packages
cd YOUR_WORKSPACE
source /opt/ros/humble/setup.bash
colcon build
Source your workspace
cd YOUR_WORKSPACE
source install/setup.bash
Launch the view_ur.launch.py
in order to see the UR5 frames.
ros2 launch ur_description view_ur.launch.py ur_type:=ur5
In RVIZ, open the configuration file in the folder config
to get a better view of the UR5 and its frames: