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

7.4 KiB

// Block Type: FC
// Block Number: 600
// Original Network Languages: LAD, STL

FUNCTION "CIPReportManager" : Void
{ S7_Optimized_Access := 'TRUE' }
VERSION : 0.1

VAR_TEMP
  DUTY_TIME : Real;
  FAULT : Int;
  DBDim : Word;
  Loop_Count : Int;
END_VAR

  #_1 : Bool; // Auto-generated temporary
BEGIN

  // Network 1: EMPTY SEG. (Original Language: STL)

  // --- BEGIN STL Network 1 ---
   
     	NOP_0
     	A	"HMI_Local_CIP_Variables".Cip_Commands._ProgInizialize
     	R	"CIPRepStarted"
     	R	"CIPReportDB".General.AuxReportCipStart
   
  // --- END STL Network 1 ---

  // Network 2: REPORT END (Original Language: STL)

  // --- BEGIN STL Network 2 ---
   
     	A	"CIPReportDB".General.AuxReportCipEnd
     	A	"CIPRepStarted"
     	Rise	"FN_CIPRepEndSupport"
     	JCN	M250
     	AN	"CIP_Program_Variables".CIP_Run.Reset
     	JC	M200
     	L	2
     	JU	M201
     M200:   		L	0
     	L	"CIPRepComment"
     	NE_I
     	JC	M201
     	L	1
     M201:   		T	"CIPReportDB".General.Comment
     
     	SET
     	R	"CIPReportDB".General.ReportCipStart
     	S	"CIPReportDB".General.ReportCipEnd
     	R	"CIPReportDB".General.AuxReportCipStart
     	L	0
     	T	"MB600"
     	T	"CIPRepComment"
     	BEU
     M250:   		NOP_0
   
  // --- END STL Network 2 ---

  // Network 3: REPORT INITIALIZATION (Original Language: STL)

  // --- BEGIN STL Network 3 ---
   
     	A	"HMI_Blender_Parameters".Processor_Options.Blender_OPT._LocalCIP
     	A	"CIPReportDB".General.AuxReportCipStart
     	Rise	"FP_CIPRepStartSupport"
     	JCN	M350
     
     	AUF DI	"CIPReportDB"
     	L_DILG
     	T	"DBDim"
     	LAR1	P#0.0
     	L	"DBDim"
     	L	2
     	DIV_I
     M300:   		T	"Loop_Count"
     	L	0
     	T	DIW[AR1,P#0.0]
     	ADDAR1	P#2.0
     	L	"Loop_Count"
     	LOOP	M300
     
     	SET
     	S	"CIPReportDB".General.ReportCipStart
     	R	"CIPReportDB".General.ReportCipEnd
     	R	"CIPReportDB".General.AuxReportCipEnd
     	S	"CIPRepStarted"
     	L	"HMI_Variables_Cmd".RecipeCIP.Active_Recipe_Running
     	T	"CIPReportDB".General.Active_Recipe_Running
     	L	0
     	T	"CIPRepComment"
     M350:   		NOP_0
   
  // --- END STL Network 3 ---

  // Network 4: REPORT START (Original Language: STL)

  // --- BEGIN STL Network 4 ---
   
     	A	"HMI_Blender_Parameters".Processor_Options.Blender_OPT._LocalCIP
     	AN	"CIPRepStarted"
     	BEC
     	AUF DI	"CIPReportDB"
   
  // --- END STL Network 4 ---

  // Network 5: REPORT ACTUAL RECIPE UPDATE (Original Language: STL)

  // --- BEGIN STL Network 5 ---
   
     	CALL	_Call_?
   
  // --- END STL Network 5 ---

  // Network 6: REPORT COMMENT (Original Language: STL)

  // --- BEGIN STL Network 6 ---
   
     	A	"HMI_Local_CIP_Variables".Cip_Commands._ProgStepUp
     	JNB	_001
     	L	0.0
     	T	"CIPReportDB".AnalogAVSupport.Temperature
     	T	"CIPReportDB".AnalogAVSupport.Conducibility
     	T	"CIPReportDB".AnalogAVSupport.SpareAV
     	T	"CIPReportDB".AnalogAVSupport.DutyTime
     _001:   		NOP_0
   
  // --- END STL Network 6 ---

  // Network 7: REPORT CIP TOTAL TIME (Original Language: LAD)

  IF "CLK_1.0S" THEN
    "CIPReportDB"."General"."TotalTime" := DINT#1 + "CIPReportDB"."General"."TotalTime";
  END_IF;

  // Network 8: REPORT CIP CLEANING TIME (Original Language: LAD)

  IF "CLK_1.0S" AND "CIP_Program_Variables"."CIP_Run"."Latch" AND "CIP_Program_Variables"."CIP_Run"."Wait" THEN
    "CIPReportDB"."General"."CleaningTime" := DINT#1 + "CIPReportDB"."General"."CleaningTime";
  END_IF;

  // Network 9: REPORT CIP WAITING TIME (Original Language: LAD)

  IF "CLK_1.0S" AND "CIP_Program_Variables"."CIP_Run"."Latch" AND "CIP_Program_Variables"."CIP_Run"."Wait" THEN
    "CIPReportDB"."General"."WaitingTime" := DINT#1 + "CIPReportDB"."General"."WaitingTime";
  END_IF;

  // Network 10: REPORT CIP FAULT TIME (Original Language: STL)

  // --- BEGIN STL Network 10 ---
   
     	A	"CIP_Program_Variables".CIP_Run.Latch
     	R	"CIPRepFaultPresent"
     
     	A	"gBlenderCIPMode"
     	A	"gBlenderAlarm"
     	S	"CIPRepFaultPresent"
     
     	A	"CIPRepStarted"
     	AN	"CIP_Program_Variables".CIP_Run.Latch
     	S	"CIPRepFaultPresent"
     
     	AN	CLK_1.0S
     	ON	"CIPRepFaultPresent"
     	JC	M500
     	L	"CIPReportDB".General.CipFaultTime
     	L	DINT#1
     	ADD_D
     	T	"CIPReportDB".General.CipFaultTime
     	L	3
     	T	"CIPRepComment"
     M500:   		NOP_0
   
  // --- END STL Network 10 ---

  // Network 11: CIP SEQUENCE MANAGER (Original Language: STL)

  // --- BEGIN STL Network 11 ---
   
     	L	"HMI_Local_CIP_Variables".CIP_AnalogValues._StepNum
     	L	0
     	EQ_I
     	JC	M919
     	AN	CLK_1.0S
     	A	"gBlenderCIPMode"
     	JC	M919
     	L	"CIPReportDB".General.StepNum
     	L	0
     	EQ_I
     	JCN	M400
     	L	"HMI_Local_CIP_Variables".CIP_AnalogValues._StepNum
     	T	"CIPReportDB".General.StepNum
     M400:   		L	"HMI_Local_CIP_Variables".CIP_AnalogValues._StepNum
     	L	1
     	SUB_I
     	L	P#36.0
     	MUL_D
     	LAR1_ACCU1
     
     	L	DID[AR1,P#100.0]
     	L	DINT#1
     	ADD_D
     	T	DID[AR1,P#100.0]
     
     	L	DID[AR1,P#104.0]
     	L	DINT#1
     	ADD_D
     	T	DID[AR1,P#104.0]
     	AN	"CIPRepFaultPresent"
     	JC	M914
     	L	DID[AR1,P#108.0]
     	L	DINT#1
     	ADD_D
     	T	DID[AR1,P#108.0]
     M914:   		NOP_0
     
     	L	"HMI_Local_CIP_Variables".CIP_AnalogValues._StepNum
     	L	"CIPReportDB".General.StepNum
     	EQ_I
     	A	"CIP_Program_Variables".CIP_Run.Latch
     	JC	M915
     	L	0.0
     	T	"CIPReportDB".AnalogAVSupport.Temperature
     	T	"CIPReportDB".AnalogAVSupport.Conducibility
     	L	"HMI_Local_CIP_Variables".CIP_AnalogValues._StepNum
     	T	"CIPReportDB".General.StepNum
     M915:   		NOP_0
     
     	A	"gBlenderCIPMode"
     	A	"CIP_Program_Variables".CIP_Run.Latch
     	JCN	M916
     
     	L	"HMI_Local_CIP_Variables".Cip_Recipe.ActualSimpleProgram.CIP_SetPoint_Temp
     	L	10.0
     	MUL_R
     	TRUNC
     	T	DIW[AR1,P#126.0]
     
     	L	"HMI_Local_CIP_Variables".Cip_Recipe.ActualSimpleProgram.CIP_SetPoint_Cond
     	L	0.01
     	MUL_R
     	TRUNC
     	T	DIW[AR1,P#130.0]
     
     	A	"CIP_Program_Variables".CIP_Run.Wait
     	JCN	M917
     	L	DID[AR1,P#116.0]
     	L	DINT#1
     	ADD_D
     	T	DID[AR1,P#116.0]
     	JU	M916
     M917:   		NOP_0
     
     	L	"CIPReportDB".AnalogAVSupport.DutyTime
     	L	1.0
     	ADD_R
     	T	"CIPReportDB".AnalogAVSupport.DutyTime
     	T	"DUTY_TIME"
     
     	L	"CIPReportDB".AnalogAVSupport.Temperature
     	L	"HMI_Instrument".TTS305_1.PVFiltered
     	ADD_R
     	T	"CIPReportDB".AnalogAVSupport.Temperature
     	L	"DUTY_TIME"
     	DIV_R
     	L	10.0
     	MUL_R
     	TRUNC
     	T	DIW[AR1,P#124.0]
     
     	L	"HMI_Local_CIP_Variables".Cip_Recipe.ActualSimpleProgram.CIP_SimpleCode
     	L	1
     	EQ_I
     	O_BRACK
     	L	"HMI_Local_CIP_Variables".Cip_Recipe.ActualSimpleProgram.CIP_SimpleCode
     	L	5
     	EQ_I
     	BRACKET
     	JCN	M920
     	L	"HMI_Instrument".CTS301.PVFiltered
     	JU	M921
     M920:   		L	"HMI_Instrument".CTS302.PVFiltered
     M921:   		L	0.001
     	MUL_R
     	L	"CIPReportDB".AnalogAVSupport.Conducibility
     	ADD_R
     	T	"CIPReportDB".AnalogAVSupport.Conducibility
     	L	"DUTY_TIME"
     	DIV_R
     	L	10.0
     	MUL_R
     	TRUNC
     	T	DIW[AR1,P#128.0]
     
     M916:   		NOP_0
     
     M919:   		NOP_0
   
  // --- END STL Network 11 ---

  // Network 12:  (Original Language: STL)

  // --- BEGIN STL Network 12 ---
   
     	L	"CIPRepComment"
     	T	"CIPReportDB".General.Comment
   
  // --- END STL Network 12 ---

END_FUNCTION