```pascal // Block Type: FC // Block Number: 1931 // Original Network Languages: LAD FUNCTION "CIPMain_Flood" : Void { S7_Optimized_Access := 'TRUE' } VERSION : 0.1 VAR_TEMP mProdTankFloodReq : Bool; mSyrTankFloodReq : Bool; mDeairTankFloodReq : Bool; mSyrTankFlooded : Bool; END_VAR #_0MS : Bool; // Auto-generated temporary #_1M_15S : Bool; // Auto-generated temporary #_20S : Bool; // Auto-generated temporary BEGIN // Network 1: HMI Variables Cmd (Original Language: LAD) // Edge Logic handled by Coil 26 "M19062" := "HMI_Variables_Cmd"."Commands_From_HMI"."CMD_CIP_TM301FloodReq"; // P_TRIG("HMI_Variables_Cmd"."Commands_From_HMI"."CMD_CIP_TM301FloodReq") - Mem: "M19062" "mProdTankFloodReq" := "HMI_Variables_Cmd"."Commands_From_HMI"."CMD_CIP_TM301FloodReq" AND NOT "M19062"; "M19062" := "HMI_Variables_Cmd"."Commands_From_HMI"."CMD_CIP_TM301FloodReq"; // P_TRIG("HMI_Variables_Cmd"."Commands_From_HMI"."CMD_CIP_TM301FloodReq") - Mem: "M19062" // Network 2: CIP Product Tank Flood Running (Original Language: LAD) "HMI_Variables_Status"."Procedures"."CIP_ProdTankFloodRun" := ("gIN_CIP_TankFilling" AND "Interlocking_Variables"."FILLER_MIXER_RECEIVE"."CIP_System_Flooded" AND "gCIP_PrdTank_Flood" AND "gBlenderCIPMode") OR ("gIN_CIP_TankFilling" AND "Interlocking_Variables"."SIDEL_FILLER_REC_DATA"."CIP_Cycle_Ended" AND "gCIP_PrdTank_Flood" AND "gBlenderCIPMode"); // Network 3: CIP Flood (Original Language: LAD) "mPrdTank_Flood"(IN := "gCIP_PrdTank_MaxLevel" AND ("HMI_Variables_Status"."Procedures"."CIP_ProdTankFloodRun" OR ("gIN_CIP_TankFilling" AND "gCIP_PrdTank_Flood")), PT := S5T#0MS); // TODO: Declarar "mPrdTank_Flood" : TON; "gCIP_PrdTank_Flood" := "mPrdTank_Flood".Q; "HMI_Variables_Status"."Procedures"."CIP_ProdTankFloodDone" := "mPrdTank_Flood".Q; // Network 4: From CIP Room Flood Request (Original Language: LAD) // Edge Logic handled by Coil 26 "M19063" := "HMI_Variables_Cmd"."Commands_From_HMI"."CMD_CIP_TP301FloodReq"; // P_TRIG("HMI_Variables_Cmd"."Commands_From_HMI"."CMD_CIP_TP301FloodReq") - Mem: "M19063" "mSyrTankFloodReq" := "HMI_Variables_Cmd"."Commands_From_HMI"."CMD_CIP_TP301FloodReq" AND NOT "M19063"; "M19063" := "HMI_Variables_Cmd"."Commands_From_HMI"."CMD_CIP_TP301FloodReq"; // P_TRIG("HMI_Variables_Cmd"."Commands_From_HMI"."CMD_CIP_TP301FloodReq") - Mem: "M19063" // Network 5: CIP Syrup Tank Flood Running (Original Language: LAD) "HMI_Variables_Status"."Procedures"."CIP_SyrTankFloodRun" := ("mSyrTankFloodReq" AND "HMI_Variables_Status"."Procedures"."CIP_SyrTankFloodRun" AND "gCIP_SyrTank_Flood" AND "gBlenderCIPMode") OR ("gCIP_SyrTank_Flood" AND "gIN_CIP_TankFilling" AND "gCIP_PrdTank_Flood" AND "gBlenderCIPMode"); // Network 6: Procedure auxiliary variable (Original Language: LAD) IF "HMI_Variables_Status"."Procedures"."CIP_SyrTankFloodRun" AND "Procedure_Variables"."Blender_Run"."Latch" THEN "gSP_EV04" := TRUE; END_IF; IF "HMI_Variables_Status"."Procedures"."CIP_SyrTankFloodRun" AND "Procedure_Variables"."Blender_Run"."Latch" THEN "gSP_RVN301" := TRUE; END_IF; IF "HMI_Variables_Status"."Procedures"."CIP_SyrTankFloodRun" AND "Procedure_Variables"."Blender_Run"."Latch" AND "HMI_Blender_Parameters"."Processor_Options"."Blender_OPT"."_DoubleDeair" THEN "gSP_PPN305" := TRUE; END_IF; IF "HMI_Variables_Status"."Procedures"."CIP_SyrTankFloodRun" AND "Procedure_Variables"."Blender_Run"."Latch" AND "HMI_Blender_Parameters"."Processor_Options"."Blender_OPT"."_DoubleDeair" THEN "gSP_RVN301_1" := TRUE; END_IF; IF "HMI_Variables_Status"."Procedures"."CIP_SyrTankFloodRun" AND "Procedure_Variables"."Blender_Run"."Latch" THEN "gSP_PPN301" := TRUE; END_IF; IF "HMI_Variables_Status"."Procedures"."CIP_SyrTankFloodRun" AND "Procedure_Variables"."Blender_Run"."Latch" THEN "gSP_AVM317" := TRUE; END_IF; IF "HMI_Variables_Status"."Procedures"."CIP_SyrTankFloodRun" AND "Procedure_Variables"."Blender_Run"."Latch" THEN "gSP_AVM389" := TRUE; END_IF; IF "HMI_Variables_Status"."Procedures"."CIP_SyrTankFloodRun" AND "Procedure_Variables"."Blender_Run"."Latch" THEN "gSP_AVP361" := TRUE; END_IF; // Network 7: Tank Flooded (Original Language: LAD) "mSyrTankFlooded" := "HMI_Instrument"."LTP303"."PVFiltered" > 99.0; // Network 8: CIP Flood (Original Language: LAD) "mSyrTank_Flood"(IN := ("HMI_Variables_Status"."Procedures"."CIP_SyrTankFloodRun" AND "HMI_Digital"."LAL_S3"."Filtered") OR ("gCIP_SyrTank_Flood" AND "gIN_CIP_TankFilling"), PT := S5T#20S); // TODO: Declarar "mSyrTank_Flood" : TON; "gCIP_SyrTank_Flood" := "mSyrTankFlooded" OR "mSyrTank_Flood".Q; "HMI_Variables_Status"."Procedures"."CIP_SyrTankFloodDone" := "mSyrTankFlooded" OR "mSyrTank_Flood".Q; // Network 9: ProdTankFloodREQ FP (Original Language: LAD) // Edge Logic handled by Coil 26 "M19064" := "HMI_Variables_Cmd"."Commands_From_HMI"."CMD_CIP_TN301FloodReq"; // P_TRIG("HMI_Variables_Cmd"."Commands_From_HMI"."CMD_CIP_TN301FloodReq") - Mem: "M19064" "mDeairTankFloodReq" := "HMI_Variables_Cmd"."Commands_From_HMI"."CMD_CIP_TN301FloodReq" AND NOT "M19064"; "M19064" := "HMI_Variables_Cmd"."Commands_From_HMI"."CMD_CIP_TN301FloodReq"; // P_TRIG("HMI_Variables_Cmd"."Commands_From_HMI"."CMD_CIP_TN301FloodReq") - Mem: "M19064" // Network 10: CIP Deaerator Tank Flood Running (Original Language: LAD) "HMI_Variables_Status"."Procedures"."CIP_DeairTankFloodRun" := ("mDeairTankFloodReq" AND "HMI_Variables_Status"."Procedures"."CIP_DeairTankFloodRun" AND "gCIP_DeairTank_Flood" AND "gBlenderCIPMode") OR ("gCIP_SyrTank_Flood" AND "gIN_CIP_TankFilling" AND "gCIP_DeairTank_Flood" AND "gCIP_PrdTank_Flood" AND "gBlenderCIPMode") OR ("gIN_CIP_TankFilling" AND "gSyrupRoomEn" AND "gCIP_DeairTank_Flood" AND "gCIP_PrdTank_Flood" AND "gBlenderCIPMode"); // Network 11: CIP Flood (Original Language: LAD) "mDeairTank_Flood"(IN := ("gIN_CIP_TankFilling" AND "gCIP_DeairTank_Flood") OR ("HMI_Variables_Status"."Procedures"."CIP_DeairTankFloodRun" AND "HMI_Digital"."LSN301L"."Filtered"), PT := S5T#1M_15S); // TODO: Declarar "mDeairTank_Flood" : TON; // Network 12: CIP Flood (Original Language: LAD) "mDeairTank2_Flood"(IN := ("gIN_CIP_TankFilling" AND "gCIP_DeairTank_Flood") OR ("HMI_Variables_Status"."Procedures"."CIP_DeairTankFloodRun" AND "HMI_Digital"."LSN302L"."Filtered"), PT := S5T#1M_15S); // TODO: Declarar "mDeairTank2_Flood" : TON; // Network 13: CIP - Deaireator Tank Flood (Original Language: LAD) "gCIP_DeairTank_Flood" := ("HMI_Blender_Parameters"."Processor_Options"."Blender_OPT"."_DoubleDeair" AND "mDeairTank_Flood") OR ("mDeairTank_Flood" AND "mDeairTank2_Flood"); "HMI_Variables_Status"."Procedures"."CIP_DeairTankFloodDone" := ("HMI_Blender_Parameters"."Processor_Options"."Blender_OPT"."_DoubleDeair" AND "mDeairTank_Flood") OR ("mDeairTank_Flood" AND "mDeairTank2_Flood"); // Network 14: Procedure auxiliary variable (Original Language: LAD) IF "Procedure_Variables"."Blender_Run"."Latch" AND "HMI_Variables_Status"."Procedures"."CIP_DeairTankFloodRun" AND "mDeairTank_Flood" THEN "gSP_RVN302" := TRUE; END_IF; IF "Procedure_Variables"."Blender_Run"."Latch" AND "HMI_Blender_Parameters"."Processor_Options"."Blender_OPT"."_DoubleDeair" AND "HMI_Variables_Status"."Procedures"."CIP_DeairTankFloodRun" AND "mDeairTank_Flood" THEN "gSP_PPN305" := TRUE; END_IF; IF "Procedure_Variables"."Blender_Run"."Latch" AND "HMI_Blender_Parameters"."Processor_Options"."Blender_OPT"."_DoubleDeair" AND "HMI_Variables_Status"."Procedures"."CIP_DeairTankFloodRun" AND "mDeairTank_Flood" THEN "gSP_RVN301_1" := TRUE; END_IF; IF "Procedure_Variables"."Blender_Run"."Latch" AND "HMI_Blender_Parameters"."Processor_Options"."Blender_OPT"."_DoubleDeair" AND "HMI_Variables_Status"."Procedures"."CIP_DeairTankFloodRun" AND "mDeairTank_Flood" THEN "gSP_RVN302_1" := TRUE; END_IF; END_FUNCTION ```