PROGRAM FCU
VAR_EXTERNAL

END_VAR

VAR_GLOBAL

END_VAR

VAR

FCU03D01_IN :FCU_IN;
FCU03D01_OUT:FCU_OUT;
FCU03D01_SyncControl:IJ_SyncControl;
FCU03D01_FCU:IJ_FCU;
FCU03D01_T_AVE:BS_Average;

FCU04D01_IN :FCU_IN;
FCU04D01_OUT:FCU_OUT;
FCU04D01_SyncControl:IJ_SyncControl;
FCU04D01_FCU:IJ_FCU;
FCU04D01_T_AVE:BS_Average;


END_VAR

(*Automatically declared*)
VAR_EXTERNAL
	LCMD00000_RM : INT;
	RNIFCU00000_CM : BOOL;
	LFCU04D01_ISO1 : BOOL;
	RFCU04D01_SM : INT;
	LFCU03D01_ISO1 : BOOL;
	RFCU03D01_SM : INT;
	LFCU04D01_RSTV : REAL;
	LFCU04D01_RST : BOOL;
	RFCU04D01_PC : BOOL;
	LFCU03D01_RSTV : REAL;
	LFCU03D01_RST : BOOL;
	RFCU03D01_PC : BOOL;
	RFCU04D01_TSET : REAL;
	RFCU03D01_TSET : REAL;
	LFCU04D01_PC : BOOL;
	LFCU03D01_PC : BOOL;
	LFCU04D01_A : BOOL;
	LFCU03D01_A : BOOL;
	LFCU04D01_SN : INT;
	LFCU04D01_SM : INT;
	LFCU03D01_SN : INT;
	LFCU03D01_SM : INT;
	LFCU04D01_RH : REAL;
	LFCU03D01_RH : REAL;
	LFCU04D01_C : BOOL;
	LFCU04D01_R : BOOL;
	LFCU03D01_C : BOOL;
	LFCU03D01_R : BOOL;
	RNIFCU04X00_PC : BOOL;
	RNIFCU03X00_PC : BOOL;
	LFCU04D01_EVA : BOOL;
	LFCU04D01_EVR : BOOL;
	LFCU03D01_EVA : BOOL;
	LFCU03D01_EVR : BOOL;
	RNIFCU04X00_SM : INT;
	RNIFCU03X00_SM : INT;
	LFCU04D01_TS : REAL;
	LFCU03D01_TS : REAL;
	LFCU04D01_T : INT;
	LFCU03D01_T : INT;
	LFCU04D01_TSET : REAL;
	LFCU03D01_TSET : REAL;
	LFCU04D01_EVC : BOOL;
	LFCU03D01_EVC : BOOL;
	RNIFCU04X00_TSET : REAL;
	RNIFCU03X00_TSET : REAL;
	LFCU04D01_EVMV : BOOL;
	LFCU04D01_EVMC : BOOL;
	LFCU03D01_EVMV : BOOL;
	LFCU03D01_EVMC : BOOL;
END_VAR
(**     {********************************************FCU03D01********************************************} **)
(**     {*���룬���ͣ�ʾֵ���ޣ�ʾֵ���ޣ���׼�������������*} **)
(**     FCU03D01_T_AVE(INPUT:=LFCU03D01_T); **)
	(* call - Stmt *)
	CAL FCU03D01_T_AVE (
		INPUT := LFCU03D01_T
	)

(**     LFCU03D01_TS        :=BS_Scale(FCU03D01_T_AVE.Output,1,0,100,0,0.0); **)
	(* assign - Stmt *)
	LD FCU03D01_T_AVE.Output
	BS_Scale 1, 0, 100, 0, 0.0
	ST LFCU03D01_TS

(**     {*������*} **)
(**     FCU03D01_FCU(FCU_STRUCT_IN:=FCU03D01_IN | FCU03D01_OUT:=FCU_STRUCT_OUT); **)
	(* call - Stmt *)
	CAL FCU03D01_FCU (
		FCU_STRUCT_IN := FCU03D01_IN
		|
		FCU03D01_OUT := FCU_STRUCT_OUT
	)

(**     {*AHU_INSTRUCT*} **)
(**     FCU03D01_IN.SM      :=LFCU03D01_SM         ; **)
	(* assign - Stmt *)
	LD LFCU03D01_SM
	ST FCU03D01_IN.SM

(**     FCU03D01_IN.Run     :=LFCU03D01_R          ; **)
	(* assign - Stmt *)
	LD LFCU03D01_R
	ST FCU03D01_IN.Run

(**     FCU03D01_IN.Auto    :=LFCU03D01_A          ; **)
	(* assign - Stmt *)
	LD LFCU03D01_A
	ST FCU03D01_IN.Auto

(**     FCU03D01_IN.Control :=LFCU03D01_PC         ; **)
	(* assign - Stmt *)
	LD LFCU03D01_PC
	ST FCU03D01_IN.Control

(**     FCU03D01_IN.TSET    :=LFCU03D01_TSET       ; **)
	(* assign - Stmt *)
	LD LFCU03D01_TSET
	ST FCU03D01_IN.TSET

(**     FCU03D01_IN.EVA     :=LFCU03D01_EVA        ; **)
	(* assign - Stmt *)
	LD LFCU03D01_EVA
	ST FCU03D01_IN.EVA

(**     FCU03D01_IN.EVR     :=LFCU03D01_EVR        ; **)
	(* assign - Stmt *)
	LD LFCU03D01_EVR
	ST FCU03D01_IN.EVR

(**     FCU03D01_IN.EVMC    :=LFCU03D01_EVMC       ; **)
	(* assign - Stmt *)
	LD LFCU03D01_EVMC
	ST FCU03D01_IN.EVMC

(**     FCU03D01_IN.EVMV    :=LFCU03D01_EVMV       ; **)
	(* assign - Stmt *)
	LD LFCU03D01_EVMV
	ST FCU03D01_IN.EVMV

(**     FCU03D01_IN.TS      :=LFCU03D01_TS         ; **)
	(* assign - Stmt *)
	LD LFCU03D01_TS
	ST FCU03D01_IN.TS

(**     FCU03D01_IN.RST     :=LFCU03D01_RST        ; **)
	(* assign - Stmt *)
	LD LFCU03D01_RST
	ST FCU03D01_IN.RST

(**     FCU03D01_IN.RSTV    :=LFCU03D01_RSTV       ; **)
	(* assign - Stmt *)
	LD LFCU03D01_RSTV
	ST FCU03D01_IN.RSTV

(**     FCU03D01_IN.ISO1    :=LFCU03D01_ISO1       ; **)
	(* assign - Stmt *)
	LD LFCU03D01_ISO1
	ST FCU03D01_IN.ISO1

(**     {*FCU_OUTSTRUCT*} **)
(**     LFCU03D01_EVC       :=FCU03D01_OUT.EVC     ; **)
	(* assign - Stmt *)
	LD FCU03D01_OUT.EVC
	ST LFCU03D01_EVC

(**     LFCU03D01_C         :=FCU03D01_OUT.Control ; **)
	(* assign - Stmt *)
	LD FCU03D01_OUT.Control
	ST LFCU03D01_C

(**     LFCU03D01_RH        :=FCU03D01_OUT.RH      ; **)
	(* assign - Stmt *)
	LD FCU03D01_OUT.RH
	ST LFCU03D01_RH

(**     LFCU03D01_SN        :=FCU03D01_OUT.SN      ; **)
	(* assign - Stmt *)
	LD FCU03D01_OUT.SN
	ST LFCU03D01_SN

(**     {*ͬ������*} **)
(**     FCU03D01_SyncControl(CM:=RNIFCU00000_CM,RM:=LCMD00000_RM, **)
	(* call - Stmt *)
	CAL FCU03D01_SyncControl (
		CM := RNIFCU00000_CM,
		RM := LCMD00000_RM,
(**                      BOOL_IN0 :=RNIFCU03X00_PC  ,BOOL_IN1      :=LFCU03D01_PC    ,BOOL_IN2      :=RFCU03D01_PC   , **)
		BOOL_IN0 := RNIFCU03X00_PC,
		BOOL_IN1 := LFCU03D01_PC,
		BOOL_IN2 := RFCU03D01_PC,
(**                      INT_IN0  :=RNIFCU03X00_SM  ,INT_IN1       :=LFCU03D01_SM    ,INT_IN2       :=RFCU03D01_SM   , **)
		INT_IN0 := RNIFCU03X00_SM,
		INT_IN1 := LFCU03D01_SM,
		INT_IN2 := RFCU03D01_SM,
(**                      REAL_IN0 :=RNIFCU03X00_TSET,REAL_IN1      :=LFCU03D01_TSET  ,REAL_IN2      :=RFCU03D01_TSET | **)
		REAL_IN0 := RNIFCU03X00_TSET,
		REAL_IN1 := LFCU03D01_TSET,
		REAL_IN2 := RFCU03D01_TSET
		|
(**                                                   LFCU03D01_PC  :=BOOL_OUT1       ,RFCU03D01_PC  :=BOOL_OUT2      , **)
		LFCU03D01_PC := BOOL_OUT1,
		RFCU03D01_PC := BOOL_OUT2,
(**                                                   LFCU03D01_TSET:=REAL_OUT1       ,RFCU03D01_TSET:=REAL_OUT2      , **)
		LFCU03D01_TSET := REAL_OUT1,
		RFCU03D01_TSET := REAL_OUT2,
(**                                                   LFCU03D01_SM  :=INT_OUT1        ,RFCU03D01_SM  :=INT_OUT2)      ; **)
		LFCU03D01_SM := INT_OUT1,
		RFCU03D01_SM := INT_OUT2
	)

(**  **)
(**  **)
(**     {********************************************FCU04D01********************************************} **)
(**     {*���룬���ͣ�ʾֵ���ޣ�ʾֵ���ޣ���׼�������������*} **)
(**     FCU04D01_T_AVE(INPUT:=LFCU04D01_T); **)
	(* call - Stmt *)
	CAL FCU04D01_T_AVE (
		INPUT := LFCU04D01_T
	)

(**     LFCU04D01_TS        :=BS_Scale(FCU04D01_T_AVE.Output,1,0,100,0,0.0); **)
	(* assign - Stmt *)
	LD FCU04D01_T_AVE.Output
	BS_Scale 1, 0, 100, 0, 0.0
	ST LFCU04D01_TS

(**     {*������*} **)
(**     FCU04D01_FCU(FCU_STRUCT_IN:=FCU04D01_IN | FCU04D01_OUT:=FCU_STRUCT_OUT); **)
	(* call - Stmt *)
	CAL FCU04D01_FCU (
		FCU_STRUCT_IN := FCU04D01_IN
		|
		FCU04D01_OUT := FCU_STRUCT_OUT
	)

(**     {*AHU_INSTRUCT*} **)
(**     FCU04D01_IN.SM      :=LFCU04D01_SM         ; **)
	(* assign - Stmt *)
	LD LFCU04D01_SM
	ST FCU04D01_IN.SM

(**     FCU04D01_IN.Run     :=LFCU04D01_R          ; **)
	(* assign - Stmt *)
	LD LFCU04D01_R
	ST FCU04D01_IN.Run

(**     FCU04D01_IN.Auto    :=LFCU04D01_A          ; **)
	(* assign - Stmt *)
	LD LFCU04D01_A
	ST FCU04D01_IN.Auto

(**     FCU04D01_IN.Control :=LFCU04D01_PC         ; **)
	(* assign - Stmt *)
	LD LFCU04D01_PC
	ST FCU04D01_IN.Control

(**     FCU04D01_IN.TSET    :=LFCU04D01_TSET       ; **)
	(* assign - Stmt *)
	LD LFCU04D01_TSET
	ST FCU04D01_IN.TSET

(**     FCU04D01_IN.EVA     :=LFCU04D01_EVA        ; **)
	(* assign - Stmt *)
	LD LFCU04D01_EVA
	ST FCU04D01_IN.EVA

(**     FCU04D01_IN.EVR     :=LFCU04D01_EVR        ; **)
	(* assign - Stmt *)
	LD LFCU04D01_EVR
	ST FCU04D01_IN.EVR

(**     FCU04D01_IN.EVMC    :=LFCU04D01_EVMC       ; **)
	(* assign - Stmt *)
	LD LFCU04D01_EVMC
	ST FCU04D01_IN.EVMC

(**     FCU04D01_IN.EVMV    :=LFCU04D01_EVMV       ; **)
	(* assign - Stmt *)
	LD LFCU04D01_EVMV
	ST FCU04D01_IN.EVMV

(**     FCU04D01_IN.TS      :=LFCU04D01_TS         ; **)
	(* assign - Stmt *)
	LD LFCU04D01_TS
	ST FCU04D01_IN.TS

(**     FCU04D01_IN.RST     :=LFCU04D01_RST        ; **)
	(* assign - Stmt *)
	LD LFCU04D01_RST
	ST FCU04D01_IN.RST

(**     FCU04D01_IN.RSTV    :=LFCU04D01_RSTV       ; **)
	(* assign - Stmt *)
	LD LFCU04D01_RSTV
	ST FCU04D01_IN.RSTV

(**     FCU04D01_IN.ISO1    :=LFCU04D01_ISO1       ; **)
	(* assign - Stmt *)
	LD LFCU04D01_ISO1
	ST FCU04D01_IN.ISO1

(**     {*FCU_OUTSTRUCT*} **)
(**     LFCU04D01_EVC       :=FCU04D01_OUT.EVC     ; **)
	(* assign - Stmt *)
	LD FCU04D01_OUT.EVC
	ST LFCU04D01_EVC

(**     LFCU04D01_C         :=FCU04D01_OUT.Control ; **)
	(* assign - Stmt *)
	LD FCU04D01_OUT.Control
	ST LFCU04D01_C

(**     LFCU04D01_RH        :=FCU04D01_OUT.RH      ; **)
	(* assign - Stmt *)
	LD FCU04D01_OUT.RH
	ST LFCU04D01_RH

(**     LFCU04D01_SN        :=FCU04D01_OUT.SN      ; **)
	(* assign - Stmt *)
	LD FCU04D01_OUT.SN
	ST LFCU04D01_SN

(**     {*ͬ������*} **)
(**     FCU04D01_SyncControl(CM:=RNIFCU00000_CM,RM:=LCMD00000_RM, **)
	(* call - Stmt *)
	CAL FCU04D01_SyncControl (
		CM := RNIFCU00000_CM,
		RM := LCMD00000_RM,
(**                          BOOL_IN0 :=RNIFCU04X00_PC  ,BOOL_IN1      :=LFCU04D01_PC    ,BOOL_IN2      :=RFCU04D01_PC   , **)
		BOOL_IN0 := RNIFCU04X00_PC,
		BOOL_IN1 := LFCU04D01_PC,
		BOOL_IN2 := RFCU04D01_PC,
(**                          INT_IN0  :=RNIFCU04X00_SM  ,INT_IN1       :=LFCU04D01_SM    ,INT_IN2       :=RFCU04D01_SM   , **)
		INT_IN0 := RNIFCU04X00_SM,
		INT_IN1 := LFCU04D01_SM,
		INT_IN2 := RFCU04D01_SM,
(**                          REAL_IN0 :=RNIFCU04X00_TSET,REAL_IN1      :=LFCU04D01_TSET  ,REAL_IN2      :=RFCU04D01_TSET | **)
		REAL_IN0 := RNIFCU04X00_TSET,
		REAL_IN1 := LFCU04D01_TSET,
		REAL_IN2 := RFCU04D01_TSET
		|
(**                                                      LFCU04D01_PC  :=BOOL_OUT1       ,RFCU04D01_PC  :=BOOL_OUT2      , **)
		LFCU04D01_PC := BOOL_OUT1,
		RFCU04D01_PC := BOOL_OUT2,
(**                                                      LFCU04D01_TSET:=REAL_OUT1       ,RFCU04D01_TSET:=REAL_OUT2      , **)
		LFCU04D01_TSET := REAL_OUT1,
		RFCU04D01_TSET := REAL_OUT2,
(**                                                      LFCU04D01_SM  :=INT_OUT1        ,RFCU04D01_SM  :=INT_OUT2)      ; **)
		LFCU04D01_SM := INT_OUT1,
		RFCU04D01_SM := INT_OUT2
	)


END_PROGRAM