-
Notifications
You must be signed in to change notification settings - Fork 2.7k
Open
Description
Question
Hi all,
I have an object and robot manipulator. During simulation, I want to rigidly attach the end effector of the manipulator to the object to simulate the object being grasped.
I thought I could create a fixed joint between the object and end effector dynamically during runtime. However, I'm running into some trouble doing this.
- There is an example of a similar situation in Dynamically Attach Two Rigid Bodies at Runtime in IsaacLab #2472, but perhaps the provided code is outdated? I cannot import get_scene_interface.
Traceback (most recent call last):
File "isaaclab_script.py", line 108, in <module>
from omni.physx import get_scene_interface
ImportError: cannot import name 'get_scene_interface' from 'omni.physx' (/home/.../conda_env/lib/python3.11/site-packages/isaacsim/extscache/omni.physx-107.3.18+107.3.1.lx64.r.cp311.u353/omni/physx/__init__.py)- I also saw that [Question] How to change the initial pose of a static articulation/rigidbody? #4025 suggests using USD API. However, when I attempt to do this, upon creating a fixed joint, the end-effector snaps to the initialization position of the object. I suspect because the USD values don't update during gpu simulation even when the physx values do?
[Warning] [omni.physx.plugin] PhysicsUSD: CreateJoint - found a joint with disjointed body transforms, the simulation will most likely snap objects together: /World/envs/.../EefObjectFixedThus, I'm hoping to get some guidance on how correctly create a fixed joint between two rigid bodies during simulation runtime. Any help is appreciated.
Build Info
Describe the versions that you are currently using:
- Isaac Lab Version: 2.2.0
- Isaac Sim Version: 5.0.0
Metadata
Metadata
Assignees
Labels
No labels