Obsidean_VM/04-SIDEL/00 - MASTER/Source/source/CIPMain_Flood.md

147 lines
7.8 KiB
Markdown

```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
```