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

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