Package for controlling the Robotiq Hand-E gripper using the ROS 2 Control framework. It uses the robotiq_hande_description package for URDF definitions. Originally developed for integration with Universal Robots e-Series (UR5e) and ROS 2 Humble, it is possible to modify this repository to fit your needs. PRs are welcome!
- You are ready to go - just remember to pass the
use_fake_hardware:=true
argument.
- Connect the serial port to your system and locate the TTY device (typically
/dev/ttyX
). - You will need to configure the serial connection in your
.xacro.urdf
file (example inrobotiq_hande_description
).
- You can create a local
TCP
<->Virtual Serial Port
server with thesocat
command.- An example usage (in the form of a Python ROS 2 wrapper) can be found in
ur_robot_driver
's scripts/tool_communication.py. - Example:
socat pty,link=/tmp/ttyUR,raw,ignoreeof,waitslave tcp:192.168.1.2:54321
- An example usage (in the form of a Python ROS 2 wrapper) can be found in
- For the UR's
ur_robot_driver
, the default path to the virtual serial port is/tmp/ttyUR
.
cd ~/ceai_ws/src
git clone [email protected]:AGH-CEAI/robotiq_hande_driver.git ./src
vcs import src < src/robotiq_hande_driver/robotiq_hande_driver.repos &&
colcon build --symlink-install --packages-select robotiq_hande_driver
source ./install/local_setup.sh
Note
Configuration is split between two packages:
robotiq_hande_description
: Hardware connection parameters are set in the URDF file. Example config file.robotiq_hande_driver
: The controller configuration is set by launch parameters for thecontroller_node
. Example config file.
ros2 launch robotiq_hande_driver gripper_controller_preview.launch.py use_fake_hardware:=true
# In other terminal
ros2 action send_goal /gripper_action_controller/gripper_cmd control_msgs/action/GripperCommand \
"command:
position: 0.0
max_effort: 0.0
"
An example integration usage can be find in the AGH-CEAI/aegis_ros repository.
This project uses various tools for aiding the quality of the source code. Currently most of them are executed by the pre-commit
. Please make sure to enable its hooks:
pre-commit install
There is an additional test tool with hardcoded parameters to test the connection with the Hand-E without any ROS dependencies.
Before build, change the hardcoded parameters in the beginning of the robotiq_hande_driver/test/communication_test.cpp
file.
To run test:
cd cd ~/ceai_ws/src/robotiq_hande_driver/build/robotiq_hande_driver/
./communication_test
This repository is licensed under the Apache 2.0, see LICENSE for details.