Jump to content
    

математика фильтра Калмана.

Три блока акселерометров ставлю, так как мне их три прислали :)))

Думаю раз уж есть три источника одной о той же информации, то можно же как то улудшить измеряемую величину.

Гироскопы тоже имеются. Так же три штуки - двухосевые.

Драфт схемы установки находится в приложенном файле.

Жду васших советов, рекомендаций и помощи.

acct1.doc

Share this post


Link to post
Share on other sites

И еще вот, я тут нашел. Вроде то что нужно, но не могли бы вы мне помочь с этим? :(

А то я как то совсем ничего не понял :(

5.4.2.pdf

Example_5.4.pdf

Share this post


Link to post
Share on other sites

Погуглил я книжку GPS, Inertial Navigation and Integration.

Вообщем книжка написана на профессионала в этом деле :(

Я много от туда не понял :(

 

Да она и без исходников :( Если бы еще файлы к ней были, может быть на примерах и понял что к чему.

 

Хотя видел в Интернете GPS, Inertial Navigation and Integration. Second Edition. Оглавление отличается от того, что написано в оглавлении первого издания.

 

ММожет в этой книжке и более понятно радовому пользователю понатно все расписано.

 

Если у кого уже есть второйе изданийе, не поделитесь а?

Плиззззз.

 

П.С. Комы интересно могу выложить файлы исходников от книжки Kalman Filtering Theory And Practice Using Matlab - Second Edition.

Share this post


Link to post
Share on other sites

От исходников бы не отказался :)

 

Вот пожалуйста исходники от книги описанной выше.

Может у кого нибудь есть исходники от книжки Global Positioning System, Inertial navigation and Integration?

 

асколько я понял в моем случае надо воспользоваться Многомерным цифровым фильтром Калмана.

Для этого мне нужно получить:

1) Модель сообщения

2) Модель Наблюдения

3) Априорные данные

4) Уравнение Фильтра Калмана

5) Коеффициент Усиления

6) Апостериорная Матрица Дисперсий

7) Начальные условия

 

Но вот как это все применить для моего случая я не знаю :(

Kalman_Filtering___Theory_and_Practice_using_MATLAB__2nd_Ed.zip

Share this post


Link to post
Share on other sites

Алгоритм получается следующий:

% Accelerometer state vector
  Xa=[ba S1 d12 S2 d13 d23 S3 (FX1-FI1)]';

% State transition matrix
  Fa=I

% Unknown accelerometer biases, normalized to the magnitude of gravity
  ba=[ba1;
    ba2;
    ba3];

% Unknown acceleration-squared nonlinearity for acceleration along the acelerometer input axis
  FI1=[FI11;
     FI12;
     FI13];

% Unknown acceleration-squared nonlinearity for acceleration normal to the acelerometer input axis
  FX1=[FX11;
     FX12;
     FX13];

% Unknown accelerometer scale factor errors
  S1 S2 S3

% Unknown accelerometer axes nonorthogonalities
  d12 d13 d23

% Midpoint components of acceleration in platform coordinates 
  bm^2=[b1^2 0  0;
    0  b2^2 0;
    0  0  b3^2];

  bm=[b1 b2 b3]';

Ha=[b1,b3,b1^2,b1,b2,b1,b3,b2^2,b2,b3,b3^2,(1-b1^2)*b1,(1-b2^2)*b2,(1-b3^2)*b3];

%%%%%%%%%%%%%%
% EKF module %
%%%%%%%%%%%%%%
% Input initial parameters Rk, xa, Za, Ha, FY
% xa=[0 0 0 0 0 0 0 0 0 0 0 0]
Id=[1 0 0 0 0 0 0 0 0 0 0 0;
    0 1 0 0 0 0 0 0 0 0 0 0;
    0 0 1 0 0 0 0 0 0 0 0 0;
    0 0 0 1 0 0 0 0 0 0 0 0;
    0 0 0 0 1 0 0 0 0 0 0 0;
    0 0 0 0 0 1 0 0 0 0 0 0;
    0 0 0 0 0 0 1 0 0 0 0 0;
    0 0 0 0 0 0 0 1 0 0 0 0;
    0 0 0 0 0 0 0 0 1 0 0 0;
    0 0 0 0 0 0 0 0 0 1 0 0;
    0 0 0 0 0 0 0 0 0 0 1 0;
    0 0 0 0 0 0 0 0 0 0 0 1];
% Computing Kalman gain
  Kg = Pk*Ha'*inv(Ha*Pk*Ha'+Rk); %Kg = (Pk*Hk')/(Hk*Pk*Hk'+Rk);

% Computing the predicted measurment
  za = Ha*xa;

% Conditioning the predicted estimate on the measurement 
  Xa = xa + Kg*(Za - za);

% Computing a posteriori covariance matrix for update estimate
  P2k= (Id-Kg*Ha)*Pk;

% Computing the a priori covariance matrix ahead for next time step
  Pk = FY*P2k*FY' + Qk;

% Computing the predicted state estimate
  xaf = (FY*Xa)';

 

Ничего не забыл?

кто разбирается может подскажет а? Нигде не напортачил???

Share this post


Link to post
Share on other sites

Guest pdk

Удалось запустить?

А почему выбран именно EKF? Если верить литературе то UKF лучше работает на нелинейных уравнениях и в реализации проще.

Share this post


Link to post
Share on other sites

Ничего не забыл?

кто разбирается может подскажет а? Нигде не напортачил???

Difference Equation надо давать?

Share this post


Link to post
Share on other sites

Пока запустить не удалось :((

Нашлось несколько ошибочек.

Должно быть вот так:

% Accelerometer state vector
  Xa=[ba' S1 d12 S2 d13 d23 S3 (FX1-FI1)']';

и вот так вот

Ha=[b1,b2,b3,b1^2,b1*b2,b1*b3,b2^2,b2*b3,b3^2,(1-b1^2)*b1,(1-b2^2)*b2,(1-b3^2)*b3]';

 

%Difference equation for the accelerometers
Xa(i)=Fa*Xa(i-1)+wa(i-1)

 

%Accelerometer observation equation
Za(i)=Ha*Xa(i)+Va(i)

 

А как UKF построить?

Share this post


Link to post
Share on other sites

Guest pdk
А как UKF построить?

 

Вот две статьи:

"A New Extension of the Kalman Filter to Nonlinear Systems" Simon J. Julier K. Uhlmann

Введение. Информации достаточно для реализации.

 

"THE SQUARE-ROOT UNSCENTED KALMAN FILTER FOR STATE AND PARAMETER-ESTIMATION" Rudolph van der Merwe and Eric A. Wan

Более эффективная реализация. ( QR + Холецкий )

Похоже что в коде по приведенной выше ссылке именно эта реализация алгоритма.

Julier1997_SPIE_KF.pdf

merwe01a.pdf

Share this post


Link to post
Share on other sites

И еще вот недостающая информация.

The midpoint acceleration error in terms of the unknown accelerometer parameters is given by:
dbm=bm*psi+ba+ha*bm+(bm^2)*(FI1-FX1)+db;
ba - (3x1) vector of unknown accelerometer biases, normalized to the magnitude of gravity
ha - (3x3) matrix
    |S1 d12 d13|
ha= |0  S2  d23|
    |0  0   S3 |
S1,S2,S3 - unknown accelerometer scale factor errors.
d12,d13,d23 - unknown accelerometer axes nonorthogonalities (misalignments)
db - represents other error terms, some of which are observable; for reason of practicality in our example they are not estimated, only compensated with factory calibrated values.
FI1 - (3x1) unknown acceleration-squared nonlinearity for acceleration along the accelerometer input axis
FX1 - (3x1) unknown acceleration-squared nonlinearity for acceleration normal to accelerometer input axis
bm - is a three vector (b1, b2, b3)' of midpoint components of acceleration in platform coordinates
      |b1^2 0    0   |
bm^2= |0    b2^2 0   |
      |0    0    b3^2|

Как мне из всего, что здесь написано сворганить код для фильтра?

Share this post


Link to post
Share on other sites

Здравствуйте. Я новинький на этом сайте и форуме. Но меня заинтересовал ваш разговор. Где вы учитесь и на каких факультетах, или где работаете ? Вот я Калмановскую и Винеровскую фильтрацию изучаю у себя в институте: Киевский авиационный университет, Факультет аэрокосимческих систем управления. С вашего разговора можна понять что вы очень развиты в этой сфере.

Меня вот интересует, все хорошие книги на эту тему можно найти только на английском языке или есть уже перевод. Спасибо.

Share this post


Link to post
Share on other sites

Здравствуйте. Я новинький на этом сайте и форуме. Но меня заинтересовал ваш разговор. Где вы учитесь и на каких факультетах, или где работаете ? Вот я Калмановскую и Винеровскую фильтрацию изучаю у себя в институте: Киевский авиационный университет, Факультет аэрокосимческих систем управления. С вашего разговора можна понять что вы очень развиты в этой сфере.

Меня вот интересует, все хорошие книги на эту тему можно найти только на английском языке или есть уже перевод. Спасибо.

 

Есть книжка "Оптимальное управление движением" В.В. Александров. Много всего интересного и сложного, в том числе о дискретном и непрерывном фильтре Кальмана.

Share this post


Link to post
Share on other sites

Советую почитать книжки: Шахтарин "Случайные процессы в радиотехнике" и Балакришнан "Теория фильтрации Калмана", Пугачёв "Стохастические дифференциальные системы. Анализ и фильтрация"

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...