Используйте следующие свойства модели представлять задержки линейных систем.
InputDelay
, OutputDelay
— Задержки при системных вводах или выводах
ioDelay
, InternalDelay
— Задержки, которые являются внутренними к системе
В моделях дискретного времени эти свойства ограничиваются к целочисленным значениям, которые представляют задержки, описанные как целочисленные множители шага расчета. Чтобы аппроксимировать модели дискретного времени задержками, которые являются дробным кратным шаг расчета, использовать thiran
.
В этом примере показано, как создать первый порядок плюс модель потери времени использование InputDelay
или OutputDelay
свойства tf
.
Создать следующую передаточную функцию первого порядка с 2,1 задержками с:
войдите:
G = tf(1,[1 10],'InputDelay',2.1)
где InputDelay
задает задержку во входе передаточной функции.
Для передаточных функций SISO задержка во входе эквивалентна задержке при выходе. Поэтому следующая команда создает ту же передаточную функцию:
G = tf(1,[1 10],'OutputDelay',2.1)
Используйте запись через точку, чтобы исследовать или изменить значение задержки. Например, измените задержку в 3,2 можно следующим образом:
G.OutputDelay = 3.2;
Видеть текущее значение, введите:
G.OutputDelay ans = 3.2000
Совет
Альтернативный способ создать модель с задержкой состоит в том, чтобы задать передаточную функцию с задержкой как выражение в s:
Создайте модель передаточной функции для переменной s.
s = tf('s');
Задайте G (s) как выражение в s.
G = exp(-2.1*s)/(s+10);
В этом примере показано, как создать модели в пространстве состояний с задержками при вводах и выводах, с помощью InputDelay
или OutputDelay
свойства ss
.
Создайте модель в пространстве состояний, описывающую следующее с одним входом, 2D выходную систему:
Эта система имеет входную задержку 1,5. Первый выход имеет выходную задержку 0,7, и второй выход не задерживается.
Примечание
В отличие от передаточных функций SISO, входные задержки не эквивалентны, чтобы вывести задержки моделей в пространстве состояний. Сдвиг задержки от входа до выходного в модели в пространстве состояний требует представления временного сдвига в состояниях модели. Например, в модели этого примера, задавая T = t – 1.5 и X (T) = x (T + 1.5) приводит к следующей эквивалентной системе:
Все задержки находятся на выходных параметрах, но новая переменная состояния X переключена временем относительно переменной x исходного состояния. Поэтому, если ваши состояния имеют физический смысл, или если вы знали начальные условия состояния, рассмотрите тщательно прежде, чем переключить задержки между вводами и выводами.
Создать эту систему:
Задайте матрицы пространства состояний.
A = -2; B = 3; C = [1;-1]; D = 0;
Создайте модель.
G = ss(A,B,C,D,'InputDelay',1.5,'OutputDelay',[0.7;0])
G
isa ss
модель.
Совет
Использование delayss
чтобы создать модели в пространстве состояний с более общими комбинациями входа, выведите и утвердите задержки формы:
То В этом примере показано, как создать передаточную функцию MIMO с различным транспортом, задерживает для каждого ввода - вывода (ввод-вывод) пару.
Создайте передаточную функцию MIMO:
Задержки систем MIMO могут быть характерны для каждой пары ввода-вывода, как в этом примере. Вы не можете использовать InputDelay
и OutputDelay
к I/O-specific модели транспортируют задержки. Вместо этого используйте ioDelay
задавать транспортную задержку через каждую пару ввода-вывода.
Создать эту передаточную функцию MIMO:
Создайте модель передаточной функции для переменной s
.
s = tf('s');
Используйте переменную s
задавать передаточные функции H
без задержек.
H = [2/s (s+1)/(s+10); 10 (s-1)/(s+5)];
Задайте ioDelay
свойство H
как массив значений, соответствующих транспортной задержке каждой пары ввода-вывода.
H.IODelay = [0.1 0.3; 0 0.2];
H
2D вход, 2D выход tf
модель. Каждая пара ввода-вывода в H
имеет задержку, заданную соответствующей записью в tau
.
В этом примере показано, как создать передаточную функцию дискретного времени с задержкой.
В моделях дискретного времени задержка одного периода выборки соответствует фактору в передаточной функции. Например, следующая передаточная функция представляет дискретное время система SISO задержкой 25 периодов выборки.
Чтобы представлять целочисленные задержки систем дискретного времени в MATLAB, установите 'InputDelay'
свойство объекта модели к целочисленному значению. Например, следующая команда создает tf
представление модели со временем выборки 0,1 с.
H = tf(2,[1 -0.95],0.1,'InputDelay',25)
H = 2 z^(-25) * -------- z - 0.95 Sample time: 0.1 seconds Discrete-time transfer function.
Если система имеет задержку, которая не является целочисленным кратным время выборки, можно использовать thiran
команда, чтобы аппроксимировать дробный фрагмент задержки с фильтром все-передачи. Смотрите Приближение С временной задержкой.