FUNCTION_BLOCK IJ_AHU VAR_EXTERNAL END_VAR VAR_INPUT AHU_STRUCT_IN :AHU_IN; END_VAR VAR_OUTPUT AHU_STRUCT_OUT :AHU_OUT; END_VAR VAR AHU_SPID :BS_PID; AHU_WPID :BS_PID; AHU_RunTime :BS_Runtime; AHU_WVCTEMP :REAL; RunTon1 :TON; RunTon2 :TON; RunTon3 :TON; RunTon5 :TON; RunTof1 :TOF; RunTof2 :TOF; RunTof3 :TOF; DevCheck1_time :TIME :=t#15s; (*设备运行状态反馈*) DevCheck2_time :TIME :=t#15s; (*设备运行状态反馈*) AFSDelay_time :TIME :=t#60s; Status0 :INT; Status1 :INT; Status2 :INT; Status3 :INT; AHU_SPID_VP :REAL; AHU_SPID_VI :REAL; AHU_WPID_VP :REAL; AHU_WPID_VI :REAL; PID_in :BOOL; PID_timer :TON; AFSM :BOOL; FDSM :BOOL; FDOM :BOOL; FDOTon :TON; FDSTon :TON; (*AHU_FEC :BS_FEC;*) AHU_CM :BOOL; AHU_VFCSM :INT; ini :BOOL; VFMVM :INT; AFSON :BOOL; AFSOF :BOOL; AFSTON :TON; AFSTOF :TOF; END_VAR (*Automatically declared*) VAR_EXTERNAL END_VAR (** {* **) (** **) (** ʱ 䣺20200724 **) (** 1.0 **) (** ߣƽ **) (** ƣӰԺյܿ **) (** ˵ **) (** **) (** AHU_IN:STRUCT **) (** SM :INT ; ģʽ 0ļ 1 2 **) (** LM :BOOL; ߼ģʽԤ 0 1 **) (** FM :BOOL; 緧ģʽ 0 1 **) (** Run :BOOL; ״̬ **) (** AHUlt :BOOL; ״̬ **) (** Auto :BOOL; Զ״̬ **) (** Control :BOOL; **) (** FDB :BOOL; ·緧ȷ **) (** RDB :BOOL; ط緧ȷ **) (** TSET :REAL; ¶趨 **) (** WVMC :BOOL; ˮֶ **) (** WVMV :REAL; ˮֵֶ **) (** VFMV :INT; Ƶֵֶ **) (** RTS :REAL; ط¶ **) (** RST :BOOL; ʱۼ **) (** RSTV :REAL; ʱۼֵ **) (** IPS :BOOL; ѹ **) (** AFS :BOOL; ¶· **) (** ISO1 :BOOL; йϷ **) (** ISO3 :BOOL; ¶· **) (** VP :REAL; PI趨ֵP **) (** VI :REAL; PI趨ֵI **) (** FDELAY :TIME; ʱ **) (** CO2SET :REAL; ̼Ũ趨 **) (** CO2S :REAL; ̼Ũ **) (** FDMV :INT; ·緧ֵֶ **) (** RDMV :INT; ط緧ֵֶ **) (** END_STRUCT; **) (** **) (** AHU_OUT:STRUCT **) (** WVCS :INT ; ˮתֵŴ100 **) (** VFCS :INT; Ƶ **) (** FDCS :INT; ·緧 **) (** RDCS :INT; ط緧 **) (** Control :BOOL; ͣ **) (** RH :REAL; Сʱ **) (** SN :INT ; 豸״̬ **) (** END_STRUCT; **) (** **) (** ¼㹦 **) (** 1.йϻؼ,ϴ룬ֹ֧ϱ **) (** 2.ˮPID/ֶ **) (** 3.ʱۼ **) (** 4. **) (** 5.緧򣬼ⷧŵλֹͣƵ **) (** 6.̼ **) (** 7.ͣ **) (** 8.Ƶ **) (** **) (** ע **) (** 飺 **) (** BS_PID; **) (** BS_Runtime; **) (** **) (** *}{* **) (** if ini=0 then **) (** AHU_STRUCT_IN.VFMV:=40; **) (** ini:=1; **) (** end_if;*} **) (** **) (** **) (** **) (** **) (** **) (** **) (** {******************************************************緧********************************************************} **) (** **) (** if AHU_STRUCT_IN.FM=0 then **) (* if - Cond *) LD AHU_STRUCT_IN.FM EQ 0 JMPCN ODK_SKIP_000000000000001_000000000000001 (* then - Stmts *) (** if (AHU_STRUCT_IN.Control=1 and AHU_STRUCT_IN.Auto=1) or (AHU_STRUCT_IN.Run=1 and AHU_STRUCT_IN.Auto=0) then **) (* if - Cond *) LD AHU_STRUCT_IN.Control EQ 1 AND ( AHU_STRUCT_IN.Auto EQ 1 ) OR ( AHU_STRUCT_IN.Run EQ 1 AND ( AHU_STRUCT_IN.Auto EQ 0 ) ) JMPCN ODK_SKIP_000000000000002_000000000000001 (* then - Stmts *) (** AHU_STRUCT_OUT.FDCS:=100; **) (* assign - Stmt *) LD 100 ST AHU_STRUCT_OUT.FDCS (** AHU_STRUCT_OUT.RDCS:=100; **) (* assign - Stmt *) LD 100 ST AHU_STRUCT_OUT.RDCS JMP ODK_END_IF_000000000000002 (** else **) (* else *) ODK_SKIP_000000000000002_000000000000001: (* else - Stmts *) (** AHU_STRUCT_OUT.FDCS:=0; **) (* assign - Stmt *) LD 0 ST AHU_STRUCT_OUT.FDCS (** AHU_STRUCT_OUT.RDCS:=0; **) (* assign - Stmt *) LD 0 ST AHU_STRUCT_OUT.RDCS (** end_if; **) (* if - End *) ODK_END_IF_000000000000002: JMP ODK_END_IF_000000000000001 (** else AHU_STRUCT_OUT.FDCS:=AHU_STRUCT_IN.FDMV; **) (* else *) ODK_SKIP_000000000000001_000000000000001: (* else - Stmts *) (* assign - Stmt *) LD AHU_STRUCT_IN.FDMV ST AHU_STRUCT_OUT.FDCS (** AHU_STRUCT_OUT.RDCS:=AHU_STRUCT_IN.RDMV; **) (* assign - Stmt *) LD AHU_STRUCT_IN.RDMV ST AHU_STRUCT_OUT.RDCS (** end_if; **) (* if - End *) ODK_END_IF_000000000000001: (** **) (** {******************************************************CO2******************************************************* **) (** ʱԤ **) (** if AHU_STRUCT_IN.LM=1 then **) (** AHU_FEC(RUN :=AHU_STRUCT_IN.CM , SET :=AHU_STRUCT_IN.CO2SET , FB :=AHU_STRUCT_IN.CO2S , DEAD_BAND :=10.0 , DELAY :=t#20s | AHU_CM:= DevC); **) (** end_if; **) (** *} **) (** **) (** {******************************************************·ͣ********************************************************} **) (** **) (** if AFSM=0 then{*ʼ*} **) (* if - Cond *) LD AFSM EQ 0 JMPCN ODK_SKIP_000000000000003_000000000000001 (* then - Stmts *) (** **) (** **) (** **) (** {***************************************ʱ**********************************************} **) (** **) (** RunTon3 ( IN:=AHU_STRUCT_IN.Control , PT:=AHU_STRUCT_IN.FDELAY | AHU_STRUCT_OUT.Control:=q ); **) (* call - Stmt *) CAL RunTon3 ( IN := AHU_STRUCT_IN.Control, PT := AHU_STRUCT_IN.FDELAY | AHU_STRUCT_OUT.Control := q ) (** **) (** **) (** {*Ƶֵ*} **) (** if AHU_STRUCT_IN.VFMV<=50 and AHU_STRUCT_IN.VFMV>=40 then **) (* if - Cond *) LD AHU_STRUCT_IN.VFMV LE 50 AND ( AHU_STRUCT_IN.VFMV GE 40 ) JMPCN ODK_SKIP_000000000000004_000000000000001 (* then - Stmts *) (** AHU_STRUCT_OUT.VFCS:=AHU_STRUCT_IN.VFMV; **) (* assign - Stmt *) LD AHU_STRUCT_IN.VFMV ST AHU_STRUCT_OUT.VFCS JMP ODK_END_IF_000000000000004 (** end_if; **) (* if - End *) ODK_SKIP_000000000000004_000000000000001: ODK_END_IF_000000000000004: (** if AHU_STRUCT_IN.VFMV>50 then **) (* if - Cond *) LD AHU_STRUCT_IN.VFMV GT 50 JMPCN ODK_SKIP_000000000000005_000000000000001 (* then - Stmts *) (** AHU_STRUCT_OUT.VFCS:=50; **) (* assign - Stmt *) LD 50 ST AHU_STRUCT_OUT.VFCS JMP ODK_END_IF_000000000000005 (** end_if; **) (* if - End *) ODK_SKIP_000000000000005_000000000000001: ODK_END_IF_000000000000005: (** if AHU_STRUCT_IN.VFMV<40 then **) (* if - Cond *) LD AHU_STRUCT_IN.VFMV LT 40 JMPCN ODK_SKIP_000000000000006_000000000000001 (* then - Stmts *) (** AHU_STRUCT_OUT.VFCS:=40; **) (* assign - Stmt *) LD 40 ST AHU_STRUCT_OUT.VFCS JMP ODK_END_IF_000000000000006 (** end_if; **) (* if - End *) ODK_SKIP_000000000000006_000000000000001: ODK_END_IF_000000000000006: (** **) (** **) (** {******************************************************ˮ******************************************************} **) (** **) (** PID_in:= not PID_timer.q; **) (* assign - Stmt *) LD PID_timer.q NOT ST PID_in (** PID_timer(in:=PID_in, pt:=t#1s );{*PIDʱ*} **) (* call - Stmt *) CAL PID_timer ( IN := PID_in, PT := t#1s ) (** **) (** if AHU_STRUCT_IN.WVMC=0 then **) (* if - Cond *) LD AHU_STRUCT_IN.WVMC EQ 0 JMPCN ODK_SKIP_000000000000007_000000000000001 (* then - Stmts *) (** if AHU_STRUCT_IN.Run=1 then **) (* if - Cond *) LD AHU_STRUCT_IN.Run EQ 1 JMPCN ODK_SKIP_000000000000008_000000000000001 (* then - Stmts *) (** if AHU_STRUCT_IN.VP<>0.0 and AHU_STRUCT_IN.VI<>0.0 then **) (* if - Cond *) LD AHU_STRUCT_IN.VP NE 0.0 AND ( AHU_STRUCT_IN.VI NE 0.0 ) JMPCN ODK_SKIP_000000000000009_000000000000001 (* then - Stmts *) (** AHU_SPID_VP:=-AHU_STRUCT_IN.VP; **) (* assign - Stmt *) LD AHU_STRUCT_IN.VP NEG ST AHU_SPID_VP (** AHU_SPID_VI:=-AHU_STRUCT_IN.VI; **) (* assign - Stmt *) LD AHU_STRUCT_IN.VI NEG ST AHU_SPID_VI (** AHU_WPID_VP:=AHU_STRUCT_IN.VP; **) (* assign - Stmt *) LD AHU_STRUCT_IN.VP ST AHU_WPID_VP (** AHU_WPID_VI:=AHU_STRUCT_IN.VI; **) (* assign - Stmt *) LD AHU_STRUCT_IN.VI ST AHU_WPID_VI JMP ODK_END_IF_000000000000009 (** else **) (* else *) ODK_SKIP_000000000000009_000000000000001: (* else - Stmts *) (** AHU_SPID_VP:=-30.0; **) (* assign - Stmt *) LD -30.0 ST AHU_SPID_VP (** AHU_SPID_VI:=-150.0; **) (* assign - Stmt *) LD -150.0 ST AHU_SPID_VI (** AHU_WPID_VP:=30.0; **) (* assign - Stmt *) LD 30.0 ST AHU_WPID_VP (** AHU_WPID_VI:=150.0; **) (* assign - Stmt *) LD 150.0 ST AHU_WPID_VI (** end_if; **) (* if - End *) ODK_END_IF_000000000000009: (** {*伾*} **) (** if AHU_STRUCT_IN.SM=0 then **) (* if - Cond *) LD AHU_STRUCT_IN.SM EQ 0 JMPCN ODK_SKIP_00000000000000A_000000000000001 (* then - Stmts *) (** if AHU_STRUCT_IN.RTS-AHU_STRUCT_IN.TSET>=3.0 then **) (* if - Cond *) LD AHU_STRUCT_IN.RTS SUB AHU_STRUCT_IN.TSET GE 3.0 JMPCN ODK_SKIP_00000000000000B_000000000000001 (* then - Stmts *) (** AHU_WVCTEMP:=100.0; **) (* assign - Stmt *) LD 100.0 ST AHU_WVCTEMP JMP ODK_END_IF_00000000000000B (** end_if; **) (* if - End *) ODK_SKIP_00000000000000B_000000000000001: ODK_END_IF_00000000000000B: (** if PID_timer.q then **) (* if - Cond *) LD PID_timer.q JMPCN ODK_SKIP_00000000000000C_000000000000001 (* then - Stmts *) (** AHU_SPID(RUN:= AHU_STRUCT_IN.RUN,STOP_D:=1,STOP_I:=0,SET:=AHU_STRUCT_IN.TSET,FB:=AHU_STRUCT_IN.RTS,KFB:=1.0,KP:=AHU_SPID_VP,TI:=AHU_SPID_VI,TD:=-1.0,DEAD_BAND:=0.2,YMAX:=100.0,YMIN:=0.0 | AHU_WVCTEMP:=OUT); **) (* call - Stmt *) CAL AHU_SPID ( Run := AHU_STRUCT_IN.Run, STOP_D := 1, STOP_I := 0, SET := AHU_STRUCT_IN.TSET, FB := AHU_STRUCT_IN.RTS, KFB := 1.0, KP := AHU_SPID_VP, TI := AHU_SPID_VI, TD := -1.0, DEAD_BAND := 0.2, YMAX := 100.0, YMIN := 0.0 | AHU_WVCTEMP := OUT ) JMP ODK_END_IF_00000000000000C (** end_if; **) (* if - End *) ODK_SKIP_00000000000000C_000000000000001: ODK_END_IF_00000000000000C: JMP ODK_END_IF_00000000000000A (** end_if; **) (* if - End *) ODK_SKIP_00000000000000A_000000000000001: ODK_END_IF_00000000000000A: (** {*ȼ*} **) (** if AHU_STRUCT_IN.SM=1 then **) (* if - Cond *) LD AHU_STRUCT_IN.SM EQ 1 JMPCN ODK_SKIP_00000000000000D_000000000000001 (* then - Stmts *) (** if AHU_STRUCT_IN.TSET-AHU_STRUCT_IN.RTS>=3.0 then **) (* if - Cond *) LD AHU_STRUCT_IN.TSET SUB AHU_STRUCT_IN.RTS GE 3.0 JMPCN ODK_SKIP_00000000000000E_000000000000001 (* then - Stmts *) (** AHU_WVCTEMP:=100.0; **) (* assign - Stmt *) LD 100.0 ST AHU_WVCTEMP JMP ODK_END_IF_00000000000000E (** end_if; **) (* if - End *) ODK_SKIP_00000000000000E_000000000000001: ODK_END_IF_00000000000000E: (** if PID_timer.q then **) (* if - Cond *) LD PID_timer.q JMPCN ODK_SKIP_00000000000000F_000000000000001 (* then - Stmts *) (** AHU_WPID(RUN:= AHU_STRUCT_IN.RUN,STOP_D:=1,STOP_I:=0,SET:=AHU_STRUCT_IN.TSET,FB:=AHU_STRUCT_IN.RTS,KFB:=1.0,KP:=AHU_WPID_VP,TI:=AHU_WPID_VI,TD:=1.0,DEAD_BAND:=0.2,YMAX:=100.0,YMIN:=0.0 | AHU_WVCTEMP:=OUT); **) (* call - Stmt *) CAL AHU_WPID ( Run := AHU_STRUCT_IN.Run, STOP_D := 1, STOP_I := 0, SET := AHU_STRUCT_IN.TSET, FB := AHU_STRUCT_IN.RTS, KFB := 1.0, KP := AHU_WPID_VP, TI := AHU_WPID_VI, TD := 1.0, DEAD_BAND := 0.2, YMAX := 100.0, YMIN := 0.0 | AHU_WVCTEMP := OUT ) JMP ODK_END_IF_00000000000000F (** end_if; **) (* if - End *) ODK_SKIP_00000000000000F_000000000000001: ODK_END_IF_00000000000000F: JMP ODK_END_IF_00000000000000D (** end_if; **) (* if - End *) ODK_SKIP_00000000000000D_000000000000001: ODK_END_IF_00000000000000D: (** {*ɼ*} **) (** if AHU_STRUCT_IN.SM=2 then **) (* if - Cond *) LD AHU_STRUCT_IN.SM EQ 2 JMPCN ODK_SKIP_00000000000000G_000000000000001 (* then - Stmts *) (** AHU_WVCTEMP:=0.0; **) (* assign - Stmt *) LD 0.0 ST AHU_WVCTEMP JMP ODK_END_IF_00000000000000G (** end_if; **) (* if - End *) ODK_SKIP_00000000000000G_000000000000001: ODK_END_IF_00000000000000G: JMP ODK_END_IF_000000000000008 (** else **) (* else *) ODK_SKIP_000000000000008_000000000000001: (* else - Stmts *) (** AHU_WVCTEMP:=0.0; **) (* assign - Stmt *) LD 0.0 ST AHU_WVCTEMP (** end_if; **) (* if - End *) ODK_END_IF_000000000000008: JMP ODK_END_IF_000000000000007 (** else **) (* else *) ODK_SKIP_000000000000007_000000000000001: (* else - Stmts *) (** AHU_WVCTEMP:=AHU_STRUCT_IN.WVMV; **) (* assign - Stmt *) LD AHU_STRUCT_IN.WVMV ST AHU_WVCTEMP (** end_if; **) (* if - End *) ODK_END_IF_000000000000007: JMP ODK_END_IF_000000000000003 (** **) (** end_if;{*ν*} **) (* if - End *) ODK_SKIP_000000000000003_000000000000001: ODK_END_IF_000000000000003: (** **) (** **) (** {*ˮֵת*} **) (** AHU_STRUCT_OUT.WVCS:=REAL_TO_INT(AHU_WVCTEMP*100.0); **) (* assign - Stmt *) LD AHU_WVCTEMP MUL 100.0 REAL_TO_INT ST AHU_STRUCT_OUT.WVCS (** **) (** **) (** {*Ƶͣ*} **) (** **) (** {*Ƶֹͣɺر,ƵһԴֹͣʱ˹ **) (** **) (** RunTon5 ( IN:=RunTon5M , PT:=DevDelay5_time ); **) (** RunTon5M:= not RunTon5.q; **) (** **) (** if RunTon3.Q =1 then **) (** if RunTon5.Q then **) (** AHU_VFCSM:=AHU_VFCSM+1; **) (** end_if; **) (** if AHU_VFCSM>AHU_STRUCT_IN.VFMV then **) (** AHU_VFCSM:=AHU_STRUCT_IN.VFMV; **) (** end_if; **) (** end_if; **) (** if AHU_CM =0 then **) (** if RunTon5.Q then **) (** AHU_VFCSM:=AHU_VFCSM-1; **) (** end_if; **) (** if AHU_VFCSM<1 then **) (** AHU_VFCSM:=0; **) (** AHU_STRUCT_OUT.Control :=0; **) (** FDOM:=0; **) (** FDSM:=1; **) (** end_if; **) (** end_if; **) (** **) (** **) (** if RunTon3.q=1 then **) (** if AHU_VFCSM=AHU_STRUCT_IN.VFMV then **) (** AHU_STRUCT_OUT.Control:=1; **) (** end_if; **) (** if AHU_VFCSM=0 then **) (** AHU_STRUCT_OUT.Control:=0; **) (** end_if; **) (** end_if; **) (** **) (** AHU_STRUCT_OUT.VFCS :=AHU_VFCSM; **) (** *} **) (** {************************************************************************************************************} **) (** **) (** if AHU_STRUCT_IN.ISO3=0 and AHU_STRUCT_IN.SM=1 then **) (* if - Cond *) LD AHU_STRUCT_IN.ISO3 EQ 0 AND ( AHU_STRUCT_IN.SM EQ 1 ) JMPCN ODK_SKIP_00000000000000H_000000000000001 (* then - Stmts *) (** AFSTON ( IN:=AHU_STRUCT_IN.AFS , PT:=AFSDelay_time | AFSON:=q ); **) (* call - Stmt *) CAL AFSTON ( IN := AHU_STRUCT_IN.AFS, PT := AFSDelay_time | AFSON := q ) (** AFSTOF ( IN:=AHU_STRUCT_IN.AFS , PT:=AFSDelay_time | AFSOF:=q ); **) (* call - Stmt *) CAL AFSTOF ( IN := AHU_STRUCT_IN.AFS, PT := AFSDelay_time | AFSOF := q ) (** if AFSON=1 and AFSOF=1 then **) (* if - Cond *) LD AFSON EQ 1 AND ( AFSOF EQ 1 ) JMPCN ODK_SKIP_00000000000000I_000000000000001 (* then - Stmts *) (** AFSM:=1 ; **) (* assign - Stmt *) LD 1 ST AFSM JMP ODK_END_IF_00000000000000I (** end_if; **) (* if - End *) ODK_SKIP_00000000000000I_000000000000001: ODK_END_IF_00000000000000I: (** if AFSOF=0 and AFSON=0 then **) (* if - Cond *) LD AFSOF EQ 0 AND ( AFSON EQ 0 ) JMPCN ODK_SKIP_00000000000000J_000000000000001 (* then - Stmts *) (** AFSM:=0 ; **) (* assign - Stmt *) LD 0 ST AFSM JMP ODK_END_IF_00000000000000J (** end_if; **) (* if - End *) ODK_SKIP_00000000000000J_000000000000001: ODK_END_IF_00000000000000J: (** if AFSM=1 then **) (* if - Cond *) LD AFSM EQ 1 JMPCN ODK_SKIP_00000000000000K_000000000000001 (* then - Stmts *) (** AHU_STRUCT_OUT.Control:=0; **) (* assign - Stmt *) LD 0 ST AHU_STRUCT_OUT.Control (** AHU_WVCTEMP:=100.0; **) (* assign - Stmt *) LD 100.0 ST AHU_WVCTEMP (** AHU_STRUCT_OUT.FDCS:=0; **) (* assign - Stmt *) LD 0 ST AHU_STRUCT_OUT.FDCS (** AHU_STRUCT_OUT.RDCS:=0; **) (* assign - Stmt *) LD 0 ST AHU_STRUCT_OUT.RDCS (** Status3:=1; **) (* assign - Stmt *) LD 1 ST Status3 JMP ODK_END_IF_00000000000000K (** else **) (* else *) ODK_SKIP_00000000000000K_000000000000001: (* else - Stmts *) (** Status3:=0; **) (* assign - Stmt *) LD 0 ST Status3 (** end_if; **) (* if - End *) ODK_END_IF_00000000000000K: JMP ODK_END_IF_00000000000000H (** end_if; **) (* if - End *) ODK_SKIP_00000000000000H_000000000000001: ODK_END_IF_00000000000000H: (** {*Ƕг*} **) (** if AHU_STRUCT_IN.ISO3=1 or AHU_STRUCT_IN.SM<>1 then **) (* if - Cond *) LD AHU_STRUCT_IN.ISO3 EQ 1 OR ( AHU_STRUCT_IN.SM NE 1 ) JMPCN ODK_SKIP_00000000000000L_000000000000001 (* then - Stmts *) (** AFSM:=0; **) (* assign - Stmt *) LD 0 ST AFSM JMP ODK_END_IF_00000000000000L (** end_if; **) (* if - End *) ODK_SKIP_00000000000000L_000000000000001: ODK_END_IF_00000000000000L: (** **) (** **) (** {******************************************************йϻؼ******************************************************} **) (** RunTon1( IN:=AHU_STRUCT_IN.Control , PT:=DevCheck1_time); **) (* call - Stmt *) CAL RunTon1 ( IN := AHU_STRUCT_IN.Control, PT := DevCheck1_time ) (** RunTof1( IN:=AHU_STRUCT_IN.Control , PT:=DevCheck1_time); **) (* call - Stmt *) CAL RunTof1 ( IN := AHU_STRUCT_IN.Control, PT := DevCheck1_time ) (** RunTon2( IN:=AHU_STRUCT_IN.Control , PT:=DevCheck2_time); **) (* call - Stmt *) CAL RunTon2 ( IN := AHU_STRUCT_IN.Control, PT := DevCheck2_time ) (** RunTof2( IN:=AHU_STRUCT_IN.Control , PT:=DevCheck2_time); **) (* call - Stmt *) CAL RunTof2 ( IN := AHU_STRUCT_IN.Control, PT := DevCheck2_time ) (** **) (** {*豸ָ豸зһ¹ϼ⣬ϲԭû硢·Ͽм̵ӴϵΪStatus0*}; **) (** **) (** if AHU_STRUCT_IN.ISO1=0 then **) (* if - Cond *) LD AHU_STRUCT_IN.ISO1 EQ 0 JMPCN ODK_SKIP_00000000000000M_000000000000001 (* then - Stmts *) (** if RunTon1.q or not RunTof1.q then **) (* if - Cond *) LD RunTon1.q OR ( RunTof1.q NOT ) JMPCN ODK_SKIP_00000000000000N_000000000000001 (* then - Stmts *) (** if AHU_STRUCT_OUT.Control<>AHU_STRUCT_IN.Run then **) (* if - Cond *) LD AHU_STRUCT_OUT.Control NE AHU_STRUCT_IN.Run JMPCN ODK_SKIP_00000000000000O_000000000000001 (* then - Stmts *) (** Status0:=1; **) (* assign - Stmt *) LD 1 ST Status0 JMP ODK_END_IF_00000000000000O (** else **) (* else *) ODK_SKIP_00000000000000O_000000000000001: (* else - Stmts *) (** Status0:=0; **) (* assign - Stmt *) LD 0 ST Status0 (** end_if; **) (* if - End *) ODK_END_IF_00000000000000O: (** if AHU_STRUCT_IN.fault=1 then **) (* if - Cond *) LD AHU_STRUCT_IN.fault EQ 1 JMPCN ODK_SKIP_00000000000000P_000000000000001 (* then - Stmts *) (** Status1:=1; **) (* assign - Stmt *) LD 1 ST Status1 JMP ODK_END_IF_00000000000000P (** else **) (* else *) ODK_SKIP_00000000000000P_000000000000001: (* else - Stmts *) (** Status1:=0; **) (* assign - Stmt *) LD 0 ST Status1 (** end_if; **) (* if - End *) ODK_END_IF_00000000000000P: JMP ODK_END_IF_00000000000000N (** end_if; **) (* if - End *) ODK_SKIP_00000000000000N_000000000000001: ODK_END_IF_00000000000000N: JMP ODK_END_IF_00000000000000M (** else **) (* else *) ODK_SKIP_00000000000000M_000000000000001: (* else - Stmts *) (** Status0:=0; **) (* assign - Stmt *) LD 0 ST Status0 (** Status1:=0; **) (* assign - Stmt *) LD 0 ST Status1 (** end_if; **) (* if - End *) ODK_END_IF_00000000000000M: (** **) (** {*豸ָ豸зһ¹ϼ⣬ϲѹ޻ؼź; **) (** **) (** ӰԺ޷ѹ **) (** **) (** if AHU_STRUCT_IN.ISO2=0 then **) (** if RunTon2.q or not RunTof2.q then **) (** if AHU_STRUCT_OUT.Control<>AHU_STRUCT_IN.FPS then **) (** Status2:=1; **) (** else **) (** Status2:=0; **) (** end_if; **) (** end_if; **) (** else **) (** Status2:=0; **) (** end_if; **) (** *} **) (** **) (** {*ϴ*} **) (** if AHU_STRUCT_OUT.Control<>0 then **) (* if - Cond *) LD AHU_STRUCT_OUT.Control NE 0 JMPCN ODK_SKIP_00000000000000Q_000000000000001 (* then - Stmts *) (** AHU_STRUCT_OUT.SN := Status0 * 1 + Status1* 2 + Status2* 4 + Status3*8; **) (* assign - Stmt *) LD Status0 MUL 1 ADD ( Status1 MUL 2 ) ADD ( Status2 MUL 4 ) ADD ( Status3 MUL 8 ) ST AHU_STRUCT_OUT.SN JMP ODK_END_IF_00000000000000Q (** else **) (* else *) ODK_SKIP_00000000000000Q_000000000000001: (* else - Stmts *) (** AHU_STRUCT_OUT.SN := 0 ; **) (* assign - Stmt *) LD 0 ST AHU_STRUCT_OUT.SN (** end_if; **) (* if - End *) ODK_END_IF_00000000000000Q: (** **) (** {******************************************************ʱۼ******************************************************} **) (** AHU_RunTime(RUN :=AHU_STRUCT_IN.Run , RUNTIMESET :=AHU_STRUCT_IN.RSTV , RUNTIMERST :=AHU_STRUCT_IN.RST | AHU_STRUCT_OUT.RH:= RUNTIME); **) (* call - Stmt *) CAL AHU_RunTime ( Run := AHU_STRUCT_IN.Run, RUNTIMESET := AHU_STRUCT_IN.RSTV, RUNTIMERST := AHU_STRUCT_IN.RST | AHU_STRUCT_OUT.RH := RUNTIME ) (** **) (** **) (** **) (** **) (** **) (** **) END_FUNCTION_BLOCK