Download presentation
Presentation is loading. Please wait.
1
Acquiring Data from an ADXL335 Accelerometer
living with the lab Acquiring Data from an ADXL335 Accelerometer DIGIKEY DKSB1002A Evaluation Board 3-axis accelerometer Arduino Uno microcontroller board
2
DKSB1002A Evaluation Board and ADXL335 Accelerometer
living with the lab DKSB1002A Evaluation Board and ADXL335 Accelerometer DKSB1002A is a prototyping board purchased for $20 from Digikey Screw holes for mounting board onto “object of interest” Board is ~ 20mm square ADXL335 3-axis accelerometer chip 3-axis ±3g this small chip is the ADXL335 accelerometer (this is an older model they are even smaller now) COM - ground VSS - power (we will provide 5V) X acceleration in x-direction Y - acceleration in y-direction Z acceleration in z-direction z x y the DKSB1002A is a board used to evaluate the accelerometer; if you were putting an accelerometer in a device like a cell phone, you would only use the ADXL335 chip (and maybe some capacitors)
3
Implementing a 3-axis Accelerometer: Wiring to Arduino
living with the lab Implementing a 3-axis Accelerometer: Wiring to Arduino COM - ground VSS - power (we will provide 5V) X acceleration in x-direction Y acceleration in y-direction Z acceleration in z-direction
4
Programming living with the lab associates a time with
void setup() { Serial.begin(9600); } void loop() int xaccel = analogRead(0); int yaccel = analogRead(1); int zaccel = analogRead(2); unsigned long timevar = millis(); Serial.print(timevar); Serial.print(" "); Serial.print(xaccel); Serial.print(" "); Serial.print(yaccel); Serial.println(zaccel); associates a time with each set of accelerations
5
living with the lab Calibration x y z
6
Angle Measurement z x y θx = asin(ax/g) living with the lab +x qx ax
1g (perceived vertical acceleration) ax qx +x θx = asin(ax/g) Angle Measurement x y z
7
living with the lab Example Application The piezospeaker below outputs a frequency that varies with the acceleration in the x-direction. The equation for computing the frequency is chosen so that the device makes an audible noise that varies when rotating or shaking the device. void setup(){Serial.begin(9600); } void loop() { int xaccel = analogRead(0); int freq = 1500+xaccel*2; tone(7,freq); Serial.print(xaccel); Serial.print(" "); Serial.println(freq); }
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.