This weeks Goal:
Take the first steps in building a planer Inertial Measurement Unit (IMU). This includes interfacing a two axis accelerometer and rate gyro to a microprocessor and shuttling the data to a visualization.


Kalman Filtering:
State estimation is super cool! This project is a great excuse to finally use it. The Kalman filter is great for estimating linear systems from multiple sensor inputs that contain Gaussian noise - for example - an IMU. Here are a couple of great links I found on the subject:
http://tom.pycke.be/mav/71/kalman-filtering-of-imu-data
http://academic.csuohio.edu/simond/courses/eec644/kalman.pdf



The Hardware:
The hardware shown includes a ATMEGA128, Accelerometer / Gyro, FTDI USB to serial board and a couple of high current H bridges. The H bridges are not needed now but will be used on the balancing robot I want to build.



Python Interface:
Finally learned Tkinter which is used for the little test app show below. The rate gyro is sampled and integrated (shown in red). The two accelerometers are also sampled and fed into some trig to find an estimate of the orientation (green sliver). These accelerometers are tuned to sense static acceleration - gravity.



imuTest.py