Hammerstein-Wiener Model

Симулируйте модель Гаммерштейна-Винера в программном обеспечении Simulink

  • Библиотека:
  • System Identification Toolbox/Модели

  • Hammerstein-Wiener Model block

Описание

Блок Hammerstein-Wiener Model моделирует выход модели Гаммерштейна-Винера с помощью входных данных во временной области. Модель является idnlhw модель, которую вы ранее оценили или построили в MATLAB® рабочей области. Начальные условия для симуляции задаются как одно из следующих:

  • Нуль для всех состояний

  • Вектор начального состояния, представляющий начальные состояния линейного блока

Для получения информации о структуре модели Гаммерштейна-Винера смотрите Что такое модели Гаммерштейна-Винера?.

Порты

Вход

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

Входные данные симуляции, заданные как скаляр для модели с одним входом. Данные должны быть данными во временной области. Для мультивходов задайте вход как Nu-вектор, где Nu - количество входов. Для примера можно использовать блок Vector Concatenate (Simulink), чтобы объединить скаляр сигналы в вектор сигнал.

Примечание

Не используйте Bus Creator (Simulink) или Mux (Simulink) блок, чтобы получить векторный сигнал.

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

Выход

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

Симулированный выход из модели Гаммерштейна-Винера, возвращенный как скаляр для модели с одним выходом и как вектор Ny-элемента для модели с Ny выходами.

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

Параметры

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

Моделируемая модель Гаммерштейна-Винера, заданная как idnlhw объект. Вы ранее оцениваете или строите idnlhw модель в рабочем пространстве MATLAB.

Состояния модели Гаммерштейна-Винера соответствуют состояниям встроенной линейной idpoly или idss модель. Для получения дополнительной информации о состояниях см. idnlhw страница с описанием. Вы задаете Initial conditions как одно из следующего:

  • Zero - Задает нулевые начальные значения состояния, которые соответствуют симуляции, начиная с состояния покоя.

  • State values - Вы задаете значения состояния в Specify a vector of state values. Задайте состояния как вектор длины, равной количеству состояний в модели.

    Если вы не знаете начальных состояний, можно оценить эти состояния следующим образом:

    • Чтобы симулировать модель вокруг заданного входного уровня, когда вы не знаете соответствующего выходного уровня, можно оценить значения равновесного состояния, используя findop команда.

      Для примера, чтобы симулировать модель M об установившейся точке, где вход 1 и выход неизвестен, можно задать начальные значения состояний следующим X0, где:

      X0 = findop(M,'steady',1,NaN)
    • Чтобы оценить начальные состояния, которые обеспечивают лучшую подгонку между измеренными данными и моделируемой характеристикой модели для того же входа, используйте findstates команда.

      Для примера вычислить начальные состояния таким образом, чтобы реакция модели M соответствует моделируемым выходным данным в наборе данных z, задайте X0, таким образом:

      X0 = findstates(M,z)

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

Генерация кода C/C + +
Сгенерируйте код C и C++ с помощью Coder™ Simulink ®

.
Введенный в R2008a