The Timer logic block provides different types of timers as configured by the Setup attribute found in the Details dialog box of the block. Each type uses a Duration (how long the timer is active) and unique functions to generate an Output.
The Duration range is 5 seconds to 3,888,000 seconds (45 days). The Timer resets upon power failure, controller restart, or when the control logic is disabled and re-enabled.
The Timer types include:
-
Pulse: The Present Value is normally False. The timer generates a True pulse for the Present Value for the Duration time when the Input transitions from False to True. For example, you can use a Pulse timer to ensure that initialization of a device is over before transitioning to the next state.
-
Cancelable Pulse: This timer is the same as the Pulse timer, except that while the timer is active an Input transition from True to False cancels the current timing and sets the Present Value to False. For example, use this timer when a controller performs an operation for the Duration time period, but the operation can be stopped at the occurrence of a certain event.
-
Retriggerable: This timer is similar to Pulse timer, except that while the timer is active, each additional transition of Input from False to True forces a restart of the timing cycle. The Present Value remains True as a result of this timing restart. For example, if you press a button (Binary Input), the timer restarts its timing cycle for the Duration and a certain set of logic is enabled while the timer is active.
-
On Delay: The Present Value tracks the Input except that it is delayed for the Duration time when the Input transitions from False to True. For example, you can set logic to delay the start of the Supply Fan until 10 seconds after the Return fan starts.
-
On Delay with Memory: Similar to the On Delay timer, except once the Present Value becomes True, it is latched True until the Reset is True. For example, use this timer to trigger an alarm after waiting for a delay to prove that the equipment is in alarm.
-
Off Delay: The Present Value tracks the Input except that it is delayed for the Duration time when the Input transitions from True to False. For example, you can set a Supply fan to turn off 30 seconds after the heating is turned off.
-
Free Running: This timer runs continuously and generates a square wave for the Present Value. Use this timer to create test signals for testing. This timer is not typically used in feedback control applications.
-
Minimum On: The Present Value tracks the Input except that it must remain True for the Duration time before following the Input to False. For example, you can configure a chiller so that once it is started, it remains running for a minimum of 10 minutes.
-
Minimum Off: The Present Value tracks the Input except that it must remain False for the Duration time before following the Input to True. For example, once a chiller is turned off, it must be left off for a minimum time to allow refrigerant to equalize.
The Timer block provides the following Reliability values: Reliable, Internal Error.
The following table describes the inputs and outputs of the Timer logic block.
Name |
Data Type |
Exposed for Connection by Default |
Description |
Default Value |
---|---|---|---|---|
Inputs |
||||
Duration |
Float |
No |
Indicates the time period used for the specified Timer configuration. You can change the Duration during the execution of a Timer. If the Duration is changed when the Timer is running a timing cycle, the Time Remaining is set to equal the new Duration. For values less than 6,535 seconds, the timing resolution is set to the nearest second. For values greater than 6,535 seconds, the timing resolution is rounded to the nearest minute. Note: The tool prevents updates to this block if you attempt to set the Duration out of range (Default Value and Test Value). The block clamps the Eff Duration property at end of the allowed range (1 to 3,888,000).
|
5 Seconds |
Input |
Boolean |
Yes |
Provides a Boolean signal that drives the Timer block for all Setup values other than Free Running. |
False |
Reset |
Boolean |
No |
Restarts the operation, forcing the Present Value to False. Reset has no effect when Setup is Minimum On or Minimum Off. |
False |
Reset Action |
Enum |
No |
Defines the behavior of the Timer block’s Present Value when Reset is changed from True to False. This attribute only affects the operation of the Timer when the value of Setup is Pulse, Cancelable Pulse, or Retriggerable Pulse. You can change the Reset Action during the execution of the Timer. The change takes effect on the next execution. |
Wait |
Setup |
Enum |
No |
Identifies the type of timer function being used for the Timer block. The Setup value (type of timer) appears in the Timer block name as Timer (<Setup Value>). You can change the Setup value of the Timer at any time. Changing the Setup cancels the Timer block's previous activities and causes the Timer to behave as if it were just re-enabled. |
Pulse |
Outputs |
||||
Present Value 1 |
Boolean |
Yes |
Indicates the current value of the output of the block. |
False |
Time Remaining 2 |
Float |
N/A |
Indicates the amount of time remaining in the current active timing cycle. This value is set to zero if the Timer is Inactive. This value is updated when the Timer executes and when the property value is requested. |
0 Seconds |
Properties |
||||
Effective Duration2 |
Float |
N/A |
Indicates the actual value used for the Timer's duration when the Duration input is set outside its allowed range (1 to 3,888,000 seconds). |
5 Seconds |
Time Remaining Update Interval |
Float |
N/A |
Indicates how fast the Time Remaining output updates. If this value is zero, the Time Remaining output does not update. This value is used to conserve system bandwidth if no timer diagnostics information is needed. |
0 seconds |