9 June 15
Yesterday we researched how to send and receiver information over I2C in our language of choice, Python. We installed the SMBus and the Adafruit I2C libraries for Python on the Beaglebone Black. We started work on the Python program which will run the magnetometer. A little bit about the Magnetometer from the datasheet:
It has 3 independent axes which represent x,y and z
It is accessed over I2C
It has 12 bits of precision
Read address is at 0x3D,
Write address is 0x3C
It can be set to read from +/- 0.88 Gauss up to +/- 8.1 Gauss
We have chosen to operate in the +/- 1.3 Gauss mode because we don't expect to see more than 0.65 Gauss (the strength of the earth's magnetic field) but we want to be able to read larger values in case we encounter some sort of anomaly. You can find our source code here. The program is called magetometer.py. This morning we received the ribbon cables, and connectors we are planning to use to hook up the sensor board to the Beaglebone, so we will solder those onto the board and make the connector that will plug into the Beaglebone. We selected a 10 wire ribbon cable, and purchased 15 feet of it. We also bought the 2x5 male and female connectors that breakout to the standard protoboard/breadboard 0.1" pins. Finally we bought some header pins which we plan to use to connect the beagle to the ribbon cable, soldering the wires to their assigned pins. The reason we need to do this versus using a regular ribbon connector is because the pins we are going to be using are spaced all over the beagle's pins, so a 2x5 connector will not cover all of them. Instead we will split the ribbons up and solder them onto their respective header pins, then plug the headers into the beagle.
We would also like to finish calibrating the accelerometer and finish programming the magnetometer.
Edit:
The board has now been soldered to the ribbon cable, connections are as follows:
Uart Reserved: (P9_21 & P9_22)
It has 3 independent axes which represent x,y and z
It is accessed over I2C
It has 12 bits of precision
Read address is at 0x3D,
Write address is 0x3C
It can be set to read from +/- 0.88 Gauss up to +/- 8.1 Gauss
We have chosen to operate in the +/- 1.3 Gauss mode because we don't expect to see more than 0.65 Gauss (the strength of the earth's magnetic field) but we want to be able to read larger values in case we encounter some sort of anomaly. You can find our source code here. The program is called magetometer.py. This morning we received the ribbon cables, and connectors we are planning to use to hook up the sensor board to the Beaglebone, so we will solder those onto the board and make the connector that will plug into the Beaglebone. We selected a 10 wire ribbon cable, and purchased 15 feet of it. We also bought the 2x5 male and female connectors that breakout to the standard protoboard/breadboard 0.1" pins. Finally we bought some header pins which we plan to use to connect the beagle to the ribbon cable, soldering the wires to their assigned pins. The reason we need to do this versus using a regular ribbon connector is because the pins we are going to be using are spaced all over the beagle's pins, so a 2x5 connector will not cover all of them. Instead we will split the ribbons up and solder them onto their respective header pins, then plug the headers into the beagle.
We would also like to finish calibrating the accelerometer and finish programming the magnetometer.
Edit:
The board has now been soldered to the ribbon cable, connections are as follows:
Black: | GND | (P9_01) |
White: | 1.8V | (P9_32) |
Grey: | I2C Clock | (P9_19) |
Purple: | Thermistor Voltage | (P9_37) |
Blue: | Accelerometer Z | (P9_40) |
Green: | I2C Data | (P9_20) |
Yellow: | Accelerometer Y | (P9_38) |
Orange: | Pressure Sensor | (P9_39) |
Red: | Accelerometer X | (P9_36) |
Brown: | 3.3V | (P9_03) |
Uart Reserved: (P9_21 & P9_22)
Comments
Post a Comment