Сигнал задержки входа к переменному периоду расчета и сбросу с внешним сигналом
Simulink / Дискретный
HDL Coder / Дискретный
Блок Resettable Delay является вариантом блока Delay, который имеет источник начального набора условия к Input port
и внешний набор алгоритма сброса к Rising
, по умолчанию.
u
— Сигнал ввода данныхСигнал входных данных задержан согласно настройкам параметров.
Типы данных: half
| single
| double
| int8
| int16
| int32
| int64
| uint8
| uint16
| uint32
| uint64
| string
| Boolean
| fixed point
| enumerated
| bus
d
— Задержите длинуЗадержите длину, заданную, как наследовано от входного порта. Enabled, когда вы выбираете параметр Delay length: Source как Input port
.
Типы данных: half
| single
| double
| int8
| int16
| int32
| int64
| uint8
| uint16
| uint32
| uint64
| fixed point
Enable
— Внешний включают сигналВключите сигнал, который включает или отключает выполнение блока. Чтобы создать этот порт, выберите параметр Show enable port.
Типы данных: single
| double
| int8
| int16
| int32
| int64
| uint8
| uint16
| uint32
| uint64
| Boolean
| fixed point
External reset
— Внешний сигнал сбросаВнешний сигнал, что выполнение сброса блока к начальному условию. Чтобы создать этот порт, выберите параметр External reset.
Типы данных: single
| double
| int8
| int16
| int32
| int64
| uint8
| uint16
| uint32
| uint64
| Boolean
| fixed point
x0
— Начальное условиеНачальное условие, заданное, как наследовано от входного порта. Enabled, когда вы выбираете параметр Initial Condition: Source как Input port
.
Типы данных: half
| single
| double
| int8
| int16
| int32
| int64
| uint8
| uint16
| uint32
| uint64
| fixed point
Port_1
— Выходной сигналВыходной сигнал, который является входным сигналом, задержанным отрезком времени, заданным параметром Delay length. Начальное значение выходного сигнала зависит от нескольких условий. Смотрите Начальный Блок Выход.
Типы данных: half
| single
| double
| int8
| int16
| int32
| int64
| uint8
| uint16
| uint32
| uint64
| Boolean
| fixed point
| enumerated
| bus
Delay length
— Задержите длинуDialog
(значение по умолчанию) | Input port
Задайте, ввести ли длину задержки непосредственно в диалоговое окно (зафиксированная задержка) или наследовать задержку от входного порта (переменная задержка).
Если вы устанавливаете Source на Dialog
, введите длину задержки в поле редактирования под Value.
Если вы устанавливаете Source на Input port
, проверьте, что восходящий сигнал предоставляет длину задержки для d
входной порт. Можно также задать его максимальное значение путем определения параметра Upper limit.
Задайте скалярную длину задержки как действительное, неотрицательное целое число. Значение из области значений или значение нецелого числа в диалоговом окне (зафиксированная задержка) возвращают ошибку. Значение из области значений от входного порта (переменная задержка) бросает его в область значений. Значение нецелого числа от входного порта (переменная задержка) обрезает его до целого числа.
Параметры блоков: DelayLengthSource |
Ввод: символьный вектор |
Значения: 'Dialog' | 'Input port' | |
Значение по умолчанию: 'Dialog' |
Параметры блоков: DelayLength |
Ввод: символьный вектор |
Значения: скаляр |
Значение по умолчанию: '2' |
Параметры блоков: DelayLengthUpperLimit |
Ввод: символьный вектор |
Значения: скаляр |
Значение по умолчанию: '100' |
Initial condition
— Начальное условиеInput port
(значение по умолчанию) | Dialog
Задайте, ввести ли начальное условие непосредственно в диалоговое окно или наследовать начальное условие от входного порта.
Если вы устанавливаете Source на Dialog
, введите начальное условие в поле редактирования под Value.
Если вы устанавливаете Source на Input port
, проверьте, что восходящий сигнал предоставляет начальное условие для x0
входной порт.
Simulink® преобразует оффлайн тип данных Initial condition к типу данных входного сигнала u
использование операции раунда-к-самому-близкому и насыщения.
Примечание
Когда State name must resolve to Simulink signal object является выбранным On панели State Attributes, блок копирует начальное значение объекта сигнала к параметру Initial condition. Однако, когда источником для Initial condition является Input port
, блок игнорирует начальное значение объекта сигнала.
Параметры блоков: InitialConditionSource |
Ввод: символьный вектор |
Значения: 'Dialog' | 'Input port' | |
Значение по умолчанию: 'Input Port' |
Параметры блоков: InitialCondition |
Ввод: символьный вектор |
Значения: скаляр |
Значение по умолчанию: '' |
Input processing
— Задайте выборку - или основанная на системе координат обработкаElements as channels (sample based)
(значение по умолчанию) | Columns as channels (frame based)
Задайте, выполняет ли блок выборку - или основанная на системе координат обработка:
Columns as channels (frame based)
— Обработайте каждый столбец входа как отдельный канал (основанная на системе координат обработка).
Примечание
Основанная на системе координат обработка требует лицензии DSP System Toolbox™.
Для получения дополнительной информации смотрите Выборку - и Основанные на системе координат Концепции (DSP System Toolbox).
Elements as channels (sample based)
— Обработайте каждый элемент входа как отдельный канал (основанная на выборке обработка).
Используйте Input processing, чтобы задать, выполняет ли блок выборку - или основанная на системе координат обработка. Блок принимает основанные на системе координат сигналы для входа u
. Все другие входные сигналы должны быть основаны на выборке.
Входной сигнал u | Введите режим обработки | Кладка блоков? |
---|---|---|
Выборка базирующейся | Выборка базирующейся | Да |
Система координат базирующейся | Нет, производит ошибку | |
Выборка базирующейся | Система координат базирующейся | Да |
Система координат базирующейся | Да |
Для получения дополнительной информации об этих двух режимах обработки, смотрите Выборку - и Основанные на системе координат Концепции (DSP System Toolbox).
Параметры блоков: InputProcessing |
Ввод: символьный вектор |
Значения: 'Columns as channels (frame based)' | 'Elements as channels (sample based)' |
Значение по умолчанию: 'Elements as channels (sample based)' |
Use circular buffer for state
— Кольцевой буфер для хранения состоянияoff
(значение по умолчанию) | on
Выберите, чтобы использовать кольцевой буфер для хранения состояния в симуляции и генерации кода. В противном случае, массив буферная память состояние.
Используя кольцевой буфер может улучшить скорость выполнения, когда длина задержки является большой. Для буфера массивов количества увеличений операций копии, когда повышается длина задержки. Для кольцевого буфера количество операций копии является постоянным для увеличения длины задержки.
Если одно из следующих условий верно, буфер массивов всегда хранит состояние, потому что кольцевой буфер не улучшает скорость выполнения:
Для основанных на выборке сигналов длина задержки равняется 1.
Для основанных на системе координат сигналов длина задержки не больше, чем формат кадра.
Параметры блоков: UseCircularBuffer |
Ввод: символьный вектор |
Значения: 'off' | 'on' |
Значение по умолчанию: 'off' |
Prevent direct feedthrough
— Предотвратите прямое сквозное соединениеoff
(значение по умолчанию) | on
Выберите, чтобы увеличить длину задержки от нуля до нижнего предела для режима Input processing:
Для основанных на выборке сигналов увеличьте минимальную длину задержки до 1.
Для основанных на системе координат сигналов увеличьте минимальную длину задержки до длины системы координат.
Установка этого флажка предотвращает прямое сквозное соединение от входного порта, u
, к выходному порту. Однако этот флажок не может предотвратить прямое сквозное соединение от начального порта условия, x0
, к выходному порту.
Чтобы включить этот параметр, установите Delay length: Source на Input port
.
Параметры блоков: PreventDirectFeedthrough |
Ввод: символьный вектор |
Значения: 'off' | 'on' |
Значение по умолчанию: 'off' |
Remove delay length check in generated code
— Удалите длину задержки, из области значений проверяютoff
(значение по умолчанию) | on
Выберите, чтобы удалить код, который проверяет на длину задержки из области значений.
Флажок | Результат | Когда использовать |
---|---|---|
Выбранный | Сгенерированный код не включает условные операторы, чтобы проверять на длину задержки из области значений. | Для КПД кода |
Очищенный | Сгенерированный код включает условные операторы, чтобы проверять на длину задержки из области значений. | Для важных приложений безопасности |
Чтобы включить этот параметр, установите Delay length: Source на Input port
.
Параметры блоков: RemoveDelayLengthCheckInGeneratedCode |
Ввод: символьный вектор |
Значения: 'off' | 'on' |
Значение по умолчанию: 'off' |
Diagnostic for delay length
— Диагностические проверки для длины задержкиNone
(значение по умолчанию) | Warning
| Error
Задайте, произвести ли предупреждение или ошибку когда вход d
меньше нижнего предела или больше, чем Delay length: Upper limit. Нижний предел зависит от установки для Prevent direct feedthrough.
Если флажок снимается, нижний предел является нулем.
Если флажок устанавливается, нижний предел 1 для основанных на выборке сигналов и длины системы координат для основанных на системе координат сигналов.
Опции для диагностики включают:
None
— Программное обеспечение Simulink не принимает мер.
Warning
— Программное обеспечение Simulink выводит предупреждение и продолжает симуляцию.
Error
— Программное обеспечение Simulink отключает симуляцию и отображает ошибку.
Чтобы включить этот параметр, установите Delay length: Source на Input port
.
Параметры блоков: DiagnosticForDelayLength |
Ввод: символьный вектор |
Значения: 'None' | 'Warning' | 'Error' |
Значение по умолчанию: 'None' |
Show enable port
— Создайте включают портoff
(значение по умолчанию) | on
Выберите, чтобы управлять выполнением этого блока с разрешать портом. Блок рассматривается активированным, когда вход к этому порту является ненулевым, и отключен, когда входом является 0
. Значение входа проверяется одновременно шаг как выполнение блока.
Параметры блоков:
ShowEnablePort
|
Ввод: символьный вектор |
Значения:
'off' | 'on' |
Значение по умолчанию:
'off' |
External reset
— Внешний сброс состоянияRising
(значение по умолчанию) | None
| Falling
| Either
| Level
| Level hold
Задайте триггерное событие, чтобы использовать, чтобы сбросить состояния к начальным условиям.
Сбросьте режим | Поведение |
---|---|
None | Никакой сброс. |
Rising | Сбросьте на возрастающем ребре. |
Falling | Сбросьте на падающем ребре. |
Either | Сбросьте или на повышении или на падающем ребре. |
Level | Сбросьте в любом из этих случаев:
|
Level hold | Сбросьте, когда сигнал сброса будет ненулевым на шаге текущего времени |
Сигнал сброса должен быть скаляром типа single
'double'
, boolean
, или integer
. Типы данных фиксированной точки, за исключением ufix1
, не поддерживаются.
Параметры блоков: ExternalReset |
Ввод: символьный вектор |
Значения: 'None' | 'Rising' | 'Falling' | 'Either' | 'Level' | 'Level hold' |
Значение по умолчанию: 'Rising' |
Sample time (-1 for inherited)
— Дискретный интервал между хитами шага расчета
(значение по умолчанию) | scalar
Задайте временной интервал между выборками. Чтобы наследовать шаг расчета, установите этот параметр на -1
. Этот блок поддерживает дискретный шаг расчета, но не время непрерывной выборки.
Параметры блоков: SampleTime |
Ввод: символьный вектор |
Значение: действительный скаляр |
Значение по умолчанию: '-1' |
State name
— Уникальное имя для состояния блока''
(значение по умолчанию) | алфавитно-цифровая строкаИспользуйте этот параметр, чтобы присвоить уникальное имя состоянию блока. Значением по умолчанию является ' '
. Когда это поле является пробелом, никакое имя не присвоено. При использовании этого параметра помните эти факторы:
Допустимый идентификатор запускается с буквенного символа или символа подчеркивания, сопровождаемого алфавитно-цифровыми символами или символами подчеркивания.
Имя состояния применяется только к выбранному блоку.
Этот параметр включает State name must resolve to Simulink signal object, когда вы нажимаете Apply.
Для получения дополнительной информации смотрите Настройку генерации кода C для Элементов Интерфейса модели (Simulink Coder).
Параметры блоков: StateName |
Ввод: символьный вектор |
Значения: уникальное имя |
Значение по умолчанию: '' |
State name must resolve to Simulink signal object
— Потребуйте, чтобы имя состояния решило к объекту сигналаoff
(значение по умолчанию) | on
Установите этот флажок, чтобы потребовать, чтобы имя состояния решило к объекту Сигнала Simulink.
Чтобы включить этот параметр, задайте значение для State name. Этот параметр появляется, только если вы устанавливаете параметр конфигурации модели Signal resolution на значение кроме None
.
Установка этого флажка отключает Code generation storage class.
Параметры блоков: StateMustResolveToSignalObject |
Ввод: символьный вектор |
Значения:
'off' | 'on' |
Значение по умолчанию: 'off' |
Signal object class
— Пользовательское имя пакета класса памятиSimulink.Signal
(значение по умолчанию) | <StorageClass.PackageName>
Выберите пользовательский пакет класса памяти путем выбора класса объекта сигнала, который задает целевой пакет. Например, чтобы применить пользовательские классы памяти от встроенного пакета mpt
, выберите mpt.Signal
. Если вы не используете основанную на ERT цель генерации кода с Embedded Coder®, пользовательские классы памяти не влияют на сгенерированный код.
Чтобы использовать пакет класса памяти кроме пакета Simulink, необходимо загрузить пакет в Словарь Embedded Coder модели. Смотрите Пакеты Класса памяти Загрузки в Словарь Embedded Coder (Embedded Coder).
Для получения информации о конфигурировании данных модели при помощи классов памяти смотрите Настройку генерации кода C для Элементов Интерфейса модели (Embedded Coder). Для получения информации о пользовательских классах памяти смотрите, Организуют Данные в Структуры в Сгенерированном коде (Embedded Coder).
Параметры блоков: StateSignalObject |
Ввод: символьный вектор |
Значения:
'Simulink.Signal' | '<StorageClass.PackageName>' |
Значение по умолчанию: 'Simulink.Signal' |
Code generation storage class
— Класс памяти состояния для генерации кодаAuto
(значение по умолчанию) | Model default
| ExportedGlobal
| ImportedExtern
| ImportedExternPointer
| BitField (Custom)
| Model default
| ExportToFile (Custom)
| ImportFromFile (Custom)
| FileScope (Custom)
| AutoScope (Custom)
| Struct (Custom)
| GetSet (Custom)
| Reusable (Custom)
Выберите класс памяти состояния для генерации кода.
Auto
соответствующий класс памяти для состояний, с которыми вы не должны соединять интерфейсом к внешнему коду.
применяет класс памяти или пользовательский класс памяти, который вы выбираете из списка. Для получения информации о классах памяти смотрите Настройку генерации кода C для Элементов Интерфейса модели (Simulink Coder). Для получения информации о пользовательских классах памяти смотрите, Организуют Данные о Параметре в Структуру при помощи Класса памяти Struct (Embedded Coder).StorageClass
Используйте Signal object class, чтобы выбрать пользовательские классы памяти из пакета кроме Simulink
.
Чтобы включить этот параметр, задайте значение для State name.
Параметры блоков:
StateStorageClass |
Ввод: символьный вектор |
Значения:
'Auto' | 'Model default' | 'ExportedGlobal' | 'ImportedExtern' | 'ImportedExternPointer' | 'Custom' | ... |
Значение по умолчанию: 'Auto' |
Типы данных |
|
Прямое сквозное соединение |
|
Многомерные сигналы |
|
Сигналы переменного размера |
|
Обнаружение пересечения нулем |
|
Рассмотрите использование Discretizer Модели, чтобы сопоставить эти непрерывные блоки в дискретные эквиваленты та генерация кода поддержки. Из модели, во вкладке Apps, под Control Systems, нажимают Model Discretizer.
Не рекомендуемый для производственного кода.
Для получения информации о генерации HDL-кода смотрите раздел HDL Code Generation на странице Delay.
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.