The Cube
This project was inspired by a robotic controls engineering project created by Mohanarajah Gajamohan, a robotics researcher at ETH Zurich. The goal of this project was to create a self-balancing metal cube that could balance on an edge.
To ensure robustness, we designed a cube frame capable of withstanding heavy impacts while allowing for easy assembly and maintenance.
Using precise tools like the waterjet, mill, and lathe, we ensured tight tolerances to maintain structural integrity.
Integration involved powering the system, using Arduino Nano PWM outputs, and processing IMU readings for PID tuning.
We combined the Ziegler-Nichols method and guess-and-check to tune PID values for balancing.
Drift was mitigated using startup calibration and the Madgwick filter for real-time pitch corrections.
The firmware programmed the Arduino Nano to handle IMU data, implement PID corrections, and control the flywheel motor.