Clase #38 - Funciones CEIL/FLOOR en TIA Portal V18: Redondeo Direccional para Seguridad y Límites

Funciones CEIL/FLOOR en TIA Portal V18: Redondeo Direccional para Seguridad y Límites

Funciones CEIL/FLOOR en TIA Portal V18: Redondeo Direccional para Seguridad y Lím

💡 Por qué este video es esencial: CEIL(2.1)=3, FLOOR(2.9)=2. No son simétricos ni neutros. En este video te muestro cómo CEIL garantiza mínimos seguros en dosificación, cómo FLOOR protege máximos críticos en control térmico, y por qué confundirlos con ROUND/TRUNC puede causar violaciones de seguridad o calidad. ¡La comparación lado a lado con valores negativos y positivos es reveladora!

👋 Introducción: Redondeo Con Intención de Seguridad

Bienvenido a la Clase #38. Ya manejas redondeo estadístico (ROUND) y direccionamiento (TRUNC) en la Clase #37. Pero hay situaciones donde la neutralidad matemática es peligrosa.
En dosificación farmacéutica, 2.1 mg redondeado a 2 mg (TRUNC/ROUND) podría ser subdosis. En control de hornos, 299.9°C redondeado a 300°C (ROUND) podría exceder límite de seguridad. Aquí necesitas redondeo direccional: siempre hacia arriba (CEIL) para garantizar mínimos, o siempre hacia abajo (FLOOR) para respetar máximos.
En Ladder, CEIL_R y FLOOR_R son bloques IEC diseñados específicamente para esta intención operativa. No son alternativas a ROUND; son herramientas de protección.
En este artículo explicamos la lógica, pero ver cómo CEIL/FLOOR protegen límites en tiempo real solo es posible en el video.

🎯 Lo que aprenderás en esta sesión (100% Ladder)

  1. Bloque CEIL_R en Red Ladder: Redondeo hacia +∞. Garantiza que el resultado NUNCA sea menor que el valor original.
  2. Bloque FLOOR_R en Red Ladder: Redondeo hacia -∞. Garantiza que el resultado NUNCA sea mayor que el valor original.
  3. Diferencia Crítica vs. ROUND/TRUNC: Comportamiento asimétrico y su impacto en seguridad/calidad.
  4. Patrón de Protección de Límites: Usar CEIL/FLOOR como primera línea de defensa antes de comparadores o actuadores.
  5. Aplicaciones Industriales Visuales: Dosificación mínima, límites térmicos, cálculo de ciclos completos, validación de setpoints.

⚙️ Conceptos Clave (Resumen Técnico Ladder)

1. El Comportamiento Direccional: Intención Operativa
Como demuestro en el minuto 02:00 del video, CEIL y FLOOR tienen propósitos opuestos y definidos:
Valor Entrada
CEIL_R Resultado
FLOOR_R Resultado
Intención Operativa
2.1
3
2
CEIL garantiza ≥2.1; FLOOR garantiza ≤2.1
2.9
3
2
CEIL siempre sube; FLOOR siempre baja
-2.1
-2
-3
CEIL va hacia cero (menos negativo); FLOOR va más negativo
-2.9
-2
-3
CEIL(-2.9)=-2 > -2.9; FLOOR(-2.9)=-3 < -2.9
3.0
3
3
Enteros permanecen iguales

2. Patrón de Protección de Límites en Ladder
En lugar de usar CEIL/FLOOR como paso final, úsalos como garantía previa a lógica crítica:
  1. // CASO A: Dosificación Mínima Segura → CEIL_R Red 1: |--[M_Dosif_Activa]--[CEIL_R(IN:=Dosis_Calculada)]--(Dosis_Segura)--| // Justificación: Dosis_Calculada=2.1mg → Dosis_Segura=3mg. Nunca se administra menos de lo calculado. // CASO B: Límite Térmico Máximo → FLOOR_R Red 1: |--[M_Control_Activa]--[FLOOR_R(IN:=Temp_Setpoint)]--(Temp_Limite)--| // Justificación: Setpoint=299.9°C → Limite=299°C. Nunca se permite exceder 299°C aunque el cál
3. Aplicaciones Industriales Críticas en Ladder
  • Dosificación Farmacéutica/Alimentaria:
    Dosis_Administrada = CEIL_R(Dosis_Receta) → Cumplimiento regulatorio. TRUNC o ROUND podrían resultar en subdosis ilegal.
  • Control de Hornos/Reactores:
    Temp_Max_Permitida = FLOOR_R(Temp_Limite_Seguridad) → Protección contra sobretemperatura. ROUND podría redondear 299.6°C a 300°C, violando límite.
  • Cálculo de Ciclos Completos:
    Ciclos_Completos = FLOOR_R(Tiempo_Total / Tiempo_Por_Ciclo) → Solo cuenta ciclos terminados. CEIL contaría ciclos incompletos como completos.
  • Validación de Setpoints HMI:
    SP_Validado = CEIL_R(SP_HMI_Minimo) → Garantiza que operador no ingrese valor por debajo de mínimo operativo seguro.
En el video simulamos dosificación y control térmico, mostrando cómo ROUND/TRUNC fallan en proteger límites mientras CEIL/FLOOR los garantizan.

✅ Checklist de CEIL/FLOOR en Ladder

Antes de implementar:
  • Definido claramente si la aplicación requiere garantía de mínimo (CEIL) o máximo (FLOOR).
  • Verificado comportamiento con valores negativos según dirección deseada.
  • Cada bloque en su propia red independiente.
  • Marca auxiliar usada para habilitar operación.
  • Comentada cada red explicando POR QUÉ se necesita redondeo direccional (no neutro).
  • Probado con valores límite (.0, .1, .9, -.1, -.9) en simulación.
  • Confirmado que CEIL/FLOOR están ANTES de lógica de seguridad/comparadores, no después.
Este checklist está demostrado en el proyecto Ladder del video. Úsalo como referencia.

🛑 Errores Comunes en Ladder con CEIL/FLOOR

Usar CEIL Para Máximos o FLOOR Para Mínimos: Invierte la protección. CEIL en límite máximo permite excederlo; FLOOR en mínimo permite subdosificar.
Confundir FLOOR Con TRUNC En Negativos: FLOOR(-2.9)=-3, TRUNC(-2.9)=-2. Si necesitas garantizar ≤-2.9, FLOOR es correcto; TRUNC viola el límite.
Usar CEIL/FLOOR Donde Se Necesita Neutralidad: En promedios o displays, CEIL/FLOOR introducen sesgo direccional intencional. Usa ROUND para neutralidad.
Poner Bloques Después de Comparadores de Límite: La protección debe ser PREVIA al comparador. Si comparas primero y redondeas después, el comparador ya permitió la violación.
Ignorar Que CEIL/FLOOR Son Asimétricos: No son inversos perfectos en negativos. Verifica dirección deseada para cada caso específico.

👉 MIRA EL VIDEO PARA VER CÓMO CEIL EVITA SUBDOSIS Y FLOOR PREVINE SOBRECALENTAMIENTO EN SIMULACIÓN

¿Te ha pasado que una dosis fue insuficiente o un límite de seguridad se excedió por redondeo incorrecto?
Déjame un comentario en YouTube describiendo tu caso. Te ayudaremos a verificar si CEIL/FLOOR eran la solución adecuada.

🔔 ¡Suscríbete y activa la campanita! En la Clase #39 dominamos NORM_X y SCALE_X en Ladder. Adiós a fórmulas manuales MUL/DIV propensas a overflow. ¡Esencial para cualquier proceso con sensores analógicos!

Publicar un comentario

0 Comentarios