Jump to content

Connect SuperML | Leeroopedia MCP: Equip your AI agents with best practices, code verification, and debugging knowledge. Powered by Leeroo — building Organizational Superintelligence. Contact us at founders@leeroo.com.

Implementation:ARISE Initiative Robosuite CompositionalRobots

From Leeroopedia
Knowledge Sources
Domains Robotics, Robot Modeling, Simulation
Last Updated 2026-02-15 07:00 GMT

Overview

The compositional module defines composite robot configurations that combine arm models with specific bases, grippers, and initial configurations, including mobile manipulators and dexterous hand variants.

Description

This module provides several robot classes that extend existing robot models with specific compositional configurations. Each class overrides key properties to define a complete robot system by specifying the base platform, arm type, gripper, initial joint positions, and workspace offsets.

PandaOmron combines a Panda arm with an OmronMobileBase, providing a mobile manipulator configuration with adjusted initial joint positions and torso position. SpotWithArm and SpotWithArmFloating mount a SpotArm on either a full Spot quadruped base or a floating base variant, with appropriate workspace offsets. The floating variant removes the legs from the simulation.

PandaDexRH and PandaDexLH are dexterous manipulation variants that replace the Panda's default gripper with an InspireRightHand or InspireLeftHand respectively. These classes define gripper mount position and quaternion offsets to properly align the dexterous hand with the Panda arm's end effector.

All classes inherit from their respective arm model base classes and primarily override property methods to customize the robot configuration without modifying the underlying arm kinematics.

Usage

Use these classes when you need a specific robot configuration that combines an arm with a particular base or gripper. They are typically referenced by name in environment configurations and loaded through robosuite's robot factory.

Code Reference

Source Location

Signature

class PandaOmron(Panda):
    ...

class SpotWithArm(SpotArm):
    ...

class SpotWithArmFloating(SpotArm):
    def __init__(self, idn=0)

class PandaDexRH(Panda):
    ...

class PandaDexLH(Panda):
    ...

Import

from robosuite.models.robots.compositional import (
    PandaOmron, SpotWithArm, SpotWithArmFloating, PandaDexRH, PandaDexLH
)

I/O Contract

Inputs

Name Type Required Description
idn int or str No Unique identification number or string for the robot instance (default: 0)

Outputs

Name Type Description
default_base str Name of the default base type (e.g., "OmronMobileBase", "Spot")
default_arms dict Dictionary mapping arm positions to arm model names
default_gripper dict Dictionary mapping arm positions to gripper model names
init_qpos np.ndarray Default initial joint positions for the robot
base_xpos_offset dict Workspace offset dictionary for different arena types

Usage Examples

import robosuite

# Create an environment with the PandaOmron mobile manipulator
env = robosuite.make(
    "Lift",
    robots="PandaOmron",
    has_renderer=True,
    has_offscreen_renderer=False,
)
env.reset()

# Create an environment with the Panda + dexterous right hand
env_dex = robosuite.make(
    "Lift",
    robots="PandaDexRH",
    has_renderer=True,
)
env_dex.reset()

Related Pages

Page Connections

Double-click a node to navigate. Hold to expand connections.
Principle
Implementation
Heuristic
Environment