Programacin Avanzada de PLC's 1 PROGRAMACION AVANZADA DE PLCs
nfasis en Automatizacin
Martha Lucia Orozco Gutirrez Martha Lucia Orozco G. Universidad del Cauca Programacin Avanzada de PLC's 2 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 ms crtico 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 Programacin Avanzada de PLC's 3 PROGRAMACION AVANZADA DE PLC`s Tipos de datos elementales: Grupo predefinido y estandarizado Boolean/ Bit String Signed Integer Unsigned Integer Floating Point (real) Time, Duration, Date and Character String BOOL BYTE WORD DWORD LWOPRD INT SINT DSINT LINT UINT USINT UDINT ULINT REAL LREAL TIME DATE TIME_OF_DAY DATE_AND_TIME STRING Martha Lucia Orozco G. Universidad del Cauca Programacin Avanzada de PLC's 4 PROGRAMACION AVANZADA DE PLC`s Tipos de datos elementales estandarizados IEC: Grupos Informacin para cada Tipo de dato Martha Lucia Orozco G. Universidad del Cauca Programacin Avanzada de PLC's 5 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 Programacin Avanzada de PLC's 6 PROGRAMACION AVANZADA DE PLC`s Tipos de datos elementales estandarizados IEC: Tipo de dato signed Integer Martha Lucia Orozco G. Universidad del Cauca Programacin Avanzada de PLC's 7 PROGRAMACION AVANZADA DE PLC`s Tipos de datos elementales estandarizados IEC: Tipo de dato Unsigned Integer Martha Lucia Orozco G. Universidad del Cauca Programacin Avanzada de PLC's 8 PROGRAMACION AVANZADA DE PLC`s Tipos de datos elementales estandarizados IEC: Tipo de dato Real Number Martha Lucia Orozco G. Universidad del Cauca Programacin Avanzada de PLC's 9 PROGRAMACION AVANZADA DE PLC`s Tipos de datos elementales estandarizados IEC: Tipo de dato Date y Time Martha Lucia Orozco G. Universidad del Cauca Programacin Avanzada de PLC's 10 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 Programacin Avanzada de PLC's 11 PROGRAMACION AVANZADA DE PLC`s Tipos de datos elementales estandarizados IEC: TYPE LongFloatNum : LREAL; FloatingPoint : LongFloatNum; InitFloatNum : LREAL :=1.0; tControl : BOOL :=TRUE; END_TYPE Valor inicial diferente al dado por el estndar Martha Lucia Orozco G. Universidad del Cauca Programacin Avanzada de PLC's 12 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 mximo 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 Programacin Avanzada de PLC's 13 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 Programacin Avanzada de PLC's 14 PROGRAMACION AVANZADA DE PLC`s 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 Enumeration: Colour puede tomar 1 de 3 valores posibles Martha Lucia Orozco G. Universidad del Cauca Programacin Avanzada de PLC's 15 PROGRAMACION AVANZADA DE PLC`s 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 Range: Sensor es una variable de temperatura puede tomar valores entre 56 y 128 Martha Lucia Orozco G. Universidad del Cauca Programacin Avanzada de PLC's 16 PROGRAMACION AVANZADA DE PLC`s 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
Array: Measure es un arreglo de datos tipo Sensor Mximo soporta 45 datos
Martha Lucia Orozco G. Universidad del Cauca Programacin Avanzada de PLC's 17 PROGRAMACION AVANZADA DE PLC`s 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
Structure: TestBench es una estructura de datos compuesta de datos elementales y derivados
Martha Lucia Orozco G. Universidad del Cauca Programacin Avanzada de PLC's 18 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 travs del ndice Los sistemas PLC deben generar mensajes de error en caso de exceder el tamao del arreglo Se pueden crear arreglos de varias dimensiones Martha Lucia Orozco G. Universidad del Cauca Programacin Avanzada de PLC's 19 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 Programacin Avanzada de PLC's 20 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 aplicacin
Martha Lucia Orozco G. Universidad del Cauca Programacin Avanzada de PLC's 21 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 Programacin Avanzada de PLC's 22 PROGRAMACION AVANZADA DE PLC`s 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
Varias variables del mismo tipo estructura
Martha Lucia Orozco G. Universidad del Cauca Programacin Avanzada de PLC's 23 PROGRAMACION AVANZADA DE PLC`s TYPE StructureA: STRUCT Element1 : INT; Element2 : StructureB; Element3 : BYTE; END_STRUCT; StructureB: STRUCT Elemen1 : LINT; Element2 : StructureA; Element3 : WORD; END_STRUCT; END_TYPE Ilegal: Recursividad de la estructura A Martha Lucia Orozco G. Universidad del Cauca Programacin Avanzada de PLC's 24 PROGRAMACION AVANZADA DE PLC`s Valores Iniciales en la definicin de tipos
Martha Lucia Orozco G. Universidad del Cauca Programacin Avanzada de PLC's 25 PROGRAMACION AVANZADA DE PLC`s Valores Iniciales en la definicin 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
Forma Abreviada Martha Lucia Orozco G. Universidad del Cauca Programacin Avanzada de PLC's 26 PROGRAMACION AVANZADA DE PLC`s Tipos de Datos Genricos ANY ANY_BIT ANY_NUM ANY_DATE