PROGRAM PAU
VAR_EXTERNAL

END_VAR

VAR_GLOBAL

END_VAR

VAR
LIES04B01_CO2_AVE:BS_Average;
LIES04B01_T_AVE:BS_Average;

PAU05I01_IN :FAU_IN;
PAU05I01_OUT:FAU_OUT;
PAU05I01_SyncControl:IJ_LSyncControl;
PAU05I01_FAU:IJ_FAU;
PAU05I01_ST_AVE :BS_Average;
PAU05I01_WVB_AVE:BS_Average;
PAU05I01_SLG    :IJ_EAFGroup;
LPAU05I01_CO2S:ARRAY[0..10] OF REAL;
LPAU05I01_LC  :ARRAY[0..10] OF BOOL;

END_VAR

(*Automatically declared*)
VAR_EXTERNAL
	LPAU05I01_WVMV : REAL;
	LPAU05I01_WVMC : BOOL;
	LCMD00000_RM : INT;
	LPAU05I01_ISO3 : BOOL;
	LPAU05I01_ISO2 : BOOL;
	LPAU05I01_ISO1 : BOOL;
	LIES04B01_CO2S : REAL;
	LIES04B01_CO2 : INT;
	LPAU05I01_WVCS : INT;
	LPAU05I01_WVC : INT;
	LPAU05I01_FDOC : BOOL;
	LPAU05I01_FDOB : BOOL;
	LPAU05I01_WVBS : REAL;
	RPAU05I01_PC : BOOL;
	LPAU05I01_WVB : INT;
	RPAU05I01_TSET : REAL;
	LPAU05I01_TSTR : STRING;
	RNIPAU05X00_SM : INT;
	LPAU05I01_VFMV : INT;
	LPAU05I01_F : BOOL;
	LPAU05I01_VI : REAL;
	LPAU05I01_VP : REAL;
	LPAU05I01_TSET : REAL;
	RPAU05I01_SM : INT;
	RNIPAU00000_CM : BOOL;
	LPAU05I01_DM : BOOL;
	LIES04B01_TS : REAL;
	LIES04B01_T : INT;
	RNIPAU05X00_PC : BOOL;
	LPAU05I01_TM : BOOL;
	LPAU05I01_TC : BOOL;
	LPAU05I01_FDSC : BOOL;
	LPAU05I01_FDSB : BOOL;
	LPAU05I01_FPS : BOOL;
	LPAU05I01_RH : REAL;
	LPAU05I01_C : BOOL;
	LPAU05I01_R : BOOL;
	LPAU05I01_VFBS : INT;
	LPAU05I01_SN : INT;
	LPAU05I01_SM : INT;
	LPAU05I01_VFB : INT;
	LPAU05I01_ST : INT;
	LPAU05I01_VFCS : INT;
	LPAU05I01_PC : BOOL;
	LPAU05I01_STS : REAL;
	LPAU05I01_VFC : INT;
	LPAU05I01_AFS : BOOL;
	LPAU05I01_IPS : BOOL;
	LPAU05I01_A : BOOL;
	LPAU05I01_RSTV : REAL;
	LPAU05I01_RST : BOOL;
	LPAU05I01_CO2SET : REAL;
	RNIPAU05X00_TSET : REAL;
	LPAU05I01_LM : BOOL;
END_VAR
(**     LIES04B01_T_AVE(INPUT :=LIES04B01_T   ); **)
	(* call - Stmt *)
	CAL LIES04B01_T_AVE (
		INPUT := LIES04B01_T
	)

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

(**  **)
(** 	LIES04B01_CO2_AVE(INPUT :=LIES04B01_CO2   ); **)
	(* call - Stmt *)
	CAL LIES04B01_CO2_AVE (
		INPUT := LIES04B01_CO2
	)

(**     LIES04B01_CO2S          :=     BS_Scale(LIES04B01_CO2_AVE.Output  , 2, 0, 2000, 0, 0.0); **)
	(* assign - Stmt *)
	LD LIES04B01_CO2_AVE.Output
	BS_Scale 2, 0, 2000, 0, 0.0
	ST LIES04B01_CO2S

(**     {********************************************PAU05I01********************************************} **)
(**     {*���룬���ͣ�ʾֵ���ޣ�ʾֵ���ޣ���׼�������������*} **)
(**     PAU05I01_WVB_AVE(INPUT:=LPAU05I01_WVB); **)
	(* call - Stmt *)
	CAL PAU05I01_WVB_AVE (
		INPUT := LPAU05I01_WVB
	)

(**     PAU05I01_ST_AVE (INPUT:=LPAU05I01_ST ); **)
	(* call - Stmt *)
	CAL PAU05I01_ST_AVE (
		INPUT := LPAU05I01_ST
	)

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

(**     LPAU05I01_WVBS:=            BS_Scale(PAU05I01_WVB_AVE.Output,2,0,100,0,0.0); **)
	(* assign - Stmt *)
	LD PAU05I01_WVB_AVE.Output
	BS_Scale 2, 0, 100, 0, 0.0
	ST LPAU05I01_WVBS

(**     LPAU05I01_WVC :=REAL_TO_INT(BS_Scale(LPAU05I01_WVCS         ,4,0,100,0,0.0)); **)
	(* assign - Stmt *)
	LD LPAU05I01_WVCS
	BS_Scale 4, 0, 100, 0, 0.0
	REAL_TO_INT 
	ST LPAU05I01_WVC

(**     LPAU05I01_VFBS:=REAL_TO_INT(BS_Scale(LPAU05I01_VFB          ,2,0,50 ,0,0.0)); **)
	(* assign - Stmt *)
	LD LPAU05I01_VFB
	BS_Scale 2, 0, 50, 0, 0.0
	REAL_TO_INT 
	ST LPAU05I01_VFBS

(**     LPAU05I01_VFC :=REAL_TO_INT(BS_Scale((LPAU05I01_VFCS*100)   ,4,0,50 ,0,0.0)); **)
	(* assign - Stmt *)
	LD LPAU05I01_VFCS
	MUL 100
	BS_Scale 4, 0, 50, 0, 0.0
	REAL_TO_INT 
	ST LPAU05I01_VFC

(**     {*������*} **)
(**     PAU05I01_FAU(FAU_STRUCT_IN:=PAU05I01_IN | PAU05I01_OUT:=FAU_STRUCT_OUT); **)
	(* call - Stmt *)
	CAL PAU05I01_FAU (
		FAU_STRUCT_IN := PAU05I01_IN
		|
		PAU05I01_OUT := FAU_STRUCT_OUT
	)

(**     {*FAU_INSTRUCT*} **)
(**     PAU05I01_IN.SM     :=LPAU05I01_SM        ; **)
	(* assign - Stmt *)
	LD LPAU05I01_SM
	ST PAU05I01_IN.SM

(**     PAU05I01_IN.LM     :=LPAU05I01_LM        ; **)
	(* assign - Stmt *)
	LD LPAU05I01_LM
	ST PAU05I01_IN.LM

(**     PAU05I01_IN.Run    :=LPAU05I01_R         ; **)
	(* assign - Stmt *)
	LD LPAU05I01_R
	ST PAU05I01_IN.Run

(**     PAU05I01_IN.Fault  :=LPAU05I01_F         ; **)
	(* assign - Stmt *)
	LD LPAU05I01_F
	ST PAU05I01_IN.Fault

(**     PAU05I01_IN.Auto   :=LPAU05I01_A         ; **)
	(* assign - Stmt *)
	LD LPAU05I01_A
	ST PAU05I01_IN.Auto

(**     PAU05I01_IN.ContRol:=LPAU05I01_PC        ; **)
	(* assign - Stmt *)
	LD LPAU05I01_PC
	ST PAU05I01_IN.ContRol

(**     PAU05I01_IN.FDOB   :=LPAU05I01_FDOB      ; **)
	(* assign - Stmt *)
	LD LPAU05I01_FDOB
	ST PAU05I01_IN.FDOB

(**     PAU05I01_IN.FDSB   :=LPAU05I01_FDSB      ; **)
	(* assign - Stmt *)
	LD LPAU05I01_FDSB
	ST PAU05I01_IN.FDSB

(**     PAU05I01_IN.TSET   :=LPAU05I01_TSET      ; **)
	(* assign - Stmt *)
	LD LPAU05I01_TSET
	ST PAU05I01_IN.TSET

(**     PAU05I01_IN.WVMC   :=LPAU05I01_WVMC      ; **)
	(* assign - Stmt *)
	LD LPAU05I01_WVMC
	ST PAU05I01_IN.WVMC

(**     PAU05I01_IN.WVMV   :=LPAU05I01_WVMV      ; **)
	(* assign - Stmt *)
	LD LPAU05I01_WVMV
	ST PAU05I01_IN.WVMV

(**     PAU05I01_IN.VFMV   :=LPAU05I01_VFMV      ; **)
	(* assign - Stmt *)
	LD LPAU05I01_VFMV
	ST PAU05I01_IN.VFMV

(**     PAU05I01_IN.STS    :=LPAU05I01_STS       ; **)
	(* assign - Stmt *)
	LD LPAU05I01_STS
	ST PAU05I01_IN.STS

(**     PAU05I01_IN.RST    :=LPAU05I01_RST       ; **)
	(* assign - Stmt *)
	LD LPAU05I01_RST
	ST PAU05I01_IN.RST

(**     PAU05I01_IN.RSTV   :=LPAU05I01_RSTV      ; **)
	(* assign - Stmt *)
	LD LPAU05I01_RSTV
	ST PAU05I01_IN.RSTV

(**     PAU05I01_IN.FPS    :=LPAU05I01_FPS       ; **)
	(* assign - Stmt *)
	LD LPAU05I01_FPS
	ST PAU05I01_IN.FPS

(**     PAU05I01_IN.IPS    :=LPAU05I01_IPS       ; **)
	(* assign - Stmt *)
	LD LPAU05I01_IPS
	ST PAU05I01_IN.IPS

(**     PAU05I01_IN.AFS    :=LPAU05I01_AFS       ; **)
	(* assign - Stmt *)
	LD LPAU05I01_AFS
	ST PAU05I01_IN.AFS

(**     PAU05I01_IN.ISO1   :=LPAU05I01_ISO1      ; **)
	(* assign - Stmt *)
	LD LPAU05I01_ISO1
	ST PAU05I01_IN.ISO1

(**     PAU05I01_IN.ISO2   :=LPAU05I01_ISO2      ; **)
	(* assign - Stmt *)
	LD LPAU05I01_ISO2
	ST PAU05I01_IN.ISO2

(**     PAU05I01_IN.ISO3   :=LPAU05I01_ISO3      ; **)
	(* assign - Stmt *)
	LD LPAU05I01_ISO3
	ST PAU05I01_IN.ISO3

(**     PAU05I01_IN.VP     :=LPAU05I01_VP        ; **)
	(* assign - Stmt *)
	LD LPAU05I01_VP
	ST PAU05I01_IN.VP

(**     PAU05I01_IN.VI     :=LPAU05I01_VI        ; **)
	(* assign - Stmt *)
	LD LPAU05I01_VI
	ST PAU05I01_IN.VI

(**     PAU05I01_IN.FDELAY :=t#30s               ; **)
	(* assign - Stmt *)
	LD t#30s
	ST PAU05I01_IN.FDELAY

(**     PAU05I01_IN.VDELAY :=t#120s              ; **)
	(* assign - Stmt *)
	LD t#120s
	ST PAU05I01_IN.VDELAY

(**     {*FAU_OUTSTRUCT*} **)
(**     LPAU05I01_WVCS     :=PAU05I01_OUT.WVCS   ; **)
	(* assign - Stmt *)
	LD PAU05I01_OUT.WVCS
	ST LPAU05I01_WVCS

(**     LPAU05I01_VFCS     :=PAU05I01_OUT.VFCS   ; **)
	(* assign - Stmt *)
	LD PAU05I01_OUT.VFCS
	ST LPAU05I01_VFCS

(**     LPAU05I01_FDOC     :=PAU05I01_OUT.FDO    ; **)
	(* assign - Stmt *)
	LD PAU05I01_OUT.FDO
	ST LPAU05I01_FDOC

(**     LPAU05I01_FDSC     :=PAU05I01_OUT.FDS    ; **)
	(* assign - Stmt *)
	LD PAU05I01_OUT.FDS
	ST LPAU05I01_FDSC

(**     LPAU05I01_C        :=PAU05I01_OUT.ContRol; **)
	(* assign - Stmt *)
	LD PAU05I01_OUT.ContRol
	ST LPAU05I01_C

(**     LPAU05I01_RH       :=PAU05I01_OUT.RH     ; **)
	(* assign - Stmt *)
	LD PAU05I01_OUT.RH
	ST LPAU05I01_RH

(**     LPAU05I01_SN       :=PAU05I01_OUT.SN     ; **)
	(* assign - Stmt *)
	LD PAU05I01_OUT.SN
	ST LPAU05I01_SN

(**     {*ͬ������*} **)
(**     PAU05I01_SyncContRol(CM:=RNIPAU00000_CM,RM:=LCMD00000_RM, **)
	(* call - Stmt *)
	CAL PAU05I01_SyncContRol (
		CM := RNIPAU00000_CM,
		RM := LCMD00000_RM,
(**                      BOOL_IN0:=RNIPAU05X00_PC  ,BOOL_IN1:=LPAU05I01_PC  ,BOOL_IN2      :=RPAU05I01_PC  ,BOOL_IN3:=LPAU05I01_TC, **)
		BOOL_IN0 := RNIPAU05X00_PC,
		BOOL_IN1 := LPAU05I01_PC,
		BOOL_IN2 := RPAU05I01_PC,
		BOOL_IN3 := LPAU05I01_TC,
(**                      REAL_IN0:=RNIPAU05X00_TSET,REAL_IN1:=LPAU05I01_TSET,REAL_IN2      :=RPAU05I01_TSET, **)
		REAL_IN0 := RNIPAU05X00_TSET,
		REAL_IN1 := LPAU05I01_TSET,
		REAL_IN2 := RPAU05I01_TSET,
(**                      INT_IN0 :=RNIPAU05X00_SM  ,INT_IN1 :=LPAU05I01_SM  ,INT_IN2       :=RPAU05I01_SM  | **)
		INT_IN0 := RNIPAU05X00_SM,
		INT_IN1 := LPAU05I01_SM,
		INT_IN2 := RPAU05I01_SM
		|
(**                                           LPAU05I01_PC  :=BOOL_OUT1     ,RPAU05I01_PC  :=BOOL_OUT2     , **)
		LPAU05I01_PC := BOOL_OUT1,
		RPAU05I01_PC := BOOL_OUT2,
(**                                           LPAU05I01_TSET:=REAL_OUT1     ,RPAU05I01_TSET:=REAL_OUT2     , **)
		LPAU05I01_TSET := REAL_OUT1,
		RPAU05I01_TSET := REAL_OUT2,
(**                                           LPAU05I01_SM  :=INT_OUT1      ,RPAU05I01_SM  :=INT_OUT2     ); **)
		LPAU05I01_SM := INT_OUT1,
		RPAU05I01_SM := INT_OUT2
	)

(**      **)
(**      **)
(**  **)
(** 	{*�·��CO2��������*} **)
(**     LPAU05I01_TC:=LPAU05I01_LC[1]; **)
	(* assign - Stmt *)
	LD LPAU05I01_LC[1]
	ST LPAU05I01_TC

(**     LPAU05I01_CO2S[1]:=LIES04B01_CO2S; **)
	(* assign - Stmt *)
	LD LIES04B01_CO2S
	ST LPAU05I01_CO2S[1]

(**     PAU05I01_SLG(ENABLE:=LPAU05I01_TM,LINKAGEVALUE:=LPAU05I01_CO2S,DEAD_BAND:=10.0,MAXRANGE:=2000.0,MINRANGE:=10.0, **)
	(* call - Stmt *)
	CAL PAU05I01_SLG (
		ENABLE := LPAU05I01_TM,
		LINKAGEVALUE := LPAU05I01_CO2S,
		DEAD_BAND := 10.0,
		MAXRANGE := 2000.0,
		MINRANGE := 10.0,
(**              LINKAGESET:=LPAU05I01_CO2SET,HOLDDELAY:=t#60s,ENABLENUM:=4,SCH_STR:=LPAU05I01_TSTR,ALLDAY:=LPAU05I01_DM | LPAU05I01_LC:=LINKAGEOUT); **)
		LINKAGESET := LPAU05I01_CO2SET,
		HOLDDELAY := t#60s,
		ENABLENUM := 4,
		SCH_STR := LPAU05I01_TSTR,
		ALLDAY := LPAU05I01_DM
		|
		LPAU05I01_LC := LINKAGEOUT
	)


END_PROGRAM