exponenta event banner

Переменная целочисленная задержка

Задержка входного сигнала по переменному периоду выборки

  • Библиотека:
  • Симулинк/дискретный

  • Variable Integer Delay block

Описание

Блок переменной целочисленной задержки является вариантом блока задержки, источник длины задержки которого имеет значение Input port, по умолчанию.

Порты

Вход

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

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

Типы данных: half | single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | Boolean | fixed point | enumerated | bus

Длина задержки, унаследованная от входного порта. Включено при выборе параметра Задержка длина: Источник как Input port.

Типы данных: half | single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | fixed point

Включить сигнал, который включает или отключает выполнение блока. Чтобы создать этот порт, выберите параметр Show enable port.

Типы данных: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | Boolean | fixed point

Внешний сигнал, возвращающий выполнение блока в исходное состояние. Для создания этого порта выберите параметр External reset.

Типы данных: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | Boolean | fixed point

Исходное условие, унаследованное от входного порта. Включено при выборе параметра «Начальное условие: Источник» в качестве Input port.

Типы данных: half | single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | fixed point

Продукция

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

Выходной сигнал, который является входным сигналом, задержанным на период времени, заданный параметром Delay length. Начальное значение выходного сигнала зависит от нескольких условий. См. раздел Начальный вывод блока.

Типы данных: half | single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | Boolean | fixed point | enumerated | bus

Параметры

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

Главный

Укажите, следует ли вводить длину задержки непосредственно в диалоговом окне (фиксированная задержка) или наследовать задержку от входного порта (переменная задержка).

  • Если для параметра «Источник» задано значение Dialogвведите длину задержки в поле редактирования в поле «Значение».

  • Если для параметра «Источник» задано значение Input port, убедитесь, что восходящий сигнал подает длину задержки для d входной порт. Можно также указать его максимальное значение, указав параметр Верхний предел.

Укажите длину скалярной задержки как действительное неотрицательное целое число. Значение вне диапазона или не целое число в диалоговом окне (фиксированная задержка) возвращает ошибку. Значение вне диапазона из входного порта (переменная задержка) помещает его в диапазон. Ненулевое значение из входного порта (переменная задержка) усекает его до целого числа.

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

Параметр блока: DelayLengthSource
Текст: символьный вектор
Значения: 'Dialog' | 'Input port' |
По умолчанию: 'Dialog'
Параметр блока: DelayLength
Текст: символьный вектор
Значения: скаляр
По умолчанию: '2'
Параметр блока: DelayLengthUpperLimit
Текст: символьный вектор
Значения: скаляр
По умолчанию: '100'

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

  • Если для параметра «Источник» задано значение Dialogвведите начальное условие в поле редактирования в поле Значение.

  • Если для параметра «Источник» задано значение Input port, убедитесь, что сигнал восходящего направления обеспечивает начальное условие для x0 входной порт.

Simulink ® преобразует в автономном режиме тип данных условия Initial в тип данных входного сигнала.u с помощью операции округления до ближайшего и насыщения.

Примечание

Если на панели Атрибуты состояния (State Attributes) выбрано имя состояния, которое должно разрешаться для сигнального объекта Simulink, блок копирует начальное значение сигнального объекта в параметр условия Initial. Однако, когда источником для начального условия является Input portблок игнорирует начальное значение сигнального объекта.

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

Параметр блока: InitialConditionSource
Текст: символьный вектор
Значения: 'Dialog' | 'Input port' |
По умолчанию: 'Dialog'
Параметр блока: InitialCondition
Текст: символьный вектор
Значения: скаляр
По умолчанию: '0.0'

Укажите, выполняет ли блок обработку на основе выборки или кадра:

  • Columns as channels (frame based) - Рассматривать каждый столбец ввода как отдельный канал (обработка на основе кадра).

    Примечание

    Для обработки кадров требуется лицензия DSP System Toolbox™.

    Дополнительные сведения см. в разделе Концепции на основе образцов и кадров (панель системных инструментов DSP).

  • Elements as channels (sample based) - Рассматривать каждый элемент ввода как отдельный канал (обработка на основе выборки).

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

Входной сигнал uРежим обработки входных данныхБлокировать работы?
Образец на основеОбразец на основеДа
Рамка на основеНет, создает ошибку
Образец на основеРамка на основеДа
Рамка на основеДа

Дополнительные сведения об этих двух режимах обработки см. в разделе Концепции на основе образцов и кадров (панель системных инструментов DSP).

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

Параметр блока: InputProcessing
Текст: символьный вектор
Значения: 'Columns as channels (frame based)' | 'Elements as channels (sample based)'
По умолчанию: 'Elements as channels (sample based)'

Используется циклический буфер для сохранения состояния при моделировании и создании кода. В противном случае состояние сохраняется в буфере массива.

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

Если одно из следующих условий верно, то буфер массива всегда сохраняет состояние, поскольку циклический буфер не улучшает скорость выполнения:

  • Для сигналов на основе выборок длина задержки равна 1.

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

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

Параметр блока: UseCircularBuffer
Текст: символьный вектор
Значения: 'off' | 'on'
По умолчанию: 'off'

Выберите для увеличения длины задержки с нуля до нижнего предела для режима обработки ввода:

  • Для сигналов на основе выборок увеличьте минимальную длину задержки до 1.

  • Для сигналов, основанных на кадрах, увеличьте минимальную длину задержки до длины кадра.

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

Зависимость

Чтобы включить этот параметр, установите для параметра Задержка длина: Источник значение Input port.

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

Параметр блока: PreventDirectFeedthrough
Текст: символьный вектор
Значения: 'off' | 'on'
По умолчанию: 'off'

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

ФлажокРезультатКогда использовать

Отобранный

Созданный код не включает условные операторы для проверки длины задержки за пределами диапазона.

Для эффективности кода

Очищенный

Созданный код включает условные операторы для проверки длины задержки за пределами диапазона.

Для критически важных для безопасности приложений

Зависимость

Чтобы включить этот параметр, установите для параметра Задержка длина: Источник значение Input port.

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

Параметр блока: RemoveDelayLengthCheckInGeneratedCode
Текст: символьный вектор
Значения: 'off' | 'on'
По умолчанию: 'off'

Укажите, следует ли создавать предупреждение или ошибку при вводе d меньше нижнего предела или больше длины задержки: верхний предел. Нижний предел зависит от значения параметра «Запретить прямой проход».

  • Если флажок снят, нижний предел равен нулю.

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

Варианты диагностики включают в себя:

  • None - Программное обеспечение Simulink не выполняет никаких действий.

  • Warning - Программа Simulink выводит предупреждение и продолжает моделирование.

  • Error - Программа Simulink завершает моделирование и отображает ошибку.

Зависимость

Чтобы включить этот параметр, установите для параметра Задержка длина: Источник значение Input port.

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

Параметр блока: DiagnosticForDelayLength
Текст: символьный вектор
Значения: 'None' | 'Warning' | 'Error'
По умолчанию: 'None'

Выберите для управления выполнением этого блока с помощью порта enable. Блок считается включенным, когда вход в этот порт ненулевой, и деактивизированным, когда вход 0. Значение входного сигнала проверяется одновременно с выполнением блока.

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

Параметр блока: ShowEnablePort
Текст: символьный вектор
Значения: 'off' | 'on'
По умолчанию: 'off'

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

Режим сбросаПоведение
NoneБез сброса
RisingСброс на переднем крае
FallingСброс на опущенном ребре
EitherСброс на поднимающемся или падающем ребре
Level

Сброс в любом из следующих случаев:

  • Если сигнал сброса не равен нулю на текущем шаге времени

  • Когда значение сигнала сброса изменяется от ненулевого на предыдущем шаге времени до нуля на текущем шаге времени

Level holdСброс при ненулевом сигнале сброса на текущем шаге времени

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

Параметр блока: ExternalReset
Текст: символьный вектор
Значения: 'None' | 'Rising' | 'Falling' | 'Either' | 'Level' | 'Level hold'
По умолчанию: 'None'

Укажите интервал времени между выборками. Чтобы наследовать время выборки, задайте для этого параметра значение -1. Этот блок поддерживает дискретное время выборки, но не непрерывное время выборки.

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

Параметр блока: SampleTime
Текст: символьный вектор
Значение: вещественный скаляр
По умолчанию: '-1'

Атрибуты состояния

Этот параметр используется для назначения уникального имени состоянию блока. Значение по умолчанию: ' '. Если это поле пустое, имя не назначается. При использовании этого параметра следует учитывать следующие соображения:

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

  • Имя состояния применяется только к выбранному блоку.

Этот параметр включает параметр Имя состояния должно разрешаться в сигнальный объект Simulink при нажатии кнопки Применить.

Дополнительные сведения см. в разделе Конфигурация генерации кода C для элементов интерфейса модели (Simulink Coder).

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

Параметр блока: StateName
Текст: символьный вектор
Значения: уникальное имя
По умолчанию: ''

Установите этот флажок, чтобы имя состояния разрешалось в объект сигнала Simulink.

Зависимости

Чтобы включить этот параметр, укажите значение для имени состояния. Этот параметр появляется только в том случае, если для параметра конфигурации модели Разрешение сигнала (Signal resolution) задано значение, отличное от None.

Установка этого флажка отключает класс хранения «» Создание кода «».

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

Параметр блока: StateMustResolveToSignalObject
Текст: символьный вектор
Значения: 'off' | 'on'
По умолчанию: 'off'

Выберите пользовательский пакет класса хранения, выбрав класс сигнального объекта, определяемый целевым пакетом. Например, для применения пользовательских классов хранения из встроенного пакета mpt, выберите mpt.Signal. Если вы не используете цель создания кода на основе ERT с Embedded Coder ®, пользовательские классы хранения не влияют на созданный код.

Чтобы использовать пакет класса хранения, отличный от пакета Simulink, необходимо загрузить пакет в словарь Embedded Coder модели. См. раздел Загрузка пакетов классов хранения в словарь встроенного кодера (Embedded Coder).

Сведения о настройке данных модели с помощью классов хранения см. в разделе Конфигурация генерации кода C для элементов интерфейса модели (встроенный кодер). Сведения о пользовательских классах хранения см. в разделе Организация данных в структуры в сгенерированном коде (встроенный кодер).

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

Параметр блока: StateSignalObject
Текст: символьный вектор
Значения: 'Simulink.Signal' | '<StorageClass.PackageName>'
По умолчанию: 'Simulink.Signal'

Выберите класс хранения состояния для создания кода.

Используйте класс объекта Signal для выбора пользовательских классов хранения из пакета, отличного от Simulink.

Зависимости

Чтобы включить этот параметр, укажите значение для имени состояния.

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

Параметр блока: StateStorageClass
Текст: символьный вектор
Значения: 'Auto' | 'Model default' | 'ExportedGlobal' | 'ImportedExtern' | 'ImportedExternPointer' | 'Custom' | ...
По умолчанию: 'Auto'

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

Типы данных

Boolean | bus | double | enumerated | fixed point | half | integer | single | string

Прямой проход

yes

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

yes

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

yes

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

no

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

.

Преобразование с фиксированной точкой
Проектирование и моделирование систем с фиксированной точкой с помощью Designer™ с фиксированной точкой.

Представлен в R2012b