The Quadcopter Shield
Shields are boards that can be plugged on top of the Arduino PCB extending its capabilities. I have created an IMU shield that allows me to integrate the IMU functionality of the quadcopter cleanly and easily by piggybacking it into my Uno board. This will prevent loose wires on the Quadcopter.
I have used an Arduino Protoshield Kit as the basis for the project. The Protoshield Kit provides a small soldering area, two general LEDs, access to a BlueSMiRF socket, a general pushbutton switch, and the Arduino reset switch is brought to the top level.
Now that I have finished testing my IMU implementation, I can use this shield to integrate all of the external components with my arduino to make a complete flight controller. The Quadcopter Shield interfaces the Arduino board to the external components including the motor speed controllers and the IMU.
The ArduIMU board mounts in the center of the Protoshield and the necessary pins are connected to the headers on the outside of the board which connect to the main Arduino board. There is a set of coloured wires that connect the receiver signals (Throttle, Roll, Pitch, and Yaw) to the flight controller as well as power and ground.
The IMU communicates with the flight controller board via I2C, sending messages whenever new sensor data is available. The blue and green wire (unseen on underside) connect directly to SCL and SDA of the I2C bus on the Uno board. These pins are present on the Uno board header but, for some reason, are not included on the Protoshield header. I have removed the barrel connector so that I can directly power the board via the battery.
Here is a photo of the shield wired in and ready to go.
And finally with the frame top on and battery mounted.