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

91 lines
4.6 KiB
Markdown

```pascal
// Block Type: FB
// Block Number: 1807
// Original Network Languages: LAD
FUNCTION_BLOCK "ProcedureProdTankDrain"
{ S7_Optimized_Access := 'TRUE' }
VERSION : 0.1
VAR_STAT
mStepNum : Int;
mTimeStep : Int;
mTransition : Bool;
mAuxONS : Bool;
mAux1ONS : Bool;
mPrdTank_DrainTPON : Bool;
mPrdTank_DrainTP0ON : Bool;
mPrdTank_DrainTP1ON : Bool;
mPrdTank_DrainTP : "TP_TIME:v1.0";
mPrdTank_DrainTP0 : "TP_TIME:v1.0";
mPrdTank_DrainTP1 : "TP_TIME:v1.0";
END_VAR
VAR_TEMP
mAuxCalcInt : Int;
mAuxCalcDInt : DInt;
mAuxCalcReal : Real;
END_VAR
BEGIN
// Network 1: Qualifier (Original Language: LAD)
"Procedure_Variables"."TM301_Drain"."Qualifier" := "System_RunOut_Variables"."FastChangeOverActivated" OR ("gBlenderProdMode" AND "Procedure_Variables"."Blender_Run"."Running" AND "Procedure_Variables"."TM301_RunOut"."Latch" AND "gBlenderSuppliesOk") OR ("gBlenderProdMode" AND "Blender_Variables_Pers"."gFillerRinse_DoneLatch" AND "Procedure_Variables"."TM301_RunOut"."Latch" AND "gBlenderSuppliesOk");
// Network 2: Request (Original Language: LAD)
// Network 2 did not produce printable SCL code.
// Network 3: Reset (Original Language: LAD)
// PBox SymPy processed, logic in consumer
"ProdTankDrainReset" := ("Procedure_Variables"."Blender_Rinse"."Done" AND "System_RunOut_Variables"."FastChangeOverActivated") OR ("System_RunOut_Variables"."FastChangeOverActivated" AND "HMI_Variables_Cmd"."Commands_From_HMI"."CMD_TM301DrainReq"); // P_TRIG(("Procedure_Variables"."Blender_Rinse"."Done" AND "System_RunOut_Variables"."FastChangeOverActivated") OR ("System_RunOut_Variables"."FastChangeOverActivated" AND "HMI_Variables_Cmd"."Commands_From_HMI"."CMD_TM301DrainReq")) - Mem: "ProdTankDrainReset"
"Procedure_Variables"."TM301_Drain"."Reset" := ("Procedure_Variables"."TM301_Drain"."Done" AND "Procedure_Variables"."Blender_Rinse"."Done" AND "System_RunOut_Variables"."FastChangeOverActivated" AND NOT "ProdTankDrainReset") OR ("Procedure_Variables"."TM301_Drain"."Done" AND "System_RunOut_Variables"."FastChangeOverActivated" AND "HMI_Variables_Cmd"."Commands_From_HMI"."CMD_TM301DrainReq" AND NOT "ProdTankDrainReset") OR ("Procedure_Variables"."Blender_Rinse"."Done" AND "System_RunOut_Variables"."FastChangeOverActivated" AND "Procedure_Variables"."TM301_Drain"."Latch" AND NOT "ProdTankDrainReset") OR ("System_RunOut_Variables"."FastChangeOverActivated" AND "HMI_Variables_Cmd"."Commands_From_HMI"."CMD_TM301DrainReq" AND "Procedure_Variables"."TM301_Drain"."Latch" AND NOT "ProdTankDrainReset");
// Network 4: Reset (Original Language: LAD)
IF "Procedure_Variables"."TM301_Drain"."Reset" THEN
"mStepNum" := 0;
END_IF;
IF "Procedure_Variables"."TM301_Drain"."Reset" THEN
"Procedure_Variables"."TM301_Drain"."Done" := FALSE;
END_IF;
// Network 5: TM301 Drain Reset (Original Language: LAD)
// PBox SymPy processed, logic in consumer
"M19076" := "Procedure_Variables"."TM301_Drain"."Request" AND "System_RunOut_Variables"."FastChangeOverActivated"; // P_TRIG("Procedure_Variables"."TM301_Drain"."Request" AND "System_RunOut_Variables"."FastChangeOverActivated") - Mem: "M19076"
// Network 6: Wait (Original Language: LAD)
"Procedure_Variables"."TM301_Drain"."Wait" := "gDrainPressNotOK" AND "Disable_Bit";
// Network 7: State Num (Original Language: LAD)
"Procedure_Variables"."TM301_Drain"."Latch" := ("Procedure_Variables"."TM301_Drain"."Done" AND "Procedure_Variables"."TM301_Drain"."Reset" AND "Procedure_Variables"."TM301_Drain"."Request" AND "FirstScan") OR ("Procedure_Variables"."TM301_Drain"."Done" AND "Procedure_Variables"."TM301_Drain"."Reset" AND "FirstScan" AND "Procedure_Variables"."TM301_Drain"."Latch");
IF ("Procedure_Variables"."TM301_Drain"."Done" AND "Procedure_Variables"."TM301_Drain"."Reset" AND "Procedure_Variables"."TM301_Drain"."Request" AND "FirstScan") OR ("Procedure_Variables"."TM301_Drain"."Done" AND "Procedure_Variables"."TM301_Drain"."Reset" AND "FirstScan" AND "Procedure_Variables"."TM301_Drain"."Latch") THEN
"HMI_Variables_Status"."Procedures"."BlenderStateNum" := 10;
END_IF;
// Network 8: Running (Original Language: LAD)
"Procedure_Variables"."TM301_Drain"."Running" := "Procedure_Variables"."TM301_Drain"."Wait" AND "Procedure_Variables"."TM301_Drain"."Latch";
"HMI_Alarms"."gH_Status" := "Procedure_Variables"."TM301_Drain"."Latch";
"HMI_Variables_Status"."Procedures"."TM301DrainRun" := "Procedure_Variables"."TM301_Drain"."Latch";
// Network 9: Sequence (Original Language: LAD)
IF "Procedure_Variables"."TM301_Drain"."Running" THEN
Prod_Tank_Drain_Seq(mStep := "mStepNum", mTime := "mTimeStep", mTransition := "mTransition");
END_IF;
END_FUNCTION_BLOCK
```