II Всероссийская конференция пользователей MATLAB, 25-26 мая 2004 года >>
На первую страницу
Рубрика Matlab&Toolboxes
Российские MATLAB-разработки
Вход
Раздел "Проектирование систем управления\Control System Toolbox"

Е.В.Никульчев. Пособие "Control System Toolbox"
Фильтр Калмана

  В оглавление книги \ К следующему разделу \ К предыдущему разделу

Пример

В Control System Toolbox существует функции, реализующие непрервный фильтр Калмана:

[kest, L, P, M, Z] = kalman(sys, Qn, Rn, Nn)

и дискретный фильтр Калмана

[kest, L, P] = kalman(sys, Qn, Rn, Nn, sensors, known)

Приведем пример расчета фильтра Калмана для системы с передаточной функцией W(s) = 100/(s2+s+100), Q=1, R=0.01. Текст программы на рис. 4.

sys=ss(tf(100,[1 1 100]));

[A,B,C,D]=ssdata(sys);

P=ss(A, [B B], C, [D D]);

Kest=kalman(P,1,0.01);

t=0:0.001:5;

u=ones(size(t));

w=rand(size(t))*1000^0.5;

v=rаndn(size(t))*10^0.5;

A1=[-1 -6.25 0 0; 16 0 0 0; 0 54 1 -60.2; 0 41.5 16 -41.5]

B1= [2 2 0; 0 0 0; 2 0 17.3; 0 0 13.3];

C1=[0 3.125 0 0; 0 0 0 3.125];

S=ss(A1, B1,C1,0);

u1=[u; w; v]

[y1 y4]= lsim(S, u1', t);

plot(t, y1(:,1),'-b',t,y1(:,2),':b')

Результаты применения фильтра Калмана показаны на рис. 2 и 3. Рисунок 2 иллюстрирует измеренный и точные сигналы, рисунок 3 – график измеренного (зашумленного) и точного значения выхода системы.

Рис. 2.

  В оглавление книги \ К следующему разделу \ К предыдущему разделу


О получении локальных копий сайтов
  Всероссийская научная конференция "Проектирование научных и инженерных приложений в среде MATLAB" (май 2002 г.)
На первую страницу \ Сотрудничество \ MathWorks \ SoftLine \ Exponenta.ru \ Exponenta Pro   
E-mail:    
  Информация на сайте была обновлена 11.05.2004 Copyright 2001-2004 SoftLine Co 
Наши баннеры