Вы находитесь на странице: 1из 457

scaneado por Mac gracias al diablo por pasar su

conocimientos espero que les sirva la gloria de un


hombre no esta en en su sabidura ni su fuerza si no lo
que trasmite a sus semejantes por que por ello sera
recordado por siempre

Ejercicio 11
Descripcin del Un cilindro es accionado por medio de una electrovlvula con retroceso
problema por muelle (bobina Y1). Dos censores de proximidad indican las posi-
ciones "extendida" (82) y "retraldan (B1). El pulsador (SI) se utiliza
para accionar el cilindro de tal forma que avance desde la posicin
retraida a la extendida y viceversa. El cilindro debe avanzar una sola
vez por accionamiento de pulsador. Para disparar un segundo movi-
miento del cilindro, el pulsador debe soltarse y accionarse de nuevo.
croquis de situacin 1
--y
Definicin del ejercicio 1. Trazado del esquema del circuito y montaje del equipo
2. Declaracin de las variables del programa PLC
3. Formulacin del programa de PLC en uno de los diversos lenguajes
de programacin
4. Verificacin y puesta a punto del programa de PLC y del sistema
Ejercicio 11
1. Trazado del esquema del circuito y montaje del equipo Realizacin
Completar el esquema elctrico del circuito en la HOJA DE TRABAJO.
a Montar el equipo necesario en la placa perfilada:
Antes khedl ear y conectar tubos:
Desconectar la alimentacin1
Desconectar la alimentacin del aire!
Cantidad
1
1
1
1
1
1
1
1
1
1
1
Lista de componentes
Descripcin
Control lgico programable
Cable de unin con la unidad de conexin
Unidad de conexin
Unidad de mantenimiento
Distribuidor
Distribuidor de enchufe rpido
Cilindro de simple efecto
Electrovlvula de 512 vlas de una bobina
Entrada de seales elctricas
Sensor de proximidad inductivo
Sensor de proximidad capacitivo
Tubo de plstico
a Establecer las conexiones elctricas y neumticas.
Ejercicio 11
2. Declaracin de las variables de programa del PLC
+ Todas variables deben ser declaradas como variables locales del
programa
a Especificar slo aquellas partes de la declaracin requeridas por la
aplicacin del PLC. Estas son: Designacin, tipo de dato, direccin
- slo si se utilizan variables directamente direccionadas - y comen-
tario sobre las variables.
Nota:
Las partes componentes de la declaracin de variables en esta seccin
del ejercicio estn representadas en forma tabular. Si se utilizan siste-
mas de PLC reales, las entradas y la representacin de la declaracin
de variables depende del sistema utilizado.
3. Formulacin del programa de PLC en uno de los lenguajes de
programacin
a Seleccionar uno de los lenguajes de programacin soportados por el
sistema PLC que se utilice. Los lenguajes adecuados para la forrnula-
cin de sistemas de control lgico son el diagrama de contactos, el
diagrama de funciones, la lista de instrucciones y el texto estructurado.
L
4. Verificacin y puesta a punto de un programa y un sistema PLC
Antes de poner a punto la instalacin:
m Comprobar el circuito montado con ayuda del esquema
Puesta a punto de la instalacin:
m Conectar la fuente de alimentacin utilizando una tensin estn-
dar de 24 V DC!
m Aumentar la presin del aire hasta la de funcionamiento
(ver las fichas tcnicas de los componentes neumticos)
Funcionamiento de la instalacin:
m jmantener despejada la zona de trabajo!
3 Cargar el programa en el PLC
a Realizar una funcin de prueba
3 Corregir cualquier error que pudiera haber en el programa del PLC.
Documentar la solucin.
TP301 Festo Didactic
Ejercicio 11
HOJA DE TRABAJO
-
1. Trazado del esquema del circuito y montaje del equipo
Completar el esquema elctrico del circuito e introducir las direcciones
disponibles de entrada y salida en el PLC que se utilice.
Esquema del
circuito elcfrico
Festo Didactc TP301
Ejercicio 11
Esquema del circuito
electroneumdtiw
Declaracin de variables
HOJA DE TRABAJO
Configurar el sistema de control
2. Declaracin de las variables del programa del PLC
Declarar las variables requeridas en el programa del PLC:
TP301 Festo Didactic
Designacin Direccin Tipo de dato Comentario
Ejercicio 11
HOJA DE TRABAJO
3. Formulacin del programa de PLC en uno de los lenguajes de
programacin
Formular la solucin de la tarea de control en uno de estos lenguajes:
o Diagrama de funciones (FBD)
Diagrama de contactos (LD)
Lista de instrucciones (IL)
Texto estructurado (ST)
Programa del PLC
Festo Ddacfic TP301
Ejercicio 11
HOJA DE TRABAJO
Preguntas Responder a las siguientes preguntas:
1. Qu se entiende por un flanco negativo?
2. 'Qu efecto tiene el periodo de actuacin en la ejecucin del programa?
TP301 Festo Didactic
Ejercicio 12
Controles lgicos programables Tema
Encolado de componentes
Pulso
Ttulo
Ser capaz de utilizar el bloque de funcin estndar TP para generar un Objetivo didctico
pulso de tiempo.
Un gran nmero de tareas de control requieran la programacin de Conocimientos
tiempos. A travs de IEC 131 1-3, se dispone de bloques de funcin tcnicos
estndar para temporizadores con diferentes tipos de respuesta.
Los temporizadores estn disponibles para la realizacin de un pulso
temporal, un retardo a la conexin y un retardo a la desconexin.
Bloque de funcin TP, temporizador de pulso
El bloque de funcin estndar TP (fig. A12.1) es un temporizador de
pulso
La respuesta del bloque de funcin TP es como sigue:
El bloque de funcin TP se pone en marcha con una seal corta o
larga en la entrada IN.
Una vez que el temporizador ha arrancado, aparece una seal 1 en
la salida Q, por el tiempo especificado en la entrada PT.
m El valor actual de tiempo (el tiempo que ha transcurrido desde el
inicio) est disponible en la salida ET.
m El temporizador slo puede arrancar de nuevo una vez que haya
expirado.
Festo Didactic JP301
--
Ejercicio 12
Ejemplo
Tabla A 12.1:
Utilizacin de un
temporizador de pulso
Programacin de un temporizador de pulso en los diferentes
lenguajes
La utilizacin del temporizador de pulso en los diferentes lenguajes de
programacin se muestra con la ayuda del ejemplo dado abajo.
Unas piezas deben sujetarse de forma segura durante un perodo de
12 segundos para un proceso de mecanizado, por medio de un dispo-
sitivo especial accionado por el cilindro Y1. El proceso se inicia accio-
nando el pulsador de marcha SI.
VAR
S1 AT %IX1 : BOOL; (* Pulsador S1 *)
Y1 AT %QX1 : BOOL;
(* Bobina Y1 para el cilindro
*)
TP-Y 1 : TP; (' Temporizador de pulso TP-YI*)
(* para el proceso de sujecin
*)
END-VAR
FBD
TP-Y 1
Bloque temporizador TP-Y1 ,
S 1
conectado con los parametros
indicados.
T#IZs PT ET
LD
TP-Y 1
Interconexin del bloque
temporizador TP-Y1 en el rengln.
TP301 Festo Didactic
Ejercicio 12
IL
- .
CAL TP-Y1 (IN := SI , PT := T#12s) Invocacin del bloque de
funcin TP-Y 1.
LD TP-Y1.Q Lectura de la salida Q de
TP-Y l .
ST Y1 Almacenamiento del
resultado actual en Y1.
ST
TP-Y1 (IN := SI , PT := T#12s);
Invocacin del bloque de
funcin TP-Y 1.
Y1 := TP-Y1.Q;
Asignacin de la salida Q
de TP-Y1 a Y1.
BE-
Tabla A 12.1:
Utilizacin de un
temporizador de pulso
(contiuacidn)
Festo Didactic TP301
Ejercicio 12
Descripcin del Dos componentes deben ser encolados con la ayuda de un cilindro
problema neumtico 1.0. Para ello, las superficies a encolar se presionan entre
s con una determinada fuerza por un perodo de 5 segundos. El tiem-
po empieza a contar desde que el cilindro abandona su posicin final
retrada (sensor B1). Una vez transcurridos los 5 segundos, el cilindro
regresa a su posicin inicial. El proceso de encolado se inicia por me-
dio del pulsador SI.
Croquis de situacin 1
Definicin del ejercicio 1. Trazado del esquema del circuito y montaje del equipo
2. Declaracin de las variables del programa PLC
3. Formulacin del programa de PLC en uno de los diversos lenguajes
de programacin
4. Verificacin y puesta a punto del programa de PLC y del sistema.
TP301 Festo Didactic
Ejercicio 12
1. Trazado del esquema del circuito y montaje del equipo Realizacin
* Completar el esquema elctrico del circuito en la HOJA DE TRABAJO.
* Montar el equipo necesario en la placa perfilada:
Antes de cablear y conectar los tubos:
jDesconectar la alimentacin!
m Cortar el aire comprimido en la unidad de mantenimiento!
Quantty
1
1
1
1
1
1
1
1
1
1
Lista de componentes
Description
Control 16gico programable
Cable de unin de la unidad de conexin
Unidad de conexin
Unidad de matenimiento
Distribuidor
Distribuidor de enchufe rpido
Cilindro de simple efecto
Electrov~lvula de 512 vlas de una bobina
Entrada de seales el6ctricas
Sensor de proximidad inductivo-magntico
Tubo de plstico
a Establecer las conexiones elctricas y neumticas.
Festo Didactic TP301
Ejercicio 12
2. Declaracin de las variables del programa del PLC
a Todas variables deben ser declaradas como variables locales del
programa.
3 Especificar slo aquellas partes de la declaracin requeridas por la
aplicacin del PLC. Estas son: Designacin, tipo de dato, direccin
- slo si se utilizan variables directamente direccionadas - y comen-
tario sobre las variables.
Nota:
Las partes componentes de la declaracin de variables en esta seccin
del ejercicio estn representadas en forma tabular. Si se utilizan siste-
mas de PLC reales, las entradas y la representacin de la declaracin
de variables depende del sistema utilizado.
3. Formulacin del programa de PLC en uno de los lenguajes de
programacin
=. Seleccionar uno de los lenguajes de programacin soportados por el
sistema PLC que se utilice. Los lenguajes adecuados para la formula-
cin de sistemas de control lgico son el diagrama de contactos, el
diagrama de funciones, la lista de instrucciones y el texto estructurado.
4. Verificacin y puesta a punto de un programa y un sistema PLC
Antes de la puesta en marcha de la instalacin:
m Comprobar el circuito montado con ayuda del esquema
Puesta a punto de la instalacin:
m Conectar la fuente de alimentacin utilizando una tensin estn-
dar de 24 V DC!
m Aumentar la presin del aire de alimentacin en la unidad de man-
tenimiento (ver ficha tcnica de los componentes neumticos)
Funcionamiento de la instalacin
m Mantener el entorno de trabajo despejado
Cargar el programa en el PLC
3 Realizar una funcin de prueba
3 Corregir cualquier error que pudiera haber en el programa del PLC.
3 Documentar la solucin.
TP301 Festo Didactic
Ejercicio 12
HOJA DE TRABAJO
1. Trazado del esquema del circuito y montaje del equipo
Completar el esquema elctrico del circuito e introducir las direcciones
disponibles de entrada y salida en el PLC que se utilice.
Esquema del circuito
el6ctrico
Festo Didactic TP301
Ejercicio 12
Esquema del circuito
eleclroneumtico
Declaracin de variables
HOJA DE TRABAJO
Configurar el sistema de control
2. Declaracin de las variables del programa del PLC
Declarar las variables requeridas en el programa del PLC:
TP301 Festo Didactic
Comentario Denominacin Tipo de datos Direccin
Ejercicio 12
HOJA DE TRABAJO
3. Formulacin del programa de PLC en uno de los lenguajes de
programacin
Formular la solucin de la tarea de control en uno de estos lenguajes:
n Diagrama de funciones (FBD)
Diagrama de contactos (LD)
Lista de instrucciones-flL)
D Texto estructurado (ST)
Programa del PLC
Festo Didacffc TP301
- ~
Ejercicio 12
HOJA DE TRABAJO
Preguntas Responder a las siguientes preguntas::
1. Especificar en nombre y la funcin de los parmetros del temporiza-
dor de pulso.
Fig. A12.2:
Tiempo de respuesta del
ternporizador de pulso
2. Cul es la respuesta del temporizador, si se da una nueva seal
de marcha antes de que expire el tiempo?
Completar el diagrama.
Ejercicio 13
-
Controles lgicos programables Tema
Dispositivo de marcado
Seal con retardo a la conexin
Ttulo
Ser capaz de realizar un retardo a la conexin de una seal utilizando Objetivo didctico
el bloque de funcin estndar TON
Bloque de funcin TON, Retardo a la conexin Conocimientos
El bloque de funcin estndar TON se utiliza para generar un retardo a tcnicos
la conexin.
BOOL
El comportamiento del bloque de funcin TON es como sigue:
m El bloque de funcin TON se pone en marcha por medio de una
seal 1 en la entrada IN.
m Una vez que ha expirado el tiempo especificado en la entrada PT,
en la salida Q aparece una seal 1. La seal 1 en la salida Q
permanece hasta que la seal de entrada IN vuelve a O.
m Si la duracin de la seal de entrada IN es menor que el tiempo
especificado en PT, el valor de la salida Q permanece en O.
m El valor actual del tiempo (el tiempo transcurrido desde el comienzo)
est disponible en la salida ET.
Festo Didactic TP301
Ejercicio 73
Ejemplo
Tabla A 13.1:
Utilizacin de un
temponzador a la conexin
Programacin de un seal con retardo a la conexin en l os
distintos lenguajes
En el siguiente ejemplo se demuestra la utilizacin de un retardo a la
conexin de una seal:
La puerta de un autobs se cierra cuando la zona de embarque ha
permanecido despejada durante un tiempo especificado (5 segundos).
Esto se supervisa por medio de una barrera fotoelctrica.
VAR
B1 AT : BOOL; (' Barrera fotoelctrica
Y1 AT %QX1 : BOOL;
(. Bobina Y1 del cilindro de
*)
(' cerrar la puerta
*)
TON-Y 1
*)
: TON;
(* Seal temporizada a la conexin *)
(' TON-Y1 para cerrar la puerta
*)
END-VAR
FBD
TON-Y 1
Conexin de entradas y salidas
B 1
del bloque de funcin TON-Y1
j zt
con 10s pargmetros actuales.
T#5s PT ET
LD
TON-Y 1
Interconexin del bloque de funcin
TON-Y1 en el rengln.
Ejercicio 13
I L . .
CAL TON-Y1 (IN := 81, PT := T#5s) Invocacin del bloque de
funcin TON-Y1.
LD TON-Y1.Q ' Lectura de la salida Q de
TON-Y 1.
ST Y1 Almacenamiento del resultado
actual en Y1.
ST
TON-Y 1 (IN := 61, PT := T#5s); Invocacin del bloque de
funcin TON-Y1 .
Y1 := TON-Y1.Q; Asignacin de la salida Q
de TON-Y1 a Y1.
Tabla A13.1:
UtilUacn de un
ternporizador a la conexin
(continuacidn)
Ejercicio 13
Descripcin del Una pieza debe marcarse accionando un pulsador (SI). Para asegurar
problema que el ciclo de marcado no se pone en marcha inadvertidamente, de-
ber mantenerse presionado el pulsador durante ms de tres segun-
dos. La posicin de cilindro 1.0 se establece por medio de los interrup-
tores de proximidad B1 (retrafdo) y 82 (extendido).
Croquis de situacin 1
.. -
Definicin del ejercicio 1. Trazado del esquema del circuito y montaje del equipo
2. Declaracin de las variables del programa PLC
3. Formulacin del programa de PLC en uno de los diversos lenguajes
de programacin
4. Verificacin y puesta a punto del programa de PLC y del sistema
TP301 'e Festo Didactic
Ejercicio 13
1. Trazado del esquema del circuito y montaje del equipo Realizacin
3 Completar el esquema elctrico del circuito en la HOJA DE TRABAJO.
Montar el equipo necesario en la placa perfilada:
Antes de cablear y conectar los tubos:
iDesconectar la alimentacin!
m Cortar el aire comprimido en la unidad de mantenimiento!
Cantidad
1
1
1
1
1
1
1
1
1
1
1
Lista de wmponentes
Descripcin
Control lgico programable
Cable de unin para la unidad de conexin
Unidad de conexin
Unidad de mantenimiento
Distribuidor
Distribuidor de enchufe rpido
Cilindro de simple efecto
Electrovivula de 512 vias de una bobina
Entra& de seales elctricas
Sensor de proximidad inductivo
Sensor de proximidad capacitivo
Tubo de plstico
3 Establecer las conexiones elctricas y neumticas.
Festo Didactic TP301
Ejercicio 13
2. Declaracin de las variables del programa del PLC
Todas variables deben ser declaradas como variables locales.
3 Especificar slo aquellas partes de la declaracin requeridas por la
aplicacin del PLC. Estas son: Designacin, tipo de dato, direccin
- slo si se utilizan variables directamente direccionadas - y comen-
tario sobre las variables.
Nota:
Las partes componentes de la declaracin de variables en esta seccin
del ejercicio estn representadas en forma tabular. Si se utilizan siste-
mas de PLC reales, las entradas y la representacin de la declaracin
de variables depende del sistema utilizado.
3. Formulacin del programa de PLC en uno de los lenguajes de
programacin
3 Seleccionar uno de los lenguajes de programacin soportados por el
sistema PLC que se utilice. Los lenguajes adecuados para la formula-
cin de sistemas de control lgico son el diagrama de contactos, el
diagrama de funciones, la lista de instrucciones y el texto estructurado.
4. Verificacin y puesta a punto de un programa y un sistema PLC
Antes de poner a punto la instalacin:
Comprobar el circuito montado con ayuda del esquema
Puesta a punto de la instalacin:
m Conectar la fuente de alimentacin utilizando una tensin estn-
dar de 24 V DC!
m Aumentar la presin del aire de alimentacin en la unidad de man-
tenimiento (ver ficha tcnica de los componentes neumticos)
Funcionamiento de la instalacin
m Mantener el entorno de trabajo despejado
+ Cargar el programa en el PLC
3 Realizar una funcin de prueba
3 Corregir cualquier error que pudiera haber en el programa del PLC.
+ Documentar la solucin.
TP301 Festo Didactic
Ejercicio 13
HOJA DE TRABAJO
-
1. Trazado del esquema del circuito y montaje del equipo
Completar el esquema elctrico del circuito e introducir las direcciones
disponibles de entrada y salida en el PLC que se utilice.
Esquema del
circuito el6ctrim
Festo Didactic TP30 1
Ejercicio 13
Configurar el sistema de control.
Esquema del circuito,
electro-neumtico
Declaracin de variables 1
2. Declaracin de las variables del programa del PLC
Declarar las variables requeridas en el programa del PLC:
TP301 e Festo Ddactic
Comentario Designacin Tipo de datos Direccin
Ejercicio 13
3. Formulacin del programa de PLC en uno de los lenguajes de
programacin
Formular la solucin de la tarea de control en uno de estos lenguajes:
D Diagrama de funciones (FBD)
D Diagrama de contactos (LD)
Lista de instrucciones (IL)
D Texto estructurado (ST)
Programa del PLC
Festo Didaclic TP302
Ejercicio 13
HOJA DE TRABAJO
Pregunta Responder a la siguiente pregunta:
1. El ciclo de marcado ya se ha iniciado. Si no se suelta el pulsador,
qu efectos tiene en la ejecucin del programa?
TP301 Festo Didactic
Ejercicio 14
Controles lgicos programables
Dispositivo de fijacin
Seal con retardo a la desconexin
Tema
Ttulo
Ser capaz de realizar una temporizacin a la desconexin utilizando el Objetivo diddctiw
bloque de funcin estndar TOF
Bloque de funcin TOF, retardo a la desconexin Conocimientos
El bloque de funcin estndar TOF (fig. A14.l)'se utiliza para generar tcnicos
retardos de seales a la desconexin.
BOOL
El comportamiento de un bloque de funcin TOF es como sigue:
m El bloque de funcin TOF se pone en marcha con una seal 1 en la
entrada IN. Inmediatamente la salida Q adopta el valor 1.
m Una vez que la seal IN ha pasado de nuevo al valor O, la salida Q
sigue teniendo seal 1 durante el fiempo especificado en la entrada
PT, transcurrido el cual vuelve a adoptar el valor O.
Festo Didactic JP301
4
Ejercicio 14
Ejemplo
Programacin de un temporizador con retardo a la desconexi n
en l os diferentes lenguajes
A continuacin se muestra un ejemplo de utilizacin de un temporiza-
dor a la desconexin:
La puerta de un horno incluye un bloqueo de forma que no debe poder
abrirse instantneamente durante el proceso. Si se emite una seal de
apertura del horno, la puerta solamente se desbloquear una vez
transcurridos 10 minutos.
Tabla A14.1:
Utilizacin de un retardo a
la desconexin
VAR
Doo~-closed AT %MX1: BOOL; Memoria para enclavamien-*)
(' to de la puerta del horno
*)
Y1 AT %QX1: BOOL; (' Bobina Y1 para el cil. de *)
(' apertura de la puerta.
TOF-Door
*)
TOF; (. Seal de desconexin re- *)
(' tardada TOF-Door *)
E N D-VAR
FBD
TOF-Door
Conexin de entradas y
salidas del bloque de funcin
Door-closed TOF-Door con los parhrnetros
actuales.
LD
TOF-Door t
D o o ~ l o q ~ ~ y lq
Interconexin del bloque de
funcin TOF-Door
T#lOm PT ET
en el rengln.
TP301 Festo Ddactic
IL
. .
CAL TOF-Door (IN := Door-closed, PT := T#lOrn) Invocacin del bloque
de funcin TOF-Door.
LD TOF-D0or.Q Lectura de la salida
Q de TOF-Door.
ST Y1 Almacenamiento de
resultado actual de Y1
ST
TOF-Door (IN := Door-closed, PT := T#l Orn); Invocacin del bloque
de funcin TOF-Door.
Y1 := TOF-D0or.Q; Asignacin de la salida
Q de TOF-Door a Y 1.
Ejercicio 14
Tabla A14.7:
Utjlizacin de un retardo a
la desconexin
(continuacin)
Ejercicio 14
Descripcidn del Un8 pieza debe sujetarse activando el pulsador de marcha SI. Cuando
problema la pieza es sujeta por el cilindro 1 .O, el cilindro 2.0 avanza y marca la
pieza. Dado que la pieza necesita un tiempo para enfriarse, permanece
sujeta durante 3 segundos. Este tiempo empieza con el avance del
cilindro 1 :O.
Croquis de situacin (
Definicin del ejercicio 1. Trazado del esquema del circuito y montaje del equipo
2. Declaracin de las variables del programa PLC
3. Formulacin del programa de PLC en uno de los diversos lenguajes
de programacin
4. Verificacin y puesta a punto del programa de PLC y del sistema
TP301 Festo Didactic
Ejercicio 14
1. Trazado del esquema del circuito y montaje del equipo . Realizacin
Completar el esquema elctrico del circuito en la HOJA DE TRABAJO
Montar el equipo necesario en la placa perfilada:
Antes de cablear y conectar los tubos:
Desconectar la alimentacin!
Cortar el aire comprimido en la unidad de mantenimiento!
Cantidad
1
1
1
1
1
1
1
1
1
1
1
4
1
Tabla A 14.1:
Lista de componentes
Descnjlcin
Control lgico programable
Cable de unin para la unidad de conexin
Unidad de conexin
Unidad de mantenimiento
Distribuidor
Distribuidor de enchufe rpido
Cilindro de simple efecto
Cilindro de doble efecto
Electrovlvula de 52 vlas de una bobina
Electrovlvula de 52 vias de dos bobinas
Entrada de seales elctricas
Sensor de proximidad inductivo
Disiribuidor de enchufe rpido
Tubo de plstico
3 Establecer las conexiones elctricas y neumticas.
Festo Didactic TP301
Ejercicio 14
2. Declaracin de las variables del programa del PLC
* Todas variables deben ser declaradas como variables locales del
programa
* Especificar slo aquellas partes de la declaracin requeridas por la
aplicacin del PLC. Estas son: Designacin, tipo de dato, direccin
- slo si se utilizan variables directamente direccionadas - y comen-
tario sobre las variables.
Nota:
Las partes componentes de la declaracin de variables en esta seccin
del ejercicio estn representadas en forma tabular. Si se utilizan siste-
mas de PLC reales, las entradas y la representacin de la declaracin
de variables depende del sistema utilizado.
3. Formulacin del programa de PLC en uno de los lenguajes de
programacin
Seleccionar uno de los lenguajes de programacin soportados por el
sistema PLC que se utilice. Los lenguajes adecuados para la formula-
cin de sistemas de control lgico son el diagrama de contactos, el
diagrama de funciones, la lista de insttycciones y el texto estructurado.
4. Verificacin y puesta a punto de un programa y un sistema PLC
Antes de poner a punto la instalacin:
Comprobar el circuito montado con ayuda del esquema
Puesta a punto de la instalacin:
iconectar la fuente de alimentacin utilizando una tensin estn-
dar de 24 V DC!
m Aumentar la presin del aire de alimentacin en la unidad de man-
tenimiento (ver ficha tcnica de los componentes neumticos)
Funcionamiento de la instalacin
Mantener el entorno de trabajo despejado
-
a Cargar el programa en el PLC
3 Realizar una funcin de prueba
Corregir cualquier error que pudiera haber en el programa del PLC.
Documentar la solucin.
TP301 Festo Didactic
Ejercicio 14
HOJA DE TRABAJO
1. Trazado del esquema del circuito y montaje del equipo
\
Completar el esquema elctrico del circuito e introducir las direcciones
disponibles de entrada y salida en el PLC que se utilice.
PLC I
Esquema del
circuito elctrico
Festo Didactic TP301
Ejercicio 14
Esquema del circuito
electroneumtico
Declaracin de variables
HOJA DE TRABAJO
Configurar el sistema de control
2. Declaracin de las variables del programa del PLC
Declarar las variables requeridas en el programa del PLC:
TP301 Festo Didaclic
HOJA DE TRABAJO
3. Formulacin del programa de PLC en uno de los lenguajes de
programacin
Formular la solucin de la tarea de control en uno de estos lenguajes:
Diagrama de funciones (FBD)
D Diagrama de contactos (LD)
Lista de instrucciones (IL)
D Texto estructurado (ST)
Programa del PLC
Festo Didactic TP301
Ejercicio 14
HOJA DE TRABAJO
Pregunta Responder a la siguiente pregunta:
1. A travs de qu seal empieza a contar el temporizador con retar-
do a la desconexin?
Ejercicio 15
-
Controles lgicos programables Tema
Dispositivo elevador para paquetes
Secuencia lineal
Ttulo
Ser capaz de disear y representar sistemas secuenciales de control Objetivo didctico
simples segn IEC 848.
m Ser capaz de programar un sistema de control secuencial consisten-
te en una secuencia lineal
m Ser capaz de utilizar el lenguaje de programacin Diagrama de Fun-
ciones Secuencia1
Sistemas de control secuenciales Conocimientos
Los sistemas de control secuencial describen procesos que suceden tcnicos
en varias etapas claramente separadas.
La transicin de una etapa a la siguiente depende del estado del pro-
ceso. El proceso puede derivarse en procesos parciales en relacin
con el estado del proceso establecido.
Por lo tanto, el programa de un sistema de control secuencial debe
cumplir con tres funciones bsicas:
Acciones ejecutivas:
Etapa
Condiciones de tran-
sicin (condiciones de
recorrido para la con-
tinuacin del programa
Derivaciones
vacin de salidas
Activacin y desactl-
vacin de memorias.
Activacin y arranque
de temporizadores y
contadores
tradas y memorias
Interrogacin de
temporizadores
Interrogacin de
contadores
recorrido
- Seguimiento de reco-
ridos en paralelo
I
Fig. A15.1:
Funciones de un
programa de control
Festo Didaciic TP301
Ejercicio 15
Representacin general de un sistema de control secuencial
El diagrama de funciones secuencial segn IEC 848 es adecuado para
la descripcin y planificacin de sistemas de control secuenciales. Per-
mite una clara representacin grfica del comportamiento y funciona-
miento de un sistema de control secuencial.
Establecer posicin inicial
6
t
Pieza en almacn, cilindro 1 .O y cilindro 2.0
en posicin retralda
S Cilindro 1 .O avanza
o
t
2.1: Cilindro 1 .O avanzado y
pieza expulsada
S Cilindro 2.0 avanza
0
t
3.1: Cilindro 2.0 avanzado
S 1 Cilindro 2..0 retrocede ( 1 1
I t
4.1: Cilindro 2.0 ha retrocedido
S ( Cilindro 1 .Oretrocede
( 1 1
l t
5.1: Cilindro 1.0 ha retrocedido
Fg. A 15.2:
Ejemplo de un sistema
de control secuencia/
El ejemplo mostrado describe la siguiente tarea de control:
Se alimenta una pieza desde un almacn por gravedad para su poste-
rior mecanizado. La pieza es extrada del almacn por el cilindro 1.0 y
transferida hacia una cinta transportadora por una rampa por medio de
un segundo cilindro 2.0.
TP301 Festo Didactic
Ejercicio 15
Programacin de un sistema de control secuencial por medio del
Diagrama de Funciones Secuencia1
Los sistemas de control secuencial pueden programarse de forma fcil
y sencilla utilizando el diagrama de funciones secuencial. El diagrama de
funciones secuencial procede del diagrama de funciones segn IEC 848.
El ejemplo mostrado en la fig. A15.3 ilustra la utilizacin del diagrama
de funciones secuencial para el control de la tarea mencionada arriba.
m Etapa => Clasificacin en acciones
m Transicin => Descripcin por medio de condiciones de transicin
m Derivacin alternativa y unin
m Derivacin en paralelo y unin
Cuando se pone en marcha el programa del PLC, la etapa designada
como inicial S1 se activa automticamente. A menudo, en esta etapa
inicial suele situarse el sistema en su posicin de partida. En el ejem-
plo mostrado', la etapa S1 es una etapa vaca. Si se cumplen las condi-
ciones de habilitacin de la siguiente etapa - los cilindros 1.0 y 2.0
estn retraldos y el almacn contiene piezas - se activa la etapa S2 y
se desactiva la SI. Hay que observar que los nombres de las etapas
representan nombres en el sentido de IEC 1131-3. Por lo tanto deben
empezar con una letra o un signo de subrayado. Adems, en la medi-
da que esto es posible por el proceso concerniente, en el tercer campo
se especifica la variable que se ver afectada al final de la accin
indicada.
En la etapa S2, el cilindro 1.0 ha avanzado por la activacin de la
bobina de la electrovlvula Y1. Al llegar a su posicin final delantera y
estando la pieza en posicin correcta (B2 = l ), se desactiva la etapa
S2 y se activa la S3. El cilindro 1.0 permanece extendido como resulta-
do del cualificador S (=SeVActivar). En la etapa 3, el cilindro 2.0 avan-
za por el efecto de la activacin de la electrovAlvula Y2 y transfiere la
pieza a una rampa. El cilindro 2.0 retrocede de nuevo una vez que ha
alcanzado su posicin final delantera. Si el sensor 85 seala que se ha
alcanzado la posicin final retrada del cilindro 2.0, el cilindro 1.0 tam-
bin retrocede. El sensor 83 seala ahora el final de la secuencia y el
programa regresa al principio. Toda la secuencia de las etapas se repi-
te de nuevo.
Festo Didactic TP301
Ejercicio 15
Fig. A 15.3:
Ejemplo de un diagrama
de funciones secuencial
VAR
Y1 AT %QX1 : BOOL;
Y2 AT %QX2 : BOOL;
B1 AT %IX1 : BOOL;
82 AT %IX2 : BOOL;
B3 AT %IX3 : BOOL;
B4 AT %IX4 : BOOL;
B5 AT %IX5 : BOOL;
B6 AT %IX6 : BOOL;
(* Bobina Y1, Cilindro 1 .O
(' Bobina Y2, Cilindro 2.0
(' Pieza en almacn
(' Pieza expulsada
(' Cilindro 1 .O retrado
(* Cilindro 1 .O extendido
(* Cilindro 2.0 retrado
(' Cilindro 2.0 extendido
Ejercicio 15
Fig. A 15.3:
Ejemplo de un diagrama
de funciones secuencia1
VAR
Y1 AT
Y2 AT
B1 AT
82 AT
83 AT
B4 AT
B5 AT
B6 AT
: BOOL;
: BOOL;
: BOOL;
: BOOL;
: BOOL;
: BOOL;
: BOOL;
: BOOL;
(* Bobina Y1, Cilindro 1 .O
(* Bobina Y2, Cilindro 2.0
(* Pieza en almacn
(* Pieza expulsada
(* Cilindro 1.0 retrado
(* Cilindro 1 .O extendido
(* Cilindro 2.0 retraido
(* Cilindro 2.0 extendido
TP301 Festo Didactic
Ejercicio 15
Generacin de una secuencia de etapas por medio de elementos
memorizantes RS
La secuencia de etapas puede generarse utilizando elementos memori-
zantes si el lenguaje de diagrama de funciones -secuencial no es so-
portado directamente como programa del PLC que se utilice.
Etapa n-1
Condiciones de habilitacin
para la etapa n
Etapa n+l R
Cada etapa es asignada a un flip-flop RS. Este memoriza el estado de
cada etapa. El flip-flop correspondiente est activado, si la etapa en
proceso se est ejecutando; si la etapa est inactiva, el flip-flop se
desactiva.
Como se muestra en la fig. A15.4, las condiciones de partida para
cualquier etapa n (dentro de la secuencia de una etapa) son: .
La etapa precedente n-1 est activa
Se cumple la condicin de habilitacin para la etapa.
Cada etapa es desactivada por la etapa siguiente.
De esta forma, las etapas individuales de una secuencia de etapas se
procesan consecutivamente.
La estructura de una secuencia de etapas se establece en detalle en la
fig. A15.5. El lenguaje FBD se utiliza para la programacin de las ta-
reas de control en la fig. A15.2 Todas las acciones se producen como
aciones booleanas.
--
Ejercicio 15
Fig. A 75.5:
Ejemplo de una secuencia
de etapas con elementos
memorizantes RS
VAR
Y1 AT %QX1 : BOOL;
Y2 AT %QX2 : BOOL;
B1 AT %IX1 : BOOL;
B2 AT %IX2 : BOOL;
B3 AT %IX3 : BOOL;
B4 AT %IX4 : BOOL;
85 AT %IX5 : BOOL;
B6 AT %IX6 : BOOL;
RS-S1 : RS;
RS S2 : RS;
R S ~ S ~ : RS;
RS-S4 : RS;
RSS5 : RS;
RS-Y 1 : RS;
RS-Y2 : RS;
(' Bobina Y1, Cilindro 1 .O
(' Bobina Y2, Cilindro 2.0
(' Pieza en almacn
(' Pieza expulsada
(* Cilindro 1 .O retrado
(' Cilindro 1 .O extendido
(' Cilindro 2.0 retraido
(* Cilindro 2.0 extendido
(' Flip-flop para Etapa S1
(* Flip-flop para Etapa S2
(' Flip-flop para Etapa S3
(' Flip-flop para Etapa S4
(' Flip-flop para Etapa S5
(' Flip-flop para bobina Y1
(' Flipflop para bobina Y2
(' Programacin de la secuencia de etapas *)
RS-S 1
(* Activacin del ")
RS-S2.Ql
(' Etapa S1 *)
TP301 Festo Didactic
RS-SI.Ql -
B3 -
85 -
B1 -
& -
(* Etapa S2 *)
RS-S3.Ql R1
(* flipflop para *)
RS-S2
(* Activacin del *)
- S
RS
Q1
- ~ - -
Ejercicio 15
RS-S3
(' Activacin del *)
(* flip-flop para *)
RcS4. QI - - - - ni 1 i Etapa S3 *)
RS-S4
(' Activacin del *)
(' fligflop para *)
RS-S5.QI ('Etapa S4 *)
RS-S5
(' Activacidn del *)
(* flip-flop para *)
RS-S1 .Q1 R1 (' Etapa S5 *)
(* Programacin de la seccin de potencia *)
I
RS-Y 1
RS-S.QI 4 ;l R s Q q k
(* (' Cilindro Bobina Y1 1 .O para *)
RS_S5.Q1
*)
RS-Y 2
RS-S3.QI $ :I RSQl Y2
(* (' Cilindro Bobina Y2 2.0 para *) *)
RS- 9. Ql
La programacin de la secuencia de etapas requiere una ampliacin
de la seccin de declaracin en la fig. A15.3.
Se necesita un flip-flop RS adicionalmente para cada etapa. Adems,
el estado de las bobinas Y1 e Y2 estn almacenadas por medio de
flip-flops.
El programa consiste en
Fig. A15.5:
Ejemplo de una secuencia
de etapas con elementos
memorizantes RS
(continuacin)
m Secuencia de etapas
m Seccin de potencia (para la activacin de las salidas)
Ejercicio 15
Descripcin del Un transportador de rodillos es supervisado por un sensor de proximi-
problema dad 61, para comprobar si hay un paquete presente. Si es este el
caso, el paquete es empujado por un cilindro 1 .O (cilindro de elevacin)
y a continuacin es transferido a otro transportador por medio del cilin-
dro 2.0 (cilindro de transferencia).
El cilindro 1.0 debe retroceder primero, seguido del cilindro 2.0. Los
cilindros avanzan y retroceden por medio de electrovlvulas (bobinas
Y1 e Y2). Las posiciones del cilindro se supervisan por medio de los
interruptores de proximidad 82 o B5.
En el lado de la alimentacin, los paquetes han sido previamente.dis-
puestos de forma tal que llegan al dispositivo de alimentacin indivi-
dualmente.
Croquis de situacidn 1
TP301 Fesio Didactic
Ejercicio 15
1. Trazado del esquema del circuito y montaje del equipo Definicin del ejercicio
2. Descripcin de la tarea de control por medio del diagrama de funcio-
nes secuencial IEC 848
3. Declaracin de las variables del programa PLC
4. Formulacin del programa de PLC por medio del diagrama de fun-
ciones secuencial IEC 848
o Programacin de las condiciones de transicin directamente en
uno de los lenguajes FBD, LD o ST
o Especificacin de las acciones como acciones booleanas
5. Verificacin y puesta a punto del programa de PLC y del sistema.
1. Trazado del esquema del circuito y montaje del equipo
3 Completar el esquema elctrico del circuito en la HOJA DE TRABAJO.
3 Montar el equipo necesario en la placa perfilada:
Desconectar la alimentacin!
Cortar el aire comprimido en la unidad de mantenimiento!
Cantidad
1
1
1
1
-
1
2
2
1
4
Lista de componentes
Descn'pcin
Control lgico programable
Cable de unin para la unidad de conexin
Unidad de conexin
Unidad de mantenimiento
Disttibuidor
Cilindro de doble efecto
Electrovlvula de 512 vas de una bobina
Sensw de proximidad ptico
Censor de proximidad inductivo
Tubo & plstico
+ Establecer las conexiones elctricas y neumticas.
Ejercicio 15
2. Descripcin de la tarea de control por medio del diagrama de
funciones segn IEC 848
+ Creacin del programa en diagrama de funciones segn IEC 848.
3. Declaracin de las variables del programa del PLC
Todas variables deben ser declaradas como variables locales del
programa.
Especificar slo aquellas partes de la declaracin requeridas por la
aplicacin del PLC. Estas son: Designacin, tipo de dato, direccin
- slo si se utilizan variables directamente direccionadas - y comen-
tario sobre las variables.
Nota:
Las partes componentes de la declaracin de variables en esta seccin
del ejercicio estn representadas en forma tabular. Si se utilizan siste-
mas de PLC reales, las entradas y la representacin de la declaracin
de variables depende del sistema utilizado.
4. Formulacin del programa de PLC en diagrama de funciones se-
cuencial
3 Disear la estructura de la secuencia en etapas y transiciones.
Programar las condiciones de transicin directamente en uno de los
lenguajes FBD, LD o ST.
* Formular las acciones asociadas con las etapas directamente como
acciones booleanas.
* Crear la estructura de etapas copiando los pasos en los elementos
memorizantes si el diagrama de funciones secuencial no est direc-
tamente soportado por el PLC que se utilice.
TP301 Festo Didactic
Ejercicio 15
5. Verificacin y puesta a punto de un programa y un sistema PLC
-
Antes de poner a punto la instalacin:
Comprobar el circuito montado con ayuda del esquema
Puesta a punto de la instalacin:
Conectar la fuente de alimentacin utilizando una tensin estn-
dar de 24 V DC!
Aumentar la presin del aire de alimentacin en la unidad de man-
tenimiento (ver ficha tcnica de los componentes neumticos)
Puesta a punto de la instalacin:
B Mantener el entorno de trabajo despejado
Cargar el programa en el PLC
a Realizar una funcin de prueba
Corregir cualquier error que pudiera haber en el programa del PLC.
3 Documentar la solucin.
Festo Didactic TP301
Ejercicio 15
HOJA DE TRABAJO
1. Trazado del esquema del circuito y montaje del equipo
Completar el esquema elctrico del circuito e introducir las direcciones
disponibles de entrada y salida en el PLC que se utilice.
Festo Didactic TP301
Ejercicio 15
HOJA DE TRABAJO
Configurar el sistema de control
Esquema del circuito
electroneumtico
2. Descripcin de la tarea de control por medio del diagrama de
funciones segn IEC 848
a Creacin del programa en diagrama de funciones segn IEC 848.
TP301 Festo Ddactic
HOJA DE TRABAJO
3. Declaracin de las variables del programa del PLC
Declarar las variables requeridas en el programa del PLC:
4. Formulacin del programa de PLC en diagrama de funciones se-
cuencial
Declaracin de variables
Festo Didactic TP301
Ejercicio 15
HOJA DE TRABAJO
Preguntas Responder a las siguientes preguntas:
1. &Cul es la funcin de una etapa sin acciones asociadas?
2. Cul es la respuesta del programa en diagrama de funciones se-
cuencial si la accin de la etapa S3: "Avanzar cilindro 2.0" se pro-
grama como accin no-memorizante?
TP301 Festo Didactic
Ejercicio 16
Controles lgicos programabks Tema
Dispositivo elevador y clasificador para paquetes
Secuencia con desvo alternativo
Ttulo
Ser capaz de programar un sistema de control secuencial con una de- Objetivo didctico
rivacin alternativa
Sistema de control, secuencia1 con derivacin alternativa Conocimientos
Hay sistemas de control secuencial, en los que deben preverse dife- tcnicos
rentes secuencias. Una secuencia es seleccionada dependiendo de las
seales originadas por el proceso.
1
1 Verificar posicion iniciai 1
t
Pieza pequeiia
t
Pieza grande
t 2.1 : Pieza fijada t 4.1: Pieza fijada
N 1 Estampar pieza 1 1 1 N 1 Estampar pieza 1 1 ]
3.1: Pieza estampada 5.1 : Pieza estampada
S Liberar pieza
16rKr_=..
1 t 6.1: Pieza liberada
N Expulsar pieza
w
u
7.1: Pieza expulsada
Fg. A16.1:
Ejemplo de sistema de
control secuencial con
derivacin alternativa
Festo Didactic TP301
Ejercicio 16
Un ejemplo de una secuencia de control as, puede representarse por
una herramienta de estampacin que estampa piezas pequeas o
grandes por medio de dos cilindros diferentes.
La fig. A16.1 ilustra el diagrama de funciones segn IEC 848 para el
ejemplo mencionado arriba.
El desvfo alternativo es representado por tantas transiciones como se-
cuencias posibles existan.
Para seleccionar slo una opcin, las condiciones de transicin deben
excluirse mutuamente.
Hay disponibles dos, secuencias para la seleccin en el ejemplo dado.
S se detectan piezas pequeas, solamente se procesan los pasos 1,
2, 3, 6 y 7. Si hay presente una pieza grande, el programa deriva al las
etapas 4, 5 6, y 7 despus de la etapa 1.
Programacin de un control secuencia1 con derivacin alternativa
Los sistemas secuenciales representados en diagrama de funciones
segn IEC 848 son fciles de programar con el diagrama de funciones
secuenciales. En el programa listado abajo, las condiciones de transi-
cin han sido formuladas en el lenguaje ST.
La etapa inicial S1 est activa tras el arranque del programa. S1 es
una etapa vaca, es decir, no se han asignado acciones a esta etapa.
Si todos los cilindros estn retrados y hay presente una pieza peque-
a, se activa la etapa S2 y se desactiva la etapa SI. La pieza es a
continuacin fijada, estampada, liberada y finalmente expulsada.
Si se ha detectado una pieza grande (B1=l y B2=1), las etapas SI ,
S4, S5, S6 y S7 se ejecutan consecutivamente.
A continuacin, el procesamiento de las etapas empieza de nuevo con
la etapa SI.
TP301 Festo Didactic
Ejercicio 16
VAR
B1 AT %IX1.0 : BOOL;
B2 AT %lX1.1 : BOOL;
B3 AT %IX2.0 i: BOOL;
B4 AT %IX2.1 : BOOL;
B5 AT %IX2.2 : BOOL;
B6 AT %IX2.3 : BOOL;
B7 AT %IX2.4 : BOOL;
88 AT %IX2.5 : BOOL;
B9 AT %IX2.6 : BOOL;
B10 AT %IX2.7 : BOOL;
Y1 AT %QX1.0 : BOOL;
Y2 AT %QX1.1 : BOOL;
Y3 AT %QX1.2 : BOOL;
Y4 AT %QX1.3 : BOOL;
(* pieza grande o pequea
*)
(* slo para pieza grande
*)
(* cilindro 1 .O retrado
*)
(* cilindro 1 .O extendido
(' cilindro 2.0 retrado
*)
*)
(* cilindro 2.0 extendido *)
(* cilindro 3.0 retrado *)
(* cilindro 3.0 extendido *)
(' cilindro 4.0 retrado *)
(* cilindro 4.0 extendido *)
(* cilindro 1.0: fijacin *)
(* cilindro 2.0: estampar pequ. *)
(* cilindro 3.0: estampar grande *)
(' cilindro 4.0: explusor *)
Fig. A 16.2:
Ejemplo de diagrama de
funciones secuencia1 con
derivacin alternativa
Festo Didactic TP301
Ejercicio 16
En el ejemplo anterior, las acciones de las etapas S3, S5 y S7 son
programadas como, no-memorizantes. Esto se indica por el calificador
N. Por lo tanto, las variables booleanas solamente tienen seal 1 rnien-
tras las etapas asociadas estn activas.
Si el PLC utilizado no dispone de la opcin de programar directamente
en diagrama de funciones secuencial, la secuencia de etapas puede
generarse en este caso utilizando elementos memorizantes.
TP301 Festo Didactic
Ejercicio 16
Unos paquetes son transportados hacia un dispositivo de medida en Descripcin del
un transportador de rodillos para establecer su tamao. Hay dos tama- problema
os de paquetes diferentes: Paquetes largos y cortos. El dispositivo de
medicin lineal suministra seal O para; los paquetes cortos y seal 1
para paquetes largos.
A continuacin, el paquete llega a una plataforma elevadora. La se-
cuencia empieza con el pulsador de MARCHA SI. Los paquetes son
elevados por un dispositivo elevador 1.0. A continuacin los paquetes
son clasificados: los paquetes cortos se transfieren a un segundo
transportador por medio del cilindro 2.0 y los largos a un tercer trans-
portador por medio del cilindro 3.0. El cilindro de elevacin 1 .O debe
retroceder de nuevo una vez que los cilindros 2.0 y 3.0 hayan alcanza-
do su posicin final retrada.
Las posiciones del cilindro se detectan por medio de interruptores de pro-
ximidad 61 a B6. El cilindro 1.0 avanza y retrocede por medio de una
electrovlvula de dos bobinas Y1 e Y2. Los cilindros 2.0 y 3.0 avanzan y
retroceden por medio de las electrovlwlas de una sola bobina (bobinas
Y3 e Y4).
1 Croquis de siluaci6n
Festo Didactic TP301
Ejercicio 16
Definicin del ejercicio Trazado del esquema del circuito y montaje del equipo
2. Descripcin de la tarea de control por medio del diagrama de funcio-
nes secuencial IEC 848
3. Declaracin de las variables del programa PLC
4. Formulacin del programa de PLC por medio del diagrama de fun-
ciones secuencial
o Programacin de las condiciones de transicin directamente en
uno de los lenguajes FBD, LD o ST
o Especificacin de las acciones como acciones booleanas
5. Verificacin y puesta a punto del programa de PLC y del sistema.
Realizacin 1. Trazado del esquema del circuito y montaje del equipo
3 Completar el esquema elctrico del circuito en la HOJA DE TRABAJO.
Montar el equipo necesario en la placa perfilada:
Lista de componentes
TP301 Festo Didactic
Cantidad
1
1
1
1
1
1
1
2
2
1
1
1
1
4
-
Designacin
Control 16gico programable
Cable de unin para la unidad de conexin
Unidad de conexin
Unidad de mantenimiento
Distribuidor
Conector de enchufe rpido
Cilindro de simple efecto
Cilindro de doble efecto
Electrovlvula de 5/2 vlas de una bobina
Electrovlvula de 5/2 vlas de dos bobinas
Entrada de sefiales elctricas
Sensor de proximidad capacitivo
Sensor de proximidad ptico
Sensor de proximidad inductivo
Tubo de plstico
Ejercicio 16
Antes de cablear y conectar los tubos:
Desconectar la alimentacin!
Cortar el aire comprimido en la unidad de mantenimiento!
+ Establecer las conexiones elctricas y neumticas.
2. Descripcin de la tarea de control por medio del diagrama de
funciones segn IEC 848
+ Creacin del programa en diagrama de funciones segn IEC 848.
3. Declaracin de las variables del programa del PLC
a Todas variables deben ser declaradas como variables locales del
programa.
* Especificar slo aquellas partes de la declaracin requeridas por la
aplicacin del PLC. Estas son: Designacin, tipo de dato, direccin
- slo si se utilizan variables directamente direccionadas - y comen-
tario sobre las variables. .
Nota:
Las partes componentes de la declaracin de variables en esta seccin
del ejercicio estn representadas en forma tabular. Si se utilizan siste-
mas de PLC reales, las entradas y la representacin de la declaracin
de variables depende del sistema utilizado.
4. Formulacin del programa de PLC en diagrama de funciones se-
cuencial
Disear la estructura de la secuencia en etapas y transiciones.
a Programar las condiciones de transicin directamente en uno de los
lenguajes FBD, LD o ST.
3 Formular las acciones asociadas con las etapas directamente como
acciones booleanas.
3 Crear la estructura de etapas copiando los pasos en los elementos
memorizantes si el diagrama de funciones secuencia1 no est direc-
tamente soportado por el PLC que se utilice.
Festo Didactic TP301
Ejercicio 16
-
5. Verificacin y puesta a punto de un programa y un sistema PLC
Antes de poner a punto la instalacin:
m Comprobar el circuito montado con ayuda del esquema
Puesta a punto de la instalacin:
m Conectar la fuente de alimentacin utilizando una tensin estn-
dar de 24 V DC!
m Aumentar la presin del aire de alimentacin en la unidad de man-
tenimiento (ver ficha tcnica de los componentes neumticos) .
Funcionamiento de la instalacin
m Mantener el entorno de trabajo despejado
3 Cargar el programa en el PLC
a Realizar una funcin de prueba
3 Corregir cualquier error que pudiera haber en el programa del PLC.
+ Documentar la solucin.
TP307 Festo Didactic
Ejercicio 16
HOJA DE TRABAJO
1. Trazado del esquema del circuito y montaje del equipo
Completar el esquema elctrico del circuito e introducir las direcciones
disponibles de entrada y salida en el PLC que se utilice.
Esquema del
circuito elctrico
r
Fesio Didactic TP301
. .
24V
-
OV
O
PLC
I I I I 1 1 I
Ejercicio 16
HOJA DE TRABAJO
Configurar el sistema de control
Esquema del circuito
electroneumtico
2. Descripcin de la tarea de control por medio del diagrama de
funciones segn IEC 848
2 Creacin del programa en diagrama de funciones segn IEC 848.
Preguntas Responder a las siguientes preguntas:
1. 'Cul es el criterio de clasificacin segn el cual se evalan los pa-
quetes?
2. Cmo se asegura que se seleccione una sola secuencia de etapas
durante la ejecucin del programa?
TP301 Festo Didactic
Ejercicio 16
HOJA DE TRABAJO
3. Declaracin de las variables del programa del PLC
Declarar las variables requeridas en el programa del PLC:
Declaracin de variables
4. Formulacin del programa de PLC en diagrama de funciones se-
cuencial
Festo Didactic TP301
Ejercicio 16
HOJA DE TRABAJO
Pregunta Responder a la siguiente pregunta:
3. Especificar cules son las condiciones de transicin que siempre
son ciertas. Por qu se formulan estas condiciones de transicin?
TP301 Festo Didactic
Ejercicio 17
Controles lgicos programables Tema
Dispositivo de estampacin con contador
Ciclos de conteo
Poder realizar ciclos de conteo por medio de la utilizacin de los mdu- Objetivo didctico
los de funcin estndar CTU o CTD
Los ciclos de conteo forma parte de las operaciones bsicas de un Conocimientos
PLC. IED 1131-3 define tres bloques de funcin estndar: CTU (conta- tcnicos
dor incremental), CI D (contador decremental) y CTUD (contador incre-
mentalldecremental) para la realizacin de estas operaciones.
1
Bloque de funcin CTU, contador incremental
El bloque de funcin CTU (fig. A17.1) realiza un contador incremental.
Su interface est definido por medio de tres parmetros de entrada y
dos de salida.
BOOL
INT
El comportamiento caracterstico de un contador incremental es como
sigue:
Una seal 1 en la entrada de reset R, pone el estado CV del conta-
dor a O.
= A continuacin, el valor CV del contador se incrementa en 1 a cada
flanco ascendente en la entrada CU.
= Aparece una seal 1 en la salida Q en el momento en que el valor
actual CV es igual o mayor que el valor preseleccionado PV. La
salida Q tiene valor O mientras el estado actual CV del contador sea
inferior al valor preseleccionado PV.
Festo Didactic, TP301
Ejercicio 17
Bloque de funcin CTD, contador decremental
Bloque de funcin CTD (fig. A17.2) siendo un contador decremental
funciona de forma opuesta al bloque de funcin CTU.
BOOL
INT
El comportamiento de un contador decremental es como sigue:
m Una seal 1 en la entrada LD establece el estado del contador CV
al valor preseleccionado PV.
m Cada flanco ascendente en la entrada CD decrementa el estado del
contador CV en 1.
m La salida Q muestra seal O mientras el estado actual del contador
CV sea mayor de O. Solamente cuando el valor actual es menor o
igual a O, aparece una seal 1 en la salida Q.
TP301 Festo Didactic
Ejercicio 17
Uso del bloque de funcin CTU en cada uno de los lenguajes de
programacin
La utilizacin del bloque de funcin se demuestra con un ejemplo de
una pequea tarea de envasado.
En una caja hay que poner 12 unidades de una determinada pieza. Ejemplo
Una vez llena una caja, aparece otra. Cada ciclo de envasado se dis-
para con una memoria (flag) M-init. Las piezas son detectadas por
medio de un censor B1. El estado del contador es copiado a una me-
moria M-new.
VAR
B1 AT %IXl.O : BOOL; (' detecta pieza para envasar ')
M-init AT %MX1 .O : BOOL; (* detecta si el contador tiene
*)
(' que ser inicializado *)
M-new AT %MX1.1 : BOOL; (* detecta si se requiere una
*)
(* nueva caja *)
CTU-1 : CTU; (' Contador incremental *)
(' CTU-1 para el recuento *)
END-VAR
FBD
Bloque de funcin CTU-1,
conectado con los
B1 4-1 M-new parmetros actuales.
M-init '
12 PV cv
LD
CTU-1
Interconexin del bloque de
funcin CTU-1 en el rengln.
PV cv
Tabla A17.1:
Aolicacin de un
contador incremental
Festo Didactic TP301
Ejercicio 17
Tabla A17.1:
(Continuacin)
I L
CAL CTU-1 (CU := 61, R := M-init, PV := 12) Invocacin del bloque
de funcin CTU-1
LD CTU-1.Q Lectura de la salida
Q de CTU-1
ST M-new Almacenamiento del resultado
actual en M-new
ST
CTU-1 (CU := B1, R := M-init, PV := 12);
Invocacin del bloque
de funcin CTU-1
M-new := CTU-1 .Q; Asignacin de la salida Q
de CTU-1 a M-new
TP301 Festo Didactic
Ejercicio 17
En una mquina se estampan 10 piezas cada vez. El ciclo del progra- Descripcin del
ma se inicia poy medio de un pulsador SI. El interruptor de proximidad problema
87 indica "Pieza en almacn". Cada pieza se alimenta hacia la mquina
por medio de un cilindro 1.0 y se sujeta. A continuacin se estampa a
travs del cilindro 2.0 y despus se expulsa por medio del cilindro 3.0.
El cilindro de sujecin 1.0 funciona por medio de una electrovlvula de
doble bobina Y1 (sujecin) e Y2 (liberacin). Los cilindros 2.0 y 3.0 son
controlados por electrovlvulas con retorno por muelle con las bobinas
Y3 e Y4. Las posiciones de los cilindros son detectadas por los inte-
rruptores de proximidad B1 a B6.
1 Croquis de situacibn
Festo Didactic TP307
Ejercicio 17
Definicin del ejercicio 1. Trazado del esquema del circuito y montaje del equipo
, .
2. Descripcin de la tarea de control por medio del diagrama de funcio-
nes secuencial IEC 848
3. Declaracin de las variables del programa PLC
4. Formulacin del programa de PLC por medio del diagrama de fun-
ciones secuencial
0 Programacin de las condiciones de transicin directamente en
uno de los lenguajes FBD, LD o ST
D Especificacin de las acciones
5. Verificacin y puesta a punto del programa de PLC y del sistema.
Realizacin 1. Trazado del esquema del circuito y montaje del equipo
3 Completar el esquema elctrico del circuito en la HOJA DE TRABAJO.
Montar el equipo necesario en la placa perfilada:
Lista de componentes I
TP301 Festo Didactic
I
Cantidad
1
1
1
1
1
1
1
2
2
1
1
1
1
1
4
I
Descripcin
Control lgico programable
Cable de unin para la unidad de conexin
Unidad de conexin
Unidad de mantenimiento
Distribuidor
Distribuidor de enchufe rpido
Cilindro de simple efecto
Cilindro de doble efecto
Electrovlvula de 512 vas de una bobina
Electrovlvula de 512 vias de dos bobinas
Entrada de seales elctricas
Sensor de proximidad capacitivo
Sensor de proximidad ptico
Sensor de proximidad inductivo
Sensor de proximidad inductivo
Tubo de plstico
Ejercicio 17
Antes de cablear y conectar los tubos:
-
m Desconectar la alimentacin!
m Cortar el aire comprimido en la unidad de mantenimiento!
+ Establecer las conexiones elctricas y neumticas.
2. Descripcin de la tarea de control por medio del diagrama de
funciones segn IEC 848
3 Creacin del programa en diagrama de funciones segn IEC 848.
3. Declaracin de las variables del programa del PLC
Todas variables deben ser declaradas como variables locales del
programa.
L
+ Especificar slo aquellas partes de la declaracin requeridas por la
aplicacin del PLC. Estas son: Designacin, tipo de dato, direccin
- slo si se utilizan variables directamente direccionadas - y comen-
tario sobre las variables.
Nota:
Las partes componentes de la declaracin de variables en esta seccin
del ejercicio estn representadas en forma tabular. Si se utilizan siste-
mas de PLC reales, las entradas y la representacin de la declaracin
de variables depende del sistema utilizado.
4. Formulacin del programa de PLC en diagrama de funciones se-
cuencial
Disear la estructura de la secuencia en etapas y transiciones.
+ Programar las condiciones de transicin directamente en uno de los
lenguajes FBD, LD o ST.
Formular las acciones asociadas con las etapas. Para las acciones
consistentes en ms de una variable booleana, es obligatorio intro-
ducir un nombre para la accin.
3 Crear la estructura de etapas copiando los pasos en los elementos
memorizantes si el diagrama de funciones secuencia1 no est direc-
tamente soportado por el PLC que se utilice.
Ejercicio 17
-
5. Verificacin y puesta a punto de un programa y un sistema PLC
Antes de poner a punto la instalacin:
Comprobar el circuito montado con ayuda del esquema
Puesta a punto de la instalacin:
Conectar la fuente de alimentacin utilizando una tensin estn-
dar de 24 V DC!
Aumentar la presin del aire de alimentacin en la unidad de man-
tenimiento (ver ficha tcnica de los componentes neumticos)
Funcionamiento de la instalacin
Mantener el entorno de trabajo despejado
3 Cargar el programa en el PLC
4
Realizar una funcin de prueba
=, Corregir cualquier error que pudiera haber en el programa del PLC.
a Documentar la solucin.
TP301 Festo Didactic
Ejercicio 17
HOJA DE TRABAJO
1. Trazado del esquema del circuito y montaje del equipo
Completar el esquema elctrico del circuito e introducir las direcciones
disponibles de entrada y salida en el PLC que se utilice.
Esquema del
circuito elctrico
Festo Didactic TP301
A- 168
Ejercicio 17
HOJA DE TRABAJO
Configurar el sistema de control.
Esquema del circuito
electroneumtico
2. Descripcin de la tarea de control por medio del diagrama de
funciones segn IEC 848
3 Creacin del programa en diagrama de funciones segn IEC 848.
TP301 Festo Didactic
Ejercicio 17
HOJA DE TRABAJO
3. Declaracin de las variables del programa del PLC
Declarar las variables requeridas en el programa del PLC:
Declaracidn de variables
Festo Didactic TP301
Ejercicio 17
HOJA DE TRABAJO
4. Formulacin del programa de PLC en diagrama de funciones se-
cuencial
TP301 Fesfo Didactic
HOJA DE TRABAJO
Responder a la siguiente pregunta:
1. Cuando cambia el estado del contador?
Ejercicio 17
Preguntas
Festo Didactic TP301
.
.................... Captulo 1 Automatizando con un PLC B-1
......................................
1.1 Introduccin 8-2
..................... 1.2 Campos de aplicacin de un PLC B-2
........................... 1.3 Diseo bsico de un PLC 8-5
................. 1.4 El nuevo estndar para PLC IEC 11 31 8-8
............................... Captulo 2 Fundamentos B-11
................... 2.1 El sistema de numeracin decimal B-12
.................... 2.2 El sistema de numeracin binario 8-12
...................................
2.3 El cdigo BCD 8-14
............... 2.4 El sistema de numeracin hexadecimal 8-14
........................
2.5 Nmeros binarios con signo 8-15
..................................
2.6 Nmeros reales 8-15
............. 2.7 Generacin de seales binarias y digitales 516
...................... Captulo 3 Operaciones Booleanas 6-19
.......................... 3.1 Funciones lgicas bsicas 8-20
.......................... 3.2 Otras operaciones lgicas 0-24
.......... 3.3 Establecimiento de funciones de conmutacin B-26
................... 3.4 Simplificacin de funciones lgicas B-28
.......................
3.5 Diagrama de Karnaugh.Veitch B-30
... Captulo 4 Diseo y modo de funcionamiento de un PLC 6-33
.............................
4.1 Estructura de un PLC 8-34
.......... 4.2 Unidad de procesamiento principal de un PLC 8-36
.................. 4.3 Modo de funcionamiento de un PLC B-38
. . . . . . . . . . . . . . . 4.4 Memoria del programa de la aplicacin B-40
...............................
4.5 Mdulo de Entradas 542
................................
4.6 Mdulo de Salidas 8-44
............ 4.7 Aparato programador / Ordenador personal B-46
TP301 Festo Didactic
................... Captulo 5 Programacin de un PLC .- B-49
................
5.1 Bsqueda de una solucin sistemtica 8-50
............ 5.2 Recursos de estructuracin de IEC 1131-3 B-53
.........................
5.3 Lenguajes de programacin B-56
.......... Captulo 6 Elementos comunes de los lenguajes B-61
..............................
6.1 Recursos de un PLC 8-62
..........................
6.2 Tipos de datos y variables B-66
.............. 6.3 Unidades de organizacin de programas B-76
.............. Captulo 7 Diagrama de bloques de funcin 591
......... 7.1 Elementos del diagrama de bloques de funcin 8-92
...............................
7.2 Evaluacin de redes 8-93
...............................
7.3 Estructuras de bucle 8-94
......................
Captulo 8 Diagrama de contactos 8-95
.................
8.1 Elementos del diagrama de contactos B-96
......................
8.2 Funciones y bloques de funcin B-98
........................
8.3 Evaluacin de los renglones B-99
......................
Captulo 9 Lista de instrucciones B-101
....................................
9.1 Instrucciones 8-1 02
.....................................
9.2 Operadores 8-103
......................
9.3 Funciones y bloques de funcin 8-1 04
........................
Captulo 10 Texto estructurado B-107
....................................
10.1 Expresiones B-108
....................................
10.2 Instrucciones 6-1 10
.........................
10.3 Instrucciones de seleccin B-112
..........................
10.4 Instrucciones de iteracin 8-115
Festo Didactk TP307
.......... Captulo 1 1 Diagrama de funciones secuencia1 B-119
11.1 Introduccin .................................... B-120
11.2 Elementos del diagrama de funciones secuencial . . . . . . 8-120
1 1.3 Transiciones .................................... B-130
11.4 Pasos ......................................... B-133
11.5 Ejemplo ....................................... 8-143
Captulo 12 Sistemas de control lgico .................. 8-147
12.1 Qu es un sistema de control lgico ................. B-148
12.2 Sistema de control Igico sin propiedades memorizantes B-148
12.3 Sistema de control Igico con propiedades memorizantes 8-154
12.4 Evaluacin de flancos ............................. 8-157
Captulo 13 Temporizadores .......................... 8-161
13.1 Introduccin .................................... B-162
13.2 Temporizador de pulsos ........................... B-163
13.3 Seal con retado a la conexin ..................... 8-165
13.4 Seal con retado a la desconexin .................. B-167
Captulo 14 Contadores ............................... B-171
14.1 Funciones de contador ........................... 8-172
14.2 Contador incremental ............................. B-172
14.3 Contador decremental . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-176
14.4 Contador incrernental/decremental .................. B-178
.............. Captulo 15 Sistemas de control secuencia1 B-179
15.1 Qu es un sistema de control secuencial ............. B-180
15.2 Diagrama de funciones segn IEC 848 .............. B-180
15.3 Diagrama desplazamiento-fase ..................... B-186
TP301 Festo Didactic
Captulo 16 Puesta a punto y seguridad en el manejo
de un PLC ............................... B-187
16.1 Puesta a punto .................................. 8-1 88
16.2 Seguridad en el manejo de un PLC .................. B-190
Captulo 17 Comunicaciones .......................... 8-195
17.1 La necesidad de comunicacin ..................... B-196
17.2 Transmisin de datos ............................. 8-1 96
17.3 Interfaces ...................................... 5197
17.4 Comunicacin a nivel de campo .................... B-198
Festo Didactic TP301
Prefacio
Los Controles Lgicos ~ro~ramabl es' ) representan un factor clave en
la automatizacin industrial. Su utilizacin permite una adaptacin flexi-
ble a los procesos cambiantes, as como una rpida localizacin de
averas y eliminacin de errores.
Este libro de texto explica los principios de un control programable y su
interaccin con sus~perifricos.
Uno de los puntos centrales de este libro de texto trata del nuevo
estndar internacional para programacin de PLCs, el IEC-1131, Parte 3.
Este estndar tiene en cuenta las ampliaciones y desarrollos, para los
cuales no existan elementos de lenguaje estandarizado hasta ahora.
El objetivo de IEC-1131-3 es estandarizar el diseo, la funcionalidad y
la programacin de un PLC de tal forma que el usuario pueda manejar
con facilidad los diferentes sistemas.
En inters de la posterior mejora de este libro, se invita a los lectores a
contribuir con sus sugerencias, ideas y crticas constructivas.
Los autores
1 ) Nota del traductor:
La traduccin ms extendida de la expresin Inglesa 'Programable Lo-
gic Control' es %ontrol Lgico Programable'. A pesar de ello, su acr-
nimo castellanizado CLP no ha tenido una plena aceptacin en los
medios industriales, que siguen utilizando con ms frecuencia el acr-
nimo Ingls PLC.
Otras denominaciones de estos equipos son:
'Autmata Programable Industrial' o simplemente 'Autmata Industrial'
(Al), procedente del francs y 'Mando Programable en Memoria', pro-
.
cedente del alemn 'Speicherprogrammierbare Steuerungen' (SPS).
En este libro de texto hemos utilizado la denominacin Control Lgico
Programable, con su acrnimo Ingls PLC.
JP301 Festo Didactic
Captulo 1
Captulo 1
El PLC en la
tecnologa de automatizacin
Festo Didactic TP301
Captulo 1
1.1 Introduccin
El primer Control ~ ~ i c . 0 Programable (Programmable Logic Control o
PLC) fue desarrollado por un grupo de ingenieros en la General Motors
en 1968, cuando la empresa estaba buscando una alternativa para
reemplazar los complejos sistemas de control por rels.
El nuevo sistema de control tena que cumplir con los siguientes reque-
rimientos:
Programacin sencilla
Cambios de programa sin intervencin en el sistema (sin tener que
rehacer el cableado interno)
Ms pequeo, ms econmico y ms fiable que los correspondien-
tes sistemas de control por rels
Sencillo y con bajo coste de mantenimiento
Los sucesivos desarrollos llevaron a un sistema que permitia la conexin
sencilla de seales binarias. Los requerimientos de cmo estaban conec-
tadas estas seales se especificaba en el programa de control. Con los
nuevos sistemas, fue posible por primera vez mostrar las seales en una
pantalla y archivar los programas en memorias electrnicas.
Desde entonces han pasado tres dcadas, durante las cuales los enor-
mes progresos hechos en el desarrollo de la micro electrnica han
favorecido la proliferacin de los controles Igicos programables. Por
ejemplo, a pesar de que en sus comienzos, la optimizacin del progra-
ma y con ello la necesidad de reducir la ocupacin de memoria repre-
sentaba una tarea importante para el programador, en la actualidad
esto apenas tiene importancia.
Adems, las funciones disponibles han crecido considerablemente.
Hace quince aos, la visualizacin de procesos, el procesamiento ana-
lgico o incluso la utilizacin de un PLC como un regulador, eran con-
siderados una utopa. Actualmente, muchos de estos elementos son
parte integral de muchos PLCs.
En las pginas siguientes de este captulo de introduccin, describire-
mos el diseo bsico de un PLC junto con las tareas y aplicaciones
ms importantes actualmente.
reas de Todas las mquinas o sistemas automticos tienen un control: Dependien-
aplicacin do del tipo de tecnologa utilizada, los controles pueden dividirse en neum-
de un PLC
ticos, hidrulicos, elctricos y electrnicos. Con frecuencia se utiliza una
combinacin de las diferentes tecnologas. Adems, debe distinguirse entre
controles con programa cableado (es decir, conexionado fsico de c o mp
nentes electromecnicos (rels, etc) o componentes electrnicos (circuitos
integrados)) y controles lgicos programables. Los primeros se utilizan prin-
cipalmente en casos en los que la reprogramacin por el usuario est fuera
de toda duda y el alcance de la tarea justifica el desarrollo de un sistema
de control especial. Las aplicaciones tpicas de tales controles pueden ha-
llarse en los electrodomsticos, vdeo cmaras, vehculos, etc.
~ -
Captulo 1
Sin embargo, si la tarea de control no justifica el desarrollo de un control
especial, o si el usuario debe tener la posibilidad de hacer cambios senci-
llos, o de modificar tiempos o valores de contadores, entonces el uso de
un control universal, en el que el programa se escribe en una memoria
electrnica, es la opcin preferida. El PLC representa un control universal.
Puede utilizarse para dierentes aplicaciones y, dado que el programa se
halla escrito en su memoria electrnica, el usuario puede modificar, am-
pliar y optimizar con cierta sencillez sus procesos de control.
Fig. 61.1:
Ejemplo de
de un PLC
La tarea original de un PLC es la interconexin de seales de entrada, de
acuerdo con un determinado programa y, si el resultado de esta interco-
nexin es "cierta", activar la correspondiente salida. El lgebra de Boole
forma la base matemtica para esta operacin, ya que solamente recono-
ce dos estados definidos de una variable: 'O" (falso) y "1" (cierto) (vase
tambin el captulo 3). Consecuentemente, una salida slo asume estos
dos estados. Por ejemplo, una electrovhnila conectada a la salida puede
estar act~ada o desactivada, es decir, controlada.
aplicacin
Capitulo 1
Esta funcin ha acuado el nombre de PLC: Programmable Logic
Control o Control Lgico Programable. En l, el comportamiento de
las entradaskalidas es similar al de los controles realizados con rels
electromagnticos o con elementos lgicos neumticos o electrnicos;
la diferencia reside en que el programa en lugar de estar 'tableado'
est almacenado en una memoria electrnica.
Sin embargo las tareas del PLC se ampliaron rpidamente: las funcio-
nes de temporizacin y recuento, operaciones de clculo matemtico,
conversin de seales analgicas, etc. representan funciones que pue-
den ejecutarse en casi todos los PLCs actuales.
Las demandas que se requieren de los PLCs siguen creciendo al mis-
mo ritmo que su amplia utilizacin y desarrollo en la tecnologa de
automatizacin. Por ejemplo: la visualizacin, es decir, la repre-
sentacin de los estados de las mquinas o la supervisin de la ejecu-
cin del programa por medio de una pantalla o monitor. Tambin el
control directo, es decir, la facilidad de intervenir en los procesos de
control o, alternativamente, impedir tal intervencin a las personas no
autorizadas. Tambin se ha visto la necesidad de interconectar y armo-
nizar sistemas individuales controlados por PLC, por medio de redes o
buses de campo. Aqu, un ordenador master permite la generacin de
rdenes de mayor nivel para el procesamiento de programas en los
diversos sistemas PLC interconectados.
La conexin en red de varios PLCs, asi como la de un PLC con el
ordenador master se realiza por medio de interfaces de comunicacin
especiales. Para ello, la mayoria de los ms recientes PLCs son com-
patibles con sistemas de bus abiertos estandarizados, tales como Pro-
fibus segn DIN 19 245. Gracias al enorme aumento de la potencia y
capacidad de los PLCs avanzados, estos pueden incluso asumir direc-
tamente la funcin de un ordenador master.
Hacia finales de los setenta, las entradas y salidas binarias fueron fi-
nalmente ampliadas con la adicin de entradas y salidas analgicas,
ya que hay muchas aplicaciones tcnicas que emiten y requieren sea-
les analgicas (medicin de fuerzas, velocidades, sistemas de posicio-
nado servoneumticos. etc.). Al mismo tiempo la adquisicin y emisin
de seales analgicas permite la comparacin de valores reales con
los de consigna y, como consecuencia, la realizacin de funciones de
regulacin automtica; una tarea que va ms all del mbito que su-
giere el nombre de control lgico programable.
TP301 Festo Didactic
-
Captulo 1
Los PLCs que existen actualmente el mercado han sido adaptados a los
requerimientos de los clientes hasta tal punto que ya es posible adquirir
un PLC exactamente adaptado para casi cada aplicacin. As, hay dispo-
nibles actualmente desde PLCs en miniatura con unas decenas de entra-
dadsalidas hasta grandes PLCs con miles de entradashlidas.
Muchos PLCs pueden ampliarse por medio de mdulos adicionales de
entradaslsalidas, mdulos analgicos y de comunicacin. Hay PLCs
disponibles para sistemas de seguridad, barcos o tareas de mineria.
Otros PLCs son capaces de procesar varios programas al mismo tiem-
po (Multitarea). Finalmente, los PLCs pueden conectarse con otros
componentes de automatizacin, creando as reas considerablemente
amplias de aplicacin.
Fig. 81.2:
Eiem~lo de un PLC:
El trmino 'Control Lgico Programable' se define en IEC 1131, Parte 1, 1.3 Definicin bsica
como sigue: de un PLC
'Un sistema electrnico de funcionamiento digital, diseado para ser
utilizado en un entorno industrial, que utiliza una memoria programable
para el almacenamiento interno de instrucciones orientadas al usuario,
para la realizacin de funciones especificas tales como enlaces lgi-
cos, secuenciacin, temporizacin, recuento y clculo, para controlar, a
travs de entradas y salidas digitales o analgicas, diversos tipos de
mquinas o procesos. Tanto el PLC como sus periifricos asociados
estn diseados de forma que puedan integrarse fcilmente en un sis-
tema de control industrial y ser fcilmente utilizados en todas las apli-
caciones para las que estn previstos."
Festo Didaciic TP301
Captulo 1
Fig. B1.3:
Componentes de un
sistema PLC
Por lo tanto, un control lgico programable es sencillamente un ordena-
dor, adaptado especificamente para ciertas tareas de control.
La Fig. B1.3 ilustra los componentes del sistema de un PLC
La funcin de un mdulo de entrada es la de convertir seales de
entrada en seales que puedan ser procesadas por el PLC y pasarlas
a la unidad de control central. La tarea inversa es realizada por el
mdulo de salida. Este convierte las seales del PLC en seales ade-
cuadas para los actuadores.
El verdadero procesamiento de las seales se realiza en la unidad
central de control, de acuerdo con el programa almacenado en la me-
moria.
El programa de un PLC puede crearse de varias formas: a travs de
instrucciones parecidas al lenguaje ensamblador (assembler) en 'lista
de instrucciones', en lenguajes de alto nivel orientados al problema,
tales como el texto estructurado, o en forma de diagrama de flujo como
se representa en el diagrama de funciones secuencial. En Europa, la
utilizacin de los diagramas de bloques de funcin basados en los dia-
gramas de funciones con simbolos grficos para puertas lgicas (logi-
gramas) es ampliamente utilizado. En Amrica el lenguaje preferido por
los usuarios es el 'diagrama de contactos' o 'diagrama en escalera'
(ladder diagram).
Dependiendo de cmo se halle conectada la unidad central a los m-
dulos de entrada y salida, hay que distinguir entre PLCs compactos
(mdulo de entrada, unidad central y mdulo de salida en un slo cuer-
po) o PLCs modulares.
Captulo 1
La Fig. 81.4 muestra el control FXO de Mitsubishi, representando un
ejemplo de un PLC compacto.
Fig. B 1.4:
PLC compacto
(Mitsubishi EXO),
PLC Modular
(Siernens S7-300),
PLC con tarjetas
(Festo FPC 405)
Los PLCs modulares pueden configurarse individualmente. Los mdu-
los requeridos por la aplicacin prctica - aparte de los mdulos de
entradaslsalidas digitales que pueden, por ejemplo, incluir mdulos
analgicos , de posicionamiento y comunicacin - se insertan en un
rack, en el que todos los mdulos estn enlazados por un sistema de
bus. Este diseo se conoce tambin como tecnologa modular. Dos
ejemplos de PLCs modulares se muestran en la Figs. B1.2 y 81.4.
Estos representan la familia modular de PLC de AEG Modicon y el
S7-300 de Siemens.
Existe una amplia gama de variantes, particularmente en el caso de las
PLCs ms recientes. Esto incluyen tanto las caractersticas compactas
como las modulares y caracterlsticas importantes tales como el ahorro
de espacio, flexibilidad y,posibilidad de ampliacin.
La tarjeta con formato PLC es un tipo especial de PLC modular desa-
rrollado durante los ltimos aos. Con este tipo, varios mdulos reali-
zados sobre tarjetas de circuito impreso se montan en una caja estan-
darizada. El FPC 405 de Festo es representativo de este tipo de dise-
o (Fig. 81.4).
Festo Didactc TP301
Captulo 7
-
El diseo del hardware de un control lgico programable est hecho de
forma que pueda soportar los entornos tipicos industriales en cuanto a
los niveles de las seales, calor, humedad, fluctuaciones en la alimen-
tacin de corriente e impactos mecnicos.
1.4 El nuevo estndar A finales de los setenta, se plantearon en Europa algunos estndares
para PLC, vlidos para la programacin de PLCs, enfocados principalmente al es-
IEC-1311 tado de la tecnologla en aquel momento. Tenlan en cuenta sistemas
de PLC no interconectados, que realizaban operaciones lgicas con
seales binarias. DIN 19 239, por ejemplo, especifica un lenguaje de
programacin que posee las correspondientes instrucciones para estas
aplicaciones.
Anteriormente, no existlan elementos de lenguaje estandarizados ni
equivalentes para el desarrollo de programas de PLC. Los desarrollos
aparecidos en los aos ochenta, tales como el procesamiento de sea-
les analgicas, interconexin de mdulos inteligentes, sistemas de PLC
en red, etc. agravaron el problema. Consecuentemente, los sistemas
PLC de diferentes fabricantes requeran tcnicas de programacin
completamente diferentes.
Desde 1992, existe un estndar internacional para controles lgicos
programables y dispositivos perifricos asociados (herramientas de
programaci6n y diagnosis, equipos de verificacin, interfaces hombre-
mquina, etc.). En este contexto, un dispositivo configurado por el
usuario y compuesto por los elementos citados anteriormente, se cono-
ce como un sistema PLC.
El nuevo estndar IEC 1131 consta de cinco partes:
Parte 1 : Informacin general
Parte 2: Requerimientos y verificaciones del equipo
m Parte 3: Lenguajes de programacin
m Parte 4: Directrices para el usuario
m Parte 5: Especificacin del servicio de mensajes
Las partes 1 a 3 de este estndar se adoptaron sin enmiendas como el
estndar Europeo EN 61 131, Partes 1 a 3.
La finalidad del nuevo estndar era definir y estandarizar el diseo y
funcionalidad de un PLC y los lenguajes requeridos para la programa-
cin hasta un grado en el que los usuarios pudieran hacer funcionar
sin ninguna dificultad los diferentes sistemas de PLC de los distintos
fabricantes.
TP301 Festo Didactic
Captulo 1
Los siguientes captulos tratarn con detalle sobre este estndar. Por
el momento, ser suficiente la siguiente informacin:
m El nuevo estndar tiene en cuenta la mayora de aspectos posibles
en relacin con el diseo, aplicacin y utilizacin de sistemas PLC.
Las amplias especificaciones sirven para definir sistemas de PLC
abiertos y estandarizados.
Los fabricantes deben ajustarse a las especificaciones de este es-
tndar, tanto en el aspecto puramente tcnico de los requerimientos
de un PLC como en lo que se refiere a la programacin de tales
controles.
Todas las variaciones deben ser completamente documentadas
para el usuario
Tras unas reticencias iniciales, se ha formado un grupo relativamente
grande de personas interesadas (PLCopen) para apoyar este estndar.
La mayora de los principales proveedores de PLC son miembros de la
asociacin, es decir, Allen Bradley, Klkker-Moeller, Philips, para men-
cionar algunos. Otros fabricantes de PLC como Siemens o Mitsubishi
tambin ofrecen controles y sistemas de programacin conformes con
IEC-1131. ,
Los sistemas de programacin iniciales ya estn disponibles en el mer-
cado y otros estn siendo desarrollados. Sin embargo, la norma tiene
una buena oportunidad de aceptacin y de xito. Esperamos que este
libro de texto contribuir, en cierto modo, al desarrollo de este estndar.
Captulo 2
Capitulo 2
Fundamentos
Captulo 2
-
2.1 El sistema de
La caracterstica del sistema de numeracin decimal, comunmente utili-
numeracin
zado, es la disposicin lineal de los digitos y su emplazamiento signifi-
decimal
cativo. El nmero 4344, por ejemplo, puede representarse como sigue:
El nmero 4 que se halla en el extremo izquierdo, tiene un significado
diferente del nmero 4 situado en el extremo derecho.
La base del sistema de numeracin decimal es la disponibilidad de 10
dgitos diferentes (decimal: originario del latn 'decem' = 10). Estos diez
diferentes dgitos permiten contar de O a 9. Si la cuenta sobrepasa el
nmero 9, esto constituye un arrastre para el dgito de la siguiente
posicin a la izquierda. El significado de esta posicin en 10, y el si-
guiente arrastre se realiza cuando se alcanza el valor 99.
Utilizaremos el nmero 71.718.71 1 como ejemplo:
Como puede verse arriba, el significado del 7" en el extremo izquierdo
es 70 000 000 = 70 millones, mientras que el significado del "7" en la
tercera posicin desde la izquierda es de 700.
El dlgito del extremo derecho se conoce como el 'digito menos significati-
vo' y el dgito del extremo izquierdo, como el 'dgito ms significativo'.
Cualquier sistema de numeracin puede ser configurado basndose en
este ejemplo, cuya estructura fundamental puede aplicarse a sistemas
de numeracin de cualquier cantidad de dgitos. Consecuentemente,
cualquier operacin de clculo y mtodo de computacin que utilice el
sistema de numeracin decimal puede ser utilizado con otros sistemas
de numeracin.
2.2 El sistema de
Fue Leibnitz quien aplic por primera vez las estructuras del sistema
numeracin
de numeracin decimal al calculo con dos dgitos. All por el ao 1679,
binario
esto cre las premisas esenciales para el desarrollo de los actuales
ordenadores, ya que la tensin elctrica o la corriente elctrica, slo
permite un clculo utilizando dos valores: es decir "circula corrienten o
"no circula corriente". Estos dos valores se representan en forma de
dgitos '1" y "On.
TP301 Festo Didactic
Captulo 2
Si en un nmero estuiiramos limitados a exactamente 2 dgitos por
posicin, el sistema de numeracin quedara configurado como sigue:
El principio es exactamente el mismo que el del mtodo utilizado para
crear un nmero decimal. Sin embargo, slo se dispone de dos dgitos,
razn por la cual la posicin significativa no se calcula con la base l oX,
sino con al base 2'. As, el nmero menos significativo en el extremo
derecho es 2' = 1, y para la siguiente posicin 2' = 2, etc. Dado el uso
exclusivo de dos digitos, este sistema de numeracin se conoce como
sistema binario o sistema dual.
Con ocho posiciones, pueden representarse un mximo de:
valores que alcanzaran hasta el numero 11 11 1 11 12
Cada una de las posiciones de un sistema de numeracin binario pue-
de adoptar uno de los dos digitos O o 1. La menor unidad posible del
sistema binario es de 1 bit.
En el ejemplo citado arriba, se ha configurado un nmero consistente
en 8 bits, es decir, un byte (en un ordenador que utilice 8 seales
elctricas representando "tensin disponible" o "tensin no disponible").
El nmero considerado, 101 1 0001 2, corresponde al valor decimal
17/10.
1 x27 0 ~ 2 ~ I xx5 1 x24 0 x 2 ~ 0 x 2 ~ 0x 2' 1 x ~ O
= 128 +32 +16 + 1
= 177
Ejemplo
Captulo 2
2.3 El cdigo BCD
Para las personas acostumbradas a tratar con el sistema decimal, los
nmeros binarios son difciles de leer. Por esta razn, se introdujo una
representacin numrica de ms fcil lectura, es decir, una notacin
decimal codificada de un nmero binario: el denominado BCD (binary
coded decimal). Con este cdigo BCD, cada digito del sistema de nu-
meracin decimal representa a su correspondiente nmero binario.
Tabla 82.1 :
Representacin de
nmeros decimales en
cddigo BCD
Por lo tanto, se necesitan 4 dgitos en la notacin binaria para repre-
sentar el sistema decimal. A pesar de que en una notacin binaria de 4
dgitos pueden representarse los valores del O al 15, los valores co-
rrespondientes a 10, 1 1, 12, 13, 14 y 15 no se usan en BCD
Asi, el nmero decimal 7133 se representa como sigue en cdigo BCD:
Por lo tanto, se necesitan 16 bits para representar un nmero decimal
de cuatro dgitos en cdigo BCD. La codificacin en BCD se utiliza a
menudo para visualizadores de siete segmentos y para interruptores
rotativos de introduccin de valores.
2.4 El sistema de
La utilizacin de nmeros binarios es dificil y la utilizacin del cdigo
numeracin
BCD ocupa bastante espacio de memoria. Por esta razn se desarro-
hexadecimal llaron los sistemas octal y hexadecimal. En el caso del sistema octal se
utilizan grupos de tres dgitos. Esto permite contar de O hasta 7, es
decir, contar con "ochos".
TP307 Festo Didactic
Captulo 2
Alternativamente, en el sistema de numeracin hexadecimal se combi-
nan 4 bits. Estos 4 bits permiten la representacin de los nmeros O al
15, es decir, contar en "dieciseises". Para representar estos nmeros
se utilizan los dgitos O al 9, seguidos de las letras A, B, C, D, E y F,
en donde A = 10, B = 11, C = 12, D = 13, E = 14 y F = 15. La posicin
significativa de cada digito se evala con las potencias de 16.
Ejemplo
Por lo tanto, el nmero 87BCls dado como ejemplo se lee como sigue:
8 ~ 1 6 ~ + 7 ~ 1 6 ~ + 1 1 ~ 1 6 ~ + 1 2 ~ 1 6 ~ = 3 4 7 4 8 1 0
Hasta ahora, hemos tratado solamente con nmeros enteros y positi- 2.5 Nmeros binarios
vos, sin tener en cuenta los nmeros negativos. Para poder trabajar con signo
con estos nmeros, se decidi que el bit ms significativo en el extre-
mo izquierdo de un nmero binario se utilizara para representar el
signo: as "O" corresponde al "+" y "1" al "-".
AsC, 1111 11112= -1271oy0111 11112= +12810
Cuando se utiliza el bit ms significativo para el signo, se dispone de
un bit menos para la representacin de un nmero con signo. Para la
representacin de un nmero binario de 16 dgitos, se obtiene el si-
guiente margen de valores:
Entero
Aunque ahora ya es posible representar con O y 1 nmeros enteros 2.6 Nmeros reales
positivos con signo, an hay la necesidad de poder representar los
decimales o nmeros reales.
Margen de valores
sin signo
con signo
Para representar un nmero real en notacin binaria de ordenador, el
nmero se descompone en dos grupos, una potencia de 10 y un factor
de multiplicacin. Esto se conoce tambin como notacin cientifica de
nmeros.
O a 65535
-32768 a +32767
Tabla 822:
Margen de valores para
los nmeros binarios
Captulo 2
-
El nmero 27,334 se convierte as en 273 341 x lo? Por lo tanto se
necesitan dos nmeros enteros con signo para representar un nmero
real en un ordenador.
2.7 Generacin de Como ya parece haber quedado claro en la seccin anterior, todos los
seales
ordenadores, y por lo tanto todos los PLCs, funcionan utilizando sea-
digitales y
les digitales o binarias. Por binario, entendemos una seal que slo
binarias reconoce dos valores definidos.
Estos valores se les llama "On o "l", aunque tambin se utilizan los
trminos "bajon y "alton. Las seales pueden realizarse muy fcilmente
con componentes de contactos. Un contacto activado corresponde a
una seal de Igica 1 y uno sin activar a una de lgica O. Cuando se
trabaja con elementos sin contacto, esto puede forzar unos ciertos
mrgenes de tolerancia. Por esta razn, hay que definir ciertos mrge-
nes de tensin para definirlos como Igica O 6 lgica 1.
I
Fig. B2.2:
Mrgenes de tensin
TP301 Festo Didactic
Captulo 2
IEC 1131 -2 define un margen de valores de -3 V a 5 V como seal de
Igica 0, y de 11 V a 30 V como seal de Igica 1. Esto es de obligado
cumplimiento para PLCs cuya tecnologa deba seguir la norma IEC
1131-2. En la prctica existen tensiones muy parecidas para Igica O y
Igica 1: Ampliamente usadas son: -30 V a +5V para Igica O y +13 V
a +30 V para Igica 1.
A diferencia de las seales binarias, las seales digitales pueden asu-
mir cualquier valor. Se les conoce tambin como etapas de valor. Asi,
una seal digital se define por cualquier cantidad de etapas de valor.
El cambio entre estas etapas no es secuencial. La siguiente ilustracin
muestra tres posibles mtodos de convertir una seal analgica en una
seal digital.
Fig. B2.3:
Conversin de una
seal analgim en
1 una seal digital
Las seales digitales pueden formarse a partir de seales analgicas.
Este mtodo se utiliza, por ejemplo, para el procesamiento analgico a
travs de un PLC. Consecuentemente, una seal de entrada analgica
en el margen de O a 10 V se reduce a una serie de etapas de valores.
Dependiendo de la calidad del PLC y de la resolucin, la seal digital
ser capaz de operar en etapas de valores de 0,1 V, 0,01 V 0,001 V.
Naturalmente, en este caso se seleccionara el margen ms pequeo
para poder reproducir la seal analgica con la mayor precisin posible.
Captulo 2
Ejemplo
Un ejemplo simple de una seal analgica es la presin, que se mide y
se visualiza en un manmetro. La setial de presin puede asumir cual-
quier valor intermedio entre sus valores minimo y mximo. A diferencia
de la seal digital, cambia continuamente. En el caso del procesamien-
to de valores analgicos a travs de un PLC, como se ha descrito, las
seales analgicas de tensin se evalan y se convierten.
Por otra parte, las seales digitales pueden formarse reuniendo un
cierto nmero de seales binarias. De esta forma, de nuevo como se
ha descrito en el prrafo anterior, con ocho sehales binarias es posible
generar una seal digital con 256 valores.
Este proceso se utiliza, por ejemplo, para la realizacin de temporiza-
dores o de contadores.
TP301 Festo Didactic
Bit No.
Ejemplo 1
Ejemplo 2
Ejemplo3
'
1
O
O
O
O
1
O
Valor digital
187
51
O
O
O
O
O
1
O
1 0 1 1 1 0 1 1
1
O
O
O
. a .
Captulo 3
Captulo 3
Operadores Booleanos
Festa Didactic TP307
Captulo 3
Funciones lgicas
bsicas
Como se ha descrito en el captulo anterior, cualquier ordenador e
igualmente cualquier PLC, funcionan utilizando el sistema de numera-
cin de base 2. Esto se aplica tambin a los sistemas octal (z3) y
'hexadecimal (z4). Por ello, las variables individuales pueden asumir
slo dos valores, "0" o "1". Se utilizan unas matemticas especiales
para poder enlazar las relaciones entre variables - la denominada l-
gebra de Boole. Los enlaces entre variables tambin pueden repre-
sentarse claramente por medio de contactos elctricos.
Funcin NOT, negacin
El pulsador mostrado representa un contacto normalmente cenado.
Cuando no est fsicamente accionado, el piloto H1 luce, mientras que
en estado accionado, el piloto H1 se apaga.
Fig. 83.1:
Esquema del circuito 1
El pulsador S1 acta como una setial de entrada, el piloto constituye la
salida. El estado actual puede ser registrado en una Tabla de la verdad:
Tabla de la verdad
Por lo tanto, la Ecuacin Booleana es como sigue:
-
I = O (lase: No-l igual a O)
Captulo 3
El smbolo lgico es:
Dos negaciones consecutivas se cancelan entre s.
Funcin AND, conjuncin
Si dos contactos abiertos se conectan en serie, el piloto conectado
slo lucir si ambos pulsadores estn fsicamente accionados.
Fig. B3.2:
Funcin NOT
Fig. B3.3:
Dos funciones
i'gicas NOT
Fig. 83.4:
Esquema del circuito
Captulo 3
La tabla de la verdad asigna la conjuncin. La salida asume el valor 1
slo si ambas entradas 1 y 2 se hallan con seal 1. Esto se conoce
como una operacin AND (operacin Y), que se representa con la si-
guiente ecuacin:
Funcin AND
Adems, valen las siguientes ecuaciones para la conjuncin
TP301 Festo Didactic
Funcin OR, disyuncin
Otra funcin Igica bsica es la funcin OR (O). Si dos contactos nor-
malmente abiertos se conectan en paralelo, el piloto luce siempre que
por menos uno de los pulsadores se halle fsicamente accionado.
Captulo 3
-
La operacin lgica se escribe en forma de la siguiente ecuacin:
11 v 12 = O
Fig. 83.6:
Esquema del circuito
Fig. 83.7:
Funcin OR
Capitulo 3
-
Valen tambin las siguientes ecuaciones para la disyuncin:
3.2 Otras operaciones En la seccin 83.1 se ha descrito la realizacin elctrica de las opera-
lgicas ciones NOT-IAND-IOR. Naturalmente, cada una de estas funciones
puede tambin realizarse con componentes neumticos y electrnicos.
El lgebra de Boole reconoce tambin las siguientes operaciones Igi-
cas. La siguiente tabla proporciona un resumen de ellas.
Tabla 83.1:
Conexiones lgicas
TP301 Festo Didactic
Realiz. electrhica
:E0
: ; - + o
S(rnbolo lgico
l a 0
1- 0
Tabla verd.
$
1 o
Nombre
lden tidad
Negacin
11 12 O
0 0 0
@-
~=El-O O
- -
Ewaci6n
I = A
T=o
Conjunci6n
Disyunci6n
Realizacin neuMtiw
I l o
7 T
I 10
-r lb
l l ~ 12 = 0
I l u12 = O
Realiz. el6drica
1
-- --
Captulo 3
Tabla 83.1:
Conexiones lgicas
(continuacin)
Eesio Didactic TP301
Captulo 3
3.3 Establecimiento
Derivacin de ecuaciones booleanas de la tabla de la verdad
de funciones de A menudo, las operaciones lgicas mostradas en la seccin anterior no
conmutacin son suficientes para describir adecuadamente un estado en la tecnolo-
gia de control.
A menudo, hay combinaciones de diferentes operaciones Igicas. La
conexin lgica en forma de una ecuacin booleana puede establecer-
se fcilmente a partir de la tabla de la verdad.
El ejemplo inferior clarificar esto:
Tarea en una estacin de clasificacin
-
Diversas piezas para cocinas prefabricadas son mecanizadas en un
sistema de produccin (mquina de taladrar y fresar). A los laterales y
a las puertas de ciertos tipos de cocina se les han hecho diferentes
disposiciones de agujeros. Los censores B1 a B4 estn previstos para
la deteccin de estos agujeros.
estacin de clasificacin Fig B3.8; 1
Las piezas con la siguiente distribucin de agujeros son para el tipo de
cocina 'Estndar'. Estas piezas deben extraerse de la cinta transporta-
dora por medio del cilindro de doble efecto 1 .O.
TP301 Fesio Didactic
Captulo 3
Asumiendo que un taladro realizado se lee como seal-1, se obtiene la
siguiente tabla de la verdad:
Tabla de la verdad
Captulo 3
Para obtener la ecuacin lgica a partir de esta tabla existen dos op-
ciones, que conducen a dos expresiones diferentes. Naturalmente am-
bas expresiones producen el mismo resultado, ya que se describen las
mismas circunstancias.
Forma estndar disyuntiva
En la forma estndar disyuntiva, se agrupan todas las conjunciones
(operaciones AND) de las variables de entrada que producen la seal
de salida 1, en una operacin disyuntiva (operacin OR). El estado O
de la seal de entrada se toma como valor negado, y el estado 1 de la
seal de entrada, como no-negada (directa).
Por lo tanto, en el caso del ejemplo dado, la operacin Igica es la
siguiente:
Forma estndar conjuntiva
En la forma estndar conjuntiva, se agrupan todas las disyunciones
(operaciones OR) de las variables de entrada que producen la seal
de salida O, en una operacin conjuntiva (operacin AND). A diferencia
de la forma estndar disyuntiva, en este caso la variable de entrada es
negada con el estado "1" y no-negada con el estado "O"
3.4 Simplifiacin de Ambas ecuaciones para el ejemplo dado son bastante amplias, si bien
funciones lgicas ms larga an es la que se ha dado como forma estndar conjuntiva.
Esto define el criterio para utilizar la forma estndar disyuntiva o con-
juntiva: La decisin se hace en favor de la forma ms corta de la
ecuacin. En este caso la forma estndar disyuntiva.
Esta expresin puede simplificarse con le ayiida de las propiedades
del lgebra de Boole,
TP307 Festo Didactic
Captulo 3
Las propiedades ms impomntes del lgebra de Boole se muestran a
continuacin:
Propiedad conmutativa
a v b = b v a a ~ b = b ~ a
Propiedad asociativa
a v b v c = a v ( b v c ) = ( a ~ b ) ~ c
~ A ~ A C = ~ A ( ~ A C ) = ( ~ A ~ ) A C
Propiedad distributiva
a A (b v c) = (a A b) v (a A c)
a v (b A c) = (a v b) A (a v c)
Ley de De Morgan
- - - -
a v b = a A b a ~ b = a v b
Aplicadas al ejemplo citado, se obtiene el siguiente resultado:
-
y =
abcd v abcd v a Ed v abcd v abcd v abcd
-
=
abcd v gbcd v abCd v abcd v abd6 v c)
- - - -
=
acd(b v b) v abd(c v c) v abd
-
=
acd v abd v abd
-
=
acd v ad(b v b)
Por razones de claridad, el smbolo de la operacin AND "A" ha sido
expresamente omitido en las ecuaciones indicadas.
El principio bsico de la simplificacin es sacar el factor comn de las
variables y reducir las expresiones definidas. Sin embargo, este mto-
do requiere un buen conocimiento de las propiedades del lgebra de
Boole y un cierto grado de prctica. Otra opcin para la simplificacin
se presenta en la siguiente seccin.
Feota Didactic TP301
Captulo 3
3.5 Diagrama de
Karnaugh- Veitch
En el caso de los diagramas de Karnaugh-Veitch (KV) la tabla de la
verdad de transforma en una tabla de valores.
Tabla de valores
Para el ejemplo se dispone de un total de 16 posiciones, con lo que la
tabla de valores debe tener tambin 16 cuadrados.
Fig. m. 7:
Tabla de valores
~ ~ 3 0 1 Festo Didactic
Captulo 3
El resultado de la t a h de la verdad se transfiere al diagrama KV tal
como se indica en la figura. En principio, de nuevo es posible la repre-
sentacin en la forma estndar disyuntiva o conjuntiva. Sin embargo,
en este ejemplo nos limitaremos a la forma estndar disyuntiva.
El siguiente paso consiste en la combinacin de los estados para los
cuales se ha introducido un "1" en la tabla de valores. Esto se hace en
bloques, observando las siguientes reglas:
La combinacin de estados en el diagrama KV debe ser en forma
de rectngulo o de cuadrado
La cantidad de estados combinados debe ser el resultado de una
funcin p.
De esto resulta lo siguiente
- -
cd cd cd cd
Fig. B3.11:
Tabla de valores
Fig. B3.12:
Tabla de valores
Festo Didactic TP301
Captulo 3
Los valores de las variables, se selecc~onan para el bloque establecido
y estos a su vez se combinan en forma disyuntiva.
y1 = cd
y2 = acd
-
y = cd A acd
= ( cvac) Aci
Naturalmente, el diagrama KV no est limitado a 16 casillas. Con 5
variables, por ejemplo, se producirlan 32 casillas p5) y con 6 variables
64 casillas (26).
TP301 Festo Didactic
Captulo 4
Captulo 4
Diseo y modo de funcionamiento
de un PLC
Captulo 4
4.1 Estructura de
En los ordenadores, generalmente se distingue entre hardware, firmwa-
un PLC re y software. Los mismo se aplica a los PLCs, ya que esencialmente
tambin estn basados en un microprocesador.
El Hardware se refiere a las partes fsicas del dispositivo, el decir, los
circuitos impresos, los circuitos integrados, el cableado, la batera, el
chasis, etc.
El firmware los constituyen aquellos programas (software) que se ha-
llan permanentemente instalados en el hardware del ordenador y que
son suministrados por el fabricante del PLC. Esto incluye las rutinas
fundamentales del sistema, utilizadas para poner en marcha el proce-
sador al aplicar la tensin. Adicionalmente, hay el sistema operativo
que, en el caso de los controles lgicos programables, generalmente
se halla almacenado en una memoria ROM de slo lectura o en una
EPROM.
Finalmente, hay el software, que es el programa escrito por el usuario
del PLC. Los programas de usuario se instalan generalmente en la
memoria RAM, una memoria de acceso aleatorio, en donde pueden
ser fcilmente modificados.
Fig. 84.1:
Diseiio fundamental de
un microordenador 1
r
La Fig. 84.1 ilustra el diseo fundamental de un microordenador. El
hardware del PLC o como es el caso de casi todos los sistemas mi-
croordenadores actuales - est basado en un sistema de bus. Un sis-
tema de bus es un determinado nmero de lneas elctricas divididas
en Ineas de direcciones, de datos y de control. La lnea de direcciones
se utiliza para seleccionar la direccin de un elemento conectado al
bus y la Inea de datos para transmitir la informacin requerida. Las
Ineas de control son necesarias para habilitar el dispositivo conectado
el bus como emisor o como receptor..
Captulo 4
Los principales elementos conectados al sistema de bus son el micro-
procesador y la memoria. La memoria puede dividirse en memoria para
el firmware y memoria para el programa y los datos del usuario.
Segn la estructura del PLC, los mdulos de entradas y salidas se
conectan a un simple bus comn o - con la ayuda de un interface de
bus - a un bus externo de EJS. Especialmente en el caso de grandes
sistemas modulares de PLC, es ms usual un bus externo de ES.
Finalmente, se necesita una conexin para el aparato programador o
un PC, actualmente y en la mayora de los casos en forma de un
interface serie.
La Fig. 84.2 ilustra el FPC 101 de Festo como ejemplo.
Fig. 84.2:
Control Lgico Programable
Festo FPC 101
Festo Didactic TP301
Captulo 4
-
4.2 Unidad Central En esencia, la unidad central de un PLC consiste en un microordena-
de un PLC
dor. El sistema operativo del fabricante del PLC hace que el ordenador
que hay en el PLC este optimizado especlficamente para tareas de
tecnologa de control.
Diseo de la unidad central
La Fig. 84.3 muestra una versin simplificada de un microprocesador,
que representa el corazn de un microordenador.
Fig. 84.3:
Diseti0 de un
micmprocesador
Bus de datos
l
8
3
Bus de control 6- 4 Bus de
- I
1 - 1
Unidad aritrnetica Unldad de control
Bus de
h direcciones 1
Un microprocesador consiste principalmente en una unidad aritmtica y
lgica, una unidad de control y un pequeo nmero de unidades de
memoria internas, denominadas registros.
La tarea de la unidad aritmtica y Igica - la ALU (arithmetic logic
unit) - es ejecutar las operaciones lgicas y aritmticas con los datos
transmitidos.
El acumulador, AC para abreviar, es un registro especial asignado
directamente a la unidad ALU. Este almacena tanto los datos a proce-
sar como los resultados de una operacin.
El registro de instrucciones almacena cada orden o instruccin Ila-
mada desde la memoria del programa hasta que es decodificada y
ejecutada.
Una orden o instruccin (command) tiene una parte de ejecucin y una
parte de direccin. La parte de ejecucin indica qu operacin debe
realizarse. La parte de direccin define la direccin de los operandos
(seriales de entrada, flags, etc.) con los que hay que realizar la opera-
cin indicada.
TP301 Festo Didactic
Captulo 4
El contador de programa es un registro, que contiene la direccin de
la siguiente orden a procesar. La seccin siguiente tratar este aparta-
do con ms detalle.
La unidad de control regula y controla toda la secuencia de operacio-
nes requeridas para la ejecucin de una orden.
Ciclo de instrucciones en la unidad central
Los sistemas microordenadores convencionales de hoy en da funcio-
nan segn el denominado "principio de von-Neumann". Segn este
principio, el ordenado procesa el programa Inea a Inea. En trminos
sencillos, podramos decir que cada Inea del programa de usuario del
PLC es procesada secuencialmente.
Esto es vlido independientemente del lenguaje de programacin en el
que haya sido escrito el programa de PLC, sea en forma textual (lista
de instrucciones) o en forma grfica (diagrama de contactos, diagrama
de funciones secuencial). Dado que estas diversas formas de repre-
sentacin siempre resultan en una serie de lneas de programa dentro
del ordenador, se procesan consecuentemente una tras otra.
En principio, una Inea de programa, es decir, generalmente una orden
se procesa en dos etapas:
8 recogida de la orden desde la memoria de programa
ejecucin de la orden
Bus de datos
Seiiales de control
I
Contador de
programa
Bus de datos
Mkro
Seiiales de control
Bus de direcciones
v
Direcciones
Fig. B4.4:
Secuencia de instrucciones
Festo Didactic TP301
Captulo 4
-
El contenido del contador de programa es transferido al bus de direc-
ciones. A continuacin, la unidad de control hace que la instruccin en
la direccin especificada de la memoria del programa, sea depositada
en el bus de datos. Desde aqu, se lee en el registro de instrucciones.
Una vez ha sido decodificada, la unidad de control genera una secuen-
cia de seales de control para su ejecucin.
Durante la ejecucin de un programa, las instrucciones se van a bus-
car secuencialmente. Para ello se necesita un mecanismo que permita
esta secuencia. Esta tarea se realiza por un simple incrementador. es
decir, un elemento de habilitacin de pasos en el contador de programa.
4.3 Modo de
Los programas para el procesamiento convencional de datos, general-
funcionamiento mente se procesan una sola vez, de arriba a abajo y terminan. A dife-
de un PLC rencia de estos, el programa de un PLC se procesado continua y ccli-
camente.
Fig. 84.5:
Procesamiento cclico
de un programa de PLC
Tabla de imagen
Entradas
Tabla de imagen
Salidas
Entradas
Programa PLC
Salidas
TP301 Festo Didactic
Captulo 4
Las caractersticas del procesamiento cclico son:
m As que el programa ha sido ejecutado una vez, salta automtica-
mente al principio y se va repitiendo el proceso continuamente.
Antes de que se procese la primera Inea del programa, es decir, al
inicio del ciclo, el estado de las entradas es almacenado en la tabla
de imagen de entradas. La imagen del proceso es una zona de
memoria aparte a la que se accede durante un ciclo. As, el estado
Igico de una entrada permanece constante durante un ciclo, inclu-
so aunque en este intervalo haya cambiado fsicamente.
De forma similar a la entradas, .las salidas no son inmediatamente
activadas o desactivadas durante un ciclo, sino que su estado es
almacenado temporalmente en la tabla imagen de salidas. Solamen-
te al final del ciclo se activan o desactivan fsicamente las salidas
segn el estado Igico almacenado en la memoria.
El procesamiento de una Inea de programa a travs de la unidad cen-
tral de un PLC ocupa un tiempo que, dependiendo del PLC y de la
instruccin que contenga puede variar desde unos pocos microsegun-
dos hasta unos pocos milisegundos.
El tiempo requerido por el PLC para una simple ejecucin de un pro-
grama, incluyendo la actualizacin de las salidas y la imagen del pro-
ceso, se denomina tiempo de ciclo o tiempo de scan. Cuanto ms
largo sea el programa y cuanto ms tiempo necesite el PLC respectivo
para procesar cada Inea del programa, tanto ms largo ser el tiempo
de ciclo. Los tiempos reales de ciclo varan aproximadamente entre 1 y
100 milisegundos.
Las consecuencias del procesamiento cclico de un programa de PLC
que utilice una imagen del proceso son las siguientes:
m Las seales de entrada de una duracin inferior al tiempo de ciclo,
posiblemente no sern reconocidas.
m En algunos casos, puede haber un retardo de dos ciclos entre la
presencia de una seal de entrada y la deseada reaccin de una
salida ante esta seal.
m Dado que las instrucciones se procesan secuencialmente, el com-
portamiento especfico de la secuencia de un programa de PLC
puede ser crucial.
En algunas aplicaciones, es esencial que pueda accederse directamen-
te a entradas y salidas durante un ciclo. Por ello, este tipo de procesa-
miento de programa, saltndose la imagen del proceso, tambin es
posible en algunos sistemas PLC.
Captulo 4
4.4 Memoria de Los programas especficamente desarrollados para determinadas apli-
programas de caciones requieren una memoria de programa, de la cual puedan ser
aplicacin ledos por la unidad central. Los requerimientos para tal memoria de
programa son relativamente simples de formular:
m Deberla ser lo muy sencilla de modificar o de crear y almacenar
nuevos programas con la ayuda de un dkpositivo programador o un PC.
m Debe haber mecanismos que aseguren que el programa no pueda
perderse - incluso ante un fallo de tensin o por tensiones de inter-
ferencia
La memoria de programa debe ser econmica
m La memoria de programa debera ser suficientemente rpida para
no retardar el funcionamiento de la unidad central.
Actualmente, se utilizan tres tipos de memoria en la prctica:
m RAM
m EPROM
m EEPROM
RAM
La memoria RAM (random acceso memory/memoria de acceso aleato-
rio) es una memoria muy rpida y econmica. Dado que la memoria
principal de los ordenadores (y tambin de los PLCs) consiste en me-
morias RAM, se producen en grandes cantidades, lo que le permite
disponer de tales memorias a costes relativamente bajos.
Las RAMs son memorias de lectura/escritura y pueden programarse y
modificarse fcilmente.
La desventaja de una RAM es que es voltil, es decir, el programa
almacenado en la RAM se pierde en el caso de un fallo de tensin.
esta es la razn por la cual las RAMs deben estar respaldadas por una
baterfa, acumulador o pila. Dado que la vida til y la capacidad de las
modernas pilas les permiten durar vanos aos, el respaldo de una
RAM por pila es relativamente simple. A pesar de que se utilizan pilas
o bateras de altas prestaciones, es esencial sustituirlas en las fechas
indicadas por el fabricante del PLC.
TP301 Festo Didactic
Captulo 4
-
EPROM
La EPROM (erasable programmable read-only memory /memoria de
slo lectura, programable y borrable) tambin es una memoria rpida y
de bajo coste y, en comparacin con la RAM tiene la ventaja aadida
de que no es voltil, es decir, es remanente. Por ello, el contenido de
la memoria permanece inalterable incluso ante un fallo de tensin.
Sin embargo, a efectos de modificar un programa, debe borrarse pri-
mero toda la memoria y, tras un tiempo de enfriamiento, reprogramarse
completamente. El borrado requiere generalmente un dispositivo borra-
dor y para su programacin se utiliza un dispositivo especial (grabador
de EPROMs).
A pesar de su relativamente complejo proceso de borrado, - enfriado -
reprogramacin, las EPROMs se utilizan con bastante frecuencia en
los PLCs ya que poseen una gran fiabilidad y un bajo coste. En la
prctica, a menudo se utiliza una RAM durante la fase de programa-
cin y puesta a punto de la mquina. Una vez finalizada la puesta en
marcha, el programa se transfiere a una EPROM.
EEPROM
La EEPROM (electrically erasable programmable ROM 1 ROM progra-
mable y borrable elctricamente ), EEROM (electrically erasable ROM 1
ROM borrable elctricamente) y la EAROM (electrically alterable ROM 1
ROM alterable elctricamente) o las flash-EPROM han sido utilizadas
desde hace algn tiempo. La EEPROM es especial, es ampliamente
utilizada como memoria de aplicacin en PLCs. La EEPROM es una
memoria borrable elctricamente, que puede reescribirse.
Captulo 4
4.5 Mdulode
entradas
-
El mdulo de entradas de un PLC es el mdulo al cual estn conecta-
dos los sensores del proceso. Las seales de los sensores deben pa-
sar a la unidad central. Las funciones importantes de un mdulo de
entradas (para la aplicacin) es como sigue:
Deteccin fiable de la seal
Ajuste de la tensin, desde la tensin de control a la tensin lgica
Proteccin de la electrnica sensible de las tensiones externas
= Filtrado de las entradas
de un mdulo de entradas
1
Fig. B4.7:
Diagrama de bloques
El principal componente de los actuales mdulos de entradas, que
cumple con estos requerimientos es el optoacoplador.
Sefial
Seal a la
entrad
unidad de
control
El optoacoplador transmite la informacin del censor por medio de la
luz, creando as un aislamiento elctrico entre el control y los circuitos
lgicos, protegiendo con ello a la sensible electrnica de las tensiones
espreas externas. Actualmente, los optoacopladores avanzados ga-
rantizan proteccin a picos de aproximadamente 5 kv, lo que es ade-
cuado para aplicaciones industriales.
El ajuste de la tensin de control y de lgica, en el caso corriente
de una tensin de mando de 24 V, puede realizarse con la ayuda de
un circuito diodo/resistencia. En el caso de 220 V AC, se conecta un
rectificador en serie.
Dependiendo del fabricante del PLC, se asegura una deteccin fiable
de la seal por medio un detector de umbral adicional o los correspon-
dientes de diodos y optoacopladores. Los datos precisos en relacin
con las seales a detectar se especifican en DIN 19240.
Captulo 4
El filtrado de la seal emitida por el sensor es crtica en automa-
tizacin industrial. En la industria, las Ineas elctricas estn general-
mente muy cargadas-debido a tensiones de interferencia inductivas,
que producen muchas interferencias en las seales. Las Ineas de las
seales pueden protegerse con apantallamientos, canaletas metlicas
o, alternativamente, el mdulo de entrada del PLC realiza un filtrado
por medio de un retardo de la seal de entrada.
Esto necesita que la seal de entrada sea aplicada un perodo de tiem-
po suficientemente largo, antes de que sea reconocida como una seal
de entrada. Dado que, debido a su naturaleza inductiva, los impulsos
de interferencia son principalmente seales transitorias, es suficiente
un retardo de la seal de entrada relativamente corto, del orden de
milisegundos, para filtrar la mayor parte de los impulsos~parsitos.
El retardo de las seal de entrada se realiza principalmente por hard-
ware, es decir, a travs de un circuito RC en la entrada del PLC. Sin
embargo, en casos aislados, tambin es posible producir un retardo de
la seal por software.
La duracin de un retardo de entrada es de aproximadamente entre 1
y 20 milisegundos - dependiendo del fabricante y del tipo. Muchos
fabricantes ofrecen entradas especialmente rpidas para aquellas ta-
reas en las que el retardo de la seal de entrada es demasiado larga
para reconocer la seal requerida.
Cuando se conectan censores a las entradas del PLC, debe distinguir-
se entre conexiones de conmutacin positiva y de conmutacin negati-
va. En otras palabras, hay que distinguir entre entradas que repre-
sentan un consumo de corriente o una fuente de corriente. En Alema-
nia, por ejemplo, cumpliendo con VD1 2880, se utilizan principalmente
las conexiones de conmutacin positiva, ya que ello permite la utiliza-
cin de un tierra de proteccin. Conmutacin positiva significa que la
entrada del PLC representa un drenaje de corriente. El sensor suminis-
tra la tensin de funcionamiento o tensin de control a la entrada en
forma de seal-l.
Si se utiliza tierra de proteccin, la tensin de salida del sensor es
cortocircuitada hacia los O voltios o se funde el fusible en caso de
cortocircuito en la linea de seal. Esto significa que se aplica una lgi-
ca O en la entrada del PLC.
En muchos pases, es comn utilizar sensores de conmutacin negati-
va, es decir, las entradas del PLC funcionan como fuente de potencia.
En estos casos, deben utilizarse diferentes medidas de proteccin para
evitar que se aplique una seal 1 a la entrada del PLC en el caso de
un cortocircuito en la lnea de la seal. Un posible mtodo es la pues-
ta a tierra de la tensin de control positiva o la supervisin del aisla-
miento, es decir, tierra de proteccin como medida de proteccin.
4.6 Mdulo de salida Los mdulos de salida llevan las seales de la unidad central a los
elementos finales de control, que son activados segn la tarea. Princi-
palmente, la funcin de una salida - vista desde la aplicacin del PLC
incluye lo siguiente:
m Ajuste de la tensin desde la tensin lgica a la de control
Proteccin de la electrnica sensible de tensiones espreas hacia el
control
Amplificacin de potencia suficiente para el accionamiento de ele-
mentos finales de control
Proteccin de cortocircuito y sobrecarga de los mdulos de salida
En el caso de mdulos de salida, hay disponibles dos mtodos funda-
mentalmente diferentes para conseguir lo indicado: El uso de rels o
de electrnica de potencia.
Setial de
la unidad
Seal de
salida
Fig. B4.8:
central
Diagrama de bloques
de un-m6dulo de salida 1
El optoacoplador, forma de nuevo la base para la electrnica de poten-
cia y asegura la proteccin de la electrnica y posiblemente tambin el
ajuste de la tensin.
Un circuito de proteccin formado por diodos debe proteger el transis-
tor de potencia de los picos de tensin.
TP301 Festo Didactic
Captulo 4
Actualmente, la proteccin ante cortocircuito, proteccin ante so-
brecargas y amplificacin de potencia, se ofrecen a menudo como
mdulos completamente integrados. Las medidas estndar de protec-
cin ante cortocircuito miden el flujo de corriente a travs de una resis-
tencia de potencia para desconectar en caso de cortocircuito; un sen-
sor de temperatura proporciona una proteccin ante sobrecargas; una
etapa de Darlington o una etapa de transistor de potencia proporcionan
la potencia necesaria.
La potencia admisible de salida se utiliza especficamente de forma
que permita una distincin entre la potencia admisible de una salida y
la potencia acumulada admisible de un mdulo de salidas. La potencia
acumulada de un mdulo de salidas es siempre considerablemente in-
ferior a la suma total de la potencia de cada salida, ya que los transis-
tores de potencia se transmiten el calor unos a otros.
Si se utilizan rels para las salidas, entonces el rel puede asumir
prcticamente todas las funciones de un mdulo de salida: El contacto
del rel y la bobina del rel estn elctricamente aislados uno de otra;
el rel representa un excelente amplificador de potencia y est espe-
cialmente protegido de sobrecargas, con lo que solamente debe pre-
verse una proteccin ante cortocircuito con un fusible. Sin embargo, en
la prctica se conectan optoacopladores en serie con el rel, ya que
ello facilita el accionamiento del rel y pueden utilizarse rels ms sen-
cillos.
Las salidas por rel, tienen la ventaja de que pueden utilizarse para
diferentes tensiones de salida. En contraste, las salidas electrnicas
tienen velocidades de conmutacin considerablemente ms elevadas y
una vida til ms larga que la de los rels. En muchos casos, la poten-
cia de reles muy pequeos utilizados en los PLCs, corresponde a la de
las etapas de potencia de las salidas electrnicas.
En Alemania, por ejemplo, las salidas tambin se conectan a conmuta-
cin positiva, segn VD1 2880, es decir, la salida representa una fuente
de potencia y suministra la tensin de funcionamiento para el dispositi-
vo consumidor.
En el caso de un cortocircuito de la lnea de seal de salida a tierra, la
salida se cortocircuita si se utilizan medidas normales de puesta a tie-
rra de proteccin. La electrnica conmuta a proteccin de cortocircuito
o se funde el fusible, es decir, el dispositivo consumidor no puede dre-
nar corriente por lo que se desconecta y queda en estado seguro. (De
acuerdo con DIN 0113, el estado de seguridad debe ser siempre el
estado sin energa.)
Festo Didaciic TP301
Captulo 4
Si se utilizan salidas de conmutacin negativa, es decir, la salida repre-
senta un drenaje de corriente, deben adoptarse medidas de proteccin
del tal forma que el dispositivo consumidor quede en un estado seguro
en el caso de cortocircuito en la lnea de seal. De nuevo, un tierra de
proteccin con supervisin del aislamiento o la neutralizacin de la ten-
sin de control positiva son prcticas estndar en este caso.
4.7 Dispositivo
Cada PLC tiene una herramienta de diagnosis y programacin para
programador / soportar la aplicacin del PLC
Ordenador
personal
m Programacin
Verificacin
Puesta punto
Localizacin de averas
Documentacin del programa
m Almacenamiento del programa
Estas herramientas de programacin y diagnosis son o bien dispositi-
vos de programacin especficos del fabricante u ordenadores perso-
nales con su software correspondiente. Actualmente, estos ltimos son
casi exclusivamente las variantes preferidas, ya que la enorme capaci-
dad de los modernos PCs, combinada con su comparativamente bajo
coste inicial y alta flexibilidad, representan ventajas cruciales. .
Tambin se han desarrollado los denominados programadores de
mano para pequeos sistemas de control y para tareas de manteni-
miento. Con la creciente utilizacin de ordenadores personales .portti-
les (LapTop), funcionando con bateras, la importancia de los progra-
madores de mano disminuye paulatinamente.
TP301 *.Festo Didactic
-
Captulo 4
Las funciones esenciales del sistema de software forman parte de la
herramienta de programacin y diagnosis
Cualquier software de programacin segun IEC 1131-1 deben propor-
cionar al usuario una serie de funciones. As, el software de programa-
cin comprende mdulos de software para:
Introduccin de programas
Creacin y modificacin de programas en uno de los lenguajes de
programacin del un PLC
Verificacin de la sintaxis
Comprobacin de la sintaxis del programa y los datos, minimizando
asl la introduccin de programas defectuosos.
m Traductor
Traduccin del programa introducido en un programa que puede ser
leido y procesado por el PLC, es decir, la generacin del cdigo
mquina del correspondiente PC.
Conexin entre PLC y PC
A travs de este enlace se realiza la carga de los programas al PLC
y la ejecucin de funciones de verificacin
Funciones de verificacin
Ayuda al usuario durante la escritura y en la eliminacin de fallos y
verificacin a travs de:
o una verificacin del estado de las entradas, salidas temporizado-
res, contadores, etc.
verificacin de secuencias de programa por medio de operacio-
nes de paso a paso, rdenes de STOP, etc.
o simulacin por medio de activacin manual de entradadsalidas,
establecimiento de valores, etc.
Indicacin del estado de sistemas de control
Emisin de informacin relacionada con la mquina, proceso y esta-
do del sistema PLC:
ci Indicacin del estado de seales de entrada y salida
ci Registro/indicacin de cambios de estado en seales externas y
datos internos
o Supervisin de los tiempos de ejecucin
o Formato en tiempo real de la ejecucin del programa
Captulo 4
Documentacin
Creacin de una descripcin del sistema PLC y el programa del
usuario. Esto consiste en:
a Descripcin de la configuracin del hardware
Impresin del programa de usuario con los correspondientes da-
tos e identificadores para las seales y comentarios
a Lista de referencias cruzadas para todos los datos procesados
tales como entradas, salidas, temporizadores, etc.
a Descripcin de las modificaciones
= Archivado del programa de usuario
Proteccin del programa de usuario en memorias no voltiles tales
como EPROM, etc.
Captulo 5
Captulo 5
Programacin de un PLC
- -
Captulo 5
5.1 Bsqueda de
Los programas de control representan un componente importante en
una solucin un sistema de automatizacin.
sistemtica
Los programas de control deben ser diseados sistemticamente, bien
estructurados y completamente documentados, para que sean:
libres de errores,
fciles de mantener y
econmicos
Modelo de fases para la generacin de software para PLC
El procedimiento para el desarrollo de un programa de PLC que se
muestra en la fig. 85.1 ha sido probado y verificado. La divisin en
secciones definidas conduce a un funcionamiento sistemtico y objeti-
vado, y proporciona una disposicin de resultados clara, que puede
verificarse en relacin con la tarea.
El modelo de fases consiste en las siguientes secciones:
Especificacin: Descripcin de la tarea
= Diseo: Descripcin de la solucin
Realizacin: Puesta en prctica de la solucin
Integracin/puesta a punto: Incorporacin en el entorno y verifica-
cin de la solucin,
que bsicamente pueden aplicarse a todos los proyectos tcnicos. Se
producen diferencias en los mtodos y herramientas utilizados en las
fases individuales.
Especificacin
D
Diseo
D
Realizacin
Fig. 85.1:
Modelo de fases para
la generacin de
software de PLC
Puesta a punto
m
- Tecnologa, croquis de situacion
- Macroestructura de los programas de
control
- Diagrama de funciones segn IEC 848
- Diagrama de funciones, tal como
el Diagrama espacio-tiempo
- Tabla de funciones
- Definicin de los m6dulos de software
- Lista de piezas y esquemas del circuito
ST y10 SFC
- Simulacin de subprogramas y del
conjunto de programas
- Verificacin de los subprogramas
- Verificacin del conjunto de programas
TP301 Festo Ddactic
Captulo 5
El modelo de fases puede aplicarse a programas de control de cornple-
jidad diversa; para tareas de control complejas, es absolutamente
esencial la utilizacin de tales modelos.
Las fases individuales del modelo se describen abajo.
Fase 1 : Especificacin (Formulacin del problema)
En esta fase, se formula una descripcin detallada y precisa de la ta-
rea de control. La descripcin especifica de la funcin del sistema de
control, formalizada al mximo, revela cualquier requerimiento conflicti-
vo, especificaciones incompletas o equivocadas.
Al final de esta fase se dispone de lo siguiente:
m Descripcin escrita de la tarea de control
m Estructura.distnbuci6n
Macroestructuracin del sistema o proceso y con ello un esbozo de
la estructura de la soluci6n.
-
Fase 2: Diseo (Forma concreta del concepto de la solucin)
Un concepto de solucin se desarrolla basndose en las definiciones
establecidas en la fase 1. El mtodo utilizado para describir la solucin
debe proporcionar un grfico y una descripcin orientada al proceso, a
la funcin y comportamiento del sistema de control, y debe ser inde-
pendiente de la realizacin tcnica.
Estos requerimientos se cumplen con el diagrama de funciones (FCH)
segun define DIN 40 719, Parte 6 o IEC 848. Empezando con una
representacin de una visin de conjunto del control (esbozo de la es-
tructura de la solucin), la solucin puede refinarse paso a paso hasta
que se obtenga un nivel de descripcin que contenga todos los deta-
lles de la solucin (refinamiento de un esbozo de estructura).
En el caso de tareas de control complejas, la solucin es estructurada,
en paralelo con esto, en m6dulos de software individuales. Estos m-
dulos de software realizan las etapas de trabajo del sistema de control.
Estos pueden ser funciones especiales como la realizacin de un inter-
face para la visualizacin del proceso, o sistemas de comunicacin, o
incluso etapas de trabajo recurrentes permanentemente.
El diagrama desplazamiento-fase, representa otra forma estndar para
la descripcin de sistemas de control aparte del diagrama de funciones
segn DIN 40 71 9, Parte 6.
Captulo 5
-
Fase 3: Realizacin (Programacin del concepto de la solucin)
La traduccin del concepto de la solucin en un programa de control
se realiza a travs de los lenguajes de programacin definidos en IEC
11 31 -3. Estos son: diagrama de funciones secuencial, diagrama de
bloques de funcin, diagrama de contactos, lista de instrucciones y tex-
to estructurado.
Los sistemas de control que funcionan en un proceso tiempoAgica y
estn disponibles en FCH segn DIN 40 719, P.6, pueden ser clara y
fcilmente programados en diagrama de funciones secuencial. Un dia-
grama de funciones secuencial, en la medida de los posible, utiliza los
mismos componentes para la programacin que los utilizados para la
descripcin en el diagrama de funciones segn DIN 40 719, P.6.
Diagrama de contactos, diagrama de bloques de funcin y lista de ins-
trucciones son los lenguajes de programacin adecuados para la for-
mulacin de operaciones bsicas y para sistemas de control que pue-
den ser descritos por simples seales lgicas combinadas por opera-
ciones booleanas.
El lenguaje de alto nivel denominado 'texto estructurado' se utiliza prin-
cipalmente para crear mdulos de software de contenido matemtico,
tales como mdulos para la descripcin de algoritmos de regulacin.
En la medida en que los sistemas de programacin de PLCs lo perrni-
tan, los programas de control o parte de los programas creados, debe-
rfan ser simulados antes de la puesta a punto. Esto permite la detec-
cin y eliminacin de errores ya en una etapa inicial.
Fase 4: Puesta a punto
(Construccin y verificacin de una tarea de control)
Esta fase verifica la interaccin del sistema de automatizacin y la
planta conectada. En casos de tareas complejas, es aconsejable poner
a punto el conjunto de forma sistemtica, paso a paso. Los fallos, tanto
en el sistema como en el programa de control, pueden hallarse y elimi-
narse fcilmente utilizando este mtodo.
Captulo 5
Documentacin
-
Un componente importante y crucial de un sistema es la documenta-
cin, ya que es un requerimiento esencial para el mantenimiento y am-
pliacin de un sistema. La documentacin, incluyendo los programas
de control, debera estar disponible tanto en papel como en un soporte
de almacenamiento de datos. La documentacin consiste en la infor-
macin sobre las fases individuales, listados del programa de control y
de cualquier informacin adicional posible concerniente al programa de
control. Individualmente estos son:
Descripcibn del problema
Croquis de situacin
Esquema del circuito
Esquema tcnico
Listados del programa de control en SFC, FBD, etc.
Lista de asignaciones de entradas y salidas
(esto tambin forma parte de los listados del programa de control)
Documentacin adicional
IEC 1131-3 es un estndar para la programacin, no slo de un PLC 5.2 Recursos de
individual, sino tambikn para sistemas de automatizacin complejos. estrvcturacin
Los programas de control para grandes aplicaciones deben ser clara- IEC 1131-3
mente estructurados para ser inteligibles, fciles de mantener y si es
posible tambin porttiles, es decir, transferibles a otros sistema de PLC.
Las definiciones se necesitan no slo para las instrucciones de lengua-
je elemental, sino tambin para los elementos de lenguaje para estruc-
turacin. Los recursos de estructuracin (fig. 85.2) se refieren a pro-
gramas de control y a la configuracin del sistema de automatizacin.
\
RECURSO DE
CONFIGURACI~N
[ ] - vAR-GLoBAL
- Configuracin un sistema de de
RUTA-ACCESO automatizacin
( )
- Representacin Diagrama de funciones
de la secuencia
- Refinamiento
BLOQUE-FUNCl6N
fK]
- Modularizacin
FUNCIN
TIPO-DATOS
L J
Estructuraci6n
del nivel de
configuracin
Estructuracin
del nivel de
programa
I
Fig. B5.2:
IEC 1131-3
metodo de estructuracibn
Festo Didaciic TP301
Captulo 5
~ecursos de estructuracin del programa
Los recursos de estructuracin - programa, bloque de funciones y fun-
cin - contienen la verdadera lgica de control (reglas) del programa
de control. Estos se conocen tambin como unidades de organizacin
del programa. Estos recursos de estructuracin estn disponibles para
cualquier lenguaje de programacin. Se utilizan para la modularizacin
de programas de control y del programa de usuario - esto concierne
principalmente a programas y bloques de funcin - o tambin suminis-
trados por el fabricante - en lo que se refiere a programas y bloques
de funcin.
IEC 1131-3 define un amplio juego que funciones y bloques de funcin
estandarizados. Estos pueden ser ampliados por funciones propias del
usuario, para tareas especiales o de continua recurrencia.
Los mdulos de software, que pueden utilizarse de diversas maneras,
se introducen en libreras, de las que puede disponerse en cualquier
momento.
Los programas representan la capa ms exterior de la organizacin del
programa y pueden diferenciarse del bloque de funcin principalmente
por el hecho de que no pueden ser invocados por ninguna otra unidad
de organizacin del programa.
El diagrama de funciones secuencial representa otro recurso para la
estructuracin de un programa. Los contenidos de los programas re-
ales y los bloques de funcin pueden de nuevo representarse clara e
inteligiblemente por medio de un diagrama de funciones secuencial.
Recursos de estructuracin a nivel de configuracin
Los elementos de lenguaje para configuracin describen la incorpora-
cin de programas de control en el sistema de automatizacin y su
control en relacin con el tiempo.
El sistema de automatizacin representa una configuracin (elemento
del lenguaje CONFIGURACION). Dentro de la configuracin hay las
variables globales (elemento de lenguaje VAR-GLOBAL).
TP301 Festo Didactic
Captulo 5
Un recurso (elemento de lenguaje RECURSO) corresponde al procesa-
dor de un sistema multiprocesador, al cual se asignan uno o varios
programas. Adems, comprende elementos de control, que incluyen el
control de programas en relacin con el tiempo. Este elemento de con-
trol es una tarea (elemento de lenguaje TAREA). El elemento de con-
trol Tarea define si un programa debe procesarse cclicamente o slo
una vez, disparado por un evento especifico. Los programas que no
estn especficamente enlazados a una tarea son procesados cclica-
mente en segundo plano y con la prioridad ms baja.
Fig. 85.3:
Ejemplo grfico de
UM configuracion
f
Configuracin de la fabricacidn de vlvulas
>
Los recursos de estructuracin para la configuracin se muestran en
un resumen combinado en la fig. 05.3. A continuacin se explica el
ejemplo que aplica este concepto a una tarea de automatizacin.
f
Recurso
\
montaje de vlvulas
Programa
montaje
Programa
L. f -J
La tarea planteada es la de disear y automatizar una linea de produc-
cin para el montaje de vlvulas neumticas.
Recurso
\ T
Recurso
\
control transportador control de calidad
j Programa
transporlador
,
i
Programa
estadstica
'i J
Programa
Guarda-datos
i J
-.. 1
Se ha elegido un PLC multiprocesador con tres tarjetas de procesador
para el montaje de las vlvulas. Las tarjetas de procesador estn asig-
nadas al montaje de las vlvulas, el control del transportador y el con-
trol de calidad.
Variables globales y directamente representadas
L J
Festo Didactic. TP301
Captulo 5
-
Los programas Estadsticas y Guarda-datos est asociados con dife-
rentes tareas. Como tales, poseen diferentes caractersticas de ejecu-
cin. El programa Estadsticas evala y comprime los datos de calidad
a intervalos regulares. La prioridad de este programa es baja. Se pone
en marcha regularmente, p. ej. cada 20 minutos, por la tarea Tarea-ci-
clica. En el caso de un PARO DE EMERGENCIA, el programa
Guarda-datos transmite todos los datos disponibles a un ordenador de
clula de nivel superior para prevenir cualquier posible prdida de da-
tos. El programa se pone en marcha activado por un evento de la ms
alta prioridad con la seal de PARO DE EMERGENCIA.
IEC 1131-3 proporciona interfaces definidos y por lo tanto estandariza-
dos para el intercambio de datos dentro de una configuracin. Si se
requiere informacin especfica, tal como la lectura de una variable, en
diferentes unidades de organizacin de programas, esta variable es
designada como variable global. Entonces los datos pueden ser inter-
cambiados con una variable designada como tal. A las variables globa-
les slo se puede acceder desde programas y bloques de funcin.
Lo que tiene inters para sistemas en red es la comunicacin ms all
de una configuracin. Para ello, estn a disposicin del usuario blo-
ques de funciones de comunicacin estandarizados. Estos se definen
en IEC 11 31-5 y se utilizan en IEC 1131 -3. Otra posibilidad es la
definicin de rutas de acceso (recurso de lenguaje RUTA-ACCESO)
para variables especficas. Estas tambin pueden ser ledas o escritas
desde otras posiciones.
5.3 Lenguajes de IEC 1131-3 define cinco lenguajes de programacin. Aunque la funcio-
programacin nalidad y estructura de estos lenguajes es muy diferente, son tratados
como una sola familia de lenguajes por IEC 1131-3, con elementos de
estructura solapados (declaracin de variables, partes de organizacin
tales como funciones y bloques de funcin, etc.) y elementos de confi-
guracin.
Los lenguajes pueden mezclarse de cualquier forma dentro de un pro-
yecto de PLC. La unificacin y estandarizacin de estos cinco lengua-
jes representa un compromiso de requerimientos histricos, regionales
y especficos de cada sector. Se ha previsto la futura expansin (tal
como el principio de bloque de funcin o el lenguaje de Texto Estructu-
rado); adems, se ha incorporado la informacin necesaria sobre deta-
lles tecnolgicos (tipo de datos, etc.)
TP301 Festo Didactic
Captulo 5
Los elementos del lenguaje son explicados con la ayuda de un proceso
de mecanizado involucrado en la produccin de vlvulas. Se utilizan
dos censores para establecer si una pieza con los talados correcta-
mente realizados est disponible en la posicin de mecanizado. Si la
vlvula a mecanizar es del tipo A o el tipo B - esto se establece con
dos interruptores selectores - el cilindro avanza y mete la funda en el
taladro realizado.
El Diagrama de contactos o Diagrama en escalera (Ladder diagram) LD
El Diagrama de contactos es un lenguaje de programacin grfico den-
vado de los esquemas de circuitos de los mandos por rels directa-
mente cableados. El diagrama de contactos contiene lneas de alimen-
tacin a derecha e izquierda del diagrama; a estas lineas estn conec-
tados los reglones, que se componen de contactos (normalmente
abiertos y normalmente cerrados) y de elementos de bobina.
Diagrama de bloques de funcin (Function block diagram) FBD
En el diagrama de bloques de funcin, las funciones y los bloques de
funcin estn representados grficamente e interconectados en redes.
El diagrama de bloques de funcin tiene su origen en el diagrama Igi-
co que se utiliza en el diseo de circuitos electrnicos.
Eg. 85.4:
Ejemplo del lenguaje en
diagrama de contactos
Fig. 65.5:
Ejemplo del lenguaje en
bloques de funciones
Captulo 5
Fig. 85.6:
Ejemplo de lenguaje en
lista de instrucciones
Fig. B5.7:
Ejemplo de lenguaje en
texto estructurado
Lista de Instrucciones (Statement list o lnstruction bist) IL
La lista de instrucciones es un lenguaje textual tipo assembler, caracte-
rizado por un modelo de mquina simple (procesador con un slo re-
gistro). La lista de instrucciones se formula a partir de instrucciones de
control consistentes en un operador y un operando.
LD Pieza-TipoA
OR Pieza-TipoB
AND Pi ez~r esent e
AND Taladro-ok
ST Mete-funda
En lo que se refiere a filosofa de lenguaje, el diagrama de contactos,
el diagrama de bloques de funcin y la lista de instrucciones han sido
definidos en la forma en que son utilizados en la actual tecnologa de
PLC. Sin embargo, estn limitados a las funciones bsicas en lo que
concierne a sus elementos. Esto los aparta esencialmente de los dia-
lectos que las empresas utilizan en la actualidad. La competitividad de
estos lenguajes es mantenida debido al uso de bloques y bloques de
funcin.
Texto estructurado (Structured text) ST
El texto estructurado es un lenguaje de alto nivel basado en Pascal,
que consiste en expresiones e instrucciones. Las instrucciones pueden
definirse principalmente como: Instrucciones de seleccin, tales como
IF ... THEN ... ELSE, etc, instrucciones de repeticin tales como FOR,
WHlLE etc. y llamadas a bloques de funcin.
Mete-funda := (Pieza-TrpoA OR Pieza-TpoB) AND Piezagresente AND Taladro-OK; -
El texto estructurado permite la formulacin de numerosas aplicacio-
nes, ms all de la pura tecnologa de funciones, tales como algorit-
mos (algoritmos de regulacin de nivel superior, etc.) y manejo de da-
tos (anlisis de datos, procesamiento de estructuras de datos comple-
jas, etc.)
TP301 Festo Didactic
Captulo 5
Diagrama de funciones secuencial (Sequential function chart) SFC
El diagrama de funciones secuencial (casi idntico al GRAFCET fran-
cs) es un recurso de lenguaje para la estructuracin de los programas
de control orientados a secuencias.
Los elementos del diagrama de funciones secuencial son las etapas,
las transiciones y las derivaciones alternativas y en paralelo.
Cada etapa representa un estado del proceso de un programa de con-
trol, que se halla activo o inactivo. Una etapa consiste en acciones
que, al igual que las transiciones, estn formuladas en los lenguajes
IEC 1131-3. Las propias acciones pueden contener de nuevo estructu-
ras secuenciales. Esta caracteristica permite la estructura jerrquica de
un programa de control. Por lo tanto, el diagrama de funciones secuen-
cial es una herramienta excelente para el diseo y la estructuracin de
programas de control.
Festo Didactic T301
Captulo 6
Captulo 6
Elementos comunes de los
lenguajes de programacin
Captulo 6
6.1 Recursos de
un PLC
Fg. B6.1:
Designaciones para
Entradas, Salidas y
Segn IEC 1131-3, slo las entradas, las salidas y los elementos de
memoria pueden ser direccionados directamente por un programa de
control. En este caso, el direccionamiento directo significa que en el
programa, una entrada, salida o elemento de memoria del control esta
afectado inmediatamente y no indirectamente a travs de una variable
simblica definida. Naturalmente, IEC 1131-3 reconoce muchos otros
recursos, p. ej. temporizadores y contadores. Sin embargo, estos estn
integrados en funciones y bloques de funcin para asegurar el ms
alto grado posible de portabilidad del programa de control entre los
diferentes sistemas.
Entradas, salidas y la memoria
Los constituyentes ms importantes de un control incluyen las entra-
das, salidas y la memoria. Slo a travs de estas entradas puede un
control recibir informacin de los procesos conectados. De forma simi-
lar, slo puede influir en ellos a travs de sus salidas o almacenar
informacin para la subsecuente continuacin del proceso.
Las denominaciones para los recursos entradas, salidas y elementos
de memoria, estn definidos por IEC 1131-3 y son obligatorios..
Entradas
(Inputs)
Salidas
Memorias
Sin posteriores referencias, estos designan slo entradas y salidas bi-
narias y elementos de memoria de un slo bit, designados como flags
(tambien denominado marcas).
El estndar habla generalmente de variables representadas directa-
mente. Estas son variables que estn referidas directamente a las en-
tradas, salidas y elementos de memoria del control disponibles, relacio-
nadas con el hardware. La asignacin de entradas, salidas y memorias
(flags), y su posicin fsica o lgica en el sistema de control es definido
por el correspondiente fabricante del control.
Captulo 6
Siempre que el control lo soporte, pueden direccionarse recursos que
excedan de un bit. IEC 131 1-3 emplea otra letra para decribirlos, que
sigue a la abreviacin 1, Q y M y, por ejemplo, designa bytes y words.
IEC 1131-3 designa los tipos de datos mostrados en la fig. B6.2 en
relacin con las entradas, salidas y flags.
Secuencia de bits de longitud 1
Secuencia de bi de longitud 8
WORD Secuencia de bits de longitud16
Los tamaos de 1 bit, tal como describe el tipo de datos BOOL (boo-
leana) solamente pueden asumir los valores O 1. Consecuentemente,
el margen de valores para un dato del tipo BOOL consiste en dos
valores "O" y "1".
A diferencia de esto, hay que destacar que en el caso de los tipos de
datos de secuencia de bits, que consisten en ms de un bit, no hay un
rango de valores relacionado inmediatamente. Todos los tipos de datos
de secuencias de bits, tales como p. ej. BYTE y WORD son meramen-
te una combinacin de varios bits. Cada uno de estos bits tiene el
valor O 1, pero su combinacin no tiene su propio valor.
Los mtodos de designacin obligatorios para entradas, salidas y flags
de diferentes longitudes de bits estn representados en la fig. B6.3.
Fig. B6.2:
Tipos de datos
1, 0, M
o bien
IX, QX, MX
IB, QB, MB
IW, QW, MW
Fig. 86.3:
Designacin para
Entradas, Salidas y
Memorias
Festo Didactic TP301
Bit de entrada, bit de salida, bl de memoria
Byte de entrada, byte de salida, byte de memoria
Word de entrada, word de salida, word de memoria
1 bit
8 bR
16 bit
Captulo 6
Un bit individual de una entrada, salida o flag tambin puede ser direc-
cionado sin la abreviacin adicional X para el tipo de dato.
Como sea que los controles siempre tienen un nmero relativamente
grande de entradas, salidas y flags disponibles, estos deben ser espe-
cialmente identificados a efectos de diferenciacin. Para ello se utiliza
la numeracin indicada por IEC 113'1-3, como en el siguiente ejemplo:
IEC 1131-3 no especifica el margen de nmeros que se permite para
esta numeracin ni si deben empezar por O 6 por 1. Esto lo especifica
el fabricante del control.
I l
1x9
11 5
QW3
MI35
MX 2
Tambin deben utilizarse una cantidad jerrquica de entradas, salidas
y flags, si el control utilizado ha sido adecuadamente configurado.
Entrada 1
Entrada 9
Entrada 15
Word de salida 3
Byte de memoria 5
Memoria 2
Se utiliza un punto para separar los niveles individuales de la jerarquia.
El nmero de niveles de jerarquia no ha sido definido.
En el caso de numeracin jerrquica, la posicin ms alta en el nme-
ro de la izquierda debe ser codificado, los nmeros que siguen a la
derecha representan consecutivamente las posiciones ms bajas.
Ejemplo 13.8.5
TP301 Festo Didactic
Captulo 6
La estrada especificadas 13.8.5 puede por lo tanto representar:
Entrada 1
en inserto No. 3
en tarjeta No. 8
como Entrada No. 5
I 3. 8. 5
1 designaciones jerrquicas
IEC 1131-4 no hace ningn comentario en relacin con la asignacin
de bits individuales en un BYTE o WORD. Los fabricantes de los con-
troles a menudo eligen mtodos de designacin jerrquica para asignar
bits individuales como partes de words. As, F6.2 podra representar,
por ejemplo, el bit nmero 2 de la flag word nmero 6. Sin embargo,
esto no tiene que ser necesariamente as, ya que el flag bit F6.2 y la
flag word FW6 no necesariamente tienen que estar conectadas de al-
guna forma. Adems, no se ha hecho ninguna definicin sobre si la
numeracin de los bits individuales en una word deben empezar por la
derecha o por la izquierda (hasta ahora, el bit nmero O en el extremo
derecho ha sido el ms frecuentemente utilizado)
Variables directamente direccionadas
Si los recursos en un programa de control deben ser direccionados
directamente, a la designacin del recurso debe anteponerse el recur-
so %.
Ejemplos de variables directamente direccionables:
El uso de variables directamente direccionadas solamente es permisi-
ble en programas, configuraciones y recursos.
%IX12
o
%112
%IW5
%QB8
%MW27
Las unidades de organizacin de programas Funcin y Bloque de Fun-
cin deben operar exclusivamente con variables simblicas, para man-
tener el programa lo ms independiente posible del control y, con ello,
lo ms ampliamente utilizable.
Bit de entrada 12
Word de Entrada 5
Byte de Output 8
Word de Memoria 27
Festb Didactic TP301
Captulo 6
6.2 Variables y
La utilizacin de variables representadas exclusiva y directamente (re-
tipos de datos cursos, entradas, salidas y memoria) no es suficiente para crear pro-
gramas de control. Frecuentemente, se requieren datos, que contienen
informacin especfica, tambin de una naturaleza ms compleja. Es-
tos datos pueden ser especificados directamente, es decir, datos de
tiempo o valores de recuento, o accesibles slo a travs de variables -
es decir, a travs de una representacin simblica. Las definiciones
ms importantes para tratar con datos o variables se indica abajo.
Direccionamiento simblico
Un identificador simblico siempre consiste en una letra mayscula o
minscula, dgitos y un guin de subrayado. Un identificador debe em-
pezar siempre con una letra o un guin de subrayado. El guin de
subrayado puede utilizarse para hacer ms leble un identificador. Sin
embargo, es un carcter significativo. Por ello, los dos identificadores
Marcha-motor y Marchamotor son diferentes. No se permiten varios
guiones de subrayado. Si el control permite letras maysculas y mins-
culas, su utilizacin indistinta no debe tener significacin alguna. Los
dos identificadores MARCHAMOTOR y Marchamotor se interpretan
idnticamente y designan el mismo objeto.
Los siguientes identificadores no son permisibles:
no es ni una letra ni un nmero
Adems, los identificadores simblicos no deben ser idnticos que las
palabras clave. Como regla, las palabras clave son palabras reserva-
das para tareas especficas.
Representacin de datos
En un programa de control, debe ser posible especificar valores de
tiempo, de recuento, etc.
Consecuentemente, IEC 1131-3 ha establecido las definiciones para la
representacin de los datos a especificar
Valores de recuento
m Valores de tiempo
m Cadenas
TP301 Festo Ddactic
Captulo 6
IEC 1131-3 prev diferentes tipos de datos de tiempo:
Descripcin
Enteros
Nmeros en coma flotante
Nmeros de base 2
(Nmeros binarios)
Nmeros de base 8
(Nmeros actales)
Nmeros de base 16
(Nmeros hexadecimales)
Cero y Uno Booleanoc
m Duracin, es decir, para medicin de resultados
m Fecha
m Hora del dia, p. ej. para sincronizacin desde el inicio o el final de
un evento (tambin juntamente con la fecha)
Ejemplos
12, -8, 123-456*, +75
-12.0, -8.0, 0.123-4*
2#1111-1111 (255 decimal)
2#1101-O011 (21 1 decimal)
8#377 (255 decimal)
8#323 (21 1 decimal)
16#FF o 16M (255 decimal)
16#D3 o 16#d3 (21 1 decimal)
O, 1
El uso de subrayados entre dgitos es permisible para mejorar la
legibilidad. Sin embargo, el subrayado no es significativo.
Tabla B6.1:
Representacin de
datos numricos
Descripcin
Duracin de tiempo
Fecha
Hora del dia
Fecha y Hora
Tabla 86.2:
Representacin de tiempo,
fecha y hora
Ejemplos
T#18ms, t#3rn4s, t#3.5s
t#6h_20m_8s
T1ME#18ms
D#1994-07-21
DATE#1994-07-21
TOD#13:18:42.55
TIME-OF-DAY#13:18:42.55
DT#1994-07-21-13:18:42.55
DATE-AND-TlME#1994-07-21-13:18:42.55
La especificacin de la duracin de un tiempo consiste en una parte
introductoria, la palabra clave T# o t#, y una secuencia de secciones
relacionadas con el tiempo - es decir, das, horas, minutos, segundos
y milisegundos.
Festo Didactic TP301
Captulo 6
- Tabla B6.3:
Representacin de cadenas
Abreviaciones para datos de tiempo:
Tambin pueden utilizarse maysculas en lugar de minsculas y guio-
nes de subrayado para mejorar la lectura del dato.
d
h
m
S
rns
Tambin IEC 1131-3 ha especificado un formato fijo para la indicacin
de una fecha, hora del da o una combinacin de ambos. Cada especi-
ficacin empieza con una palabra clave; la informacin real se repre-
senta como se muestra en la tabla B6.2.
Dias
Horas
Minutos
Segundos
Milisegundos
Otro mtodo importante de representacin de fechas es el uso de una
secuencia de caracteres tambin conocida como cadena, que puede
ser requerida para el intercambio de informacin, es decir, entre dife-
rentes controles, con otros componentes de un sistema de automati-
zacin o tambin para la programacin de textos para visualizacin en
el control y en dispositivos de visualizacin.
Una cadena consiste en ninguno o varios caracteres, que empiezan y
terminan conuna coma volada.
TP301 Festo Didactic
Ejemplo
'6'
'Atencin'
Descripcin
Cadena de longitud 1, conteniendo el carcter 6
Cadena de longitud 7, conteniendo el mensaje Atencin
cadena vaca
Captulo 6
Tipos de datos
IEC 1131-3 define un gran nmero de tipos de datos para diferentes
tareas. Uno de estos tipos de datos, BOOL, ya ha sido mencionado.
Una variable del tipo BOOL asume el valor O bien el valor 1.
Otros dos importantes tipos de datos, denominados INT e UlNT defi-
nen nmeros enteros. Las variables del tipo de datos INT (integerlen-
tero) permiten valores numricos de -32 768 hasta +32 767. El margen
de valores del tipo de dato INT cubre tanto valores negativos como
positivos. Las variables del tipo UNlT (unsigned integerlentero sin sig-
no) slo permiten valores positivos. El margen de valores para las
UlNT va desde O a 65 535.. SINT (short integerlentero corto) y DlNT
(double integerlentero doble) son tipos de datos adicionales que defi-
nen nmeros enteros. Sin embargo, estos tiene un margen de valores
inferior o superior que el tipo de datos INT. El tipo de datos REAL
contiene nmeros en coma flotante. Estos son nmeros que pueden
contener lugares tras la coma, tales como el 3,24 -1,5. El tipo de
datos TIME se utiliza para especificar el tiempo, y puede contener una
duracin de tiempo como por ejemplo: 2 minutos y 30 segundos.
Tabla 86.4:
Un nmero de tipos de
datos elementales
Margen de valores
0, 1
O a 255
-32 768 a +32 767
-2 147483 648a+2 147483647
O a 65 535
+/-2.9E-39 a +/-3.4E+38
dependiendo de la implementacin
dependiendo de la irnplementacin
sin rango de valores declarable
sin rango de valores declarable
Palabra clave
BOOL
SlNT
INT
DlNT
UlNT
REAL
TIME
STRING
BYTE
WORD
Festo Didactic TP301
Tipo de Dato
Nmero Booleano
Entero corto
Entero
Entero doble
Entero sin signo
Nmero en coma flotante
Duracin de tiempo
Cadena de longitud variable
Secuencia de 8 bits
Secuencia de 16 bits
--
Captulo 6
Tabla 86.5:
Tipos de datos derivados
Aparte de estos tipos de datos predefinidos elementales, el usuario
tiene la posibilidad de definir sus propios tipos de datos. Esto es til en
casos en donde la definicin del problema va ms all del mbito de la
pura tecnologa de control.
Los tipos de datos derivados se declaran dentro de la construccin
TYPE ... END-TYPE. La declaracin completa se indica abajo para la
enumeracin del tipo Color en la tabla B6.5:
TYPE
Colo: (ROJO, AZUL, AMARILLO, NEGRO);
END-TYPE
El significado de los tipos de datos individuales en la tabla 86.5 se
explica brevemente abajo:
Tipo de dato derivado
Tipo de enumeracin
Tipo de subrango
Campos (array)
Estructuras
Un dato del tipo Color solamente puede asumir uno de los valores
ROJO, VERDE, AMARILLO o NEGRO.
Un dato del tipo Margen-referencia slo puede asumir valores entre
80 y 11 0, incluyen los limites inferior y superior 80 6 11 0.
= Un dato del tipo Posicion, representa una lista con 10 entradas.
Cada entrada tiene el valor de un nmero REAL. Con este indice
pueden indexarse las entradas individuales.
m Un elemento del tipo de datos Coordenadas contiene dos nmeros
REAL, a los que puede accederse a travs de sus nombres X e Y.
Declaracin
TYPE ... END-NPE
Cdor: (ROJO, AZUL, AMARILLO, NEGRO);
Margen-referencia: INT(80..110);
Posicion: ARRAY[l ..l O] OF REAL;
Coordenadas:
STRUCT
X:REAL;
Y:REAL;
END-STRUCT;
No todos los controles necesitan reconocer todos estos tipos de datos.
Cada fabricante dispone un juego de tipos de datos, que pueden utili-
zarse en el correspondiente control.
Captulo 6
Declaracin de variables
Con el uso de datos, debe definirse claramente el derecho de acceso a
estos datos. Con este fin, IEC 1131-3 utiliza una declaracin de varia-
bles.
Para comprender la funcin de una declaracin de variables, es nece-
sario establecer antes que el programa del control est construido en
unidades de organizacin individuales.
Estas unidades son:
m Configuracin
Recurso
m Programas
8 Bloques de funcin
m Funciones
Todas las variables tienen una posicin especifica. En el caso de len-
guajes de programacin en forma textual (IL y ST), las declaraciones
de variables con aproximadamente las mismas que las utilizadas en el
lenguaje Pascal. Para las formas grficas de representacin sera facti-
ble una forma tabular con el contenido equivalente. Sin embargo, esto
no est especificado en IEC 1131-3.
Todas las declaraciones de variables (fig. 86.5) siempre empiezan con
una palabra clave, que designa la posicin de la variable en la unidad
de organizacin del control, y termina con la palabra clave END-VAR.
VAR
Las variables y su asignacin a un tipo de datos, se introduce entre
estas palabras clave en las que se especifica un identificador o identifi-
cadores simblicos de las variables, el tipo de dato se indica tras dos
puntos y la declaracin se cierra con un punto y coma. Si se declaran
varias variables, se repiten correspondientemente. Normalmente, cada
declaracin se escribe en una lnea separada en este caso.
Temp : INT; ('Temperatura *)
Manual : BOOL; ('Flag para funcionamiento manual *)
Ueno, Abierto : BOOL; ('Flag para 'lleno' y 'abierto' *)
END-VAR
Festo Didactic TP307
Fig. B6.5:
Dedaracin de variables
Captulo 6
Tabla B6.6:
Palabras clave para la
declaracin de variables
IEC 1 131 -3 distingue entre seis tipos diferentes de acceso a las varia-
bles. Cada tipo tiene una palabra clave, que introduce la declaracin
de la variable.
Las variables de entrada son declaradas con las palabras clave
VAR-INPUT y END-VAR.
Variables de Entrada
Variables de Salida
Variables de Entradaalida
Variables locales
Variables globales
Variables externas
VAR-INPUT
VAR-OUTPUT
VAR-INOUT
VAR
VARGLOBAL
VAR-EXTERN
Las variables especificadas de esta forma representan variables de en-
trada, alimentadas externamente a una unidad de organizacin, p. ej,
un bloque de funcin. Estas slo pueden leerse dentro de la unidad de
organizacin. .
Fig. 86.6:
Declaracin de una
variables de entrada
No es posible hacer modificaciones.
VAR-INPUT
Input : INT; ('Valor de entrada
END-VAR
Anlogamente a esto, las variables de salida se definen con las pala-
bras clave VAR-OUTPUT y END-VAR
El dato que calcula una unidad de organizacin y devuelve de nuevo el
exterior se declara arriba.
Fig. B6.7:
Declaracin de una
variable de salida
Todos los resultados de una unidad de organizacin deben ser transfe-
ridos ms all de la unidad de organizacin a travs de variables de-
claradas de esta forma. Dentro de las unidades de organizacin, estas
pueden ser leidas y escritas. Externamente, slo se permite el acceso
de lectura.
VAR-OUTPUT
Result : INT; ('Valor de realimentacin
END-VAR
TP301 Festo Didactic
Captulo 6
En los casos en que se permitan variables conteniendo valores de en-
trada y salida, estos deben crearse con las palabras clave
VAR-INOUT y END-VAR.
VAR-IN-OUT
Value : INT;
END-VAR
Fig. B6.8:
Declaracin de una
variable de entradalsalida
Esta forma representa una tercera opcin y permite la declaracin de
variables, que pueden ser ledas y utilizadas dentro de una unidad de
organizacin.
En el caso de una variable declarada como VAR-IN-OUT, se asume
que ambos valores sern suministrados hacia y desde la unidad de
organizacin.
A menudo, se requieren variables para resultados intermedios, que de-
ben permanecer desconocidos externamente. La declaracin de tales
variables, denominadas locales, empieza con VAR y termina con
END-VAR.
VAR
z
END-VAR
: INT; ('Resultado intermedio
Fig. 66.9:
Dedaraddn de una
variable local
Las variables especificadas aqu son locales para una unidad de orga-
nizacin y solame te pueden ser utilizadas en ella. Son desconocidas
para otras unidades organizacionales y por lo tanto inaccesibles.
Una aplicacin tipica son las posiciones de memoria para resultados
intermedios, que no son de inters en otras zonas del programa. En el
caso de estas variables, hay que observar que tambin pueden existir
varias veces en diferentes unidades de organizacin. De esta forma,
es posible, por ejemplo, que varios bloques de funcin declaren la va-
.
riable local 2. Estas variables locales son completamente inde-
pendientes y difieren unas de otras.
Una variable tambin puede ser declarada globalmente, en cuyo caso
puede ser accedida universalmente. La necesaria declaracin se reali-
za de una forma similar, utilizando las palabras clave VAR-GLOBAL y
VAR-EXTERNAL.
Captulo 6
As es como se declaran todos los datos globales para un programa de
control. Los datos globales son accesibles universalmente. Esta decla-
racin slo puede hallarse en unidades de organizacin, configuracin
y recurso.
Fig. B6.1 O:
Declaracin de una
variable global
VAR-GLOBAL
Global-value: INT;
END-VAR
Para facilitar el acceso de, datos global a una unidad de organizacin,
esta declaracin debe ser registrada en la unidad de organizacin.
Fig. B6.11:
Declaracin de acceso a
una variable global
Sin la declaracin mostrada arriba, el acceso a los datos globales no
sera permisible.
VAR-EXTERNAL
Global-value: INT;
END-VAR
Esta estricta unidad de declaracin para todas las variables define uni-
camente .qu variables son reconocidas por una unidad de organiza-
cin y cmo pueden ser usadas. Un bloque de funcin puede, por
ejemplo, leer pero no cambiar sus variables de salida.
Se utiliza la palabra clave AT para asignar variables a las entradas y
salidas del control.
1 VAR
Las declaraciones hechas de esta forma son el mejor medio para defi-
nir el significado de todas las entradas y salidas del control. Si se pro-
duce un cambio en el sistema y su conexin al controlador, slo debe-
rn ser cambiadas estas declaraciones. Cualquier utilizacin p. ej. del
Pulsador-paro, o de la Temperatura en un programa existente, no se
ve afectada por el cambio.
Fig. B6.12:
Declaracin de variables
con asignacin a entradas
de un control
TP301 Festo Didactic
Pulsador-paro AT %12.3: BOOL;
Temperatura AT %IW3: INT;
END-VAR
Captulo 6
Sin embargo, segn IEC 1131-3 siempre es posible utilizar variables
direccionadas directamente sin tener que asignarlas a un identificador
simblico. La declaracin en este caso es como sigue:
VAR
AT %14.2 : BOOL;
AT %M1 : WORD;
END-VAR
Inicializacin
A menudo es esencial que a una variable se le asigne un valor inicial.
Este valor puede cambiar varias veces durante el procesamiento del
programa, incluso aunque haya estado definida el principio.
Los estados iniciales como estos tambin son importantes para otros
datos. Tales valores iniciales se especifican conjuntamente con la de-
claracin de las variables. Una variable global de este tipo denominada
p. ej. Docena se declara para que al principio del programa asuma el
valor 12.
VAR-GLOBAL
Docena : IM := 12;
END-VAR
Fig. 66.13:
Declaracin de una
variable global
con valor inicial
Como se ha mostrado en este ejemplo, el valor de inicializacin se
inserta siempre entre el tipo de dato - en este caso INT - y el punto y
coma de cierre. La especificacin del valor de inicializacin siempre
requiere el signo :=.
De esta forma, a cada variable se le puede especificar un valor inicial.
Fundamentalmente, las variables siempre tienen un valor inicial defini-
do al inicio del programa. Esto lo facilita la caracterstica definida en
IEC 1131-3, en donde los tipos de datos tienen un valor preestableci-
do. Cada variable es preasignada al valor inicial correspondiente al tipo
de dato - a no ser que se especifique lo contrario en el programa. Una
lista de los valores iniciales de una seleccin de tipos de datos elemen-
tales puede verse en la tabla B6.7.
Festo Didactic TP301
Tipo de dato
BOOL, SINT, INT, DlNT
UlNT
BYTE, WORD
REAL
TIME
STRING
Valor inicial
O
O
O
0.0
T#Oc
" (cadena vacia)
Tabla 86.7:
Valores iniciales
preestablecidos
- -
Captulo 6
6.3 Programa El programa para un control est dividido en unidades de organizacin
individuales, que son como sigue en el nivel de programacin:
Programas
Bloques de funcin
Funciones
Estas unidades de organizacin de programa estn disponibles en to-
dos los lenguajes de programacin
IEC 1131-3 define una amplia gama de funciones estandarizadas y
bloques de funcin para tareas de control tpicas. Aparte de estas fun-
ciones especificadas y bloques de funcin, IEC 1131-3 permite la.defi-
nicin de sus propias funciones y bloques de funcin. Los fabricantes o
los usuarios pueden as crear mdulos de software hechos a su medi-
da para determinadas aplicaciones.
Funciones
Las funciones son mdulos de software que, cuando se les invoca,
proporcionan exactamente un resultado (elemento de datos). Esta es la
razn por la que en un lenguaje textual, la invocacin de una funcin
puede ser utilizada como un operando en una expresin.
Las funciones no pueden contener informacin de estado; Esto signifi-
ca que la invocacin de una funcin con los mismos argumentos (par-
metros de entrada) deben proporcionar el mismo resultado.
La suma de valores enteros INT o la funcin lgica OR con ejemplos
de funciones.
Las funciones y su invocacin puede representarse grficamente o en
forma de texto.
Fig. B6.14:
Representacin
grdfica de una funcin
Entradas Salida
TP301 Festo Didactic
Captulo 6
Grficamente, una funcin se representa en forma de rectngulo. Todos los
-
parmetros de entrada se relacionan en el lado izquierdo, mientras que los
parmetros de salida se muestran en el lado derecho. En el interior del
rectngulo se indica el nombre de la funcin. Los parmetros formales de
entrada pueden especificarse a lo largo de los lados dentro del rectngulo.
Esto es necesario con algunos grupos de funciones, tales como las funcio-
nes de desplazamientos de bis, por ejemplo (fig. B6.15b). Para funciones
con entradas idnticas, como es el caco de la funcin de suma ADD (fig.
B6.15a) no se requieren nombres de los parmetros formales.
VAR
AT %QW4 : INT;
AT %IW9 : INT;
AT %IW7 : INT;
AT %MW1 : INT;
%MW1 a) sin nombres de
%IW9 parmetros formales
%IW2 - - %MW5 b) con nombres de
4- parmetros formales
Fig. ffi. 15:
Uso de parzmetros
fonnales con funciones
Las entradas o salidas booleanas de una funcin pueden ser negadas,
es decir, invertidas especificando un circulo directamente fuera del rec-
tngulo (fig. 86.1 6).
Fig. 86.16:
Representacin de
negaciones Booleanas
Festo Didactic TP301
Captulo 6
-
Si se invoca una funcin, deben conectarse sus entradas y la salida de
la funcin.
La funcin suma ADD ilustrada en la fig. B6.16 procesa valores ente-
ros INT, por lo cual, las variables direccionadas directamente tales
como %QW4 etc. estn declaradas como variables de tipo de dato
INT. De la misma forma, la funcin ADD podra aplicarse a valores del
tipo SINT o REAL.
Las funciones como estas, que funcionan para entrar parmetros de
tipos de datos diferentes, se denominan en IEC 1131-3 como funcio-
nes sobrecargadas, independientes del tipo. La Fig. 66.17 ilustra las
caractersticas de una funcin sobrecargada utilizando el ejemplo de
una funcin ADD.
Funcin ADD como ejemplo de funcin sobrecargada
Todos los tipos de datos que definen nmeros
son permisibles como parametros de
entrada de resultado
1
a) Parmetros de Entrada del tipo INT
general ejemplo
VAR
i
AT%IWI : INT;
AT%IW2 : INT;
AT %MW3 : INT;
Fig. B6.17:
Funcin sobrecargada de
tipo independiente
1
b) Parametros de entrada del tipo SINT
I
general ejemplo
VAR
1 .s~s: 4 T f SINT
AT AT %IB4 %IB5 : : SINT; SINT; .
AT %MB6 : SINT;
TP301 Festo Didactic
Captulo 6
Si una funcin sobrecargada est limitada a un determinado tipo de
datos por el control - p. ej., el tipo de datos INT como se muestra en
la fig 66.18 - esto se conoce como una funcin con tipo. Las funciones
con tipo son reconocibles por el nombre de su funcin. El tipo se indica
aadiendo un guin de subrayado, seguido del tipo deseado.
general ejemplo
VAR
AT%I WI : INT;
AT%IW2 : INT:
Funciones estndar
Las funciones estndar ms importantes para la realizacin de tareas
bsicas de tecnologa de control se relacionan a continuacin.
%IW2
Dado que una gran variedad de funciones estndar pueden funcionar
utilizando parmetros de entrada de diferentes tipos de datos, los tipos
de datos se han combinado en grupos. A cada grupo se le ha dado un
tipo de datos genrico. Los tipos de datos genricos ms importantes
se muestran en la tabla B6.8.
Fig. 86.18:
Una funcin con tipo
Tabla B6.8:
Tipos de datas genricos
ANY-NUM
ANY-INT
ANY-REAL
ANY-BIT
Todos los tipos de datos para nmeros en coma flotante. tales
como REAL y para nmeros enteros tales como INT, UINT, etc.
estn contenidos en ANY-REAL y ANY-INT.
Todos los tipos de datos para enteros tales como INT, UINIT, etc.
Todos los tipos de datos, definiendo nmeros en coma flotante
tales como REAL e LREAL
Todos los tipos de datos de secuencia de bits, tales como BOOL,
BYTE, WORD etc.
Captulo 6
-
Tabla B6.9:
Funciones booleanas
Bit-a-bit
Tabla B6.10:
Funciones de
desplazamiento de birs
ANY-BIT] *- t-- ANY-BIT
ANY-BIT
ANY-BIT ::: 3-l
* = nombre o smbolo
Nombre
AND
OR
XOR
NOT
Nombre
SHL
SHR
ROR
ROL
Smbolo
&
>=1
=2k+l
Descn'pci6n
Desplazar IN por N bi s hacia la izquierda, llenar con ceros la derecha
Desplazar IN por N bi s hacia la derecha, llenar con ceros la izquierda
Desplazar IN cclicamente por N bits hacia la derecha
Desplazar IN cclicamente por N bits hacia la izquierda
Descrjpcidn
Operacin AND de todas las entradas
Operacin OR de todas las entradas
Operacin OR-exclusiva de todas las entradas
Entrada negada
Captulo 6
ANY-BIT or ANY-NUM ]"' t AY-BIT or ANYNUM
. . .
= nombre o smbolo
a) Representacin grhfica
Nombre
GT
GE
EQ
LE
LT
NE
Descripcin:
Convierte variables del tipo BYTE, WORD etc. en
variables del tipo INT.
La variable de secuencia de bi s contiene datos en
formato BCD (nmero decimal codificado en binano)
SNnbolo
>
>=
-
-
<=
<
<>
Ejemplo:
Descripcin
Mayor que (secuencia descendiente)
Mayor o igual1 (secuencia monotbnica)
Igual
menor o igual (secuencia monotbnica)
Menor que (rsecuencia ascendente)
No igual, no expandible
Descripcin:
Convierte variables de tipo INT en variables de tipo BYTE,
WORD etc.
La variable de secuencia de bits contlene datos en formato
BC.
Ejemplo:
25 i-b 2#00l0~0101
Tabla 86.1 1:
Funciones de wmparacidn
Tabla 86.12:
Funciones para
cmversin de tipo
Festo Didactic TP301
Capitulo 6
ANY-NUM r?
ANY-NUM - . m 4-l
- ANY-NUM
Nombre Smbolo Descrlpciidn
ADD Suma todas las entradas
MUL Multiplica todas las entradas
SUB - Resta la segunda entrada de la primera
DIV 1 Divide la primera entrada por la segunda
MOVE
.- .-
Asigna una entrada a una salida. no ampliable
Bloques de funcin
Los bloques de funcin son mdulos de software que proporcionan uno
o varios parmetros resultantes.
Una caracterstica importante es la posibilidad de reutilizacin de los
bloques de funcin. Si debe utilizarse un bloque de control en un pro-
grama, debe crearse una copia. Esto se realiza a travs de la asigna-
cin de un nombre para cada caso. Junto con este identificador hay
una estructura de datos, que almacena los estados de esa copia del
bloque de funcin (valores de los parmetros de salida y variables in-
ternas). La informacin del estado de la copia del bloque de funcin
permanece inalterable entre un procesamiento y el siguiente.
Esto puede demostrarse utilizando el ejemplo del bloque de funcin
estndar para operaciones de recuento. El valor actual del contador
permanece de una operacin de recuento a la siguiente y puede as
ser interrogada en cualquier momento. Este tipo de comportamiento no
puede realizarse a travs del recurso lenguaje, como se describe arriba.
TP301 Festo Didactic
Captulo 6
Identificador
Tipo FB
Tipo dato
Tipo dato Tipo dato
Entradas Salidas
Tambin se dispone de la representacin grfica de bloques de funcin
(aparte de la representacin en uno de los lenguajes textuales). Estos
se representan por rectngulo de la misma forma que las funciones
(fig. 66.19). Los parmetros de entrada se introducen por la izquierda y
los parmetros de salida aparecen por la derecha. El tipo de bloque de
funcin se especifica dentro del rectngulo. A continuacin se introdu-
cen los nombres de los parmetros formales junto a los lados derecho
e izquierdo dentro del rectngulo o caja. El identificador, bajo el cual se
direcciona el mdulo, se direcciona como se ha descrito para el bloque
de funcin.
Si se utiliza un bloque de funcin, se le debe dar un identificador. Si
las entradas estn asignadas - es decir, hay disponibles parmetros
de transferencia actuales - entonces se utilizan estos para el procesa-
miento. Si las entradas no estn conectadas, entonces se accede de
nuevo a los valores almacenados en invocaciones anteriores o se utili-
zan los correspondientes valores iniciales.
La Fig. 66.20 muestra el uso (invocacin) del bloque de funcin
estndar para un contador.
Bloque de funcin - tipo CTU
.OoL dq .OoL (contador incremental)
BOOL
INT PV CV INT
Count-Pack
Use una copia del bloque de
de control
Fig. 86.19:
Representacin grfica
de una copia de un
bloque de funcin
Rg. 86.20:
Uso (invocacidn) del
bloque de funcin CT
( (contador incremental)
Captulo 6
La copia utilizada del bloque de funcin CTU lleva el identificador
Count-Pack. A cada flanco positivo de la entrada %11.3 el valor actual
del contador se incrementa en 1 unidad. Cuando se alcanza el valor
preestablecido de 10, la salida Q del Countgack, y con ello la salida
%Q2.5 asume una seal 1; en los dems casos se asume una seal 0.
Tambin es posible crear varias copias de uno y del mismo bloque de
funcin dentro de un programa de control, como se muestra en la fig.
86-21.
Fig. 136.21:
Uso de varias copias de
un bloque de funcin
Bloque de funcin - .
tipo TP (pulse timer)
Uso de vanas copias del
bloque de funcinTP
TP301 Festo Didactc
--
Captulo 6
Bloques de funcin estndar
La Tabla B6.14 relaciona los bloques de funcin ms importantes es-
tandarizado~ por IEC 11 31 -3.
Funciones definidas de usuario
Aparte de las funciones especificadas, IEC 1131-3 permite la definicin
de funciones propias .
SR
RS
CTU
CTD
TP
TON
TOF
R-TRlG
F-TFIG
Para la declaracin grfica se aplican las siguientes reglas:
Bloque de uncin biestable (activacih prioritaria)
Bloque de funcin biestable (desactivacin prioritaria)
Contador incremental
Contador decremental
Pulso de tiempo
Retardo a la conexin
Retardo a la desconexin
Deteccin de flanco: flanco ascendente
Deteccin de flanco: flanco descendente
m Declaracin de la funcin dentro de la construccin FUNCTION ...
END-FUNCTION.
m Especificacin del nombre de la funcin y los nombres de los par-
metros formales y tipos de datos de entradas y salidas de la funcin
Especificacin de los nombres y tipos de datos de variables intemas
utilizadas en la funcin; para ello puede utilizarse una construccin
VAR ... END-VAR. No pueden utilizarse copias de bloques de fun-
cin como variables intemas, ya que estas necesitaran el almace-
namiento de informacin del estado.
Programacin del cuerpo de la funcin en uno de los lenguajes LD,
FBD, IL, o ST.
Tabla 86.14:
Bloques de funcin
estndar
Festo Didactk TP301
Captulo 6
A la funcin ejemplo SPEC-MUL en la fig. B6.22 se le dan dos par-
metros del tipo INT. Los dos valores de parmetros son multiplicados y
se le aade la cifra 15. El valor as calculado es devuelto a la funcin
como resultado.
FUNCTION
(* Descripcin del interface externo *)
INT
(* Cuerpo de la funcin:
*)
(* Programado en lenguaje FBD *)
q * hTC SPEZ-MUL
El uso de la funcin podria ser como el que se ha mostrado en la fig.
86.23.
Fig. B6.22:
Ejemplo de una
funcin SPQ-MUL
Fig. B6.23:
Uso de la funcin
SPU-MUL
END-FUNCTION
VAR
AT Y ' 1 : I NT;
AT YdJlW2 : I NT;
AT %MW3 : INT;
AT%IW4 : INT;
AT WW5 : INT; .
EN D-VAR
TP301 Festo Didactic
Captulo 6
Bloques de funcin definidos por el usuario
La generacin de los propios bloques de funcin por el usuario es una
caracteristica importante de IEC 1 131 -3.
Se aplican las siguientes reglas para una declaracin grfica:
= Declaracin de bloques de funcin en una construccin FUNC-
TION-BLOCK ... END-FUNCTION-BLOCK.
Especificacin del nombre del bloque de funcin y de los nombres
de los parmetros formales y tipos de datos de las entradas y sali-
das del bloque de funcin.
Especificacin de los nombres y tipos de datos de variables inter-
nas; puede emplearse una construccin VAR ... END-VAR.
Programacin del cuerpo de la funcin en uno de los lenguajes LD,
FBD, IL, o ST.
Aqu no se ha tenido en cuenta el acceso de datos ampliado, tal como
las variables globales.
FUNCTION-BLOCK
(' Descripcin del interface externo *)
Filtro-rebotes
(* Cuerpo del bloque de funcin: *)
(' programado en lenguaje FBD *)
EP-ON EP-S
S1 Ql SOFF
s-oNrdrT :mi r
E-TI ME PT ET
I
Fig. 86.24 :
Dedaracin de un
bloque de funun
Festo Didactic TP301
Captulo 6
El bloque de funcin ilustrado en la fig. 86.24 representa un bl que de
funcin para la eliminacin de rebotes en las seales, consistentes en
dos parmetros de entrada, es decir, una entrada booleana para la
seal y una entrad de tiempo para el ajuste del tiempo de rebotes. El
parmetros de salida SOFF suministra la seal de salida sin rebotes.
Programas
Un programa consiste en cualquier cantidad de elementos de lenguaje
y construcciones, necesarios para conseguir el comportamiento desea-
do de la mquina o proceso a travs del PLC.
Por ello, los programas estn construidos principalmente por funciones,
bloques de funcin y los elementos del diagrama de funciones secuencial.
Por ello, las caractersticas de los programas son en gran parte idnti-
cos a los de los bloques de funcin. Lo nico que nos interesa en esta
etapa son las diferencias:
Las palabras clave delimitadoras para las declaraciones de progra-
ma son PROGRAM ... END-PROGRAM.
m La utilizacin de variables directamente direccionables solamente se
permite dentro de programas.
Un ejemplo de estose muestra en la figura 86.25.
Fig. B6.25:
Ejemplo de un programa
PROGRAM luz-escalera
VAR
Intermptor-F AT %IXO.O : BOOL; (^ Interruptor en la puerta
*)
Interruptor-A AT %IX0.1 : BOOL; (* Interruptor interior apartamento *)
Luz AT %QXO.O : BOOL; (* Luz de la escalera
: TP; (* Tiempo de encendido
*)
Duracion *)
Interruptor-F
Interruptor-A
Luz
T#3m PT ET
END-PROGRAM
TP301 Festo Didactic
Captulo 6
El nombre del programa es "Luz-escalera". Tres variables booleanas
Interruptor-F, Interruptor-A y Luz, asignadas a dos entradas y una sali-
da del PLC, han sido declaradas como variables internas. A esto se
aade la declaracin de una copia del bloque de funcin del tipo Pulse
Timer (TP).
El programa realiza la siguiente pequea tarea:
La luz de una escalera est encendida durante tres minutos, si se a o
ciona uno de los dos interruptores; el de la puerta o el del apartamento.
Festo Didactic TP301
Captulo 7
-
Captulo 7
Diagrama de bloques de funcin
Festo Didactic TP301
Captulo 7
-
7.1 Elementos del da- El diagrama de bloques de funcin es un lenguaje de programacin
grama de bloques grfico que es consistente, en la medida de lo posible, con la docu-
de fundn mentacin estndar IEC 617, P.12.
Fig. B7.1:
Diagrama de bloques
de funcin (FBD)
a) Operacin lgica de funciones
b) Uso de bloques de funcin
T-Arranque
Los elementos del diagrama de bloques de funcidn son funciones
representadas grficamente y bloques de funcin. Estas estn interco-
nectadas por lneas de flujo de seal, los elementos directamente enla-
zados formando una red de trabajo (Network)
La Fig. 87.1 ilustra dos simples ejemplos del diagrama de bloques de
funcin. En la Fig. B7.la, la variable Manual-desc y el resultado de
una comparacin 'mayor que' estn enlazados en OR. El resultado es
asignado a la variable Puerta-cerrada. La Fig. B7.lb representa el uso
de un bloque de funcin. El retardo de la seal T-arranque se pone en
marcha con la entrada W1.3 con el tiempo preestablecido de 7 segun-
dos. El estado del retardo de la seal, T-arranque.Q, se asigna a la
salida %Q2.4.
Captulo 7
-
La direccin del flujo de seales es una red de izquierda a derecha. Si 7.2 Evaluacin
una unidad de organizacin del programa consta de varias redes, es- de redes
tas son procesadas en secuencia de arriba a abajo.
La secuencia de procesamiento dentro de una unidad de programa de
organizacin puede ser influida por el uso de elementos para control
de la ejecucin. Este grupo de elementos incluye por ejemplo los sal-
tos condicionales e incondicionales. En la fig. B7.2 se utiliza un salto
condicional para realizar una derivacin en el programa.
Fig. B7.2:
Uso de un salto en FBD
El salto condicional, representado por una doble flecha, se ejecuta si
se cumple la condicin para el salto. Por ello, si la entrada %I1.1 y el
flag %M2.5 llevan ambos seal 1, entonces se ejecutar un salto a la
red con el identiicador Variante-1 y el proceso continuar en este punto.
Si hay que ejecutar un salto a una red, la red correspondiente debe
prefijarse con un nombre simblico, el flag del salto, terminando con
dos puntos. El flag de salto debe identificarse segn las reglas para los
nombres simblicos.
Festo Didactic TP301
Captulo 7
7.3 Estructuras Cuando se programa en el lenguaje FBD, hay que observar que dentro
en bucle
de las redes no se permiten estructuras de bucle. Las estructuras de
este tipo slo deben realizarse a travs del uso adicional de una ruta
de realimentacin. La Fig. B7.3b ilustra un ejemplo de esto.
a) estructura en bucle no permitida
b) estructura en bucle permitida
Fig. B7.3:
FBD con
estructuras en bucle
Por medio de la utilizacin de rutas de realimentacin, la tercera entrada
de la funcin OR asume un valor definido durante su procesamiento.
TP301 Festo Didactic
- --
Captulo 8
. , -- .
. Capitulo 8
Diagrama de contactos
Festo Didaotic TP301
Captulo 8
-
8.1 Elementos del El lenguaje de diagrama de contactos (o diagrama en escalera), al
diagrama de igual que del diagrama de bloques de funcin representa un lenguaje
contactos de programacin grfico. Los elementos disponibles en un diagrama de
contactos son los contactos y las bobinas en diferentes formas. Estas
estn dispuestas en renglones (rungs) entre las dos lneas verticales
de mando a derecha e izquierda.
de un rengln 1
La Fig. 88.1 ilustra la estructura bsica de un regln. En este ejemplo,
el estado del flag xM1.5 est directamente asignado a la salida
%Q3.5. La tabla 88.1 contiene una lista de los elementos ms impor-
tantes asignados a un diagrama de contactos.
I
Contactos
1
-+ E Contacto normalmente abierto
1 -( I Contacto normalmente cerrado
---( PE Contacto de flanco positivo
-+NE. Contacto de flanco negativo
Tabla B8.1:
Elementos del
diagrama de contactos
I
Bobinas
1 - - Bobina
1 3lk Bobina negada
1
-(S;- Activaci6n de una bobina remanente
1
- Desadivaci6n de una bobina remanente
1
-0- Bobina activada por flanco positivo
--e Bobina activada por flanco negativo
TP301 Festo Didactic
Captulo 8
Un contacto normalmente abierto suministra el valor 1 cuando se acti-
va el accionamiento del correspondiente interruptor. Un contacto. nor-
malmente cerrado reacciona correspondientemente con el valor 1,
cuando no se activa el correspondiente interruptor o pulsador.
Hay dos seales de flanco, que suministran seal 1 para la transicin
de O a 1 (flanco positivo) y de 1 a O (flanco negativo).
Con una bobina normal, el resultado (resultado de la operacin lgica
entre los contactos) es copiado a la variable especifica; en el caso de
una bobina negada, se transfiere el inverso (negacin) del resultado.
La bobina de activacin remanente asume el valor 1, si el resultado es
1, y permanece inalterable aunque el resultado pase a ser O. De forma
similar, la bobina de desactivacin remanente asume el valor O si el
resultado es 1. Se mantiene el estado O de la bobina.
Los flancos de las bobinas se activan si el resultado cambia de O a 1
(flanco positivo) o de 1 a O (flanco negativo).
Las funciones bsicas AND y OR pueden ser realizadas por medio de
una configuracin correspondiente de contactos en el rengln actual.
a) Funcin AND
%1 1.3 YiM3.2 %Q2.1
b) Funcin OR
I
lgicas en diagrama
de contactos
La funcin AND es representada por medio de la conexin en serie de
dos contactos (fg. B8.2a). La salida %Q2.1 slo se activa si ambas
entradas %11.3 y el flag xM3.2 se hallan activados. En todos los de-
ms casos, la salida %Q2.1 es desactivada.
Festo Didactic TP30 1
Captulo 8
La funcin OR se obtiene a travs de la conexion en paralelo de con-
tactos (fig. B8.2b). La salida xQ2.3 asume el valor 1, si la entrada
%11.5 o el flag xF3.3 asumen el valor 1, o si ambas condiciones se
cumplen simultneamente.
8.2 Funciones y Aparte de los elementos de contacto y bobina, LD proporciona el uso
bloques de ilimitado de funciones y bloques de funcin siempre que esta funcin
funcin est soportada por el control utilizado.
Un requisito previo para la incorporacin de las denominadas unidades
de organizacin, es la disponibilidad de por lo menos una entrada boo-
leana y una salida booleana del bloque en cuestin. Si no es este el
caso, la entrada booleana con el parmetro formal EN (enablelhabilita-
cin) se aada a las correspondientes funciones o mdulos de funcin
as como una salida booleana EN0 (enable OK habilitacin correcta).
Las entradas/salidas booleanas son necesarias para permitir que la go-
tencia fluya a travs del bloque.
Fig. B8.3:
Funciones y
blooues de funcin
en diagrama de contactos 1
a) Incorporacin de funciones
1
b) lnvocacidn de un bloque de funci6n
T-Arranque
La adicin mostrada en la Fig. B8.3a solamente se realiza si se aplica
una seal 1 a la entrada EN. Si es este el caso, las variables Canti-
dad-l y Cantidad2 se suman y el resultado de estas variables se
asigna a la variable Nivel-llenado. Al mismo tiempo, el valor de la sali-
da EN0 indica si la adicin ha sido ejecutada, activada y correcta
(ENO=I). Si. el bloque no ha sido procesado correctamente, la salida
EN0 asume el valor O.
Captulo 8
Los mdulos de funcin, tales como por ejemplo el retardo de seal
mostrado en la fig. B8.3 pueden incorporarse al diagrama de contactos
sin una entrada EN adicional ni una salida ENO. El bloque de funcin
es conectado con los elementos del rengln actual en la forma usual
con la entrada booleana IN y la salida booleana Q. Si la entrada %1.3
en la fig. B8.3b asume el valor 1, la copia del bloque de funcin
T-Marcha es procesada con la duracin de tiempo preestablecida de 7
segundos. El valor de la salida Q de T-Marcha se asigna a la salida
%Q2.4.
De forma simular al lenguaje de programacin grfico FBD, el flujo de 8.3 Evaluacin de
potencia, y como tal el procesamiento de una unidad de organizacin los renglones
del programa, es de izquierda a derecha y de arriba a abajo. De forma actuales.
similar la secuencia de procesamiento tambin puede cambiar en LD
utilizando elemento para el control de la ejecucin.
Rg. 88.4:
1 Ssb mndicionaI en LD
Si la condicin del saito, en este caso la operacin AND de la entrada
%I1.1 y el flag %M23 se cumple, se ejecuta un salto al rengln actual
con el identificador Variante-l. El procesamiento continua entonces a
partir de este rengln.
Festo Didactic TP301

Вам также может понравиться