Распространение различных условий к подсистемам

Подсистема может быть виртуальной или атомарной. Simulink распространяет различные условия по-другому к таким Подсистемам. Этот пример показывает распространение различных условий от Встроенных вариантов до блоков Subsystem. Рассмотрите модель как показано:

Нажмите Simulation> Run, чтобы моделировать эту модель и видеть различные условия быть распространенными от Различных Исходных блоков до блоков, соединенных с ним.

Различная аннотация условия помогает вам визуализировать распространенные условия. Чтобы смочь просмотреть различную аннотацию условия, нажмите Display> Blocks> Variant Condition Legend.

Модель содержит три Различных Исходных блока: Variant Source1, Variant Source2 и Variant Source3, соответственно.

Variant Source1 содержит условия V = 1 и V = 2 в импорте. Различный V = 1 условия распространяет к GainA1, в то время как V = 2 распространяет к Sine2. Блок Sine1 не получает распространенных различных условий, потому что он соединяется с блоком, который всегда используется независимо от различного условия. Если To Workspace block1 не существовал или был прокомментирован прежде, чем моделировать модель, различное условие, V = 1 распространяет к Sine1.

Variant Source2 соединяется с виртуальными подсистемами Subsystem1 и Subsystem2, которые имеют идентичное содержимое, блок Sine Wave, соединенный с To Workspace и Output блоки. Subsystem1 является сгруппированной виртуальной подсистемой (Обработка, столь же сгруппированная, когда распространение различных условий выбрано) в то время как Subsystem2 (Обработка, как сгруппировано, когда распространение различных условий ясно), разгруппированная виртуальная подсистема.

Блок Subsystem становится сгруппированной виртуальной подсистемой, когда вы выбираете Treat, как сгруппировано при распространении различного флажка условий в диалоговом окне параметров блоков. Когда Обработка, как сгруппировано при распространении различного флажка условий ясна, Подсистема является разгруппированной виртуальной подсистемой.

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

Различное условие, которое V = 1 распространяет к Subsystem1 и далее к блокам в нем как Subsystem1, является сгруппированной виртуальной подсистемой (представляет систему уравнения). Поскольку Subsystem1 является системой, условие также применяет блоки в системе.

Subsystem2, который является разгруппированной виртуальной подсистемой (не представляет систему уравнения) также получает V = 1 как распространенное условие и распространенное различное условие, которое V = 1 распространяет в Subsystem 2, как будто подсистема была расширена. Пунктирные линии на Подсистеме, 2 значка указывают, что сглажены во время компиляции Simulink и следовательно вы видите различное условие для тех блоков в нем.

Variant Source3 соединяется с невиртуальной (атомарной) подсистемой с V = 1 как распространенное различное условие. Невиртуальная (атомарная) подсистема всегда представляет систему уравнений. Атомарная подсистема имеет непрерывную твердую границу. Различное условие не распространяет в невиртуальной подсистеме. Вместо этого это остается на контуре. Однако все блоки в той подсистеме получают то же различное условие как Подсистема. Невиртуальная подсистема ведет себя как сущность.

Виртуальные подсистемы по умолчанию работают как сгруппированный набор блоков, где все блоки, содержавшие в подсистеме, имеют то же различное условие. Это верно, когда Обработка, как сгруппировано при распространении различного параметра условий выбрана. Виртуальные подсистемы ведут себя как разгруппированный набор блоков, когда Обработка, как сгруппировано при распространении различного параметра условий очищена. В этом примере поведение (Разгруппированного) Subsystem2 не может состоять как ожидалось в том, когда блок никогда не становится условным выражением. Невиртуальные подсистемы всегда ведут себя как сущность, и содержимое только выполняется, когда условие, присвоенное подсистеме, удовлетворено. Невиртуальные подсистемы, блоки Model и сгруппированные виртуальные подсистемы ведут себя то же самое.

Различие в поведении Виртуальных Подсистем с Обработкой, как сгруппировано, когда распространение различных условий включено или Прочь

Обработка, как сгруппировано при распространении различной опции условий включена: Рассмотрите пример с Различным Исходным блоком: Variant Source5 и виртуальная подсистема Subsystem4. Variant Source5 имеет условие V = 1. Subsystem4 соединили Синусоиду с блоками Outport и To Workspace1.

Subsystem4 получает условие V = 1, когда V = 1 распространен от Variant Source5. Блоки в Subsystem4 косвенно наследовали условие от Subsystem4. Subsystem4 является условным выражением, когда его inports/outports являются условным выражением. Чтобы сделать Subsystem4 столь же безусловным, добавьте новый выходной порт или очистите Обработку, как сгруппировано при распространении различной опции условий.

Обработка, как сгруппировано при распространении различной опции условий Прочь: Рассмотрите пример с Различным Исходным блоком: Variant Source4 и виртуальная подсистема Subsystem3. Variant Source4 имеет условие V = 1. Subsystem3 соединили Синусоиду с блоками Outport и To Workspace.

Subsystem3 получает условие V = 1, когда V = 1 распространяет от Variant Source4. Однако из-за безусловного блока To Workspace1, остановок распространения и условия V = 1 установлен только в порт Out1. Теперь Subsystem3 является также безусловным из-за присутствия безусловных блоков в.

Больше о