В этом примере показано, как симулировать Различный Источник, и Различный Приемник блокируется в акселераторе и быстром режиме Accelerator с startup
различное время активации.
Оба режима включают более быструю симуляцию, не изменяя саму модель. Акселератор и быстрые режимы Accelerator заменяют нормальный интерпретированный код на скомпилированный целевой код. Используя скомпилированный код ускоряет симуляцию многих моделей, особенно те, где время выполнения длинно по сравнению со временем, сопоставленным с компиляцией и проверяющий, чтобы видеть, актуальна ли цель. Для получения дополнительной информации о режимах Accelerator смотрите Как Ускоряющая работа Режимов.
Объединенный с startup
различное время активации, симулирующее в акселераторе или быстром режиме Accelerator, сохраняет все варианты. Таким образом инкрементная симуляция не регенерирует код, когда нет никаких структурных изменений в модели, и вы только изменяете различное значение управления.
Откройте модель slexVariantSourceAndSinkWithStartup.slx
. Variant Source1
имеет условия X==1
и X==2
для его входных портов. Блок под названием Variant Source1
имеет update diagram
время активации. X
различная контрольная переменная и задана в PostLoadFcn
из Файла-> Свойства Модели-> Коллбэки. Sine3
блок активен когда X==1
верно, и Sine4
блок активен когда X==2
верно.
В блоке под названием Variant Source2
блокируйтесь, первый входной порт активен когда V==1
верно. Второй входной порт активен когда V==2
верно. Variant Source2
имеет startup
время активации.
Блок под названием Variant Sink
имеет условия W==1
и W==2
на его выходных портах. Эти условия распространены со связанными блоками. Gain5
блок присвоен условие W==1
.The второй выходной порт Variant Sink
блок имеет условие W==2
. Это условие распространено к Out4
блок.
Начиная с Variant Source2
и Variant Sink
блоки имеют startup
время активации, весь выбор доступен. Можно переключить активную или неактивную ветвь непосредственно перед симуляцией.
Прежде чем вы запустите симуляцию, установите режим быть или Акселератором или Быстрым Акселератором.
sim(slexVariantSourceAndSinkWithStartup);
Можно сгенерировать код путем нажатия на Build ERT или Build GRT. Сгенерированный код от Embedded Coder (ERT) или Simulink Coder (GRT) будет иметь регулярный if
условия. Для получения дополнительной информации о генерации кода с startup
время активации, смотрите, Генерируют Код от Различных Блоков со Временем Активации Запуска.