Расширение подсистемы включает перемещение содержимого виртуальной подсистемы в систему, которая содержит ту подсистему.
Например, модель sldemo_enginewc
включает подсистему Сгорания.
После того, как вы расширите подсистему Сгорания, верхний уровень модели sldemo_enginewc
включает блоки и сигналы подсистемы Сгорания. Расширение удаляет блок Subsystem и блоки Inport и Outport.
Расширьте подсистему, если вы хотите сгладить иерархию модели путем обеспечения содержимого подсистемы один уровень.
Расширение подсистемы полезно при рефакторинге модели. Выравнивание иерархии модели может быть конечным результатом, или всего одним шагом в рефакторинге. Например, вы могли вытянуть набор блоков до родительской системы путем расширения подсистемы, отменить выбор блоков, которые вы хотите оставить в родительском элементе, и затем создать подсистему из остающихся выбранных блоков.
Можно расширить виртуальные подсистемы, которые не маскируются, соединяются или комментируются.
При попытке расширить одну из этих подсистем с помощью Редактора Simulink®, сообщение дает вам, опция наличия Simulink изменяет подсистему так, чтобы можно было затем расширить его.
Вид подсистемы | Модификация |
---|---|
Подсистема маскированная | Удаляет всю информацию о маскировании |
Ссылки библиотеки | Разрывает связь |
Прокомментированная подсистема | Удаляет установку комментария |
Вы не можете расширить эти подсистемы:
Атомарные подсистемы
Условные подсистемы
Конфигурируемые подсистемы
Различные подсистемы
Подсистемы в модели, на которую ссылаются,
Подсистемы с набором параметра полномочий Чтения-записи к ReadOnly
или NoReadWrite
Подсистемы с InitFcn
, StartFcn
, PauseFcn
, ContinueFcn
или обратным вызовом StopFcn
Подсистемы с соединенными требованиями (использующий программное обеспечение Simulink Requirements™)
Когда вы расширяете подсистему, Simulink:
Удаляет блок Subsystem
Удаляет корневой Inport, корневой Выходной порт и блоки Порта подключения Simscape™, которые были в подсистеме
Соединяет сигнальные линии, которые перешли к портам ввода и вывода подсистемы непосредственно к портам блоков в модели, которая соединилась с подсистемой
Пути для блоков, которые были в подсистеме, что вы расширили изменение. После расширения, скриптов обновления и тестовых обвязок, которые полагаются на иерархические пути к блокам, которые были в подсистеме, которую вы расширили.
Если вы расширяете подсистему с тем, чтобы опаздывать на пересадку на внутренней или внешней части подсистемы, Simulink сохраняет метки строки, но использует имя сигнала и свойства от всего одной из строк. Для соответствия строк:
Входной порт подсистемы, Симулинк использует имя сигнала и свойства от сигнала в системе, в которой существует подсистема
Выходной порт подсистемы, Симулинк использует имя сигнала и свойства от подсистемы
Уровни отображения блоков (другими словами, какие блоки появляются впереди или в спине для наложения блоков) не изменяются после расширения. Блоки перед блоком Subsystem остаются выше расширенного содержимого, и блоки ниже блока Subsystem остаются под расширенным содержимым.
Когда вы компилируете модель, Simulink сортирует блоки с точки зрения порядка блочного выполнения. Расширение подсистемы может изменить блочные пути, которые, в редких случаях, могут повлиять на блочный порядок выполнения.
Если вы явным образом устанавливаете блочный порядок выполнения путем установки блочных приоритетов в подсистеме, Simulink удаляет те блочные приоритетные настройки, когда вы расширяете ту подсистему.
Расширение подсистемы, которая содержит Блок памяти Хранилища данных, что другие подсистемы, считанные из или запись к, могут изменить необходимую запись хранилища данных и считать последовательность. Вы, возможно, должны реструктурировать свою модель. Для получения дополнительной информации смотрите Хранилище данных Порядка доступ.