Задайте функцию Simulink в диаграмме Stateflow

Функция Simulink® является графическим объектом, который вы заполняете блоками Simulink и вызываете в действиях состояний и переходах. Функции Simulink поддерживаются только в графиках Stateflow® в моделях Simulink. Для получения дополнительной информации смотрите Повторное использование Компоненты Simulink в диаграммах Stateflow.

Задача 1: добавьте функцию в график

Выполните эти шаги, чтобы добавить функцию Simulink в график:

  1. Кликните по значку функции Simulink на панели инструментов Stateflow Editor:

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

    Совет

    Можно также перетащить функцию от панели инструментов.

  3. Введите функциональную подпись.

    Функциональная подпись задает имя для вашей функции и официальные имена для аргументов и возвращаемых значений. Подпись имеет этот синтаксис:

    [r_1, r_2,..., r_n] = simfcn(a_1, a_2,..., a_n)

    где simfcn имя вашей функции, a_1, a_2..., a_n официальные имена для аргументов и r_1r2 ..., r_n официальные имена для возвращаемых значений.

    Примечание

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

  4. Щелкните вне функционального поля.

Следующий пример показывает функцию Simulink, которая имеет имя sim_fcn, который берет три аргумента (aB, и c) и возвращает два значения (x и y).

Примечание

Можно также создать и отредактировать функцию Simulink при помощи методов API.

Задача 2: задайте элементы подсистемы функции Simulink

Выполните эти шаги, чтобы задать элементы подсистемы функции Simulink:

  1. Дважды кликните поле функции Simulink.

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

  2. Добавьте блоки Simulink в подсистему.

  3. Соедините порты ввода и вывода с каждым блоком.

Примечание

Вы не можете удалить триггерный порт в функции.

Следующий пример показывает элементы подсистемы для функции Simulink.

Задача 3: сконфигурируйте входные параметры функции

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

  1. Сконфигурируйте входные порты.

    1. Дважды кликните входной порт, чтобы открыть диалоговое окно Block Parameters.

    2. В панели Signal Attributes введите размер и тип данных.

      Например, можно задать размер [2 3] для 2 3 матрицы и типа данных uint8.

  2. Нажмите OK.

Примечание

Входной порт функции Simulink не может наследовать размер или тип данных. Поэтому вы задаете размер и тип данных входа, который не является скалярными данными типа double. Однако выходной порт может наследовать размер и тип данных.

Похожие темы