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

5.7 KiB

FUNCTION "CIPLocal_ExecStep" : Void
{ S7_Optimized_Access := 'FALSE' }
VERSION : 0.0
   VAR_TEMP 
      i : Int;
   END_VAR


BEGIN
	
	
	"HMI_Alarms".gH_Status["CIP_Program_Variables".mCIP_ActualStep.CIP_StatusMsgCode]:= FALSE ;
	IF "CLK_1.0S" THEN    (* One Second Clock *)
	    IF "CIP_Program_Variables".General_Data.mStepTimeValue > "CIP_Program_Variables".General_Data.StepActualTime THEN
	        #i:= "CIP_Program_Variables".General_Data.ActualSimpleNum;
	        "HMI_Local_CIP_Variables".Cip_Recipe.ActualSimpleProgram := "HMI_Local_CIP_Variables".Cip_Recipe.ActualLinkProgram.CIP_Simple_Prog[#i] ;
	        "CIP_SimpleProgr_Init"(i_SimpleProgr:= "HMI_Local_CIP_Variables".Cip_Recipe.ActualSimpleProgram , i_StepNumber:= "CIP_Program_Variables".General_Data.ActualStepNum, o_Step=> "CIP_Program_Variables".mCIP_ActualStep);
	        "CIP_Program_Variables".Status.WaitEventRequest := "CIP_Program_Variables".mCIP_ActualStep.CIP_Control ;
	
	        IF (%DB963.%DBW6 <> 0) AND ((%DB963.%DBW4 XOR %DB963.%DBW6) <> 0) THEN
	            "CIP_Program_Variables".Status.WaitAnyCond := TRUE ;
	        ELSE
	            "CIP_Program_Variables".Status.WaitAnyCond := FALSE ;
	        END_IF ;
	
	        "CIP_Program_Variables".General_Data.SPConductivity := "HMI_Local_CIP_Variables".Cip_Recipe.ActualSimpleProgram.CIP_SetPoint_Cond ;
	        "CIP_Program_Variables".General_Data.SPTemperature := "HMI_Local_CIP_Variables".Cip_Recipe.ActualSimpleProgram.CIP_SetPoint_Temp ;
	
	        IF NOT "CIP_Program_Variables".Status.Completed THEN
	            "CIP_Program_Variables".General_Data.TotalElapsedTime := "CIP_Program_Variables".General_Data.TotalElapsedTime + 1 ;
	            IF NOT "CIP_Program_Variables".CIP_Run.Wait THEN
	                "CIP_Program_Variables".General_Data.StepActualTime := "CIP_Program_Variables".General_Data.StepActualTime + 1 ;
	                "CIP_Program_Variables".General_Data.mStepTotalActualTime := "CIP_Program_Variables".General_Data.mStepTotalActualTime + 1 ;
	            END_IF ;
	        END_IF ;
	    ELSE
	        "CIPLocal_ProgStepUp"() ;
	    END_IF ;
	END_IF ;
	"HMI_Alarms".gH_Status["CIP_Program_Variables".mCIP_ActualStep.CIP_StatusMsgCode]:= TRUE ;
	
	(************************************************************************************************************)
	(*        Transfer the X in the Simple program i-th Step to the Sp Sustain Memory                           *)
	(************************************************************************************************************)
	
	"gSP_CIP_Temp_En"       :="CIP_Program_Variables".mCIP_ActualStep.CIP_Temp_En ;
	"gSP_RVN301"            :="CIP_Program_Variables".mCIP_ActualStep.CIP_RVN301 ;
	"gSP_RVN302"            :="CIP_Program_Variables".mCIP_ActualStep.CIP_RVN302 ;
	"gSP_RVN301_1"          :="CIP_Program_Variables".mCIP_ActualStep.CIP_RVN301 ;
	"gSP_RVN302_1"          :="CIP_Program_Variables".mCIP_ActualStep.CIP_RVN302 ;
	"gSP_RVP303"            :="CIP_Program_Variables".mCIP_ActualStep.CIP_RVP303 ;
	"gSP_CIP_CO2_Inj"       :="CIP_Program_Variables".mCIP_ActualStep.CIP_CO2_Inj ;
	"gSP_AVM313"            :="CIP_Program_Variables".mCIP_ActualStep.CIP_AVM313 ;
	"gSP_AVN314"            :="CIP_Program_Variables".mCIP_ActualStep.CIP_AVN314 ;
	"gSP_AVM315"            :="CIP_Program_Variables".mCIP_ActualStep.CIP_AVM315 ;
	"gSP_AVP316"            :="CIP_Program_Variables".mCIP_ActualStep.CIP_AVP316 ;
	"gSP_AVM317"            :="CIP_Program_Variables".mCIP_ActualStep.CIP_AVM317 ;
	"gSP_AVM322"            :="CIP_Program_Variables".mCIP_ActualStep.CIP_AVM322 ;
	"gSP_AVM323"            :="CIP_Program_Variables".mCIP_ActualStep.CIP_AVM323 ;
	"gSP_AVP324"            :="CIP_Program_Variables".mCIP_ActualStep.CIP_AVP324 ;
	"gSP_AVN327"            :="CIP_Program_Variables".mCIP_ActualStep.CIP_AVN327 ;
	"gSP_AVS331"            :="CIP_Program_Variables".mCIP_ActualStep.CIP_AVS331 ;
	"gSP_AVS332"            :="CIP_Program_Variables".mCIP_ActualStep.CIP_AVS332 ;
	"gSP_AVS333"            :="CIP_Program_Variables".mCIP_ActualStep.CIP_AVS333 ;
	"gSP_AVS334"            :="CIP_Program_Variables".mCIP_ActualStep.CIP_AVS334 ;
	"gSP_AVS335"            :="CIP_Program_Variables".mCIP_ActualStep.CIP_AVS335 ;
	"gSP_AVS336"            :="CIP_Program_Variables".mCIP_ActualStep.CIP_AVS336 ;
	"gSP_AVS337"            :="CIP_Program_Variables".mCIP_ActualStep.CIP_AVS337 ;
	"gSP_AVS338"            :="CIP_Program_Variables".mCIP_ActualStep.CIP_AVS338 ;
	"gSP_AVP344"            :="CIP_Program_Variables".mCIP_ActualStep.CIP_AVP344 ;
	"gSP_AVM345"            :="CIP_Program_Variables".mCIP_ActualStep.CIP_AVM345 ;
	"gSP_AVP361"            :="CIP_Program_Variables".mCIP_ActualStep.CIP_AVP361 ;
	"gSP_AVM369"            :="CIP_Program_Variables".mCIP_ActualStep.CIP_AVM369 ;
	"gSP_AVM371"            :="CIP_Program_Variables".mCIP_ActualStep.CIP_AVM371 ;
	"gSP_AVM380"            :="CIP_Program_Variables".mCIP_ActualStep.CIP_AVM380 ;
	"gSP_AVM381"            :="CIP_Program_Variables".mCIP_ActualStep.CIP_AVM381 ;
	"gSP_AVM388"            :="CIP_Program_Variables".mCIP_ActualStep.CIP_AVM388 ;
	"gSP_AVM389"            :="CIP_Program_Variables".mCIP_ActualStep.CIP_AVM389 ;
	
	"gSP_CIPRunning"        :="CIP_Program_Variables".mCIP_ActualStep.CIP_CIPRunning ;
	"gSP_CIPDrainRequest"   :="CIP_Program_Variables".mCIP_ActualStep.CIP_CIPDrainRequest ;
	"gSP_CIPHotPhase"       :="CIP_Program_Variables".mCIP_ActualStep.CIP_CIPHotPhase ;
	"gSP_HotWaterRequest"   :="CIP_Program_Variables".mCIP_ActualStep.CIP_HOTWaterReq ;
	"gSP_SendSodaRequest"   :="CIP_Program_Variables".mCIP_ActualStep.CIP_SendSodaBack ;
	
	"gSP_PPN301"            :="CIP_Program_Variables".mCIP_ActualStep.CIP_PPN301 ;
	"gSP_SyrRoomPump"       :="CIP_Program_Variables".mCIP_ActualStep.CIP_SyrRoomPump ;
	
END_FUNCTION