Документация Engee

Subsystem

Блок для создания иерархии модели.

Тип: SubSystem

Путь в библиотеке:

/Basic/Ports & Subsystems/Subsystem

Описание

Блок Subsystem содержит подмножество блоков внутри модели или системы. Блок Subsystem может представлять виртуальную подсистему или атомарную подсистему.

  • Атомарная подсистема — подсистема, содержимое которой интерпретируется как единое целое (атомарное выполнение). Позволяет создавать условно выполняемые подсистемы: то есть такие, которые запускаются только тогда, когда происходит определенное событие.

  • Виртуальная подсистема — подсистема, которая не выполняется ни условно, ни атомарно. При определении порядка выполнения блоки такой подсистемы считаются расположенными на том же уровне, что и сама подсистема. Виртуальная подсистема служит исключительно для повышения читаемости модели и никак не влияет на ее работу.

Для переключения виртуальной системы в атомарную установите флажок Treat as atomic unit.

Чтобы создать подсистему, скопируйте блок Subsystem из библиотеки Ports & Subsystems в модель. Затем добавьте блоки в подсистему, открыв блок Subsystem и скопировав в него блоки.

Количество входных портов, отображаемых на значке блока Subsystem, соответствует количеству блоков входных портов In1 в подсистеме. Аналогично, количество выходных портов, нарисованных на блоке, соответствует количеству блоков Out1 в подсистеме.

Порты

Вход

# In1 — ввод сигнала в подсистему
скаляр | вектор | матрица

Details

Размещение блока In1 в подсистеме добавляет внешний входной порт к блоку Subsystem. Метка порта совпадает с именем блока In1.

Используйте блоки In1 для получения сигналов из локальной среды.

Типы данных

Float16, Float32, Float64, Int8, Int16, Int32, Int64, UInt8, UInt16, UInt32, UInt64, Bool

Поддержка комплексных чисел

Нет

Выход

# Out1 — выходной сигнал от подсистемы
скаляр | вектор | матрица

Details

Размещение блока Out1 в подсистеме добавляет выходной порт из блока Subsystem. Метка порта совпадает с именем блока Out1.

Используйте блоки Out1 для отправки сигналов в локальную среду.

Типы данных

Float64

Поддержка комплексных чисел

Нет

Параметры

Основные

# Sample Time — интервал между шагами расчета
SampleTime (real number / vector of two real numbers)

Details

Интервал между шагами расчета (неотрицательное число). Чтобы наследовать шаг расчета, установите для этого параметра значение −1.

Значение по умолчанию

-1

Имя для программного использования

SampleTime

Настраиваемый

Нет

Вычисляемый

Да

# Treat as atomic unit — возможность выполнения подсистемы как единого блока
Logical

Details

Подсистема может рассматриваться как единое целое при определении порядка выполнения блоков в модели.

  • Если флажок не установлен, то все блоки в подсистеме рассматриваются как находящиеся на том же уровне в иерархии модели, что и подсистема, при определении порядка выполнения блоков. Это может привести к чередованию выполнения методов блоков в подсистеме с выполнением методов блоков вне подсистемы.

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

Значение по умолчанию

false (выключено)

Имя для программного использования

TreatAsAtomicUnit

Настраиваемый

Нет

Вычисляемый

Нет

Дополнительные возможности

Генерация Си кода: Да

Генерация Verilog: Да