CTD / CTDr

PLCopen motion icon

 Function Block - Down counter.

Inputs

Input

Data Type

Range

Unit

Default

Description

CD

BOOL

 

 

 

  • Enable counting.
  • Counter is decreased on each call when CD is TRUE.

LOAD

BOOL

 

 

 

  • Re-load command.
  • Counter is set to PV when called with LOAD to TRUE.

PV

DINT

 

 

 

Programmed maximum value.

Outputs

Output

Data Type

Range

Unit

Description

CV

DINT

 

 

Current value of the counter.

Q

BOOL

 

 

TRUE when counter is empty (i.e., when CV = 0).

Remarks

  • The counter is empty (CV = 0) when the application starts.
  • The counter does not include a pulse detection for CD input.
  • Use the f_trig or r_trig function blocks for counting pulses of CD input signal.
  • CTDr, CTUr, and CTUDr function blocks operate exactly as other counters.
    • Exception: All Boolean inputs (CU, CD, RESET, LOAD) have an implicit rising edge detection included.

FBD Language Example

FFLD Language Example

  • The CD is the input rung.
    • The output rung is the Q output.

IL Language Example

Not available.

ST Language Example

(* MyCounter is a declared instance of CTD function block. *)
MyCounter (CD, LOAD, PV);
Q := MyCounter.Q;
CV := MyCounter.CV;

See Also