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