В этом примере показано, как Различный блок Subsystem позволяет сигналам вызова функции быть объединенными на его выходных портах.
Откройте модель slexVariantSubsystemFunctionCall.slx
. Модель содержит Различный блок Subsystem с условиями A==1
и A==2
. выбор. A
различная контрольная переменная, заданная в PostLoadFcn
в Файле> ModelProperties> Коллбэки. Блок Pulse Generator соединяется с Различным блоком Subsystem и всем его выбором.
open_system('slexVariantSubsystemFunctionCall.slx')
Chart1
и Chart2
сконфигурированы с именами порта, которые совпадают с соответствующими именами порта Различного блока Subsystem.
open_system('slexVariantSubsystemFunctionCall/Variant Subsystem')
1 включают Output function call
опция на диалоговом окне Block Parameters выходного порта, которому передается вызов функции. Чтобы включить эту опцию программно, используйте эту команду:
set_param(variantsubsytem_outport_path,'OutputFunctionCall','On')
2 Симулируют модель путем выполнения распространения условия варианта Simulation> Update Diagram.The, определяет активные и неактивные варианты.
Когда A==1
, Chart1
активно.
Когда A==2
, Chart2
активно.
Выходной порт activate()
получает сигнал вызова функции от выбора Chart1
и Chart2
. Когда блок Function-Call Subsystem инициирован, существует синусоида выход в Out2
.
sim('slexVariantSubsystemFunctionCall.slx') load_system('slexVariantSubsystemFunctionCall/Variant Subsystem')