how to make body contact in SimMechanics, so that one body does not penetrate into the body of another when it display in animation, such as gripper grasps the objects.

3 views (last 30 days)
My project is design and control gripper to grasp the objects using SimMechanics and Solidworks software packages.I have problem when my gripper pick up the object. The fingers penetrate the object although I add joint spring damper. I don't know how to solve this problem. Would you like to explain me, please. You cant contact in Thank you very much with your kind attentions
Best Regards
Wayan Widhiada LJMU

Answers (2)

Martin on 2 Mar 2011
Modeling contact can be quite tricky.
A key thing to remember is that the solver does not know the shape of a body in SimMechanics; it only knows the locations of the various coordinate systems (CG, CS1, CS2.... CS#). Without knowledge of the shape of the body surfaces, it cannot directly model contact between them. Note that if you brought in the model from SolidWorks using SimMechanics Link, the cool looking pieces in the visualization are graphical, it only uses what you can see in the block diagram for the actual simulation.
The general method for contact modeling involves detecting the distance between two bodies and applying a force to each of them. This requires adding sensors to the bodies, performing calculations on the sensed values, and using actuators to apply the forces and torques.
A simple version of this, mech_bouncing_ball.mdl, is found in the SimMechanics demos. This shows unidirectional contact force (from plane to ball). This model is simplified by the fact that the ball is symmetric, the plane is stationary, and no reaction force is exerted on the plane.
In addition to normal forces, you would also need to model friction between the ball and gripper so that it does not just fall out. This can also be calculated in a similar fashion as above, or using techniques described here.

Mohamed Abdelkader Zahana
Mohamed Abdelkader Zahana on 14 Dec 2014
Hello Wayan,
Were yo able to solve the problem? I am interested to get into the details. Thanks.

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!