Создание объекта фильтра Калмана без запаха для оценки состояния в оперативном режиме
создает незаметный объект фильтра Калмана для оценки состояния в режиме онлайн дискретно-временной нелинейной системы. obj = unscentedKalmanFilter(StateTransitionFcn,MeasurementFcn,InitialState)StateTransitionFcn является функцией, которая вычисляет состояние системы в момент времени k, учитывая вектор состояния в момент времени k-1. MeasurementFcn является функцией, которая вычисляет выходное измерение системы в момент времени k, учитывая состояние в момент времени k. InitialState определяет начальное значение оценок состояния.
После создания объекта используйте correct и predict команды для обновления оценок состояния и значений ковариации ошибок оценки состояния с использованием алгоритма дискретного некачественного фильтра Калмана и данных реального времени.
задает дополнительные атрибуты объекта фильтра Калмана без запаха, используя один или несколько obj = unscentedKalmanFilter(StateTransitionFcn,MeasurementFcn,InitialState,Name,Value)Name,Value аргументы пары.
создает некачественный объект фильтра Калмана с использованием указанных функций перехода и измерения состояния. Перед использованием obj = unscentedKalmanFilter(StateTransitionFcn,MeasurementFcn)predict и correct укажите начальные значения состояния с помощью точечной нотации. Например, для системы с двумя состояниями с начальными значениями состояния [1;0], указать obj.State = [1;0].
задает дополнительные атрибуты объекта фильтра Калмана без запаха, используя один или несколько obj = unscentedKalmanFilter(StateTransitionFcn,MeasurementFcn,Name,Value)Name,Value аргументы пары. Перед использованием predict и correct , укажите начальные значения состояния с помощью Name,Value парные аргументы или точечная нотация.
создает некачественный объект фильтра Калмана со свойствами, заданными с помощью одного или нескольких obj = unscentedKalmanFilter(Name,Value)Name,Value аргументы пары. Перед использованием predict и correct команды, укажите функцию перехода состояния, функцию измерения и начальные значения состояния с помощью Name,Value парные аргументы или точечная нотация.
unscentedKalmanFilter создает объект для оценки оперативного состояния дискретно-временной нелинейной системы с использованием алгоритма дискретно-временного незаметного фильтра Калмана.
Рассмотрим установку со состояниями x, input u, output y, process noise w и measurement noise v. Предположим, что можно представить установку как нелинейную систему.

Алгоритм вычисляет оценки состояния ^ нелинейной системы, используя определенные вами функции перехода состояния и измерения. Программное обеспечение позволяет указать шум в следующих функциях как аддитивный или неаддитивный:
Аддитивные шумовые термины - уравнения перехода и измерений состояния имеют следующий вид:
= h (x [k], um [k]) + v [k]
Здесь f - нелинейная функция перехода состояний, описывающая эволюцию состояний x от одного временного шага к следующему. Нелинейная функция измерения h x к измерениям y на шаге времени k. w и v являются нулевыми средними, некоррелированными шумами процесса и измерения соответственно. Эти функции могут также иметь дополнительные входные аргументы, которые обозначаются us и um в уравнениях. Например, дополнительные аргументы могут быть временным шагом k или вводы u в нелинейную систему. Таких аргументов может быть несколько.
Следует отметить, что шумовые члены в обоих уравнениях являются аддитивными. То есть x(k) линейно связан с технологическим шумом w(k-1), и y(k) линейно связан с шумом измерения v(k).
Неаддитивные условия шума - программное обеспечение также поддерживает более сложные функции перехода состояния и измерения, где состояние x [k] и измерение y [k] являются нелинейными функциями шума процесса и шума измерения соответственно. Когда шумовые члены являются неаддитивными, уравнение перехода состояния и измерений имеет следующий вид:
h (x [k], v [k], um [k])
При выполнении оценки состояния в режиме онлайн сначала создается функция перехода нелинейного состояния f и функция измерения h. Затем вы создадите unscentedKalmanFilter объект, использующий эти нелинейные функции, и указать, являются ли члены шума аддитивными или неаддитивными. После создания объекта используется predict команду для прогнозирования оценок состояния на следующем шаге времени, и correct для коррекции оценок состояния с использованием неописанного алгоритма фильтра Калмана и данных в реальном времени. Сведения об алгоритме см. в разделе Расширенные и незаметные алгоритмы фильтра Калмана для оценки состояния в режиме онлайн.
Можно использовать следующие команды с unscentedKalmanFilter объекты:
| Команда | Описание |
|---|---|
correct | Корректировать ковариацию состояния и ошибки оценки состояния на временном шаге k, используя измеренные данные на временном шаге k. |
predict | Предсказать ковариацию состояния и ошибки оценки состояния во время следующего временного шага. |
residual | Возвращает разницу между фактическими и прогнозируемыми измерениями. |
clone | Создайте другой объект с теми же значениями свойств объекта. Не создавать дополнительные объекты с помощью синтаксиса |
Для unscentedKalmanFilter свойства объекта см. в разделе Свойства.
clone | correct | extendedKalmanFilter | predict | residual