GY-80: BMP085 + 9-Axis Magnetic Acceleration Gyroscope Module

Hardware

The GY-80 board consists of a BMP085, ADXL345, L3G4200D and a HMC5883L.

Figure 1: GY-80 top
Figure 1: GY-80 top
Figure 2: GY-80 bottom
Figure 2: GY-80 bottom

BMP085

The BMP085 is a digital pressure and temperature sensor. It can  easure from 300 to 1100hPa and  as a pressure resolution of 0.01hPa. It can also measure temperature from 0 to 65°C with a resolution of 0.1°C. With both pressure and temperature readings combined the altitude can be calculated.

ADXL345

The ADXL345 is a 3-axis digital accelerometer. The sensors range is user selectable: ±2G, ±4G, ±8G and ±16G. The sensors bandwidth is also user selectable from 1600Hz to 3.125 Hz.

L3G4200D

The L3G4200D is a three-axis digital gyroscope. It has 3 user selectable scales: 250, 500 and 2000 dps.

HMC5883L

The HMC5883L is a 3-axis digital compass. Its full scale range is ±8 gauss.

Software

Because I want to read all the sensors with 1 Arduino I have chosen to communicate with all the sensors via I²C. After searching I came to the conclusion that I was best off using the Adafruit_sensor, Adafruit_ADXL345, Adafruit_BMP085_Unified and the L3G4200 library. The adafruit libraries can be found on: adafruit github and the L3G4200 can be found on: pololu github. I refer to the github pages of the owners of the libraries because that way you get the most up-to-date libraries and I don’t get in license troubles. I’ve written and combined code to make all the sensors work in one sketch. The code can be found here. The next step is to use the sensors data to control a helicopter.

Leave a Reply

Your e-mail address will not be published. Required fields are marked *