Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
20 changes: 3 additions & 17 deletions v2/articulated_scene.xml
Original file line number Diff line number Diff line change
Expand Up @@ -23,12 +23,6 @@ for either arm. (The turnable valve lives in valve_scene.xml.)
<compiler meshdir="assets" angle="radian"/>

<default>
<default class="visual">
<geom contype="0" conaffinity="0" group="2"/>
</default>
<default class="collision">
<geom condim="3" conaffinity="1" priority="1" group="3" solref="0.005 1" friction="1 0.01 0.01"/>
</default>
<default class="fixture">
<geom type="box" contype="1" conaffinity="1" friction="1 0.01 0.01" rgba="0.55 0.45 0.32 1"/>
</default>
Expand All @@ -50,11 +44,7 @@ for either arm. (The turnable valve lives in valve_scene.xml.)
markrgb="0.6 0.6 0.6" width="300" height="300"/>
<material name="groundplane" texture="groundplane" texuniform="true" texrepeat="5 5" reflectance="0.2"/>

<material name="openarm_body_link0_material" rgba="0.247 0.247 0.247 1.0" reflectance="0.05" shininess="0.5"/>
<mesh name="body_link0" content_type="model/stl" file="visual/body/body_link0.stl" scale="0.001 0.001 0.001"/>
<mesh name="body_link0_symp" content_type="model/stl" file="collision/body_link0_symp.stl" scale="0.001 0.001 0.001"/>

<model name="bimanual" file="openarm_bimanual.xml"/>
<model name="arm_pedestal" file="openarm_pedestal.xml"/>
</asset>

<worldbody>
Expand All @@ -64,12 +54,8 @@ for either arm. (The turnable valve lives in valve_scene.xml.)
<camera name="tablecam" pos="0.30 0.0 1.30" xyaxes="1 0 0 0 1 0" fovy="60"/>
<camera name="frontcam" pos="1.05 0.0 0.90" xyaxes="0 -1 0 0.3 0 1" fovy="55"/>

<geom name="openarm_body_link0_visual" type="mesh" mesh="body_link0" class="visual" material="openarm_body_link0_material"/>
<geom name="openarm_body_link0_collision" type="mesh" mesh="body_link0_symp" class="collision"/>

<frame pos="0 0 0.698">
<attach model="bimanual" prefix=""/>
</frame>
<!-- bimanual arms mounted on the pedestal -->
<attach model="arm_pedestal" prefix=""/>

<!-- Table: top at z=0.40, centered on the arm (y=0). Footprint matches the
cell workspace table in cell.xml (0.41 x 0.55 half-extents) so tabletop
Expand Down
23 changes: 3 additions & 20 deletions v2/balance_scene.xml
Original file line number Diff line number Diff line change
Expand Up @@ -23,15 +23,6 @@ it at runtime after posing the arm.
<mujoco model="openarm_v20_balance">
<compiler meshdir="assets" angle="radian"/>

<default>
<default class="visual">
<geom contype="0" conaffinity="0" group="2"/>
</default>
<default class="collision">
<geom condim="3" conaffinity="1" priority="1" group="3" solref="0.005 1" friction="1 0.01 0.01"/>
</default>
</default>

<statistic center="0.30 -0.05 0.60" extent="1.1" meansize="0.05"/>
<option timestep="0.001"/>

Expand All @@ -48,11 +39,7 @@ it at runtime after posing the arm.
markrgb="0.6 0.6 0.6" width="300" height="300"/>
<material name="groundplane" texture="groundplane" texuniform="true" texrepeat="5 5" reflectance="0.2"/>

<material name="openarm_body_link0_material" rgba="0.247 0.247 0.247 1.0" reflectance="0.05" shininess="0.5"/>
<mesh name="body_link0" content_type="model/stl" file="visual/body/body_link0.stl" scale="0.001 0.001 0.001"/>
<mesh name="body_link0_symp" content_type="model/stl" file="collision/body_link0_symp.stl" scale="0.001 0.001 0.001"/>

<model name="bimanual" file="openarm_bimanual.xml"/>
<model name="arm_pedestal" file="openarm_pedestal.xml"/>
</asset>

<worldbody>
Expand All @@ -62,12 +49,8 @@ it at runtime after posing the arm.
<camera name="balancecam" pos="0.75 -0.40 0.95" xyaxes="0.5 0.866 0 -0.35 0.20 0.92" fovy="50"/>
<camera name="topcam" pos="0.30 -0.05 1.30" xyaxes="1 0 0 0 1 0" fovy="55"/>

<geom name="openarm_body_link0_visual" type="mesh" mesh="body_link0" class="visual" material="openarm_body_link0_material"/>
<geom name="openarm_body_link0_collision" type="mesh" mesh="body_link0_symp" class="collision"/>

<frame pos="0 0 0.698">
<attach model="bimanual" prefix=""/>
</frame>
<!-- bimanual arms mounted on the pedestal -->
<attach model="arm_pedestal" prefix=""/>

<!-- Table: top at z=0.40, centered on the arm (y=0). Footprint matches the
cell workspace table in cell.xml (0.41 x 0.55 half-extents) so tabletop
Expand Down
17 changes: 3 additions & 14 deletions v2/bottle_scene.xml
Original file line number Diff line number Diff line change
Expand Up @@ -27,9 +27,6 @@ the cap let either arm grasp and unscrew it.
<default class="visual">
<geom contype="0" conaffinity="0" group="2"/>
</default>
<default class="collision">
<geom condim="3" conaffinity="1" priority="1" group="3" solref="0.005 1" friction="1 0.01 0.01"/>
</default>
<default class="fixture">
<geom type="box" contype="1" conaffinity="1" friction="1 0.01 0.01" rgba="0.55 0.45 0.32 1"/>
</default>
Expand All @@ -51,11 +48,7 @@ the cap let either arm grasp and unscrew it.
markrgb="0.6 0.6 0.6" width="300" height="300"/>
<material name="groundplane" texture="groundplane" texuniform="true" texrepeat="5 5" reflectance="0.2"/>

<material name="openarm_body_link0_material" rgba="0.247 0.247 0.247 1.0" reflectance="0.05" shininess="0.5"/>
<mesh name="body_link0" content_type="model/stl" file="visual/body/body_link0.stl" scale="0.001 0.001 0.001"/>
<mesh name="body_link0_symp" content_type="model/stl" file="collision/body_link0_symp.stl" scale="0.001 0.001 0.001"/>

<model name="bimanual" file="openarm_bimanual.xml"/>
<model name="arm_pedestal" file="openarm_pedestal.xml"/>
</asset>

<worldbody>
Expand All @@ -65,12 +58,8 @@ the cap let either arm grasp and unscrew it.
<camera name="tablecam" pos="0.30 0.0 1.30" xyaxes="1 0 0 0 1 0" fovy="60"/>
<camera name="frontcam" pos="1.05 0.0 0.90" xyaxes="0 -1 0 0.3 0 1" fovy="55"/>

<geom name="openarm_body_link0_visual" type="mesh" mesh="body_link0" class="visual" material="openarm_body_link0_material"/>
<geom name="openarm_body_link0_collision" type="mesh" mesh="body_link0_symp" class="collision"/>

<frame pos="0 0 0.698">
<attach model="bimanual" prefix=""/>
</frame>
<!-- bimanual arms mounted on the pedestal -->
<attach model="arm_pedestal" prefix=""/>

<!-- Table: top at z=0.40, centered on the arm (y=0). Footprint matches the
cell workspace table in cell.xml (0.41 x 0.55 half-extents) so tabletop
Expand Down
23 changes: 3 additions & 20 deletions v2/move_puck_scene.xml
Original file line number Diff line number Diff line change
Expand Up @@ -23,15 +23,6 @@ puck can be pushed to a goal with the closed gripper, or grasped and placed
<mujoco model="openarm_v20_move_puck">
<compiler meshdir="assets" angle="radian"/>

<default>
<default class="visual">
<geom contype="0" conaffinity="0" group="2" />
</default>
<default class="collision">
<geom condim="3" conaffinity="1" priority="1" group="3" solref="0.005 1" friction="1 0.01 0.01" />
</default>
</default>

<statistic center="0 0 0.6" extent="1.1" meansize="0.05"/>
<option timestep="0.001" />

Expand All @@ -48,11 +39,7 @@ puck can be pushed to a goal with the closed gripper, or grasped and placed
markrgb="0.6 0.6 0.6" width="300" height="300"/>
<material name="groundplane" texture="groundplane" texuniform="true" texrepeat="5 5" reflectance="0.2"/>

<material name="openarm_body_link0_material" rgba="0.247 0.247 0.247 1.0" reflectance="0.05" shininess="0.5"/>
<mesh name="body_link0" content_type="model/stl" file="visual/body/body_link0.stl" scale="0.001 0.001 0.001" />
<mesh name="body_link0_symp" content_type="model/stl" file="collision/body_link0_symp.stl" scale="0.001 0.001 0.001" />

<model name="bimanual" file="openarm_bimanual.xml"/>
<model name="arm_pedestal" file="openarm_pedestal.xml"/>
</asset>

<worldbody>
Expand All @@ -62,12 +49,8 @@ puck can be pushed to a goal with the closed gripper, or grasped and placed
<camera name="tablecam" pos="0.26 -0.18 1.15" xyaxes="1 0 0 0 1 0" fovy="60"/>
<camera name="frontcam" pos="0.95 -0.18 0.85" xyaxes="0 -1 0 0.3 0 1" fovy="55"/>

<geom name="openarm_body_link0_visual" type="mesh" mesh="body_link0" class="visual" material="openarm_body_link0_material" />
<geom name="openarm_body_link0_collision" type="mesh" mesh="body_link0_symp" class="collision" />

<frame pos="0 0 0.698">
<attach model="bimanual" prefix=""/>
</frame>
<!-- bimanual arms mounted on the pedestal -->
<attach model="arm_pedestal" prefix=""/>

<!-- Table: top at z=0.40, centered on the arm (y=0). Footprint matches the
cell workspace table in cell.xml (0.41 x 0.55 half-extents) so tabletop
Expand Down
56 changes: 56 additions & 0 deletions v2/openarm_pedestal.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,56 @@
<!--
Copyright 2026 Enactic, Inc.

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
-->

<!--
Attachable component: the OpenArm bimanual arms mounted on the static
pedestal. Scenes include it via
<asset><model name="arm_pedestal" file="openarm_pedestal.xml"/></asset>
<worldbody><attach model="arm_pedestal" prefix=""/></worldbody>
Scene furniture (floor, lights, cameras, keyframes) stays in the scenes.
-->
<mujoco model="openarm_pedestal">
<compiler meshdir="assets" angle="radian"/>

<default>
<default class="pedestal_visual">
<geom contype="0" conaffinity="0" group="2" />
</default>
<default class="pedestal_collision">
<geom condim="3" conaffinity="1" priority="1" group="3" solref="0.005 1" friction="1 0.01 0.01" />
</default>
</default>

<asset>
<material name="openarm_body_link0_material" rgba="0.247 0.247 0.247 1.0" reflectance="0.05" shininess="0.5"/>

<mesh name="body_link0" content_type="model/stl" file="visual/body/body_link0.stl" scale="0.001 0.001 0.001" />
<mesh name="body_link0_symp" content_type="model/stl" file="collision/body_link0_symp.stl" scale="0.001 0.001 0.001" />

<model name="bimanual" file="openarm_bimanual.xml"/>
</asset>

<worldbody>
<!-- static fixation base -->
<geom name="openarm_body_link0_visual" type="mesh" mesh="body_link0" class="pedestal_visual" material="openarm_body_link0_material" />
<geom name="openarm_body_link0_collision" type="mesh" mesh="body_link0_symp" class="pedestal_collision" />

<!-- arms attach at the pedestal top (z=0.698) -->
<frame pos="0 0 0.698">
<attach model="bimanual" prefix=""/>
</frame>
</worldbody>

</mujoco>
25 changes: 3 additions & 22 deletions v2/pedestal.xml
Original file line number Diff line number Diff line change
Expand Up @@ -17,15 +17,6 @@ limitations under the License.
<mujoco model="openarm_v20_pedestal">
<compiler meshdir="assets" angle="radian"/>

<default>
<default class="visual">
<geom contype="0" conaffinity="0" group="2" />
</default>
<default class="collision">
<geom condim="3" conaffinity="1" priority="1" group="3" solref="0.005 1" friction="1 0.01 0.01" />
</default>
</default>

<statistic center="1.3 0 0.6" extent="3.5" meansize="0.05"/>
<option timestep="0.001" />

Expand All @@ -41,26 +32,16 @@ limitations under the License.
<texture type="2d" name="groundplane" builtin="checker" mark="edge" rgb1="0.2 0.3 0.4" rgb2="0.1 0.2 0.3"
markrgb="0.8 0.8 0.8" width="300" height="300"/>
<material name="groundplane" texture="groundplane" texuniform="true" texrepeat="5 5" reflectance="0.2"/>
<material name="openarm_body_link0_material" rgba="0.247 0.247 0.247 1.0" reflectance="0.05" shininess="0.5"/>

<mesh name="body_link0" content_type="model/stl" file="visual/body/body_link0.stl" scale="0.001 0.001 0.001" />
<mesh name="body_link0_symp" content_type="model/stl" file="collision/body_link0_symp.stl" scale="0.001 0.001 0.001" />

<model name="bimanual" file="openarm_bimanual.xml"/>
<model name="arm_pedestal" file="openarm_pedestal.xml"/>
</asset>

<worldbody>
<light pos="0 0 2" dir="0 0 -1" directional="true"/>
<geom name="floor" size="0 0 0.05" type="plane" material="groundplane"/>

<!-- static fixation base -->
<geom name="openarm_body_link0_visual" type="mesh" mesh="body_link0" class="visual" material="openarm_body_link0_material" />
<geom name="openarm_body_link0_collision" type="mesh" mesh="body_link0_symp" class="collision" />

<!-- arms attach at the pedestal top (z=0.698) -->
<frame pos="0 0 0.698">
<attach model="bimanual" prefix=""/>
</frame>
<!-- bimanual arms mounted on the pedestal -->
<attach model="arm_pedestal" prefix=""/>
</worldbody>

<keyframe>
Expand Down
23 changes: 3 additions & 20 deletions v2/peg_socket_scene.xml
Original file line number Diff line number Diff line change
Expand Up @@ -24,15 +24,6 @@ it needs no yaw alignment.
<mujoco model="openarm_v20_peg_socket">
<compiler meshdir="assets" angle="radian"/>

<default>
<default class="visual">
<geom contype="0" conaffinity="0" group="2" />
</default>
<default class="collision">
<geom condim="3" conaffinity="1" priority="1" group="3" solref="0.005 1" friction="1 0.01 0.01" />
</default>
</default>

<statistic center="0 0 0.6" extent="1.1" meansize="0.05"/>
<option timestep="0.001" />

Expand All @@ -49,11 +40,7 @@ it needs no yaw alignment.
markrgb="0.6 0.6 0.6" width="300" height="300"/>
<material name="groundplane" texture="groundplane" texuniform="true" texrepeat="5 5" reflectance="0.2"/>

<material name="openarm_body_link0_material" rgba="0.247 0.247 0.247 1.0" reflectance="0.05" shininess="0.5"/>
<mesh name="body_link0" content_type="model/stl" file="visual/body/body_link0.stl" scale="0.001 0.001 0.001" />
<mesh name="body_link0_symp" content_type="model/stl" file="collision/body_link0_symp.stl" scale="0.001 0.001 0.001" />

<model name="bimanual" file="openarm_bimanual.xml"/>
<model name="arm_pedestal" file="openarm_pedestal.xml"/>
</asset>

<worldbody>
Expand All @@ -63,12 +50,8 @@ it needs no yaw alignment.
<camera name="tablecam" pos="0.28 -0.22 1.15" xyaxes="1 0 0 0 1 0" fovy="55"/>
<camera name="frontcam" pos="0.95 -0.22 0.85" xyaxes="0 -1 0 0.3 0 1" fovy="50"/>

<geom name="openarm_body_link0_visual" type="mesh" mesh="body_link0" class="visual" material="openarm_body_link0_material" />
<geom name="openarm_body_link0_collision" type="mesh" mesh="body_link0_symp" class="collision" />

<frame pos="0 0 0.698">
<attach model="bimanual" prefix=""/>
</frame>
<!-- bimanual arms mounted on the pedestal -->
<attach model="arm_pedestal" prefix=""/>

<!-- Table: top at z=0.40, centered on the arm (y=0). Footprint matches the
cell workspace table in cell.xml (0.41 x 0.55 half-extents) so tabletop
Expand Down
23 changes: 3 additions & 20 deletions v2/tool_scene.xml
Original file line number Diff line number Diff line change
Expand Up @@ -23,15 +23,6 @@ even farther goal marker.
<mujoco model="openarm_v20_tool">
<compiler meshdir="assets" angle="radian"/>

<default>
<default class="visual">
<geom contype="0" conaffinity="0" group="2" />
</default>
<default class="collision">
<geom condim="3" conaffinity="1" priority="1" group="3" solref="0.005 1" friction="1 0.01 0.01" />
</default>
</default>

<statistic center="0 0 0.6" extent="1.2" meansize="0.05"/>
<option timestep="0.001" />

Expand All @@ -48,11 +39,7 @@ even farther goal marker.
markrgb="0.6 0.6 0.6" width="300" height="300"/>
<material name="groundplane" texture="groundplane" texuniform="true" texrepeat="5 5" reflectance="0.2"/>

<material name="openarm_body_link0_material" rgba="0.247 0.247 0.247 1.0" reflectance="0.05" shininess="0.5"/>
<mesh name="body_link0" content_type="model/stl" file="visual/body/body_link0.stl" scale="0.001 0.001 0.001" />
<mesh name="body_link0_symp" content_type="model/stl" file="collision/body_link0_symp.stl" scale="0.001 0.001 0.001" />

<model name="bimanual" file="openarm_bimanual.xml"/>
<model name="arm_pedestal" file="openarm_pedestal.xml"/>
</asset>

<worldbody>
Expand All @@ -62,12 +49,8 @@ even farther goal marker.
<camera name="tablecam" pos="0.34 -0.14 1.3" xyaxes="1 0 0 0 1 0" fovy="64"/>
<camera name="frontcam" pos="1.05 -0.26 0.9" xyaxes="0 -1 0 0.3 0 1" fovy="58"/>

<geom name="openarm_body_link0_visual" type="mesh" mesh="body_link0" class="visual" material="openarm_body_link0_material" />
<geom name="openarm_body_link0_collision" type="mesh" mesh="body_link0_symp" class="collision" />

<frame pos="0 0 0.698">
<attach model="bimanual" prefix=""/>
</frame>
<!-- bimanual arms mounted on the pedestal -->
<attach model="arm_pedestal" prefix=""/>

<!-- Table: top at z=0.40, centered on the arm (y=0). Footprint matches the
cell workspace table in cell.xml (0.41 x 0.55 half-extents); wide enough
Expand Down
20 changes: 3 additions & 17 deletions v2/valve_scene.xml
Original file line number Diff line number Diff line change
Expand Up @@ -22,12 +22,6 @@ graspable knob at the lever tip and inactive grasp welds for either arm.
<compiler meshdir="assets" angle="radian"/>

<default>
<default class="visual">
<geom contype="0" conaffinity="0" group="2"/>
</default>
<default class="collision">
<geom condim="3" conaffinity="1" priority="1" group="3" solref="0.005 1" friction="1 0.01 0.01"/>
</default>
<default class="fixture">
<geom type="box" contype="1" conaffinity="1" friction="1 0.01 0.01" rgba="0.55 0.45 0.32 1"/>
</default>
Expand All @@ -49,11 +43,7 @@ graspable knob at the lever tip and inactive grasp welds for either arm.
markrgb="0.6 0.6 0.6" width="300" height="300"/>
<material name="groundplane" texture="groundplane" texuniform="true" texrepeat="5 5" reflectance="0.2"/>

<material name="openarm_body_link0_material" rgba="0.247 0.247 0.247 1.0" reflectance="0.05" shininess="0.5"/>
<mesh name="body_link0" content_type="model/stl" file="visual/body/body_link0.stl" scale="0.001 0.001 0.001"/>
<mesh name="body_link0_symp" content_type="model/stl" file="collision/body_link0_symp.stl" scale="0.001 0.001 0.001"/>

<model name="bimanual" file="openarm_bimanual.xml"/>
<model name="arm_pedestal" file="openarm_pedestal.xml"/>
</asset>

<worldbody>
Expand All @@ -63,12 +53,8 @@ graspable knob at the lever tip and inactive grasp welds for either arm.
<camera name="tablecam" pos="0.30 0.0 1.30" xyaxes="1 0 0 0 1 0" fovy="60"/>
<camera name="frontcam" pos="1.05 0.0 0.90" xyaxes="0 -1 0 0.3 0 1" fovy="55"/>

<geom name="openarm_body_link0_visual" type="mesh" mesh="body_link0" class="visual" material="openarm_body_link0_material"/>
<geom name="openarm_body_link0_collision" type="mesh" mesh="body_link0_symp" class="collision"/>

<frame pos="0 0 0.698">
<attach model="bimanual" prefix=""/>
</frame>
<!-- bimanual arms mounted on the pedestal -->
<attach model="arm_pedestal" prefix=""/>

<!-- Table: top at z=0.40, centered on the arm (y=0). Footprint matches the
cell workspace table in cell.xml (0.41 x 0.55 half-extents) so tabletop
Expand Down