FUNCTION_BLOCK BS_DelayRemoteVavle VAR_EXTERNAL END_VAR VAR_INPUT Lock :INT; REAL_RemoteSet:REAL; REAL_IN01 :REAL; REAL_IN02 :REAL; REAL_IN03 :REAL; REAL_IN04 :REAL; REAL_IN05 :REAL; REAL_IN06 :REAL; REAL_IN07 :REAL; REAL_IN08 :REAL; REAL_IN09 :REAL; REAL_IN10 :REAL; BOOL_RemoteSet:BOOL; BOOL_IN01 :BOOL; BOOL_IN02 :BOOL; BOOL_IN03 :BOOL; BOOL_IN04 :BOOL; BOOL_IN05 :BOOL; BOOL_IN06 :BOOL; BOOL_IN07 :BOOL; BOOL_IN08 :BOOL; BOOL_IN09 :BOOL; BOOL_IN10 :BOOL; INT_RemoteSet:INT; INT_IN01 :INT; INT_IN02 :INT; INT_IN03 :INT; INT_IN04 :INT; INT_IN05 :INT; INT_IN06 :INT; INT_IN07 :INT; INT_IN08 :INT; INT_IN09 :INT; INT_IN10 :INT; END_VAR VAR_OUTPUT REAL_OUT01 :REAL; REAL_OUT02 :REAL; REAL_OUT03 :REAL; REAL_OUT04 :REAL; REAL_OUT05 :REAL; REAL_OUT06 :REAL; REAL_OUT07 :REAL; REAL_OUT08 :REAL; REAL_OUT09 :REAL; REAL_OUT10 :REAL; BOOL_OUT01 :BOOL; BOOL_OUT02 :BOOL; BOOL_OUT03 :BOOL; BOOL_OUT04 :BOOL; BOOL_OUT05 :BOOL; BOOL_OUT06 :BOOL; BOOL_OUT07 :BOOL; BOOL_OUT08 :BOOL; BOOL_OUT09 :BOOL; BOOL_OUT10 :BOOL; INT_OUT01 :INT; INT_OUT02 :INT; INT_OUT03 :INT; INT_OUT04 :INT; INT_OUT05 :INT; INT_OUT06 :INT; INT_OUT07 :INT; INT_OUT08 :INT; INT_OUT09 :INT; INT_OUT10 :INT; END_VAR VAR REAL_RemoteSetP :REAL; BOOL_RemoteSetP :BOOL; INT_RemoteSetP :INT; Delay_Ton1 :TON; Delay_Ton2 :TON; Delay_Ton3 :TON; END_VAR (*Automatically declared*) VAR_EXTERNAL END_VAR (** {* **) (** **) (** 时 间:20191008 **) (** 版 本:1.1 **) (** 作 者:姚立 **) (** 名 称:变量延时批量赋值 **) (** 说 明:用于变量延时批量赋值,可选锁定单体变量输入 **) (** 1-5s分别赋值1-10变量/1-5s分别赋值11-20变量; **) (** LOCK 0均不锁定;1锁定BOOL;2,锁定INT;3,锁定REAL; **) (** 备 注:支持10组BOOL,10组REAL,10组INT **) (** 依赖块:无 **) (** **) (** *} **) (** {**********一个REAL型总变量对50个变量赋值,50个变量也可单独赋值*************} **) (** Delay_Ton1(PT :=t#5s ); **) (* call - Stmt *) CAL Delay_Ton1 ( PT := t#5s ) (** if REAL_RemoteSet<>REAL_RemoteSetP and Delay_Ton1.Q=0 then **) (* if - Cond *) LD REAL_RemoteSet NE REAL_RemoteSetP AND ( Delay_Ton1.Q EQ 0 ) JMPCN ODK_SKIP_000000000000001_000000000000001 (* then - Stmts *) (** Delay_Ton1.IN:=1; **) (* assign - Stmt *) LD 1 ST Delay_Ton1.IN JMP ODK_END_IF_000000000000001 (** end_if; **) (* if - End *) ODK_SKIP_000000000000001_000000000000001: ODK_END_IF_000000000000001: (** if Delay_Ton1.Q=1 then **) (* if - Cond *) LD Delay_Ton1.Q EQ 1 JMPCN ODK_SKIP_000000000000002_000000000000001 (* then - Stmts *) (** Delay_Ton1.IN:=0; **) (* assign - Stmt *) LD 0 ST Delay_Ton1.IN JMP ODK_END_IF_000000000000002 (** end_if; **) (* if - End *) ODK_SKIP_000000000000002_000000000000001: ODK_END_IF_000000000000002: (** **) (** Delay_Ton2(PT :=t#5s ); **) (* call - Stmt *) CAL Delay_Ton2 ( PT := t#5s ) (** if BOOL_RemoteSet<>BOOL_RemoteSetP and Delay_Ton2.Q=0 then **) (* if - Cond *) LD BOOL_RemoteSet NE BOOL_RemoteSetP AND ( Delay_Ton2.Q EQ 0 ) JMPCN ODK_SKIP_000000000000003_000000000000001 (* then - Stmts *) (** Delay_Ton2.IN:=1; **) (* assign - Stmt *) LD 1 ST Delay_Ton2.IN JMP ODK_END_IF_000000000000003 (** end_if; **) (* if - End *) ODK_SKIP_000000000000003_000000000000001: ODK_END_IF_000000000000003: (** if Delay_Ton2.Q=1 then **) (* if - Cond *) LD Delay_Ton2.Q EQ 1 JMPCN ODK_SKIP_000000000000004_000000000000001 (* then - Stmts *) (** Delay_Ton2.IN:=0; **) (* assign - Stmt *) LD 0 ST Delay_Ton2.IN JMP ODK_END_IF_000000000000004 (** end_if; **) (* if - End *) ODK_SKIP_000000000000004_000000000000001: ODK_END_IF_000000000000004: (** **) (** Delay_Ton3(PT :=t#5s ); **) (* call - Stmt *) CAL Delay_Ton3 ( PT := t#5s ) (** if INT_RemoteSet<>INT_RemoteSetP and Delay_Ton3.Q=0 then **) (* if - Cond *) LD INT_RemoteSet NE INT_RemoteSetP AND ( Delay_Ton3.Q EQ 0 ) JMPCN ODK_SKIP_000000000000005_000000000000001 (* then - Stmts *) (** Delay_Ton3.IN:=1; **) (* assign - Stmt *) LD 1 ST Delay_Ton3.IN JMP ODK_END_IF_000000000000005 (** end_if; **) (* if - End *) ODK_SKIP_000000000000005_000000000000001: ODK_END_IF_000000000000005: (** if Delay_Ton3.Q=1 then **) (* if - Cond *) LD Delay_Ton3.Q EQ 1 JMPCN ODK_SKIP_000000000000006_000000000000001 (* then - Stmts *) (** Delay_Ton3.IN:=0; **) (* assign - Stmt *) LD 0 ST Delay_Ton3.IN JMP ODK_END_IF_000000000000006 (** end_if; **) (* if - End *) ODK_SKIP_000000000000006_000000000000001: ODK_END_IF_000000000000006: (** **) (** **) (** if REAL_RemoteSet<>REAL_RemoteSetP then **) (* if - Cond *) LD REAL_RemoteSet NE REAL_RemoteSetP JMPCN ODK_SKIP_000000000000007_000000000000001 (* then - Stmts *) (** **) (** if Delay_Ton1.et>t#0.0s then REAL_OUT01:=REAL_RemoteSet; end_if; **) (* if - Cond *) LD Delay_Ton1.et GT t#0.0s JMPCN ODK_SKIP_000000000000008_000000000000001 (* then - Stmts *) (* assign - Stmt *) LD REAL_RemoteSet ST REAL_OUT01 JMP ODK_END_IF_000000000000008 (* if - End *) ODK_SKIP_000000000000008_000000000000001: ODK_END_IF_000000000000008: (** if Delay_Ton1.et>t#0.5s then REAL_OUT02:=REAL_RemoteSet; end_if; **) (* if - Cond *) LD Delay_Ton1.et GT t#0.5s JMPCN ODK_SKIP_000000000000009_000000000000001 (* then - Stmts *) (* assign - Stmt *) LD REAL_RemoteSet ST REAL_OUT02 JMP ODK_END_IF_000000000000009 (* if - End *) ODK_SKIP_000000000000009_000000000000001: ODK_END_IF_000000000000009: (** if Delay_Ton1.et>t#1.0s then REAL_OUT03:=REAL_RemoteSet; end_if; **) (* if - Cond *) LD Delay_Ton1.et GT t#1.0s JMPCN ODK_SKIP_00000000000000A_000000000000001 (* then - Stmts *) (* assign - Stmt *) LD REAL_RemoteSet ST REAL_OUT03 JMP ODK_END_IF_00000000000000A (* if - End *) ODK_SKIP_00000000000000A_000000000000001: ODK_END_IF_00000000000000A: (** if Delay_Ton1.et>t#1.5s then REAL_OUT04:=REAL_RemoteSet; end_if; **) (* if - Cond *) LD Delay_Ton1.et GT t#1.5s JMPCN ODK_SKIP_00000000000000B_000000000000001 (* then - Stmts *) (* assign - Stmt *) LD REAL_RemoteSet ST REAL_OUT04 JMP ODK_END_IF_00000000000000B (* if - End *) ODK_SKIP_00000000000000B_000000000000001: ODK_END_IF_00000000000000B: (** if Delay_Ton1.et>t#2.0s then REAL_OUT05:=REAL_RemoteSet; end_if; **) (* if - Cond *) LD Delay_Ton1.et GT t#2.0s JMPCN ODK_SKIP_00000000000000C_000000000000001 (* then - Stmts *) (* assign - Stmt *) LD REAL_RemoteSet ST REAL_OUT05 JMP ODK_END_IF_00000000000000C (* if - End *) ODK_SKIP_00000000000000C_000000000000001: ODK_END_IF_00000000000000C: (** if Delay_Ton1.et>t#2.5s then REAL_OUT06:=REAL_RemoteSet; end_if; **) (* if - Cond *) LD Delay_Ton1.et GT t#2.5s JMPCN ODK_SKIP_00000000000000D_000000000000001 (* then - Stmts *) (* assign - Stmt *) LD REAL_RemoteSet ST REAL_OUT06 JMP ODK_END_IF_00000000000000D (* if - End *) ODK_SKIP_00000000000000D_000000000000001: ODK_END_IF_00000000000000D: (** if Delay_Ton1.et>t#3.0s then REAL_OUT07:=REAL_RemoteSet; end_if; **) (* if - Cond *) LD Delay_Ton1.et GT t#3.0s JMPCN ODK_SKIP_00000000000000E_000000000000001 (* then - Stmts *) (* assign - Stmt *) LD REAL_RemoteSet ST REAL_OUT07 JMP ODK_END_IF_00000000000000E (* if - End *) ODK_SKIP_00000000000000E_000000000000001: ODK_END_IF_00000000000000E: (** if Delay_Ton1.et>t#3.5s then REAL_OUT08:=REAL_RemoteSet; end_if; **) (* if - Cond *) LD Delay_Ton1.et GT t#3.5s JMPCN ODK_SKIP_00000000000000F_000000000000001 (* then - Stmts *) (* assign - Stmt *) LD REAL_RemoteSet ST REAL_OUT08 JMP ODK_END_IF_00000000000000F (* if - End *) ODK_SKIP_00000000000000F_000000000000001: ODK_END_IF_00000000000000F: (** if Delay_Ton1.et>t#4.0s then REAL_OUT09:=REAL_RemoteSet; end_if; **) (* if - Cond *) LD Delay_Ton1.et GT t#4.0s JMPCN ODK_SKIP_00000000000000G_000000000000001 (* then - Stmts *) (* assign - Stmt *) LD REAL_RemoteSet ST REAL_OUT09 JMP ODK_END_IF_00000000000000G (* if - End *) ODK_SKIP_00000000000000G_000000000000001: ODK_END_IF_00000000000000G: (** if Delay_Ton1.et>t#4.5s then REAL_OUT10:=REAL_RemoteSet; end_if; **) (* if - Cond *) LD Delay_Ton1.et GT t#4.5s JMPCN ODK_SKIP_00000000000000H_000000000000001 (* then - Stmts *) (* assign - Stmt *) LD REAL_RemoteSet ST REAL_OUT10 JMP ODK_END_IF_00000000000000H (* if - End *) ODK_SKIP_00000000000000H_000000000000001: ODK_END_IF_00000000000000H: JMP ODK_END_IF_000000000000007 (** **) (** elsif REAL_RemoteSet=REAL_RemoteSetP then **) (* elseif - Cond *) ODK_SKIP_000000000000007_000000000000001: LD REAL_RemoteSet EQ REAL_RemoteSetP JMPCN ODK_SKIP_000000000000007_000000000000002 (* elsif - Stmts *) (** REAL_OUT01:=REAL_IN01; **) (* assign - Stmt *) LD REAL_IN01 ST REAL_OUT01 (** REAL_OUT02:=REAL_IN02; **) (* assign - Stmt *) LD REAL_IN02 ST REAL_OUT02 (** REAL_OUT03:=REAL_IN03; **) (* assign - Stmt *) LD REAL_IN03 ST REAL_OUT03 (** REAL_OUT04:=REAL_IN04; **) (* assign - Stmt *) LD REAL_IN04 ST REAL_OUT04 (** REAL_OUT05:=REAL_IN05; **) (* assign - Stmt *) LD REAL_IN05 ST REAL_OUT05 (** REAL_OUT06:=REAL_IN06; **) (* assign - Stmt *) LD REAL_IN06 ST REAL_OUT06 (** REAL_OUT07:=REAL_IN07; **) (* assign - Stmt *) LD REAL_IN07 ST REAL_OUT07 (** REAL_OUT08:=REAL_IN08; **) (* assign - Stmt *) LD REAL_IN08 ST REAL_OUT08 (** REAL_OUT09:=REAL_IN09; **) (* assign - Stmt *) LD REAL_IN09 ST REAL_OUT09 (** REAL_OUT10:=REAL_IN10; **) (* assign - Stmt *) LD REAL_IN10 ST REAL_OUT10 JMP ODK_END_IF_000000000000007 (** **) (** end_if; **) (* if - End *) ODK_SKIP_000000000000007_000000000000002: ODK_END_IF_000000000000007: (** **) (** **) (** {**********一个BOOL型总变量对50个变量赋值,50个变量也可单独赋值*************} **) (** **) (** if BOOL_RemoteSet<>BOOL_RemoteSetP then **) (* if - Cond *) LD BOOL_RemoteSet NE BOOL_RemoteSetP JMPCN ODK_SKIP_00000000000000I_000000000000001 (* then - Stmts *) (** **) (** if Delay_Ton2.et>t#0.0s then BOOL_OUT01:=BOOL_RemoteSet; end_if; **) (* if - Cond *) LD Delay_Ton2.et GT t#0.0s JMPCN ODK_SKIP_00000000000000J_000000000000001 (* then - Stmts *) (* assign - Stmt *) LD BOOL_RemoteSet ST BOOL_OUT01 JMP ODK_END_IF_00000000000000J (* if - End *) ODK_SKIP_00000000000000J_000000000000001: ODK_END_IF_00000000000000J: (** if Delay_Ton2.et>t#0.5s then BOOL_OUT02:=BOOL_RemoteSet; end_if; **) (* if - Cond *) LD Delay_Ton2.et GT t#0.5s JMPCN ODK_SKIP_00000000000000K_000000000000001 (* then - Stmts *) (* assign - Stmt *) LD BOOL_RemoteSet ST BOOL_OUT02 JMP ODK_END_IF_00000000000000K (* if - End *) ODK_SKIP_00000000000000K_000000000000001: ODK_END_IF_00000000000000K: (** if Delay_Ton2.et>t#1.0s then BOOL_OUT03:=BOOL_RemoteSet; end_if; **) (* if - Cond *) LD Delay_Ton2.et GT t#1.0s JMPCN ODK_SKIP_00000000000000L_000000000000001 (* then - Stmts *) (* assign - Stmt *) LD BOOL_RemoteSet ST BOOL_OUT03 JMP ODK_END_IF_00000000000000L (* if - End *) ODK_SKIP_00000000000000L_000000000000001: ODK_END_IF_00000000000000L: (** if Delay_Ton2.et>t#1.5s then BOOL_OUT04:=BOOL_RemoteSet; end_if; **) (* if - Cond *) LD Delay_Ton2.et GT t#1.5s JMPCN ODK_SKIP_00000000000000M_000000000000001 (* then - Stmts *) (* assign - Stmt *) LD BOOL_RemoteSet ST BOOL_OUT04 JMP ODK_END_IF_00000000000000M (* if - End *) ODK_SKIP_00000000000000M_000000000000001: ODK_END_IF_00000000000000M: (** if Delay_Ton2.et>t#2.0s then BOOL_OUT05:=BOOL_RemoteSet; end_if; **) (* if - Cond *) LD Delay_Ton2.et GT t#2.0s JMPCN ODK_SKIP_00000000000000N_000000000000001 (* then - Stmts *) (* assign - Stmt *) LD BOOL_RemoteSet ST BOOL_OUT05 JMP ODK_END_IF_00000000000000N (* if - End *) ODK_SKIP_00000000000000N_000000000000001: ODK_END_IF_00000000000000N: (** if Delay_Ton2.et>t#2.5s then BOOL_OUT06:=BOOL_RemoteSet; end_if; **) (* if - Cond *) LD Delay_Ton2.et GT t#2.5s JMPCN ODK_SKIP_00000000000000O_000000000000001 (* then - Stmts *) (* assign - Stmt *) LD BOOL_RemoteSet ST BOOL_OUT06 JMP ODK_END_IF_00000000000000O (* if - End *) ODK_SKIP_00000000000000O_000000000000001: ODK_END_IF_00000000000000O: (** if Delay_Ton2.et>t#3.0s then BOOL_OUT07:=BOOL_RemoteSet; end_if; **) (* if - Cond *) LD Delay_Ton2.et GT t#3.0s JMPCN ODK_SKIP_00000000000000P_000000000000001 (* then - Stmts *) (* assign - Stmt *) LD BOOL_RemoteSet ST BOOL_OUT07 JMP ODK_END_IF_00000000000000P (* if - End *) ODK_SKIP_00000000000000P_000000000000001: ODK_END_IF_00000000000000P: (** if Delay_Ton2.et>t#3.5s then BOOL_OUT08:=BOOL_RemoteSet; end_if; **) (* if - Cond *) LD Delay_Ton2.et GT t#3.5s JMPCN ODK_SKIP_00000000000000Q_000000000000001 (* then - Stmts *) (* assign - Stmt *) LD BOOL_RemoteSet ST BOOL_OUT08 JMP ODK_END_IF_00000000000000Q (* if - End *) ODK_SKIP_00000000000000Q_000000000000001: ODK_END_IF_00000000000000Q: (** if Delay_Ton2.et>t#4.0s then BOOL_OUT09:=BOOL_RemoteSet; end_if; **) (* if - Cond *) LD Delay_Ton2.et GT t#4.0s JMPCN ODK_SKIP_00000000000000R_000000000000001 (* then - Stmts *) (* assign - Stmt *) LD BOOL_RemoteSet ST BOOL_OUT09 JMP ODK_END_IF_00000000000000R (* if - End *) ODK_SKIP_00000000000000R_000000000000001: ODK_END_IF_00000000000000R: (** if Delay_Ton2.et>t#4.5s then BOOL_OUT10:=BOOL_RemoteSet; end_if; **) (* if - Cond *) LD Delay_Ton2.et GT t#4.5s JMPCN ODK_SKIP_00000000000000S_000000000000001 (* then - Stmts *) (* assign - Stmt *) LD BOOL_RemoteSet ST BOOL_OUT10 JMP ODK_END_IF_00000000000000S (* if - End *) ODK_SKIP_00000000000000S_000000000000001: ODK_END_IF_00000000000000S: JMP ODK_END_IF_00000000000000I (** **) (** elsif BOOL_RemoteSet=BOOL_RemoteSetP then **) (* elseif - Cond *) ODK_SKIP_00000000000000I_000000000000001: LD BOOL_RemoteSet EQ BOOL_RemoteSetP JMPCN ODK_SKIP_00000000000000I_000000000000002 (* elsif - Stmts *) (** BOOL_OUT01:=BOOL_IN01; **) (* assign - Stmt *) LD BOOL_IN01 ST BOOL_OUT01 (** BOOL_OUT02:=BOOL_IN02; **) (* assign - Stmt *) LD BOOL_IN02 ST BOOL_OUT02 (** BOOL_OUT03:=BOOL_IN03; **) (* assign - Stmt *) LD BOOL_IN03 ST BOOL_OUT03 (** BOOL_OUT04:=BOOL_IN04; **) (* assign - Stmt *) LD BOOL_IN04 ST BOOL_OUT04 (** BOOL_OUT05:=BOOL_IN05; **) (* assign - Stmt *) LD BOOL_IN05 ST BOOL_OUT05 (** BOOL_OUT06:=BOOL_IN06; **) (* assign - Stmt *) LD BOOL_IN06 ST BOOL_OUT06 (** BOOL_OUT07:=BOOL_IN07; **) (* assign - Stmt *) LD BOOL_IN07 ST BOOL_OUT07 (** BOOL_OUT08:=BOOL_IN08; **) (* assign - Stmt *) LD BOOL_IN08 ST BOOL_OUT08 (** BOOL_OUT09:=BOOL_IN09; **) (* assign - Stmt *) LD BOOL_IN09 ST BOOL_OUT09 (** BOOL_OUT10:=BOOL_IN10; **) (* assign - Stmt *) LD BOOL_IN10 ST BOOL_OUT10 JMP ODK_END_IF_00000000000000I (** **) (** end_if; **) (* if - End *) ODK_SKIP_00000000000000I_000000000000002: ODK_END_IF_00000000000000I: (** **) (** **) (** {**********一个INT型总变量对50个变量赋值,50个变量也可单独赋值*************} **) (** **) (** if INT_RemoteSet<>INT_RemoteSetP then **) (* if - Cond *) LD INT_RemoteSet NE INT_RemoteSetP JMPCN ODK_SKIP_00000000000000T_000000000000001 (* then - Stmts *) (** **) (** if Delay_Ton3.et>t#0.0s then INT_OUT01:=INT_RemoteSet; end_if; **) (* if - Cond *) LD Delay_Ton3.et GT t#0.0s JMPCN ODK_SKIP_00000000000000U_000000000000001 (* then - Stmts *) (* assign - Stmt *) LD INT_RemoteSet ST INT_OUT01 JMP ODK_END_IF_00000000000000U (* if - End *) ODK_SKIP_00000000000000U_000000000000001: ODK_END_IF_00000000000000U: (** if Delay_Ton3.et>t#0.5s then INT_OUT02:=INT_RemoteSet; end_if; **) (* if - Cond *) LD Delay_Ton3.et GT t#0.5s JMPCN ODK_SKIP_00000000000000V_000000000000001 (* then - Stmts *) (* assign - Stmt *) LD INT_RemoteSet ST INT_OUT02 JMP ODK_END_IF_00000000000000V (* if - End *) ODK_SKIP_00000000000000V_000000000000001: ODK_END_IF_00000000000000V: (** if Delay_Ton3.et>t#1.0s then INT_OUT03:=INT_RemoteSet; end_if; **) (* if - Cond *) LD Delay_Ton3.et GT t#1.0s JMPCN ODK_SKIP_00000000000000W_000000000000001 (* then - Stmts *) (* assign - Stmt *) LD INT_RemoteSet ST INT_OUT03 JMP ODK_END_IF_00000000000000W (* if - End *) ODK_SKIP_00000000000000W_000000000000001: ODK_END_IF_00000000000000W: (** if Delay_Ton3.et>t#1.5s then INT_OUT04:=INT_RemoteSet; end_if; **) (* if - Cond *) LD Delay_Ton3.et GT t#1.5s JMPCN ODK_SKIP_00000000000000X_000000000000001 (* then - Stmts *) (* assign - Stmt *) LD INT_RemoteSet ST INT_OUT04 JMP ODK_END_IF_00000000000000X (* if - End *) ODK_SKIP_00000000000000X_000000000000001: ODK_END_IF_00000000000000X: (** if Delay_Ton3.et>t#2.0s then INT_OUT05:=INT_RemoteSet; end_if; **) (* if - Cond *) LD Delay_Ton3.et GT t#2.0s JMPCN ODK_SKIP_00000000000000Y_000000000000001 (* then - Stmts *) (* assign - Stmt *) LD INT_RemoteSet ST INT_OUT05 JMP ODK_END_IF_00000000000000Y (* if - End *) ODK_SKIP_00000000000000Y_000000000000001: ODK_END_IF_00000000000000Y: (** if Delay_Ton3.et>t#2.5s then INT_OUT06:=INT_RemoteSet; end_if; **) (* if - Cond *) LD Delay_Ton3.et GT t#2.5s JMPCN ODK_SKIP_00000000000000Z_000000000000001 (* then - Stmts *) (* assign - Stmt *) LD INT_RemoteSet ST INT_OUT06 JMP ODK_END_IF_00000000000000Z (* if - End *) ODK_SKIP_00000000000000Z_000000000000001: ODK_END_IF_00000000000000Z: (** if Delay_Ton3.et>t#3.0s then INT_OUT07:=INT_RemoteSet; end_if; **) (* if - Cond *) LD Delay_Ton3.et GT t#3.0s JMPCN ODK_SKIP_000000000000010_000000000000001 (* then - Stmts *) (* assign - Stmt *) LD INT_RemoteSet ST INT_OUT07 JMP ODK_END_IF_000000000000010 (* if - End *) ODK_SKIP_000000000000010_000000000000001: ODK_END_IF_000000000000010: (** if Delay_Ton3.et>t#3.5s then INT_OUT08:=INT_RemoteSet; end_if; **) (* if - Cond *) LD Delay_Ton3.et GT t#3.5s JMPCN ODK_SKIP_000000000000011_000000000000001 (* then - Stmts *) (* assign - Stmt *) LD INT_RemoteSet ST INT_OUT08 JMP ODK_END_IF_000000000000011 (* if - End *) ODK_SKIP_000000000000011_000000000000001: ODK_END_IF_000000000000011: (** if Delay_Ton3.et>t#4.0s then INT_OUT09:=INT_RemoteSet; end_if; **) (* if - Cond *) LD Delay_Ton3.et GT t#4.0s JMPCN ODK_SKIP_000000000000012_000000000000001 (* then - Stmts *) (* assign - Stmt *) LD INT_RemoteSet ST INT_OUT09 JMP ODK_END_IF_000000000000012 (* if - End *) ODK_SKIP_000000000000012_000000000000001: ODK_END_IF_000000000000012: (** if Delay_Ton3.et>t#4.5s then INT_OUT10:=INT_RemoteSet; end_if; **) (* if - Cond *) LD Delay_Ton3.et GT t#4.5s JMPCN ODK_SKIP_000000000000013_000000000000001 (* then - Stmts *) (* assign - Stmt *) LD INT_RemoteSet ST INT_OUT10 JMP ODK_END_IF_000000000000013 (* if - End *) ODK_SKIP_000000000000013_000000000000001: ODK_END_IF_000000000000013: JMP ODK_END_IF_00000000000000T (** **) (** elsif INT_RemoteSet=INT_RemoteSetP then **) (* elseif - Cond *) ODK_SKIP_00000000000000T_000000000000001: LD INT_RemoteSet EQ INT_RemoteSetP JMPCN ODK_SKIP_00000000000000T_000000000000002 (* elsif - Stmts *) (** INT_OUT01:=INT_IN01; **) (* assign - Stmt *) LD INT_IN01 ST INT_OUT01 (** INT_OUT02:=INT_IN02; **) (* assign - Stmt *) LD INT_IN02 ST INT_OUT02 (** INT_OUT03:=INT_IN03; **) (* assign - Stmt *) LD INT_IN03 ST INT_OUT03 (** INT_OUT04:=INT_IN04; **) (* assign - Stmt *) LD INT_IN04 ST INT_OUT04 (** INT_OUT05:=INT_IN05; **) (* assign - Stmt *) LD INT_IN05 ST INT_OUT05 (** INT_OUT06:=INT_IN06; **) (* assign - Stmt *) LD INT_IN06 ST INT_OUT06 (** INT_OUT07:=INT_IN07; **) (* assign - Stmt *) LD INT_IN07 ST INT_OUT07 (** INT_OUT08:=INT_IN08; **) (* assign - Stmt *) LD INT_IN08 ST INT_OUT08 (** INT_OUT09:=INT_IN09; **) (* assign - Stmt *) LD INT_IN09 ST INT_OUT09 (** INT_OUT10:=INT_IN10; **) (* assign - Stmt *) LD INT_IN10 ST INT_OUT10 JMP ODK_END_IF_00000000000000T (** **) (** end_if; **) (* if - End *) ODK_SKIP_00000000000000T_000000000000002: ODK_END_IF_00000000000000T: (** **) (** case lock of **) (** {*0时,均不锁定,1锁定BOOL;2,锁定INT;3,锁定REAL;*} **) (** 0: **) (* case - Elm *) ODK_SKIP_000000000000014_000000000000000: (* case - Cond *) LD lock EQ 0 JMPC ODK_CASE_000000000000014_000000000000001 JMP ODK_SKIP_000000000000014_000000000000001 (* case - Stmts *) ODK_CASE_000000000000014_000000000000001: (** BOOL_RemoteSetP:=BOOL_RemoteSet; **) (* assign - Stmt *) LD BOOL_RemoteSet ST BOOL_RemoteSetP (** INT_RemoteSetP:=INT_RemoteSet; **) (* assign - Stmt *) LD INT_RemoteSet ST INT_RemoteSetP (** REAL_RemoteSetP:=REAL_RemoteSet; **) (* assign - Stmt *) LD REAL_RemoteSet ST REAL_RemoteSetP JMP ODK_END_CASE_000000000000014 (** 1: **) (* case - Elm *) ODK_SKIP_000000000000014_000000000000001: (* case - Cond *) LD lock EQ 1 JMPC ODK_CASE_000000000000014_000000000000002 JMP ODK_SKIP_000000000000014_000000000000002 (* case - Stmts *) ODK_CASE_000000000000014_000000000000002: (** INT_RemoteSetP:=INT_RemoteSet; **) (* assign - Stmt *) LD INT_RemoteSet ST INT_RemoteSetP (** REAL_RemoteSetP:=REAL_RemoteSet; **) (* assign - Stmt *) LD REAL_RemoteSet ST REAL_RemoteSetP JMP ODK_END_CASE_000000000000014 (** 2: **) (* case - Elm *) ODK_SKIP_000000000000014_000000000000002: (* case - Cond *) LD lock EQ 2 JMPC ODK_CASE_000000000000014_000000000000003 JMP ODK_SKIP_000000000000014_000000000000003 (* case - Stmts *) ODK_CASE_000000000000014_000000000000003: (** BOOL_RemoteSetP:=BOOL_RemoteSet; **) (* assign - Stmt *) LD BOOL_RemoteSet ST BOOL_RemoteSetP (** REAL_RemoteSetP:=REAL_RemoteSet; **) (* assign - Stmt *) LD REAL_RemoteSet ST REAL_RemoteSetP JMP ODK_END_CASE_000000000000014 (** 3: **) (* case - Elm *) ODK_SKIP_000000000000014_000000000000003: (* case - Cond *) LD lock EQ 3 JMPC ODK_CASE_000000000000014_000000000000004 JMP ODK_SKIP_000000000000014_000000000000004 (* case - Stmts *) ODK_CASE_000000000000014_000000000000004: (** BOOL_RemoteSetP:=BOOL_RemoteSet; **) (* assign - Stmt *) LD BOOL_RemoteSet ST BOOL_RemoteSetP (** INT_RemoteSetP:=INT_RemoteSet; **) (* assign - Stmt *) LD INT_RemoteSet ST INT_RemoteSetP JMP ODK_END_CASE_000000000000014 (** end_case; **) (* case - End *) ODK_SKIP_000000000000014_000000000000004: ODK_END_CASE_000000000000014: (** **) END_FUNCTION_BLOCK