Go Down

Topic: Can ADXL335 measure linear aceleration and deceleration in one plane? (Read 1 time) previous topic - next topic


In playing with an Arduino with an ADXL335, I can calibrate the sensor and get readings
as I tilt the board on the X and Y axis.

But... how do I measure acceleration instead of tilt?

Example.  Lay the board flat on a desk. Push it in the X direction... I want to measure the force of the acceleration. Now stop pushing it... I want to measure the force of the deceleration.

If I hook up an serial port and try this, I see no change at all in the X, Y, or Z readings.
If I pick the board up and tilt it... I see changes as I tilt about the X or Y axis.  But where's the force (Luke?) of acceleration in one direction?

Please send help.... :)


My guess is you are not sampling often enough. The "push" you are giving the object lasts for a very short time, especially if it is low in mass, so it really observes an acceleration for a very brief time. When the object is in motion at constant speed, of course, the acceleration is 0.

You can try a "triggered" approach in which your software samples the accelerometer as fast as possible and only starts saving values to an array when it notices a value above some threshold. Then, after the array is filled up, print it to the screen (printing takes a "long" time and will slow down your sampling).

Beat707: MIDI drum machine / sequencer / groove-box for Arduino


Check your connections. What's it reading in the z direction? Can you post the code you're using?


I work with LFN and the BMA180 and the MMA7361 and the ADXCL335 -- earlier.

Just graph the output -- you will see the signals.

The ADXL335 is a 3G accelerometer. For such small changes the BMA180 is a better choice -- down to 1.5 g at  full scale.

Sometimes you have to employ filters because the units all produce some noise.

With the BMA180 you can detect seismic events easily. The MMA7361L needs a little more filtering.

Go Up