Count Up/Down (CTUD)

The CTUD instruction counts up by one when CUEnable transitions from clear to set. The instruction counts down by one when CDEnable transitions from clear to set.
When true and CUEnable is true, the CTUD instruction increments the counter by one. When true and CDEnable is true, the CTUD instruction decrements the counter by one.
Both the CUEnable and CDEnable input parameters can be toggled during the same scan. The instruction executes the count up prior to the count down.
Count Up
RSL5K_CTU_Count Up
Count Down
RSL5K_CTD_Count Down
When disabled, the CTUD instruction retains its accumulated value. Set the Reset input parameter to reset the instruction.
Available Languages
Ladder Diagram
This instruction is not available in ladder diagram.
Structured Text
CTUD(CTUD_tag)
Operands
Structured Text
Variable
Type
Format
Description
CTUD tag
COUNTER
Structure
CTUD structure
See Structured Text syntax for more information on the syntax of expressions within structured text.
COUNTER Structure
Mnemonic
Data Type
Description
.CD
BOOL
The countdown enable bit contains rung-condition-in when the instruction was last executed.
.DN
BOOL
The done bit when clear indicates the counting operation is complete.
.OV
BOOL
The overflow bit when set indicates the counter incremented past the upper limit of 2,147,483,647.
.UN
BOOL
The underflow when set indicates the counter decremented past the lower limit of -2,147,483,648.
.PRE
DINT
The preset value specifies the value which the accumulated value must reach before the instruction indicates it is done.
.ACC
DINT
The accumulated value specifies the number of transitions the instruction has counted.
Affects Math Status Flags
No
Major/Minor Faults
None specific to this instruction. See Common Attributes for operand-related faults.
Execution
Structured Text
Condition/State
Action Taken
Prescan
EnableIn and EnableOut bits are cleared to false.
Normal execution
EnableIn and EnableOut bits are set to true.
The instruction executes.
Postscan
EnableIn and EnableOut bits are cleared to false.
Example
Structured Text
CTUD_01.PRE := 500;
CTUD_01.Reset := Reset;
CTUD_01.CUEnable := Input;
CTUD(CTUD_01);
counter_state := CTUD_01.DN;
Provide Feedback
Have questions or feedback about this documentation? Please submit your feedback here.
Normal