FUNCTION_BLOCK MBDI VAR_EXTERNAL END_VAR VAR_INPUT mbdi1 :bool; mbdi2 :bool; mbdi3 :bool; mbdi4 :bool; mbdi5 :bool; mbdi6 :bool; mbdi7 :bool; mbdi8 :bool; light1_in :bool; light2_in :bool; light3_in :bool; light4_in :bool; light5_in :bool; light6_in :bool; light7_in :bool; light8_in :bool; light9_in :bool; light10_in :bool; light11_in :bool; light12_in :bool; light_timer :time:=t#5S; END_VAR VAR_OUTPUT light1_out :bool; light2_out :bool; light3_out :bool; light4_out :bool; light5_out :bool; light6_out :bool; light7_out :bool; light8_out :bool; light9_out :bool; light10_out :bool; light11_out :bool; light12_out :bool; END_VAR VAR light :bool; lightm :bool; light_mb :bool; light_tof :tof; light1 :bool; light2 :bool; light3 :bool; light4 :bool; light5 :bool; light6 :bool; light7 :bool; light8 :bool; light9 :bool; light10 :bool; light11 :bool; light12 :bool; END_VAR (*Automatically declared*) VAR_EXTERNAL END_VAR (** **) (** light1:=light1_in; **) (* assign - Stmt *) LD light1_in ST light1 (** light2:=light2_in; **) (* assign - Stmt *) LD light2_in ST light2 (** light3:=light3_in; **) (* assign - Stmt *) LD light3_in ST light3 (** light4:=light4_in; **) (* assign - Stmt *) LD light4_in ST light4 (** light5:=light5_in; **) (* assign - Stmt *) LD light5_in ST light5 (** light6:=light6_in; **) (* assign - Stmt *) LD light6_in ST light6 (** light7:=light7_in; **) (* assign - Stmt *) LD light7_in ST light7 (** light8:=light8_in; **) (* assign - Stmt *) LD light8_in ST light8 (** light9:=light9_in; **) (* assign - Stmt *) LD light9_in ST light9 (** light10:=light10_in; **) (* assign - Stmt *) LD light10_in ST light10 (** light11:=light11_in; **) (* assign - Stmt *) LD light11_in ST light11 (** light12:=light12_in; **) (* assign - Stmt *) LD light12_in ST light12 (** **) (** if mbdi1=1 or mbdi2=1 or mbdi3=1 or mbdi4=1 or mbdi5=1 or mbdi6=1 or mbdi7=1 or mbdi8=1 then **) (* if - Cond *) LD mbdi1 EQ 1 OR ( mbdi2 EQ 1 ) OR ( mbdi3 EQ 1 ) OR ( mbdi4 EQ 1 ) OR ( mbdi5 EQ 1 ) OR ( mbdi6 EQ 1 ) OR ( mbdi7 EQ 1 ) OR ( mbdi8 EQ 1 ) JMPCN ODK_SKIP_000000000000001_000000000000001 (* then - Stmts *) (** light_mb:=1; **) (* assign - Stmt *) LD 1 ST light_mb (** light:=1; **) (* assign - Stmt *) LD 1 ST light JMP ODK_END_IF_000000000000001 (** else light_mb:=0; **) (* else *) ODK_SKIP_000000000000001_000000000000001: (* else - Stmts *) (* assign - Stmt *) LD 0 ST light_mb (** end_if; **) (* if - End *) ODK_END_IF_000000000000001: (** **) (** light_tof( IN :=light_mb ,PT := light_timer | light:= Q ); **) (* call - Stmt *) CAL light_tof ( IN := light_mb, PT := light_timer | light := Q ) (** if light<>lightm then **) (* if - Cond *) LD light NE lightm JMPCN ODK_SKIP_000000000000002_000000000000001 (* then - Stmts *) (** light1:=light; **) (* assign - Stmt *) LD light ST light1 (** light2:=light; **) (* assign - Stmt *) LD light ST light2 (** light3:=light; **) (* assign - Stmt *) LD light ST light3 (** light4:=light; **) (* assign - Stmt *) LD light ST light4 (** light5:=light; **) (* assign - Stmt *) LD light ST light5 (** light6:=light; **) (* assign - Stmt *) LD light ST light6 (** light7:=light; **) (* assign - Stmt *) LD light ST light7 (** light8:=light; **) (* assign - Stmt *) LD light ST light8 (** light9:=light; **) (* assign - Stmt *) LD light ST light9 (** light10:=light; **) (* assign - Stmt *) LD light ST light10 (** light11:=light; **) (* assign - Stmt *) LD light ST light11 (** light12:=light; **) (* assign - Stmt *) LD light ST light12 (** lightm:=light; **) (* assign - Stmt *) LD light ST lightm JMP ODK_END_IF_000000000000002 (** end_if; **) (* if - End *) ODK_SKIP_000000000000002_000000000000001: ODK_END_IF_000000000000002: (** **) (** light1_out:=light1; **) (* assign - Stmt *) LD light1 ST light1_out (** light2_out:=light2; **) (* assign - Stmt *) LD light2 ST light2_out (** light3_out:=light3; **) (* assign - Stmt *) LD light3 ST light3_out (** light4_out:=light4; **) (* assign - Stmt *) LD light4 ST light4_out (** light5_out:=light5; **) (* assign - Stmt *) LD light5 ST light5_out (** light6_out:=light6; **) (* assign - Stmt *) LD light6 ST light6_out (** light7_out:=light7; **) (* assign - Stmt *) LD light7 ST light7_out (** light8_out:=light8; **) (* assign - Stmt *) LD light8 ST light8_out (** light9_out:=light9; **) (* assign - Stmt *) LD light9 ST light9_out (** light10_out:=light10; **) (* assign - Stmt *) LD light10 ST light10_out (** light11_out:=light11; **) (* assign - Stmt *) LD light11 ST light11_out (** light12_out:=light12; **) (* assign - Stmt *) LD light12 ST light12_out (** **) END_FUNCTION_BLOCK