Precision Engineering: Autonomous Mars Rover Locomotion System
Locomotion System Architecture
This project explores the design and implementation of a six-wheeled rocker-bogie locomotion system, specifically optimized for high-stability traversal over loose regolith and rocky terrain.
Kinematic Design
The primary challenge in planetary locomotion is maintaining contact with the ground while traversing obstacles up to twice the wheel diameter. The rocker-bogie suspension system provides this capability through a passive mechanical linkage.
The Rocker-Bogie Mechanism
The suspension consists of two main components:
- Rocker: The larger link that pivots on the main chassis.
- Bogie: A smaller link attached to the rocker that carries two wheels.
The pivot point is critical. To maintain stability, the center of mass must remain within the footprint of the wheels. The stability criterion can be expressed as:
$$ \theta_{tip} = \arctan\left(\frac{L_{footprint}}{2 \cdot h_{cm}}\right) $$
where $L_{footprint}$ is the longitudinal distance between wheels and $h_{cm}$ is the height of the center of mass.
Engineering Insight: By utilizing a differential gearing system connecting the left and right rockers, the chassis pitch is averaged between the two sides, significantly reducing the "jolting" experienced by the internal scientific instruments.
Propulsion & Control
Each of the six wheels is equipped with an independent brushless DC (BLDC) motor with a 100:1 planetary gearbox.
Torque Requirements
To climb a $25^\circ$ slope on loose sand, the required torque $T$ per wheel is calculated as:
$$ T = \frac{1}{n} \cdot r \cdot (m \cdot g \cdot \sin(\theta) + F_{rolling}) $$
Where:
- $n$: number of driven wheels (6)
- $r$: wheel radius (0.125m)
- $m$: total rover mass (150kg)
- $\theta$: slope angle ($25^\circ$)
- $F_{rolling}$: rolling resistance force
PID Velocity Control
To ensure synchronized movement and prevent wheel slip (which could lead to "digging in"), each motor utilizes a closed-loop PID controller.
# PID Control Loop Snippet
def update_motor_torque(target_vel, current_vel, dt):
error = target_vel - current_vel
integral += error * dt
derivative = (error - last_error) / dt
output = (Kp * error) + (Ki * integral) + (Kd * derivative)
return clamp(output, -MAX_TORQUE, MAX_TORQUE)
Thermal Management Suite
Mars experiences temperature swings from $-125^\circ\text{C}$ to $20^\circ\text{C}$. The "Warm Electronics Box" (WEB) uses Aerogel insulation and Radioisotope Heater Units (RHUs).
Heat Transfer Analysis
The steady-state heat loss $Q$ through the insulation is:
$$ Q = \frac{k \cdot A \cdot \Delta T}{L} $$
Where $k$ is the thermal conductivity of Aerogel ($\approx 0.013\text{ W/m}\cdot\text{K}$).
Conclusion
This locomotion system represents a balance between mechanical simplicity (passive suspension) and computational complexity (active traction control). Testing in the Atacama desert demonstrated a $94%$ success rate in traversing 0.5m obstacles at speeds of $0.05\text{ m/s}$.
This case study is part of the "PrasadM Engineering Deep Dives" series.
