Rigid Body Collisions Lead to Bugging/Clipping Objects

Hey,
I have a problem that the collisions of my rigid body sdf mesh objects are calculated quite unstable. It leads to the objects are wiggling or clipping into each other. I attached a video of it.
The tray and the part in the tray are sdf meshes. I tried working with some of the collision properites:

Blockquote
fixed_asset_tray: ArticulationCfg = ArticulationCfg(
prim_path=“/World/envs/env_.*/FixedAsset_Tray”,
spawn=sim_utils.UsdFileCfg(
usd_path=fixed_asset_tray_cfg.usd_path,
activate_contact_sensors=True,
rigid_props=sim_utils.RigidBodyPropertiesCfg(
disable_gravity=False,
max_depenetration_velocity=5.0,
linear_damping=0.0,
angular_damping=0.0,
max_linear_velocity=1000.0,
max_angular_velocity=3666.0,
enable_gyroscopic_forces=True,
solver_position_iteration_count=192,
solver_velocity_iteration_count=1,
max_contact_impulse=1e32,
),
mass_props=sim_utils.MassPropertiesCfg(mass=fixed_asset_tray_cfg.mass),
collision_props=sim_utils.CollisionPropertiesCfg(contact_offset=0.0005, rest_offset=0.0),
),
init_state=ArticulationCfg.InitialStateCfg(
pos=(0.3, -0.3, 0.0), rot=(1.0, 0.0, 0.0, 0.0), joint_pos={}, joint_vel={}
),
actuators={},
)

and

Blockquote
fixed_asset: ArticulationCfg = ArticulationCfg(
prim_path=“/World/envs/env_.*/FixedAsset”,
spawn=sim_utils.UsdFileCfg(
usd_path=fixed_asset_cfg.usd_path,
activate_contact_sensors=True,
rigid_props=sim_utils.RigidBodyPropertiesCfg(
disable_gravity=False,#############False
max_depenetration_velocity=5.0,
linear_damping=0.0,
angular_damping=0.0,
max_linear_velocity=1000.0,
max_angular_velocity=3666.0,
enable_gyroscopic_forces=True,
solver_position_iteration_count=192,
solver_velocity_iteration_count=1,
max_contact_impulse=1e32,
),
mass_props=sim_utils.MassPropertiesCfg(mass=fixed_asset_cfg.mass),
collision_props=sim_utils.CollisionPropertiesCfg(contact_offset=0.005, rest_offset=0.0),
),
init_state=ArticulationCfg.InitialStateCfg(
pos=(0.6, 0.0, 0.05), rot=(0.0, 0.707, -0.707, 0.0), joint_pos={}, joint_vel={} #rot=(1.0, 0.0, 0.0, 0.0)
),
actuators={},
)

What could be the problem?
Thanks in advance :)

Isaac Sim Version

4.5.0
4.2.0
4.1.0
4.0.0
4.5.0
2023.1.1
2023.1.0-hotfix.1
Other (please specify):

Operating System

Ubuntu 22.04
Ubuntu 20.04
Windows 11
Windows 10
Other (please specify):

GPU Information

  • Model: RTC 4060TI 16 GB or Ada 5000
  • Driver Version: The recommendet

Topic Description

Detailed Description

(Describe the issue in detail, including what you were trying to do, what you expected to happen, and what actually happened)

Steps to Reproduce

  1. Have one rigid body with sdf mesh peg into a fitting hole also with sdf mesh.

Screenshots or Videos

In the last seconds the simulation is paused.

Additional Information

What I tried:

-Tweaking Settings: Contact_offeset, rest_offset and solver_position_iteration_count of all in the collision involved assets

@ujixa i am just another user but am curious whether the same wiggling behavior happens on the small container without the tray? and also, what does the collisions look like on both the tray and container?

Hello @Simplychenable thanks for your interst :)
So what I can say is that withouht the tray the small containter (it is the housing of an electric motor) is not wiggling when its colliding with the table. The tray articulation is fixed via a joint. I havent tested whether the wiggeling appears when the tray is not fiexed.
In the isaac lab factory demo (which is quite similar) the hole (in my case the container) is fixed diretly - without any tray.

Another thing that is visible, is that the rotor of the electric motor is also wiggeling in the hand of the robot. Interestingly that case is basically the same as in the factory demo -where it works. So sdf-mesh with the in hand obejct and convext hull for the robot. Only the mass and shape of the in hand object is different. As my environment is based on the demo so the world physic settings are the same it tis particulary strange. But for that I am not sure wheather somehow the PD-controller of the finger joints is using too much torque or what ever.

Hi @ujixa, thank you for posting your issue and sorry for the delay on getting to this. Not sure if you are still having this problem. I tried to reproduce it with some assets that I quickly made up with similar setup (holder plate dropped on the table not fixed, and a socket placed on the holder) I don’t seem to be able to reproduce the wiggling behavior. Both of my parts are Rigid Bodies and have a SDF mesh collider.


I wonder if in your setup the mesh colliders used in SDF mesh are not accurate and they are somehow constantly in collision. Can you take a video with the Collision Mesh visualization turned on? Also, if you are able to share those assets with me I can help debug quicker.

Hello!

We noticed that this topic hasn’t received any recent responses, so we are closing it for now to help keep the forum organized.

If you’re still experiencing this issue or have additional questions, please feel free to create a new topic with updated details. When doing so, we recommend mentioning or linking to this original topic in your new post—this helps provide context and makes it easier for others to assist you.

Thank you for being part of the NVIDIA Isaac Sim community.

Best regards,
The NVIDIA Isaac Sim Forum Team