Различный источник и различные блоки приемника

Задайте области варианта в Различных блоках Источника и Приемника на основе возможности соединения блока. Области варианта вычисляются Simulink, когда вы обновляете схему (Симуляция> Схема Обновления).

Процесс вычисления областей варианта называется variant condition propagation. Различный Исходный блок обеспечивает изменение на источнике сигнала, и Различные блоки Приемника обеспечивают изменение на месте назначения (приемник) сигнала.

Рассмотрите модель, содержащую два Различных Исходных блока (Variant Source1, Variant Source2) и блок Sink (Variant Sink).

Различные условия в импорте и выходных портах Различных блоков Источника и Приемника, соответственно, определяют активацию и деактивацию блоков, соединенных с ними. Чтобы просмотреть аннотации и различные условия, нажмите Display> Blocks> Variant Conditions.

Давайте анализировать различные условия и состояние активации блока.

  • В Variant Source1, когда W==1, блок Sine3 активен, и когда V==4, блок Sine4 активен.

  • В Variant Source2, когда V==1, блок Sine1 активен, и когда V==2, блок Add1 активен.

  • В блоке Add1 распространение условия продолжает делать блок Variant Source1, чтобы быть активным только когда V==2. Это далее распространяет к блоку Sine3 и блоку Sine4, делая блок Sine3 активным в V==2 && W==1 и блоке Sine4 активный в V==2 && W==2, соответственно.

  • Блок Gain3 активен когда или V==1 или V==2, и следовательно условие V==2 | | V==1. Различное условие далее распространено к Scope1 и Out1.

  • Блоки, соединенные с выходным портом Variant Sink, активны когда W==1 (Gain5) или W==2 (Sine, Subtract, Terminator).

  • Блок Sum иллюстрирует две ключевых концепции в различном распространении условия: Сигналы только различны, если явным образом отмечено или когда все пути, как могут доказывать, различны. Чтобы сделать Sine6, Sum, вариант Out2, помещает Источник Варианта Single-Input Single-Output перед Out2 (или после Sine6). Чтение неактивного сигнала эквивалентно чтению земли. Когда W ~= 1, затем нижний вход к блоку Sum неактивен и Out2 = Sine6 + ground.

Если вы выбираете Analyze, весь выбор во время обновления схематически изображает и генерирует условный параметр препроцессора для блока Variant Source и Variant Sink, сгенерированный код содержит код для активного и неактивного (#if COND). Если этот параметр не выбран, то код сгенерирован только для активного выбора.

Если вы выбираете нуль Allow активный различный параметр средств управления для блока Variant Source и Variant Sink, можно моделировать различную модель без активного варианта. В таких случаях Simulink отключает блоки, соединенные с потоком ввода и вывода Различного Источника и Различного Приемника. Эти отключенные блоки проигнорированы из схемы обновления или симуляции.