Ограниченный по объему и глобальная переменная обзор функциональных блоков Simulink

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

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

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

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

Используйте параметр Function visibility для блока Trigger в Функциональном блоке Simulink, чтобы установить функциональную видимость или на scoped или на global.

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

 Функциональная видимостьФункциональная доступностьФункциональный экспорт
Виртуальная подсистема

scoped

Имя функции не должно быть уникальным

функционируйте вызывающая сторона в иерархии или на родительском уровне.

функционируйте вызывающая сторона в иерархии блока Subsystem – дисквалифицированный, fcn(). Смотрите Твердость к Функции Иерархически в Ограниченных по объему Функциональных блоках Simulink в Подсистемах.

функционируйте вызывающая сторона на родительском уровне – квалифицированный с именем блока подсистемы, subsystem.fcn(). Смотрите Твердость к Функции Проверкой в Ограниченных по объему Функциональных блоках Simulink в Подсистемах.

Не применяется

global

Имя функции должно быть уникальным

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

функционируйте вызывающая сторона на любом уровне иерархии – дисквалифицированный, fcn()

Функция на любом уровне модели, экспортируемой в глобальное пространство имен модели верхнего уровня

Атомарная подсистема

scoped

Имя функции не должно быть уникальным

функционируйте вызывающая сторона только в иерархии

функционируйте вызывающая сторона в иерархии блока Subsystem – дисквалифицированный, fcn(). Смотрите Твердость к Функции Иерархически в Ограниченных по объему Функциональных блоках Simulink в Подсистемах.

функционируйте вызывающая сторона на родительском уровне – не позволенный

Не применяется

Видимость global, не позволенная

вызов функции, не позволенный

Не применяется

Модель

scoped

Имя функции не должно быть уникальным

функционируйте вызывающая сторона в иерархии или на родительском уровне.

функционируйте вызывающая сторона в иерархии блока Subsystem – дисквалифицированный, fcn(). Смотрите Твердость к Функции Иерархически в Ограниченных по объему Функциональных блоках Simulink в Моделях.

функционируйте вызывающая сторона на родительском уровне - квалифицированный с именем блока Model, model_block.fcn(). Смотрите Твердость к Функции Проверкой в Ограниченных по объему Функциональных блоках Simulink в Моделях.

Функция на корневом уровне модели, экспортируемой в интерфейс модели

global

Имя функции должно быть уникальным

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

функционируйте вызывающая сторона на любом уровне иерархии – дисквалифицированный, fcn()

Функция на любом уровне модели, экспортируемой в глобальное пространство имен модели верхнего уровня

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

Смотрите также

Блоки

Похожие темы

Для просмотра документации необходимо авторизоваться на сайте