В сгенерированном коде для подсистем маскированных параметры маски сопоставляют с входными параметрами функционального блока. Значения, которые вы задаете в маске подсистемы, присвоены этим входным параметрам функционального блока в сгенерированном коде.
Например, следующая подсистема, Subsystem, содержит два экземпляра, Filt1 и Filt2, из той же подсистемы маскированной.


Эти две подсистемы, Filt1, и Filt2, присвойте различные значения их параметрам маски. В этом примере, Filt1_Order_Thau константа со значением 5.


Поэтому для Filt1 подсистема, Filt1_Order_Thau параметр имеет значение 8, и для Filt2 подсистема, Filt1_Order_Thau параметр имеет значение 5.
Следующий сгенерированный код показывает Filt1 входные параметры функционального блока. rtp_Filt1_Order_Thau вход был сгенерирован для Filt1_Order_Thau параметр маски.
FUNCTION_BLOCK Filt1
VAR_INPUT
ssMethodType: SINT;
InitV: LREAL;
InitF: BOOL;
Input: LREAL;
rtp_Filt1_Order_Thau: LREAL;
rtp_InitialValue: LREAL;
rtp_Filt1_Order_Enable: BOOL;
END_VARСледующий сгенерированный код от FUNCTION_BLOCK Subsystem. Функциональный блок присваивает значение 8 к rtp_Filt1_Order_Thau введите для i0_Filt1 экземпляр и присвоения значение 5 к rtp_Filt1_Order_Thau введите для i1_Filt1 экземпляр.
SS_INITIALIZE:
(* InitializeConditions for Atomic SubSystem: '<S1>/Filt1' *)
i0_Filt1(ssMethodType := SS_INITIALIZE, InitV := In3,
InitF := In2, Input := In1,
rtp_Filt1_Order_Thau := 8.0,
rtp_InitialValue := 0.0,
rtp_Filt1_Order_Enable := TRUE);
Out1 := i0_Filt1.Out;
(* End of InitializeConditions for SubSystem: '<S1>/Filt1' *)
(* InitializeConditions for Atomic SubSystem: '<S1>/Filt2' *)
i1_Filt1(ssMethodType := SS_INITIALIZE, InitV := In6,
InitF := In5, Input := In4,
rtp_Filt1_Order_Thau := 5.0,
rtp_InitialValue := 4.0,
rtp_Filt1_Order_Enable := TRUE);
Out2 := i1_Filt1.Out;
(* End of InitializeConditions for SubSystem: '<S1>/Filt2' *)
SS_STEP:
(* Outputs for Atomic SubSystem: '<S1>/Filt1' *)
i0_Filt1(ssMethodType := SS_OUTPUT, InitV := In3, InitF := In2,
Input := In1, rtp_Filt1_Order_Thau := 8.0,
rtp_InitialValue := 0.0,
rtp_Filt1_Order_Enable := TRUE);
Out1 := i0_Filt1.Out;
(* End of Outputs for SubSystem: '<S1>/Filt1' *)
(* Outputs for Atomic SubSystem: '<S1>/Filt2' *)
i1_Filt1(ssMethodType := SS_OUTPUT, InitV := In6, InitF := In5,
Input := In4, rtp_Filt1_Order_Thau := 5.0,
rtp_InitialValue := 4.0,
rtp_Filt1_Order_Enable := TRUE);
Out2 := i1_Filt1.Out;
(* End of Outputs for SubSystem: '<S1>/Filt2' *)