В этом примере показано, как использовать Фильтр Калмана, чтобы оценить положение самолета и скорость от шумных радарных измерений.
Модель в качестве примера имеет три основных функции. Это генерирует положение самолета, скорость и ускорение в полярных (переносящих область значений) координатах; это добавляет шум измерения, чтобы симулировать неточные показания датчиком; и это использует Фильтр Калмана, чтобы оценить положение и скорость от шумных измерений.
Запустите модель. В конце симуляции фигура отображает следующую информацию:
- Фактическая траектория по сравнению с предполагаемой траекторией
- Предполагаемая невязка для области значений
- Фактические, измеренные, и оцененные положения в X (Между севером и югом) и Y (восток - запад)
Оценка положения и скорости самолета выполняется 'Радарной подсистемой' Фильтра Калмана. Эта подсистема производит шумные измерения, преобразует их в прямоугольные координаты и отправляет их, как введено в блок DSP System Toolbox™ Kalman Filter.
Блок Kalman Filter производит два выходных параметров в этом приложении. Первой является оценка фактического положения. Этот выход преобразован назад в полярные координаты, таким образом, это может быть по сравнению с измерением, чтобы произвести невязку, различие между оценкой и измерением. Блок Kalman Filter сглаживает измеренные данные о положении, чтобы произвести его оценку фактического положения.
Второй выход от блока Kalman Filter является оценкой состояния самолета. В этом случае состояние состоит из четырех чисел, которые представляют положение и скорость в координатах X и Y.
Кладка блоков Фильтра Калмана лучше всего, когда это имеет точную оценку положения и скорости самолета, но данное время это может компенсировать плохую первоначальную оценку. Чтобы видеть это, измените запись для Начального условия для предполагаемого параметра состояния в Фильтре Калмана. Правильное значение начальной скорости в направлении Y 400. Попытайтесь изменить оценку в 100 и запустите модель снова.
Заметьте, что невязка области значений намного больше, и 'оценка' Положения E-W неточна сначала. Постепенно, невязка становится меньшей, и положение становится более точным, когда больше измерений собрано.
В существующей модели шум, добавленный к оценке области значений, скорее мал по сравнению с окончательной областью значений. Максимальная величина шума составляет 300 футов, по сравнению с максимальной областью значений 40 000 футов. Попытайтесь увеличить величину шума области значений к большему значению, например, 5 раз эта сумма или 1 500 футов путем изменения первого компонента параметра Усиления в 'Meas. Шумовая Интенсивность' блок Gain.
Заметьте, что синие линии, представляющие предполагаемые положения, переместились дальше от красных линий, представляющих фактические положения, и кривые стали намного более 'ухабистыми' и 'зубчатыми'. Мы можем частично компенсировать погрешность путем предоставления блоку Kalman Filter лучшей оценки шума измерения. Попытайтесь установить параметр ковариации шума Измерения блока Kalman Filter к 1 500 и запустите модель снова.
Заметьте, что, когда оценка шума измерения лучше, E-W и оценочные кривые положения N-S становятся более сглаженными. Кривая положения N-S теперь последовательно недооценивает положение. Учитывая то, как шумный измерения сравниваются со значением координаты N-S, это - ожидаемое поведение.
Пример Simulink® 'sldemo_radar_eml' использует ту же начальную симуляцию целевого движения и выполняет отслеживание с помощью расширенного Фильтра Калмана, реализованного с помощью блока MATLAB function.