Extended Kalman Filter

Оцените состояния дискретного времени нелинейная система с помощью расширенного Фильтра Калмана

  • Библиотека:
  • Control System Toolbox / Оценка состояния

    System Identification Toolbox / средства оценки

  • ekf_block

Описание

Блок Extended Kalman Filter оценивает состояния дискретного времени, нелинейная система с помощью дискретного времени первого порядка расширила алгоритм Фильтра Калмана.

Считайте объект с состояниями x, входом u, выходом y, шум процесса w и шум измерения v. Примите, что можно представлять объект как нелинейную систему.

Используя функции изменения состояния и измерения системы и расширенного алгоритма Фильтра Калмана, блок производит оценки состояния x^ для шага текущего времени. Для получения информации об алгоритме смотрите Расширенный и Алгоритмы Сигма-точечного фильтра Калмана для Онлайновой Оценки состояния.

Вы создаете нелинейную функцию изменения состояния и функции измерения для системы и задаете эти функции в блоке. Блок поддерживает оценку состояния системы с несколькими датчиками, которые действуют на различных частотах дискретизации. Можно задать до пяти функций измерения, каждый соответствующий датчику в системе. Можно также задать Якобианы функций изменения состояния и измерения. Если вы не задаете их, программное обеспечение численно вычисляет Якобианы. Для получения дополнительной информации смотрите Функции Изменения состояния и Измерения.

Порты

Входной параметр

развернуть все

Измеренные системные выходные параметры, соответствующие каждой функции измерения, которую вы задаете в блоке. Количество портов равняется количеству функций измерения в вашей системе. Можно задать до пяти функций измерения. Например, если ваша система имеет два датчика, вы задаете две функции измерения в блоке. Первый порт y1 доступен по умолчанию. Когда вы нажимаете Apply, программное обеспечение генерирует порт y2, соответствующий второй функции измерения.

Задайте порты как N - размерные векторы, где N является количеством количеств, измеренных соответствующим датчиком. Например, если ваша система имеет один датчик, который измеряет положение и скорость объекта, затем существует только один порт y1. Порт задан как 2-мерный вектор со значениями, соответствующими положению и скорости.

Зависимости

Первый порт y1 доступен по умолчанию. Порты y2 к y5 сгенерированы, когда вы нажимаете Add Measurement и нажимаете Apply.

Типы данных: single | double

Дополнительный дополнительный входной параметр к изменению состояния функционирует f кроме x состояния и шум процесса w. Для получения информации об изменении состояния функции видят, Изменение состояния и Функции Измерения.

Предположим, что ваша система имеет неаддитивный шум процесса и функцию изменения состояния f имеет следующую форму:

x(k+1) = f(x(k),w(k),StateTransitionFcnInputs)

Здесь k временной шаг и StateTransitionFcnInputs дополнительный входной параметр кроме x и w.

Если вы создаете f использование MATLAB® функция (.m файл), программное обеспечение генерирует порт StateTransitionFcnInputs, когда вы нажимаете Apply. Можно задать входные параметры к этому порту как скаляр, вектор или матрица.

Если ваша функция изменения состояния имеет больше чем один дополнительный вход, используйте блок Simulink Function (Simulink), чтобы задать функцию. Когда вы используете блок Simulink Function, вы предоставляете дополнительные входные параметры непосредственно блоку Simulink Function с помощью Inport (Simulink) блоки. Никакие входные порты не сгенерированы для дополнительных входных параметров в блоке Extended Kalman Filter.

Зависимости

Этот порт сгенерирован, только если обоим из следующих условий удовлетворяют:

  • Вы задаете f в Function с помощью функции MATLAB и f находится на пути MATLAB.

  • f требует только одного дополнительного входного параметра кроме x и w.

Типы данных: single | double

Дополнительные дополнительные входные параметры к измерению функционируют кроме x состояния и шум измерения v. Для получения информации об измерении функции видят, Изменение состояния и Функции Измерения.

MeasurementFcn1Inputs соответствует первой функции измерения, которую вы задаете и так далее. Например, предположите, что ваша система имеет три датчика и неаддитивный шум измерения и три функции измерения h1, h2, и h3 имейте следующую форму:

y1[k] = h1(x[k],v1[k],MeasurementFcn1Inputs)

y2[k] = h2(x[k],v2[k],MeasurementFcn2Inputs)

y3[k] = h3(x[k],v3[k])

Здесь k временной шаг и MeasurementFcn1Inputs и MeasurementFcn2Inputs дополнительные входные параметры к h1 и h2.

Если вы задаете h1, h2, и h3 использование функций MATLAB (.m файлы) в Function, программное обеспечение генерирует порты MeasurementFcn1Inputs и MeasurementFcn2Inputs, когда вы нажимаете Apply. Можно задать входные параметры к этим портам как скаляры, векторы или матрицы.

Если ваши функции измерения имеют больше чем один дополнительный вход, используйте Simulink Function (Simulink) блоки, чтобы задать функции. Когда вы используете блок Simulink Function, вы предоставляете дополнительные входные параметры непосредственно блоку Simulink Function с помощью Inport (Simulink) блоки. Никакие входные порты не сгенерированы для дополнительных входных параметров в блоке Extended Kalman Filter.

Зависимости

Порт, соответствующий измерению, функционирует h сгенерирован, только если обоим из следующих условий удовлетворяют:

  • Вы задаете h в Function с помощью функции MATLAB и h находится на пути MATLAB.

  • h требует только одного дополнительного входного параметра кроме x и v.

Типы данных: single | double

Изменяющаяся во времени ковариация шума процесса в виде скаляра, вектора или матрицы в зависимости от значения параметра Process noise:

  • Process noise является Additive — Задайте ковариацию как скаляр, Ns - вектор элемента или Ns-by-Ns матрица, где Ns является количеством состояний системы. Задайте скаляр, если нет никакой взаимной корреляции между шумовыми частями процесса, и все термины имеют то же отклонение. Задайте вектор из длины Ns, если нет никакой взаимной корреляции между шумовыми частями процесса, но все термины имеют различные отклонения.

  • Process noise является Nonadditive — Задайте ковариацию как W-by-W матрица, где W является количеством шумовых частей процесса в функции изменения состояния.

Зависимости

Этот порт сгенерирован, если вы задаете ковариацию шума процесса как Time-Varying. Порт появляется, когда вы нажимаете Apply.

Типы данных: single | double

Изменяющиеся во времени ковариации шума измерения максимум для пяти функций измерения системы в виде матриц. Размеры матриц зависят от значения параметра Measurement noise для соответствующей функции измерения:

  • Measurement noise является Additive — Задайте ковариацию как N-by-N матрица, где N является количеством измерений системы.

  • Measurement noise является Nonadditive — Задайте ковариацию как V-by-V матрица, где V является количеством шумовых частей измерения в соответствующей функции измерения.

Зависимости

Порт сгенерирован, если вы задаете ковариацию шума измерения как Time-Varying для соответствующей функции измерения. Порт появляется, когда вы нажимаете Apply.

Типы данных: single | double

Предположим, что измеренные выходные данные не доступны во всех моментах времени в порте y1, который соответствует первой функции измерения. Используйте значение сигналов кроме 0 в порте Enable1, чтобы включить коррекцию предполагаемых состояний, когда результаты измерений доступно. Задайте значение порта как 0 когда результаты измерений не доступны. Точно так же, если измеренные выходные данные не доступны во всех моментах времени в порте yi для ith функция измерения, задайте соответствующий порт Enablei как значение кроме 0.

Зависимости

Порт, соответствующий функции измерения, сгенерирован, если вы выбираете Add Enable port для той функции измерения. Порт появляется, когда вы нажимаете Apply.

Типы данных: single | double | Boolean

Вывод

развернуть все

Предполагаемые состояния, возвращенные как вектор из размера Ns, где Ns является количеством состояний системы. Чтобы получить доступ к отдельным государствам, используйте блок Selector (Simulink).

Когда параметр Use the current measurements to improve state estimates выбран, блок выводит откорректированную оценку состояния x^[k|k] на временном шаге k, предполагаемое использование измеряло выходные параметры до времени k. Если вы очищаете этот параметр, блок возвращает предсказанную оценку состояния x^[k|k1] в течение времени k, предполагаемое использование измеряло выход до предыдущего раза k-1. Очистите этот параметр, если ваш фильтр находится в обратной связи и в вашем Simulink существует алгебраический цикл® модель.

Типы данных: single | double

Ошибочная ковариация оценки состояния, возвращенная как Ns-by-Ns матрица, где Ns является количеством состояний системы. Чтобы получить доступ к отдельным ковариациям, используйте блок Selector (Simulink).

Зависимости

Этот порт сгенерирован, если вы выбираете Output state estimation error covariance во вкладке System Model и нажимаете Apply.

Типы данных: single | double

Параметры

развернуть все

Вкладка системной модели

Изменение состояния

Функция изменения состояния вычисляет Ns - вектор состояния элемента системы на временном шаге k +1, учитывая вектор состояния на временном шаге k. Ns является количеством состояний нелинейной системы. Вы создаете функцию изменения состояния и задаете имя функции в Function. Например, если vdpStateFcn.m функция изменения состояния, которую вы создали и сохраненный, задайте Function как vdpStateFcn.

Входные параметры к функции, которую вы создаете, зависят от того, задаете ли вы шум процесса как дополнение или недополнение в Process noise.

  • Process noise является Additivef функции изменения состояния задает, как состояния развиваются в зависимости от значений состояния на предыдущем временном шаге:

    x(k+1) = f(x(k),Us1(k),...,Usn(k)),

    где x(k) предполагаемое состояние во время k, и Us1,...,Usn любые дополнительные входные параметры, требуемые вашей функцией изменения состояния, такие как системные входные параметры или шаг расчета. Чтобы видеть пример функции изменения состояния с шумом аддитивного процесса, введите edit vdpStateFcn в командной строке.

  • Process noise является Nonadditive — Функция изменения состояния также задает, как состояния развивают в зависимости от шума процесса w:

    x(k+1) = f(x(k),w(k),Us1(k),...,Usn(k)).

Для получения дополнительной информации смотрите Функции Изменения состояния и Измерения.

Можно создать f с помощью блока Simulink Function (Simulink) или как функции MATLAB (.m файл).

  • Можно использовать функцию MATLAB, только если f имеет один дополнительный входной параметр Us1 кроме x и w.

    x(k+1) = f(x(k),w(k),Us1(k))

    Программное обеспечение генерирует дополнительный входной порт StateTransitionFcnInputs, чтобы задать этот аргумент.

  • Если вы используете блок Simulink Function, задаете x и w использование Argument Inport (Simulink) блокируется и дополнительные входные параметры Us1,...,Usn использование Inport (Simulink) блокируется в блоке Simulink Function. Вы не обеспечиваете Us1,...,Usn с блоком Extended Kalman Filter.

Программируемое использование

Параметры блоков: StateTransitionFcn
Ввод: вектор символов, строка
Значение по умолчанию: 'myStateTransitionFcn'

Якобиан изменения состояния функционирует f в виде одного из следующего:

  • off — Программное обеспечение вычисляет якобиан численно. Этот расчет может увеличить время вычислений и числовую погрешность оценки состояния.

  • on — Вы создаете функцию, чтобы вычислить якобиан и задать имя функции в Jacobian. Например, если vdpStateJacobianFcn.m Функция Якоби, задайте Jacobian как vdpStateJacobianFcn. Если вы создаете функцию изменения состояния f с помощью блока Simulink Function (Simulink), то создаете якобиан с помощью блока Simulink Function. Если вы создаете f с помощью функции MATLAB (.m файл), затем создайте якобиан с помощью функции MATLAB.

    Функция вычисляет частные производные функции изменения состояния относительно шума процесса и состояний. Количество входных параметров к Функции Якоби должно равняться количеству входных параметров функции изменения состояния и должно быть задано в том же порядке в обеих функциях. Количество выходных параметров Функции Якоби зависит от параметра Process noise:

    • Process noise является Additive — Функция вычисляет частную производную функции изменения состояния f относительно состояний (f/x). Выходом является Ns-by-Ns якобиевская матрица, где Ns является количеством состояний.

      Чтобы видеть пример Функции Якоби для шума аддитивного процесса, введите edit vdpStateJacobianFcn в командной строке.

    • Process noise является Nonadditive — Функция должна также возвратить второй выходной параметр, который является частной производной функции изменения состояния f относительно шумовых частей процесса (f/w). Второй выходной параметр возвращен как Ns-by-W матрица, где W является количеством шумовых частей процесса в функции изменения состояния.

Программируемое использование

Параметры блоков: HasStateTransitionJacobianFcn
Ввод: символьный вектор
Значения: 'off'on
Значение по умолчанию: 'off'
Параметры блоков: StateTransitionJacobianFcn
Ввод: вектор символов, строка
Значение по умолчанию: ''

Характеристики шума процесса в виде одного из следующих значений:

  • Additive — Шум процесса w дополнение и функция изменения состояния, f, который вы задаете в Function, имеет следующую форму:

    x(k+1) = f(x(k),Us1(k),...,Usn(k)),

    где x(k) предполагаемое состояние во время k, и Us1,...,Usn любые дополнительные входные параметры, требуемые вашей функцией изменения состояния.

  • Nonadditive — Шум процесса является недополнением, и функция изменения состояния задает, как состояния развиваются в зависимости от состояния и шума процесса на предыдущем временном шаге:

    x(k+1) = f(x(k),w(k),Us1(k),...,Usn(k)).

Программируемое использование

Параметры блоков: HasAdditiveProcessNoise
Ввод: символьный вектор
Значения: 'Additive', 'Nonadditive'
Значение по умолчанию: 'Additive'

Независимая от времени ковариация шума процесса в виде скаляра, вектора или матрицы в зависимости от значения параметра Process noise:

  • Process noise является Additive — Задайте ковариацию как скаляр, Ns - вектор элемента или Ns-by-Ns матрица, где Ns является количеством состояний системы. Задайте скаляр, если нет никакой взаимной корреляции между шумовыми частями процесса, и все термины имеют то же отклонение. Задайте вектор из длины Ns, если нет никакой взаимной корреляции между шумовыми частями процесса, но все термины имеют различные отклонения.

  • Process noise является Nonadditive — Задайте ковариацию как W-by-W матрица, где W является количеством шумовых частей процесса.

Если ковариация шума процесса является изменяющейся во времени, выберите Time-varying. Блок генерирует входной порт Q, чтобы задать изменяющуюся во времени ковариацию.

Зависимости

Этот параметр включен, если вы не задаете шум процесса как Time-Varying.

Программируемое использование

Параметры блоков: ProcessNoise
Ввод: вектор символов, строка
Значение по умолчанию: '1'

Если вы выбираете этот параметр, блок включает дополнительный входной порт Q, чтобы задать изменяющуюся во времени ковариацию шума процесса.

Программируемое использование

Параметры блоков: HasTimeVaryingProcessNoise
Ввод: символьный вектор
Значения: 'off'on
Значение по умолчанию: 'off'
Инициализация

Оценочное значение начального состояния в виде Ns - вектор элемента, где Ns является количеством состояний в системе. Задайте значения начального состояния на основе своего знания системы.

Программируемое использование

Параметры блоков: InitialState
Ввод: вектор символов, строка
Значение по умолчанию: '0'

Ошибочная ковариация оценки состояния в виде скаляра, Ns - вектор элемента или Ns-by-Ns матрица, где Ns является количеством состояний системы. Если вы задаете скаляр или вектор, программное обеспечение создает Ns-by-Ns диагональная матрица со скалярными или векторными элементами на диагонали.

Задайте высокое значение для ковариации, когда вы не уверены в значениях начального состояния, что задаете в Initial state.

Программируемое использование

Параметры блоков: InitialStateCovariance
Ввод: вектор символов, строка
Значение по умолчанию: '1'
Измерение

Функция измерения вычисляет N - элемент выходной вектор измерения из нелинейной системы на временном шаге k, учитывая вектор состояния на временном шаге k. Вы создаете функцию измерения и задаете имя функции в Function. Например, если vdpMeasurementFcn.m функция измерения, которую вы создали и сохраненный, задайте Function как vdpMeasurementFcn.

Входные параметры к функции, которую вы создаете, зависят от того, задаете ли вы шум измерения как дополнение или недополнение в Measurement noise.

  • Measurement noise является Additiveh функции измерения задает, как измерения развиваются в зависимости от Значений состояния:

    y(k) = h(x(k),Um1(k),...,Umn(k)),

    где y(k) и x(k) предполагаемый выход и оцененное состояние во время k, и Um1,...,Umn любые дополнительные входные параметры, требуемые вашей функцией измерения. Например, если вы используете датчик для отслеживания объекта, дополнительный вход мог бы быть положением датчика.

    Чтобы видеть пример функции измерения с шумом аддитивного процесса, введите edit vdpMeasurementFcn в командной строке.

  • Measurement noise является Nonadditive— Функция измерения также задает, как выходное измерение развивает в зависимости от шума измерения v:

    y(k) = h(x(k),v(k),Um1(k),...,Umn(k)).

    Чтобы видеть пример функции измерения с неаддитивным шумом процесса, введите edit vdpMeasurementNonAdditiveNoiseFcn.

Для получения дополнительной информации смотрите Функции Изменения состояния и Измерения.

Можно создать h с помощью блока Simulink Function (Simulink) или как функции MATLAB (.m файл).

  • Можно использовать функцию MATLAB, только если h имеет один дополнительный входной параметр Um1 кроме x и v.

    y[k] = h(x[k],v[k],Um1(k))

    Программное обеспечение генерирует дополнительный входной порт MeasurementFcniВходные параметры, чтобы задать этот аргумент для i th функция измерения.

  • Если вы используете блок Simulink Function, задаете x и v использование Argument Inport (Simulink) блокируется и дополнительные входные параметры Um1,...,Umn использование Inport (Simulink) блокируется в блоке Simulink Function. Вы не обеспечиваете Um1,...,Umn с блоком Extended Kalman Filter.

Если у вас есть несколько датчиков в вашей системе, можно задать несколько функций измерения. Можно задать до пяти функций измерения с помощью кнопки Add Measurement. Чтобы удалить функции измерения, используйте Remove Measurement.

Программируемое использование

Параметры блоков: MeasurementFcn1, MeasurementFcn2, MeasurementFcn3, MeasurementFcn4, MeasurementFcn5
Ввод: вектор символов, строка
Значение по умолчанию: 'myMeasurementFcn'

Якобиан измерения функционирует h в виде одного из следующего:

  • off — Программное обеспечение вычисляет якобиан численно. Этот расчет может увеличить время вычислений и числовую погрешность оценки состояния.

  • on — Вы создаете функцию, чтобы вычислить якобиан функции измерения h и задать имя функции в Jacobian. Например, если vdpMeasurementJacobianFcn.m Функция Якоби, задайте MeasurementJacobianFcn как vdpMeasurementJacobianFcn. Если вы создаете h с помощью блока Simulink Function (Simulink), то создаете якобиан с помощью блока Simulink Function. Если вы создаете h с помощью функции MATLAB (.m файл), затем создайте якобиан с помощью функции MATLAB.

    Функция вычисляет частные производные функции измерения h относительно шума измерения и состояний. Количество входных параметров к Функции Якоби должно равняться количеству входных параметров к функции измерения и должно быть задано в том же порядке в обеих функциях. Количество выходных параметров Функции Якоби зависит от параметра Measurement noise:

    • Measurement noise является Additive — Функция вычисляет частные производные функции измерения относительно состояний (h/x). Выход как N-by-Ns якобиевская матрица, где N является количеством измерений системы, и Ns является количеством состояний.

      Чтобы видеть пример Функции Якоби для аддитивного шума измерения, введите edit vdpMeasurementJacobianFcn в командной строке.

    • Measurement noise является Nonadditive — Функция также возвращает второй выходной параметр, который является частной производной функции измерения относительно шумовых частей измерения (h/v). Второй выходной параметр возвращен как N-by-V якобиевская матрица, где V является количеством шумовых частей измерения.

Программируемое использование

Параметры блоков: HasMeasurementJacobianFcn1, HasMeasurementJacobianFcn2, HasMeasurementJacobianFcn3, HasMeasurementJacobianFcn4, HasMeasurementJacobianFcn5
Ввод: символьный вектор
Значения: 'off'on
Значение по умолчанию: 'off'
Параметры блоков: MeasurementJacobianFcn1, MeasurementJacobianFcn2, MeasurementJacobianFcn3, MeasurementJacobianFcn4, MeasurementJacobianFcn5
Ввод: символьный вектор
Значение по умолчанию: ''

Характеристики шума измерения в виде одного из следующих значений:

  • Additive — Шум измерения v дополнение и функция измерения, h, который вы задаете в Function, имеет следующую форму:

    y(k) = h(x(k),Um1(k),...,Umn(k)),

    где y(k) и x(k) предполагаемый выход и оцененное состояние во время k, и Um1,...,Umn любые дополнительные входные параметры, требуемые вашей функцией измерения.

  • Nonadditive — Шум измерения является недополнением, и функция измерения задает, как выходное измерение развивается в зависимости от шума измерения и состояния:

    y(k) = h(x(k),v(k),Um1(k),...,Umn(k)).

Программируемое использование

Параметры блоков: HasAdditiveMeasurementNoise1, HasAdditiveMeasurementNoise2, HasAdditiveMeasurementNoise3, HasAdditiveMeasurementNoise4, HasAdditiveMeasurementNoise5
Ввод: символьный вектор
Значения: 'Additive', 'Nonadditive'
Значение по умолчанию: 'Additive'

Независимая от времени ковариация шума процесса в виде скаляра, вектора или матрицы в зависимости от значения параметра Process noise:

  • Process noise является Additive — Задайте ковариацию как скаляр, Ns - вектор элемента или Ns-by-Ns матрица, где Ns является количеством состояний системы. Задайте скаляр, если нет никакой взаимной корреляции между шумовыми частями процесса, и все термины имеют то же отклонение. Задайте вектор из длины Ns, если нет никакой взаимной корреляции между шумовыми частями процесса, но все термины имеют различные отклонения.

  • Process noise является Nonadditive — Задайте ковариацию как W-by-W матрица, где W является количеством шумовых частей процесса.

Если ковариация шума процесса является изменяющейся во времени, выберите Time-varying. Блок генерирует входной порт Q, чтобы задать изменяющуюся во времени ковариацию.

Зависимости

Этот параметр включен, если вы не задаете шум процесса как Time-Varying.

Программируемое использование

Параметры блоков: ProcessNoise
Ввод: вектор символов, строка
Значение по умолчанию: '1'

Если вы выбираете этот параметр для ковариации шума измерения первой функции измерения, блок включает дополнительный входной порт R1. Вы задаете изменяющуюся во времени ковариацию шума измерения в R1. Точно так же, если вы выбираете Time-varying для ith функция измерения, блок включает дополнительный входной порт Ri задавать изменяющуюся во времени ковариацию шума измерения для этой функции.

Программируемое использование

Параметры блоков: HasTimeVaryingMeasurementNoise1, HasTimeVaryingMeasurementNoise2, HasTimeVaryingMeasurementNoise3, HasTimeVaryingMeasurementNoise4, HasTimeVaryingMeasurementNoise5
Ввод: символьный вектор
Значения: 'off'on
Значение по умолчанию: 'off'

Предположим, что измеренные выходные данные не доступны во всех моментах времени в порте y1, который соответствует первой функции измерения. Выберите Add Enable port, чтобы сгенерировать входной порт Enable1. Используйте сигнал в этом порте, чтобы включить коррекцию предполагаемых состояний только, когда результаты измерений будут доступны. Точно так же, если измеренные выходные данные не доступны во всех моментах времени в порте yi для ith функция измерения, выберите соответствующий Add Enable port.

Программируемое использование

Параметры блоков: HasMeasurementEnablePort1, HasMeasurementEnablePort2, HasMeasurementEnablePort3, HasMeasurementEnablePort4, HasMeasurementEnablePort5
Ввод: символьный вектор
Значения: 'off'on
Значение по умолчанию: 'off'
Настройки

Когда этот параметр выбран, блок выводит откорректированную оценку состояния x^[k|k] на временном шаге k, предполагаемое использование измеряло выходные параметры до времени k. Если вы очищаете этот параметр, блок возвращает предсказанную оценку состояния x^[k|k1] в течение времени k, предполагаемое использование измеряло выход до предыдущего раза k-1. Очистите этот параметр, если ваш фильтр находится в обратной связи и в вашей модели Simulink существует алгебраический цикл.

Программируемое использование

Параметры блоков: UseCurrentEstimator
Ввод: символьный вектор
Значения: 'off'on
Значение по умолчанию: 'on'

Если вы выбираете этот параметр, ошибочный выходной порт ковариации оценки состояния, P сгенерирован в блоке.

Программируемое использование

Параметры блоков: OutputStateCovariance
Ввод: символьный вектор
Значения: 'off'on
Значение по умолчанию: 'off'

Используйте этот параметр, чтобы задать тип данных для всех параметров блоков.

Программируемое использование

Параметры блоков: DataType
Ввод: символьный вектор
Значения: 'single''double'
Значение по умолчанию: 'double'

Блокируйте шаг расчета в виде положительной скалярной величины. Если шаги расчета ваших функций изменения состояния и измерения отличаются, выберите Enable multirate operation во вкладке Multirate и задайте шаги расчета во вкладке Multirate вместо этого.

Зависимости

Этот параметр доступен, если во вкладке Multirate, параметром Enable multirate operation является off.

Программируемое использование

Параметры блоков: SampleTime
Ввод: вектор символов, строка
Значение по умолчанию: '1'

Многоскоростная вкладка

Выберите этот параметр, если шаги расчета функций изменения состояния и измерения отличаются. Вы задаете шаги расчета во вкладке Multirate в Sample time.

Программируемое использование

Параметры блоков: EnableMultirate
Ввод: символьный вектор
Значения: 'off'on
Значение по умолчанию: 'off'

Если шаги расчета для функций изменения состояния и измерения отличаются, задают Sample time. Задайте шаги расчета для функций измерения как положительные целочисленные множители шага расчета изменения состояния. Шаги расчета, которые вы задаете, соответствуют следующим входным портам:

  • Порты, соответствующие функции изменения состояния — вход Additional к изменению состояния, функционируют StateTransitionFcnInputs и изменяющаяся во времени ковариация шума процесса Q. Шаги расчета этих портов должны всегда равняться шагу расчета функции изменения состояния, но могут отличаться от шага расчета функций измерения.

  • Порты, соответствующие ith функция измерения — Measured выход yi, дополнительный вход к измерению функционирует MeasurementFcniВходные параметры, включите сигнал в порте Enablei, и изменяющаяся во времени ковариация шума измерения Ri. Шаги расчета этих портов для той же функции измерения должны всегда быть тем же самым, но могут отличаться от шага расчета для функции изменения состояния и других функций измерения.

Зависимости

Этот параметр доступен, если во вкладке Multirate, параметром Enable multirate operation является on.

Программируемое использование

Параметры блоков: StateTransitionFcnSampleTime, MeasurementFcn1SampleTime1, MeasurementFcn1SampleTime2, MeasurementFcn1SampleTime3, MeasurementFcn1SampleTime4, MeasurementFcn1SampleTime5
Ввод: вектор символов, строка
Значение по умолчанию: '1'

Примеры модели

Больше о

развернуть все

Вопросы совместимости

развернуть все

Поведение изменяется в R2020b

Расширенные возможности

Введенный в R2017a
Для просмотра документации необходимо авторизоваться на сайте