When I follow Adding a New Manipulator — Omniverse IsaacSim latest documentation adding a New Manipulator.The cobotta_pro_900.usd file is generated, and the joint control is fine. However, when performing Gains Tuning, Choose the prim_path that corresponds to the articulation under Select Articulation, value is /cobotta_pro_900/root_joint. When using Python script control later, the following error occurs:
Traceback (most recent call last):
File “/home/ubuntu/.local/share/ov/pkg/isaac-sim-4.0.0/test.py”, line 35, in
my_world.reset()
File “/home/ubuntu/.local/share/ov/pkg/isaac-sim-4.0.0/exts/omni.isaac.core/omni/isaac/core/world/world.py”, line 391, in reset
self._scene._finalize(self.physics_sim_view)
File “/home/ubuntu/.local/share/ov/pkg/isaac-sim-4.0.0/exts/omni.isaac.core/omni/isaac/core/scenes/scene.py”, line 365, in _finalize
articulated_system.initialize(physics_sim_view)
File “/home/ubuntu/.local/share/ov/pkg/isaac-sim-4.0.0/exts/omni.isaac.manipulators/omni/isaac/manipulators/manipulators/single_manipulator.py”, line 110, in initialize
self._end_effector = RigidPrim(prim_path=self._end_effector_prim_path, name=self.name + “_end_effector”)
File “/home/ubuntu/.local/share/ov/pkg/isaac-sim-4.0.0/exts/omni.isaac.core/omni/isaac/core/prims/rigid_prim.py”, line 115, in init
self._rigid_prim_view = RigidPrimView(
File “/home/ubuntu/.local/share/ov/pkg/isaac-sim-4.0.0/exts/omni.isaac.core/omni/isaac/core/prims/rigid_prim_view.py”, line 144, in init
XFormPrimView.init(
File “/home/ubuntu/.local/share/ov/pkg/isaac-sim-4.0.0/exts/omni.isaac.core/omni/isaac/core/prims/xform_prim_view.py”, line 132, in init
raise Exception(
Exception: Prim path expression /World/cobotta/root_joint/onrobot_rg6_base_link is invalid, a prim matching the expression needs to created before wrapping it as view
How can I solve it?
I have the same problem with you. Are you solving it now?
1 Like
I met the same problem and I found it was caused by the converted usd file.
There is a similar example in ~/.local/share/ov/pkg/isaac-sim-4.0.0/standalone_examples/api/omni.isaac.manipulators/
, where it loads the cobotta_pro_900 usd file with from omni.isaac.nucleus import get_assets_root_path
. I compared the nucleus usd file and the one converted from the urdf, the articulation_root
of the former is root_join, which is different from the robot’s root prim of the latter. After replacing the usd file with the nucleus one, the progress works normally.