I´m interested in Learning all about Kalman Filters. So I have had a look at your C-Code. I think I understood the basics about Kalman.
In your code you set the covariance matrix like this
static float P[2][2] = {
{ 1, 0 },
{ 0, 1 },
};
also the measurement noise and the process noise
/*
* R represents the measurement covariance noise. In this case,
* it is a 1x1 matrix that says that we expect 0.3 rad jitter
* from the accelerometer.
*/
static const float R_angle = 0.3;
/*
* Q is a 2x2 matrix that represents the process covariance noise.
* In this case, it indicates how much we trust the acceleromter
* relative to the gyros.
*/
static const float Q_angle = 0.001;
static const float Q_gyro = 0.003;
I have some problems with understanding that. Why these values? How did you get them?
My problem is not understanding the code. I don´t know how to determine these values in my system. Also the state vector and the covariance matrix.
Is there any good tutorial where I get the knowledge of that.
Hope I could tell my problemm clearly.
Thanks
Richard