Предсказание или оценка состояний динамических систем
Фильтрация/адаптивность фильтров
dspadpt3
Используйте блок Фильтр Калмана, чтобы предсказать или оценить состояние динамической системы из ряда неполных и/или шумных измерений. Предположим, что у вас есть шумная линейная система, которая определяется следующими уравнениями:
Этот блок может использовать ранее оцененное состояние, , чтобы предсказать текущее состояние в момент k, , как показано следующим уравнением:
Блок может также использовать измерение тока, и предсказанное состояние, , для оценки значения текущего состояния в момент k, , так что это более точное приближение:
Переменные в предыдущих уравнениях определены в следующей таблице.
Переменная | Определение | Значение по умолчанию или начальное условие |
---|---|---|
x | Государство | Н/Д |
Предполагаемое состояние | zeros([6, 1]) | |
Предсказанное состояние | Н/Д | |
A | Матрица переходов состояний |
|
w | Технологический шум | Н/Д |
z | Измерение | Н/Д |
H | Матрица измерений |
|
v | Измерительный шум | Н/Д |
Предполагаемая ковариация ошибок | 10*eye(6) | |
P- | Предсказанная ковариация ошибок | Н/Д |
Q | Ковариация технологического шума | 0.05*eye(6) |
K | Коэффициент усиления Калмана | Н/Д |
R | Ковариация шума измерения | eye(4) |
I | Тождества матрица | Н/Д |
В предыдущих уравнениях z является вектором значений измерений. Большую часть времени блок обрабатывает Z, матрицу M на N, где M - количество значений измерения, а N - количество фильтров.
Используйте параметр Number of filters, чтобы задать количество фильтров, которые будут использоваться для предсказания или оценки текущего значения.
Используйте параметр Enable filters, чтобы указать, какие фильтры включены или отключены на каждом временном шаге. Если вы выбираете Always
фильтры всегда включены. Если вы выбираете Specify via input port <Enable>
порт Enable появляется на блоке. Входом для этого порта должен быть вектор-строка 1с и 0с, длина которого равна количеству фильтров. Например, если существует 3 фильтра и вход в порт Enable равен [1 0 1], на данном временном шаге активируются только первый и третий фильтры. Если установлен флажок Reset the estimated state and estimated error covariance when filters are disabled, предполагаемое и предсказанное состояния, а также предполагаемая ковариация ошибок, которые соответствуют отключенным фильтрам, сбрасываются на их начальные значения.
Примечание
Все фильтры имеют одинаковую матрицу переходов состояний, матрицу измерений, начальные условия и шумовую ковариацию, но их состояние, измерение, включение и сигналы MSE являются уникальными. В пределах состояния, измерения, включения и сигналов MSE каждый столбец соответствует фильтру.
Используйте параметр Measurement matrix source, чтобы задать, как ввести значения матрицы измерений. Если вы выбираете Specify via dialog
параметр Measurement matrix появляется в диалоговом окне. Если вы выбираете Input port <H>
Порт H появляется на блоке. Используйте этот порт, чтобы задать матрицу измерений.
Пример Radar Tracking демонстрирует, как использовать этот блок. Вы можете открыть этот пример, введя
aero_radmod_dsp
в MATLAB® командная строка.
Задайте количество фильтров, которые будут использоваться для предсказания или оценки текущего значения.
Укажите, какие фильтры будут включены или отключены на каждом временном шаге. Если вы выбираете Always
фильтры всегда включены. Если вы выбираете Specify via input port <Enable>
порт Enable появляется на блоке.
Если вы выбираете этот флажок, предполагаемое и предсказанное состояния, а также предполагаемая ковариация ошибок, которые соответствуют отключенным фильтрам, сбрасываются на их начальные значения. Этот параметр видим, если для параметра Enable filters вы выбираете Specify via input port <Enable>
.
Введите начальное условие для предполагаемого состояния.
Введите начальное условие для предполагаемой ковариации ошибок.
Введите матрицу переходов между состояниями.
Введите ковариацию шума процесса.
Задайте, как ввести значения матрицы измерений. Если вы выбираете Specify via dialog
параметр Measurement matrix появляется в диалоговом окне. Если вы выбираете Input port <H>
Порт H появляется на блоке.
Введите значения матрицы измерений. Этот параметр видим, если вы выбираете Specify via dialog
для параметра Measurement matrix source.
Введите ковариацию шума измерения.
Установите этот флажок, если необходимо, чтобы блок выводил предполагаемое измерение.
Установите этот флажок, если необходимо, чтобы блок выводил предполагаемое состояние.
Установите этот флажок, если вы хотите, чтобы блок выводил среднюю квадратную ошибку предполагаемого состояния.
Установите этот флажок, если необходимо, чтобы блок выводил предсказанное измерение.
Установите этот флажок, если необходимо, чтобы блок выводил предсказанное состояние.
Установите этот флажок, если вы хотите, чтобы блок выводил среднюю квадратную ошибку предсказанного состояния.
[1] Хайкин, Симон. Теория адаптивных фильтров. Upper Saddle River, NJ: Prentice Hall, 1996.
[2] Welch, Greg and Gary Bishop, «An Introduction to the Фильтр Калмана», TR 95-041, Департамент компьютерных наук, Университет Северной Каролины.
Порт | Ввод/вывод | Поддерживаемые типы данных |
---|---|---|
Z | Измерение M-на-N, где M - длина вектора измерения, а N - количество фильтров. |
|
Позволить | 1-by-N вектор 1с и 0с, где N - количество фильтров. |
|
H | M-на-P матрица измерения, где M - длина вектора измерения, а P - длина векторов состояния фильтра. | То же, что и порт Z |
Z_est | M-на-N оцененная матрица измерения, где M - длина вектора измерения, а N - количество фильтров. | То же, что и порт Z |
X_est | P-на-N оцененная матрица состояний, где P - длина векторов состояния фильтра, а N - количество фильтров. | То же, что и порт Z |
MSE_est | 1-by-N вектор, который представляет среднюю квадратную ошибку оцененного состояния. N - количество фильтров. | То же, что и порт Z |
Z_prd | M-на-N предсказанная матрица измерения, где M - длина вектора измерения, а N - количество фильтров. | То же, что и порт Z |
X_prd | P-на-N предсказанная матрица состояний, где P - длина векторов состояния фильтра, а N - количество фильтров. | То же, что и порт Z |
MSE_prd | 1-by-N вектор, который представляет среднюю квадратную ошибку предсказанного состояния. N - количество фильтров. | То же, что и порт Z |
LDL Solver | DSP System Toolbox |