Generic Kalman filter ?

Hi,

I want to process a variety of data that tends to be quite noisy and fluctuates a lot, the data is coming from a number of sensors including pressure transducers, accelerometers and gyros.

Some background reading indicates that the best way to do this is with a kalman filter http://en.wikipedia.org/wiki/Kalman_filter

Is there a generic kalman filter available? - the maths I've seen so far seems quite hideous, so I'm hoping there's and off-the-shelf library I can use.

Thanks

If you're trying to stabilise accelerometer and gyro data, look up the complementary filter, it's a trillion times simpler and seems to work pretty damn well.

Is there a generic kalman filter available?

Not that I know of.

the maths I've seen so far seems quite hideous

Well the constant definitions are but the actual arithmetic is not. However it is floating point and is of limited use on an arduino because the sample rate you can achieve is going to be limited.

so I'm hoping there's and off-the-shelf library I can use.

That won't make it run any faster.

look up the complementary filter

Thanks for the tip, not heard of this before. Interesting reading.

That won't make it run any faster.

Not sure I follow your meaning, I'm trying to stabilise the values, not speed anything up.

Thanks

I recall finding some code with a Kalman filter, for one or the motion sensors, possibly the MPU9150 or the MPU6050 But I can't track it down right now, I will see if I can find it on my PC.

Re stabilisation

You could look at the open source code for some of the drone e.g quad or hex copters eg DIYDrones, it will have stabilization in it

However mike has a good point, as I have found issues with processing motion sensor data because the double data type on most arduino boards is actually single precision But for stabilization this is usually adequate