ModuleNotFoundError: No module named 'omni'

Hi, I’m seeing this error: ModuleNotFoundError: No module named ‘omni’ when I tried running code in vscode.
my interpreter path has already been set to ~\AppData\Local\ov\pkg\isaac_sim-2023.1.1\kit\python.
I’m using windows. No idea what’s wrong

@khooweiquan2014 do you think this tutorial would help?

https://docs.omniverse.nvidia.com/isaacsim/latest/manual_standalone_python.html#visual-studio-code-vscode-support

is my tasks.json suppsoed to look like this?[see below] or am I supposed to edit it to look like what’s in the tutorial?

{
    // See https://go.microsoft.com/fwlink/?LinkId=733558
    // for the documentation about the tasks.json format
    "version": "2.0.0",
    "tasks": [
    ]
}

I managed to fix it by adding the following lines to the python file[see below]

import os
from omni.isaac.kit import SimulationApp

simulation_app = SimulationApp({"headless": False,  "open_usd": "C:/Users/resce/AppData/Local/ov/pkg/isaac_sim-2023.1.1/usd/reacher.usd"})

and using windows command prompt, navigating to isaac-sim folder & running ./python.bat .
Now I’m getting the error:
2024-02-05 09:17:17 [18,053ms] [Warning] [omni.isaac.dynamic_control.plugin] Failed to find articulation at ‘/reacher/base_link’

Below is my code[without the import part], not sure what’s wrong

simulation_app.update()
dc = _dynamic_control.acquire_dynamic_control_interface()

articulation = dc.get_articulation("/reacher/base_link")
dc.wake_up_articulation(articulation)
dof_ptr = dc.find_articulation_dof(articulation, "RevoluteJoint_1")

for i in range(500):
    rotation = dc.get_dof_position(dof_ptr)
    print(rotation)
    dc.set_dof_position(dof_ptr, rotation-0.04)
    simulation_app.update()


Hi @khooweiquan2014 - What document are you following where you are seeing this issue?

Also, try following code:

import os
from omni.isaac.kit import SimulationApp
from omni.isaac.dynamic_control import _dynamic_control

simulation_app = SimulationApp({
    "headless": False,
    "open_usd": "C:/Users/resce/AppData/Local/ov/pkg/isaac_sim-2023.1.1/usd/reacher.usd"
})

simulation_app.update()

dc = _dynamic_control.acquire_dynamic_control_interface()

# Use the articulation's root path instead of the base link if necessary
articulation = dc.get_articulation("/reacher")

# Make sure the articulation was found before proceeding
if articulation == _dynamic_control.NULL_HANDLE:
    print('Articulation not found!')
else:
    dc.wake_up_articulation(articulation)
    dof_ptr = dc.find_articulation_dof(articulation, "RevoluteJoint_1")

    for i in range(500):
        rotation = dc.get_dof_position(dof_ptr)
        print(rotation)
        dc.set_dof_position(dof_ptr, rotation-0.04)
        simulation_app.update()

Hello,
I’m trying to follow this example: 2.4. Assemble a Simple Robot — Omniverse IsaacSim latest documentation
Is there an example that shows how to apply articulation root for robotic arm? I cant find it anywhere and documentations are not really helping

by the way, I’m getting the following error after applying your changes:
2024-02-13 01:49:27 [Error] [omni.kit.app.plugin] [py stderr]: AttributeError: module ‘omni.isaac.dynamic_control._dynamic_control’ has no attribute ‘NULL_HANDLE’

Hi, I managed to get it working.
I just need do the following before importing anything else:

from omni.isaac.kit import SimulationApp
simulation_app = SimulationApp({"headless": False,  "open_usd": "C:/Users/resce/AppData/Local/ov/pkg/isaac_sim-2023.1.1/usd/reacher.usd"})

After which, I followed the time_stepping.py and added the parts for SimulationContext.
I’m just getting a message during rendering saying that material render context has been changed. Not sure how to fix this. Otherwise, thanks for the help.

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