ur-robotiq-integrated-driver
Python wrapper for the Universal Robots ROS driver with Robotiq gripper support.
https://github.com/robotic-vision-lab/ur-robotiq-integrated-driver
Science Score: 52.0%
This score indicates how likely this project is to be science-related based on various indicators:
-
✓CITATION.cff file
Found CITATION.cff file -
✓codemeta.json file
Found codemeta.json file -
✓.zenodo.json file
Found .zenodo.json file -
○DOI references
-
○Academic publication links
-
○Academic email domains
-
✓Institutional organization owner
Organization robotic-vision-lab has institutional domain (rvl.uta.edu) -
○JOSS paper metadata
-
○Scientific vocabulary similarity
Low similarity (11.8%) to scientific vocabulary
Keywords
Repository
Python wrapper for the Universal Robots ROS driver with Robotiq gripper support.
Basic Info
Statistics
- Stars: 11
- Watchers: 3
- Forks: 1
- Open Issues: 1
- Releases: 0
Topics
Metadata Files
README.md
UR Robotiq Integrated Driver
This repository provides Python 3 packages designed for ROS 2 Humble to control the Robotiq 2F gripper attached to Universal Robot (UR) robot arms using the toolport available on the robot arms' wrist.
System Requirements
:warning: Only e-Series robots are capable of using the tool port!
You must complete the following steps before using this repository:
- Remove any Robotiq related URCap present on the robot controller via the teach pendant.
- Complete the robot side setup as instructed by
ur_robot_driverdocumentation.
Quick Start
- Clone the repository
console
user@host:~$ git clone https://github.com/robotic-vision-lab/UR-Robotiq-Integrated-Driver.git
- Run the Docker container
```console user@host:~/UR-Robotiq-Integrated-Driver$ ./docker/run.sh
root@cb0ae6649502:/# ```
- Build the ROS 2 workspace inside the Docker container
console
root@host:~/colcon_ws# apt-get update
root@host:~/colcon_ws# rosdep update
root@host:~/colcon_ws# rosdep install --from-paths src --ignore-src -r -y
root@host:~/colcon_ws# colcon build --symlink-install
root@host:~/colcon_ws# source install/setup.bash
- Set the robot parameters
bash
export UR_IP= # robot IP address e.g., 192.168.1.199
export UR_HOSTNAME= # robot network hostname e.g., ur-20224536182
export UR_TYPE= # ur robot type, one of [ur3, ur3e, ur5, ur5e, ur10, ur10e, ur16e, ur20, ur30]
export REVERSE_IP= # host (your PC) IP address e.g., 192.168.1.99
- Start
ur_robot_driverwith tool communication enabled
console
root@host:~/colcon_ws# ros2 launch ur_robot_driver ur_control.launch.py ur_type:=$UR_TYPE robot_ip:=$UR_IP reverse_ip:=$REVERSE_IP use_tool_communication:=true
UR_HOSTNAME may be used instead of UR_IP if your network resolves it.
REVERSE_IP is needed when using a docker container on Windows, where --network host is unavailable and only needed when you are running external_control.
- Start
rvl_ur_robotiq_drivercontroller node
In a new terminal, run the following commands:
console
user@host:~$ docker exec -it rvl-ur-robotiq-container bash
root@host:~/colcon_ws# source install/setup.bash
root@host:~/colcon_ws# ros2 run rvl_robotiq_driver robotiq_controller
:spiral_notepad: NOTE: Verify that the gripper is powered and the gripper status LED is on and is solid blue. This means that the driver has successfully established communication with the gripper. If the LED is not on or is red, please see the Troubleshooting section.
- Activate the gripper via provided service
In a new terminal, run the following commands:
console
user@host:~$ docker exec -it rvl-ur-robotiq-container bash
root@host:/# cd /root/colcon_ws
root@host:~/colcon_ws# source install/setup.bash
root@host:~/colcon_ws# ros2 service call /robotiq/activate std_srvs/srv/Trigger
At this point, you should see the gripper cycle through its activation sequence by fully closing then fully opening its
fingers. The gripper is now ready to receive commands.
⚠️ WARNING: This is an example usage container, and the run command includes the
--rmflag, which means that the container will be deleted after exiting the container. If you want to keep the container, remove the--rmflag from the run command.
Provided Services and Topics
Topics
/robotiq/joint_states
/robotiq/status
Services
/robotiq/activate
/robotiq/auto_close/fragile
/robotiq/auto_close/medium
/robotiq/auto_close/soft
/robotiq/auto_close/strong
/robotiq/auto_open/fragile
/robotiq/auto_open/medium
/robotiq/auto_open/soft
/robotiq/auto_open/strong
/robotiq/reactivate
/robotiq/request_status
/robotiq/set_opening
/robotiq/set_position
You can use ros2 topic info and ros2 service info to get more information about each topic and service.
Alternatively, rqt have plugins that can be used to inspect topics and call services, though this would require you to
enable GUI from the Docker container, which is not in the scope of this repository. This feature can still be accessible
if you have ROS 2 Humble on your host machine.
Citation
If you find this code useful, then please consider citing our work.
You can use the "Cite this repository" feature under About section for automatic generation of APA and BibTex references.

A raw BibTex entry is also provided below:
bibtex
@software{tram2023ur,
author={Tram, Minh},
title={{UR-Robotiq Integrated Driver}},
url={https://github.com/robotic-vision-lab/UR-Robotiq-Integrated-Driver},
version={1.0.0},
year={2023}
}
Troubleshooting
1. Gripper is not powered (No status LED)
- Check physical connection between the gripper and the toolport on the robot arm.
- Check that the robot is not in E-Stop or Power Off state.
2. Status LED is RED
- Make sure that the RS-485 URCap is installed and enabled on the robot controller.
- Make sure that the
ur_robot_driverlaunch command hasuse_tool_communication:=trueargument and correct robot IP address. - Make sure that the gripper controller node is running and is not reporting any errors.
3. Status LED is BLUE but gripper is not responding to commands
- Restart the gripper controller node.
References
Owner
- Name: Robotic Vision Laboratory
- Login: robotic-vision-lab
- Kind: organization
- Location: Arlington, TX
- Website: https://rvl.uta.edu/
- Twitter: robotic_vision
- Repositories: 6
- Profile: https://github.com/robotic-vision-lab
The University of Texas at Arlington
Citation (CITATION.cff)
# This CITATION.cff file was generated with cffinit.
# Visit https://bit.ly/cffinit to generate yours today!
cff-version: 1.2.0
title: RVL UR-Robotiq Integrated Driver
message: >-
If you use this software, please cite it using these
metadata.
type: software
authors:
- given-names: Minh
family-names: Tram
email: minh.tram@mavs.uta.edu
affiliation: >-
The University of Texas at Arlington - Robotic Vision
Laboratory
- given-names: William
family-names: Beksi
email: william.beksi@uta.edu
affiliation: >-
The University of Texas at Arlington - Robotic Vision
Laboratory
repository-code: >-
https://github.com/robotic-vision-lab/UR-Robotiq-Integrated-Driver
abstract: >-
This repository provides Python 3 packages designed for
ROS 2 Humble to control the Robotiq 2F gripper attached to
Universal Robot (UR) robot arms using the toolport
available on the robot arms' wrist.
keywords:
- Universal Robot
- Robotiq
- ROS 2 Humble
- ros
- robotic
- gripper
- driver
license: Apache-2.0
version: 1.0.0
date-released: '2023-10-05'
GitHub Events
Total
- Issues event: 1
- Watch event: 2
- Issue comment event: 1
Last Year
- Issues event: 1
- Watch event: 2
- Issue comment event: 1
Dependencies
- osrf/ros humble-desktop-full-jammy build
- setuptools *