Skip to content

CNR-STIIMA-IRAS/robotiq_2f_urcap_adapter

 
 

Repository files navigation

Robotiq 2F URCap Adapter

This is a direct control interface to the Robotiq 2F gripper URCap using a socket connection and string commands. The used string interface is defined here. For communicating with that interface we use work from SDU's ur_rtde repository licensed under the MIT license.

The overall idea is as follows:

  1. Mount the gripper to the UR robot of your choice and connect it via Robotiq's recommended way. There seem to be two options: Directly over the end-effector for URe versions, and over UR's control box for the other versions.

  2. Use Robotiq's URCap to interface the gripper from UR's Polyscope. This URCap seems to be better maintained by Robotiq than ROS packages and should cover all of the gripper's features. You should be able to get the URCap here. The quick start guide should help you getting started quickly.

  3. To allow the ROS2 package to properly control the gripper, some of the hardware specs need to specified via ROS parameters. These include the grip width (in Meters; max_gripper_width, min_gripper_width), the speed (in Meters / s; max_gripper_speed, min_gripper_speed) and the effort (in Newton; max_gripper_force min_gripper_force). The user also has to set the IP address (robot_ip) of the robot.

  4. When starting the robotiq_2f_urcap_adapter node the gripper will activate, if not already activated, and auto-calibrate its movement range.

  5. The gripper can then be controlled using ROS actions using the robotiq_2f_urcap_adapter/GripperControl action.

Parameters

The node currently has the following parameters:

  • robot_ip: The robot's IP address (default: "192.168.0.104")
  • robot_port: The port where the URCap interface is running on the robot. This should usually not be changed. (default: 63352)
  • max_gripper_width: The maximum opening width of a gripper in meters. Change this if your have a 2F-140 gripper. (default: 0.085)
  • min_gripper_width: The minimum opening width of a gripper in meters. (default: 0.0)
  • max_gripper_speed: The maximum speed of a gripper in meters/sec. See the specification for details on the value range. Requested speeds higher than this will be rejected. (default: 0.15)
  • min_gripper_speed: The minimum speed of a gripper in meters/sec. See the specification for details on the value range. Requested speeds lower than this will be rejected. (default: 0.02)
  • max_gripper_force: The maximum force of a gripper in Newtons. See the specification for details on the value range. Requested forces higher than this will be rejected. (default: 235)
  • min_gripper_force: The minimum force of a gripper in Newtons. See the specification for details on the value range. Requested forces lower than this will be rejected. (default: 20)

Example

Start the node:

ros2 run robotiq_2f_urcap_adapter robotiq_2f_adapter_node.py --ros-args -p robot_ip:=192.168.0.4

Close the gripper:

ros2 action send_goal -f /robotiq_2f_urcap_adapter/gripper_command robotiq_2f_urcap_adapter/GripperCommand '{ command: { position: 0.0, max_effort: 140, max_speed: 0.15 }}

Open the gripper (assuming it's a 2F-85):

ros2 action send_goal -f /robotiq_2f_urcap_adapter/gripper_command robotiq_2f_urcap_adapter/GripperCommand '{ command: { position: 0.085, max_effort: 140, max_speed: 0.15 }}'

About

ROS2 node zur Ansteuerung der Robotiq 2F Greifer über URCap

Resources

License

Contributing

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Python 97.5%
  • CMake 2.5%