Добавьте триггер или функциональный порт в подсистему или модель
Simulink/Порты и подсистемы
HDL-кодер/порты и подсистемы
Блок Trigger добавляет внешний сигнал, чтобы управлять выполнением подсистемы или модели. Чтобы включить эту функциональность, добавьте этот блок к Subsystem блоку или на корневом уровне модели, которая упоминается в Model блоке.
Затем сконфигурируйте блок Trigger, чтобы выполнить подсистему или модель:
Один раз в каждом временном шаге, когда значение сигнала управления изменяется таким образом, который вы задаете.
Несколько раз в течение временного шага, когда сигнал управления является событием вызова функции от Stateflow® график, Function-Call Generator блок или S-Function блок.
Port_1 - Значение, которое описывает сигнал управленияЗначение, которое идентифицирует управляющий сигнал, возвращаемое как скаляр или вектор. Для каждого элемента входного сигнала значение в заданный временной шаг является:
1 для сигнала, который вызывает увеличение триггера
-1 для сигнала, который вызывает падение триггера
2 для события вызова функции
0 во всех других случаях
Чтобы включить этот порт, выберите Show output port.
Типы данных: double | int8
Trigger type - Выберите тип управляющего сигналаrising (по умолчанию) | falling | either | function-callВыберите тип управляющего сигнала, который выполняет подсистему или модель.
risingТриггерное выполнение подсистемы или модели, когда управляющий сигнал повышается с отрицательного или нулевого значения до положительного значения. Если начальное значение отрицательное, сигнал увеличения до нуля запускает выполнение.
fallingТриггерное выполнение подсистемы или модели, когда управляющий сигнал падает с положительного или нулевого значения до отрицательного значения. Если начальное значение положительное, сигнал падения на ноль запускает выполнение.
eitherТриггерное выполнение подсистемы или модели, когда управляющий сигнал либо повышается, либо падает.
function-callВыполните подсистему или модель, когда управляющий сигнал получит событие вызова функции от диаграммы Stateflow, Function-Call Generator блока, S-Function блока или Hit Crossing блока.
Параметры блоков:
TriggerType |
| Тип: Вектор символов |
Значения:
'rising' | 'falling' | 'either' | 'function-call' |
По умолчанию:
'rising' |
Treat as Simulink function - Создайте функциональный блок SimulinkВыберите этот параметр, чтобы создать Simulink Function блок путем конфигурирования Subsystem блока, вызываемый с помощью аргументов от вызывающего функции. Блок Trigger должен находиться в подсистеме. Можно отредактировать прототип функции, который отображается на грани блока, чтобы задать входные и выходные аргументы для блока.
Очистите этот параметр, чтобы удалить строение.
Чтобы отобразить и включить этот параметр, выберите function-call из списка Trigger type.
Параметры блоков:
IsSimulinkFunction |
| Тип: Вектор символов |
Значения:
'off' | 'on' |
По умолчанию:
'off' |
Function name - Задайте имя функции для блока Simulink Functionf (по умолчанию) | имя функцииЗадайте имя функции для блока Simulink Function. Также можно задать имя, отредактировав прототип функции на грани блока.
fИмя по умолчанию для блока Simulink Function.
Имя функции, которая отображается на грани блока Simulink Function.
Чтобы отобразить и включить этот параметр, выберите function-call в списке Тип триггера и установите флажок Обработать как функцию Simulink.
Параметры блоков:
FunctionName |
| Тип: Вектор символов |
Значения:
'f' | '<function name>' |
По умолчанию:
'f' |
Enable variant condition - Управление активацией варианта управления (условие)Управление активацией варианта управления (условия), заданного параметром Variant Control.
Выберите этот параметр, чтобы активировать управление вариантом подсистемы. Выбор этого параметра:
Включает параметр Variant control.
Отображает значок варианта
на грани блока, указывающий, что условия варианта включены.
Очистите этот параметр, чтобы деактивировать управление вариантом подсистемы.
Чтобы отобразить и включить этот параметр, выберите function-call в списке Trigger type и установите флажок Treat as Simulink function.
Параметры блоков:
Variant |
| Тип: Вектор символов |
Значения:
'off' | 'on' |
По умолчанию:
'on' |
Variant control - Задайте выражение управления вариантом (условие)(inherit) (по умолчанию) | <logical expression>Задайте выражение управления вариантом (условие), которое выполняет вариант Simulink Function блок, когда выражение вычисляется как true.
(inherit)Значение по умолчанию для управления вариантом. Наследует условие варианта от соответствующих блоков Function Caller в модели. Когда Variant Control задано как (inherit) значение Generate preprocessor conditionals наследуется автоматически от блока Function Caller в модели.
Логическое (логическое) выражение или Simulink.Variant объект, представляющий логическое выражение.
Функция активируется, когда выражение вычисляется как true.
Если вы хотите сгенерировать код для модели, задайте переменные в выражении следующим Simulink.Parameter объекты.
Чтобы отобразить и включить этот параметр, выберите function-call в списке Тип триггера установите флажок Обработать как функцию Simulink, затем установите флажок Enable variant condition.
Параметры блоков:
VariantControl |
| Тип: Вектор символов |
Значения:
'(inherit)'| <logical expression> | Simulink.Variant object |
По умолчанию:
'(inherit)' |
Generate preprocessor conditionals - Управление, заключающее варианты выбораУправление вариантами выбора в условных операторах препроцессора С.
Выберите этот параметр, чтобы включить варианты в условные операторы препроцессора C (# if) при генерации кода для целевого устройства ERT.
Чтобы отобразить и включить этот параметр, установите флажок Enable variant condition .
Параметры блоков:
GeneratePreprocessorConditionals |
| Тип: Вектор символов |
Значения:
'off' | 'on' |
По умолчанию:
'off' |
Function visibility - Выбор видимости функцииscoped (по умолчанию) | globalВыберите возможности Simulink Function блока в подсистеме или модели.
scopedОграничьте доступность функции:
Иерархический уровень, содержащий блок Simulink Function и уровни ниже.
Один иерархический уровень выше с проверкой.
globalФункция, доступная из любой части иерархии модели.
Чтобы отобразить и включить этот параметр, выберите function-call в списке Тип триггера, затем установите флажок Обработать как функцию Simulink.
Параметры блоков:
FunctionVisibility |
| Тип: Вектор символов |
Значения:
'scoped' | 'global' |
По умолчанию:
'scoped' |
States when enabling - Выберите, как задать значения состояния блокаheld (по умолчанию) | reset | inheritВыберите, как задать значения состояния блока, когда подсистема или модель отключена.
heldОставьте состояния блока на своих текущих значениях.
resetСбросьте значения состояния блока.
inheritИспользуйте held или reset настройка от родительской подсистемы, инициирующей вызов функции. Если родительским элементом инициатора является корень модели, наследуемая настройка held. Если триггер имеет несколько инициаторов, установите для родительских элементов всех инициаторов значение held или reset.
Чтобы включить этот параметр, выберите function-call из списка Trigger Type.
Эта настройка параметра применяется только, если модель явно включает и отключает подсистему вызова функций. Для примера:
Подсистема вызова функций находится в включенной подсистеме. В этом случае модель включает и отключает подсистему вызова функций наряду с родительской подсистемой.
Инициатор вызова функции, который управляет подсистемой вызова функций, находится в включенной подсистеме. В этом случае модель включает и отключает подсистему вызова функций наряду с включенной подсистемой, содержащей инициатор вызова функции.
Инициатор вызова функции является событием Stateflow, связанным с конкретным состоянием. См. «Control Function-Call Subsystems Bind Actions (Stateflow)».
Инициатор вызова функции является S-функцией, которая явно включает и отключает подсистему вызова функций. Посмотрите ssEnableSystemWithTid например, пример.
Параметры блоков:
StatesWhenEnabling |
| Тип: Вектор символов |
Значения:
'held' | 'reset'| 'inherit' |
По умолчанию:
'held' |
Propagate sizes of variable-size signals - Выберите, когда распространять сигналы переменного размераDuring execution (по умолчанию) | Only when enablingВыберите, когда распространять сигналы переменного размера.
During executionРаспространяйте сигналы переменного размера на каждом временном шаге.
Only when enablingРазмножьте сигналы переменного размера, выполняя Subsystem блок или Model блок, содержащий Enable порт, Trigger порт с Trigger type набор к function-call, или Action Port блок. Когда вы выбираете эту опцию, шаг расчета должна быть периодической.
Чтобы отобразить и включить этот параметр для блока Trigger порта, выберите Function-call из списка Trigger type.
Параметры блоков:
PropagateVarSize |
| Тип: Вектор символов |
Значения:
'During execution' | 'Only when enabling' |
По умолчанию:
'During execution' |
Show output port - Управление отображением выходного портаУправляйте отображением выходного порта для сигнала, который идентифицирует триггерный сигнал или сигнал события вызова функции.
Выберите этот параметр, чтобы отобразить выход порт и определить, какой сигнал вызвал триггерный сигнал или событие вызова функции. Ширина выходного сигнала порта является шириной управляющего сигнала. Это значение сигналов:
1 для сигнала, который вызывает увеличение триггера
-1 для сигнала, который вызывает падение триггера
2 для события вызова функции
0 во всех других случаях
Очистите этот параметр, чтобы удалить выход порт.
Параметры блоков:
ShowOutputPort |
| Тип: Вектор символов |
Значения:
'off' | 'on' |
По умолчанию:
'off' |
Output data type - Выберите тип данных выходного портаauto (по умолчанию) | double | int8Выберите тип данных порта выхода для сигнала, который идентифицирует сигнал триггера или сигнал события вызова функции.
autoТип данных совпадает с типом порта, подключенного к выходу.
doubleДвойное значение.
int8Целое число значения
Чтобы включить этот параметр, установите флажок Show output port.
Блок Trigger игнорирует настройку переопределения типа данных для Fixed-Point Tool.
Параметры блоков: OutputDataType |
| Тип: Вектор символов |
Значения: 'auto' | 'double' | 'int8' |
По умолчанию: 'auto' |
Sample time type - Выбор скорости вызоваtriggered (по умолчанию) | periodicВыберите скорость вызова для подсистемы или модели.
triggeredПрименить к приложениям, которые не имеют периодической частоты вызова функции. Инициатор вызова функции может выполнять инициированную (апериодическую) подсистему вызова функций один или несколько раз за временной шаг и может обеспечивать последовательность апериодических событий вызова функции.
periodicИнициатор вызова функции может выполнять периодическую систему вызова функции только один раз за временной шаг и должен обеспечивать серию периодических событий вызова функции.. Диаграмма Stateflow является примером инициатора вызова функции.
Чтобы включить этот параметр, выберите Function-call из списка Trigger type.
Параметры блоков: SampleTimeType |
| Тип: Вектор символов |
Значения: 'triggered' | 'periodic' |
По умолчанию: 'triggered' |
Sample time - Задайте временной интервал-1 (по умолчанию) | Ts | [Ts, To]Задайте временной интервал между вызовами функции в подсистему или модель, содержащую этот блок Trigger порта. Если фактическая скорость вызова для подсистемы или модели отличается от временного интервала, заданного этим параметром, Simulink® отображает ошибку.
-1Наследование временного интервала от управляющего сигнала.
TsСкаляр, где Ts - временной интервал.
[Ts, To]Вектор, где Ts - временной интервал, а To - начальное смещение времени.
Чтобы включить этот параметр, выберите function-call из списка Тип триггера и periodic из списка Тип шага расчета.
Параметры блоков: SampleTime |
| Тип: Вектор символов |
Значения: '-1' | 'Ts'| '[Ts, To]' |
По умолчанию: '-1' |
Enable zero-crossing detection - Управление обнаружением пересечения нулемВыберите этот параметр, чтобы обнаружить пересечения нуля.
Чтобы включить этот параметр, выберите rising, falling, или either из списка Trigger type.
Параметры блоков:
ZeroCross |
| Тип: Вектор символов |
Значения:
'on' | 'off' |
По умолчанию:
'on' |
Initial trigger signal state - Выберите начальное состояние триггерного сигналаcompatibility (no trigger on first evaluation) (по умолчанию) | zero | positive | negativeВыберите начальное состояние сигнала управления триггером.
compatibility (no trigger on first evaluation)При первой оценке триггерного сигнала триггер отсутствует. Если вы выбираете эту опцию, и блок Trigger находится в подсистеме, где состояния сбрасываются, блок не сбрасывается.
zeroНуль. Помогает оценить поднимающийся или падающий триггерный сигнал на первом временном шаге.
positiveПоложительное значение. Помогает оценить падающий триггерный сигнал на первом временном шаге.
negativeОтрицательное значение. Помогает оценить повышающийся триггерный сигнал на первом временном шаге.
Чтобы отобразить и активировать этот параметр, выберите rising, falling, или either из списка Trigger type.
Параметры блоков: InitialTriggerSignalState |
| Тип: Вектор символов |
Значения: 'compatibility (no trigger on first evaluation)' | 'zero' | 'positive' | 'negative' |
По умолчанию: 'compatibility (no trigger on first evaluation)' |
Port dimensions - Задайте размерности для триггерного сигнала1 (по умолчанию) | [n] | [m n]Задайте размерности для триггерного сигнала, подключенного внешне к блоку Model и переданного внутрь блока.
1Скалярный сигнал.
[n]Векторный сигнал ширины n.
[m n]Матричный сигнал, имеющий m строки и n столбцы.
Чтобы отобразить и включить этот параметр для блока Trigger порта на корневом уровне модели, выберите rising, falling, или either из списка Trigger type.
Параметры блоков: PortDimensions |
| Тип: Вектор символов |
Значения: '1' | '[n]' | '[m n]' |
По умолчанию: '1' |
Trigger signal sample time - Задайте временной интервал-1 (по умолчанию) | Ts | [Ts, To]Задайте временной интервал между выполнениями метода блока для блока, управляющего триггерным сигналом.
-1Наследование временного интервала.
TsСкаляр, где Ts - временной интервал.
[Ts, To]Вектор, где Ts - временной интервал, а To - начальное смещение времени.
Чтобы отобразить и включить этот параметр для блока Trigger порта на корневом уровне модели, выберите rising, falling, или either из списка Trigger type.
Параметры блоков: TriggerSignalSampleTime |
| Тип: Вектор символов |
Значения: '-1' | 'Ts'| '[Ts, To]' |
По умолчанию: '-1' |
Minimum - Задайте минимальное выходное значение для триггерного сигнала[] (по умолчанию) | действительный скалярЗадайте минимальное значение триггерного сигнала, подключенного извне к блоку Model и переданного внутрь блока.
Simulink использует это значение для выполнения:
Проверка области значений симуляции. См. «Задание диапазонов сигнала».
Автоматическое масштабирование типов данных с фиксированной точкой.
Оптимизация сгенерированного кода. Эта оптимизация может удалить алгоритмический код и повлиять на результаты некоторых режимов симуляции, таких как SIL или режим external mode. Смотрите Оптимизировать используя указанные минимальное и максимальное значения (Embedded Coder).
[]Неопределенное минимальное значение.
Действительное скалярное значение.
Чтобы отобразить и включить этот параметр для блока Trigger порта на корневом уровне модели, выберите rising, falling, или either из списка Trigger type.
Параметры блоков: OutMin |
| Тип: Вектор символов |
Значения: '[]' | '<real scalar>' |
По умолчанию: '[]' |
Maximum - Задайте максимальное выходное значение для триггерного сигнала[] (по умолчанию) | действительный скалярЗадайте максимальное значение триггерного сигнала, подключенного извне к блоку Model и переданного внутрь блока.
Simulink использует это значение для выполнения:
Проверка области значений симуляции. См. «Задание диапазонов сигнала».
Автоматическое масштабирование типов данных с фиксированной точкой.
Оптимизация сгенерированного кода. Эта оптимизация может удалить алгоритмический код и повлиять на результаты некоторых режимов симуляции, таких как SIL или режим external mode. Смотрите Оптимизировать используя указанные минимальное и максимальное значения (Embedded Coder).
[]Не заданное максимальное значение.
Действительное скалярное значение.
Чтобы отобразить и включить этот параметр для блока Trigger порта на корневом уровне модели, выберите rising, falling, или either из списка Trigger type.
Параметры блоков: OutMax |
| Тип: Вектор символов |
Значения: '[]' | '<real scalar>' |
По умолчанию: '[]' |
Data type - Выберите тип выходных данных для триггерного сигналаdouble (по умолчанию) | single | int8 | uint8 | int16 | uint16 | int32 | uint32 | int64 | uint64 | boolean | fixdt(1,16) | fixdt(1,16,0) | fixdt(1,16,2^,0) | <data type expression>Выберите тип данных для триггерного сигнала, присоединенного внешне к блоку Model и переданного внутрь блока.
doubleПлавающая точка двойной точности.
singleПлавающая точка с одной точностью.
int8Подписанное 8-битное целое число.
uint8Беззнаковое 8-битное целое число.
int16Подписанное 16-битное целое число.
uint16Беззнаковое 16-битное целое число.
int32Подписанное 32-битное целое число.
uint32Беззнаковое 32-битное целое число.
int64Подписанное 64-битное целое число.
uint64Беззнаковое 64-битное целое число.
booleanЛогическое значение со значением true или false.
fixdt(1,16)Подписан 16-битный номер фиксированной точки с неопределенной двоичной точкой.
fixdt(1,16,0)Подписанный 16-битный номер фиксированной точки с двоичной точкой, установленной на нуле.
fixdt(1,16,2^,0)16-битный номер фиксированной точки со знаком «наклон», установленным на 2^0 и смещение, установленное на 0.
<data type expression>Объект типа данных, например Simulink.NumericType. Вы не можете ввести имя Simulink.Bus объект как выражение типа данных.
Чтобы отобразить и включить этот параметр для блока Trigger порта на корневом уровне модели, выберите rising, falling, или either из списка Trigger type.
Параметры блоков: OutDataTypeStr |
| Тип: Вектор символов |
Значения: 'double' | 'single' | 'int8' | 'uint8' | 'int16' | 'uint16' | 'int32' | 'uint32' | 'int64' | 'uint64' | 'boolean' | 'fixdt(1,16)' | 'fixdt(1,16,0)' | 'fixdt(1,16,2^0,0)' | '<data type expression>' |
По умолчанию: 'double' |
Mode - Выберите категорию типа данныхBuilt in (по умолчанию) | Fixed point | ExpressionВыберите категорию типа данных и отобразите раскрывающиеся списки, чтобы помочь вам определить тип данных.
Built inОтобразите раскрывающиеся списки для типа данных и Data type override.
Fixed pointОтобразите раскрывающиеся списки для Signedness, Scaling и Data type override.
ExpressionОтобразите текстовое поле для ввода выражения.
Чтобы включить этот параметр, нажмите кнопку Show data type assistant.![]()
Нет эквивалентного параметра командной строки.
Interpolate data - Управление оценкой отсутствующих данных рабочей областиУправляйте, как оцениваются отсутствующие данные рабочей области при загрузке данных из MATLAB® рабочей области.
Выберите этот параметр, чтобы линейно интерполировать выход в временные шаги, для которых нет соответствующих данных рабочей области.
Очистите этот параметр, чтобы задать выход в такие временные шаги, равный выходу на самом последнем временном шаге, для которого существуют данные.
Чтобы отобразить и включить этот параметр для блока Trigger порта на корневом уровне модели, выберите rising, falling, или either из списка Trigger type.
Параметры блоков: Interpolate |
| Тип: Вектор символов |
Значения: 'on' | 'off' |
По умолчанию: 'on' |
Типы данных |
|
Прямое сквозное соединение |
|
Многомерные сигналы |
|
Сигналы переменного размера |
|
Обнаружение пересечения нулем |
|
HDL Coder™ предоставляет дополнительные опции строения, которые влияют на реализацию HDL и синтезированную логику. См. также «Генерация HDL-кода».
Этот блок имеет одну архитектуру HDL по умолчанию.
Enabled and Triggered Subsystem | Function-Call Subsystem | Subsystem | Triggered Subsystem
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.





