Transfer Fcn

Моделируйте линейную систему передаточной функцией

  • Библиотека:
  • Simulink/Непрерывный

  • Transfer Fcn block

Описание

Блок Transfer Fcn моделирует линейную систему передаточной функцией переменной Laplace-domain s. Блок может моделировать системы single-input single-output (SISO) и single-input multiple-output (SIMO).

Условия использования этого блока

Блок Transfer Fcn принимает следующие условия:

  • Передаточная функция имеет вид

    H(s)=y(s)u(s)=num(s)den(s)=num(1)snn1+num(2)snn2++num(nn)den(1)snd1+den(2)snd2++den(nd),

    где u и y являются системными входами и выходами, соответственно, nn и nd являются количеством коэффициентов числителя и знаменателя, соответственно. num(s) и den(s) содержат коэффициенты числителя и знаменателя в нисходящих степенях s.

  • Порядок знаменателя должен быть больше или равен порядку числителя.

  • Для системы с несколькими выходами все передаточные функции имеют один и тот же знаменатель, а все числители имеют одинаковый порядок.

Моделирование системы с одним выходом

Для системы с одним выходом входные и выходные параметры блока являются скалярными сигналами временной области. Чтобы смоделировать эту систему:

  1. Введите вектор для коэффициентов числителя передаточной функции в поле Numerator coefficients.

  2. Введите вектор коэффициентов знаменателя передаточной функции в поле Denominator coefficients.

Моделирование системы с несколькими выходами

Для системы с несколькими выходами блочный вход является скаляром, а выходной - вектором, где каждый элемент является выходом системы. Чтобы смоделировать эту систему:

  1. Введите матрицу в поле Numerator coefficients.

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

  2. Введите вектор коэффициентов знаменателя, общих для всех передаточных функций системы, в поле Denominator coefficients.

Определение начальных условий

Передаточная функция описывает отношение между входом и выходом в области Лапласа (частота). В частности, это определяется как преобразование Лапласа отклика (выхода) системы с нулевыми начальными условиями на импульсный вход.

Операции, такие как умножение и деление передаточных функций, зависят от нулевого начального состояния. Например, можно разложить одну сложную передаточную функцию на серию более простых передаточных функций. Примените их последовательно, чтобы получить ответ, эквивалентный ответу исходной передаточной функции. Это будет неправильно, если одна из передаточных функций принимает ненулевое начальное состояние. Кроме того, передаточная функция имеет бесконечно много реализаций во временном интервале, большинство состояний которых не имеют никакого физического смысла.

По этим причинам Simulink® задает нулевые начальные условия блока Transfer Fcn. Чтобы задать начальные условия для заданной передаточной функции, преобразуйте передаточную функцию в ее управляемую, каноническую реализацию в пространстве состояний с помощью tf2ss . Затем используйте блок State-Space. The tf2ss утилита обеспечивает A, B, C, и D матрицы для системы.

Для получения дополнительной информации введите help tf2ss или см. документацию по Control System Toolbox™.

Отображение передаточной функции на блоке

Блок Transfer Fcn отображает передаточную функцию в зависимости от того, как вы задаете параметры числителя и знаменателя.

  • Если вы задаете каждый параметр как выражение или вектор, блок показывает передаточную функцию с заданными коэффициентами и степенями s. Если вы задаете переменную в круглых скобках, блок оценивает переменную.

    Для примера, если вы задаете Numerator coefficients как [3,2,1] и Denominator coefficients как (den), где den является [7,5,3,1], блок выглядит следующим образом:

  • Если вы задаете каждый параметр как переменную, блок показывает имя переменной с последующим (s).

    Для примера, если вы задаете Numerator coefficients как num и Denominator coefficients как den, блок выглядит следующим образом:

Порты

Вход

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

Входной сигнал, заданный как скаляр с типом данных double.

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

Выход

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

Выходной сигнал, предоставляемый в виде скаляра или вектора с типом данных double.

  • Для системы с одним выходом входные и выходные параметры блока являются скалярными сигналами временной области.

  • Для системы с несколькими выходами вход является скаляром, а выход является вектором, где каждый элемент является выходом системы.

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

Параметры

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

Задайте коэффициенты числителя передаточной функции.

  • Для системы с одним выходом введите вектор для коэффициентов числителя передаточной функции.

  • Для системы с несколькими выходами введите матрицу. Каждая строка этой матрицы содержит коэффициенты числителя передаточной функции, которая определяет один из выходов блока.

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

Параметры блоков: Numerator
Тип: Вектор символов, строка
Значения: вектор | матрица
По умолчанию: '[1]'

Задайте вектор-строку коэффициентов знаменателя.

  • Для системы с одним выходом введите вектор для коэффициентов знаменателя передаточной функции.

  • Для системы с несколькими выходами введите вектор, содержащий коэффициенты знаменателя, общие для всех передаточных функций системы.

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

Параметры блоков: Denominator
Тип: вектор символов | строка
Значения: вектор
По умолчанию: '[1 1]'

Уровень настраиваемости коэффициентов числителя и знаменателя для режимов Accelerated simulation и развернутых симуляций с использованием Simulink Compiler™. Установите этот параметр равным Auto чтобы позволить Simulink выбрать соответствующий уровень настраиваемости параметра.

Установите этот параметр равным Optimized сгенерировать представление коэффициентов числителя и знаменателя в сгенерированном коде для ускоренных и развернутых симуляций, которое оптимизировано для повышения эффективности симуляции.

Установите этот параметр равным Unconstrained сгенерировать полностью настраиваемое (между симуляциями) представление коэффициентов числителя и знаменателя в сгенерированном коде для ускоренных и развернутых симуляций. Чтобы Simulink определил соответствующий уровень настраиваемости, выберите Auto .

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

Параметры блоков: ParameterTunability
Тип: Вектор символов, строка
Значения: 'Auto' | 'Optimized' | 'Unconstrained'
По умолчанию: 'Auto'

Абсолютная погрешность для вычисления состояний блока, заданный как положительный, вещественный, скалярный или вектор. Чтобы наследовать абсолютную погрешность от параметров конфигурации, задайте auto или -1.

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

  • Если вы вводите вектор действительных чисел, то размерность этого вектора должна совпадать с размерностью непрерывных состояний в блоке. Эти значения переопределяют абсолютную погрешность в диалоговом окне Параметры конфигурации (Configuration Parameters).

  • Если вы вводите auto или -1, затем Simulink использует значение абсолютной погрешности в диалоговом окне Параметров конфигурации (см. «Панель решателя»), чтобы вычислить состояния блока.

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

Параметры блоков: AbsoluteTolerance
Тип: Вектор символов, строка
Значения: 'auto' | '-1' | любой положительный скаляр или вектор с реальным значением
По умолчанию: 'auto'

Присвойте уникальное имя каждому состоянию. Если это поле пусто (' '), присвоение имен не происходит.

  • Чтобы назначить имя одному состоянию, введите имя между кавычками, например 'position'.

  • Чтобы назначить имена нескольким состояниям, введите список с разделителем запятыми, окруженный скобками, например {'a', 'b', 'c'}. Каждое имя должно быть уникальным.

  • Назначение имен состояний с переменной в MATLAB® рабочая область, введите переменную без кавычек. Переменная может быть вектором символов, строкой, массивом ячеек или структурой.

Ограничения

  • Имена состояний применяются только к выбранному блоку.

  • Количество состояний должно разделяться равномерно между количеством имен состояний.

  • Можно задать меньше имен, чем состояний, но нельзя задать больше имен, чем состояний.

    Для примера можно задать два имени в системе с четырьмя состояниями. Первое имя относится к первым двум состояниям, а второе - к последним двум состояниям.

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

Параметры блоков: ContinuousStateAttributes
Тип: Вектор символов, строка
Значения: ' ' | пользовательские
По умолчанию: ' '

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

Характеристики блоков

Типы данных

double

Прямое сквозное соединение

yes

Многомерные сигналы

no

Сигналы переменного размера

no

Обнаружение пересечения нулем

no

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

.
Представлено до R2006a