How do you represent contact with the ground in simscape?

35 ビュー (過去 30 日間)
Josh 2013 年 10 月 13 日
回答済み: Steve Miller 2017 年 8 月 6 日
I am (eventually) attempting to create a model which I can use to simulate control algorithms on a humanoid robot.
However whilst starting with simple models - I can't work out how to represent the ground, so that when any part of the bodies come into contact with this - they stop/bounce etc.
Is there any way of doing this?
  1 件のコメント
prakhar jain
prakhar jain 2017 年 2 月 5 日
check:sm_double_wishbone_suspension in simulink model. This should help you out. Check out the implementation of hard stop between the tyre and the road profile. That should help.


回答 (3 件)

Steve Miller
Steve Miller 2017 年 8 月 6 日
For 1D contact problems where only viscous friction is present, the hardstop block may be sufficient. However, for 2D and 3D problems or if the friction force depends on the normal force, I recommend looking at the File Exchange submission Simscape Multibody Contact Forces Library. It contains a library of blocks for use with Simscape Multibody that detect collision between various shapes, calculates the normal force and friction force on each part, and applies them to the colliding parts.
Below are a few animations that test models included in the submission. The Simscape Multibody Contact Forces Library contains the library for current and previous MATLAB releases.
Here is another one:

Ryan G
Ryan G 2013 年 10 月 14 日
You want the translational hard stop block.
With a bi-ped robot you'll probably want to make some design decisions with the model in terms of trading off fidelity for simulation speed and usability. Each point that is capable of hitting the ground would require a hardstop. So, if you don't need to model the robot falling over, you can skip modeling that ground-body interaction.

Zafb 2015 年 4 月 4 日
Hi, I am trying to do the same thing in 2015...Got some help from the following link which uses translational "hard stop" block
But the leg never bounces back, instead it goes through the ground. Even though I can see the contact force being produced when the leg hits the ground and is going through it.
Do you have any idea what might be wrong in my model?
Thanx in advance,
  3 件のコメント
Estácio Lima
Estácio Lima 2016 年 7 月 21 日
編集済み: Estácio Lima 2016 年 7 月 21 日
Try this paper .


Community Treasure Hunt

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

Start Hunting!

Translated by