PROJECT ELEVEN

Building an Intelligent Quadruped Robot through Reinforcement Learning

By Sameerjeet Chhabra (Arizona State University)

Project Eleven Final Vision

Final Vision: Quadruped Robot

Robot Motion Demo 1 Robot Motion Demo 2

Current Workflow

🔧

SolidWorks

CAD Design

📐

URDF

Robot Format

🔄

MuJoCo XML

Simulation Format

⚙️

MuJoCo

Physics Sim

Detailed Workflow Documentation

Step 1

CAD Design in SolidWorks

Designed individual components for the bipedal prototype:

Key Technique - Independent Mirror Parts:
For mirrored components that need independent axes and references:
  1. Open the original part
  2. Select a face or plane for mirroring
  3. Go to Insert → Mirror Part
  4. Choose features/body to mirror
  5. Select "Break link to original part" under Link options
  6. Click OK to create a distinct, editable copy
This creates a new part file that can be modified independently without affecting the source part.
SolidWorks CAD Assembly
Step 2

URDF Conversion with SW2URDF

Converted SolidWorks assembly to URDF format using the SW2URDF exporter:

Configuration Requirements:
  • Define the base link (root of kinematic tree)
  • Configure all links in hierarchical order
  • Set up joints between connected links
  • Verify coordinate frames and joint axes
Output: A working URDF file with complete robot description
URDF Model Export
Step 3

MuJoCo XML Compilation

Used MuJoCo's built-in compiler to convert URDF to MuJoCo XML format:

compile Assembly_2legs/urdf/Assembly_2legs.urdf Assembly_2legs/urdf/Assembly_2legs.xml
Compiler Location:
The compile application is found in MuJoCo's bin directory:
C:\Users\[username]\mujoco-3.3.2-windows-x86_64\bin\compile.exe

Result: A MuJoCo-ready XML file with the complete kinematic tree preserved
MuJoCo XML Model
Step 4

MuJoCo Configuration & Simulation

With the XML file ready, you can now customize the simulation parameters:

⚙️ Actuators

Apply motors to joints for control

🔧 Joint Limits

Set realistic motion constraints

🎚️ Stiffness

Configure joint stiffness values

📉 Damping

Add damping for realistic motion

Status: Kinematic tree complete and ready for physics simulation!
The model can now be loaded into MuJoCo for testing, visualization, and eventually reinforcement learning training.

Sensor Integration: Added sensor sites to the XML file to capture real-time data during simulation. These sensors track joint positions, velocities, and forces, providing valuable feedback for analyzing gait patterns and robot behavior.
MuJoCo Simulation 1 MuJoCo Simulation 2

📊 Sensor Data Analysis

Real-time sensor readings during gait pattern execution showing joint angles, velocities, and contact forces

Sensor Values Graph

Project Phases

01

Design & Simulation

Designing robot components in SolidWorks and converting to MuJoCo format. Currently focusing on 2-leg analysis for learning and understanding the complete workflow.

🔴 ACTIVE
2-leg design image
02

Control Systems

Implementing control systems to achieve bipedal locomotion. Testing stability and gait patterns with the 2-leg prototype.

⚡ UPCOMING
Control demo video
03

Reinforcement Learning

Training the robot using RL algorithms in MuJoCo. Optimizing for agile and intelligent movement patterns.

⚡ UPCOMING
Training visualization
04

Final Assembly

Scaling to full quadruped (4-leg) version or optimizing the bipedal design based on results. Final integration and testing.

⚡ UPCOMING
Final robot render

Technology Stack

Python MuJoCo SolidWorks URDF Reinforcement Learning Control Systems Physics Simulation

Project Files & Resources

Download the complete project files to explore or replicate the workflow

📦

SolidWorks Assembly

2-leg CAD assembly file

.ZIP
🤖

URDF File

Robot description format with kinematic tree

.URDF
📄

MuJoCo XML

Compiled simulation model with sensor sites

.XML
📓

Jupyter Notebook

Python code for MuJoCo simulation and analysis

.IPYNB

📚 How to Use These Files: