Obsidean_VM/04-SIDEL/06 - E5.007363 - Modifica O.../Source/source/BlenderPIDCtrl_SaveValve.md

1.3 KiB

FUNCTION "BlenderPIDCtrl_SaveValve" : Void
{ S7_Optimized_Access := 'FALSE' }
AUTHOR : 'Author'
FAMILY : TASK1
NAME : 'Name'
VERSION : 1.0
   VAR_TEMP 
      ValBinTmr138 : Word;
      ValBcdTmr138 : S5Time;
      Timer138En : Bool;
   END_VAR

   VAR CONSTANT 
      "Time" : S5Time := S5T#40s;
   END_VAR


BEGIN
	    
	
	(* classic code: IF ABS("Blender_Variables".gActual_Prod_SP - "HMI_Blender_Parameters".Actual_Recipe_Parameters._ProductionRate) < "HMI_Blender_Parameters".Actual_Recipe_Parameters._ProductionRate * 0.1 THEN*)
	IF ABS("Blender_Variables".gActual_Prod_SP - "HMI_Blender_Parameters".Actual_Recipe_Parameters._ProductionRate) < "HMI_Blender_Parameters".Actual_Recipe_Parameters._ProductionRate * REAL#0.1 THEN
	        #Timer138En := TRUE;
	        #ValBcdTmr138:= S_ODT (T_NO := "mSpeedConstTmr",
	                              S    := #Timer138En,
	                              TV   := #Time,
	                              R    := "AUX FALSE",
	                              BI   => #ValBinTmr138,
	                              Q    => "mSpeedConstTmr.Q");
	      ELSE
	        #Timer138En := FALSE;
	END_IF;
	
	IF "mSpeedConstTmr.Q" THEN
	    "HMI_Variables_Cmd".Recipe_Updates.ValvesUpdate := TRUE ;
	    #Timer138En := FALSE ;  
	END_IF;
	
	
END_FUNCTION