Sedona

timing::Timer


sys::Obj
  sys::Virtual
    sys::Component
      timing::Timer

public class Timer [niagaraIcon="module://icons/x16/clock.png"]

Timer outputs a pulse for the configured amount of time "in" is used to fire the timer:

   - if low, out is forced to false
   - if high, out = 1 until timer reaches "time" seconds
 Alternatively, the pulse can be fired from the "Start Timer" action if run is not linked.

left

public property int left [summary, unit="second", readonly]

Time left on the timer if running, in seconds If not running, this value is 0

out

public property bool out [readonly]

The timed output pulse

run

public property bool run [falseText="stop", trueText="run"]

Used to fire the timer on transition from false -> true

time

public property int time [summary, config, unit="second"]

Desired duration of the output pulse, in seconds

changed

public virtual override void changed(Slot slot)

override changed to recompute ms length of the timer if the time changes

execute

public virtual override void execute()

Execute is called once every scan.

resetTimer

public action void resetTimer()

Action to reset the timer. Any time already in progress is immediately canceled, and the "left" is set to 0 sec

start

public virtual override void start()

start computes the ms length of the timer

startTimer

public action void startTimer()

Used to manually start the timer in cases where there is no link to "in" property Issuing this command while the timer is already active will reset/restart the timer