3.2 KiB
3.2 KiB
// Block Type: FB
// Block Number: 1824
// Original Network Languages: LAD
FUNCTION_BLOCK "ProductPipeDrain"
{ S7_Optimized_Access := 'TRUE' }
VERSION : 0.1
VAR_STAT
mStepNum : Int;
mTimeStep : Int;
mTransition : Bool;
mAuxONS : Bool;
mProdPipeDrainCMDTPON : Bool;
mProdPipeDrainTPON : Bool;
mProdPipeDrainCMDTP : "TP_TIME:v1.0";
mProdPipeDrainTP : "TP_TIME:v1.0";
END_VAR
BEGIN
// Network 1: Qualifier (Original Language: LAD)
"System_RunOut_Variables"."ProdPipe_Drain"."Qualifier" := ("System_RunOut_Variables"."ProdPipe_Drain"."Latch" AND "AUX FALSE") OR ("gBlenderProdMode" AND "gBlenderSuppliesOk" AND "System_RunOut_Variables"."FastChangeOverActivated" AND "System_RunOut_Variables"."ProdPipe_RunOut"."Done" AND "AUX FALSE");
// Network 2: ProductPipeDrain (Original Language: LAD)
// Network 2 did not produce printable SCL code.
// Network 3: Reset (Original Language: LAD)
// PBox SymPy processed, logic in consumer
"ProdPipeDrainReset" := "System_RunOut_Variables"."ProdPipe_RunOut"."Done" OR "HMI_Variables_Cmd"."System_Run_Out"."CMD"."_ProdPipeDrainReq"; // P_TRIG("System_RunOut_Variables"."ProdPipe_RunOut"."Done" OR "HMI_Variables_Cmd"."System_Run_Out"."CMD"."_ProdPipeDrainReq") - Mem: "ProdPipeDrainReset"
"System_RunOut_Variables"."ProdPipe_Drain"."Reset" := ("System_RunOut_Variables"."ProdPipe_Drain"."Qualifier" AND "System_RunOut_Variables"."FastChangeOverActivated") OR ("System_RunOut_Variables"."ProdPipe_RunOut"."Done" AND NOT "ProdPipeDrainReset") OR ("HMI_Variables_Cmd"."System_Run_Out"."CMD"."_ProdPipeDrainReq" AND NOT "ProdPipeDrainReset");
// Network 4: Wait (Original Language: LAD)
"System_RunOut_Variables"."ProdPipe_Drain"."Wait" := "AUX FALSE";
// Network 5: Reset (Original Language: LAD)
IF "System_RunOut_Variables"."ProdPipe_Drain"."Reset" THEN
"mStepNum" := 0;
"mTimeStep" := 0;
END_IF;
IF "System_RunOut_Variables"."ProdPipe_Drain"."Reset" THEN
"System_RunOut_Variables"."ProdPipe_Drain"."Done" := FALSE;
END_IF;
// Network 6: Latch (Original Language: LAD)
"System_RunOut_Variables"."ProdPipe_Drain"."Latch" := ("System_RunOut_Variables"."ProdPipe_Drain"."Reset" AND "System_RunOut_Variables"."ProdPipe_Drain"."Request" AND "System_RunOut_Variables"."ProdPipe_Drain"."Done") OR ("System_RunOut_Variables"."ProdPipe_Drain"."Reset" AND "System_RunOut_Variables"."ProdPipe_Drain"."Latch" AND "System_RunOut_Variables"."ProdPipe_Drain"."Done");
// Network 7: Running (Original Language: LAD)
"System_RunOut_Variables"."ProdPipe_Drain"."Running" := "System_RunOut_Variables"."ProdPipe_Drain"."Wait" AND "System_RunOut_Variables"."ProdPipe_Drain"."Latch";
"HMI_Alarms"."gH_Status" := "System_RunOut_Variables"."ProdPipe_Drain"."Wait" AND "System_RunOut_Variables"."ProdPipe_Drain"."Latch";
IF "System_RunOut_Variables"."ProdPipe_Drain"."Wait" AND "System_RunOut_Variables"."ProdPipe_Drain"."Latch" THEN
ProductPipeDrain_Seq(mStep := "mStepNum", mTime := "mTimeStep", mTransition := "mTransition");
END_IF;
// Network 8: ToFillerStartPipeRunOut (Original Language: LAD)
"HMI_Variables_Status"."System_Run_Out"."ProductPipeDrainDone" := "System_RunOut_Variables"."ProdPipe_Drain"."Done";
END_FUNCTION_BLOCK