Import USD scene in python

May I know how to import a USD scene in python?
For example, I have used GUI to design a USD scene, like a scene with a robot and a bunch of obstacles.
And now, how I want to import this USD scene in python because I want to operate the robot in python.
Is that possible?

Thank you.

Hi @berternats

A possible workflow is to load the created USD stage as a standalone application and control the robot there.

Please, refer to the load_stage.py standalone example in PATH_TO_ISAAC_SIM/standalone_examples/api/omni.isaac.kit folder

Thank you so much! I ran and reviewed the code.
But I am still clueless about how to access the robot.
For example, the example only loads a USD scene describing the environment. It does not tell us how to access a robot in a USD scene in python.

Hi @berternats

You can use the generic Robot class, or Manipulators or WheeledRobot for manipulators and mobile robots respectively to access and control robots.

Refer to the following standalone examples to see code in action, among others:

  • Robot:
    • standalone_examples/api/omni.isaac.core/data_logging.py
    • standalone_examples/api/omni.isaac.core/add_frankas.py
  • Manipulators:
    • standalone_examples/api/omni.isaac.manipulators/franka_pick_up.py
    • standalone_examples/api/omni.isaac.manipulators/cobotta_900/gripper_control.py
  • WheeledRobot:
    • standalone_examples/api/omni.isaac.jetbot/jetbot_move.py
    • standalone_examples/api/omni.isaac.kaya/kaya_move.py

Thank you so much for your reply. I think I need to clarify my question.
What I mean is I already have a USD WITH ROBOT.
So, may I know how I import that USD, and access that robot in the USD scene to control the robot?
Initially, the robot is already in the USD scene, I do not need to import it in python again, but access it.

Thank you.

Hi @berternats

The Robot class, or the other classes implemented in Manipulators or WheeledRobot (that inherit from the Robot or Articulation classes) will allow you to access and control existing robots in the stage.

The files I indicated above show hot to use those classes for that, among others things such compose a state by importing assets.

In your case you can ignore the latter and proceed with the use of the classes to control the robots.


In any case you can check the following example that shows how to import a previously saved scene and control a robot. Download both files for any folder and run the script using Isaac Sim 's Python environment as any other standalone app.

Note: the actions applied to the robot do not respect the limits, applied as it only for testing purposes.

simple_case.py (2.0 KB)
simple_case.usd (9.4 MB)

I see.
Thank you so much!

This topic was automatically closed 14 days after the last reply. New replies are no longer allowed.