exponenta event banner

Variant Function-Call Signals on Variant Subsystem Outport (Сигналы вызова функции варианта на выходе из подсистемы варианта)

В этом примере показано, как блок Variant Subsystem позволяет объединять сигналы вызова функции на своих выходах.

Изучение модели

Открытие модели slexVariantSubsystemFunctionCall.slx. Модель содержит блок Variant Subsystem с условиями A==1 и A==2. выбор. A - переменная управления вариантами, определенная в PostLoadFcn в меню «Файл» > «Свойства модели» > «Обратные вызовы». Блок генератора импульсов подключается к блоку подсистемы вариантов и ко всем его вариантам.

open_system('slexVariantSubsystemFunctionCall.slx')

Chart1 и Chart2 сконфигурированы с именами портов, соответствующими именам портов блока Variant Subsystem.

open_system('slexVariantSubsystemFunctionCall/Variant Subsystem')

Моделирование модели

1 Включить Output function call в диалоговом окне outport Block Parameters, в котором передается вызов функции. Чтобы включить этот параметр программным способом, используйте следующую команду:

set_param(variantsubsytem_outport_path,'OutputFunctionCall','On')

2 Смоделировать модель, выполнив команду Моделирование (Simulation) > Обновить схему (Update Diamram) .Расширенное условие исполнения определяет активные и неактивные варианты исполнения.

  • Когда A==1, Chart1 активен.

  • Когда A==2, Chart2 активен.

Вспомогательный порт activate() получает сигнал вызова функции из вариантов выбора Chart1 и Chart2. При срабатывании блока Function-Call Subsystem на выходе синусоидального сигнала Out2.

sim('slexVariantSubsystemFunctionCall.slx')
load_system('slexVariantSubsystemFunctionCall/Variant Subsystem')