77 lines
4.2 KiB
Markdown
77 lines
4.2 KiB
Markdown
```pascal
|
|
FUNCTION "RecipeCalculation" : Void
|
|
{ S7_Optimized_Access := 'FALSE' }
|
|
AUTHOR : 'Author'
|
|
NAME : 'Name'
|
|
VERSION : 1.0
|
|
VAR_TEMP
|
|
mAuxONS_Q : Bool;
|
|
mSyrPerc : Real;
|
|
END_VAR
|
|
|
|
|
|
BEGIN
|
|
|
|
|
|
"ONS_R"(Enable_ONS := "HMI_Variables_Cmd".Recipe.Page_Running,
|
|
Aux_ONS := "mRecipeCalculationONS",
|
|
ONS_R => #mAuxONS_Q );
|
|
|
|
//Syrup Brix
|
|
IF NOT "HMI_Variables_Cmd".Recipe.Get_current_Active_Recip AND "Blender_Variables_Pers".SyrupBrix_Aux<>"HMI_Recipe_Edit".Actual_Recipe_Parameters._SyrupBrix
|
|
AND "HMI_Variables_Cmd".Recipe.Page_Running AND NOT #mAuxONS_Q THEN
|
|
(* classic code: "HMI_Recipe_Edit".Actual_Recipe_Parameters._SyrupDensity := 100/(("HMI_Recipe_Edit".Actual_Recipe_Parameters._SyrupBrix/1.589+100)-"HMI_Recipe_Edit".Actual_Recipe_Parameters._SyrupBrix);*)
|
|
"HMI_Recipe_Edit".Actual_Recipe_Parameters._SyrupDensity := 100/(("HMI_Recipe_Edit".Actual_Recipe_Parameters._SyrupBrix/REAL#1.589+100)-"HMI_Recipe_Edit".Actual_Recipe_Parameters._SyrupBrix);
|
|
END_IF;
|
|
|
|
IF "HMI_Variables_Cmd".Recipe.Page_Running THEN
|
|
"Blender_Variables_Pers".SyrupBrix_Aux := "HMI_Recipe_Edit".Actual_Recipe_Parameters._SyrupBrix ;
|
|
END_IF ;
|
|
|
|
// Prod Brix Offset - Prod Brix - Ratio
|
|
IF "HMI_Recipe_Edit".Actual_Recipe_Parameters._Type = 2 THEN
|
|
IF "HMI_Recipe_Edit".Actual_Recipe_Parameters._SyrupBrix <> 0 AND "HMI_Recipe_Edit".Actual_Recipe_Parameters._SyrupFactor <> 0 THEN
|
|
#mSyrPerc := ("HMI_Recipe_Edit".Actual_Recipe_Parameters._ProductBrix+"HMI_Recipe_Edit".Actual_Recipe_Parameters._ProdBrixOffset)/
|
|
("HMI_Recipe_Edit".Actual_Recipe_Parameters._SyrupBrix*"HMI_Recipe_Edit".Actual_Recipe_Parameters._SyrupFactor) ;
|
|
"HMI_Recipe_Edit".Actual_Recipe_Parameters._Ratio := (1/#mSyrPerc-1)*"HMI_Recipe_Edit".Actual_Recipe_Parameters._SyrupDensity ;
|
|
END_IF;
|
|
END_IF;
|
|
IF "HMI_Recipe_Edit".Actual_Recipe_Parameters._Type = 3 THEN
|
|
"HMI_Recipe_Edit".Actual_Recipe_Parameters._ProductBrix := "HMI_Recipe_Edit".Actual_Recipe_Parameters._SyrupBrix*"HMI_Recipe_Edit".Actual_Recipe_Parameters._SyrupDensity/
|
|
("HMI_Recipe_Edit".Actual_Recipe_Parameters._Ratio+"HMI_Recipe_Edit".Actual_Recipe_Parameters._SyrupDensity)+"HMI_Recipe_Edit".Actual_Recipe_Parameters._ProdBrixOffset ;
|
|
END_IF;
|
|
|
|
IF ("HMI_Recipe_Edit".Actual_Recipe_Parameters._CO2Vols * "Blender_Variables".gFirstProdExtraCO2Fact * "HMI_Recipe_Edit".Actual_Recipe_Parameters._CO2Fact) > 0 THEN
|
|
"HMI_Variables_Status".Analog_Values.EqPressure := "Blender_Variables".gCO2EqPressure (*"CO2EqPress"(i_CO2Vol := "HMI_Recipe_Edit".Actual_Recipe_Parameters._CO2Vols * "Blender_Variables".gFirstProdExtraCO2Fact
|
|
* "HMI_Recipe_Edit".Actual_Recipe_Parameters._CO2Fact ,
|
|
i_Temp := "HMI_Recipe_Edit".Actual_Recipe_Parameters._SP_ProdTemp )*);
|
|
ELSE
|
|
(* classic code: "HMI_Variables_Status".Analog_Values.EqPressure := 0.0;*)
|
|
"HMI_Variables_Status".Analog_Values.EqPressure := REAL#0.0;
|
|
END_IF;
|
|
|
|
IF "HMI_Blender_Parameters".Processor_Options.Blender_OPT._CO2_GAS2_Injection THEN
|
|
IF "HMI_Recipe_Edit".Actual_Recipe_Parameters._GAS2_Injection THEN
|
|
(* classic code: "HMI_Recipe_Edit".Actual_Recipe_Parameters._CO2Vols := 0.0 ;*)
|
|
"HMI_Recipe_Edit".Actual_Recipe_Parameters._CO2Vols := REAL#0.0 ;
|
|
(* classic code: "HMI_Recipe_Edit".Actual_Recipe_Parameters._CO2Fact := 0.0 ;*)
|
|
"HMI_Recipe_Edit".Actual_Recipe_Parameters._CO2Fact := REAL#0.0 ;
|
|
ELSE
|
|
(* classic code: "HMI_Recipe_Edit".Actual_Recipe_Parameters._Gas2Vols := 0.0 ;*)
|
|
"HMI_Recipe_Edit".Actual_Recipe_Parameters._Gas2Vols := REAL#0.0 ;
|
|
(* classic code: "HMI_Recipe_Edit".Actual_Recipe_Parameters._Gas2Fact := 0.0 ;*)
|
|
"HMI_Recipe_Edit".Actual_Recipe_Parameters._Gas2Fact := REAL#0.0 ;
|
|
END_IF;
|
|
ELSE
|
|
(* classic code: "HMI_Recipe_Edit".Actual_Recipe_Parameters._Gas2Vols := 0.0 ;*)
|
|
"HMI_Recipe_Edit".Actual_Recipe_Parameters._Gas2Vols := REAL#0.0 ;
|
|
(* classic code: "HMI_Recipe_Edit".Actual_Recipe_Parameters._Gas2Fact := 0.0 ;*)
|
|
"HMI_Recipe_Edit".Actual_Recipe_Parameters._Gas2Fact := REAL#0.0 ;
|
|
END_IF ;
|
|
|
|
|
|
END_FUNCTION
|
|
|
|
|
|
```
|