Транспортная задержка

Задержка вводится данным количеством времени

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

Описание

Блок Transport Delay задерживает вход заданным количеством времени. Можно использовать этот блок, чтобы моделировать задержку. Вход к этому блоку должен быть непрерывным сигналом.

В начале симуляции блок выводит параметр Initial output, пока время симуляции не превышает параметр Time delay. Затем блок начинает генерировать задержанный вход. Во время симуляции блок хранит точки ввода и времена симуляции в буфере. Вы задаете этот размер с параметром Initial buffer size.

Когда это необходимо выведите за один раз, который не соответствует временам сохраненных входных значений, блок интерполирует линейно между точками. Когда задержка меньше, чем размер шага, блок экстраполирует от последней выходной точки, которая может привести к неточным результатам. Поскольку блок не имеет прямого сквозного соединения, он не может использовать текущий вход, чтобы вычислить выходное значение. Например, рассмотрите симуляцию фиксированного шага с размером шага 1 и текущее время в t = 5. Если задержка 0.5, блок должен сгенерировать точку в t = 4.5. Поскольку новая сохраненная временная стоимость в t = 4, блок выполняет прямую экстраполяцию.

Блок Transport Delay не интерполирует дискретные сигналы. Вместо этого блок возвращает дискретное значение в необходимое время.

Этот блок отличается от блока Unit Delay, который задерживает и содержит вывод на демонстрационных хитах только.

Совет

Избегайте использования linmod, чтобы линеаризовать модель, которая содержит блок Transport Delay. Для получения дополнительной информации см. Модели Линеаризации.

Порты

Входной параметр

развернуть все

Входной сигнал, чтобы задержаться, заданный как скаляр, вектор или матрица.

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

Вывод

развернуть все

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

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

Параметры

развернуть все

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

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

Параметры блоков: DelayTime
Ввод: вектор символов, строка
Значения: неотрицательный скаляр, вектор или матрица
Значение по умолчанию: '1'

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

Ограничения

Начальным выводом этого блока не может быть inf или NaN.

Run-to-run tunable parameter не может быть изменен в течение времени выполнения симуляции. Однако изменяя его, прежде чем симуляция начинается, не заставляет Акселератор или Быстрый Акселератор регенерировать код.

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

Параметры блоков: InitialOutput
Ввод: вектор символов, строка
Значения: скаляр | вектор | матрица
Значение по умолчанию: '0'

Задайте начальное выделение памяти для количества точек ввода, чтобы сохранить.

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

  • После концов симуляции сообщение показывает общий необходимый buffer size.

Советы

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

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

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

Параметры блоков: BufferSize
Ввод: вектор символов, строка
Значение: положительный целочисленный скаляр
Значение по умолчанию: '1024'

Установите этот флажок, чтобы использовать буфер фиксированного размера, чтобы избавить входные данные от предыдущих временных шагов.

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

Примечание

Если у вас есть лицензия Simulink Coder™, генерация кода ERT или GRT использует буфер фиксированного размера, даже если вы не устанавливаете этот флажок.

Советы

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

  • Если входные данные нелинейны, не устанавливайте этот флажок. Выполнение так может привести к неточным результатам.

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

Параметры блоков: FixedBuffer
Ввод: вектор символов, строка
Значение: 'off' | 'on'
Значение по умолчанию: 'off'

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

Советы

  • Установка этого флажка может вызвать изменение в упорядоченном расположении состояний в модели, когда вы используете функции linmod, dlinmod или trim. Извлекать это новое упорядоченное расположение состояния:

    1. Скомпилируйте модель с помощью следующей команды, где model является именем модели Simulink.

          [sizes, x0, x_str] = model([],[],[],'lincompile'); 
    2. Отключите компиляцию со следующей командой.

        model([],[],[],'term'); 
  • Выходной аргумент x_str, который является массивом ячеек состояний в модели Simulink, содержит новое упорядоченное расположение состояния. Когда вы передаете вектор состояний, как введено к linmod, dlinmod или функциям trim, вектор состояния должен использовать это новое упорядоченное расположение состояния.

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

Параметры блоков: TransDelayFeedthrough
Ввод: вектор символов, строка
Значение: 'off' | 'on'
Значение по умолчанию: 'off'

Установите порядок приближения Pade для стандартных программ линеаризации как скаляр, вектор или матрица неотрицательных целых чисел.

  • Значением по умолчанию является 0, который приводит к усилению единицы без динамических состояний.

  • Устанавливание порядка к положительному целочисленному n добавляет, что n утверждает к вашей модели, но приводит к более точной линейной модели транспортной задержки.

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

Параметры блоков: PadeOrder
Ввод: вектор символов, строка
Значения: скаляр | вектор | матрица
Значение по умолчанию: '0'

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

Типы данных

double

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

yes

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

no

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

no

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

no

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

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