Cursos
Clase #28 - Funciones INC/DEC/ABS en TIA Portal V18: Conteo Software y Valor Absoluto en Ladder
Funciones INC/DEC/ABS en TIA Portal V18: Conteo Software y Valor Absoluto en Ladder💡 Por qué este video es esencial: INC/DEC parecen simples hasta que cuentas doble por scan o ABS no protege como esperas. En este video te muestro cómo conectar INC/DEC solo con flancos positivos para evitar conteo múltiple, cómo configurar ABS correctamente, y por qué estos bloques DEBEN ir en redes independientes con marcas auxiliares. ¡La demostración de conteo seguro vs. inseguro es clave!👋 Introducción: Simplifica Tu Ladder con Bloques Directos
Bienvenido a la Clase #28. Ya usas bloques matemáticos especializados (Clase #27). Ahora necesitas operaciones aún más cotidianas: incrementar/decrementar contadores software y asegurar que una variable nunca exceda rangos seguros.En Ladder, podrías hacer esto con lógica de contactos y bobinas, pero los bloques INC, DEC y ABS son más legibles, menos propensos a errores y ocupan menos espacio visual. El problema es que su simplicidad engaña: si no los conectas correctamente, contarás mal o dejarás valores fuera de rango.En este artículo explicamos la conexión visual, pero ver el flanco correcto en INC y la protección real de ABS solo es posible en el video.🎯 Lo que aprenderás en esta sesión (100% Ladder)
- Bloque INC_I/DI en Red Ladder: Incremento seguro por flanco positivo, evitando conteo múltiple.
- Bloque DEC_I/DI en Red Ladder: Decremento seguro con validación de límite inferior.
- Bloque ABS_I/DI/R en Red Ladder: Cálculo de error absoluto para alarmas simétricas.
- Patrón de Red Independiente + Flanco + Marca: La estructura obligatoria para INC/DEC.
- Aplicaciones Industriales Visuales: Contadores de ciclos, índices de arrays, protección de setpoints.
⚙️ Conceptos Clave (Resumen Técnico Ladder)
1. El Patrón Obligatorio: Flanco + Red Propia + MarcaComo demuestro en el minuto 02:15 del video, INC/DEC NO funcionan como contactos normales. Requieren este patrón estricto:
👋 Introducción: Simplifica Tu Ladder con Bloques Directos
Bienvenido a la Clase #28. Ya usas bloques matemáticos especializados (Clase #27). Ahora necesitas operaciones aún más cotidianas: incrementar/decrementar contadores software y asegurar que una variable nunca exceda rangos seguros.
En Ladder, podrías hacer esto con lógica de contactos y bobinas, pero los bloques INC, DEC y ABS son más legibles, menos propensos a errores y ocupan menos espacio visual. El problema es que su simplicidad engaña: si no los conectas correctamente, contarás mal o dejarás valores fuera de rango.
En este artículo explicamos la conexión visual, pero ver el flanco correcto en INC y la protección real de ABS solo es posible en el video.
🎯 Lo que aprenderás en esta sesión (100% Ladder)
- Bloque INC_I/DI en Red Ladder: Incremento seguro por flanco positivo, evitando conteo múltiple.
- Bloque DEC_I/DI en Red Ladder: Decremento seguro con validación de límite inferior.
- Bloque ABS_I/DI/R en Red Ladder: Cálculo de error absoluto para alarmas simétricas.
- Patrón de Red Independiente + Flanco + Marca: La estructura obligatoria para INC/DEC.
- Aplicaciones Industriales Visuales: Contadores de ciclos, índices de arrays, protección de setpoints.
⚙️ Conceptos Clave (Resumen Técnico Ladder)
1. El Patrón Obligatorio: Flanco + Red Propia + Marca
Como demuestro en el minuto 02:15 del video, INC/DEC NO funcionan como contactos normales. Requieren este patrón estricto:
- Red N: Detección de Evento |--[Sensor_Ciclo.P]-----------------(M_Incremento)--| Red N+1: Incremento Condicionado |--[M_Incremento]--[INC_I(IN:=Contador)]--(Contador)--|
- Red N: Usa contacto de flanco positivo [.P] para detectar evento ÚNICO. Activa marca M.
- Red N+1: Solo si M está activa, ejecuta INC. El resultado se escribe en la MISMA variable de entrada (INC modifica IN place).
2. Bloque INC/DEC: Contadores Software Ligeros
Ventaja sobre CTU: No requieren instancia de tipo CTU, modifican la variable directamente.
Elemento | Función | Error Común en Ladder |
|---|---|---|
Bloque INC_I | IN := IN + 1 | Usar sin flanco → conteo múltiple por scan |
Bloque DEC_I | IN := IN - 1 | Olvidar validar límite inferior → underflow |
Contacto .P | Detecta flanco positivo | Ponerlo DESPUÉS del bloque INC (no detecta nada) |
Variable IN=OUT | Modificación in-place | Asignar OUT a variable diferente → no incrementa original |
Aplicación Ladder típica: Contador de ciclos de máquina sin CTU:
- Red 1: |--[Fin_Ciclo.P]--(M_Ciclo_Completo)--| Red 2: |--[M_Ciclo_Completo]--[INC_I(IN:=Total_Ciclos)]--(Total_Ciclos)--|
Más limpio que CTU cuando solo necesitas incremento simple sin preset ni salida Q.
3. Bloque ABS: Valor Absoluto para Alarmas Simétricas
Devuelve el valor sin signo. Ideal para calcular desviaciones:
- Red 1: |--[SETPOINT <> VALOR_ACTUAL]--(M_ABS_Valido)--| // Opcional: siempre válido, pero buena práctica Red 2: |--[M_ABS_Valido]--[ABS_I(IN:=Error_Crudo)]--(Error_Absoluto)--|
Luego usas Error_Absoluto en un comparador > para alarma, sin importar si el error fue positivo o negativo.
✅ Checklist de INC/DEC/ABS en Ladder
Antes de implementar:
- INC/DEC siempre precedidos por contacto de flanco .P en red anterior.
- Cada bloque en su propia red independiente.
- Marca auxiliar (M) usada para habilitar bloque.
- Para DEC: validación de límite inferior ANTES del bloque (evitar underflow).
- Variable IN y OUT son la misma para INC/DEC (modificación in-place).
- Comentada cada red explicando propósito del contador/límite.
Este checklist está demostrado en el proyecto Ladder del video. Úsalo como referencia.
🛑 Errores Comunes en Ladder con INC/DEC/ABS
- INC Sin Flanco: El error #1. Contador avanza 10 unidades por segundo porque el sensor estuvo TRUE 10 scans. SIEMPRE usa .P.
- DEC Sin Límite Inferior: Contador llega a -32768 y hace wrap-around a +32767. Valida IF Contador > 0 THEN DEC.
- Asignar OUT de INC a Variable Diferente: INC_I(IN:=A) modifica A. Si pones OUT en B, A no cambia y B recibe valor incorrecto.
- Poner INC en Rama Compleja: Combinar con otros contactos en misma rama → ejecución condicional no deseada. Red independiente siempre.
- Olvidar que ABS no valida entrada: ABS acepta cualquier valor, pero si la entrada es NaN o infinito, la salida también lo será. Valida entrada si proviene de cálculo previo.
👉 MIRA EL VIDEO PARA VER LA DIFERENCIA VISUAL ENTRE INC CON Y SIN FLANCO EN TABLA DE OBSERVACIÓN
¿Te ha pasado que tu contador software avanza solo o un cálculo de distancia da negativo?
Déjame un comentario en YouTube describiendo cómo conectaste los bloques. Te ayudaremos a verificar flancos y estructuras de red.
🔔 ¡Suscríbete y activa la campanita! En la Clase #30 dominamos SQR y SQRT en Ladder para cálculos de energía y posicionamiento. ¡Esencial para procesos con señales AC o coordenadas!

Publicar un comentario
0 Comentarios