Перейти к содержанию
    

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

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

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

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

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

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

acct1.doc

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

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

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

5.4.2.pdf

Example_5.4.pdf

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

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

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

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

 

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

 

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

 

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

 

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

Плиззззз.

 

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

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

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

 

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

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

 

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

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

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

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

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

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

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

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

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

 

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

Kalman_Filtering___Theory_and_Practice_using_MATLAB__2nd_Ed.zip

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

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

% 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)';

 

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

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

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Гость pdk

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

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

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

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

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

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

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

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

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

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

% 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 построить?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Гость 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

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

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

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|

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

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

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

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

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

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

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

 

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

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

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

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...