Conversiones de datos en Logix 5000: Reglas y redondeo REAL a entero
Cómo convierte Logix 5000 los datos al mezclar tipos: orden de tipos, extensión de signo, truncado y redondeo REAL a entero, con simulador.

Cuando mezclas tipos de datos en una instrucción, el controlador convierte los operandos. Las instrucciones son más rápidas y usan menos memoria si todos los operandos son del mismo tipo. Si los mezclas, se convierten según este orden de menor a mayor: SINT, USINT, INT, UINT, DINT, UDINT, LINT, ULINT, REAL y LREAL.
Reglas de conversión
| Conversión | Método | Resultado |
|---|---|---|
| SINT/INT → DINT | Extensión de signo (instrucciones lógicas: relleno de ceros) | Sin pérdida |
| DINT → LINT | Extensión de signo hasta 64 bits | Sin pérdida |
| Entero mayor → menor | Trunca la parte alta | DINT 65665 → INT 129 → SINT −127, con desbordamiento |
| SINT/INT → REAL | Directa | Sin pérdida |
| DINT → REAL | Usa parte de los 32 bits para el exponente | Puede perder precisión |
| LREAL → REAL | Reduce precisión | Puede perder precisión |
Redondeo de REAL a entero
| Parte decimal | Resultado al pasar REAL a entero |
|---|---|
| Menor que 0,5 | Redondea hacia abajo: 1,4 → 1 |
| Mayor que 0,5 | Redondea hacia arriba: 1,6 → 2 |
| Exactamente 0,5 | Al par más cercano: 1,5 → 2 y 2,5 → 2 |
| No cabe en el destino | Guarda lo que puede y activa S:V |
Ejemplo paso a paso
- Crea
Temp_Real(REAL) yTemp_Entero(DINT). - Usa
MOV(Temp_Real,Temp_Entero). - Prueba con 2,5 y 3,5: Obtendrás 2 y 4 (redondeo al par).
- Si necesitas siempre truncar, usa el operador TRN en una expresión CPT.
Renglón en texto (puedes pegarlo en el editor ladder):
MOV(Temp_Real,Temp_Entero);
CPT(Temp_Truncada,TRN(Temp_Real));
Consejos y errores comunes
- Usa un tipo intermedio común (DINT o REAL) para evitar conversiones en cada scan.
- El redondeo al par sorprende a muchos: No es el redondeo escolar.
Serie: Instrucciones Logix 5000
- Examinar si cerrado (XIC)
- Examinar si abierto (XIO)
- Activación de salida (OTE)
- Enclavamiento de salida (OTL)
- Desenclavamiento de salida (OTU)
- Instrucciones de comparación en Studio 5000
- Igual a (EQU)
- Mayor que (GRT)
- Mayor o igual que (GEQ)
- Menor que (LES)
- Menor o igual que (LEQ)
- Límite (LIM)
- Instrucciones de alarma (ALMD y ALMA)
- Operación de grupo de alarmas (ASO)
- Máscara igual a (MEQ)
- No igual a (NEQ)
- Valor absoluto (ABS)
- Sumar (ADD)
- Calcular (CPT)
- Dividir (DIV)
- Módulo (MOD)
- Multiplicar (MUL)
- Negar (NEG)
- Raíz cuadrada (SQR/SQRT)
- Restar (SUB)
- Y booleano (BAND)
- O exclusivo booleano (BXOR)
- NO booleano (BNOT)
- O booleano (BOR)
- Búsqueda y comparación de archivos (FSC)
- Aritmética y lógica de archivo (FAL)
- Operadores válidos en expresiones
- Instrucción FOR (FOR)
- PID mejorado (PID)
- Validación de licencia (LV)
- Atributos comunes e indicadores de estado matemático
- Valores inmediatos (constantes)
- Conversiones de datos
- Tipos de datos elementales
- Tipos LINT y valores de punto flotante
- Índice a través de matrices
- Direccionamiento de bit
- Lazo FOR_DO en texto estructurado
- Instrucción MOV
Referencias
- Rockwell Automation. Logix 5000 Controllers General Instructions Reference Manual (Publicación 1756-RM003). literature.rockwellautomation.com
- Rockwell Automation. Studio 5000 Logix Designer: Ayuda en línea, conjunto de instrucciones. rockwellautomation.com
- International Electrotechnical Commission. (2013). IEC 61131-3: Programmable controllers – Part 3: Programming languages (3.ª ed.). IEC.
- Petruzella, F. D. (2017). Programmable Logic Controllers (5.ª ed.). McGraw-Hill Education.
Studio 5000, Logix 5000, ControlLogix, CompactLogix y GuardLogix son marcas de Rockwell Automation. Ilustraciones y simuladores originales de TdeAutomatización.


