Tipos de datos elementales
El controlador admite los tipos de datos elementales definidos en los tipos de datos de la norma IEC 1131-3. Los tipos de datos elementales son:
Tipo de datos | Descripción | Rango |
BOOL | Booleano de 1 bit | 0 = borrado 1 = establecido |
SINT | Entero de 1 byte | De -128 a 127 |
INT | Entero de 2 byte | De -32.768 a 32.767 |
DINT | Entero de 4 byte | De -2.147.483.648 a 2.147.483.647 |
LINT | Entero de 8 byte
CONSEJO:
El tipo de datos LINT tiene uso limitado en los controladores
CompactLogix 5370, ControlLogix 5570, Compact GuardLogix 5370 y GuardLogix 5570. Solo se pueden utilizar con instrucciones para copiar (COP, CPS), el atributo Tiempo de CST/WallClock, la sincronización de tiempo y las instrucciones adicionales. | De -9223372036854775808 a 9223372036854775807 |
DT | Fecha y hora. Almacenamiento de 64 bits; las unidades se expresan en microsegundos. | DT#1970-01-01-00:00:00.000_000(UTC+00:00) a DT#2250-12-31-23:59:59.999_999(UTC+00:00)
CONSEJO:
En algunas zonas horarias, como Singapur, este es el intervalo:
DT#1970-01-01-08:00:00.000_000(UTC+08:00) a DT#2251-01-01-07:59:59.999_999(UTC+08:00) |
LDT | Fecha y hora largas. Almacenamiento de 64 bits; las unidades se expresan en nanosegundos. | LDT#1970-01-01-00:00:00.000_000(UTC+00:00) a LDT#2250-12-31-23:59:59.999_999_999(UTC+00:00)
CONSEJO:
En algunas zonas horarias, como Singapur, este es el intervalo:
LDT#1970-01-01-08:00:00.000_000_000(UTC+08:00) a LDT#2251-01-01-07:59:59.999_999_999(UTC+08:00) |
TIME32 | Duración de tiempo. Almacenamiento de 32 bits; las unidades se expresan en microsegundos. | T32#-35m_47s_483ms_647us a T32#35m_47s_483ms_647us |
TIME | Duración de tiempo. Almacenamiento de 64 bits; las unidades se expresan en microsegundos. | T#-106750d_12h_59m_59s_999ms_999us a T#106750d_12h_59m_59s_999ms_999us |
LTIME | Duración de tiempo larga. Almacenamiento de 64 bits; las unidades se expresan en nanosegundos. | LT#-106750d_12h_59m_59s_999ms_999us_999ns a LT#106750d_12h_59m_59s_999ms_999us_999ns |
USINT | Entero de 1 byte sin signo | De 0 a 255 |
UINT | Entero de 2 bytes sin signo | De 0 a 65.535 |
UDINT | Entero de 4 bytes sin signo | De 0 a 4.294.967.295 |
ULINT | Entero de 8 bytes sin signo | De 0 a 18.446.744.073.709.551.615 |
REAL | Número de punto flotante de 4 bytes | De -3,4028235E38 a -1,1754944E-38 (valores negativos) y 0,0 y De 1,1754944E-38 a 3,4028235E38 (valores positivos) |
LREAL | Número de punto flotante de 8 bytes | De -1,7976931348623157E308 a -2,2250738585072014E-308 (valores negativos) y 0,0 y De 2,2250738585072014E-308 a 1,7976931348623157E308 (valores positivos) |
Estos controladores son compatibles con los siguientes tipos de datos elementales:
Controladores | Tipo de datos |
|---|---|
controladores CompactLogix 5380, ControlLogix 5580, Compact GuardLogix 5380, GuardLogix 5580 y ControlLogix 5590 | SINT, INT, DINT, LINT, REAL USINT, UINT, UDINT, ULINT, LREAL |
Controladores CompactLogix 5370, ControlLogix 5570, Compact GuardLogix 5370 y GuardLogix 5570 | SINT, INT, DINT, LINT, REAL. |
El controlador gestiona todos los valores inmediatos como tipos de datos DINT.
El tipo de datos REAL también almacena
infinito y
NAN, pero lo que muestra el software difiere según el formato de visualización.
infinito y
NAN, pero lo que muestra el software difiere según el formato de visualización.Conversiones de tipo de datos
Si se mezclan tipos de datos para operandos dentro de una instrucción, algunas instrucciones convierten automáticamente los datos en un tipo de datos óptimo para esa instrucción. En algunos casos, el controlador convierte datos para adaptarse a un nuevo tipo de datos, pero a veces no los ajusta perfectamente.
Conversión | Resultado | ||
entero mayor a entero menor | El controlador trunca la porción superior del entero mayor y genera un desbordamiento. Por ejemplo: | ||
Decimal | Binario | ||
DINT | 65665 | 0000_0000_0000_0001_0000_0000_1000_0001 | |
INT | 129 | 0000_0000_1000_0001 | |
SINT | -127 | 1000_0001 | |
SINT o INT a REAL | No se pierde precisión de los datos | ||
DINT a REAL | Se podría perder precisión de los datos. Ambos tipos de datos almacenan datos en 32 bits, pero el tipo REAL utiliza algunos de sus 32 bits para almacenar el valor del exponente. Si se pierde precisión, el controlador la toma de la porción menos significativa del DINT. | ||
LREAL a LREAL | No se pierde precisión de los datos. | ||
LREAL a REAL | Se podría perder precisión de los datos. | ||
LREAL/REAL a entero sin signo | Se podría perder precisión de los datos. Si el valor del origen es demasiado grande y no cabe en el destino, el controlador almacena lo que puede y se puede producir un desbordamiento. | ||
Entero con signo/entero sin signo a LREAL/REAL | Si el valor entero tiene más bits significativos de los que se pueden almacenar en el destino, se truncarán los bits inferiores. | ||
Entero con signo a entero sin signo | Si el valor del origen es demasiado grande y no cabe en el destino, el controlador almacena lo que puede y se puede producir un desbordamiento. | ||
Entero sin signo a entero con signo | Si el valor del origen es demasiado grande y no cabe en el destino, el controlador almacena lo que puede y se puede producir un desbordamiento. | ||
REAL a entero | El controlador redondea la parte fraccionaria y trunca la porción superior de la parte no fraccionaria. Si se pierden datos, el controlador establece la marca de estado de desbordamiento. El redondeo es al número entero más cercano: menor de 0,5, redondeo hacia abajo; igual a 0,5, redondeo al número entero par más cercano; mayor de 0,5, redondeo hacia arriba Por ejemplo: | ||
REAL (origen) | DINT (resultado) | ||
1,6 | 2 | ||
-1,6 | -2 | ||
1,5 | 2 | ||
-1,5 | -2 | ||
1,4 | 1 | ||
-1,4 | -1 | ||
2,5 | 2 | ||
-2,5 | -2 | ||
No convierta datos en o desde el tipo de datos BOOL.
IMPORTANTE:
Las marcas de estado matemático se establecen en función del valor que se almacena. Las instrucciones que normalmente no afectan a las palabras clave de estado matemático pueden parecer que lo hacen si la conversión de tipo se produce debido a tipos de datos mixtos para los parámetros de instrucción. El proceso de conversión de tipo establece las palabras clave de estado matemático.
Tipos de datos de seguridad
La aplicación
Logix Designer
impide la modificación de un tipo definido por el usuario o definido por instrucciones adicionales que podría provocar un tipo de datos no válido para los tipos definidos por el usuario o definidos por instrucciones adicionales que estén referenciados directa o indirectamente por una etiqueta de seguridad. (Eso incluye estructuras anidadas).Las etiquetas de seguridad pueden estar compuestas de los siguientes tipos de datos:
- Todos los tipos de datos elementales.
- Tipos predefinidos que se usan en instrucciones de aplicación de seguridad.
- Tipos de datos definidos por el usuario o matrices compuestas por los dos tipos anteriores.
Ediciones en línea de los nombres de miembro de tipos de datos definidos por el usuario en tags de seguridad
La edición en línea está permitida para los nombres de miembros de los tipos de datos definidos por el usuario en los controladores
CompactLogix
5380, Compact GuardLogix
5380, ControlLogix
5580 y GuardLogix
5580. Sin embargo, la edición en línea está desactivada cuando se utiliza un tipo de datos definido por el usuario en una etiqueta de seguridad y el controlador se encuentra en el estado de seguridad protegida.Entregue su opinión