Задержка входа по переменному количеству времени
Simulink/Непрерывный
Блоки Variable Transport Delay и Variable Time Delay появляются как два блока в Simulink® библиотека блоков. Однако они являются тем же блоком Simulink с другими настройками для параметра Select delay type. Используйте этот параметр, чтобы задать режим, в котором работает блок.
В этом режиме блок имеет вход данных, временной задержки входа и выход данных. (Описание порядка расположения портов для различных ориентаций блоков см. в разделе Расположение портов после вращения или разворота.) Выход на текущем временном шаге равен значению его входных данных на предыдущем временном шаге. Этот временной шаг является текущим временем симуляции минус время задержки, заданное временной задержкой входа.
Во время симуляции блок сохраняет пары времени и входных значений во внутреннем буфере. В начале симуляции блок выводит значение параметра Initial output до тех пор, пока время симуляции не превысит временной задержки входа. Затем на каждом шаге симуляции блок выводит сигнал в момент времени, который соответствует текущему времени симуляции минус время задержки.
Если вы хотите, чтобы выход в то время между входным временем хранения и решателем был непрерывным решателем, блок интерполируется линейно между точками. Если задержка меньше размера шага, блок экстраполирует выходную точку из предыдущей точки. Например, рассмотрим симуляцию с фиксированным шагом с размером шага 1
и текущее время в t = 5
. Если задержка 0.5
блок должен сгенерировать точку в t = 4.5
, но самое последнее сохраненное значение времени находится на t = 4
. Таким образом, блок экстраполирует вход в 4.5
от входа в 4
и использует экстраполированное значение в качестве выхода в t = 5
.
Экстраполяция вперед от предыдущего временного шага может привести к менее точному результату, чем экстраполяция назад от текущего временного шага. Однако блок не может использовать текущий вход для вычисления своего выходного значения, потому что входной порт не имеет прямого сквозного соединения.
Если модель задает дискретный решатель, блок не интерполируется между временными шагами. Вместо этого оно возвращает самое близкое сохраненное значение, которое предшествует необходимому значению.
В этом режиме выход блока в текущем временном шаге равен значению его входных данных (верхний, или левый) на более раннем временном шаге, равном текущему времени минус задержка транспортировки.
Программное обеспечение Simulink находит задержку транспорта, , решением следующего уравнения:
Это уравнение включает мгновенную временную задержку, , заданный временной задержкой (нижний, или правый) вход.
Предположим, что вы хотите использовать этот блок для моделирования потока жидкости через трубопровод, где скорость жидкости изменяется со временем. В этом случае время, задержка входа к блоку
где L
- длина трубопровода и - скорость жидкости.
Типы данных |
|
Прямое сквозное соединение |
|
Многомерные сигналы |
|
Сигналы переменного размера |
|
Обнаружение пересечения нулем |
|