2.3 KiB
2.3 KiB
FUNCTION "CIPLocal_ProgStepUp" : Void
{ S7_Optimized_Access := 'FALSE' }
VERSION : 0.0
BEGIN
IF "CIP_Program_Variables".General_Data.ActualSimpleNum < "CIP_Program_Variables".General_Data.CIPMaxSimpleNum THEN
IF "CIP_Program_Variables".General_Data.ActualStepNum < "CIP_Program_Variables".General_Data.CIPMaxStepNum THEN
"CIP_Program_Variables".General_Data.ActualStepNum := "CIP_Program_Variables".General_Data.ActualStepNum + 1 ;
ELSIF "CIP_Program_Variables".General_Data.ActualStepNum = "CIP_Program_Variables".General_Data.CIPMaxStepNum THEN
"CIP_Program_Variables".General_Data.ActualSimpleNum := "CIP_Program_Variables".General_Data.ActualSimpleNum + 1 ;
"CIP_Program_Variables".General_Data.ActualStepNum := 1 ;
"CIP_Program_Variables".General_Data.mStepTotalActualTime := 0 ;
END_IF ;
ELSIF "CIP_Program_Variables".General_Data.ActualSimpleNum = "CIP_Program_Variables".General_Data.CIPMaxSimpleNum THEN
IF "CIP_Program_Variables".General_Data.ActualStepNum < "CIP_Program_Variables".General_Data.CIPMaxStepNum THEN
"CIP_Program_Variables".General_Data.ActualStepNum := "CIP_Program_Variables".General_Data.ActualStepNum + 1 ;
ELSIF "CIP_Program_Variables".General_Data.ActualStepNum = "CIP_Program_Variables".General_Data.CIPMaxStepNum THEN
IF "CIP_Program_Variables".General_Data.mStepTimeValue = 0 OR ("CIP_Program_Variables".General_Data.mStepTimeValue <= "CIP_Program_Variables".General_Data.StepActualTime) THEN
"CIP_Program_Variables".Status.Completed := TRUE ;
"CIP_Program_Variables".mCIP_ActualStep := "CIP_Program_Variables".mCIP_StepEmpty ;
END_IF ;
END_IF ;
END_IF ;
IF "CIP_Program_Variables".Status.Inizialized THEN
"CIP_Program_Variables".Status.Inizialized := FALSE ;
END_IF ;
IF "CIP_Program_Variables".General_Data.mStepTimeValue > 0 AND "HMI_Local_CIP_Variables".Cip_Commands._ProgStepUp THEN
"CIP_Program_Variables".General_Data.TotalElapsedTime := "CIP_Program_Variables".General_Data.TotalElapsedTime +
LIMIT(MN :=0, IN:=("CIP_Program_Variables".General_Data.mStepTimeValue - "CIP_Program_Variables".General_Data.StepActualTime), MX:="CIP_Program_Variables".General_Data.mStepTimeValue) ;
END_IF ;
"CIP_Program_Variables".General_Data.StepActualTime := 0 ;
END_FUNCTION