Friction based grasping

Post Reply
kiter
Posts: 4
Joined: Tue Nov 25, 2014 9:10 am

Friction based grasping

Post by kiter »

Hi all,

I'm trying to simulate friction based grasping, with a simple grasping tool grasping that consists of a (vertical) shaft with two jaws. The grasper comes down to grasp a sphere as depicted in ascii below ( going through the steps 1,2, and unfortunately not 3 )

Code: Select all

   1        2         3
   |                  |  
   |        |         |
  / \       |        /o\
   o       /o\        

The ball moves as if there is no friction, it does not even lift a little bit and I can not figure out why. The ball just goes out of the jaws when the jaws close.

- the code is based on the MotorDemo ( spiders )
- I changed the solver to the Dantzig solver
- all bodies have friction and rollingFriction coefficient 1.0
- all bodies have restitution of 0
- solver numIterations is set to 500
- internal time step is 0.002.
- to prevent difficult geometry ( normal force working to push the ball out ), the hinges are offset horizontally and the max angle of each jaw to the vertical is 30 degrees, and in practice less

Does anybody have any idea what could be wrong? Any help or suggestions would be greatly appreciated.

Thanks!


Update 25-11: According to the following thread, stopping the motors may do the trick. http://bulletphysics.org/Bullet/phpBB3/ ... ion#p34013 So far I did not get improved results, the motors stop and continue, and stop, etc. as the contact is a bit jittery it seems.
gdlk
Posts: 62
Joined: Fri Oct 24, 2014 7:01 pm

Re: Friction based grasping

Post by gdlk »

Hi!

I dont know if it can solve it, but try setting the flag SOLVER_USE_2_FRICTION_DIRECTIONS to the solver ( at least it solve me some issues with the frictions in similar cases )

Code: Select all

dynamicsWorld->getSolverInfo().m_solverMode |= SOLVER_USE_2_FRICTION_DIRECTIONS;
Regards!
kiter
Posts: 4
Joined: Tue Nov 25, 2014 9:10 am

Re: Friction based grasping

Post by kiter »

Thanks!, after I changed the geometry of the slider that helped quite a bit: when I use sliders and make the the jaws move sideways instead of using hinge constraints, it becomes much better. They can now be picked up and moved. They may still suddenly jump though but I'll see if I can correct that by adjusting the parameters.

Not sure why the rotating jaws did not work though. I can see that the contact problem has been made easier, since the jaws are now orthogonal to the object being grasped. I'll see if putting the jaws under an angle again while keeping the slider constraints makes things worse again :-)

If somebody has tips on how to make the grasper work with the hinge constraint, i'd be very interested to hear!
Post Reply