Trigger

Добавьте триггер или функциональный порт к подсистеме или модели

  • Библиотека:
  • Simulink / Ports & Subsystems

    HDL Coder / Ports & Subsystems

  • Trigger block

Описание

Блок Trigger добавляет внешний сигнал управлять выполнением подсистемы или модели. Чтобы добавить эту функциональность, добавьте этот блок в блок Subsystem или на корневом уровне модели, на которую ссылаются в блоке Model.

Затем сконфигурируйте блок Trigger, чтобы выполнить подсистему или модель:

  • Однажды на каждом временном шаге, когда значение изменений управляющего сигнала способом, что вы задаете.

  • Многократно во время временного шага, когда управляющий сигнал является событием вызова функции из графика Stateflow®, блока Function-Call Generator или блока S-Function.

Порты

Вывод

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

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

  • 1 для сигнала, который вызывает возрастающий триггер

  • -1 для сигнала, который вызывает падающий триггер

  • 2 для события вызова функции

  • 0 во всех других случаях

Зависимости

Чтобы включить этот порт, выберите Show output port.

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

Параметры

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

Основной

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

rising

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

falling

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

either

Инициируйте выполнение подсистемы или модели, когда управляющий сигнал или повысится или упадет.

function-call

Выполните подсистему или модель, когда управляющий сигнал получит событие вызова функции от диаграммы Stateflow, блока Function-Call Generator, блока S-Function или блока Hit Crossing.

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

Параметры блоков: TriggerType
Ввод: символьный вектор
Значения: 'rising' | 'falling' | 'either' | 'function-call'
Значение по умолчанию: 'rising'

Выберите этот параметр, чтобы создать блок Simulink Function путем конфигурирования блока Subsystem, который является вызываемым с аргументами от функциональной вызывающей стороны. Блок Trigger должен находиться в подсистеме. Можно отредактировать прототипа функции, который отображается на поверхности блока, чтобы задать аргументы ввода и вывода для блока.

Очистите этот параметр, чтобы удалить настройку.

Зависимость

Чтобы отобразить и включить этот параметр, выберите function-call из списка Trigger type.

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

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

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

f

Имя по умолчанию для блока Simulink Function.

functionName

Имя функции, которое отображается на поверхности блока Simulink Function.

Зависимость

Чтобы отобразить и включить этот параметр, выберите function-call из Триггерного списка типов и выбирают Treat как флажок Simulink Function.

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

Параметры блоков: FunctionName
Ввод: символьный вектор
Значения: 'f' | '<function name>'
Значение по умолчанию: 'f'

Управление, активирующее различное управление (условие), задано параметром Variant Control.

Выберите этот параметр, чтобы активировать различное управление подсистемы. Выбор этого параметра:

  • Включает параметр Variant control.

  • Отображает различный значок на поверхности блока, указывающего, что различные условия включены.

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

Зависимость

Чтобы отобразить и включить этот параметр, выберите function-call от Trigger type перечисляют и устанавливают флажок Treat as Simulink function.

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

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

Задайте различное управление (условие) выражение, которое выполняет блок варианта Simulink Function, когда выражение оценивает к true.

(inherit)

Значение по умолчанию для различного управления. Наследовал различное условие от соответствующих блоков Function Caller в модели. Когда Variant Control установлен как (inherit) значение для Generate preprocessor conditionals наследовано автоматически от блока Function Caller в модели.

логическое выражение

Логическое (булево) выражение или Simulink.Variant объект, представляющий логическое выражение.

Функция активируется, когда выражение оценивает к true.

Если вы хотите сгенерировать код для своей модели, задайте переменные в выражении как Simulink.Parameter объекты.

Зависимость

Чтобы отобразить и включить этот параметр, выберите function-call из Триггерного списка типов выберите Treat как флажок Simulink Function, затем установите флажок Enable variant condition.

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

Параметры блоков: VariantControl
Ввод: символьный вектор
Значения: '(inherit)'|<logical expression> | Simulink.Variant object
Значение по умолчанию: '(inherit)'

Управляйте вариантами включения в условных операторах препроцессора C.

Выберите этот параметр, чтобы заключить варианты в условных операторах препроцессора C (#if) при генерации кода для цели ERT.

Зависимость

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

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

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

Выберите осциллограф блока Simulink Function в подсистеме или модели.

scoped

Ограничьте доступность функции к:

  • Иерархический уровень, содержащий блок Simulink Function и уровни ниже.

  • Один иерархический уровень выше с проверкой.

global

Функция, доступная от любой части иерархии модели.

Зависимость

Чтобы отобразить и включить этот параметр, выберите function-call из Триггерного списка типов затем выберите Treat как флажок Simulink Function..

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

Параметры блоков: FunctionVisibility
Ввод: символьный вектор
Значения: 'scoped' | 'global'
Значение по умолчанию: 'scoped'

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

held

Оставьте состояния блока в их текущих значениях.

reset

Сбросьте значения состояния блока.

inherit

Используйте held или reset сходя с родительской подсистемы, инициирующей вызов функции. Если родительский элемент инициатора является корнем модели, наследованной установкой является held. Если триггер имеет несколько инициаторов, установите родительские элементы всех инициаторов к любому held или reset.

Зависимости

Чтобы включить этот параметр, выберите function-call из списка Trigger Type.

Эта установка параметра применяется, только если модель явным образом включает и отключает подсистему вызова функций. Например:

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

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

  • Инициатор вызова функции является событием Stateflow, связанным с конкретным состоянием. Смотрите, что Подсистемы вызова функций Управления при помощи связывают Действия (Stateflow).

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

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

Параметры блоков: StatesWhenEnabling
Ввод: символьный вектор
Значения: 'held' | 'reset'| 'inherit'
Значение по умолчанию: 'held'

Выберите, когда распространить сигналы переменного размера.

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'

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

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

  • 1 для сигнала, который вызывает возрастающий триггер

  • -1 для сигнала, который вызывает падающий триггер

  • 2 для события вызова функции

  • 0 во всех других случаях

Очистите этот параметр, чтобы удалить выходной порт.

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

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

Выберите тип данных выходного порта для сигнала, который идентифицирует триггерный сигнал или сигнал события вызова функции.

auto

Тип данных совпадает с портом, соединенным с выходом.

double

Двойное значение.

int8

Целочисленное значение

Зависимость

Чтобы включить этот параметр, установите флажок Show output port.

Блок Trigger игнорирует установку переопределения Типа данных для Fixed-Point Tool.

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

Параметры блоков: OutputDataType
Ввод: символьный вектор
Значения: 'auto' | 'double' | 'int8'
Значение по умолчанию: 'auto'

Выберите уровень вызова для подсистемы или модели.

triggered

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

periodic

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

Зависимость

Чтобы включить этот параметр, выберите Function-call из списка Trigger type.

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

Параметры блоков: SampleTimeType
Ввод: символьный вектор
Значения: 'triggered' | 'periodic'
Значение по умолчанию: 'triggered'

Задайте временной интервал между вызовами функции к подсистеме или модели, содержащей эту блокировку порта Trigger. Если фактический уровень вызова для подсистемы или модели отличается от временного интервала, этот параметр задает, Simulink® отображает ошибку.

-1

Наследуйте временной интервал от управляющего сигнала.

Ts

Скаляр, где Ts является временным интервалом.

[Ts, To]

Вектор, где Ts является временным интервалом и К, является начальным смещением времени.

Зависимости

Чтобы включить этот параметр, выберите function-call из Триггерного списка типов и periodic из списка типов Шага расчета.

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

Параметры блоков: SampleTime
Ввод: символьный вектор
Значения: '-1' | 'Ts'| '[Ts, To]'
Значение по умолчанию: '-1'

Выберите этот параметр, чтобы обнаружить нулевые пересечения.

Зависимости

Чтобы включить этот параметр, выберите rising, falling, или either из списка Trigger type.

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

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

Выберите начальное состояние триггерного управляющего сигнала.

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)'

Атрибуты сигнала

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

1

Скалярный сигнал.

[n]

Векторный сигнал ширины n.

[m n]

Матричный сигнал, имеющий m строки и n столбцы.

Зависимость

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

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

Параметры блоков: PortDimensions
Ввод: символьный вектор
Значения: '1' | '[n]' | '[m n]'
Значение по умолчанию: '1'

Задайте временной интервал между осуществлениями метода блока для блока, управляющего триггерным сигналом.

-1

Наследуйте временной интервал.

Ts

Скаляр, где Ts является временным интервалом.

[Ts, To]

Вектор, где Ts является временным интервалом и К, является начальным смещением времени.

Зависимость

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

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

Параметры блоков: TriggerSignalSampleTime
Ввод: символьный вектор
Значения: '-1' | 'Ts'| '[Ts, To]'
Значение по умолчанию: '-1'

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

Simulink использует это значение, чтобы выполнить:

[]

Незаданное минимальное значение.

действительный скаляр

Действительное скалярное значение.

Зависимость

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

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

Параметры блоков: OutMin
Ввод: символьный вектор
Значения: '[]' | '<real scalar>'
Значение по умолчанию: '[]'

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

Simulink использует это значение, чтобы выполнить:

[]

Незаданное максимальное значение.

действительный скаляр

Действительное скалярное значение.

Зависимость

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

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

Параметры блоков: OutMax
Ввод: символьный вектор
Значения: '[]' | '<real scalar>'
Значение по умолчанию: '[]'

Выберите тип данных для триггерного сигнала, присоединенного внешне к блоку 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'

Выберите категорию типов данных и отобразите выпадающие списки, чтобы помочь вам задать тип данных.

Built in

Отобразите выпадающие списки для типа данных и Data type override.

Fixed point

Отобразите выпадающие списки для Signedness, Scaling и Data type override.

Expression

Отобразите текстовое поле для ввода выражения.

Зависимость

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

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

Никакой эквивалентный параметр командной строки.

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

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

Очистите этот параметр, чтобы установить выход на таких временных шагах, равных выходу на шаге наиболее последнего времени, для которого существуют данные.

Зависимость

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

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

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

Примеры модели

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

Типы данных

Boolean | double | enumerated | fixed point | integer | single

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

no

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

yes

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

no

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

yes

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

Генерация кода C/C++
Генерация кода C и C++ с помощью Simulink® Coder™.

Генерация кода PLC
Сгенерируйте код Структурированного текста с помощью Simulink® PLC Coder™.

Преобразование фиксированной точки
Спроектируйте и симулируйте системы фиксированной точки с помощью Fixed-Point Designer™.

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