Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
Tipos de datos
Índice
1 Generalidades
3 Tipos elementales
4 Tipos Estructurados
5 Tipos de parámetros
• Los tipos de datos están permitidos de forma global y localmente en cualquier bloque.
DWORD
STRING
UDINT
WORD
USINT
LREAL
BOOL
CHAR
DATE
TIME
UINT
REAL
DINT
BYTE
SINT
TOD
DTL
INT
BOOL D: Con IEC Check Desactivado
BYTE I I D D D ED D D D
WORD I D D ED D D ED: Solo con Escalera y Diagrama
DWORD D ED D D de func. con IEC Check
USINT D D D I I I I I I desactivado
UINT D D I I I I D
UDINT D I D
SINT ED I I I I SCL: Solo en SCL con IEC Check
INT SCL ED I I I desactivado
DINT SCL SCL ED I D
REAL I
LREAL
TIME D D
TOD D D
DATE D D
DTL
CHAR D I
STRING
Tipo de datos elementales (I)
• BOOL: 1bit. TRUE/FALSE
• BYTE (8bits). Desde B#16#00 a B#16#FF
• WORD (16bits). Desde W#16#0000 a W#16#FFFF
• DWORD (32bits). Desde DW#16#0000 0000 a DW#16#FFFF FFFF
%MD100 = DWORD
7 6 5 4 3 2 1 0 7 6 5 4 3 2 1 0 7 6 5 4 3 2 1 0 7 6 5 4 3 2 1 0
%MB100 %MB101 %MB102 %MB103
Decimal 0 1 2 3 4 5 6 7 8 9
BCD 0000 0001 0010 0011 0100 0101 0110 0111 1000 1001
15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
+/- 10^2 10^1 10^0
• BCD32: 32 bits -> 7 dígitos + signo (bit 31) -> +/- 9 999 999
31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
• SINT ->1 byte. Desde -128 a +127 (el cero se considera positivo)
• INT -> 2 bytes. Desde -32768 hasta 32767 (el cero se considera positivo)
• -3.402823e+38 a -1.175495e-38
• ±0,0
• +1.175495e-38 a +3.402823e+38
Tipo de datos elementales (V)
• LREAL -> 8 bytes.
• de -1.7976931348623158e+308 a -2.2250738585072014e-308
• ±0,0
• de +2.2250738585072014e-308 a +1.7976931348623158e+308
Tipo de datos elementales (VI)
• CHAR -> 1 byte.
Un operando del tipo de datos CHAR tiene una longitud de 8 bits y ocupa un BYTE
en la memoria. El tipo de datos CHAR almacena un solo carácter en formato ASCII.
El tipo de datos TOD (TIME_OF_DAY) ocupa una palabra doble y guarda el número
de milisegundos desde el inicio del día (0:00 h) como número entero sin signo.
Tipo de datos estructurados (I)
• STRING -> (Número de caracteres) + 2 bytes
• Un operando del tipo de datos STRING guarda varios caracteres en una cadena
que puede estar formada por un máximo de 254 caracteres. En las cadenas de
caracteres se admiten todos los caracteres del código ASCII. Los caracteres se
introducen entre comillas sencillas.
Tipo de datos estructurados (II)
• DTL -> 12 bytes.
• Mín.: DTL#1970-01-01-00:00:00.0
• Máx.: DTL#2262-04-11-23:47:16.854775807
Un operando del tipo de datos DTL tiene una longitud de 12 bytes y guarda datos
de fecha y hora en una estructura predefinida.
Una vez declarada la variable como DTL se puede recuperar cualquier parte, por
ejemplo el año. Si la variable se llamara “Variable1”, sería #Variable1.YEAR
Tipo de datos estructurados (III)
Byte Componente Tipo de datos Rango de valores
0
Año UINT de 1970 a 2262
1
2 Mes USINT de 1 a 12
3 Día USINT 1 hasta 31
de 1 (domingo) a 7
(sábado)
4 Día de la semana USINT El día de la semana no se
tiene en cuenta al
introducir los valores.
5 Hora USINT 0 hasta 23
6 Minuto USINT 0 hasta 59
7 Segundo USINT 0 hasta 59
8
9
Nanosegundo UDINT de 0 a 999999999
10
11
Tipo de datos estructurados (IV)
ARRAY -> Estructura: [-32768..32767] of <tipo de datos>
Tipos de datos: Secuencias de bits, enteros, números en coma flotante, temporizadores, cadenas de caracteres,
estructuras
El tipo de datos Array representa una estructura de datos compuesta por un número fijo de componentes del
mismo tipo de datos. Se admiten todos los tipos de datos, a excepción de Array.
Una variable del tipo de datos Array comienza siempre en un límite de WORD (en un byte par).
Para direccionar los componentes de campo se utilizan índices. Los límites de los índices se definen entre
corchetes en la declaración del campo después de la palabra clave Array. El límite inferior debe ser menor o
igual que el límite superior. Un campo puede contener hasta seis dimensiones, cuyos límites se especifican
separados entre sí por comas.
Ejemplos:
Array[1..20] of REAL
Array[1..2, 3..4] of CHAR
Tipo de datos estructurados (V)
• STRUCT-> El tipo de datos STRUCT representa una estructura de datos compuesta por un número fijo de
componentes de diferentes tipos de datos.
Los componentes de los tipos de datos STRUCT o ARRAY también pueden anidarse en una estructura. La
profundidad de anidamiento se limita a ocho niveles. Con ayuda de estructuras es posible agrupar datos en
función del control del proceso y transmitir parámetros como una unidad de datos.
Pueden crearse hasta 65534 estructuras. Cada una puede contener hasta 252 componentes.
Un componente del tipo de datos STRUCT comienza siempre en un límite de WORD (en un byte par)
Tipo de parámetros (I)
• TEMPORIZADORES IEC
Función de tiempo Tipo de dato Tipo de dato IEC
Generador de pulsos TIME TP_TIME
Retraso a conexión TIME TON_TIME
Retraso a desconexión TIME TOF_TIME
Retraso a conexión con memoria TIME TONR_TIME
• CONTADORES IEC
• VOID
• El parámetro VOID se usa para la definición de funciones las cuales no devuelven ningún valor.
Tipos de datos PLC (UDT)
• Los tipos de datos PLC (UDT) son estructuras de datos definidas por el usuario que pueden utilizarse varias
veces en el programa. La estructura puede estar formada por varios elementos de diferentes tipos de datos.
Los tipos de datos de los diferentes elementos se definen al declarar un tipo de datos PLC.
• Se pueden usar como tipo de datos en el área de memoria estática de los FB.
Tipos de datos de Sistema (I)
• IEC_TIMER (instancia o multi-instancia) • IEC_COUNTER (instancia o multi-instancia)
• Para parametrizar las conexiones en TCP, UDP e ISO on TCP, para algunas CPUs de la S7-1200 se utiliza un
DB de descripción de la conexión con una estructura conforme a TCON_Param. La estructura de datos
fija de TCON_Param contiene los parámetros necesarios para establecer la conexión
• TADDR_PARAM
• ERRORSTRUCT
• Estructura predefinida usada por las funciones de evaluación de errores GetError y GetErrorID
• TIMETRANSFORMATIONRULE