This balancing robot was built for a senior ME robotics class.  The project was intended to be simple and make use of the extruded aluminum and servo kits.  I had previously purchased an Evolution Robotics ER1 kit that we intended to use, but decided that it would be more interesting to build the mechanical system from scratch for the final project. So we made something completely different from the rest of the class, and built a balancing robot out of material that I had lying around.  The professors expressed that they were impressed that the robot successfully balanced, and of the complexity of this robot compared to the other projects.

The robot balances on two wheels, relying on the inverted pendulum dynamics.  Since there were no funds available for the project, a cheap potentiometer was used as the main sensor, instead of a much more expensive gyro and accelerometer.  The potentiometer mounted under the robot, and a feeler attached to the potentiometer sensed the angle of the robot relative to the ground.  The balance control algorithms were the most complex part of the project.

For references, please contact:

Harvey Lipkin, PhD
AssociateProfessor Automation and Mechatronics
The Woodruff School of Mechanical Engineering
Georgia Institute of Technology

Documents:

Final Report
Computer Models
Balancing Matlab (Simulink) Model
Inverted Pendulum Matlab Model
 
Links
Balancing Robot Sites
Surplus Sites
Motors
Sensors (gyro/accelerometer)