Используйте следующие образцовые свойства представлять задержки линейных систем.
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
является моделью 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
, чтобы аппроксимировать дробный фрагмент задержки с фильтром все-передачи. Смотрите Приближение С временной задержкой.