MuJoCo - A2R-Lab/indy7-sdk GitHub Wiki

The MujocoSimNode is a ROS2 node that provides a physics-based simulation environment for the Indy7 robot using the MuJoCo physics engine. It includes real-time visualization, physics simulation, and ROS2 interface integration.

Core Features

Physics Simulation

  • MuJoCo-based physics engine running at 100Hz
  • Torque control or position control with configurable gains
  • Gravity compensation (currently disabled for testing)
  • Forward dynamics computation using MuJoCo's solver

Visualization

  • Real-time 3D rendering using GLFW
  • Interactive camera controls with keyboard and mouse

ROS2 Integration

  • Publishes joint states at simulation frequency
  • Subscribes to joint commands for position control
  • Uses simulated clock for time synchronization

Future TODOs

  • Move simulation parameters to launch files:
    • Simulation timestep
    • Initial joint positions
    • Control gains
  • YAML configuration for robot parameters
  • Enable/configure gravity compensation
  • Trajectory visualization
  • Display force/torque vectors
  • Show coordinate frames
  • Add GUI elements for parameter tuning
  • Implement recording/playback functionality

Model Requirements

  • XML model file must be located at: indy7-control/src/mujoco_sim/models/indy7.xml
  • Model must include appropriate actuator definitions
  • Joint limits should be properly configured