Во время различного распространения условия Simulink автоматически присваивает условия блокам. Можно управлять, как различное условие распространяет в восходящем направлении и в нисходящем направлении в модели.
Рассмотрите эту модель.
В Simulink нажмите Simulation> Run, чтобы просмотреть различное распространение условия с блоками.
Variant Source1
блок имеет A==1
условие, которое распространяет назад и вперед с блоками, соединенными с Variant Source1
блок. Различное условие распространяет к Gain4
блокируйте, но не распространяйте к Sine Wave1
блок.
Scope
блок является безусловным и получает свои входные параметры от Sine Wave1
блок. Поэтому Sine Wave1
блок является безусловным. Если вы удаляете Scope
блокируйтесь, различное условие распространяет к Sine Wave1
блок.
Если вы заменяете Scope
блокируйтесь с любым другим блоком (включая Terminator
блокируйтесь), Sine Wave1
блок остается безусловным.
Блок является безусловным, если по крайней мере одни из его входных параметров являются безусловными. Входная сторона Sum
блок соединяется с Gain5
(условный) блок и к Sine Wave2
(безусловный) блок. Поэтому Sum
блок является безусловным.
Можно использовать эти концепции, чтобы создать блок Subsystem, который управляет распространением различных условий обеим сторонам или одной стороне.
Рассмотрите раздел модели, которая соединяется с Variant Source2
и Variant Source3
блоки. Когда вы симулируете модель, Различное условие от Variant Source2
блокируйтесь и Variant Source3
блоки распространяют в восходящем направлении и в нисходящем направлении.
Stop on both sides
блокируйтесь между Gain6
и Gain7
блок препятствует Различному условию распространить в восходящем направлении или в нисходящем направлении. Дважды кликните Stop on both sides
блокируйтесь, чтобы просмотреть его компоненты.
Stop on both sides
блок использует Terminator
остановить различное распространение условия на восходящем потоке Subsystem
блок. Остановить распространение условия на нисходящей стороне Subsystem
блокируйтесь, один из импорта соединяется с Ground
(безусловный). Поэтому это расположение останавливает различное распространение условия в восходящем направлении и в нисходящем направлении. Точно так же можно выборочно остановить распространение условия различного условия в восходящем потоке или в нисходящем направлении для модели. Например, если вы удаляете Terminator
блок, различное условие распространяет в восходящем направлении, но останавливается в нисходящем направлении.
Здесь, один входной порт блока Subsystem является безусловным созданием блока Subsystem, безусловного во входной стороне и таким образом остановке распространения различного условия в нисходящем направлении.