You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

1042 lines
22 KiB

4 months ago
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