Está en la página 1de 26

PROGRAMACION AVANZADA DE

PLC’s

Énfasis en Automatización

Martha Lucia Orozco Gutiérrez

Martha Lucia Orozco G. Universidad del Cauca Progra 1


PROGRAMACION AVANZADA DE
PLC`s

Tipos de Datos
•Un programa PLC contiene diferentes tipos de datos
(punto flotante, codigo BCD, Contadores) que tienen
formatos incompatibles y es más crítico en diferentes
fabricantes
•La portabilidad del programa requerirá grandes modificaciones
debido al cambio de tipo de datos
•Por esto se definió el tipo de datos uniforme (útil
cuando se tienen diferentes fabricantes en un solo
proyecto)

Martha Lucia Orozco G. Universidad del Cauca Progra 2


PROGRAMACION AVANZADA DE
PLC`s

Tipos de datos elementales: Grupo predefinido y


estandarizado
Boolean/ Signed Integer Unsigned Floating Point Time, Duration, Date
Bit String Integer (real) and Character String

BOOL INT UINT REAL TIME


BYTE SINT USINT LREAL DATE
WORD DSINT UDINT TIME_OF_DAY
DWORD LINT ULINT DATE_AND_TIME
LWOPRD STRING

Martha Lucia Orozco G. Universidad del Cauca Progra 3


PROGRAMACION AVANZADA DE
PLC`s

Tipos de datos elementales estandarizados IEC:

Grupos Información para cada


Tipo de dato

Martha Lucia Orozco G. Universidad del Cauca Progra 4


PROGRAMACION AVANZADA DE
PLC`s

Tipos de datos elementales estandarizados IEC:

Tipo de dato Boolean y Bit String

Martha Lucia Orozco G. Universidad del Cauca Progra 5


PROGRAMACION AVANZADA DE
PLC`s

Tipos de datos elementales estandarizados IEC:

Tipo de dato signed Integer

Martha Lucia Orozco G. Universidad del Cauca Progra 6


PROGRAMACION AVANZADA DE
PLC`s

Tipos de datos elementales estandarizados IEC:

Tipo de dato Unsigned Integer

Martha Lucia Orozco G. Universidad del Cauca Progra 7


PROGRAMACION AVANZADA DE
PLC`s

Tipos de datos elementales estandarizados IEC:

Tipo de dato Real Number

Martha Lucia Orozco G. Universidad del Cauca Progra 8


PROGRAMACION AVANZADA DE
PLC`s

Tipos de datos elementales estandarizados IEC:

Tipo de dato Date y Time

Martha Lucia Orozco G. Universidad del Cauca Progra 9


PROGRAMACION AVANZADA DE
PLC`s

Tipos de datos elementales estandarizados IEC:

Tipo de dato Duration y Character String

Martha Lucia Orozco G. Universidad del Cauca Progra 10


PROGRAMACION AVANZADA DE
PLC`s

Tipos de datos elementales estandarizados IEC:

Valor inicial diferente al dado por el estándar

TYPE
LongFloatNum : LREAL;
FloatingPoint : LongFloatNum;
InitFloatNum : LREAL :=1.0;
tControl : BOOL :=TRUE;
END_TYPE

Martha Lucia Orozco G. Universidad del Cauca Progra 11


PROGRAMACION AVANZADA DE
PLC`s

Propiedades adicionales para tipos de datos elementales


Propiedad Significado
Initial Value La variable toma un valor inicial particular

eEnumeration La variable puede tomar un valor de una lista especificada

Range La variable puede tomar valores dentro de un rango especifico

Array Varios elementos de un mismop tipo son agrupados en un arreglo


(no se debe exceder el máximo índice permitido)

Structure Varios tipos de datos son agrupados para formar un tipo de dato.
Las variables se acceden por nombre del componente

Martha Lucia Orozco G. Universidad del Cauca Progra 12


PROGRAMACION AVANZADA DE
PLC`s

Propiedades adicionales para tipos de datos elementales


TYPE
Colour : (red, yellow, green);
Sensor : INT (-56..128);
Measure : ARRAY [1..45] OF Sensor;
TestBench
STRUCT
Place : UINT;
Ligth : Colour:=red;
Meas1 : Measure;
Meas2 : Measure;
Meas3 : Measure;
END_STRUCT;
END_TYPE

Martha Lucia Orozco G. Universidad del Cauca Progra 13


PROGRAMACION AVANZADA DE
PLC`s

Enumeration:
Colour puede tomar 1 de 3 valores posibles
TYPE
Colour : (red, yellow, green);
Sensor : INT (-56..128);
Measure : ARRAY [1..45] OF Sensor;
TestBench
STRUCT
Place : UINT;
Ligth : Colour:=red;
Meas1 : Measure;
Meas2 : Measure;
Meas3 : Measure;
END_STRUCT;
END_TYPE

Martha Lucia Orozco G. Universidad del Cauca Progra 14


PROGRAMACION AVANZADA DE
PLC`s
Range:
Sensor es una variable de temperatura
puede tomar valores entre –56 y 128
TYPE
Colour : (red, yellow, green);
Sensor : INT (-56..128);
Measure : ARRAY [1..45] OF Sensor;
TestBench
STRUCT
Place : UINT;
Ligth : Colour:=red;
Meas1 : Measure;
Meas2 : Measure;
Meas3 : Measure;
END_STRUCT;
END_TYPE

Martha Lucia Orozco G. Universidad del Cauca Progra 15


PROGRAMACION AVANZADA DE
PLC`s
Array:
Measure es un arreglo de datos tipo Sensor
Máximo soporta 45 datos
TYPE
Colour : (red, yellow, green);
Sensor : INT (-56..128);
Measure : ARRAY [1..45] OF Sensor;
TestBench
STRUCT
Place : UINT;
Ligth : Colour:=red;
Meas1 : Measure;
Meas2 : Measure;
Meas3 : Measure;
END_STRUCT;
END_TYPE

Martha Lucia Orozco G. Universidad del Cauca Progra 16


PROGRAMACION AVANZADA DE
PLC`s
Structure:
TestBench es una estructura de datos compuesta
de datos elementales y derivados
TYPE
Colour : (red, yellow, green);
Sensor : INT (-56..128);
Measure : ARRAY [1..45] OF Sensor;
TestBench
STRUCT
Place : UINT;
Ligth : Colour:=red;
Meas1 : Measure;
Meas2 : Measure;
Meas3 : Measure;
END_STRUCT;
END_TYPE

Martha Lucia Orozco G. Universidad del Cauca Progra 17


PROGRAMACION AVANZADA DE
PLC`s

ARRAY

•Arrays son elementos, de un mismo tipo de datos,


ordenados consecutivos en memoria.
•Los elementos del arreglos son accesados a través del índice
•Los sistemas PLC deben generar mensajes de error en caso
de exceder el tamaño del arreglo
•Se pueden crear arreglos de varias dimensiones

Martha Lucia Orozco G. Universidad del Cauca Progra 18


PROGRAMACION AVANZADA DE
PLC`s

TYPE
Meas_1Dim : ARRAY[1..45] OF Sensor;
Meas_2Dim : ARRAY[1..10,1..45] OF Sensor;
END_TYPE

Martha Lucia Orozco G. Universidad del Cauca Progra 19


PROGRAMACION AVANZADA DE
PLC`s

Data Structures

•Se usan las palabras claves STRUCT y END_STRUCT


•Puede contener tipos de datos elementales y/o derivados
•Puede tener sub-elementos tipo estructura (anidadas)
•La complejidad depende del programador y la aplicación

Martha Lucia Orozco G. Universidad del Cauca Progra 20


PROGRAMACION AVANZADA DE
PLC`s

TYPE
LimitedRevol : UINT (0..230);
TypLevel : (Idling, SpeedUP1, SpeedUp2, MaxPower);
MotorState
STRUCT
Revolutions : LimitedRevol;
Level : TypLevel;
MaxReached : BOOL;
Failure : BOOL;
Brake : BYTE;
END_STRUCT;
END_TYPE

Martha Lucia Orozco G. Universidad del Cauca Progra 21


PROGRAMACION AVANZADA DE
PLC`s

Varias variables del mismo tipo estructura

TYPE
MultiMotState : ARRAY [1..4] OF MotorState;
END_TYPE

VAR
(*Case 1:*)
Motor1 : MotorState;
(*Case 2:*)
Motors : ARRAY [1..4] OF MotorState;
(*Case 3:*)
FourMotors : MultiMotState;
END_VAR

Martha Lucia Orozco G. Universidad del Cauca Progra 22


PROGRAMACION AVANZADA DE
PLC`s
Ilegal: Recursividad de la estructura A
TYPE
StructureA:
STRUCT
Element1 : INT;
Element2 : StructureB;
Element3 : BYTE;
END_STRUCT;
StructureB:
STRUCT
Elemen1 : LINT;
Element2 : StructureA;
Element3 : WORD;
END_STRUCT;
END_TYPE

Martha Lucia Orozco G. Universidad del Cauca Progra 23


PROGRAMACION AVANZADA DE
PLC`s

Valores Iniciales en la definición de tipos

TYPE
MotorState:
STRUCT
Revolutions : LimitedRevol:=0;
Level : TypeLevel:=Idling;
MaxReached : BOOL:=FALSE;
Failure : BOOL:=FALSE;
Brake : BYTE:=16#FF;
END_STRUCT;
END_TYPE

Martha Lucia Orozco G. Universidad del Cauca Progra 24


PROGRAMACION AVANZADA DE
PLC`s

Forma Abreviada

Valores Iniciales en la definición de tipos

VAR
Field1: ARRAY[1..12] OF SINT:=[3,16#FF,-5,-9,-5,-9,-5,-9,-5,-9,0,0];
Field2: ARRAY[1..12] OF SINT:=[3,16#FF,4(-5,-9),2(0)];
Text: STRING[4]:=‘stop’;
END_VAR

Martha Lucia Orozco G. Universidad del Cauca Progra 25


PROGRAMACION AVANZADA DE
PLC`s
Tipos de Datos Genéricos

ANY
ANY_BIT ANY_NUM ANY_DATE
ANY_INT ANY_REAL

BOOL DATE TIME


INT REAL
BYTE TIME_OF_DAY STRING
SINT LREAL
WORD DATE_AND_TIME derived
DINT
DWORD LINT
LWORD UINT
USINT
UDINT
ULINT

Martha Lucia Orozco G. Universidad del Cauca Progra 26

También podría gustarte