How physically accurate is MuJoCo's Saint Venant-Kirchoff elasticity model? #2500
Replies: 4 comments 4 replies
-
Hi, the model is a standard piecewise linear FE, written in a nicer form instead of basis functions (something I did ages ago for fun in my PhD), but equivalent to it. However, looking at your videos, I am a little concerned about the contacts you are getting in the second one. Since it's very easy to get inverted elements with coarse meshes and large deformations, we have added an option to generate "internal" contacts when a vertex tries to cross the opposite face of a tetrahedron. This is a safety measure but doesn't arise from a proper discretization of the equations, which I fear could be causing your issues. It can be disabled with |
Beta Was this translation helpful? Give feedback.
-
Setting internal_false.mp4 |
Beta Was this translation helpful? Give feedback.
-
Hi @quagla, may I also clarify the effect that flex damping has on stiffness/elasticity? The documentation says that damping "scales the stiffness defined by Young’s modulus", but what is this scaling relationship e.g. linear/quadratic? I've played around with this parameter empirically and haven't found a clear relationship between damping and stiffness |
Beta Was this translation helpful? Give feedback.
-
Beta Was this translation helpful? Give feedback.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
-
Intro
Hi!
I am a PhD researcher from Australia, and I am currently using MuJoCo for my research on soft robotics. However, I am considering using another soft robotic simulator as I'm worried that MuJoCo's SVK elasticity model only appears to be physically accurate for a limited range of cases (this is not a knock on MuJoCo by the way, which is clearly amongst the state-of-the-art for rigid robotics simulators). I have provided an example below which demonstrates my concern.
My setup
I am currently on the latest release of MuJoCo, and access MuJoCo via the Python bindings.
My question
I have created a model soft gripper in MuJoCo (
softgripper.xml
) that grasps objects and deforms reasonably well. However, when I performed topology optimisation on the gripper, making the soft fingers more lightweight, the material properties of the resulting lightweight gripper (lightweight_softgripper.xml
) appear completely different, even though I kept all elasticity parameters the same. I've attached videos below of mysoftgripper.xml
andlightweight_softgripper.xml
below, as well as a zip folder containing my two models and .msh files of my soft fingers.gripper.mp4
lightweight_gripper.mp4
The issue is that my lightweight gripper has lost all the stiffness it originally had, despite the fact that I didn't change the elasticity parameters in MuJoCo? As a result, it fails to grasp the test object. Even when I played around with the elasticity parameters for my lightweight model, I couldn't get my model to demonstrate desirable deformation behaviour. Is this just a sign that MuJoCo's elasticity model isn't sufficient for modelling my lightweight gripper, or perhaps have I made a silly mistake/oversight?
From playing with many of MuJoCo's flex models, I feel like the parameters
young
andpoisson
offered by MuJoCo aren't really being used to precisely model certain materials (e.g. silicone rubber has a young's modulus of ~1MPa and a poisson's ratio of 0.45). The documentation says the elasticity model is limited to materials with large displacements and small strains, but I was just curious if others know if there are certain strict bounds on what materials can be modelled accurately and which cannot with MuJoCo's SVK model? Any input is greatly appreciated!Cheers!
Minimal model and/or code that explain my question
softgripper_models.zip
Confirmations
Beta Was this translation helpful? Give feedback.
All reactions