Created 19 Feb 2006 at 11:38 UTC by Calv, last modified 19 Feb 2006 at 11:58 UTC by Calv.
Notes:
Balancing robot using:
- AVR Mega8
- 2x AVR Tiny26
- 3x7.2V accupack
- QMC motors with planetary transfer and decoders
- gyroscope
- ADXL202 acceleration measurement IC
- full H-bridge based on TIP41C en TIP42C transistors
The combination of the different modules electronically is
very straight forward. Both gyro and accelerometer have
digital outputs with pulse width modulation. No electronic
signal conditioning is necessary.
The software is developed in BASCOM.
The encoders give about 30.000 pulses per rotation. Speed
measurement is therefore done separately by a Tiny26 to
ensure stable timing on the Mega8. The control loop needs
to be run at a fixed time interval. No interrupts can be
accepted. The encoders have a A and B output, which make
the speed and direction measurements simple. The data is
transferred serial to the Mega8.
The acceleration measurement is done with a ADXL202. The
connection of the IC is very simple. I use the digital
output of the IC.
The measurement of the angle speed is done with a
gyroscope. I use a standard gyroscope used in model planes
and helicopters.
The angle speed measurement and the acceleration
measurement are combined to determine the angle the robot
makes with the floor. Both measurements are needed for a
few reasons:
- The gyroscope suffers from drift. Even a small drift can
cause high deviations when the signal is integrated for a
longer time.
- The acceleration measurement is influenced by horizontal
acceleration of the robot.
Look on the website for some movies including balancing on
a hill!
Description: Two wheel balancing robot
This project has the following developers:
- Calv is a Lead Developer.

del.icio.us
Digg
Google bookmark
reddit
Simpy
StumbleUpon
Furl
Newsvine
Technorati
Tailrank