ROS Resources: Documentation | Support | Discussion Forum | Index | Service Status | ros @ Robotics Stack Exchange
Ask Your Question
1

Anyone who's succeeded with grasping using ROS and Gazebo, what advice do you have to offer?

asked 2018-09-04 09:36:06 -0500

raequin gravatar image

updated 2018-09-05 09:54:53 -0500

There are a few Gazebo simulations that I've seen with a robot grasping an object, and manipulating objects was part of the (DARPA) Virtual Robotics Challenge, so I know it is feasible and therefore can't give up on getting my simulation working. (In case it matters, I'm using Kinetic and Gazebo 9.) If you've performed grasping with a robot in ROS and Gazebo, will you let me know what settings, tweaks, modifications, or caveats one should be aware of in this realm?

edit: To provide more focus, let me say that this question is mainly concerned with the contact physics, but I'm looking for any and all tips since I've seen that even the joint controller can break the physics. From what I've read online, it appears that modeling contact for grasping in Gazebo is problematic. (For example, 1 and 2.) To ameliorate this problem, I have tried changing kp, kd, max_vel, min_dist, mu1, mu2, fdir1, max_step_size, iters, and even the physics engine.

edit retag flag offensive close merge delete

Comments

Why not start by posting the simulations/code/blog posts/articles you've found already?

fvd gravatar image fvd  ( 2018-09-04 09:41:40 -0500 )edit

Because the posts I've made specifically about my grasping simulations have not borne fruit, I made this one as just an invitation for others to submit any and all comments and tips, in the hope that something new would surface. Thanks for engaging!

raequin gravatar image raequin  ( 2018-09-04 09:51:59 -0500 )edit

I mean, why not start this post with what you've found? Questions with more detail and focus are more likely to be answered. For what it's worth, this is an active topic of research and not easy at all, unless you simplify a lot. Personally, I ignore physics in simulation and just use MoveIt.

fvd gravatar image fvd  ( 2018-09-05 02:20:02 -0500 )edit
1

I edited the post per your suggestion. Let me know if you think it's still lacking detail.

raequin gravatar image raequin  ( 2018-09-07 08:47:57 -0500 )edit

1 Answer

Sort by ยป oldest newest most voted
1

answered 2020-04-09 08:49:01 -0500

RobotBoy gravatar image

I finally succeeded after 2 weeks of slipping. The problem was that although i was using an effort controller for my grippers, because i wasn't for the rest of the arm, gazebo was unable to calculate any lifting force (i don't know the specifics, this is just an observation).

I was using a gazebo service to map the movements of a ur5 from another simulation to gazebo, since there was no need for 2 controllers per joint. Now i am using trajectory control to map those same join states, which did require a bit of pid tuning.

Also i have frictional coefficients of 10 for mu1 mu2 and torsional coefficient.

Here's a urdf snippet:

  <!-- Add friction to right gripper -->
  <gazebo reference="right_inner_finger_pad_link">
    <collision name="right_outer_knuckle_link_fixed_joint_lump__right_inner_finger_pad_link_collision_3">
      <surface>
        <friction>
          <torsional>
            <coefficient>10.0</coefficient>
            <use_patch_radius>true</use_patch_radius>
            <patch_radius>0.05</patch_radius>
          </torsional>
        </friction>
        <contact>
          <poissons_ratio>0.5</poissons_ratio>
          <elastic_modulus>1e8</elastic_modulus>
        </contact>
      </surface>
    </collision>
    <mu1>10</mu1>
    <mu2>10</mu2>
    <maxVel>1</maxVel>
    <kp>1000000.0</kp>
    <kd>100.0</kd> 
    <fdir1>0 0 1</fdir1>
    <minDepth>0.0</minDepth>
    <maxContacts>100</maxContacts>
    <material>Gazebo/RedBright</material>
  </gazebo>
edit flag offensive delete link more

Question Tools

2 followers

Stats

Asked: 2018-09-04 09:36:06 -0500

Seen: 1,538 times

Last updated: Apr 09 '20