How can I control the Onrobot's vacuum gripper VGC10 via ROS

asked 2022-08-17 10:11:46 -0500

AlexandrosNic gravatar image

I have a UR3e, coupled with a VGC10 vacuum gripper at its end-effector. I managed to control the UR3e to move etc. However, I am failing to control the gripper via ROS. I found the ROS drivers for the gripper here, but they are only for the gripper as standalone (with a compute box) and not coupled with a UR. I migrated them to ROS2 here. I also tried the following methods but none of them worked:

  • to use the “set_io” service by calling:

    ros2 service call /io_and_status_controller/set_io ur_msgs/srv/SetIO “{fun: 4, pin: 0, state: 12.0}”

  • or by sending:

    set_digital_out(1, True)

as described here

  • Alternatively, I extracted the grip.script and sent it via URScript, similarly to here and here

I saw that ROS1 UR drivers had some compatibility for controlling the tool through the use_tool_communication parameter and I am wondering whether this would be the way to control the end-effector.

Since it is a vacuum gripper, it only needs to receive on/off data from the end-effector flange of the UR so I would assume that there would be a way to do this through the UR ROS2 drivers, but did not find the way yet.

I work on ROS2 Foxy.

Any information is much appreciated. Thank you

edit retag flag offensive close merge delete