Sei sulla pagina 1di 46

Objetivos

Despus de terminar la leccin,


alumno deber ser capaz de :

el

Crear tipo de datos derivados.

Conceptos Bsicos

Tipos de datos derivados


Los tipos de datos derivados se definen
con el editor de tipo de datos. Para definir
nuevos tipos de datos se pueden utilizar
todos los tipos de datos elementales y
derivados que existan en un proyecto.
El editor de tipo de datos se abre en
Concept DFB con Fichero Abrir
Formato de fichero Fichero de tipo de
datos (*.DTY).

Utilizacin de tipos de datos


derivados

Definicin de tipos de datos


derivados
La definicin de los tipos de datos
derivados se realiza en forma de texto.
El editor de tipo de datos contiene
comandos para procesar textos.
Al introducir palabras clave, separadores y
comentarios se realiza inmediatamente un
control ortogrfico. Si se reconoce una
palabra clave, un separador o un
comentario, se indicar con otro color.

Nomenclatura
A los tipos de datos derivados se les aplica
la siguiente nomenclatura:
Variable de elementos mltiples
Variable estructurada
Variable de campo

Variable de elementos mltiples


Si a una variable se le asigna un tipo de
datos derivado (campo o estructura), se
designar como variable de elementos
mltiples.

Variable estructurada
Si a una variable se le asigna un tipo de datos
derivado compuesto por varios elementos, sta se
designar como variable estructurada. En este
caso, la declaracin contendr la palabra clave
STRUCT.
Esto tambin es aplicable si este tipo de datos
derivado slo contiene declaraciones ARRAY.
Por ejemplo:
TYPE
EXP:
STRUCT
PAR1: ARRAY [0..1] OF INT;
PAR2: REAL;
PAR3: TEST;
END_STRUCT;
END_TYPE

10

Variable de campo
Si a una variable se le asigna un tipo de
datos derivado compuesto por una nica
declaracin
ARRAY,
la
variable
se
designar como variable de campo. En este
caso no se utilizar la palabra clave
STRUCT.
Por ejemplo:
TYPE
TEST: ARRAY [0..1] OF UINT;
END_TYPE
11

Tipos de datos derivados global


y local
En Concept se diferencia entre los tipos de datos
derivados globales y los locales.
Los tipos de datos derivados globales se pueden
utilizar en todos los proyectos (Concept) o en todos
los DFB (DFB Concept). Los tipos de datos
derivados globales se deben depositar en el
subdirectorio DFB del directorio de Concept. Los
tipos de datos derivados locales slo se conocen
en el contexto de un proyecto o de sus DFB locales
y slo se pueden utilizar all. Los tipos de datos
derivados locales se deben encontrar en el
subdirectorio DFB del directorio del proyecto.
12

Cantidad de ficheros de tipo de


datos
Concept apoya slo un nico fichero de tipo de
datos locales para cada proyecto y slo un nico
fichero de tipo de datos globales. Para garantizar
la consistencia entre el equipo de programacin y
el PLC, se debe cargar de nuevo en el PLC el
proyecto que contenga uno de los tipos de datos
derivados, despus de cada edicin de uno de
estos ficheros.
Si existen dos tipos de datos derivados, uno global
y otro local, con el mismo nombre, el tipo de datos
derivado local tendr prioridad.

13

Sintaxis del Editor de


Tipo de datos

14

15

Elementos de los tipos de datos


derivados

Para crear tipos de datos derivados se


pueden
utilizar
los
siguientes
elementos:
Palabras clave
Nombres
Separadores
Comentarios

16

Ejemplo de un tipo de datos


derivado

17

Palabras clave
Para definir los tipos de datos derivados se
pueden utilizar las siguientes palabras
clave:
TYPE ... END_TYPE
STRUCT ... END_STRUCT
ARRAY
"Tipos de datos"

18

TYPE ... END_TYPE


La palabra clave TYPE denota el comienzo
de las definiciones de tipos de datos. La
palabra clave TYPE se ingresa slo una
vez al comienzo de las definiciones de
tipos de datos y ser vlida para todas las
definiciones de tipos de datos.
La palabra clave END_TYPE denota el final
de las definiciones de tipos de datos.
La palabra clave END_TYPE se ingresa
slo una vez al final de las definiciones de
tipos de datos.
19

STRUCT ... END_STRUCT


La palabra clave STRUCT identifica el
comienzo de los elementos de un tipo de
datos derivado. Las estructuras son
conjuntos de distintos tipos de datos
elementales y tipos de datos derivados. Las
variables a las que se ha asignado uno de
estos tipos de datos derivados, se conocen
como variables estructuradas.
La palabra clave END_STRUCT identifica el
final de los elementos de un tipo de datos
derivado.
20

Sintaxis de STRUCT
STRUCT
NAME1: Tipo de datos;
NAME2: Tipo de datos;
NAMEn: Tipo de datos;
END_STRUCT
STRUCT ...
END_STRUCT

21

ARRAY
En caso de que se vayan a utilizar varios
elementos seguidos del mismo tipo de datos,
puede definirlos con la palabra clave ARRAY como
campo.
Tras la palabra clave ARRAY se indicar el rango,
es decir, el nmero de elementos y, en caso
necesario,
el
nmero
de
subelementos.
Finalmente se indicar el tipo de datos comn a
todos los elementos. Para ello se pueden utilizar
tipos de datos elementales o derivados.
Si a una variable se le asigna un tipo de datos
derivado compuesto por una declaracin ARRAY
en el editor de variables, a esta variable se le
denominar variable de campo.
22

Sintaxis de ARRAY
NAME: ARRAY [n del 1er elemento .. n del
ltimo elemento, n del 1er elemento ..n
del ltimo elemento, etc.] OF Tipo de datos;

23

Ejemplo: ARRAY de una


dimensin
En el siguiente ejemplo se define un tipo de datos
derivado con el nombre par. Este tipo de datos
derivado contiene seis elementos (del par[0] al
par[5]) del tipo de datos BOOL.

par: ARRAY [0..5] OF BOOL;


No es absolutamente necesario que el rango
comience con "0". Puede definir un rango
cualquiera. En el siguiente ejemplo, el tipo de
datos derivado contiene 14 elementos (del par[51]
al par[64]) del tipo de datos BOOL.

par: ARRAY [51..64] OF BOOL;


24

Ejemplo: ARRAY de una dimensin


en variable estructurada
Los ARRAY tambin pueden utilizarse
como elementos en variables estructuradas
(definidas con la palabra clave STRUCT):
Par3: STRUCT
Name1: ARRAY [0..5] OF INT);
Name2: BOOL;
Name3: REAL;
END_STRUCT;
25

ARRAY de varias dimensiones


En los ARRAY de varias dimensiones se
amplan las indicaciones en [ ] tantas veces
como el nmero de subelementos existente
para cada elemento. Esto es, cada
elemento indicado en el ARRAY contiene a
su vez una cantidad determinada de
elementos del mismo tipo de datos.

26

Ejemplo: ARRAY de dos


dimensiones
El siguiente ejemplo muestra un ARRAY de
dos dimensiones.

Par4: ARRAY [0..5, 1..3] OF BOOL;

27

Ejemplo: ARRAY de tres


dimensiones
El siguiente ejemplo muestra un ARRAY de
tres dimensiones.
Par5: ARRAY [0..5, 1..4, 11..14] OF REAL;

28

"Tipos de datos"
Los nombres de los tipos de datos elementales y
los nombres de los tipos de datos derivados
definidos se reconocen como palabras clave (los
nombres de tipos de datos derivados, al contrario
de lo que sucede con los nombres de tipos de
datos elementales, no aparecern en color). Los
tipos de datos debern terminar con el separador
";".
En caso de que en la definicin de un tipo de
datos derivado se utilice otro tipo de datos
derivado, primero deber definir ste ltimo antes
de poder acceder a l.
29

Nombres de tipos de datos


derivados
En el editor de tipo de datos se asigna el
nombre para el tipo de datos derivado y los
nombres para los elementos.
Los nombres no deben exceder los 24
caracteres y deben finalizar con el
separador ":".
Los nombres se indican en negro.

30

Separadores
Para definir los tipos de datos derivados se
pueden utilizar los siguientes separadores:
: (dos puntos)
; (punto y coma)
[ ] (corchetes)
.. (puntos)

31

Separador ": (dos puntos)


Indica el final de un nombre (del tipo de datos
derivado, del elemento).
Ejemplo:
TYPE
Example1:
STRUCT
Name1: BOOL; (* comentario *)
Name2: INT; (* comentario *)
Name3: ARRAY [0..5] OF BOOL;
END_STRUCT;
END_TYPE
32

Separador ";"(punto y coma)


Indica el final de una instruccin.
Ejemplo:
TYPE
Example1:
STRUCT
Name1: BOOL; (* comentario *)
Name2: INT; (* comentario *)
Name3: ARRAY [0..5] OF BOOL;
END_STRUCT;
END_TYPE
33

Separador "[ ] (corchetes)


Contiene la indicacin del rango de la
palabra clave ARRAY.
Ejemplo:
TYPE
Example1:
STRUCT
Name1: BOOL; (* comentario *)
Name2: INT; (* comentario *)
Name3: ARRAY [0..5] OF BOOL;
END_STRUCT;
END_TYPE
34

Separador ".. (puntos)


Separa el inicio y el final del rango de la
palabra clave ARRAY.
Ejemplo:
TYPE
Example1:
STRUCT
Name1: BOOL; (* comentario *)
Name2: INT; (* comentario *)
Name3: ARRAY [0..5] OF BOOL;
END_STRUCT;
END_TYPE
35

Comentarios
En el editor de tipo de datos comienzan los
comentarios con la secuencia de caracteres
(* y terminan con la secuencia de
caracteres *). Entre estas dos secuencias
de caracteres se puede introducir un
comentario cualquiera.
Los comentarios se pueden introducir en
una posicin cualquiera en el editor de tipo
de datos.
Los comentarios se representan en color.
36

Comentarios
Ejemplo:
TYPE
Example1:
STRUCT
Nombre1: BOOL; (* Comentario *)
Nombre2: INT; (* Comentario *)
Nombre3: ARRAY [0..5] OF BOOL;
END_STRUCT;
END_TYPE
37

Llamado de tipos de
datos derivados

38

39

Llamado de tipos de datos


derivados
Tras la definicin de un tipo de datos derivados en
el
editor
de
tipos
de
datos
aparece
automticamente el nombre del tipo de datos
derivados en el editor de variables (columna Tipo
de datos). La asignacin de una variable a un tipo
de datos derivado se realiza de la misma manera
que para los tipos de datos elementales.
La llamada de las variables de elementos mltiples
se puede realizar como entrada de texto de los
diferentes elementos o a travs del cuadro de
dilogo Consultar variables. Tras la seleccin de
una variable de elementos mltiples se puede
seleccionar el elemento correspondiente en el
cuadro de dilogo Seleccionar elemento del tipo.
40

Activado de un elemento de
estructura
Para activar un elemento de estructura se
indica primero el nombre de variable y
entonces, separada por un punto, la
indicacin del nombre de elemento (por
ejemplo
VARIABLE_NOMBRE
.ELEMENTO_NOMBRE). Si este elemento
tambin est compuesto por un tipo de
datos derivados, se indica el nombre del
siguiente elemento, tambin separado por
un
punto
(por
ejemplo
NOMBRE_DE_VARIABLE.NOMBRE_DE_EL
EMENTO.NOMBRE_DE_ SUBELEMENTO)
etc.
41

Activado de un elemento ARRAY


-Para activar un elemento ARRAY se indica
primero el nombre de la variable y, a
continuacin, entre corchetes, el nmero
del
elemento
(p.
ej.,
NOMBRE_DE_VARIABLE[4]).

42

Activado de un elemento ARRAY


en una estructura
Para activar un elemento ARRAY que forma
parte de una estructura, se indica primero
el nombre de la variable, a continuacin,
separado por un punto, el nombre del
elemento y, por ltimo, entre corchetes, el
nmero
del
elemento
(p.
ej.,
VARIABLE_NAME.ELEMENT[4]).

43

Demostracin y
Laboratorio

44

45

46

Potrebbero piacerti anche