Go Down

Topic: Modern day Carpenters Level (Read 1 time) previous topic - next topic


What is the angular precision in degrees that a cheap Accelerometer can measure the gravity vector with no movement?  Which IC is best for this purpose?  It's OK to average readings since the requirement is not fast.  Can we do a comparison of different IC's?  Does it matter if the X-axis is pointed straight up?  In this case using which axis sensor would be most precise (in degrees) X or Y?  Would it be more precise (degrees) if X,Y,Z were all about 45 degrees from up?  How can we calibrate this using a level surface to increase accuracy?  Seems all we have to do is move the sensor to minimize/maximize readings?


Using a digital accelerometer is the easiest way to get a high accuracy. And I2C would be good choice.

The MEMS sensor have noise. So some kind of averaging is needed.
The MEMS sensor also have offset. Calibration is needed. I think tilting it in all directions is not enough. The gain could be different for the axis. A calibration with a spirit level is perhaps needed only once. However I don't know if the offset depends on the temperature.

I think a noise reduction technique is to use 4 sensors to reduce the noise by two.

Could you try a phone or tablet with a 'level' app ? To see if that is the accuracy you want ? I don't know which sensor chip my tablet uses, but it can be used as an accurate level.

The sensor chips are becoming more accurate. However, the manufactures tell about the number of bits, but don't tell what kind of noise is normal.


Tilting the sensor until the reading is maximum is an accurate way to find which was is up.  Precision is the question and problem that I want to reduce.  Can it sense 1 degree change?  1 degree change when it's oriented at a 45 degree angle from vertical is easy.  1 degree change when the X-axis is pointed straight up is harder.  The magnitude change is smaller.  Maybe 2 sets of XYZ are needed?  X pointed straight up to find which way is up by maximizing.  Or minimizing Y,Z.  45 degree angles for more precision?


I can see I will need to calibrate it because the orientation of the sensor may not line up perfectly with the table.  In this case I think X,Y,Z like an upside down pyramid will give me the most precision.  There is no need for an axis going straight up, unless I can assume it is aligned perfectly with the table.  Which is not the case.  Unless I can adjust this mechanically?


From what I remember reading about this, the technique works best when using an accelerometer measuring lateral acceleration rather than vertical, and I was impressed by the angular sensitivities being claimed. Of course, it does have to be stationary in order to work at all.


Did you look at what's available now?
An example:

"The Husky 9 in. Digital Level features an easy-to-read digital display and comes with a storage bag. The level is accurate to 1/10 of a degree, even when used upside down. The level sounds an audible beep at 0 degrees, 45 degrees, 90 degrees and at your last memorized angle for easy measuring."
Designing & building electrical circuits for over 25 years.  Screw Shield for Mega/Due/Uno,  Bobuino with ATMega1284P, & other '328P & '1284P creations & offerings at  my website.


When you use all 3 axis, I doubt if using it at 45 degrees would increase the sensitivity for MEMS sensors. But that is just a feeling I have.
An accuracy of 0.1 degrees should be possible with a modern accelerometer.

Go Up