FUNCTION "fcTimerRemainM" : Void
{ S7_Optimized_Access := 'TRUE' }
VERSION : 0.1
VAR_OUTPUT
udiHours : UDInt; // Hours left
usMins : USInt; // Minutes left
usSecs : USInt; // Seconds left
END_VAR
VAR_IN_OUT
tTimer {InstructionName := 'TON_TIME'; LibVersion := '1.0'} : TON_TIME; // Timer data
END_VAR
VAR_TEMP
udiDiffSec : UDInt; // Time difference in seconds
END_VAR
BEGIN
(*
fcTimerRemainM
This function is used to display remaining time of running timer.
Function provides cumulative hours, minutes and seconds.
*)
#udiDiffSec := TIME_TO_UDINT(#tTimer.PT - #tTimer.ET) / 1000; // -- Get difference between Set - Passed time in seconds
#udiHours := #udiDiffSec / 3600; // -- Get hours left
#usMins := UDINT_TO_USINT(#udiDiffSec / 60 - 60 * #udiHours); // -- Get minutes left
#usSecs := UDINT_TO_USINT(#udiDiffSec MOD 60); // -- Get seconds
END_FUNCTION