- ROS2 packages for Universal Robots UR3e tutorial.
- ur3e_tutorials_py: A tutorial package to execute simple demonstrations with Python.
- ur3e_tutorials_cpp: A tutorial package to execute simple demonstrations with C++.
- Docker for simulation and control environments for Universal Robots UR3e.
- Ubuntu 22.04 PC
- Docker 27.4.1
- Docker Compose 2.32.1
-
Install URCap on a e-series robot by following here.
- Don't forget the last step of starting the External Control program on the teach pendant.
- After bringup the system, start the External Control program to establish the connection.
-
(option to use a gripper) Install tool communication on universal robot pendant.
- Connect an Ethernet cable between the host computer and the Ethernet port of UR3e's controller
- Set the network configuration as below
- The ros node expects to reach the robot at the IP
10.0.2.2
. You can change the IP with pendant - This IP is set to the
robot_ip
argument as belowros2 launch ur_robot_driver ur_control.launch.py ur_type:=ur3e robot_ip:=10.0.2.2 launch_rviz:=false
- The ros node expects to reach the robot at the IP
- Build the docker environment as below
git clone [email protected]:UOsaka-Harada-Laboratory/ur3e_ros2_tutorials.git --recursive --depth 1 && cd ur3e_ros2_tutorials && COMPOSE_DOCKER_CLI_BUILD=1 DOCKER_BUILDKIT=1 docker compose build --no-cache --parallel
- Build and run the docker environment
docker compose up
- Enter the docker container
xhost + && docker exec -it ur3e_humble_container bash
-
Run a demonstration on the host machine
-
Visualizing the model
ros2 launch ur_description view_ur.launch.py ur_type:=ur3e
-
Executing the moveit GUI
ros2 launch ur_robot_driver ur_control.launch.py ur_type:=ur3e robot_ip:=127.0.0.1 use_fake_hardware:=true launch_rviz:=false
ros2 launch ur_moveit_config ur_moveit.launch.py ur_type:=ur3e launch_rviz:=true
-
Executing a motion with a Python script and scaled_joint_trajectory_controller
ros2 launch ur_robot_driver ur_control.launch.py ur_type:=ur3e robot_ip:=127.0.0.1 use_fake_hardware:=true initial_joint_controller:=scaled_joint_trajectory_controller launch_rviz:=true
ros2 run ur3e_tutorials_py hello_joint_trajectory_controller
or
ros2 launch ur3e_tutorials_py hello_joint_trajectory_controller.launch.py
-
Executing a motion with a C++ program and MoveIt
ros2 launch ur_robot_driver ur_control.launch.py ur_type:=ur3e robot_ip:=127.0.0.1 use_fake_hardware:=true initial_joint_controller:=scaled_joint_trajectory_controller launch_rviz:=false
ros2 launch ur_moveit_config ur_moveit.launch.py ur_type:=ur3e launch_rviz:=true
ros2 run ur3e_tutorials_cpp hello_moveit
or
ros2 launch ur3e_tutorials_cpp hello_moveit.launch.py
-
-
Connect to the robot
ros2 launch ur_robot_driver ur_control.launch.py ur_type:=ur3e robot_ip:=10.0.2.2 launch_rviz:=false
-
Run the external control script on the pendant
-
Run a demonstration on the host machine
- Executing the moveit GUI
ros2 launch ur_moveit_config ur_moveit.launch.py ur_type:=ur3e launch_rviz:=true
- Executing the moveit GUI
We always welcome collaborators!
This software is released under the MIT License, see LICENSE.