Problems with grasping an object: need to wait 15s until the object gets attached to the gripper
As explained in this ROS answer, I have had a lot of problems until managing to grasp a 2.5 cm cube on gazebo with a turtlebot arm. The remaining problem is: why I need to wait so long until the cube gets attached to the gripper? If I don't wait the 15s, the arm elevates without the cube, as in this video. Same applies to detaching: I need to wait around 5 seconds with the gripper open before leaving the placed block. Other people using ROS-Moveit!-Gazebo seem to have the same problem, but nobody on ROS answers came with an answer. Any clue?
I suppose that the parameters attachsteps and detachsteps I must add to the robot URDF file have something to do with this, but I cannot find any documentation, nor get any benefit when modifying them:
<gazebo>
<gripper name="gripper">
<grasp_check>
<attach_steps>5</attach_steps>
<detach_steps>10</detach_steps>
<min_contact_count>2</min_contact_count>
</grasp_check>
<gripper_link>gripper_active_finger_link</gripper_link>
<palm_link>gripper_static_finger_link</palm_link>
</gripper>
</gazebo>
I use Gazebo 2.2.3 with ROS indigo.
Thank you a lot!
Asked by corot on 2015-02-12 14:04:33 UTC
Answers
The <gripper>
tag is a hack that creates joints between the gripper and objects that the gripper is in contact with. This relies on a few stable contacts. You can try adjusting the <attach_steps>
and <detach_steps>
parameters.
Grasping of objects has improved in newer versions of Gazebo. The <gripper>
is no longer needed. The caveats are that the both the gripper and objects must have good(realistic) inertia values, and you may need to tune the contact properties of the gripper.
Take a look at the RobotiQ hand for an example.
Asked by nkoenig on 2015-02-13 11:35:06 UTC
Comments
The second part of your answer sounds very interesting; can I use the latest version of Gazebo with ROS? When you install ros-indigo-gazebo-ros you directly get version 2.2.3, and apt-get install gazebo5 fails due to uninstallable dependencies. Thanks!
Asked by corot on 2015-02-16 03:13:26 UTC
Yes you can do this. As explained here (http://gazebosim.org/tutorials/?tut=ros_wrapper_versions) you just need the correct wrappers. What I did was the following, and it worked: sudo apt-get remove ros-indigo-gazebo-ros-pkgs
sudo apt-get remove gazebo2
sudo apt-get install gazebo5
sudo apt-get install ros-indigo-gazebo5-ros-pkgs
ros-indigo-gazebo5-ros-control
Asked by niall on 2015-05-21 09:25:14 UTC
Thanks for answering. Unfortunately, I've been unable to perform grasping in either Gazebo 7 or 9. http://answers.gazebosim.org/question/20217/physics-problem-with-simple-movement-of-grasped-object/ Do you recommend the gripper tag?
Asked by raequin on 2018-08-17 11:32:16 UTC
Though grasping appears to be working for some users: https://ieeexplore.ieee.org/document/7090732/.
Asked by raequin on 2018-08-17 11:41:07 UTC
Comments
I have the same problem. Please add comments if you get some progress, I will do the same. Thanks
Asked by lrubior on 2015-02-13 09:55:04 UTC
I just want to know , whether, its the palm_link that is the one which gets attached to the object? What if we have only one palm_link
Asked by Abdullah on 2016-08-29 15:56:23 UTC