Left ArrowBack to discussions page
faizerdfaizerd Posts: 2 Recruit
edited June 2017 in Integration

We have a robot UR10 with a 2 finger gripper connected to the Robot controller through one of the USB port. We can manage to control the robot using the modern driver and ROS on another network computer. The gripper works using the teach pendant but we want to use ROS also to control the gripper and are unsure how to do this, as all the tutorials for using the gripper with ROS that we have found are for controlling it directly attached to a computer or network, not through a UR arm. Any idea where to start with this?



  • David_LevasseurDavid_Levasseur Posts: 74 Handy
    To my knowledge, you can't do that with the ROS package as it is. You can only control the gripper if it is connected directly to the computer.
  • carlosjosergcarlosjoserg Tactile Sensor Beta Testers Posts: 35 Handy
    Hi @faizerd, by "modern driver" you mean this one: https://github.com/ThomasTimm/ur_modern_driver   right?

    There might be a way that you can try using the gripper connected to the teach pendant that don't use the robotiq ROS packages, but you'd still need the Robotiq URCaps. I've never tried this, but I think it might be feasible.

    That driver subscribes to a topic called "ur_driver/URScript", where you can publish any script that you want and it'll execute on the robot side, including gripper commands by using the robotiq URcaps functions.

    So what I would do, is to write in Polyscope the program you'd want to do. And then access the robot files and check the program you just made and see how the actual script is. That script you can send it via the topic mentioned above and it'll do exactly the same. You will see commands like these 
    Where all arguments goes from 0-1, for instance, or whatever other commands you use in your program.

    It's very likely that you'd need to send also the Robotiq preamble that you will find in the URCaps files here, where all Robotiq functions are defined, and you might need to call "rq_init_connection(gripper_sid=9)" to init the gripper everytime...

    Now that I'm writing it, it seems a bit of overwork with the only advantage that you don't have an USB until the PC. If that is not a strict constraint, I'd strongly suggest to integrate in the PC using ROS, given that you need it anyway for the UR.

Sign In or Register to comment.
Left ArrowBack to discussions page