58 lines
2.5 KiB
Markdown
58 lines
2.5 KiB
Markdown
```pascal
|
|
// Block Type: FB
|
|
// Block Number: 1806
|
|
// Original Network Languages: LAD
|
|
|
|
FUNCTION_BLOCK "ProcedureProdBrixRecovery"
|
|
{ S7_Optimized_Access := 'TRUE' }
|
|
VERSION : 0.1
|
|
|
|
VAR_STAT
|
|
TooMuchProdInTank : Bool;
|
|
mAuxONS : Bool;
|
|
END_VAR
|
|
|
|
BEGIN
|
|
|
|
// Network 1: Qualifier (Original Language: LAD)
|
|
|
|
"Procedure_Variables"."ProdBrix_Recovery"."Qualifier" := "gBlenderProdMode" AND "Procedure_Variables"."First_Production"."Done" AND "gProductMeterOK" AND "Blender_Variables_Pers"."gSugarBeverage" AND "Blender_Variables_Pers"."gWaterRecipe";
|
|
|
|
// Network 2: Request (Original Language: LAD)
|
|
|
|
// Edge Logic handled by Coil 26
|
|
"ProdBrixRecoveryReq" := "HMI_Variables_Cmd"."Commands_From_HMI"."CMD_ProdBrixRecoveryReq"; // P_TRIG("HMI_Variables_Cmd"."Commands_From_HMI"."CMD_ProdBrixRecoveryReq") - Mem: "ProdBrixRecoveryReq"
|
|
|
|
"Procedure_Variables"."ProdBrix_Recovery"."Request" := "HMI_Variables_Cmd"."Commands_From_HMI"."CMD_ProdBrixRecoveryReq" AND NOT "ProdBrixRecoveryReq";
|
|
"ProdBrixRecoveryReq" := "HMI_Variables_Cmd"."Commands_From_HMI"."CMD_ProdBrixRecoveryReq"; // P_TRIG("HMI_Variables_Cmd"."Commands_From_HMI"."CMD_ProdBrixRecoveryReq") - Mem: "ProdBrixRecoveryReq"
|
|
|
|
// Network 3: Reset (Original Language: LAD)
|
|
|
|
"Procedure_Variables"."ProdBrix_Recovery"."Reset" := "Procedure_Variables"."ProdBrix_Recovery"."Qualifier";
|
|
|
|
// Network 4: Wait (Original Language: LAD)
|
|
|
|
"Procedure_Variables"."ProdBrix_Recovery"."Wait" := "TooMuchProdInTank";
|
|
|
|
// Network 5: Tank Product Amount (Original Language: LAD)
|
|
|
|
ProductLiterInTank(i_TankLevel := "HMI_Instrument"."LTM302"."PVFiltered");
|
|
|
|
// Network 6: Too Much Product in Tank (Original Language: LAD)
|
|
|
|
ProdBrixRecovery_BrixCal();
|
|
|
|
// Network 7: Recovery Latch (Original Language: LAD)
|
|
|
|
"Procedure_Variables"."ProdBrix_Recovery"."Latch" := ("FirstScan" AND "Procedure_Variables"."ProdBrix_Recovery"."Reset" AND "Procedure_Variables"."ProdBrix_Recovery"."Done" AND "Procedure_Variables"."ProdBrix_Recovery"."Request") OR ("FirstScan" AND "Procedure_Variables"."ProdBrix_Recovery"."Reset" AND "Procedure_Variables"."ProdBrix_Recovery"."Done" AND "Procedure_Variables"."ProdBrix_Recovery"."Latch");
|
|
|
|
// Network 8: Recovery Running (Original Language: LAD)
|
|
|
|
"Procedure_Variables"."ProdBrix_Recovery"."Running" := "Procedure_Variables"."ProdBrix_Recovery"."Wait" AND "Procedure_Variables"."ProdBrix_Recovery"."Latch";
|
|
|
|
"HMI_Variables_Status"."Procedures"."ProdBrixRecoveryRun" := "Procedure_Variables"."ProdBrix_Recovery"."Latch";
|
|
|
|
END_FUNCTION_BLOCK
|
|
|
|
```
|