Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Controles Lógicos Programables. Manual de Trabajo
Controles Lógicos Programables. Manual de Trabajo
Descripción del Un cilindro es accionado por medio de una electroválvula 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 posición
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 situación 1
--y
Definición del ejercicio 1. Trazado del esquema del circuito y montaje del equipo
2. Declaración de las variables del programa PLC
3. Formulación del programa de PLC en uno de los diversos lenguajes
de programación
4. Verificación y puesta a punto del programa de PLC y del sistema
Ejercicio 11
Cantidad Descripción
1 Unidad de conexión
1 Unidad de mantenimiento
1 Distribuidor
Tubo de plástico
Lista de componentes
L
4. Verificación y puesta a punto de un programa y un sistema PLC
HOJA DE TRABAJO
-
Esquema del
circuito elécfrico
HOJA DE TRABAJO
Declaración de variables
HOJA DE TRABAJO
HOJA DE TRABAJO
Ejercicio 12
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 sujeción *)
END-VAR
FBD
TP-Y 1
Bloque temporizador TP-Y1 ,
conectado con los parametros
S1 indicados.
T#IZs PT ET
LD
TP-Y 1
BE-
- .
IL
ST
Descripción del Dos componentes deben ser encolados con la ayuda de un cilindro
problema neumático 1.0. Para ello, las superficies a encolar se presionan entre
sí con una determinada fuerza por un período de 5 segundos. El tiem-
po empieza a contar desde que el cilindro abandona su posición final
retraída (sensor B1). Una vez transcurridos los 5 segundos, el cilindro
regresa a su posición inicial. El proceso de encolado se inicia por me-
dio del pulsador SI.
Croquis de situación 1
Definición del ejercicio 1. Trazado del esquema del circuito y montaje del equipo
2. Declaración de las variables del programa PLC
3. Formulación del programa de PLC en uno de los diversos lenguajes
de programación
4. Verificación y puesta a punto del programa de PLC y del sistema.
1 Unidad de conexión
1 Unidad de matenimiento
1 Distribuidor
Tubo de plástico
Lista de componentes
HOJA DE TRABAJO
HOJA DE TRABAJO
Declaración de variables
HOJA DE TRABAJO
Ejercicio 12
HOJA DE TRABAJO
Fig. A12.2:
Tiempo de respuesta del
ternporizador de pulso
Ejercicio 13
-
Controles lógicos programables Tema
BOOL
VAR
B1 AT : BOOL; (' Barrera fotoeléctrica *)
Y1 AT %QX1 : BOOL; (. Bobina Y1 del cilindro de *)
(' cerrar la puerta *)
TON-Y 1 : TON; (* Señal temporizada a la conexión *)
(' TON-Y1 para cerrar la puerta *)
END-VAR
FBD
TON-Y 1
Conexión de entradas y salidas
jzt
del bloque de función TON-Y1
B1 con 10s pargmetros actuales.
T#5s PT ET
LD
TON-Y 1
IL . .
ST
Descripción 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 más de tres segun-
dos. La posición de cilindro 1.0 se establece por medio de los interrup-
tores de proximidad B1 (retrafdo) y 82 (extendido).
Croquis de situación 1
.. -
Definición del ejercicio 1. Trazado del esquema del circuito y montaje del equipo
2. Declaración de las variables del programa PLC
3. Formulación del programa de PLC en uno de los diversos lenguajes
de programación
4. Verificación y puesta a punto del programa de PLC y del sistema
Cantidad Descripción
1 Unidad de conexión
1 Unidad de mantenimiento
1 Distribuidor
Tubo de plástico
Lista de wmponentes
HOJA DE TRABAJO
-
1. Trazado del esquema del circuito y montaje del equipo
Completar el esquema eléctrico del circuito e introducir las direcciones
disponibles de entrada y salida en el PLC que se utilice.
Esquema del
circuito el6ctrim
Declaración de variables 1
HOJA DE TRABAJO
BOOL
VAR
Doo~-closed AT %MX1: BOOL; Memoriapara enclavamien-*)
(' to de la puerta del horno *)
Y1 AT %QX1: BOOL; (' Bobina Y1 para el cil. de *)
(' apertura de la puerta. *)
TOF-Door TOF; (. Señal de desconexión re- *)
(' tardada TOF-Door *)
END-VAR
FBD
TOF-Door
Conexión de entradas y
salidas del bloque de función
Door-closed TOF-Door con los parhrnetros
actuales.
LD
D o o
TOF-Door
~ l o q ~ lq
~ y
t
. .
IL
ST
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 situación (
Definición del ejercicio 1. Trazado del esquema del circuito y montaje del equipo
2. Declaración de las variables del programa PLC
3. Formulación del programa de PLC en uno de los diversos lenguajes
de programación
4. Verificación y puesta a punto del programa de PLC y del sistema
Cantidad Descnjlción
1 Unidad de conexión
1 Unidad de mantenimiento
1 Distribuidor
HOJA DE TRABAJO
\
1. Trazado del esquema del circuito y montaje del equipo
Completar el esquema eléctrico del circuito e introducir las direcciones
disponibles de entrada y salida en el PLC que se utilice.
PLC I
Esquema del
circuito eléctrico
HOJA DE TRABAJO
Declaración de variables
HOJA DE TRABAJO
-
Controles lógicos programables Tema
Acciones ejecutivas:
vación de salidas
Activación y desactl-
Etapa
vación de memorias.
Activación y arranque
de temporizadores y
contadores
tradas y memorias
Condiciones de tran- Interrogación de
sición (condiciones de temporizadores
Interrogación de
contadores
I
Fig. A15.1:
Funciones de un
programa de control
o
en posición retralda
0
t
S Cilindro 2.0 avanza
Fíg. A 15.2:
Ejemplo de un sistema
l t 5.1: Cilindro 1.0 ha retrocedido
de control secuencia/
VAR
Y1 AT %QX1 : BOOL; (* Bobina Y1, Cilindro 1.O
Y2 AT %QX2 : BOOL; (' Bobina Y2, Cilindro 2.0
B1 AT %IX1 : BOOL; (' Pieza en almacén
82 AT %IX2 : BOOL; (' Pieza expulsada
B3 AT %IX3 : BOOL; (' Cilindro 1.O retraído
B4 AT %IX4 : BOOL; (* Cilindro 1.O extendido
B5 AT %IX5 : BOOL; (* Cilindro 2.0 retraído
B6 AT %IX6 : BOOL; (' Cilindro 2.0 extendido
Fig. A 15.3:
Ejemplo de un diagrama
de funciones secuencial
Ejercicio 15
VAR
Y1 AT : BOOL; (* Bobina Y1, Cilindro 1.O
Y2 AT : BOOL; (* Bobina Y2, Cilindro 2.0
B1 AT : BOOL; (* Pieza en almacén
82 AT : BOOL; (* Pieza expulsada
83 AT : BOOL; (* Cilindro 1.0 retraído
B4 AT : BOOL; (* Cilindro 1.O extendido
B5 AT : BOOL; (* Cilindro 2.0 retraido
B6 AT : BOOL; (* Cilindro 2.0 extendido
Fig. A 15.3:
Ejemplo de un diagrama
de funciones secuencia1
Etapa n-1
Condiciones de habilitacián
para la etapa n
Etapa n+l R
Ejercicio 15
VAR
Y1 AT %QX1 : BOOL; (' Bobina Y1, Cilindro 1.O
Y2 AT %QX2 : BOOL; (' Bobina Y2, Cilindro 2.0
B1 AT %IX1 : BOOL; (' Pieza en almacén
B2 AT %IX2 : BOOL; (' Pieza expulsada
B3 AT %IX3 : BOOL; (* Cilindro 1.O retraído
B4 AT %IX4 : BOOL; (' Cilindro 1.O extendido
85 AT %IX5 : BOOL; (' Cilindro 2.0 retraido
B6 AT %IX6 : BOOL; (* Cilindro 2.0 extendido
RS-S1 : RS; (' Flip-flop para Etapa S1
RS S2 : RS; (* Flip-flop para Etapa S2
R S ~ S ~ : RS; (' Flip-flop para Etapa S3
RS-S4 : RS; (' Flip-flop para Etapa S4
RSS5 : RS; (' Flip-flop para Etapa S5
RS-Y 1 : RS; (' Flip-flop para bobina Y1
RS-Y2 : RS; (' Flipflop para bobina Y2
RS-S 1
RS-SI.Ql - & -
B3 - RS-S2
85 -
B1 - RS (* Activación del *)
-S Q1 (* flipflop para *)
Fig. A 75.5: RS-S3.Ql (* Etapa S2 *)
R1
Ejemplo de una secuencia
de etapas con elementos
memorizantes RS
Ejercicio 15
RS-S3
RS-S4
RS-S5
RS-S.QI
RS_S5.Q1
4 RS-Y 1
RS-Y 2
RS-S3.QI
RS-9.Ql
$:I RSQl Y2 (' Cilindro
(* Bobina Y22.0para *) Fig. A15.5:
Ejemplo de una secuencia
de etapas con elementos
memorizantes RS
(continuación)
Croquis de situacidn 1
1. Trazado del esquema del circuito y montaje del equipo Definición del ejercicio
2. Descripción de la tarea de control por medio del diagrama de funcio-
nes secuencial IEC 848
3. Declaración de las variables del programa PLC
4. Formulación del programa de PLC por medio del diagrama de fun-
ciones secuencial IEC 848
o Programación de las condiciones de transición directamente en
uno de los lenguajes FBD, LD o ST
o Especificación de las acciones como acciones booleanas
Cantidad Descn'pci¿n
1 Unidad de conexión
1 Unidad de mantenimiento
1 Disttibuidor
-
2 Cilindro de doble efecto
¡Desconectar la alimentación!
¡Cortar el aire comprimido en la unidad de mantenimiento!
-
5. Verificación y puesta a punto de un programa y un sistema PLC
HOJA DE TRABAJO
HOJA DE TRABAJO
Declaración de variables
HOJA DE TRABAJO
t Pieza pequeiia
t Pieza grande
w
u
N Expulsar pieza
VAR
B1 AT %IX1.0 : BOOL; (* pieza grande o pequeña *)
B2 AT %lX1.1 : BOOL; (* sólo para pieza grande *)
B3 AT %IX2.0 i: BOOL; (* cilindro 1.O retraído *)
B4 AT %IX2.1 : BOOL; (* cilindro 1.O extendido *)
B5 AT %IX2.2 : BOOL; (' cilindro 2.0 retraído *)
B6 AT %IX2.3 : BOOL; (* cilindro 2.0 extendido *)
B7 AT %IX2.4 : BOOL; (* cilindro 3.0 retraído *)
88 AT %IX2.5 : BOOL; (* cilindro 3.0 extendido *)
B9 AT %IX2.6 : BOOL; (' cilindro 4.0 retraído *)
B10 AT %IX2.7 : BOOL; (* cilindro 4.0 extendido *)
Y1 AT %QX1.0 : BOOL; (* cilindro 1.0: fijación *)
Y2 AT %QX1.1 : BOOL; (* cilindro 2.0: estampar pequ. *)
Y3 AT %QX1.2 : BOOL; (* cilindro 3.0: estampar grande *)
Y4 AT %QX1.3 : BOOL; (' cilindro 4.0: explusor *)
Fig. A 16.2:
Ejemplo de diagrama de
funciones secuencia1 con
derivación alternativa
1 Croquis de siluaci6n
Definición del ejercicio Trazado del esquema del circuito y montaje del equipo
2. Descripción de la tarea de control por medio del diagrama de funcio-
nes secuencial IEC 848
3. Declaración de las variables del programa PLC
4. Formulación del programa de PLC por medio del diagrama de fun-
ciones secuencial
o Programación de las condiciones de transición directamente en
uno de los lenguajes FBD, LD o ST
o Especificación de las acciones como acciones booleanas
Cantidad Designación
1 Unidad de conexión
1 Unidad de mantenimiento
1 Distribuidor
Nota:
Las partes componentes de la declaración de variables en esta sección
del ejercicio están representadas en forma tabular. Si se utilizan siste-
mas de PLC reales, las entradas y la representación de la declaración
de variables depende del sistema utilizado.
-
5. Verificación y puesta a punto de un programa y un sistema PLC
HOJA DE TRABAJO
-
24V
PLC
r OV
O I I I I 1 1 I
Esquema del
circuito eléctrico
Fesio. Didactic
. TP301
Ejercicio 16
HOJA DE TRABAJO
HOJA DE TRABAJO
Declaración de variables
HOJA DE TRABAJO
BOOL
INT
BOOL
INT
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
B1
M-init
12
4-1
'
PV cv
M-new
Bloque de función CTU-1,
conectado con los
parámetros actuales.
LD
CTU-1
Interconexióndel bloque de
función CTU-1 en el renglón.
PV cv Tabla A17.1:
Aolicación de un
contador incremental
IL
ST
En una máquina se estampan 10 piezas cada vez. El ciclo del progra- Descripción del
ma se inicia poy medio de un pulsador SI. El interruptor de proximidad problema
87 indica "Pieza en almacén". Cada pieza se alimenta hacia la máquina
por medio de un cilindro 1.0 y se sujeta. A continuación se estampa a
través del cilindro 2.0 y después se expulsa por medio del cilindro 3.0.
El cilindro de sujeción 1.0 funciona por medio de una electroválvula de
doble bobina Y1 (sujeción) e Y2 (liberación). Los cilindros 2.0 y 3.0 son
controlados por electroválvulas 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
Definición del ejercicio 1. Trazado del esquema del circuito y montaje del equipo
, .
Cantidad Descripción
1 Unidad de conexión
1 Unidad de mantenimiento
1 Distribuidor
Tubo de plástico
Lista de componentes I
I I
m ¡Desconectar la alimentación!
m ¡Cortar el aire comprimido en la unidad de mantenimiento!
-
5. Verificación y puesta a punto de un programa y un sistema PLC
a Documentar la solución.
HOJA DE TRABAJO
Esquema del
circuito eléctrico
HOJA DE TRABAJO
HOJA DE TRABAJO
Declaracidn de variables
HOJA DE TRABAJO
HOJA DE TRABAJO
Los autores
Capítulo 1
El PLC en la
tecnología de automatización
Capítulo 1
Fig. 61.1:
Ejemplo de aplicación
de un PLC
Capítulo 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 aplicación. 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 módulos adicionales de
entradaslsalidas, módulos analógicos y de comunicación. 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 automatización, creando así áreas considerablemente
amplias de aplicación.
Fig. 81.2:
Eiem~lode un PLC:
El término 'Control Lógico Programable' se define en IEC 1131, Parte 1, 1.3 Definición básica
como sigue: de un PLC
'Un sistema electrónico de funcionamiento digital, diseñado para ser
utilizado en un entorno industrial, que utiliza una memoria programable
para el almacenamiento interno de instrucciones orientadas al usuario,
para la realización de funciones especificas tales como enlaces lógi-
cos, secuenciación, temporización, recuento y cálculo, para controlar, a
través de entradas y salidas digitales o analógicas, diversos tipos de
máquinas o procesos. Tanto el PLC como sus periiféricos asociados
están diseñados de forma que puedan integrarse fácilmente en un sis-
tema de control industrial y ser fácilmente utilizados en todas las apli-
caciones para las que están previstos."
Fig. B1.3:
Componentes de un
sistema PLC
Fig. B 1.4:
PLC compacto
(Mitsubishi EXO),
PLC Modular
(Siernens S7-300),
PLC con tarjetas
(Festo FPC 405)
-
El diseño del hardware de un control lógico programable está hecho de
forma que pueda soportar los entornos tipicos industriales en cuanto a
los niveles de las señales, calor, humedad, fluctuaciones en la alimen-
tación de corriente e impactos mecánicos.
1.4 El nuevo estándar A finales de los setenta, se plantearon en Europa algunos estándares
para PLC, válidos para la programación 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 lógicas con
señales binarias. DIN 19 239, por ejemplo, especifica un lenguaje de
programación 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 años ochenta, tales como el procesamiento de seña-
les analógicas, interconexión de módulos inteligentes, sistemas de PLC
en red, etc. agravaron el problema. Consecuentemente, los sistemas
PLC de diferentes fabricantes requerían técnicas de programación
completamente diferentes.
Desde 1992, existe un estándar internacional para controles lógicos
programables y dispositivos periféricos asociados (herramientas de
programaci6n y diagnosis, equipos de verificación, interfaces hombre-
máquina, 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 estándar IEC 1131 consta de cinco partes:
Parte 1: Información general
Parte 2: Requerimientos y verificaciones del equipo
m Parte 3: Lenguajes de programación
m Parte 4: Directrices para el usuario
m Parte 5: Especificación del servicio de mensajes
Las partes 1 a 3 de este estándar se adoptaron sin enmiendas como el
estándar Europeo EN 61 131, Partes 1 a 3.
La finalidad del nuevo estándar era definir y estandarizar el diseño y
funcionalidad de un PLC y los lenguajes requeridos para la programa-
ción hasta un grado en el que los usuarios pudieran hacer funcionar
sin ninguna dificultad los diferentes sistemas de PLC de los distintos
fabricantes.
Los siguientes capítulos tratarán con detalle sobre este estándar. Por
el momento, será suficiente la siguiente información:
m El nuevo estándar tiene en cuenta la mayoría de aspectos posibles
en relación con el diseño, aplicación y utilización 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-
tándar, tanto en el aspecto puramente técnico de los requerimientos
de un PLC como en lo que se refiere a la programación 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 estándar.
La mayoría de los principales proveedores de PLC son miembros de la
asociación, es decir, Allen Bradley, Klkker-Moeller, Philips, para men-
cionar algunos. Otros fabricantes de PLC como Siemens o Mitsubishi
también ofrecen controles y sistemas de programación conformes con
IEC-1131. ,
Capitulo 2
Fundamentos
Capítulo 2
-
2.1 El sistema de La característica del sistema de numeración decimal, comunmente utili-
numeración zado, es la disposición lineal de los digitos y su emplazamiento signifi-
decimal cativo. El número 4344, por ejemplo, puede representarse como sigue:
2.2 El sistema de Fue Leibnitz quien aplicó por primera vez las estructuras del sistema
numeración de numeración decimal al calculo con dos dígitos. Allá por el año 1679,
binario esto creó las premisas esenciales para el desarrollo de los actuales
ordenadores, ya que la tensión eléctrica o la corriente eléctrica, sólo
permite un cálculo utilizando dos valores: es decir "circula corrienten o
"no circula corriente". Estos dos valores se representan en forma de
dígitos '1" y "On.
2.3 El código BCD Para las personas acostumbradas a tratar con el sistema decimal, los
números binarios son difíciles de leer. Por esta razón, se introdujo una
representación numérica de más fácil lectura, es decir, una notación
decimal codificada de un número binario: el denominado BCD (binary
coded decimal). Con este código BCD, cada digito del sistema de nu-
meración decimal representa a su correspondiente número binario.
Tabla 82.1:
Representación de
números decimales en
cddigo BCD
Ejemplo
Por lo tanto, el número 87BCls dado como ejemplo se lee como sigue:
8~16~+7~16~+11~16~+12~16~=3474810
Hasta ahora, hemos tratado solamente con números enteros y positi- 2.5 Números binarios
vos, sin tener en cuenta los números negativos. Para poder trabajar con signo
con estos números, se decidió que el bit más significativo en el extre-
mo izquierdo de un número binario se utilizaría para representar el
signo: así "O" corresponde al "+" y "1" al "-".
AsC, 1111 11112= -1271oy0111 11112= +12810
Cuando se utiliza el bit más significativo para el signo, se dispone de
un bit menos para la representación de un número con signo. Para la
representación de un número binario de 16 dígitos, se obtiene el si-
guiente margen de valores:
Aunque ahora ya es posible representar con O y 1 números enteros 2.6 Números reales
positivos con signo, aún hay la necesidad de poder representar los
decimales o números reales.
Para representar un número real en notación binaria de ordenador, el
número se descompone en dos grupos, una potencia de 10 y un factor
de multiplicación. Esto se conoce también como notación cientifica de
números.
Capítulo 2
-
El número 27,334 se convierte así en 273 341 x lo? Por lo tanto se
necesitan dos números enteros con signo para representar un número
real en un ordenador.
2.7 Generación de Como ya parece haber quedado claro en la sección anterior, todos los
señales ordenadores, y por lo tanto todos los PLCs, funcionan utilizando seña-
digitales y les digitales o binarias. Por binario, entendemos una señal que sólo
binarias reconoce dos valores definidos.
Fig. B2.2:
Márgenes de tensión I
Fig. B2.3:
Conversión de una
señal analógim en
1 una señal digital
Ejemplo 1 1 0 1 1 1 0 1 1 187
Ejemplo 2 O O 1 1 O O 1 1 51
Ejemplo Ejemplo3 O O O O O O O O O
Capítulo 3
Capítulo 3
Operadores Booleanos
Fig. 83.1:
Esquema del circuito 1
El pulsador S1 actúa 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
Fig. B3.2:
Función NOT
Fig. B3.3:
Dos funciones
i'ógicas NOT
Fig. 83.4:
Esquema del circuito
Capítulo 3
Función AND
Además, valen las siguientes ecuaciones para la conjunción
Fig. 83.6:
Esquema del circuito
Fig. 83.7:
Función OR
-
Valen también las siguientes ecuaciones para la disyunción:
3.2 Otras operaciones En la sección 83.1 se ha descrito la realización eléctrica de las opera-
lógicas ciones NOT-IAND-IOR. Naturalmente, cada una de estas funciones
puede también realizarse con componentes neumáticos y electrónicos.
El álgebra de Boole reconoce también las siguientes operaciones Iógi-
cas. La siguiente tabla proporciona un resumen de ellas.
Tabla 83.1:
Conexiones lógicas
Nombre Ewaci6n Tabla verd. S(rnbolo lógico Realización neuMtiw Realiz. el6drica Realiz. electrhica
ldentidad
Negación
I=A
T=o
$
1 o
l
1
0
-
a 0
I
-r
lo
7T
10
lb
1:E0
o+ - ; :
11 12 O
Conjunci6n ~= 0
l l 12 0 0 0
~=El-O
@-
O
- -
Disyunci6n Il u12 = O
Capítulo 3
Tabla 83.1:
Conexiones lógicas
(continuación)
Fig B3.8;
estación de clasificación 1
Las piezas con la siguiente distribución de agujeros son para el tipo de
cocina 'Estándar'. Estas piezas deben extraerse de la cinta transporta-
dora por medio del cilindro de doble efecto 1.O.
Tabla de la verdad
Capítulo 3
Para obtener la ecuación lógica 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 estándar disyuntiva
En la forma estándar disyuntiva, se agrupan todas las conjunciones
(operaciones AND) de las variables de entrada que producen la señal
de salida 1, en una operación disyuntiva (operación OR). El estado O
de la señal de entrada se toma como valor negado, y el estado 1 de la
señal de entrada, como no-negada (directa).
Por lo tanto, en el caso del ejemplo dado, la operación Iógica es la
siguiente:
3.4 Simplifiación de Ambas ecuaciones para el ejemplo dado son bastante amplias, si bien
funciones lógicas más larga aún es la que se ha dado como forma estándar conjuntiva.
Esto define el criterio para utilizar la forma estándar disyuntiva o con-
juntiva: La decisión se hace en favor de la forma más corta de la
ecuación. En este caso la forma estándar disyuntiva.
Propiedad conmutativa
avb=bva a ~ b = b ~ a
Propiedad asociativa
avbvc=av(bvc)=(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 -- - -
avb=aAb a ~ b = a v b
Aplicadas al ejemplo citado, se obtiene el siguiente resultado:
-
y = abcd v abcd v a E d 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)
Tabla de valores
Fig. m.7:
Tabla de valores
~ ~ 3 0Festo
1 Didactic
Capítulo 3
Fig. B3.11:
Tabla de valores
Fig. B3.12:
Tabla de valores
Capítulo 4
Fig. 84.1:
Diseiio fundamental de
1
r
un microordenador
Fig. 84.2:
Control Lógico Programable
Festo FPC 101
-
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
tecnología de control.
Diseño de la unidad central
La Fig. 84.3 muestra una versión simplificada de un microprocesador,
que representa el corazón de un microordenador.
Bus de datos
3
-
l
8
Bus de control 46
- Bus de
I
1-1
Unidad aritrnetica Unldad de control
Bus de
Fig. 84.3: h direcciones 1
Diseti0 de un
micmprocesador
Bus de datos
Mkro
Seiiales de control
I
Contador de
programa
v
Direcciones
Tabla de imagen
Entradas Entradas
Programa PLC
Tabla de imagen
Salidas Salidas
Fig. 84.5:
Procesamiento cíclico
de un programa de PLC
RAM
La memoria RAM (random acceso memory/memoria de acceso aleato-
rio) es una memoria muy rápida y económica. Dado que la memoria
principal de los ordenadores (y también 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 fácilmente.
La desventaja de una RAM es que es volátil, es decir, el programa
almacenado en la RAM se pierde en el caso de un fallo de tensión.
esta es la razón 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 años, el respaldo de una
RAM por pila es relativamente simple. A pesar de que se utilizan pilas
o baterías de altas prestaciones, es esencial sustituirlas en las fechas
indicadas por el fabricante del PLC.
-
EPROM
La EPROM (erasable programmable read-only memory /memoria de
sólo lectura, programable y borrable) también es una memoria rápida y
de bajo coste y, en comparación con la RAM tiene la ventaja añadida
de que no es volátil, es decir, es remanente. Por ello, el contenido de
la memoria permanece inalterable incluso ante un fallo de tensión.
EEPROM
La EEPROM (electrically erasable programmable ROM 1 ROM progra-
mable y borrable eléctricamente ), EEROM (electrically erasable ROM 1
ROM borrable eléctricamente) y la EAROM (electrically alterable ROM 1
ROM alterable eléctricamente) o las flash-EPROM han sido utilizadas
desde hace algún tiempo. La EEPROM es especial, es ampliamente
utilizada como memoria de aplicación en PLCs. La EEPROM es una
memoria borrable eléctricamente, que puede reescribirse.
Capítulo 4
-
4.5 Módulode El módulo de entradas de un PLC es el módulo al cual están conecta-
entradas dos los sensores del proceso. Las señales de los sensores deben pa-
sar a la unidad central. Las funciones importantes de un módulo de
entradas (para la aplicación) es como sigue:
Detección fiable de la señal
Ajuste de la tensión, desde la tensión de control a la tensión lógica
Protección de la electrónica sensible de las tensiones externas
= Filtrado de las entradas
Sefial Señal a la
entrad unidad de
Fig. B4.7:
control
Diagrama de bloques
de un módulo de entradas 1
4.6 Módulo de salida Los módulos de salida llevan las señales de la unidad central a los
elementos finales de control, que son activados según la tarea. Princi-
palmente, la función de una salida - vista desde la aplicación del PLC
incluye lo siguiente:
m Ajuste de la tensión desde la tensión lógica a la de control
Protección de la electrónica sensible de tensiones espúreas hacia el
control
Amplificación de potencia suficiente para el accionamiento de ele-
mentos finales de control
Protección de cortocircuito y sobrecarga de los módulos de salida
En el caso de módulos de salida, hay disponibles dos métodos funda-
mentalmente diferentes para conseguir lo indicado: El uso de relés o
de electrónica de potencia.
Setial de Señal de
la unidad salida
Fig. B4.8:
central
Diagrama de bloques
de un-m6dulo de salida 1
4.7 Dispositivo Cada PLC tiene una herramienta de diagnosis y programación para
programador / soportar la aplicación del PLC
Ordenador
personal
m Programación
Verificación
Puesta punto
Localización de averías
Documentación del programa
m Almacenamiento del programa
Capítulo 4
datos internos
o Supervisión de los tiempos de ejecución
o Formato en tiempo real de la ejecución del programa
Capítulo 4
Documentación
Creación de una descripción del sistema PLC y el programa del
usuario. Esto consiste en:
a Descripción de la configuración del hardware
Impresión del programa de usuario con los correspondientes da-
tos e identificadores para las señales y comentarios
a Lista de referencias cruzadas para todos los datos procesados
tales como entradas, salidas, temporizadores, etc.
a Descripción de las modificaciones
Capítulo 5
Programación de un PLC
- -
Capítulo 5
D Especificación
- Tecnología, croquis de situacion
- Macroestructura de los programas de
control
Realización
ST y10 SFC
- Simulación de subprogramas y del
conjunto de programas
Fig. 85.1:
Modelo de fases para
la generación de
mPuesta a punto
- Verificación de los subprogramas
- Verificación del conjunto de programas
software de PLC
-
Fase 3: Realización (Programación del concepto de la solución)
La traducción del concepto de la solución en un programa de control
se realiza a través de los lenguajes de programación definidos en IEC
1131-3. Estos son: diagrama de funciones secuencial, diagrama de
bloques de función, diagrama de contactos, lista de instrucciones y tex-
to estructurado.
Los sistemas de control que funcionan en un proceso tiempoAógica y
están disponibles en FCH según DIN 40 719, P.6, pueden ser clara y
fácilmente programados en diagrama de funciones secuencial. Un dia-
grama de funciones secuencial, en la medida de los posible, utiliza los
mismos componentes para la programación que los utilizados para la
descripción en el diagrama de funciones según DIN 40 719, P.6.
Diagrama de contactos, diagrama de bloques de función y lista de ins-
trucciones son los lenguajes de programación adecuados para la for-
mulación de operaciones básicas y para sistemas de control que pue-
den ser descritos por simples señales lógicas combinadas por opera-
ciones booleanas.
El lenguaje de alto nivel denominado 'texto estructurado' se utiliza prin-
cipalmente para crear módulos de software de contenido matemático,
tales como módulos para la descripción de algoritmos de regulación.
En la medida en que los sistemas de programación 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-
ción y eliminación de errores ya en una etapa inicial.
-
Documentación
Un componente importante y crucial de un sistema es la documenta-
ción, ya que es un requerimiento esencial para el mantenimiento y am-
pliación de un sistema. La documentación, incluyendo los programas
de control, debería estar disponible tanto en papel como en un soporte
de almacenamiento de datos. La documentación consiste en la infor-
mación sobre las fases individuales, listados del programa de control y
de cualquier información adicional posible concerniente al programa de
control. Individualmente estos son:
Descripcibn del problema
Croquis de situación
Esquema del circuito
Esquema técnico
Listados del programa de control en SFC, FBD, etc.
Lista de asignaciones de entradas y salidas
(esto también forma parte de los listados del programa de control)
Documentación adicional
[ ] -
RECURSO DE
CONFIGURACI~N
vAR-GLoBAL
RUTA-ACCESO
- Configuración
un sistema de de
automatización
Estructuraci6n
del nivel de
configuración
fK]
BLOQUE-FUNCl6N programa
FUNCIÓN
- Modularización
TIPO-DATOS
L J
I Fig. B5.2:
IEC 1131-3
metodo de estructuracibn
f
Configuración de la fabricacidn de válvulas
>
f \ \ T \
Recurso Recurso Recurso
montaje de válvulas control transportador control de calidad
Programa j Programa
montaje transporlador
i
,
Programa
Programa estadística
'i J
Programa
Guarda-datos
i J
L. f -
J -.. 1
Variables globales y directamente representadas Fig. 85.3:
L J Ejemplo gráfico de
UM configuracion
-
Los programas Estadísticas y Guarda-datos está asociados con dife-
rentes tareas. Como tales, poseen diferentes características de ejecu-
ción. El programa Estadísticas evalúa 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
célula de nivel superior para prevenir cualquier posible pérdida de da-
tos. El programa se pone en marcha activado por un evento de la más
alta prioridad con la señal de PARO DE EMERGENCIA.
IEC 1131-3 proporciona interfaces definidos y por lo tanto estandariza-
dos para el intercambio de datos dentro de una configuración. Si se
requiere información específica, tal como la lectura de una variable, en
diferentes unidades de organización 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 sólo se puede acceder desde programas y bloques de función.
Lo que tiene interés para sistemas en red es la comunicación más allá
de una configuración. Para ello, están a disposición del usuario blo-
ques de funciones de comunicación estandarizados. Estos se definen
en IEC 1131-5 y se utilizan en IEC 1131-3. Otra posibilidad es la
definición de rutas de acceso (recurso de lenguaje RUTA-ACCESO)
para variables específicas. Estas también pueden ser leídas o escritas
desde otras posiciones.
5.3 Lenguajes de IEC 1131-3 define cinco lenguajes de programación. Aunque la funcio-
programación 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 (declaración de variables, partes de organización
tales como funciones y bloques de función, etc.) y elementos de confi-
guración.
Los lenguajes pueden mezclarse de cualquier forma dentro de un pro-
yecto de PLC. La unificación y estandarización de estos cinco lengua-
jes representa un compromiso de requerimientos históricos, regionales
y específicos de cada sector. Se ha previsto la futura expansión (tal
como el principio de bloque de función o el lenguaje de Texto Estructu-
rado); además, se ha incorporado la información necesaria sobre deta-
lles tecnológicos (tipo de datos, etc.)
Eg. 85.4:
Ejemplo del lenguaje en
diagrama de contactos
Fig. 65.5:
Ejemplo del lenguaje en
bloques de funciones
Capítulo 5
LD Pieza-TipoA
OR Pieza-TipoB
AND P i e z ~ r e s e n t e
Fig. 85.6: AND Taladro-ok
Ejemplo de lenguaje en ST Mete-funda
lista de instrucciones
Capítulo 6
6.1 Recursos de Según IEC 1131-3, sólo las entradas, las salidas y los elementos de
un PLC 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 través de una variable
simbólica definida. Naturalmente, IEC 1131-3 reconoce muchos otros
recursos, p. ej. temporizadores y contadores. Sin embargo, estos están
integrados en funciones y bloques de función para asegurar el más
alto grado posible de portabilidad del programa de control entre los
diferentes sistemas.
Entradas, salidas y la memoria
Los constituyentes más importantes de un control incluyen las entra-
das, salidas y la memoria. Sólo a través de estas entradas puede un
control recibir información de los procesos conectados. De forma simi-
lar, sólo puede influir en ellos a través de sus salidas o almacenar
información para la subsecuente continuación del proceso.
Las denominaciones para los recursos entradas, salidas y elementos
de memoria, están definidos por IEC 1131-3 y son obligatorios..
Entradas
(Inputs)
Salidas
Fg.B6.1:
Designacionespara Memorias
Entradas, Salidas y
Secuencia de bi de longitud 8
Los tamaños 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 más 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 combinación de varios bits. Cada uno de estos bits tiene el
valor O ó 1, pero su combinación no tiene su propio valor.
Los métodos de designación obligatorios para entradas, salidas y flags
de diferentes longitudes de bits están representados en la fig. B6.3.
Un bit individual de una entrada, salida o flag también puede ser direc-
cionado sin la abreviación adicional X para el tipo de dato.
Como sea que los controles siempre tienen un número relativamente
grande de entradas, salidas y flags disponibles, estos deben ser espe-
cialmente identificados a efectos de diferenciación. Para ello se utiliza
la numeración indicada por IEC 113'1-3, como en el siguiente ejemplo:
Il Entrada 1
1x9 Entrada 9
11 5 Entrada 15
MX2 Memoria 2
Entrada 1
en inserto No. 3
en tarjeta No. 8
I 3. 8. 5
1 designaciones jerárquicas
Direccionamiento simbólico
Un identificador simbólico siempre consiste en una letra mayúscula o
minúscula, dígitos y un guión de subrayado. Un identificador debe em-
pezar siempre con una letra o un guión de subrayado. El guión de
subrayado puede utilizarse para hacer más leíble un identificador. Sin
embargo, es un carácter significativo. Por ello, los dos identificadores
Marcha-motor y Marchamotor son diferentes. No se permiten varios
guiones de subrayado. Si el control permite letras mayúsculas y minús-
culas, su utilización indistinta no debe tener significación alguna. Los
dos identificadores MARCHAMOTOR y Marchamotor se interpretan
idénticamente y designan el mismo objeto.
Los siguientes identificadores no son permisibles:
Descripción Ejemplos
Descripción Ejemplos
Fecha D#1994-07-21
DATE#1994-07-21
d Dias
h Horas
m Minutos
S Segundos
rns Milisegundos
Ejemplo Descripción
Tipos de datos
IEC 1131-3 define un gran número 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.
Capítulo 6
TYPE
Colo: (ROJO, AZUL, AMARILLO, NEGRO);
END-TYPE
Estructuras Coordenadas:
STRUCT
X:REAL;
Y:REAL;
Tabla 86.5: END-STRUCT;
Tipos de datos derivados
Declaración 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 declaración de varia-
bles.
Para comprender la función de una declaración de variables, es nece-
sario establecer antes que el programa del control está construido en
unidades de organización individuales.
Estas unidades son:
m Configuración
Recurso
m Programas
8 Bloques de función
m Funciones
Todas las variables tienen una posición especifica. En el caso de len-
guajes de programación en forma textual (IL y ST), las declaraciones
de variables con aproximadamente las mismas que las utilizadas en el
lenguaje Pascal. Para las formas gráficas de representación sería 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 posición de la variable en la unidad
de organización del control, y termina con la palabra clave END-VAR.
VAR
Temp : INT; ('Temperatura *)
Manual : BOOL; ('Flag para funcionamiento manual *)
Ueno, Abierto : BOOL; ('Flag para 'lleno' y 'abierto' *)
END-VAR Fig. B6.5:
Dedaración de variables
IEC 1131-3 distingue entre seis tipos diferentes de acceso a las varia-
bles. Cada tipo tiene una palabra clave, que introduce la declaración
de la variable.
VAR-INPUT
Fig. 86.6: Input : INT; ('Valor de entrada
Declaración de una END-VAR
variables de entrada
VAR-OUTPUT
Fig. B6.7: Result : INT; ('Valor de realimentación
Declaración de una END-VAR
variable de salida
VAR-IN-OUT
Value : INT; Fig. B6.8:
END-VAR Declaración de una
variable de entradalsalida
VAR
z : INT; ('Resultado intermedio Fig. 66.9:
END-VAR Dedaraddn de una
variable local
Las variables especificadas aquí son locales para una unidad de orga-
nización y solame te pueden ser utilizadas en ella. Son desconocidas
para otras unidades organizacionales y por lo tanto inaccesibles.
Una aplicación tipica son las posiciones de memoria para resultados
intermedios, que no son de interés en otras zonas del programa. En el
caso de estas variables, hay que observar que también pueden existir
varias veces en diferentes unidades de organización. De esta forma,
.
es posible, por ejemplo, que varios bloques de función declaren la va-
riable local 2. Estas variables locales son completamente inde-
pendientes y difieren unas de otras.
Una variable también puede ser declarada globalmente, en cuyo caso
puede ser accedida universalmente. La necesaria declaración se reali-
za de una forma similar, utilizando las palabras clave VAR-GLOBAL y
VAR-EXTERNAL.
Capítulo 6
VAR-GLOBAL
Fig. B6.1O: Global-value: INT;
Declaración de una END-VAR
variable global
VAR-EXTERNAL
Fig. B6.11: Global-value: INT;
Declaración de acceso a END-VAR
una variable global
Fig. B6.12:
1 VAR
Pulsador-paro AT %12.3: BOOL;
Declaración de variables Temperatura AT %IW3: INT;
con asignación a entradas END-VAR
de un control
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 conexión al controlador, sólo debe-
rán ser cambiadas estas declaraciones. Cualquier utilización p. ej. del
Pulsador-paro, o de la Temperatura en un programa existente, no se
ve afectada por el cambio.
VAR
AT %14.2 : BOOL;
AT %M1 : WORD;
END-VAR
Inicialización
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 también son importantes para otros
datos. Tales valores iniciales se especifican conjuntamente con la de-
claración 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.
Capítulo 6
VAR
AT %QW4 : INT;
AT %IW9 : INT;
AT %IW7 : INT;
AT %MW1 : INT;
Fig. 86.16:
Representación de
negaciones Booleanas
-
Si se invoca una función, deben conectarse sus entradas y la salida de
la función.
La función suma ADD ilustrada en la fig. B6.16 procesa valores ente-
ros INT, por lo cual, las variables direccionadas directamente tales
como %QW4 etc. están declaradas como variables de tipo de dato
INT. De la misma forma, la función ADD podría aplicarse a valores del
tipo SINT o REAL.
Las funciones como estas, que funcionan para entrar parámetros de
tipos de datos diferentes, se denominan en IEC 1131-3 como funcio-
nes sobrecargadas, independientes del tipo. La Fig. 66.17 ilustra las
características de una función sobrecargada utilizando el ejemplo de
una función ADD.
general ejemplo
VAR
i AT%IWI : INT;
AT%IW2 : INT;
AT %MW3 : INT;
I general ejemplo
VAR
1 .s~s: 4 T f SINT
%IB5 : SINT;
AT %IB4
AT %MB6 : SINT;
.
Fig. B6.17:
Función sobrecargada de
tipo independiente
general ejemplo
VAR
AT%IWI : INT;
AT%IW2 : INT:
%IW2
Fig. 86.18:
Una función con tipo
Funciones estándar
Las funciones estándar más importantes para la realización de tareas
básicas de tecnología de control se relacionan a continuación.
Dado que una gran variedad de funciones estándar pueden funcionar
utilizando parámetros 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 genérico. Los tipos de datos genéricos más importantes
se muestran en la tabla B6.8.
ANY-NUM Todos los tipos de datos para números en coma flotante. tales
como REAL y para números enteros tales como INT, UINT, etc.
están contenidos en ANY-REAL y ANY-INT.
ANY-INT Todos los tipos de datos para enteros tales como INT, UINIT, etc.
-
ANY-BIT]
ANY-BIT
*- t-- ANY-BIT
:::
ANY-BIT 3-l
* = nombre o símbolo
Nombre Descn'pci6n
ANY-BIT or ANY-NUM
...
]"t' AY-BIT or ANYNUM
= nombre o símbolo
EQ -- Igual
a) Representación grhfica
Descripción:
Convierte variables del tipo BYTE, WORD etc. en
variables del tipo INT.
La variable de secuencia de b i s contiene datos en
formato BCD (número decimal codificado en binano)
Ejemplo:
Descripción:
Convierte variables de tipo INT en variables de tipo BYTE,
WORD etc.
La variable de secuencia de bits contlene datos en formato
BC.
Ejemplo:
ANY-NUM r? - ANY-NUM
ANY-NUM
- . m 4-l
Nombre Símbolo Descrlpciidn
Bloques de función
Los bloques de función son módulos de software que proporcionan uno
o varios parámetros resultantes.
Una característica importante es la posibilidad de reutilización de los
bloques de función. Si debe utilizarse un bloque de control en un pro-
grama, debe crearse una copia. Esto se realiza a través de la asigna-
ción 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 función (valores de los parámetros de salida y variables in-
ternas). La información del estado de la copia del bloque de función
permanece inalterable entre un procesamiento y el siguiente.
Esto puede demostrarse utilizando el ejemplo del bloque de función
estándar para operaciones de recuento. El valor actual del contador
permanece de una operación de recuento a la siguiente y puede así
ser interrogada en cualquier momento. Este tipo de comportamiento no
puede realizarse a través del recurso lenguaje, como se describe arriba.
Identificador
Tipo FB
Tipo dato
Tipo dato Tipo dato
Fig. 86.19:
Representación gráfica
Entradas Salidas de una copia de un
bloque de función
.OoL
BOOL
INT
d
q PV CV
.OoL
INT
Bloque de función - tipo CTU
(contador incremental)
Count-Pack
Use una copia del bloque de
de control Rg.86.20:
Uso (invocacidn) del
bloque de función CTü
( (contador incremental)
Capítulo 6
Bloque de función - .
tipo TP (pulse timer)
Capítulo 6
TP Pulso de tiempo
FUNCTION
(* Descripción del interface externo *)
INT
(* Cuerpo de la función: *)
(* Programado en lenguaje FBD *)
q hTC * SPEZ-MUL
VAR
AT Y ' 1 : INT;
AT YdJlW2 : INT;
AT %MW3 : INT;
AT%IW4 : INT;
AT W W 5 : INT; .
END-VAR
Fig. B6.23:
Uso de la función
SPU-MUL
FUNCTION-BLOCK
(' Descripción del interface externo *)
Filtro-rebotes
:mi r
EP-ON EP-S
S1 Ql S O F F
s-oNrdrT
E-TI ME PT ET
I Fig. 86.24 :
Dedaración de un
bloque de funuón
Programas
Un programa consiste en cualquier cantidad de elementos de lenguaje
y construcciones, necesarios para conseguir el comportamiento desea-
do de la máquina o proceso a través del PLC.
Por ello, los programas están construidos principalmente por funciones,
bloques de función y los elementos del diagrama de funciones secuencial.
Por ello, las características de los programas son en gran parte idénti-
cos a los de los bloques de función. 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 utilización de variables directamente direccionables solamente se
permite dentro de programas.
Un ejemplo de estose muestra en la figura 86.25.
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 *)
Duracion : TP; (* Tiempo de encendido *)
Interruptor-F
Interruptor-A
Luz
T#3m PT ET
END-PROGRAM
Fig. B6.25:
Ejemplo de un programa
-
Capítulo 7
-
7.1 Elementos del da- El diagrama de bloques de función es un lenguaje de programación
grama de bloques gráfico que es consistente, en la medida de lo posible, con la docu-
de fundón mentación estándar IEC 617, P.12.
T-Arranque
Fig. B7.1:
Diagrama de bloques
de función (FBD)
Los elementos del diagrama de bloques de funcidn son funciones
representadas gráficamente y bloques de función. Estas están interco-
nectadas por líneas de flujo de señal, los elementos directamente enla-
zados formando una red de trabajo (Network)
-
La dirección del flujo de señales es una red de izquierda a derecha. Si 7.2 Evaluación
una unidad de organización 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
organización puede ser influida por el uso de elementos para control
de la ejecución. 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 derivación en el programa.
Fig. B7.2:
Uso de un salto en FBD
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 sólo deben realizarse a través del uso adicional de una ruta
de realimentación. La Fig. B7.3b ilustra un ejemplo de esto.
Fig. B7.3:
FBD con
estructuras en bucle
Capítulo 8
. , -- .
. Capitulo 8
Diagrama de contactos
-
8.1 Elementos del El lenguaje de diagrama de contactos (o diagrama en escalera), al
diagrama de igual que del diagrama de bloques de función representa un lenguaje
contactos de programación gráfico. Los elementos disponibles en un diagrama de
contactos son los contactos y las bobinas en diferentes formas. Estas
están dispuestas en renglones (rungs) entre las dos líneas verticales
de mando a derecha e izquierda.
de un renglón 1
I -+E
Contactos
11 -(I
Contacto normalmente abierto
---(PE
Contacto de flanco positivo
I Bobinas
1 - - Bobina
1 -
-0-
Desadivaci6n de una bobina remanente
Tabla B8.1:
1 --e
Bobina activada por flanco positivo
a) Función AND
%1 1.3 YiM3.2 %Q2.1
b) Función OR
I lógicas en diagrama
de contactos
a) Incorporación de funciones
Fig. B8.3:
Funciones y
blooues de función
en diagrama de contactos 1
1 Rg.88.4:
S s b mndicionaI en LD