Задержка входа на переменное количество времени
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
длина трубопровода и скорость жидкости.
Типы данных |
|
Прямое сквозное соединение |
|
Многомерные сигналы |
|
Сигналы переменного размера |
|
Обнаружение пересечения нулем |
|