Function-Call Generator

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

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

  • Function-Call Generator block

Описание

Блок Function-Call Generator обеспечивает события вызова функции, которые выполняют подсистему вызова функций или модель вызова функции на уровне, который вы задаете параметром Sample time. Модель подсистемы вызова функций или вызова функции является подсистемой или моделью, содержащей блок Trigger с его набором параметров Trigger type к function-call.

Чтобы итеративно выполнить каждую подсистему вызова функций или модель вызова функции многократно на каждом временном шаге, используйте параметр Number of iterations.

Чтобы выполнить несколько подсистем вызова функций или моделей вызова функции в заданном порядке, используйте блок Function-Call Generator с блоком Function-Call Split. Для примера смотрите Function-Call Split.

Чтобы выполнить подсистему вызова функций или модель вызова функции периодически, означая не на каждом временном шаге, выбирают параметр Show enable port. Можно затем использовать вход в разрешать порте, чтобы управлять когда блок выходные события вызова функции. В действительности можно включить и выключить блок по мере необходимости.

Порты

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

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

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

Зависимости

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

Вывод

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

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

Параметры

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

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

По умолчанию блок использует временной интервал 1. Чтобы установить различный интервал, введите допустимый шаг расчета на основе таблицы в Типах Шага расчета или задайте -1 наследовать временной интервал от модели.

Зависимости

Чтобы включить этот параметр, снимите флажок Show enable port. Если вы выбираете Show enable port, шаг расчета автоматически установлен в -1 (наследованный).

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

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

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

Предположим, что вы задаете Number of iterations, чтобы быть [3 2] и соедините выход этого блока с блоком Demux, который соединяется с портами управления двух подсистем вызова функций. В этом случае первая подсистема вызова функций выполняется три раза на каждом временном шаге, и вторая подсистема вызова функций выполняется два раза на каждом временном шаге.

Если, однако, вы соединяете выход этого блока к одной подсистеме вызова функций или модели, общее количество времен, которые подсистема вызова функций или модель выполняют на временной шаг, равно сумме векторных значений элемента. Таким образом в примере выше, задавая Number of iterations, чтобы быть [3 2] и соединение выхода этого блока к одной подсистеме вызова функций приводит к подсистеме вызова функций, выполняющейся пять раз на каждом временном шаге.

Настройки

1

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

целое число

Целое число со знаком или номер беззнаковых целых чисел. Обеспечьте конкретное количество вызовов функции на каждом временном шаге.

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

Параметры блоков: numberOfIterations
Ввод: символьный вектор
Значения: '1' | '<integer>''<vector of integers>'
Значение по умолчанию: '1'

Если этот параметр не выбран, выход этого блока расширен в вектор, при необходимости, чтобы управлять блоками, с которыми это соединяется. Например, если Number of iterations установлен в 2 и Disallow wide output не выбран, и выход этого блока соединяется с блоком Demux, который в свою очередь соединяется с тремя отдельными подсистемами вызова функций, затем каждая подсистема вызова функций получает два события вызова функции на каждом временном шаге. Подобный результат происходит, если выход этого блока соединяется с Stateflow® стройте диаграмму с несколькими событиями. Если Disallow wide output выбран в этих ситуациях, Simulink производит ошибку.

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

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

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

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

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

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

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

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

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

Типы данных

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

no

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

no

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

no

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

no

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

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

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