Roles Tactile Sensor Beta Testers
Country ES - Spain
Company (optional) Beta Robots, SL
Hi @carofidewhen I run the CModelRtuNode.py /dev/ttyUSB1I understand that your PC is recognizing the gripper in this port. By default, the driver is looking in port ttyUSB0. The line where this happen is this one.
What you need to do is to add that parameter to your server parameter server via your prefer way, writing and loading a yaml file, or directly in the launch file (note that this node already exists in the launch file, I only added the parameter within the node tag, and also note that the parameter gets the node namespace this way)
or even via terminal before launching the node (you'd need to have a rosmaster running before)
<node ns="simple_gripper" name="simple_gripper_hw" pkg="robotiq_2f_hw_usb" type="robotiq_2f_hw_usb_node" respawn="false" output="screen">
<param name="port" value="
rosparam set /NAMESPACE/port /dev/ttyUSB0
Apologies for the bad documentation, I hope to improve the package soon
, and add more examples
Hey, that is perfectly fine, you made it! If you got the initialization routine, that's it.
In fact, the file robotiq_2f_85_usb.launch is empty, the file bringup.launch is the one you need to bring up the driver.
You don't need robotiq_c_model_control at all, that's mainly why I rewrote the driver, since that package is not ros-controls compliant, and if you try to run it alongside our driver, it won't work, since both require exclusive access to the /dev/ttyUSB1 device.
Now, once you get the initialization routine, you can open an rqt window (just type rqt on a terminal), and follow in the window menu Plugins->Robot Tools->Joint trajectory controller, and look in the drop-down menus, there should be both the controller manager and trajectory controller you loaded here.
Moving the slide will open and close the gripper. That is the quickest way to get it move, but actually the movement is not that smooth, but if you get up to here, let me know and I'd tell you how to switch to a smoother controller.
Check my comment in the ROS industrial repository, where there is also an issue having the same problem.
Moreover, if you are familiar with ros-controls, check our fork, where we added support for that, plus the urdf of the current 2F-85 model with two level of granularity for the collision geometry
Let me know if you manage to move the gripper.
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.
rq_set_pos_norm(pos_norm) rq_set_speed_norm(speed_norm) rq_set_force_norm(force_norm)
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.
To begin with: You can't access the gripper connected to the UR via USB using the Robotiq ROS packages directly.
However, check the answer I gave to @faizerd here if you do really want to do that, since there might be a way (that I haven't tried, but it seems feasible).
If you have problems connecting the gripper to the PC using the Robotiq ROS packages and the tutorials you mentioned, then let me know and we can sort it out (think that if you already have a PC with ROS controlling your UR, probably it'd be better to connect the gripper to the PC as well, or use EtherCAT).