SELF-BALANCING ROBOT
Design, rapid prototyping, and closed-loop PID control of a two-wheeled inverted pendulum robot.
Explore other projects ↗
THE CHALLENGE
Designing and building an autonomous two-wheeled robot capable of maintaining vertical equilibrium in real time. The core challenge was integrating hardware design with real-time sensor processing and dynamic motor control to prevent tipping under continuous angular disturbances.

HOW
Mechanical Design & Prototyping:
Modeled the multi-tier chassis in Siemens NX and laser-cut the structure from lightweight plywood (triplex), assembled with threaded rods and hex hardware.
Positioned the heavy battery pack at the top tier to elevate the center of gravity, increasing the moment of inertia for more controllable corrective response.
Electronics & Embedded Architecture:
Integrated an Arduino Nano 33 BLE (equipped with an onboard 6-axis IMU: accelerometer + gyroscope) and a dual H-bridge motor driver to control two independent DC motors.
Sensor Fusion & PID Control:
Developed embedded firmware in Arduino C++ to acquire IMU data and apply sensor filtering for accurate tilt-angle estimation.
Implemented and tuned a closed-loop PID control algorithm to dynamically modulate motor direction and PWM speed for balance correction.
Data Acquisition & Analysis (MATLAB):
Streamed real-time IMU telemetric data to MATLAB to log, visualize, and analyze transient angle responses during PID gain tuning.
PORTFOLIO
© 2026