Documentation Index
Fetch the complete documentation index at: https://mintlify.com/asimovinc/asimov-v0/llms.txt
Use this file to discover all available pages before exploring further.
Overview
The Asimov MuJoCo model (asimov.xml) defines the complete robot kinematics, dynamics, collision geometry, sensors, and visual appearance. This reference documents the key elements and their configuration.
The model uses MuJoCo’s XML format. All angles are specified in radians, and the mesh directory is set relative to the XML file location.
Model Configuration
Compiler Settings
The model compiler is configured with:- Angle convention: Radians (MuJoCo default)
- Mesh directory:
../assets/meshes/containing all STL files
Visual Settings
Default Classes
Joint Defaults
The model defines custom default classes for different joint types:Design Decision: Joint frictionloss and damping are set to 0 at the joint level. All damping is provided by the actuator configuration to prevent double-counting dissipation effects.
Geometry Classes
Two geometry classes separate visual and collision meshes:- Visual meshes (group 2): High-fidelity STL meshes for rendering, no collision
- Collision geometry (group 3): Simplified capsule primitives for efficient contact detection
Specialized Collision Classes
Assets
Materials
The model defines several materials for visual appearance:Ground Plane
A textured ground plane with checker pattern:Mesh Assets
The model references 15 STL mesh files:Complete Mesh List
Complete Mesh List
pelvis_link.STLleft_hip_pitch_link.STLleft_hip_roll_link.STLleft_hip_yaw_link.STLleft_knee_link.STLleft_ankle_pitch_link.STLleft_ankle_roll_link.STLleft_toe_link.STLright_hip_pitch_link.STLright_hip_roll_link.STLright_hip_yaw_link.STLright_knee_link.STLright_ankle_pitch_link.STLright_ankle_roll_link.STLright_toe_link.STL
assets/meshes/ directory.
World Body
Lighting
The environment includes two directional lights for realistic shading:Ground Plane
Robot Body Structure
Floating Base
The pelvis is the root body with a free-floating base joint:- Initial height: 0.739 m (standing configuration)
- Mass: 3.3125 kg
- 6-DOF free joint for translation and rotation
Inertial Properties
All body segments include accurate inertial properties derived from CAD:Hip Pitch Link
- Mass: 0.926 kg
- CoM offset from joint
- 3×3 diagonal inertia tensor
Knee Link
- Mass: 2.248 kg (heaviest segment)
- Includes motor and gearbox mass
- Inertia: 0.0094 kg⋅m² (Ixx)
Ankle Roll Link
- Mass: 0.613 kg
- Includes foot structure
- Inertia: 0.00070 kg⋅m² (Izz)
Toe Link
- Mass: 0.112 kg (lightest segment)
- Spring-loaded joint
- Inertia: 5.54×10⁻⁵ kg⋅m² (Ixx)
Joint Configuration
Left Leg Joints
Joint Ranges Summary
| Joint | Range (rad) | Range (deg) | Note |
|---|---|---|---|
| Left Hip Pitch | -2.094 to 1.0 | -120° to 57° | Asymmetric |
| Left Hip Roll | -0.785 to 0.785 | -45° to 45° | Symmetric |
| Left Hip Yaw | -0.785 to 0.785 | -45° to 45° | Symmetric |
| Left Knee | 0 to 1.5 | 0° to 86° | Extension only |
| Left Ankle Pitch | -0.349 to 0.5 | -20° to 29° | Limited range |
| Left Ankle Roll | -0.1 to 0.1 | -5.7° to 5.7° | Very limited |
Right leg joints have mirrored ranges. For example, right hip pitch ranges from -1.0 to 2.094 rad (-57° to 120°).
Toe Joints (Passive Spring)
The articulated toe joints include spring-damper mechanics:- Stiffness: 4.5 Nm/rad (rigid training wheels)
- Damping: 0.5 Nm⋅s/rad
- Range: -60° to 0° (left), 0° to 60° (right)
- Friction loss: 0.02 Nm
- Hard mechanical stop via
solimplimit
The toe joints are passive (not actuated). The spring stiffness provides ground compliance during stance phase.
Collision Geometry
Capsule-Based Collision
Instead of using complex meshes for collision detection, the model uses efficient capsule primitives:- Body capsules: 0.05 m radius
- Foot capsules: 0.01 m radius
Foot Contact Geometry
Each foot has 5-6 parallel capsules forming a contact surface:- Stable ground contact
- Realistic friction behavior
- Efficient collision detection
- Smooth rolling motion during walking
Contact Exclusions
Adjacent body segments have collision exclusions to prevent self-collision:Sensors
IMU Sensor Suite
A complete IMU is simulated at the pelvis link:- Gyroscope (
imu_ang_vel): 3D angular velocity in body frame - Accelerometer (
imu_lin_vel): 3D linear acceleration - Orientation (
imu_quat): Orientation quaternion (w, x, y, z) - Angular Momentum (
root_angmom): Subtree angular momentum
IMU Placement
The IMU site is positioned at[0.04525, 0, -0.08339] m relative to the pelvis link origin, matching the physical hardware mounting location.
Additional Sensor Sites
Actuators
Actuators are added programmatically via the simulation framework:The XML file does not include
<actuator> tags. Actuators (position, velocity, or torque) are typically configured in the simulation environment code (e.g., Isaac Lab, dm_control) to allow flexible control schemes.Cameras
Two tracking cameras are pre-configured for visualization:Loading and Using the Model
Basic Loading
Setting Initial Configuration
Reading Joint States
Reading Sensor Data
Stepping the Simulation
Model Customization
Modifying Joint Ranges
To change joint limits, edit therange attribute:
Adding Actuators
Add actuator definitions before the</mujoco> closing tag:
Adjusting Contact Parameters
Modify ground friction and contact parameters:Troubleshooting
Model Won’t Load
Error: Cannot find mesh files
Error: Cannot find mesh files
Ensure the The path should be relative to the XML file location.
meshdir in the <compiler> tag points to the correct relative path:Error: Joint limit violation
Error: Joint limit violation
Initial configuration may violate joint limits. Check that
qpos values are within joint ranges.Warning: Contact solver divergence
Warning: Contact solver divergence
Try adjusting solver parameters:
Simulation Instability
- Reduce timestep: Try
model.opt.timestep = 0.001(1 kHz) - Increase solver iterations:
model.opt.iterations = 100 - Check actuator limits: Ensure force limits match hardware specs
- Verify inertial properties: Ensure no near-zero masses or inertias
Performance Optimization
GPU Acceleration
For parallel simulation (RL training), use MuJoCo MJX:Reducing Rendering Overhead
Related Resources
Simulation Overview
Introduction to simulation capabilities and use cases
Hardware Specs
Physical robot specifications and motor details
Motor Details
Motor specifications and actuator information
MuJoCo Docs
Official MuJoCo documentation