Я читал о фильтре Калмана состояния ошибки в нескольких местах, но мне трудно понять концепции. Может кто-нибудь дать пошаговое объяснение концепции этого фильтра? Я, конечно, видел уравнения, но что делает каждое уравнение и почему? Код Matlab ниже предназначен для попытки оценить ориентацию с помощью измерений IMU.
%%Update
y = [acc_x(i); acc_y(i); acc_z(i)]; % IMU measurement
K = P * H' * inv(H * P * H' + R);
delta_x_hat = K * (y - y_hat);
P = (I - K * H) * P * (I - K * H)' + K * R * K';
%%Prediction
% delta_x_hat = F*delta_x_hat; // not necessary according to link below
P = F * P * F' + G * Q * G';
%%Error injection
phi = phi + delta_x_hat(1); // roll
theta = theta + delta_x_hat(2); // pitch
b_b_ars = b_b_ars + delta_x_hat(3:5); // angular rate sensor biases
%%ESKF reset
delta_x_hat = zeros(5,1);
http://www.iri.upc.edu/people/jsola/JoanSola/objectes/notes/kinematics.pdf. Спасибо за любые комментарии!