Go Down

Topic: Natural error in accelerometer measurements? (Read 872 times) previous topic - next topic

Seán

Hello,

I was speaking with someone over the weekend who was telling me that when you integrate the measurements from an accelerometer, over time, you can get an error in the readings. And, I imagne, given a long enough time, the error will get larger and larger.

I am afriad he wasn't really able to explain why this was so.

Is this correct? And, if it is, what causes it? Also, I guess, is there a way to factor out the error?

Thanks.

Seán
Ná bac le mac an bhacaigh is ní bhacfaidh mac an bhacaigh leat.

johnwasser

If you integrate acceleration over time to get velocity you will also be integrating any offset or other error such as rounding or precision.  Also remember that the readings you are getting are instantaneous values for a continuous process.  The value represents the current acceleration, not the average acceleration sine the last reading so if the acceleration is changing, using the current value as the average for the last time period will introduce errors.

Of course if the accelerometer is not in a fixed orientation relative to the local gravity you can't tell if the acceleration you are reading is due to change in velocity or due to gravity.
Send Bitcoin tips to: 1L3CTDoTgrXNA5WyF77uWqt4gUdye9mezN
Send Litecoin tips to : LVtpaq6JgJAZwvnVq3ftVeHafWkcpmuR1e

Seán

Ah yes, of course, that makes sense! Thanks.

So, is there any way to avoid these errors, or at least, limit their effects? I assume using as accurate a number as possible for acceleration will help.

Seán
Ná bac le mac an bhacaigh is ní bhacfaidh mac an bhacaigh leat.

johnwasser

Certainly having as much accuracy and precision as you can get will help.  You can try characterizing the errors and calculating the accumulated error so you can correct for it.  What is it you are trying to find the velocity of?  Perhaps there is a different sensor that will work better.
Send Bitcoin tips to: 1L3CTDoTgrXNA5WyF77uWqt4gUdye9mezN
Send Litecoin tips to : LVtpaq6JgJAZwvnVq3ftVeHafWkcpmuR1e

Seán

Hey,

Thanks for the replies!

It will mainly be walking speeds. Nothing too fast.

I was wondering was there some sort of common mode rejection system.

Seán
Ná bac le mac an bhacaigh is ní bhacfaidh mac an bhacaigh leat.

liudr


Ah yes, of course, that makes sense! Thanks.

So, is there any way to avoid these errors, or at least, limit their effects? I assume using as accurate a number as possible for acceleration will help.

Seán


Using running average can reduce some error from random noise but won't get rid off the offset. Say if your accelerometer reads 0.1m/s/s where there is no acceleration, then over the course of 1 minute, you will be about 6m/s off on your velocity. I don't know of any way to eliminate this. If you flip the x axis and measure acceleration again and you may find out the offset and reduce it. If you have gravity involved with an accelerometer, accelerating while maintaining a tilt of the accelerometer may be even more problematic.

Seán

Well, as long as there is no real way to get shot of the errors, bar trying to reduce the places where they can occur, that's fine.

Thanks for the help.

Can I ask another question? Offset was mentioned a few times. What offset is this? Is it one thing in particular that will cause it? I'm just wondering.

Thanks again.

Seán
Ná bac le mac an bhacaigh is ní bhacfaidh mac an bhacaigh leat.

AWOL

"offset" is usually any DC component, like gravity.
"Pete, it's a fool looks for logic in the chambers of the human heart." Ulysses Everett McGill.
Do not send technical questions via personal messaging - they will be ignored.

Seán

Ahh, ok! I should have been able to figure that out form studying DSP  :smiley-red:

Oh well.

Thanks again.

Seán
Ná bac le mac an bhacaigh is ní bhacfaidh mac an bhacaigh leat.

MarkT

Incidentally if you measure the drift you can correct for it to a precision greater than 1 LSB.  Just measure the drift in some convenient time period (a minute, whatever), work out how long it takes on average to drift by one LSB and subtract that LSB at that frequency from your integrated value.  You might find frequent re-calibration is needed for this to work well, but I've used this sort of thing with MEMS gyros which are rate-gyros and so need integrating to obtain orientation - can reduce the angular drift noticeably.
[ I won't respond to messages, use the forum please ]

Seán

Thanks for the tip!

I will keep it in mind when I am testing.

Seán
Ná bac le mac an bhacaigh is ní bhacfaidh mac an bhacaigh leat.

Go Up