Skip to content

Latest commit

 

History

15 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

UR10 Reach Task from Isaac Lab Sim2Real Transfer

This repository uses a UR10 Reach task trained policy using Isaac Lab to do sim-to-real transfer. It has been tested with ROS2 Humble on Ubuntu 22.04.

Table of Contents

Overview

This repository provides scripts to test a pretrained UR10 policy in simulation using URSim (sim2sim) and then transfer it to a real robot (sim2real). The simulation is based on the ur_robot_driver package. A pretrained policy is available in the sample directory. Note that you need to adjust the policy path in ur.py.

Prerequisites

Installation

  1. Install ROS 2 Humble:
    Follow the ROS 2 installation guide.

  2. Install the UR Robot Driver Package:

    sudo apt update
    sudo apt install ros-humble-ur-robot-driver
  3. Clone the Repository:

    git clone https://github.com/louislelay/isaaclab_ur_reach_sim2real.git

Usage

Sim2Sim Setup

Follow these steps to run the simulation:

  1. Launch URSim:

    Open a terminal and run:

    ros2 run ur_robot_driver start_ursim.sh -m ur10e

    This will launch URSim at http://192.168.56.101:6080/vnc.html. Click Connect and you should see an interface similar to:

    URSim Interface

  2. Activate External Control in URCaps:

    In the Programs tab, below URCaps, click on External Control. Below Robot Progam you should see appear : Control by 192.168.56.1

    URCaps Interface

  3. Start the UR Robot

    Click on the red button in the bottom left. Click on On, then Start until you obtain the following interface:

    Robot Started Interface

  4. Exit and Proceed:

    • Press Exit.

    • Switch to the Move tab in the interface:

      Next Tab Interface

  5. Connect the interface to the computer:

    • Press the play button in the bottom.

    • Select the Control by 192.168... option in the interface:

      Connect Interface

  6. Launch Robot Control:

    In another terminal, run:

    ros2 launch ur_robot_driver ur_control.launch.py ur_type:=ur10e robot_ip:=192.168.56.101
  7. Run the Task Script:

    Navigate to the Python directory within the repository:

    cd <path_to_repository>/isaaclab_ur_reach_sim2real/python

    Note: Ensure that the policy path in ur.py is updated to point to your pretrained policy (one is available in the sample directory if needed).

    Finally, run:

    python3 run_task.py

    The robot’s end effector should move to the target pose specified in the script.

  8. Demonstration Video:

    Click on it to go to the youtube video and see the result.

    Demonstration video

Sim2Real Setup

This section is a work in progress (WIP).

Acknowledgments

License

This project is licensed under the MIT License.

About

A ROS2 controller for a UR arm leveraging IsaacLab's trained policy for sim-to-real reaching tasks.

Topics

Resources

Stars

30 stars

Watchers

2 watching

Forks

Releases

Packages

Contributors

Languages