CTUD (recuento ascendente/descendente)
La instrucción CTUD cuenta enteros de forma ascendente desde 0 hasta un valor concreto, de uno en uno, o de forma descendente desde un valor concreto hasta 0, de uno en uno.
Idiomas compatibles: Diagrama de bloque de funciones, diagrama de lógica de escalera y texto estructurado.
Esta instrucción se aplica a los controladores Micro810, L20E, L50E y L70E.
CTUD

Parámetro | Tipo de parámetro | Tipo de datos | Descripción |
|---|---|---|---|
CU | Entrada | BOOL | CIERTO: Flanco ascendente detectado, cuenta ascendente. |
CD | Entrada | BOOL | CIERTO: Flanco ascendente detectado, cuenta descendente. |
RESET | Entrada | BOOL | Restablece el comando dominante (tiene la mayor prioridad a la hora de determinar el comportamiento de las instrucciones). (CV = 0 cuando RESET es CIERTO). |
LOAD | Entrada | BOOL | Comando de carga. CIERTO: Establece el CV = PV. |
PV | Entrada | DINT | Valor máximo programado. |
QU | Salida | BOOL | Desbordamiento. CIERTO: Si CV >= PV. |
QD | Salida | BOOL | Caudal insuficiente. CIERTO: Si CV <= 0. |
CV | Salida | DINT | Resultado del contador. |
Ejemplos de CTUD
Ejemplo de diagrama de bloque de funciones CTUD

Ejemplo de diagrama de lógica de escalera CTUD

Ejemplo de texto estructurado CTUD

(* ST Equivalence: We suppose CTUD1 is an instance of block*) CTUD1(trigger1, trigger2, reset_cmd, load_cmd,100); full := CTUD1.QU; empty := CTUD1.QD; nb_elt := CTUD1.CV;
Resultados

Entregue su opinión