PROGRAM PAU
VAR_EXTERNAL

END_VAR

VAR_GLOBAL

END_VAR

VAR
PAU05G01_IN :FAU_IN;
PAU05G01_OUT:FAU_OUT;
PAU05G01_SyncControl:IJ_LSyncControl;
PAU05G01_FAU:IJ_FAU;
PAU05G01_ST_AVE :BS_Average;
PAU05G01_WVB_AVE:BS_Average;
PAU05G01_SLG    :IJ_EAFGroup;
LPAU05G01_CO2S:ARRAY[0..10] OF REAL;
LPAU05G01_LC  :ARRAY[0..10] OF BOOL;

PAU05G02_IN :FAU_IN;
PAU05G02_OUT:FAU_OUT;
PAU05G02_SyncControl:IJ_LSyncControl;
PAU05G02_FAU:IJ_FAU;
PAU05G02_ST_AVE :BS_Average;
PAU05G02_WVB_AVE:BS_Average;
PAU05G02_SLG    :IJ_EAFGroup;
LPAU05G02_CO2S:ARRAY[0..10] OF REAL;
LPAU05G02_LC  :ARRAY[0..10] OF BOOL;
END_VAR
    (********************************************PAU05G01********************************************)
    (*输入,类型,示值上限,示值下限,基准补偿,输出补偿*)
    PAU05G01_WVB_AVE(INPUT:=LPAU05G01_WVB);
    PAU05G01_ST_AVE (INPUT:=LPAU05G01_ST );
    LPAU05G01_STS :=            BS_Scale(PAU05G01_ST_AVE.Output ,1,0,100,0,0.0);
    LPAU05G01_WVBS:=            BS_Scale(PAU05G01_WVB_AVE.Output,2,0,100,0,0.0);
    LPAU05G01_WVC :=REAL_TO_INT(BS_Scale(LPAU05G01_WVCS         ,4,0,100,0,0.0));
    LPAU05G01_VFBS:=REAL_TO_INT(BS_Scale(LPAU05G01_VFB          ,2,0,50 ,0,0.0));
    LPAU05G01_VFC :=REAL_TO_INT(BS_Scale((LPAU05G01_VFCS*100)   ,4,0,50 ,0,0.0));
    (*主程序*)
    PAU05G01_FAU(FAU_STRUCT_IN:=PAU05G01_IN | PAU05G01_OUT:=FAU_STRUCT_OUT);
    (*FAU_INSTRUCT*)
    PAU05G01_IN.SM     :=LPAU05G01_SM        ;
    PAU05G01_IN.LM     :=LPAU05G01_LM        ;
    PAU05G01_IN.Run    :=LPAU05G01_R         ;
    PAU05G01_IN.Fault  :=LPAU05G01_F         ;
    PAU05G01_IN.Auto   :=LPAU05G01_A         ;
    PAU05G01_IN.ContRol:=LPAU05G01_PC        ;
    PAU05G01_IN.FDOB   :=LPAU05G01_FDOB       ;
    PAU05G01_IN.FDSB   :=LPAU05G01_FDSB       ;
    PAU05G01_IN.TSET   :=LPAU05G01_TSET      ;
    PAU05G01_IN.WVMC   :=LPAU05G01_WVMC      ;
    PAU05G01_IN.WVMV   :=LPAU05G01_WVMV      ;
    PAU05G01_IN.VFMV   :=LPAU05G01_VFMV      ;
    PAU05G01_IN.STS    :=LPAU05G01_STS       ;
    PAU05G01_IN.RST    :=LPAU05G01_RST       ;
    PAU05G01_IN.RSTV   :=LPAU05G01_RSTV      ;
    PAU05G01_IN.FPS    :=LPAU05G01_FPS       ;
    PAU05G01_IN.IPS    :=LPAU05G01_IPS       ;
    PAU05G01_IN.AFS    :=LPAU05G01_AFS       ;
    PAU05G01_IN.ISO1   :=LPAU05G01_ISO1      ;
    PAU05G01_IN.ISO2   :=LPAU05G01_ISO2      ;
    PAU05G01_IN.ISO3   :=LPAU05G01_ISO3      ;
    PAU05G01_IN.VP     :=LPAU05G01_VP        ;
    PAU05G01_IN.VI     :=LPAU05G01_VI        ;
    PAU05G01_IN.FDELAY :=t#30s               ;
    PAU05G01_IN.VDELAY :=t#120s              ;
    (*FAU_OUTSTRUCT*)
    LPAU05G01_WVCS     :=PAU05G01_OUT.WVCS   ;
    LPAU05G01_VFCS     :=PAU05G01_OUT.VFCS   ;
    LPAU05G01_FDOC      :=PAU05G01_OUT.FDO    ;
    LPAU05G01_FDSC      :=PAU05G01_OUT.FDS    ;
    LPAU05G01_C        :=PAU05G01_OUT.ContRol;
    LPAU05G01_RH       :=PAU05G01_OUT.RH     ;
    LPAU05G01_SN       :=PAU05G01_OUT.SN     ;
    (*同步程序*)
    PAU05G01_SyncContRol(CM:=RNIPAU00000_CM,RM:=LCMD00000_RM,
                     BOOL_IN0:=RNIPAU05X00_PC  ,BOOL_IN1:=LPAU05G01_PC  ,BOOL_IN2      :=RPAU05G01_PC  ,BOOL_IN3:=LPAU05G01_TC,
                     REAL_IN0:=RNIPAU05X00_TSET,REAL_IN1:=LPAU05G01_TSET,REAL_IN2      :=RPAU05G01_TSET,
                     INT_IN0 :=RNIPAU05X00_SM  ,INT_IN1 :=LPAU05G01_SM  ,INT_IN2       :=RPAU05G01_SM  |
                                          LPAU05G01_PC  :=BOOL_OUT1     ,RPAU05G01_PC  :=BOOL_OUT2     ,
                                          LPAU05G01_TSET:=REAL_OUT1     ,RPAU05G01_TSET:=REAL_OUT2     ,
                                          LPAU05G01_SM  :=INT_OUT1      ,RPAU05G01_SM  :=INT_OUT2     );
    (*新风机CO2联动程序*)
    LPAU05G01_TC:=LPAU05G01_LC[1];
    LPAU05G01_CO2S[1]:=LIES04C01_CO2S;

    PAU05G01_SLG(ENABLE:=LPAU05G01_TM,LINKAGEVALUE:=LPAU05G01_CO2S,DEAD_BAND:=10.0,MAXRANGE:=2000.0,MINRANGE:=10.0,
             LINKAGESET:=LPAU05G01_CO2SET,HOLDDELAY:=t#60s,ENABLENUM:=4,SCH_STR:=LPAU05G01_TSTR,ALLDAY:=LPAU05G01_DM | LPAU05G01_LC:=LINKAGEOUT);


    (********************************************PAU05G01********************************************)
    (*输入,类型,示值上限,示值下限,基准补偿,输出补偿*)
    PAU05G02_WVB_AVE(INPUT:=LPAU05G02_WVB);
    PAU05G02_ST_AVE (INPUT:=LPAU05G02_ST );
    LPAU05G02_STS :=            BS_Scale(PAU05G02_ST_AVE.Output ,1,0,100,0,0.0);
    LPAU05G02_WVBS:=            BS_Scale(PAU05G02_WVB_AVE.Output,2,0,100,0,0.0);
    LPAU05G02_WVC :=REAL_TO_INT(BS_Scale(LPAU05G02_WVCS         ,4,0,100,0,0.0));
    LPAU05G02_VFBS:=REAL_TO_INT(BS_Scale(LPAU05G02_VFB          ,2,0,50 ,0,0.0));
    LPAU05G02_VFC :=REAL_TO_INT(BS_Scale((LPAU05G02_VFCS*100)   ,4,0,50 ,0,0.0));
    (*主程序*)
    PAU05G02_FAU(FAU_STRUCT_IN:=PAU05G02_IN | PAU05G02_OUT:=FAU_STRUCT_OUT);
    (*FAU_INSTRUCT*)
    PAU05G02_IN.SM     :=LPAU05G02_SM        ;
    PAU05G02_IN.LM     :=LPAU05G02_LM        ;
    PAU05G02_IN.Run    :=LPAU05G02_R         ;
    PAU05G02_IN.Fault  :=LPAU05G02_F         ;
    PAU05G02_IN.Auto   :=LPAU05G02_A         ;
    PAU05G02_IN.ContRol:=LPAU05G02_PC        ;
    PAU05G02_IN.FDOB   :=LPAU05G02_FDOB       ;
    PAU05G02_IN.FDSB   :=LPAU05G02_FDSB       ;
    PAU05G02_IN.TSET   :=LPAU05G02_TSET      ;
    PAU05G02_IN.WVMC   :=LPAU05G02_WVMC      ;
    PAU05G02_IN.WVMV   :=LPAU05G02_WVMV      ;
    PAU05G02_IN.VFMV   :=LPAU05G02_VFMV      ;
    PAU05G02_IN.STS    :=LPAU05G02_STS       ;
    PAU05G02_IN.RST    :=LPAU05G02_RST       ;
    PAU05G02_IN.RSTV   :=LPAU05G02_RSTV      ;
    PAU05G02_IN.FPS    :=LPAU05G02_FPS       ;
    PAU05G02_IN.IPS    :=LPAU05G02_IPS       ;
    PAU05G02_IN.AFS    :=LPAU05G02_AFS       ;
    PAU05G02_IN.ISO1   :=LPAU05G02_ISO1      ;
    PAU05G02_IN.ISO2   :=LPAU05G02_ISO2      ;
    PAU05G02_IN.ISO3   :=LPAU05G02_ISO3      ;
    PAU05G02_IN.VP     :=LPAU05G02_VP        ;
    PAU05G02_IN.VI     :=LPAU05G02_VI        ;
    PAU05G02_IN.FDELAY :=t#30s               ;
    PAU05G02_IN.VDELAY :=t#120s              ;
    (*FAU_OUTSTRUCT*)
    LPAU05G02_WVCS     :=PAU05G02_OUT.WVCS   ;
    LPAU05G02_VFCS     :=PAU05G02_OUT.VFCS   ;
    LPAU05G02_FDOC      :=PAU05G02_OUT.FDO    ;
    LPAU05G02_FDSC      :=PAU05G02_OUT.FDS    ;
    LPAU05G02_C        :=PAU05G02_OUT.ContRol;
    LPAU05G02_RH       :=PAU05G02_OUT.RH     ;
    LPAU05G02_SN       :=PAU05G02_OUT.SN     ;
    (*同步程序*)
    PAU05G02_SyncContRol(CM:=RNIPAU00000_CM,RM:=LCMD00000_RM,
                     BOOL_IN0:=RNIPAU05X00_PC  ,BOOL_IN1:=LPAU05G02_PC  ,BOOL_IN2      :=RPAU05G02_PC  ,BOOL_IN3:=LPAU05G02_TC,
                     REAL_IN0:=RNIPAU05X00_TSET,REAL_IN1:=LPAU05G02_TSET,REAL_IN2      :=RPAU05G02_TSET,
                     INT_IN0 :=RNIPAU05X00_SM  ,INT_IN1 :=LPAU05G02_SM  ,INT_IN2       :=RPAU05G02_SM  |
                                          LPAU05G02_PC  :=BOOL_OUT1     ,RPAU05G02_PC  :=BOOL_OUT2     ,
                                          LPAU05G02_TSET:=REAL_OUT1     ,RPAU05G02_TSET:=REAL_OUT2     ,
                                          LPAU05G02_SM  :=INT_OUT1      ,RPAU05G02_SM  :=INT_OUT2     );
    (*新风机CO2联动程序*)
    LPAU05G02_TC:=LPAU05G02_LC[1];
    LPAU05G02_CO2S[1]:=LIES04C01_CO2S;

    PAU05G02_SLG(ENABLE:=LPAU05G02_TM,LINKAGEVALUE:=LPAU05G02_CO2S,DEAD_BAND:=10.0,MAXRANGE:=2000.0,MINRANGE:=10.0,
             LINKAGESET:=LPAU05G02_CO2SET,HOLDDELAY:=t#60s,ENABLENUM:=4,SCH_STR:=LPAU05G02_TSTR,ALLDAY:=LPAU05G02_DM | LPAU05G02_LC:=LINKAGEOUT);

END_PROGRAM