Extended Kalman Filter

Оценка состояний нелинейной системы дискретного времени с использованием расширенного фильтра Калмана

  • Библиотека:
  • Набор инструментов системы управления/оценка состояния

    Набор средств идентификации/оценки системы

  • 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 когда измеренные данные недоступны. Точно так же, если измеренные выходные данные недоступны во всех временных точках порта y i для ith функции измерения, задайте соответствующий порт Enable i как значение, отличное от 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 Additive - функция f перехода состояния задает, как состояния развиваются как функция от значений состояния на предыдущем временном шаге:

    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 Additive - Функция h измерения задает, как измерения развиваются как функция от Значений состояния:

    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))

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

  • Если вы используете блок 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 функции измерения, блок включает дополнительный входной порт R i для определения изменяющейся во времени шумовой ковариации измерения для этой функции.

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

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

Предположим, что измеренные выходные данные недоступны во всех временных точках в y1 порта, которая соответствует первой функции измерения. Выберите Add Enable port, чтобы сгенерировать Enable1 входного порта. Используйте сигнал в этом порте, чтобы включить коррекцию предполагаемых состояний, только когда измеренные данные доступны. Точно так же, если измеренные выходные данные недоступны во всех временных точках порта y i для 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. Задайте шаги расчета для функций измерения как положительное целое число множителей переходного шага расчета состояния. Заданные вами шаги расчета соответствуют следующим входным портам:

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

  • Порты, соответствующие ith функция измерения - Измеренный выход y i, дополнительный вход в функцию измерения MeasurementFcn iВходы, разрешающий сигнал в порте Enable iи изменяющуюся во времени шумовую ковариацию R i. Шаги расчета этих портов для одной и той же функции измерения должно всегда быть одинаковым, но может отличаться от шага расчета для функции перехода состояния и других функций измерения.

Зависимости

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

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

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

Подробнее о

расширить все

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

расширить все

Поведение изменено в R2020b

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

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