Si preguntas a diez programadores de PLC cuáles son las instrucciones que más usan en su día a día, al menos ocho te van a decir lo mismo: temporizadores y contadores. Son las herramientas más básicas de TIA Portal, pero también las que más dolores de cabeza dan cuando no se entienden bien. Un temporizador mal usado puede hacer que una secuencia se quede colgada, y un contador sin resetear puede desconfigurar toda una máquina en producción.
En este artículo vamos a repasar cada tipo de temporizador y contador disponible en S7-1200 y S7-1500, cómo funcionan por dentro, y los errores más comunes que veo una y otra vez en instalaciones reales.
¿Por qué son tan importantes los temporizadores y contadores?
Casi cualquier proceso automatizado necesita medir tiempo o contar eventos en algún momento: esperar a que un cilindro termine su carrera, dar tiempo a que un sensor se estabilice, contar piezas que pasan por una cinta, o llevar la cuenta de ciclos de una máquina para mantenimiento preventivo. Sin temporizadores y contadores, tendrías que resolver todo esto con lógica combinacional, lo cual es posible pero mucho más complicado y propenso a errores.
Tipos de Temporizadores en TIA Portal
TIA Portal ofrece cuatro instrucciones de temporizador basadas en el estándar IEC, disponibles tanto en S7-1200 como en S7-1500:
TON (Temporizador de Retardo a la Conexión)
Es el más utilizado. Cuando la entrada IN se activa, el temporizador empieza a contar. Si IN permanece activada durante el tiempo programado (PT), la salida Q se activa. Si IN se desactiva antes de que se cumpla el tiempo, el contador se resetea a cero.
Uso típico: retardar el arranque de un motor tras dar la orden, o esperar un tiempo de estabilización antes de leer un sensor.
TOF (Temporizador de Retardo a la Desconexión)
Funciona al revés que el TON. La salida Q se activa inmediatamente cuando IN se activa. Cuando IN se desactiva, la salida Q se mantiene activada durante el tiempo PT antes de desactivarse.
Uso típico: mantener encendido un ventilador de refrigeración unos minutos después de apagar el motor que refrigera, o mantener una alarma visible un tiempo tras desaparecer la causa.
TP (Impulso de Duración Fija)
Genera un pulso de duración exacta PT en la salida Q, independientemente de lo que haga la entrada IN después de activarse. Aunque IN se desactive antes de completar el tiempo, la salida Q sigue activa hasta cumplir el PT.
Uso típico: generar un pulso de accionamiento de una electroválvula, o simular una pulsación de botón de duración controlada.
TONR (Temporizador de Retardo a la Conexión con Memoria)
Es como el TON, pero con memoria: el tiempo acumulado no se pierde si la entrada IN se desactiva. El contador solo se pone a cero cuando se activa explícitamente la entrada R (reset).
Uso típico: acumular el tiempo total de funcionamiento de un motor a lo largo de varios ciclos, útil para mantenimiento predictivo.
Tipos de Contadores en TIA Portal
CTU (Contador Ascendente)
Incrementa el valor CV cada vez que la entrada CU pasa de 0 a 1 (flanco de subida). Cuando CV alcanza o supera el valor de preselección PV, la salida Q se activa. La entrada R resetea el contador a cero.
Uso típico: contar piezas que pasan por un sensor fotoeléctrico en una cinta transportadora.
CTD (Contador Descendente)
Funciona al contrario: parte de un valor de carga (LD) y decrementa con cada flanco de subida en la entrada CD. Cuando CV llega a cero, la salida Q se activa.
Uso típico: contar hacia atrás el número de piezas restantes en un lote antes de completar una orden de fabricación.
CTUD (Contador Ascendente/Descendente)
Combina ambos comportamientos en una sola instrucción, con entradas independientes CU y CD, además de LD para cargar un valor inicial y R para resetear. Es la opción más flexible cuando necesitas contar en ambos sentidos, por ejemplo entradas y salidas de piezas en un almacén intermedio.
Diferencias entre S7-1200 y S7-1500
A nivel de programación, las instrucciones de temporizadores y contadores se comportan igual en ambas familias, ya que ambas siguen el estándar IEC 61131-3. Sin embargo, hay matices importantes:
- El S7-1500 permite mayor precisión en la gestión de tiempos y mejor rendimiento cuando se usan muchos temporizadores simultáneos, gracias a su CPU más potente.
- En S7-1500, el análisis y diagnóstico online de temporizadores y contadores es más detallado, incluyendo información adicional en la tabla de observación.
- El S7-1200 tiene limitaciones de memoria y número máximo de instrucciones activas simultáneamente en aplicaciones muy grandes, algo que rara vez es un problema en S7-1500.
- Los contadores IEC de ambas familias usan datos tipo Int por defecto, aunque puedes cambiar a UDInt o UInt según el rango que necesites contar.
Si tienes dudas sobre cuál elegir para tu proyecto, en el artículo S7-1200 vs S7-1500: diferencias técnicas y cuándo elegir cada uno lo desarrollo con más detalle.
Casos Prácticos
Caso 1: Temporizado de una secuencia
Imagina una máquina que debe avanzar un cilindro, esperar 3 segundos para que se estabilice una pieza, y luego activar una segunda etapa. Aquí usarías un TON: la entrada IN se activa cuando el cilindro llega a su posición (detectado por un sensor), y cuando se cumplen los 3 segundos, la salida Q dispara la siguiente etapa.
Caso 2: Conteo de piezas en una cinta transportadora
Un sensor fotoeléctrico detecta cada pieza que pasa. Conectas ese sensor a la entrada CU de un CTU con un valor de preselección PV igual al tamaño del lote. Cuando se completa el lote, la salida Q activa una señal para detener la cinta o avisar al operario.
Errores Comunes que Debes Evitar
- No resetear el contador entre lotes. Es el error más frecuente: si olvidas activar la entrada R al terminar un ciclo, el contador sigue acumulando y la lógica de detección de lote falla en el siguiente ciclo.
- Reutilizar la misma instancia de temporizador o contador en varias llamadas. Cada instrucción TON, TOF, TP, CTU, etc. necesita su propio bloque de datos de instancia. Si reutilizas la misma instancia en distintas partes del programa sin darte cuenta, los tiempos y conteos se mezclan entre sí de forma impredecible.
- Confundir TON con TONR. Si necesitas que el tiempo se resetee cada vez que se desactiva la entrada, usa TON. Si necesitas que el tiempo se acumule entre activaciones, usa TONR. Usar el equivocado es una fuente habitual de comportamientos extraños en máquina.
- No comprobar el tipo de dato del valor de preselección. Un error clásico de principiante es programar el PV o el PT como una constante fija cuando en realidad la aplicación necesita que ese valor sea ajustable desde HMI o desde una variable de receta.
Conclusión
Dominar temporizadores y contadores no es opcional en automatización industrial: es la base sobre la que se construye prácticamente cualquier secuencia de máquina. Entender bien las diferencias entre TON, TOF, TP y TONR, así como entre CTU, CTD y CTUD, te va a ahorrar horas de depuración en planta y te va a permitir programar secuencias más robustas desde el primer intento.
Si quieres seguir profundizando en programación estructurada con TIA Portal, te recomiendo revisar también el artículo FC vs FB en TIA Portal: diferencias, cuándo usar cada uno y errores comunes, donde se explica precisamente por qué cada temporizador y contador necesita su propia instancia de datos.

