I hope this stack is the right place for this question. I have an accelerometer mounted securely on a swaying object -lets say a stick or pole- this object is swinging back and forth in small angles (+- 20) with a frequency of about 2-3 times a second. Im using the accelerometer output to calculate the tilt of the object, however since the frequency of the swings is relatively high the accelerometer readings are very high as well, and not reliable for calculating the tilt.

from my research i have seen that accelerometers work best in a stable environment. Is there any way to improve the reliability of my accelerometer output in this setup?

  • Is the pole tilt the value, which you want to measure? Or could be the accelerometer placed on some base, where the pole is attached, measure the tilt of the base and have another sensor (like potentiometer) set to measure the tilt between the base and the pole? – gilhad Jan 10 '17 at 16:26
  • 3
    You will probably need to model the physics of the system, establish what can be known (for example, length of the stick) and characterize the cause of the oscillation, (restoring force, stiffness, etc). Then you need to consider the time-domain performance of the accelerometer. From that you can probably get enough information about what is actually happening to fit your model in real time, and from that deduce the angle. Or you could measure it externally. At any rate, this is not an Arduino question - first it is an issue of definition, then physics, finally more general engineering. – Chris Stratton Jan 10 '17 at 19:23
  • 2
    Use a faster output accelerometer? I'm regularly using ones with 2 kHz or faster output rates. – Andrew Apr 11 '17 at 15:10
  • @andrew That actually did help improve accuracy – TanyaV Apr 12 '17 at 16:10
  • 4
    I'm voting to close this old abandoned question as off-topic because it is about physics, not Arduino – Chris Stratton Jan 7 '18 at 17:27

A few things to consider.

First. An accelerometer isn't that great here. Low output frequency is one issue. Noise is another. A pot or an optical encoder would be better.

Secondly. Even if output frequency isn't an issue. You will need some sophisticated math to reconstruct the instantaneous tilt, as the measurements are essentially a sine function, but with an acceleration away from the center of the rotation. Getting to the max tilt is easier mathematically.

Just for starters.

Not the answer you're looking for? Browse other questions tagged or ask your own question.