Topic: DMD0174

Help File Version: 2.9.4.37

OFFDTMR - OFF Delay Timer


The Off Delay Timer (OFFDTMR) instruction is used to "delays turning off" an output by accumulating time downward from a preset value toward 0 then turning OFF the output. The instruction has a single ladder logic input leg which both enables and resets the Timer. When the input transitions from OFF to ON, the Output will be latched ON. Then, when the input logic transitions OFF, the Timer will begin timing. Once the preset value is reached, the output will turn OFF. If the input logic comes back ON before the preset value is reached , the output will remain ON and the Timer will reset, meaning it's accumulator will return to the preset value and it's associated structure members will be reset.

 

When a new Timer is added to the ladder logic the Common Timer Editor will be used. When editing an existing Timer, the following type-specific editor will be used. This can be changed in the View -> Options -> Ladder tab -> Editing section by selecting either Use only with new Timers (the default) or Use with new and existing Timers

 

 


Parameters:

Note: Use the F9 key to open the Default Element Selection Tool (the Element Picker or the Element Browser) or use the Down-Arrow key (Auto-Complete) on any parameter field to see a complete list of the memory locations that are valid for that parameter of the instruction.

 

Timer Struct specifies which Timer number to edit, and by extension, the name of the Timer's associated structure. This can be any of the System-created Timers, or any user-created Timer. The default Memory Configuration contains 255 predefined Timers named T0 through T255.

 

Off Delay Time is the amount of time after which you want the specified Output to go OFF. All Timers have a resolution of 1 millisecond. The maximum value for a Preset is 2,147,483,647 milliseconds. The Preset value can be specified in one of two ways:

Constant means the Preset is a fixed amount of time and can only be changed by editing the instruction. The Preset value is specified using the Time format (HH : MM : SS : mmm). The maximum Time value in this form is 569 hours, 31 minutes, 23 seconds, and 647 milliseconds. If needed, the value entered for the Timer Preset will be normalized to its standard value. For example, if you entered a value of 97 Seconds, that value will be converted and displayed as 1 Minute and 37 Seconds. When editing the Constant Preset value the following keystrokes are available to make entering the value easier and faster:h, m. s, and mm move the edit cursor to the Hours, Minutes, Seconds or milliseconds fields respectively.

 

Variable allows the Preset to be changed while the PLC is running. The Preset is specified as a numeric memory location that will contain the total number of milliseconds desired (from 0 to 2,147,483,647). This can be any readable numeric location.

 

Output is the Bit location that will be turned OFF after the Off Delay Time has expired. This can be any writable bit location.

 


Termination Scan Behavior:

All Timers - with one exception - have termination logic. This means if the Timer instruction is contained within a Program, a Task, or a Stage, the Timer will automatically be reset any time that Program, Task, or Stage stops executing because of an End Program, End Task, or Disable Stage respectively.

 

The Global Accumulating Up Timer (TMRAG) instruction does NOT have termination logic, meaning that it will retain it's accumulated time and the state of it's internal flags even if it is contained within a Program, a Task, or a Stage, that is disabled.

 

Refer to the Help topic on Termination Behavior for detailed information on the programming elements that have termination logic.

 


Status Display:

 

The yellow triangle in the upper left corner indicates this is a Multi-Scan instruction.

 


Timer Structure Members:

All Timers have an associated structure with fields that can be used in the ladder program. The structure fields are updated whenever the Timer instruction is processed in the PLC scan. The syntax for using them is <Timer structure>.<field name>, for example, T7.Acc.

 

.Acc (read/write) is a 32-bit signed value that represents the total accumulated time whenever the Timer is enabled. If the Timer is still enabled after the Preset is reached, the .Acc value keeps incrementing to a maximum of 2,147,483,647 ms (596 hrs, 31 min, 23.647s), it does not wrap.

 

.Done (read-only) will be ON any time the Timer's accumulator value (.Acc) is greater than or equal to the Timer's Preset value.

 

.Zero (read-only) will be ON any time the Timer's accumulator value (.Acc) is 0.

 

.Timing (read-only) will be ON if the Timer is enabled, and is NOT being held in Reset by the Reset Input leg or a Reset Timer (RSTT) instruction. Will remain ON after .Done turns ON.

 

.Reset (read-only) will be ON if the reset (RST) leg's input logic is TRUE, or if the Timer is being reset by a Reset Timer (RSTT) instruction.

 

.TT (read-only) will be ON if the Timer is enabled, and is NOT being held in Reset by the Reset Input leg or a Reset Timer (RSTT) instruction. Will turn OFF when .DN turns ON.

 

.EN (read-only) will be ON any time the Timer's input logic is TRUE, and the Timer is NOT being held in Reset by the Reset Input leg or a Reset Timer (RSTT) instruction.

 

.DN (read-only) will be ON any time the Timer's input logic is ON and it's accumulator value (.Acc) is greater than or equal to the Timer's Preset value.

 


See Also:

ONDTMR - On Delay Timer

 

OFFDTMR - OFF Delay Timer

 

RSTT - Reset Timer

 

TIMEDOUT - Timed Output

 


Related Topics:

TMR - Up Timer

 

TMRDOWN - Down Timer

 

TMRA - Accumulating Up Timer

 

TMRADOWN - Accumulating Down Timer

 

TMRAG - Global Accumulating Up Timer

 


Rung Example: