Está en la página 1de 488

Sistema para Ensear Automatizacin y Comunicaciones

Controles Lgicos
Programables

94427 E

Libro de Trabajo - Nivel bsico

N de artculo:
Descripcin:
Denominacin:
Edicin:
Composicin:
Grficos:
Autores:
Traduccin:

94427 E
ARBB.SPS FPC GS
D.S301-C-FPC-E
03/1999
F. Ebel, M. Schwarz
D. Schwarzenberger
E. v. Terzi, H. Regber, C. Lffler, F. Ebel
I. Sahun

Copyright by Festo Didactic KG, D-73734 Esslingen, 1999

Sin nuestra expresa autorizacin, queda terminantemente prohibida la


reproduccin total o parcial de este documento, as como su uso indebido y/o su exhibicin o comunicacin a terceros. De los infractores se
exigir el correspondiente resarcimiento de daos y perjuicios. Quedan
reservados todos los derechos inherentes, en especial los de patentes,
de modelos registrados y estticos.

Prefacio
El Sistema para la Enseanza de Automatizacin y Comunicaciones de
Festo Didactic para cumplir con los diversos requerimientos de la formacin profesional y especializada. Los diferentes equipos de formacin estn estructurados consecuentemente:
Equipos bsicos que aportan conocimientos bsicos en una amplia
gama de tecnologas.
Los equipos de tecnologa tratan con importantes reas de la tcnica de control en bucle abierto y en bucle cerrado.
Los equipos de funciones explican las funciones bsicas de los sistemas automatizados.
Los equipos de aplicacin proporcionan una forma avanzada de realizar prcticas muy orientadas a la realidad industrial.
El diseo modular del sistema de enseanza permite aplicaciones que
van ms all de los lmites de los equipos individuales. La utilizacin
de un PLC, por ejemplo, es posible en el campo de los actuadores
neumticos, hidrulicos y elctricos.
Todos los equipos de enseanza tienen una estructura idntica:
Hardware o parte fsica
Teachware o parte didctica
Software o conjunto de programas
Cursos
El hardware est formado por componentes e instalaciones industriales
adaptados para fines didcticos.
El courseware se ajusta metodolgica y didcticamente al hardware de
formacin. El courseware comprende:
Libros de texto (con ejercicios y ejemplos)
Libros de trabajo (con ejercicios prcticos, hojas de trabajo, notas
suplementarias, soluciones y fichas tcnicas
Transparencias para retroproyeccin y vdeos (como medios visuales de ayuda al instructor)
Los medios de enseanza y de aprendizaje estn disponibles en varios
idiomas. Han sido diseados para su utilizacin en clase, pero tambin
pueden utilizarse con fines autodidactas.
En el campo del software, se dispone de programas asistidos por ordenador y software de programacin para controles lgicos programables.
La gama de productos de Festo Didactic para la formacin bsica y
avanzada se completa con una amplia seleccin de cursos ajustados
al contenido de los equipos de tecnologa.

Festo Didactic TP301

Distribucin de este libro


Este libro est estructurado como sigue:
Seccin A Curso
Seccin B Fundamentos
Seccin C Soluciones
Seccin D Apndice

La seccin A - Curso - ensea la programacin de los Controles Lgicos Programables con la ayuda de una serie de ejercicios progresivos.
Cualquier conocimiento tcnico que se necesite para la realizacin de
un ejercicio se ofrece al principio. Las funciones se limitan a los requerimientos ms elementales. En la seccin B, pueden obtenerse conocimientos ms detallados.
La seccin B - Fundamentos - contiene conocimientos tcnicos de
aplicacin general para suplementar los contenidos de formacin de
los ejercicios en la seccin A. Se establecen enlaces tericos con la
necesaria terminologa tcnica explicada con la ayuda de ejemplos. Un
ndice proporciona un medio fcil de buscar la terminologa.
La seccin C - Soluciones - proporciona las soluciones a los ejercicios de la seccin A, con breves explicaciones.
La Seccin D - Apndice - contiene las fichas tcnicas y un glosario
que sirve como medio de referencia.

TP301 Festo Didactic

Equipo de tecnologa TP301 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

11

Tabla de componentes/ejercicios. . . . . . . . . . . . . . . . . . . . . . . . . . . .

12

Componentes del equipo. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

13

Notas sobre seguridad. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

15

Notas sobre el funcionamiento . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16

Seccin A Curso
Componentes de un control lgico programable
Ejercicio 1:

Diseo y funcionamiento de un control lgico


programable
Componentes de un PLC . . . . . . . . . . . . . . . . . . . . . . A-3

Programacin segn IEC 1131


Ejercicio 2:

Del problema a la solucin


teniendo en cuenta IEC 1131-3
Pasos prcticos para la programacin de un PLC. . . A-9

Operaciones lgicas bsicas


Ejercicio 3:

Circuito de una lmpara


La funcin de asignacin . . . . . . . . . . . . . . . . . . . . . A-15

Ejercicio 4:

Alarma antirrobo
La funcin NOT . . . . . . . . . . . . . . . . . . . . . . . . . . . . A-25

Ejercicio 5:

Prensa con barrera protectora


La funcin AND. . . . . . . . . . . . . . . . . . . . . . . . . . . . . A-35

Ejercicio 6:

Sistema de timbre
La funcin OR . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A-45

Sistemas lgicos sin funciones memorizantes


Ejercicio 7:

Dispositivo estampador
Combinacin de AND/OR/NOT . . . . . . . . . . . . . . . . A-55

Ejercicio 8:

Control de un silo para dos materiales a granel


Circuito combinatorio con derivacin . . . . . . . . . . . . A-65

Sistemas lgicos con funciones memorizantes


Ejercicio 9:

Alarma de incendios
Activacin de una salida . . . . . . . . . . . . . . . . . . . . . . A-73

Festo Didactic TP301

Tabla de contenido

Ejercicio 10:

Supervisin de la rotura de una broca


Activacin y desactivacin de una salida . . . . . . . A-81

Ejercicio 11:

Activacin de un cilindro
Flancos de las seales . . . . . . . . . . . . . . . . . . . . . A-89

Sistemas lgicos con funciones temporales


Ejercicio 12:

Encolado de componentes
Pulso . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A-101

Ejercicio 13:

Dispositivo de marcado
Seal con retardo a la conexin . . . . . . . . . . . . . A-111

Ejercicio 14:

Dispositivo de fijacin
Seal con retardo a la desconexin . . . . . . . . . . A-121

Sistemas de control secuencial


Ejercicio 15:

Dispositivo elevador para paquetes


Secuencia lineal . . . . . . . . . . . . . . . . . . . . . . . . . A-131

Ejercicio 16:

Dispositivo elevador y clasificador para paquetes


Derivacin alternativa. . . . . . . . . . . . . . . . . . . . . . A-147

Ejercicio 17:

Dispositivo de estampacin con contador


Ciclos de recuento . . . . . . . . . . . . . . . . . . . . . . . . A-159

Seccin B Fundamentos
Captulo 1 Automatizando con un PLC. . . . . . . . . . . . . . . . . . . . B-1
1.1

Introduccin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . B-2

1.2

Campos de aplicacin de un PLC . . . . . . . . . . . . . . . . . . . . . B-2

1.3

Diseo bsico de un PLC . . . . . . . . . . . . . . . . . . . . . . . . . . . B-5

1.4

El nuevo estndar para PLC IEC 1131 . . . . . . . . . . . . . . . . . B-8

Captulo 2 Fundamentos. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . B-11


2.1

El sistema de numeracin decimal . . . . . . . . . . . . . . . . . . . B-12

2.2

El sistema de numeracin binario . . . . . . . . . . . . . . . . . . . . B-12

2.3

El cdigo BCD . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . B-14

2.4

El sistema de numeracin hexadecimal . . . . . . . . . . . . . . . B-14

2.5

Nmeros binarios con signo . . . . . . . . . . . . . . . . . . . . . . . . B-15

2.6

Nmeros reales . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . B-15

TP301 Festo Didactic

2.7

Generacin de seales binarias y digitales . . . . . . . . . . . . . B-16

Captulo 3 Operaciones Booleanas . . . . . . . . . . . . . . . . . . . . .

B-19

3.1

Funciones lgicas bsicas . . . . . . . . . . . . . . . . . . . . . . . . . . B-20

3.2

Otras operaciones lgicas . . . . . . . . . . . . . . . . . . . . . . . . . . B-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 . .

B-33

4.1

Estructura de un PLC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . B-34

4.2

Unidad de procesamiento principal de un PLC . . . . . . . . . . B-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 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . B-42

4.6

Mdulo de Salidas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . B-44

4.7

Aparato programador / Ordenador personal . . . . . . . . . . . . B-46

Captulo 5 Programacin de un PLC . . . . . . . . . . . . . . . . . . . .

B-49

5.1

Bsqueda de una solucin sistemtica . . . . . . . . . . . . . . . . B-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 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . B-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 . . . . . . . . . . . . .

B-91

7.1

Elementos del diagrama de bloques de funcin . . . . . . . . . B-92

7.2

Evaluacin de redes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . B-93

7.3

Estructuras de bucle. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . B-94

Festo Didactic TP301

Captulo 8 Diagrama de contactos . . . . . . . . . . . . . . . . . . . . . . B-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 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . B-102

9.2

Operadores . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . B-103

9.3

Funciones y bloques de funcin . . . . . . . . . . . . . . . . . . . . B-104

Captulo 10 Texto estructurado . . . . . . . . . . . . . . . . . . . . . . . . . B-107


10.1

Expresiones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . B-108

10.2

Instrucciones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . B-110

10.3

Instrucciones de seleccin . . . . . . . . . . . . . . . . . . . . . . . . . B-112

10.4

Instrucciones de iteracin . . . . . . . . . . . . . . . . . . . . . . . . . B-115

Captulo 11 Diagrama de funciones secuencial. . . . . . . . . . . . B-119


11.1

Introduccin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . B-120

11.2

Elementos del diagrama de funciones secuencial . . . . . . B-120

11.3

Transiciones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . B-130

11.4

Pasos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . B-133

11.5

Ejemplo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . B-143

Captulo 12 Sistemas de control lgico. . . . . . . . . . . . . . . . . . B-147


12.1

Qu es un sistema de control lgico . . . . . . . . . . . . . . . . . B-148

12.2

Sistema de control lgico sin propiedades memorizantes

12.3

Sistema de control lgico con propiedades memorizantes B-154

12.4

Evaluacin de flancos . . . . . . . . . . . . . . . . . . . . . . . . . . . . B-157

B-148

Captulo 13 Temporizadores . . . . . . . . . . . . . . . . . . . . . . . . . . . B-161


13.1

Introduccin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . B-162

13.2

Temporizador de pulsos. . . . . . . . . . . . . . . . . . . . . . . . . . . B-163

TP301 Festo Didactic

13.3

Seal con retardo a la conexin . . . . . . . . . . . . . . . . . . . . B-165

13.4

Seal con retardo a la desconexin. . . . . . . . . . . . . . . . . . B-167

Captulo 14 Contadores. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

B-171

14.1

Funciones de contador . . . . . . . . . . . . . . . . . . . . . . . . . . . . B-172

14.2

Contador incremental . . . . . . . . . . . . . . . . . . . . . . . . . . . . . B-172

14.3

Contador decremental . . . . . . . . . . . . . . . . . . . . . . . . . . . . B-176

14.4

Contador incremental/decremental. . . . . . . . . . . . . . . . . . . B-178

Captulo 15 Sistemas de control secuencial . . . . . . . . . . . . .

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

Captulo 16 Puesta a punto y seguridad en el manejo


de un PLC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

B-187

16.1

Puesta a punto . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . B-188

16.2

Seguridad en el manejo de un PLC. . . . . . . . . . . . . . . . . . B-190

Captulo 17 Comunicaciones con PLC . . . . . . . . . . . . . . . . . .

B-195

17.1

La necesidad de comunicacin . . . . . . . . . . . . . . . . . . . . . B-196

17.2

Transmisin de datos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . B-196

17.3

Interfaces . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . B-197

17.4

Comunicacin a nivel de campo . . . . . . . . . . . . . . . . . . . . B-198

Apndice
Bibliografa de ilustraciones . . . . . . . . . . . . . . . . . . . . . . . . B-202
Bibliografa de literatura . . . . . . . . . . . . . . . . . . . . . . . . . . . B-203
Directrices y estndares . . . . . . . . . . . . . . . . . . . . . . . . . . . B-205
Indice

.........................................

Festo Didactic TP301

B-209

10

Seccin C Soluciones

Seccin D Apndice
Fichas tcnicas
Entrada de seales elctricas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 011088
Indicador y placa de distribucin elctrica . . . . . . . . . . . . . . . . . . . 030311
Cilindro de simple efecto . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 152887
Cilindro de doble efecto. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 152888
Unidad de mantenimiento con vlvula de interrupcin . . . . . . . . . . 152894
Distribuidor de aire . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 152896
Sensor de proximidad, inductivo . . . . . . . . . . . . . . . . . . . . . . . . . . . 152902
Sensor de proximidad, capacitivo . . . . . . . . . . . . . . . . . . . . . . . . . . 152903
Sensor de proximidad, ptico . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 152904
Interruptor de proximidad para montake en cilindro . . . . . . . . . . . . 152905
Electrovlvula de 5/2-vas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 152909
Electrovlvula de 5/2-vas de dos bobinas . . . . . . . . . . . . . . . . . . . 152910
Unidad de conexin para E/S digitales . . . . . . . . . . . . . . . . . . . . . . 159385

Glosario . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . D-3

TP301 Festo Didactic

11

Equipo de tecnologa
TP301 "Controles Lgicos Programables"
El equipo de tecnologa TP301 "Controles Lgicos Programables" es
parte integrante del Sistema para la Enseanza de Automatizacin y
Comunicaciones de Festo Didactic y forma parte del nivel bsico del
TP300.
Los objetivos didcticos del TP301 son aprender cmo se programan
los controles lgicos programables y ensear los fundamentos de la
creacin de programas en los lenguajes Diagrama de Contactos (ladder diagram o LD), diagrama de bloques de funcin (function block
diagram o FBD), lista de instrucciones (instruction list o IL), texto estructurado (structured text o ST) y diagrama de funciones secuencial
(sequential funtion chart o SFC, muy parecido al GRAFCET). La programacin se realiza segn IEC 1131-3.
Tiene la opcin de utilizar este libro de trabajo con diversos controles
lgicos programables de distintos fabricantes, Las soluciones estn disponibles para los controles Festo, Siemens S5-95U, AEG A120 y Mitsubishi Melsec A1S.
Los ejercicios en este libro de trabajo puede realizarse con cualquiera
de los dos diferentes equipos, es decir, con la placa perforada o la
versin con placa perfilada. Se recomienda tener conocimientos bsicos de electroneumtica para trabajar con el equipo de tecnologa
TP301.
Los ejercicios del TP301 tratan con los siguientes temas principales:
Componentes de un control lgico programable
Programacin de PLC segn IEC 1131
Operaciones lgicas bsicas
Sistemas de control lgico
Sistemas de control secuencial
La asignacin de componentes y ejercicios puede verse en la siguiente
tabla de asignaciones componentes/ejercicios.

Festo Didactic TP301

12

Asignacin de componentes a los ejercicios


Descripcin

Entrada de seales
elctricas

Distribuidor e indicador
elctrico

Sensor de proximidad, ptico


Sensor de proximidad,
inductivo

1
1

Sensor de proximidad,
capacitive

10

11

13

Electrovlvula de 5/2 vas


de doble bobina
Cilindro de doble efecto

Distribuidor

16

17

1
1

Cilindro de simple efecto


Vlvula de paro/marcha con
filtro y regulador

15

1
1

14

Sensor de proximidad con


brida para cilindro
Electrovlvula de 5/2 vas
de una bobina

12

1
1

TP301 Festo Didactic

13

Equipo TP310, Placa de montaje perfilada,


N de artculo 080 261
Descripcin

N de
artculo

Cantidad

Entrada de seales elctricas

011 088

Distribuidor e indicador elctrico

030 311

Sensor de proximidad, ptico

152 904

Sensor de proximidad, inductivo

152 902

Sensor de proximidad, capacitivo

152 903

Sensor de proximidad con brida para cilindro

152 905

Electrovlvula de 5/2 vas de una bobina

152 909

Electrovlvula de 5/2 vas de dos bobinas

152 910

Cilindro de doble efecto

152 888

Cilindro de simple efecto

152 887

Vlvula de paro/marcha con filtro y regulador

152 894

Distribuidor

152 896

Tubo de plstico

151 496

Distribuidor de enchufe rpido

036 315

opcional, no includo en la dotacin original del equipo


Fuente de alimentacin

151 503

Juego de cables

030 332

Clavija adaptadora

035 651

Festo Didactic TP301

14

Equipo TP301, Placa de montaje perforada,


N de artculo 080 260

Descripcin

N de
artculo

Cantidad

Entrada de seales elctricas

011 088

Distribuidor e indicador elctrico

030 311

Sensor de proximidad, ptico

150 758

Sensor de proximidad, inductivo

150 757

Sensor de proximidad, capacitivo

150 759

Sensor de proximidad con brida para cilindro

030 331

Electrovlvula de 5/2 vas de una bobina

030 315

Electrovlvula de 5/2 vas de dos bobinas

030 317

Cilindro de doble efecto

013 415

Cilindro de simple efecto

011 711

Vlvula de paro/marcha con filtro y regulador

011 758

Distribuidor

011 713

Tubo de plstico

006 204

Distribuidor de enchufe rpido

006 831

opcional, no includo en la dotacin original del equipo


Fuente de alimentacin

151 503

Juego de cables

030 332

TP301 Festo Didactic

15

Notas sobre seguridad


En inters de la seguridad, deben seguirse las siguientes indicaciones:

Montar los componentes en la placa de forma segura.


No aplicar el aire comprimido hasta que se no hayan realizado y asegurado todas las conexiones.
Proceder con cuidado al aplicar el aire comprimido.
Los cilindros pueden avanzar o retroceder en el momento que se aplique el aire comprimido.
Desconectar el aire inmediatamente si hay lneas sueltas. Esto evita
accidentes.
No desconectar lneas de aire bajo presin.
No sobrepasar la presin de trabajo mxima permitida de 8 bar.
Observar las normas generales de seguridad segn DIN 58 126 y VDE
0100.
Usar solamente tensiones extra bajas de hasta 24 V DC.
Observar las fichas tcnicas de los componentes individuales, en especial las notas relacionadas con la seguridad.

Festo Didactic TP301

16

Notas sobre el funcionamiento


Cuando se monte un circuito, deben observarse las siguientes notas:
Bloquear la salida 2 de la vlvula, si se conecta un cilindro de simple efecto a una vlvula 5/2 vas.

4(A)

5(R)

2(B)

3(S)

1(P)

Tapn para la salida 2


de la vlvula de 5/2 vas

Las seales de entrada, que se produciran durante un proceso real


de produccin, se reproducen en parte por seales emitidas por pulsadores o interruptores.

TP301 Festo Didactic

A-I

Seccin A Curso
Componentes de un control lgico programable
Ejercicio 1:

Diseo y funcionamiento de un control lgico


programable
Componentes de un PLC . . . . . . . . . . . . . . . . . . . . . . A-3

Programacin segn IEC 1131


Ejercicio 2:

Del problema a la solucin


teniendo en cuenta IEC 1131-3
Pasos prcticos para la programacin de un PLC. . . A-9

Operaciones lgicas bsicas


Ejercicio 3:

Circuito de una lmpara


La funcin de asignacin . . . . . . . . . . . . . . . . . . . . . A-15

Ejercicio 4:

Alarma antirrobo
La funcin NOT . . . . . . . . . . . . . . . . . . . . . . . . . . . . A-25

Ejercicio 5:

Prensa con barrera protectora


La funcin AND. . . . . . . . . . . . . . . . . . . . . . . . . . . . . A-35

Ejercicio 6:

Sistema de timbre
La funcin OR . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A-45

Sistemas lgicos sin funciones memorizantes


Ejercicio 7:

Dispositivo estampador
Combinacin de AND/OR/NOT . . . . . . . . . . . . . . . . A-55

Ejercicio 8:

Control de un silo para dos materiales a granel


Circuito combinatorio con derivacin . . . . . . . . . . . . A-65

Sistemas lgicos con funciones memorizantes


Ejercicio 9:

Alarma de incendios
Activacin de una salida . . . . . . . . . . . . . . . . . . . . . . A-73

Festo Didactic TP301

A-II

Ejercicio 10:

Supervisin de la rotura de una broca


Activacin y desactivacin de una salida . . . . . . . A-81

Ejercicio 11:

Activacin de un cilindro
Flancos de las seales . . . . . . . . . . . . . . . . . . . . . A-89

Sistemas lgicos con funciones temporales


Ejercicio 12:

Encolado de componentes
Pulso . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A-101

Ejercicio 13:

Dispositivo de marcado
Seal con retardo a la conexin . . . . . . . . . . . . . A-111

Ejercicio 14:

Dispositivo de fijacin
Seal con retardo a la desconexin . . . . . . . . . . A-121

Sistemas de control secuencial


Ejercicio 15:

Dispositivo elevador para paquetes


Secuencia lineal . . . . . . . . . . . . . . . . . . . . . . . . . A-131

Ejercicio 16:

Dispositivo elevador y clasificador para paquetes


Derivacin alternativa. . . . . . . . . . . . . . . . . . . . . . A-147

Ejercicio 17:

Dispositivo de estampacin con contador


Ciclos de recuento . . . . . . . . . . . . . . . . . . . . . . . . A-159

TP301 Festo Didactic

A-3
Ejercicio 1

Controles lgicos programables

Tema

Diseo y funcionamiento de un control lgico


programable
Componentes de un PLC

Ttulo

Ser capaz de explicar el diseo bsico y el modo de funcionamiento de


un PLC
Ser capaz de configurar y poner a punto un PLC

Objetivo didctico

Actualmente los Controles Lgicos Programables forman parte de cualquier proceso de automatizacin. La Fig. A1.1 muestra una configuracin tpica de una solucin de automatizacin realizada por medio de
un PLC. El sistema de control mostrado representa los componentes
ms elementales de una aplicacin con PLC.

Conocimientos
tcnicos

B 16

PC /
Aparato programador

Display /
Unidad de Control

PLC

Sensores

Actuadores

Fig. A1.1:
Automatizacin con PLC

Festo Didactic TP301

A-4
Ejercicio 1

Los componentes bsicos de un sistema de control son:


Control Lgico Programable (PLC), tambin denominado Autmata
Programable (AP).
Bajo este nombre se incluyen los mdulos electrnicos a travs de
los cuales todas las funciones de la mquina o sistema a controlar
son direccionadas y activadas en una secuencia lgica
Sensores
Estos componentes estn situados directamente en el sistema o la
mquina a controlar, y a travs de ellos el PLC interroga el estado o
posicin de la mquina.
Actuadores
Estos componentes estn situados directamente en el sistema o
mquina a controlar y a travs de ellos, el PLC es capaz de cambiar
o influir en estados y con ello en el proceso tcnico.
PC o dispositivo programador
Se utiliza para crear el programa que contiene la lgica del sistema
o maquinaria a controlar y transferirla a la memoria del PLC. Al
mismo tiempo, estas herramientas de programacin tambin proporcionan funciones de apoyo para la verificacin del programa de PLC
y la puesta a punto del control.
Unidades de indicacin y control
Esto les permite supervisar e influir en el funcionamiento del sistema
o la mquina.
Control Lgico programable
El componente ms importante de un sistema de control es el PLC y
su programa. La Fig. A1.2, ilustra los componentes de un sistema PLC

Programa PLC

Mdulo de entrada

Fig. A1.2:
Componentes de un
sistema PLC

Sensores

UPP
Unidad Principal
de Proceso

Mdulo de salida

Actuadores

TP301 Festo Didactic

A-5
Ejercicio 1

Un PLC se conecta con el sistema a controlar a travs de mdulos de


entra y de salida. El sistema a controlar proporciona seales de entrada (generalmente binarias) a travs de los sensores, a los mdulos de
entrada. Estas seales son procesadas en la unidad principal de proceso, el componente ms importante de un PLC. Antes de la formulacin de los estndares IEC, conocida como "unidad central de control"
(CCU). La "especificacin" para el procesamiento de seales de define
en el programa del PLC. El resultado del procesamiento es emitido a
los actuadores del sistema a controlar a travs del mdulo de salida.
As, el diseo de un PLC corresponde al de un ordenador.

B4

Programa de PLC
Un programa de PLC consiste en una secuencia lgica de instrucciones. El programa de control es almacenado en una memoria especial,
leble electrnicamente, denominada memoria del programa del PLC.
Durante el desarrollo del programa se utilizan memorias RAM con bateras de respaldo ya que su contenido puede variarse muy rpidamente.
Una vez probado y depurado el programa del control, suele transferirse
a una memoria de slo lectura, es decir una EPROM. En cualquier
caso, cuando se ejecuta el programa se procesa en ciclos continuos.
Seales
Las seales de entrada llegan al PLC a travs de los sensores. Estas
seales contienen informacin sobre el estado del sistema a controlar.
Es posible introducir seales binarias, digitales y analgicas.
Un PLC solamente puede reconocer y emitir seales elctricas. Por
esta razn, las seales no-elctricas deben convertirse en seales
elctricas por medio de convertidores. Ejemplos de sensores son:
Pulsadores, interruptores, finales de carrera, sensores de proximidad
Las seales de salida influyen en el sistema a controlar. Las seales
pueden emitirse en forma binaria, digital o analgica. Las seales de
salida se amplifican en seales de conmutacin a travs de los actuadores o se convierten en seales para otras formas de energa. Ejemplos de actuadores son:
Pilotos, zumbadores, timbres, contactores, cilindros con electrovlvulas, motores de paso a paso.

Festo Didactic TP301

B4

A-6
Ejercicio 1

Descripcin del
problema

Debe resolverse una tarea de control por medio de un control lgico


programable (PLC). El alumno deber familiarizarse con el diseo bsico de un PLC.

Croquis de situacin

Definicin del ejercicio

1. Componentes de un PLC
2. Diseo y puesta a punto del PLC que haya seleccionado

Realizacin

Para llevar a cabo el ejercicio utilizando las hojas de trabajo, vase la


seccin B del libro de trabajo y la ficha tcnica o el manual del PLC
que se utilice

TP301 Festo Didactic

A-7
Ejercicio 1

HOJA DE TRABAJO
1. Componentes de un PLC
Pregunta 1
Cules son los componentes bsicos de un PLC?

B 4.1

Pregunta 2
Cules con los mdulos bsicos que forma la unidad central de
control en un control lgico programable?

B 4.2

Pregunta 3
Cmo se consigue el aislamiento elctrico entre las seales de un
sensor/actuador y el PLC?

B 4.5

Festo Didactic TP301

A-8
Ejercicio 1

HOJA DE TRABAJO
2. Diseo y puesta a punto del PLC que se haya seleccionado
Introducir los datos tcnicos del control lgico programable seleccionado en la tabla inferior.

Tensin de funcionamiento
Tensin nominal
Margen de tensin admisible
Consumo de corriente

Entradas
Cantidad
Corriente de entrada
Nivel de entrada

Salidas
Cantidad
Lgica de conmutacin
Tensin de salida

Datos tcnicos

Corriente de salida

Configurar el PLC segn las notas destacadas en la ficha tcnica o el


manual.

TP301 Festo Didactic

A-9
Ejercicio 2

Controles lgicos programables

Tema

Del problema a la solucin teniendo en cuenta IEC 1131-3


Pasos prcticos para la programacin de un PLC

Ttulo

Familiarizarse con los recursos bsicos del lenguaje para la configuracin y estructuracin de un programa de PLC segn IEC 1131-3
Se capaz de declarar variables para su uso en un programa de
PLC.
Ser capaz de aplicar un procedimiento sistemtico para la realizacin de los ejercicios con PLC.

Objetivo didctico

Creacin de un programa de PLC


Los pasos prcticos para la creacin de un programa de PLC se muestran en la fig. A2.1

Conocimientos
tcnicos

B5

Descripcin de la tarea de control


Descripcin verbal
Croquis de situacin
Programa del PLC

Instalacin/proceso

Trazado de la solucin
Representacin como tabla de funciones
(sistema de control lgico)
Representacin en forma de FCH segn
IEC 848 (sistema de control secuencial)

Planificacin de la
instalacin
Trazado del esquema
del circuito

Realizacin de la solucin
Configuracin del PLC
Declaracin de variables del programa PLC
Formulacin de la lgica del programa PLC
en LD, FBD, IL, ST o SFC

Montaje de la
instalacin

Prueba y puesta a punto del sistema de control


Transferencia del programa al PLC
Verificacin del sistema de control (programa
del PLC e instalacin) y correccin de los
posibles errores

Documentacin del sistema de control


Impresin del programa con comentarios
Creacin de la lista de referncias cruzadas
Inclusin de los esquemas del circuito

Festo Didactic TP301

Fig. A2.1:
Procedimiento para la
creacin de un programa
de PLC

A-10
Ejercicio 2

B 6.1

Tabla A2.1:
Ejemplo de lista
de asignaciones

Descripcin de una tarea de control


Los requerimientos bsicos para describir una tarea de control incluyen
una descripcin verbal, un croquis de situacin y la definicin de los
sensores y actuadores a utilizar. Esta informacin es necesaria para el
desarrollo de esquemas de circuitos. Adems, es necesario definir la
asignacin de sensores a las salidas del PLC. Un ejemplo de lista de
asignaciones de este tipo se muestra en la tabla A2.1.
Designacin del recurso

Direcciones de
Entrada/salida en el PLC

Comentario

S1

I1.5

Pulsador de MARCHA

Y5

Q2.7

Avance del cilindro C

Dado que esta lista forma parte integrante de los programas de PLC,
no se crea por separado en el caso de pequeas tareas de control.
Diseo de la solucin
La solucin diseada es dar una clara representacin de la funcin y
comportamiento del control, independientemente de la tecnologa. La
tabla de funciones se utiliza como medio de describir sistemas sencillos de control lgico. El diagrama de funciones segn IEC 848 es particularmente adecuado para la descripcin de sistemas de control secuenciales.
Realizacin de la solucin
La realizacin de la solucin se divide en:
Programacin de la lgica del sistema de control (PLC)
Incorporacin del programa de PLC en el PLC o en el sistema PLC
Un ejemplo de esto se muestra en la fig. A2.2 utilizando una tarea de
control sencilla:

Ejemplo

Debe sonar un timbre tanto si se presiona el pulsador de la puerta del


jardn como si se presiona el pulsador de la puerta de la casa.
Cuando se empieza la creacin de un programa de PLC, los recursos
deben declararse con la sintaxis definida por IEC 1131-3. Las entradas
y salidas del PLC declaradas en la fig. A2.2a son variables locales
dentro del programa "Timbre". La utilizacin de variables globales se
necesita normalmente en tareas de control algo ms complejas.

TP301 Festo Didactic

A-11
Ejercicio 2

A continuacin de la declaracin, se formula en cuerpo del programa.


En este punto se dispone de funciones y bloques de funcin para crear
una programa con una distribucin clara. El ejemplo se programa en
diagrama de bloques de funcin utilizando la funcin lgica OR.

PROGRAM Timbre
VAR
Pulsador_FD AT %IX1: BOOL;
Pulsador_AD AT %IX2: BOOL;
Timbre
AT %QX1: BOOL;
END_VAR

Pulsador_FD

>=1

Timbre

Pulsador_AD

B 6.1 - 6.3

CONFIGURATION ejemplo
RESOURCE Instalacin
TASK
T_cclica
PROGRAM Timbre

END_PROGRAM
a) Ejemplo de un programa de PLC

b) Ejemplo de la instalacin de un programa


en un PLC o en un sistema PLC

Para ejecutar un programa en el PLC, es necesario saber cmo se


procesa el programa: cclicamente o en relacin con determinados
acontecimientos. IEC 1131-3 facilita sus propios recursos de lenguaje
para la asignacin de tales caractersticas secuenciales y para la incorporacin del programa al PLC. Estos con los recursos de lenguaje de
configuracin.
La fig. A2.2b ilustra la configuracin "Ejemplo". Esta configuracin representa el PLC. La configuracin "Ejemplo" requiere el recurso "Procesador_1". Este recurso est asignado al programa "Timbre". La tarea
"T_ciclico" define que el programa "Timbre" debe procesarse cclicamente.

Festo Didactic TP301

Fig. A2.2:
Realizacin de la solucin

A-12
Ejercicio 2

Verificacin y puesta a punto del control


El programa se carga desde el PC o aparato programador al PLC para
su verificacin o puesta a punto del sistema de control. A continuacin,
debe comprobarse la interaccin del PLC y el sistema a controlar.
Documentacin del sistema de control
La documentacin del sistema se compila tan pronto como la instalacin funciona sin fallos y el programa del PLC ha sido modificado consecuentemente. LA documentacin consiste bsicamente en:
el croquis de situacin,
el diseo de la solucin formal,
la impresin del programa con comentarios.

Descripcin del
problema

Definicin del ejercicio

Las entradas y salidas del PLC, as como las variables adicionales


para almacenamiento de informacin deben incorporarse al programa
de PLC. Para ello, deber familiarizarse con el procedimiento bsico
requerido para la generacin de programas de PLC.

1. Procedimientos para crear un programa de PLC


2. Recursos de un PLC segn IEC 1131-3
3. Declaracin de variables segn IEC 1131-3

Realizacin

Para llevar a cabo el ejercicio necesitar la informacin de la seccin B


del libro de trabajo: Captulo 6, pgina B-65.

TP301 Festo Didactic

A-13
Ejercicio 2

HOJA DE TRABAJO
1. Pasos prcticos para la creacin de un programa de PLC
Especificar los cinco pasos prcticos para la creacin de un programa
de PLC,

Responder a las siguientes preguntas:


1. Qu actividades hay que realizar en la etapa "Realizacin de la solucin"?

2. Recursos de un PLC segn IEC 1131-3


Los siguientes recursos deben direccionarse directamente.
Especificar las designaciones segn IEC 1131-3:
Bit de entrada 14
Memoria 9
Palabra de salidas 3
Entrada 7 en la 2 tarjeta de entradas

Festo Didactic TP301

Pregunta

A-14
Ejercicio 2

HOJA DE TRABAJO
3. Declaracin de variables segn IEC 1131-3
En una declaracin de programa, debern tenerse en cuenta los siguientes datos. Utilice el tipo de datos adecuado en la declaracin.
La declaracin deber ser vlida slo localmente.
la entrada del interruptor S1, aplicada a la entrada 2 de la 4
tarjeta de entradas
temperatura TEMP, aplicada a la palabra de salidas n 1
memoria VALVULA_ABIERTA
memoria booleana con el identificador PIEZA_PRESENTE, preasignada al valor inicial 0
memoria booleana con el identificador INIC_ROBOT, preasignada
con el valor inicial 1
almacenamiento de un nmero (entero - INT) bajo el nombre NUMERO, con el valor 0 preasignado

TP301 Festo Didactic

A-15
Ejercicio 3

Controles lgicos programables

Tema

Circuito de una lmpara


La funcin de asignacin

Ttulo

Comprender la actuacin de una salida de PLC


Ser capaz de realizar la funcin de asignacin lgica con un PLC
Se capaz de crear un programa de PLC segn IEC 1131-3

Objetivo didctico

Todo control lgico programable tiene un cierto nmero de entradas y


salidas, a travs de las cuales se conectan los sensores y actuadores.
El programa transferido al control contiene las rdenes que interconectan
las entradas individuales y las asignan a las correspondientes salidas.

Conocimientos
tcnicos

La funcin de asignacin
La funcin de asignacin permite que el estado de una seal de entrada sea transmitido directamente al estado de una salida del PLC. El
comportamiento puede describirse claramente con la ayuda de una tabla de funciones, que lo representa por una entrada %IX1 y una salida
%QX2 en la tabla A3.1.
B3

Festo Didactic TP301

%IX1

%QX2

Tabla A3.1:
Tabla de funciones para la
funcin de asignacin

A-16
Ejercicio 3

Para realizar la funcin de asignacin en cada uno de los lenguajes de


programacin, necesitar las rdenes mostradas en la tabla A3.2.

B8

LD
%IX1

%QX2
Rengln con un contacto abierto
y bobina no-memorizante.

B7

FBD

%IX1

B9

B 10

%QX2

IL

LD

%IX1

Leer el valor de la entrada especificada


y cargarlo al acumulador

ST

%QX2

Carga el contenido del acumulador


a la salida especificada

ST
%QX2 := %IX1;

Tabla A3.2:
La funcin de asignacin

Conexin directa de la entrada


y la salida especificadas

Asignacin del valor de la entrada


especificada a la derecha de ":="
a la salida especificada a la
izquierda de ":="

TP301 Festo Didactic

A-17
Ejercicio 3

El accionamiento de un pulsador (S1) hace que se encienda la lmpara (H1). La lmpara debe permanecer iluminada mientras el pulsador
se halle accionado.

Descripcin del
problema

S1
H1
Croquis de situacin

1. Trazado del esquema del circuito y montaje del equipo


2. Descripcin de la tarea de control por medio de la tabla de funciones y una ecuacin booleana
3. Declaracin de las variables del programa PLC
4. Formulacin del programa de PLC en uno de los diversos lenguajes
de programacin
5. Verificacin y puesta a punto del programa de PLC y del sistema.

Festo Didactic TP301

Definicin del ejercicio

A-18
Ejercicio 3

Realizacin

1. Trazado del esquema del circuito y montaje del equipo


Completar el esquema elctrico del circuito en la HOJA DE TRABAJO.
Montar el equipo necesario en la placa perfilada:
Cantidad

Lista de componentes

Descripcin

Control lgico programable

Cable de unin con la unidad de conexin

Unidad de conexin

Entrada de seales elctricas

Dispositivo indicador

Antes de cablear:
Desconectar la alimentacin!

Establecer las conexiones elctricas.

2. Descripcin de la tarea de control por medio de la tabla de funciones y la ecuacin booleana


Describir el comportamiento del sistema de control independientemente de la tecnologa por medio de la tabla de funciones
y la ecuacin booleana asociada.

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 comentario 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 sistemas de PLC reales, las entradas y la representacin de la declaracin
de variables depende del sistema utilizado.

TP301 Festo Didactic

A-19
Ejercicio 3

4. 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 formulacin de sistemas de control lgico son el diagrama de contactos, el
diagrama de funciones, la lista de instrucciones y el texto estructurado.

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 del circuito
Puesta a punto de la instalacin:
Conectar la fuente de alimentacin utilizando una tensin estndar de 24 V DC!

Cargar el programa en el PLC


Realizar una funcin de prueba
Corregir cualquier error que pudiera haber en el programa del PLC.
Documentar la solucin

Festo Didactic TP301

A-20
Ejercicio 3

TP301 Festo Didactic

A-21
Ejercicio 3

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.

+24V
0V

I
24V

PLC

0V
Q

0V

Esquema del circuito


elctrico

2. Descripcin de la tarea de control por medio de la tabla de funciones y la ecuacin booleana


Crear la tabla de funciones:
S1

H1

0
1

Tabla de funciones

Deducir la ecuacin booleana a partir de la tabla:

Ecuacin booleana

Festo Didactic TP301

A-22
Ejercicio 3

HOJA DE TRABAJO
3. Declaracin de las variables del programa del PLC
Declarar las variables requeridas en el programa del PLC:
Denominacin

Tipo de datos

Direccin

Comentario

Declaracin de variables

4. 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)
Diagrama de contactos (LD)
Lista de instrucciones (IL)
Texto estructurado (ST)

Programa del PLC

TP301 Festo Didactic

A-23
Ejercicio 3

HOJA DE TRABAJO
Responder a las siguientes preguntas:
1. Cul es el comportamiento de una salida programada como no-memorizante, si deja de aplicarse la seal de entrada?

2. Describir el diseo bsico de un mdulo de salida.

Festo Didactic TP301

Pregunta

A-24
Ejercicio 3

TP301 Festo Didactic

A-25
Ejercicio 4

Controles lgicos programables

Tema

Alarma antirrobo
La funcin NOT

Ttulo

Poder realizar la funcin not con un PLC

Objetivo didctico

La funcin NOT
La funcin NOT se utiliza para convertir seales binarias a su valor
opuesto:

Conocimientos
tcnicos

Si la seal es 0, se evala como 1


Si la seal es 1, se evala como 0
La Tabla A4.1 ilustra un ejemplo del comportamiento de la funcin
NOT para la entrada %IX1 y una salida %QX2.

Festo Didactic TP301

%IX1

%QX2

B3

Tabla A4.1:
Tabla de funciones para la
funcin NOT

A-26
Ejercicio 4

La tabla A4.2 contiene las rdenes para la realizacin de la funcin


NOT en cada uno de los lenguajes de programacin.
B8

LD
%IX1

%QX2
Rengln con contacto normalmente
cerrado y bobina no-memorizante.

B7

FBD

%IX1

B9

B 10

NOT

%QX2

Usar la funcin NOT en


la entrada especificada

IL

LDN

%IX1

Cargar el valor inverso de la


entrada en el acumulador.

ST

%QX2

Cargar el contenido del acumulador


a la salida especificada.

ST
%QX2 := NOT %IX1;

Asignar el valor inverso de la


entrada especificadaa la salida
indicada a la izquierda de ":=".

Tabla A4.2:
La funcin NOT

TP301 Festo Didactic

A-27
Ejercicio 4

Se ha dispuesto un fino hilo tensado tras una ventana, que se rompe si


hay un intento de robo. Como resultado de la rotura se interrumpe un
circuito cerrado y debe sonar un zumbador.

Descripcin del
problema

H1

S1
Croquis de situacin

1. Trazado el esquema del circuito y montaje del equipo


2. Descripcin de la tarea de control por medio de la tabla de funciones y la ecuacin booleana
3. Declaracin de las variables del programa PLC
4. Formulacin del programa PLC en uno de los lenguajes de programacin del PLC
5. Verificacin y puesta a punto del programa y el sistema PLC

Festo Didactic TP301

Definicin del ejercicio

A-28
Ejercicio 4

Realizacin

1. Trazado el esquema del circuito y montaje del equipo


Completar el esquema del circuito elctrico en la HOJA DE TRABAJO.
Montar el equipo necesario en la placa perfilada:
Cantidad

Lista de componentes

Descripcin

Control lgico programable

Cable de unin con la unidad de conexin

Unidad de conexin

Entrada de seales elctricas

Dispositivo indicador

Antes de cablear:
Desconectar la alimentacin!

Establecer las conexiones elctricas.

2. Descripcin de la tarea de control por medio de la tabla de funciones y la ecuacin booleana


Describir el comportamiento del sistema de control independientemente de la tecnologa por medio de una tabla de funciones y la ecuacin booleana asociada.

3. Declaracin de las variables del programa PLC


Todas las variables deben ser declaradas como variables locales
del programa del PLC
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 comentario 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 sistemas de PLC reales, las entradas y la representacin de la declaracin
de variables depende del sistema utilizado.

TP301 Festo Didactic

A-29
Ejercicio 4

4. 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 formulacin de sistemas de control lgico son el diagrama de contactos, el
diagrama de funciones, la lista de instrucciones y el texto estructurado.

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 del circuito
Puesta a punto de la instalacin:
Conectar la fuente de alimentacin utilizando una tensin estndar de 24 V DC!

Cargar el programa en el PLC


Realizar una funcin de prueba
Corregir cualquier error que pudiera haber en el programa del PLC.
Documentar la solucin.

Festo Didactic TP301

A-30
Ejercicio 4

TP301 Festo Didactic

A-31
Ejercicio 4

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.

+24V
0V

I
24V

PLC

0V
Q

0V

Esquema del circuito


elctrico

2. Descripcin de la tarea de control por medio de la tabla de funciones y la ecuacin booleana


Crear la tabla de funciones:
S1

H1

0
1

Tabla de funciones

Deducir la ecuacin booleana a partir de la tabla:

Ecuacin booleana

Festo Didactic TP301

A-32
Ejercicio 4

HOJA DE TRABAJO
3. Declaracin de las variables del programa del PLC
Declarar las variables requeridas en el programa del PLC:
Denominacin

Tipo de datos

Direccin

Comentario

Declaracin de variables

4. 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)
Diagrama de contactos (LD)
Lista de instrucciones (IL)
Texto estructurado (ST)

Programa del PLC

TP301 Festo Didactic

A-33
Ejercicio 4

HOJA DE TRABAJO
Responder a la siguiente preguntas:
1. La salida se activa como no-memorizante. Cul es el efecto en la
seal de salida, si el hilo se rompe y debe ser reparado?

Festo Didactic TP301

Pregunta

A-34
Ejercicio 4

TP301 Festo Didactic

A-35
Ejercicio 5

Controles lgicos programables

Tema

Prensa con barrera protectora


La funcin AND

Ttulo

Se capaz de realizar una funcin AND con un PLC


Comprender el trmino funcin segn IEC 1131-3
Poder utilizar funciones estndar segn IEC 1311-3

Objetivo didctico

Las funciones son parte de las unidades de organizacin del programa


y por lo tanto representan un medio para configurar programas de
PLC. IEC 1311-3 proporciona funciones estandarizadas para la solucin de tareas bsicas de tecnologa de control.

Conocimientos
tcnicos

La funcin AND
Solamente cuando todas las seales conectadas en AND estn en 1,
el resultado es 1. Si una sola de las seales conectadas es 0, entonces el resultado es tambin 0.
La tabla de funciones para la funcin AND se muestra a continuacin
para las dos entradas %IX1 y %IX2, as como para la salida %QX3.

Festo Didactic TP301

%IX1

%IX2

%QX3

B3

Tabla A5.1:
Tabla de funciones para la
funcin AND

A-36
Ejercicio 5

La tabla A5.2 contiene las rdenes para la realizacin de la funcin


AND en cada uno de los lenguajes de programacin.
B8

LD
%IX1

%IX2

%QX3
Rengln con dos contactos en serie
normalmente abiertos

B7

FBD
%IX1
%IX2

&

%QX3

o bien
%IX1
%IX2

B9

B 10

AND

%QX3

IL

LD

%IX1

AND

%IX2

ST

%QX3

Cargar al acumulador el valor de la


entrada especificada.
Conexin en AND del resultado
actual con la segunda entrada.
Cargar el contenido del acumulador
a la salida especificada

ST
%QX3 := %IX1 & %IX2;
o bien
%QX3 := AND(%IX1, %IX2);

Tabla A5.2:
La funcin AND

Las entradas y salidas de la funcin


AND se conectan con los
parmetros especificados

Las dos entradas especificadas


se conectan con el operador "&".
El resultado se asigna a la salida
especificada.
Invocacin de una funcin AND con
entradas especificadas como
parmetros transferidos.

TP301 Festo Didactic

A-37
Ejercicio 5

Una prensa de estampacin 1.0 debe avanzar solamente si se presiona el pulsador S1 y (and) la barrera protectora se halla cerrada. Si una
de estas condiciones no se cumple, la prensa debe retroceder inmediatamente.

Descripcin del
problema

La posicin de la barrera protectora cerrada B1 es detectada por un sensor de proximidad B1. La herramienta de la prensa avanza o retrocede
por medio de una electrovlvula con retorno por muelle (bobina Y1).

1.0

S1

B1
Croquis de situacin

1. Trazado los esquemas neumtico y elctrico y montaje del equipo.


2. Descripcin de la tarea de control por medio de la tabla de funciones y una ecuacin booleana
3. Declaracin de las variables del programa PLC
4. Formulacin del programa de PLC en uno de los diversos lenguajes
de programacin
5. Verificacin y puesta a punto del programa de PLC y del sistema.

Festo Didactic TP301

Definicin del ejercicio

A-38
Ejercicio 5

Realizacin

1. Trazado de los esquemas neumtico y elctrico y montaje del


equipo
Completar los esquemas neumtico y elctrico en la HOJA DE TRABAJO.
Montar el equipo necesario en la placa perfilada:
Cantidad

Descripcin

Control lgico programable

Cable de unin con la unidad de conexin

Unidad de conexin

Unidad de mantenimiento

Distribuidor

Cilindro de doble efecto


Electrovlvula 5/2 vas de una bobina

Lista de componentes

Entrada de seales elctricas

Interruptor de proximidad inductivo


Tubo de plstico

Antes de cablear y de conectar los tubos:


Desconectar la alimentacin elctrica!

Establecer las conexiones elctricas y neumticas.

2. Descripcin de la tarea de control por medio de la tabla de funciones y la ecuacin booleana


Describir el comportamiento del sistema de control independientemente de la tecnologa, por medio de la tabla de funciones y la
ecuacin booleana asociada.

TP301 Festo Didactic

A-39
Ejercicio 5

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 comentario 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 sistemas de PLC reales, las entradas y la representacin de la declaracin
de variables depende del sistema utilizado.

4. 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 formulacin de sistemas de control lgico son el diagrama de contactos, el
diagrama de funciones, la lista de instrucciones y el texto estructurado.

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 estndar de 24 V DC!
Aumentar la presin del aire en la unidad de mantenimiento hasta
la presin de trabajo (vanse las fichas tcnicas de los componentes neumticos)!
Funcionamiento de la instalacin:
Mantener despejada la zona de funcionamiento de la instalacin!

Cargar el programa en el PLC


Realizar una funcin de prueba
Corregir cualquier error que pudiera haber en el programa del PLC.
Documentar la solucin.

Festo Didactic TP301

A-40
Ejercicio 5

TP301 Festo Didactic

A-41
Ejercicio 5

HOJA DE TRABAJO
1. Trazado del esquema del circuito electroneumtico y elctrico,
y montaje del equipo
Completar el esquema del circuito electroneumtico

1.0

1.1

4(A)

2(B)

Y1
5(R)

3(S)
1(P)

Esquema del circuito


electroneumtico

Festo Didactic TP301

A-42
Ejercicio 5

HOJA DE TRABAJO
Completar el esquema del circuito elctrico e introducir las direcciones
disponibles de entrada y salida en el PLC que se utilice.

+24V
0V

I
24V

PLC

0V
Q

0V

Esquema del
circuito elctrico

2. Descripcin de la tarea de control por medio de la tabla de funciones y la ecuacin booleana


Crear la tabla de funciones:
S1

B1

Y1

Tabla de funciones

Deducir la ecuacin booleana a partir de la tabla:

Ecuacin booleana

TP301 Festo Didactic

A-43
Ejercicio 5

HOJA DE TRABAJO
3. Declaracin de las variables del programa del PLC
Declarar las variables requeridas en el programa del PLC:
Denominacin

Tipo de datos

Direccin

Comentario

Declaracin de variables

4. 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)
Diagrama de contactos (LD)
Lista de instrucciones (IL)
Texto estructurado (ST)

Programa del PLC

Festo Didactic TP301

A-44
Ejercicio 5

HOJA DE TRABAJO
Pregunta

Responder a la siguiente pregunta:


1. La salida Y1 debe activarse como memorizante o como no-memorizante?

TP301 Festo Didactic

A-45
Ejercicio 6

Controles lgicos programables

Tema

Sistema de timbre
La funcin OR

Ttulo

Realizacin de la funcin lgica OR con un PLC.

Objetivo didctico

La funcin OR
Si por lo menos una de las seales conectadas se halla en 1, el resultado es tambin 1. Solamente si todas las seales conectadas se hallan en 0 el resultado es tambin 0.

Conocimientos
tcnicos

La Tabla A6.1 contiene la tabla de funciones para la conexin OR de


las seales de las entradas %IX1 y %IX2. El resultado se refleja en la
salida %QX3.

Festo Didactic TP301

%IX1

%IX2

%QX3

B3

Tabla A6.1:
Tabla de funciones
para la funcin OR

A-46
Ejercicio 6

La Tabla A6.2 contiene las rdenes para la realizacin de la funcin


OR en los diferentes lenguajes de programacin.
B8

LD
%IX1

%QX3
Rengln con dos contactos en
paralelo normalmente abiertos

%IX2

B7

FBD
%IX1
%IX2

>=1

%QX3

o bien
%IX1
%IX2

B9

B 10

OR

%QX3

Las entradas y la salida de la


funcin OR estn conectadas con
los parmetros especificados.

IL

LD

%IX1

OR

%IX2

ST

%QX3

Cargar al acumulador el valor de


la entrada especificada.
Conexin en OR del resultado actual
con la segunda entrada.
Cargar el contenido del acumulador
a la salida especificada.

ST
%QX3 := %IX1 OR %IX2;

Las dos entradas especificadas


estn conectadas con el operador
"OR". El resultado es asignado a
la salida especificada.

Tabla A6.2:
La funcin OR

TP301 Festo Didactic

A-47
Ejercicio 6

El timbre de un apartamento debe sonar tanto si se presiona el pulsador S1 en la puerta del jardn como si se presiona el pulsador S2 en la
puerta del apartamento.

Descripcin del
problema

S2
H1
S1

Croquis de situacin

1. Trazado del esquema del circuito y montaje del equipo


2. Descripcin de la tarea de control por medio de la tabla de funciones y una ecuacin booleana
3. Declaracin de las variables del programa PLC
4. Formulacin del programa de PLC en uno de los diversos lenguajes
de programacin
5. Verificacin y puesta a punto del programa de PLC y del sistema

Festo Didactic TP301

Definicin del ejercicio

A-48
Ejercicio 6

Realizacin

1. Trazado del esquema del circuito y montaje del equipo


Completar el esquema elctrico del circuito en la HOJA DE TRABAJO.
Montar el equipo necesario en la placa perfilada:
Cantidad

Lista de componentes

Descripcin

Control lgico programable

Cable de unin con la unidad de conexin

Unidad de conexin

Entrada de seales elctricas

Dispositivo indicador

Antes de cablear la instalacin:


Desconectar la alimentacin!

Establecer las conexiones elctricas.

2. Descripcin de la tarea de control por medio de la tabla de funciones y la ecuacin booleana


Describir el comportamiento del sistema de control independientemente de la tecnologa por medio de la tabla de funciones y la
ecuacin booleana asociada.

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 comentario 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 sistemas de PLC reales, las entradas y la representacin de la declaracin
de variables depende del sistema utilizado.

TP301 Festo Didactic

A-49
Ejercicio 6

4. 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 formulacin de sistemas de control lgico son el diagrama de contactos, el
diagrama de funciones, la lista de instrucciones y el texto estructurado.

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 estndar de 24 V DC!

Cargar el programa en el PLC


Realizar una funcin de prueba
Corregir cualquier error que pudiera haber en el programa del PLC.
Documentar la solucin.

Festo Didactic TP301

A-50
Ejercicio 6

TP301 Festo Didactic

A-51
Ejercicio 6

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.

+24V
0V

I
24V

PLC

0V
Q

0V

Esquema del circuito


elctrico

2. Descripcin de la tarea de control por medio de la tabla de funciones y la ecuacin booleana


Crear la tabla de funciones:
S1

S2

H1

Tabla de funciones

Festo Didactic TP301

A-52
Ejercicio 6

HOJA DE TRABAJO
Deducir la ecuacin booleana a partir de la tabla:

Ecuacin booleana

3. Declaracin de las variables del programa del PLC


Declarar las variables requeridas en el programa del PLC:
Denominacin

Tipo de datos

Direccin

Comentario

Declaracin de variables

4. 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)
Diagrama de contactos (LD)
Lista de instrucciones (IL)
Texto estructurado (ST)

Programa del PLC

TP301 Festo Didactic

A-53
Ejercicio 6

HOJA DE TRABAJO
Pregunta

Responder a la siguiente pregunta:


1. En el caso de una funcin OR, la salida se activa si por lo menos
una de las seales se halla en 1. Con la funcin OR EXCLUSIVA,
la salida solamente se activa si hay una sola de las entradas en 1.
Completar la tabla de funciones.

Festo Didactic TP301

S1

S2

H1

Tabla de funciones

A-54
Ejercicio 6

TP301 Festo Didactic

A-55
Ejercicio 7

Controles lgicos programables

Tema

Dispositivo estampador
Combinaciones de AND/OR/NOT

Ttulo

Ser capaz de combinaciones de conexiones lgicas con un PLC


Comprender las prioridades de los operadores elementales en cada
uno de los lenguajes de programacin

Objetivo didctico

Combinacin de conexiones lgicas


Casi todas las tareas de control requieren la programacin de una
combinacin de conexiones lgicas. Para disear una solucin es
esencial lo siguiente:

Conocimientos
tcnicos

Establecer una ecuacin booleana que describa la lgica de la tarea


de control
Tener en consideracin las prioridades de los operadores utilizados
para la programacin
El ejemplo que sigue trata con una combinacin de las funciones AND,
OR y NOT:

B3

Un piloto H1 debe lucir si se acciona el interruptor S1, y adems uno


slo de los interruptores S2 S3.
La correspondiente tabla de funciones es como sigue:

S1

S2

S3

H1

La forma normal disyuntiva puede deducirse de esta tabla. La forma


normal disyuntiva describe la tarea de control por medio de una ecuacin booleana, que puede convertirse fcilmente en uno de los lenguajes de programacin.

Festo Didactic TP301

Tabla A7.1:
Tabla de funciones

A-56
Ejercicio 7

El mtodo para solucionarlo en la forma normal disyuntiva est basado


en las lneas de la tabla de funciones para las cuales la variable resultante (H1) tiene el valor 1. Estas lneas se conectan en OR y llevan a
la ecuacin booleana:
H1 = (S1 S2 S3) (S1 S2 S3)
La realizacin de la tarea de control en cada uno de los lenguajes de
programacin se relaciona en la tabla A7.2.
B8

LD

S1

S2

S3

H1

/
S1

S2

S3
/

B7

B9

FBD

S1
S2
S3

&

S1
S2
S3

&

H1

IL

LD
ANDN
AND
OR(
AND
ANDN
)
ST
B 10

>=1

S1
S2
S3
S1
S2
S3
H1

ST

H1 := S1 & NOT S2 & S3 OR S1 & S2 & NOT S3;


Tabla A7.2:
Combinacin de
operaciones lgicas

or
H1 := (S1 & NOT S2 & S3) OR (S1 & S2 & NOT S3);

TP301 Festo Didactic

A-57
Ejercicio 7

Dado que el procesamiento de la funcin OR es una accin posterior


en la lista de instrucciones, se abre un parntesis a continuacin de la
instruccin OR. El hecho de cerrar el parntesis en la penltima lnea
hace que el resultado de la expresin entre parntesis sea enlazada
en OR con el resultado actual (en el acumulador).
La solucin en Texto Estructurado no requiere ningn parntesis dado
que en este caso los propios operadores establecen las prioridades.
Sin embargo, para conseguir una mejor legibilidad es una buena idea
utilizar parntesis en las expresiones ms complejas.

Prioridades con los enlaces lgicos bsicos


En los lenguajes de programacin grficos LD y FBD, el orden de
procesamiento est implcitamente especificado por el smbolo grfico
del programa o la parte del programa.
De esta forma, en un determinado rengln primero se evalan los enlaces en serie antes de "calcular" los enlaces existentes en paralelo.
En el diagrama de bloques de funcin, el orden de evaluacin de una
red se define por bloques.
Las instrucciones de un programa en lista de instrucciones se procesan lnea por lnea. Si debe modificarse la prioridad de los operandos,
debe indicarse por medio de parntesis.
El lenguaje ST define una regla nica de preferencia para los operadores. La funcin booleana AND tiene mayor prioridad que la funcin
booleana OR. Al igual que en las operaciones matemticas, se aplica
la regla de la multiplicacin antes que la suma o la resta.

Festo Didactic TP301

A-58
Ejercicio 7

Descripcin del
problema

Un dispositivo estampador puede hacerse funcionar desde tres lugares. Se inserta una pieza a travs de una gua, con lo que se activan
dos de los tres sensores de proximidad B1, B2 y B3. Esto hace avanzar el cilindro 1.0 por medio de la electrovlvula (bobina Y1) y se corta
un rebaje en la pieza. El ciclo de estampado slo debe dispararse si
existen dos de las seales. Por razones de seguridad, debe evitarse que
el cilindro avance si estn activados los tres sensores de proximidad.

1.0
B3

B1
B2

Fig. A7.1:
Croquis de situacin

Definicin del ejercicio

1. Trazado del esquema del circuito


2. Montaje del equipo con la ayuda de los esquemas de los circuitos
electroneumtico y elctrico
3. Descripcin de la tarea de control por medio de la tabla de funciones y una ecuacin booleana
4. Declaracin de las variables del programa PLC
5. Formulacin del programa de PLC en uno de los diversos lenguajes
de programacin
6. Verificacin y puesta a punto del programa de PLC y del sistema

TP301 Festo Didactic

A-59
Ejercicio 7

1. Trazado del esquema del circuito elctrico

Realizacin

Completar el esquema elctrico en la HOJA DE TRABAJO.

2. Montaje del equipo con la ayuda de los esquemas de los circuitos electroneumtico y elctrico
Montar los elementos necesarios en la placa perfilada:
Cantidad

Descripcin

Control lgico programable

Cable de unin con la unidad de conexin

Unidad de conexin

Unidad de mantenimiento

Distribuidor

Cilindro de doble efecto

Electrovlvula 5/2 vas de una bobina

Interruptor de proximidad inductivo

Interruptor de proximidad capacitivo

Interruptor de proximidad ptico


Tubo de plstico

Antes de cablear y de conectar los tubos:


Desconectar la alimentacin elctrica!

Establecer las conexiones neumticas y elctricas.

3. Descripcin de la tarea de control por medio de la tabla de funciones y la ecuacin booleana


Describir el comportamiento del sistema de control independientemente de la tecnologa, por medio de la tabla de funciones y la
ecuacin booleana asociada.

Festo Didactic TP301

Lista de componentes

A-60
Ejercicio 7

4. 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 comentario 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 sistemas de PLC reales, las entradas y la representacin de la declaracin
de variables depende del sistema utilizado.
5. 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 formulacin de sistemas de control lgico son el diagrama de contactos, el
diagrama de funciones, la lista de instrucciones y el texto estructurado.

6. 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 de los esquemas!
Puesta a punto de la instalacin:
Conectar la fuente de alimentacin utilizando una tensin estndar de 24 V DC!
Aumentar la presin del aire en la unidad de mantenimiento hasta
la presin de trabajo (vanse las fichas tcnicas de los componentes neumticos)!
Funcionamiento de la instalacin:
Mantener despejada la zona de funcionamiento de la instalacin!
Cargar el programa en el PLC
Realizar una funcin de prueba
Corregir cualquier error que pudiera haber en el programa del PLC.
Documentar la solucin.

TP301 Festo Didactic

A-61
Ejercicio 7

HOJA DE TRABAJO
1. Trazado del esquema del circuito elctrico
Completar el esquema del circuito elctrico e introducir las direcciones
de entrada y salida disponibles en el PLC.

+24V
0V

I
24V
0V

PLC

0V

Esquema del
circuito elctrico

Festo Didactic TP301

A-62
Ejercicio 7

HOJA DE TRABAJO
2. Montaje del equipo con la ayuda de los esquemas de los circuitos electroneumtico y elctrico
Configurar el sistema de control
1.0

1.1

4(A)

2(B)

Y1
5(R)

3(S)
1(P)

Esquema del circuito


electroneumtico

3. Descripcin de la tarea de control por medio de la tabla de funciones y la ecuacin booleana


Completar la tabla de funciones:

Tabla de funciones

B1

B2

B3

Y1

Determinar la ecuacin booleana asociada.

Ecuacin booleana

TP301 Festo Didactic

A-63
Ejercicio 7

HOJA DE TRABAJO
4. Declaracin de las variables del programa del PLC
Declarar las variables requeridas en el programa del PLC:
Denominacin

Tipo de datos

Direccin

Comentario

Declaracin de variables

5. 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)
Diagrama de contactos (LD)
Lista de instrucciones (IL)
Texto estructurado (ST)

Programa del PLC

Festo Didactic TP301

A-64
Ejercicio 7

HOJA DE TRABAJO
Pregunta

Responder a la siguiente pregunta:


1. Por qu el elemento negado tiene que intervenir en cada parntesis?

TP301 Festo Didactic

A-65
Ejercicio 8

Controles lgicos programables

Tema

Control de un silo para dos materiales a granel


Sistema de control lgico con derivacin

Ttulo

Ser capaz de resolver un sistema de control lgico con derivacin

Objetivo didctico

An en los casos de tareas de control simples, se utilizan ms de un


elemento final de control.

Conocimientos
tcnicos

Esto requiere que el PLC acte sobre varias salidas. En los lenguajes
grficos esto lleva a programar varios renglones i lneas de contactos.
Estas lneas puede ser opcionalmente dotadas de un identificador. Es
necesario utilizar un identificador si hay que realizar un salto a este
rengln dentro del programa.

Festo Didactic TP301

B 12

A-66
Ejercicio 8

Descripcin del
problema

Una planta de mezclado permite una seleccin entre dos materiales a


granel, segn un interruptor selector (S2). En posicin de conmutacin
1 (S2 = seal 0), es el material A el que llega al contenedor, si se
presiona el pulsador S1.
De forma similar, el material a granel B es conducido si el interruptor
selector S2 se halla en posicin 2 (S2 = seal 1) y se acciona el
pulsador S1. El silo A se abre a travs del cilindro 1.0 (electrovlvula
Y1) y el silo B a travs del cilindro 2.0 (electrovlvula Y2).

2.0

1.0

S1

S2

Croquis de situacin

Definicin del ejercicio

1. Trazado del esquema del circuito y montaje del equipo


2. Descripcin de la tarea de control por medio de la tabla de funciones y una ecuacin booleana
3. Declaracin de las variables del programa PLC
4. Formulacin del programa de PLC en uno de los diversos lenguajes
de programacin
5. Verificacin y puesta a punto del programa de PLC y del sistema

TP301 Festo Didactic

A-67
Ejercicio 8

1. Trazado del esquema del circuito y montaje del equipo

Realizacin

Completar el esquema elctrico del circuito en la HOJA DE TRABAJO.

2. Montaje del equipo con la ayuda de los esquemas de los circuitos electroneumtico y elctrico
Montar los elementos necesarios en la placa perfilada:
Cantidad

Descripcin

Control lgico programable

Cable de unin con la unidad de conexin

Unidad de conexin

Unidad de mantenimiento

Distribuidor

Cilindro de doble efecto

Electrovlvula 5/2 vas de una bobina

Entrada de seales elctricas


Tubo de plstico

Antes de cablear y de conectar los tubos:


Desconectar la alimentacin elctrica!

Establecer las conexiones neumticas y elctricas.

3. Descripcin de la tarea de control por medio de la tabla de funciones y la ecuacin booleana


Describir el comportamiento del sistema de control independientemente de la tecnologa, por medio de la tabla de funciones y la
ecuacin booleana asociada.

Festo Didactic TP301

Lista de componentes

A-68
Ejercicio 8

4. Declaracin de las variables del programa del PLC


Todas variables deben ser declaradas como variables locales.
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 comentario 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 sistemas de PLC reales, las entradas y la representacin de la declaracin
de variables depende del sistema utilizado.
5. 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 formulacin de sistemas de control lgico son el diagrama de contactos, el
diagrama de funciones, la lista de instrucciones y el texto estructurado.

6. 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 de los esquemas!
Puesta a punto de la instalacin:
Conectar la fuente de alimentacin utilizando una tensin estndar de 24 V DC!
Aumentar la presin del aire en la unidad de mantenimiento hasta
la presin de trabajo (vanse las fichas tcnicas de los componentes neumticos)!
Funcionamiento de la instalacin:
Mantener despejada la zona de funcionamiento del equipo
Cargar el programa en el PLC
Realizar una funcin de prueba
Corregir cualquier error que pudiera haber en el programa del PLC.
Documentar la solucin.

TP301 Festo Didactic

A-69
Ejercicio 8

HOJA DE TRABAJO
1. Trazado del esquema del circuito elctrico
Completar el esquema del circuito elctrico e introducir las direcciones
de entrada y salida disponibles en el PLC.

+24V
0V

I
24V
0V

PLC

0V

Esquema del
circuito elctrico

Festo Didactic TP301

A-70
Ejercicio 8

HOJA DE TRABAJO
2. Montaje del equipo con la ayuda de los esquemas de los circuitos electroneumtico y elctrico
Configurar el sistema de control
1.0

1.1

4(A)

2.0

2.1

2(B)

Y1

4(A)

2(B)

Y2
5(R)

3(S)

5(R)

3(S)

1(P)

Esquema del circuito


electroneumtico

1(P)

3. Descripcin de la tarea de control por medio de la tabla de funciones y la ecuacin booleana


Completar la tabla de funciones:

Tabla de funciones

S1

S2

Y1

Y2

Determinar la ecuacin booleana asociada.

Ecuacin booleana

TP301 Festo Didactic

A-71
Ejercicio 8

HOJA DE TRABAJO
4. Declaracin de las variables del programa del PLC
Declarar las variables requeridas en el programa del PLC:
Denominacin

Tipo de datos

Direccin

Comentario

Declaracin de variables

5. 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)
Diagrama de contactos (LD)
Lista de instrucciones (IL)
Texto estructurado (ST)

Programa del PLC

Festo Didactic TP301

A-72
Ejercicio 8

TP301 Festo Didactic

A-73
Ejercicio 9

Controles lgicos programables

Tema

Alarma de incendio
Activacin de una salida

Ttulo

Conocer cmo activar y memorizar una salida de un PLC


Ser capaz de entender los bloques de funcin segn IEC 1131-3
Se capaz de utilizar los bloques de funcin estndar flip-flop SR y
flip-flop RS

Objetivo didctico

Las operaciones memorizantes forman parte de las operaciones elementales de un PLC y se aplican en caso de que deba memorizarse el
estado de una seal de corta duracin. Ejemplos tpicos de operaciones memorizantes son la activacin y desactivacin de seales de salida. Para la realizacin de las funciones de memorizacin se dispone
de los bloques de funcin SR y RS.

Conocimientos
tcnicos

Bloque de funcin SR, flip-flop de activacin prioritaria


El bloque de funcin SR (fig. A9.1) contiene un flip-flop de activacin
prioritaria,

B 12

El comportamiento tpico de un bloque de funcin SR es como sigue:

BOOL
BOOL

SR
S1 Q1
R

BOOL
Fig. A9.1:
Bloque de funcin SR

Una seal 1 en la entrada S1 activa el flip-flop, es decir, el valor Q1


pasa a 1.
Una seal 1 en la entrada de desactivacin R sita el valor de Q1 a
0, siempre que haya en este momento una seal 0 en la entrada
S1.
Si se aplica una seal 1 a ambas entradas S1 y R, la salida Q1 se
activa (activacin prioritaria).

Realizacin de una funcin "Set/Activacin" en cada uno de los


lenguajes de programacin
Las soluciones de los siguientes ejemplos se indican en la tabla A9.1.

Festo Didactic TP301

A-74
Ejercicio 9

Ejemplo

La lmpara H2 debe iluminarse por medio de la accin de un pulsador S2.

VAR
S2 AT %IX3 : BOOL;
H2 AT %QX4 : BOOL;
SR_H2
: SR;

(* Pulsador S2 a entrada IX3


(* Piloto H2 a salida QX4
(* SR-flip-flop SR_H2
(* Para memorizacin del
(* estado de H2

*)
*)
*)
*)
*)

END_VAR
B7

FBD
SR_H2
SR
S1 Q1
R

S2

B8

H2

LD
S2

H2
S

B9

SR flip-flop SR_H2 para memorizacin del estado de la variable H2.


Asignacin directa del valor de Q1
a la variable H2.

Rengln con contacto normalmente


abierto y bobina de activacin.

IL
LD

S2

Lectura del valor de S2

H2

Activacin de la variable H2

CAL

SR_H2 (S1 := S2)

LD

SR_H2.Q1

ST

H2

Invocacin del flip-flop SR_H2 con


transferencia del parmetro S2.
Lectura del valor de salida Q1 del
flip-flop SR_H2.
Asignacin del valor ledo a la
variable H2.

o bien

B 10

Tabla A9.1:
La funcin de
memorizacin Activar

ST
SR_H2 (S1 := S2);

Invocacin del flip-flop SR_H2 usando


un parmetro de transferencia.

H2 := SR_H2.Q1;

Asignacin del valor de la salida Q1


de SR_H2 a la variable H2.

TP301 Festo Didactic

A-75
Ejercicio 9

El zumbador H1 debe activarse al presionar el pulsador S1.

Descripcin del
problema

H1
S1

Croquis de situacin

1. Trazado del esquema del circuito y montaje del equipo

Definicin del ejercicio

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

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:
Cantidad

Descripcin

Control lgico programable

Cable de unin con la unidad de conexin

Unidad de conexin

Entrada de seales elctricas

Dispositivo indicador

Festo Didactic TP301

Lista de componentes

A-76
Ejercicio 9

Antes de cablear la instalacin:


Desconectar la alimentacin!

Establecer las conexiones elctricas.

2. Declaracin de las variables del programa del PLC


Todas variables deben ser declaradas como variables locales
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 comentario 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 sistemas 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 formulacin 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:
Conectar la fuente de alimentacin utilizando una tensin estndar de 24 V DC!

Cargar el programa en el PLC


Realizar una funcin de prueba
Corregir cualquier error que pudiera haber en el programa del PLC.
Documentar la solucin.
TP301 Festo Didactic

A-77
Ejercicio 9

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.

+24V
0V

I
24V

PLC

0V
Q

0V

Esquema del
circuito elctrico

2. Declaracin de las variables del programa del PLC


Declarar las variables requeridas en el programa del PLC:
Denominacin

Tipo de datos

Direccin

Comentario

Declaracin de variables

Festo Didactic TP301

A-78
Ejercicio 9

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)
Diagrama de contactos (LD)
Lista de instrucciones (IL)
Texto estructurado (ST)

Programa del PLC

TP301 Festo Didactic

A-79
Ejercicio 9

HOJA DE TRABAJO
Marcar las caractersticas aplicables a una funcin o a un bloque de funcin.

Characterstica

Funcin

Bloque de funcin

Nombre

no

no

Parmetros de entrada

uno

varios

uno

varios

Parmetros de salida

uno

varios

uno

varios

Parte componente de la
declaracin de variables

no

no

Informacin de estado

no

no

Responder a la siguiente pregunta:

1. Qu informacin se memoriza en un bloque SR?

Festo Didactic TP301

Pregunta

A-80
Ejercicio 9

TP301 Festo Didactic

A-81
Ejercicio 10

Controles lgicos programables

Tema

Supervisin de la rotura de una broca


Activacin y desactivacin de una salida

Ttulo

Ser capaz de activar y desactivar una salida memorizante de un PLC

Objetivo didctico

Bloque de funcin RS, flip-flop con desactivacin prioritaria


El bloque de funcin RS contiene un flip-flop con desactivacin prioritaria

Conocimientos
tcnicos

BOOL
BOOL

RS
S
Q1
R1

BOOL
Fig. A10.1:
Bloque de funcin RS

El comportamiento del bloque representado en la fig. A10.1 es como


sigue:
Una seal 1 en la entrada de desactivacin R1 sita el valor de Q1
a 0, independientemente de qu valor haya aplicado en la entrada S.
Una seal 1 en la entrada de activacin S, sita la salida Q1 en 1,
solamente si al mismo tiempo hay una seal o aplicada en la entrada R1.
Si se aplica seal 1 a ambas entradas S y R1, la salida Q1 permanece desactivada.

Festo Didactic TP301

B 12

A-82
Ejercicio 10

Realizacin de la funcin memorizante Reset/Desactivacin" en


los diferentes lenguajes de programacin
Las soluciones para el ejemplo indicado abajo, estn relacionadas en
la tabla A10.1.

Ejemplo

La actuacin sobre el pulsador S2 hace que el piloto H2 se apague.

VAR
S2 AT %IX5 : BOOL;
H2 AT %QX6 : BOOL;
RS_H2
: RS;

(* Interruptor S2 a entrada IX5


(* Piloto H2 a salida QX6
(* flip-flop RS denominado RS_H2
(* Para memorizacin del estado
(* de H2

*)
*)
*)
*)
*)

END_VAR
B7

FBS
RS_H2
RS
S2

B8

S
R1

H2

LD
S2

Tabla A10.1:
La funcin de
memorizacin Desactivar

Q1

RS flip-flop RS_H2 para almacenamiento del estado de la variable H2.


Asignacin directa del valor de Q1
a la variable H2.

H2
R

Rengln con contacto normalmente


abierto y desactivacin de bobina.

TP301 Festo Didactic

A-83
Ejercicio 10

AWL

B9

LD

S2

Lectura del valor de S2

H2

Desactivacin de la variable H2

CAL

RS_H2 (R1 := S2)

LD

RS_H2.Q1

ST

H2

Invocacin del flip-flop RS_H2 con


transferencia de parmetro S2.
Lectura del valor de salida Q1
en el flip-flop RS_H2
Asignacin del valor ledo a la
variable H2.

oder

ST

B 10

RS_H2 (R1 := S2);

Invocacin del Flip-flop RS_H2 con


transferencia de parmetro.

H2 := RS_H2.Q1;

Asignacin del valor de salida Q1


de RS_H2 a la variable H2.

Festo Didactic TP301

Tabla A10.1:
La funcin de
memorizacin desactivar
(continuacin)

A-84
Ejercicio 10

Descripcin del
problema

La broca de una unidad de taladrado est supervisada por medio de


un sensor de rotura de broca (B1).
Si la broca se rompe, el sensor interrumpe el circuito. Un zumbador
(H1) debe sonar en este caso. El zumbador slo puede ser desactivado por medio del pulsador S1.

B1

H1
S1

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

A-85
Ejercicio 10

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:
Cantidad

Descripcin

Control lgico programable

Cable de unin para la unidad de conexin

Unidad de conexin

Entrada de seales elctricas

Dispositivo indicador

Interruptor de proximidad ptico

Antes de cablear la instalacin:


Desconectar la alimentacin!

Establecer las conexiones elctricas.

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 comentario 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 sistemas de PLC reales, las entradas y la representacin de la declaracin
de variables depende del sistema utilizado.

Festo Didactic TP301

Lista de componentes

A-86
Ejercicio 10

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 formulacin 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:
Conectar la fuente de alimentacin utilizando una tensin estndar de 24 V DC!

Cargar el programa en el PLC


Realizar una funcin de prueba
Corregir cualquier error que pudiera haber en el programa del PLC.
Documentar la solucin.

TP301 Festo Didactic

A-87
Ejercicio 10

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.

+24V
0V

I
24V

PLC

0V
Q

0V

Esquema del
circuito elctrico

2. Declaracin de las variables del programa del PLC


Declarar las variables requeridas en el programa del PLC:
Denominacin

Tipo de datos

Direccin

Comentario

Declaracin de variables

Festo Didactic TP301

A-88
Ejercicio 10

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)
Diagrama de contactos (LD)
Lista de instrucciones (IL)
Texto estructurado (ST)

Programa del PLC

Pregunta

Responder a la siguiente pregunta:

1. Cul es el resultado si se utiliza un flip-flop con activacin prioritaria en lugar de uno con desactivacin prioritaria?

TP301 Festo Didactic

A-89
Ejercicio 11

Controles lgicos programables

Tema

Activacin de un cilindro
Flancos de las seales

Ttulo

Ser capaz de describir la funcin de los flancos de una seal

Objetivo didctico

Ser capaz de utilizar el bloque de funcin estndar R_TRIG para el


reconocimiento del flanco ascendente de una seal
Las aplicaciones de PLC a menudo requieren al deteccin y evaluacin, no de la propia seal, sino del momento que la seal cambia de
estado. Estos cambios de estado de denominan flancos.

flanco
ascendente

Conocimientos
tcnicos

flanco
ascendente

1
0
flanco
descendente

flanco
descendente

Fig. A11.1:
Flancos

El flanco ascendente (positivo) marca el instante durante el cual una


seal cambia de 0 a 1.
El flanco descendente (negativo) marca el instante en el que una seal
cambia de 1 a 0.

Bloque de funcin R_TRIG para la deteccin del flanco ascendente


Este bloque de funcin estndar se utiliza para el flanco ascendente.
B 12

BOOL

R_TRIG
CLK
Q

BOOL
Fig. A11.2:
Bloque de funcin R_TRIG

Si se produce un cambio de seal de 0 a 1 en la entrada CLK, la


salida Q asume el valor 1 durante un ciclo de programa.

Festo Didactic TP301

A-90
Ejercicio 11

Bloque de funcin F_TRIG para la deteccin del flanco descendente


Este bloque de funcin estndar se utiliza para la deteccin del flanco
descendente.

BOOL

F_TRIG
CLK
Q

BOOL

Fig. A11.3:
Bloque de funcin F_TRIG

Si se produce un cambio de seal de 1 a 0 en la entrada CLK, la


salida Q asume el valor 1 durante un ciclo de programa.

Realizacin de la evaluacin de flancos en los distintos lenguajes


de programacin
Para el ejemplo que sigue, se ha programado la evaluacin de flancos
en los lenguajes FBD, LD IL y ST.

Ejemplo

El accionamiento del pulsador S1 hace que se encienda el piloto H1.


El siguiente accionamiento del pulsador S1 apaga de nuevo el piloto.

VAR
S1 AT
%IX1
H1 AT
%QX1
R_TRIG_S1
RS_H1

:
:
:
:

BOOL;
BOOL;
R_TRIG
RS;

*)
(* Pulsador S1
*)
(* Piloto H1
(* Flanco ascendente de S1 *)
*)
(* Flip-flop para H1

END_VAR

FBD
B7

S1

R_TRIG_S1 H1
R_TRIG
CLK
Q

RS_H1
&

RS
S
Q1
R1

H1

&
H1

Tabla A11.1:
Evaluacin de un flanco
ascendente

Examinar el flanco ascendente de la


seal S1 con el bloque de funcin
R_TRIG_S1.
Segn el estado del piloto H1, un
flanco positivo hace que se active
o se desactive.

TP301 Festo Didactic

A-91
Ejercicio 11

LD

B8

S1

H1

H1

S1

H1

H1

Deteccin de un flanco positivo


por medio de un contacto especial
de flanco.
Segn el estado del piloto, puede
activarse en el primer rengln o
desactivarse en el segundo rengln.

IL

B9

CAL

R_TRIG_S1 (CLK := S1)

LD

R_TRIG_S1.Q

ANDN H1
S

H1

LD

R_TRIG_S1.Q

AND

H1

H1

Invocacin del bloque de funcin


R_TRIG_S1.
Segn el resultado de la evaluacin
del flanco, el piloto se enciende...

o se apaga.

ST
R_TRIG_S1 (CLK := S1);

B 10

Invocacin del bloque de funcin


R_TRIG_S1.

RS_H1 ( S := R_TRIG_S1.Q & NOT H1,


R1 := R_TRIG_S1.Q & H1);
H1 := RS_H1.Q1;

Invocacin del flip-flop


RS_H1.

El estado del flip-flop RS_H1


se copia a H1.

Dado que las condiciones de encender y apagar el piloto son mutuamente exclusivas, tambin puede utilizarse un flip-flop de activacin
prioritaria en lugar de uno de desactivacin prioritaria.

Festo Didactic TP301

Tabla A11.1:
(Continuacin)

Comentario

A-92
Ejercicio 11

Realizacin de la evaluacin de flancos sin bloques de funcin de


flanco especiales.
Si el PLC no soporta los bloques de funcin especiales para la deteccin de flancos, pueden utilizarse memorias (marcas, flags) para la deteccin de los cambios de seal.
Los programas de PLC se procesan cclica y continuadamente. Para
detectar un cambio de seal es necesario comprobar si el estado de
una seal ha cambiado de un ciclo de procesamiento al siguiente. Para
ello, debe memorizarse el anterior estado de la seal y compararse
con el estado actual.
La Fig. A11.4 ilustra el mtodo utilizado para detectar un flanco ascendente.
VAR
Signal
S_Edge

AT %IX1 : BOOL;
AT %MX1 : BOOL;
AT %MX2 : BOOL := 0;

S_old
RS_S_old

: RS;

(* seal de entrada actual


(* detecta el flanco de la
(* seal de entrada
(* memoriza el estado ant.
(* de la seal de entrada
(* flip-flop para memorizar
(* S_old

*)
*)
*)
*)
*)
*)
*)

END_VAR

Signal
S_old

&

S_Edge

RS_S_old
RS
Fig. A11.4:
Deteccin de un flanco
ascendente

S_Edge
Signal

S
R1

Q1

S_old

La seal a examinar es representada por la variable "signal". El estado


anterior de la variable "signal" se almacena en la memoria (flag)
"S_Old". Si se produce un flanco ascendente, la memoria (o flag)
"S_Edge" asume el valor 1 durante un ciclo de procesamiento.
Debe observarse que la memoria "S_Old" debe mantener el valor 0 al
inicio del programa (en el primer ciclo).

TP301 Festo Didactic

A-93
Ejercicio 11

Las partes del programa mostradas han sido formuladas en el lenguaje


FBD como ejemplo.
La evaluacin de un flanco descendente puede realizarse como se
ilustra abajo.
VAR
Signal
S_Edge

AT %IX1 : BOOL;
AT %MX1 : BOOL;
AT %MX2 : BOOL := 0;

S_old
SR_S_old

: SR;

(* seal de entrada actual *)


(* detecta el flanco de la *)
*)
(* seal de entrada
(* memoriza el estado ant.*)
(* de la seal de entrada *)
(* flip-flop para memorizar *)
*)
(* S_old

END_VAR

Signal
S_old

&

S_Edge

SR_S_old
Signal
S_Edge

Festo Didactic TP301

RS
S1 Q1
R

S_old
Fig. A11.5:
Deteccin de un flanco
descendente

A-94
Ejercicio 11

Descripcin del
problema

Un cilindro es accionado por medio de una electrovlvula con retroceso


por muelle (bobina Y1). Dos sensores de proximidad indican las posiciones "extendida" (B2) y "retrada" (B1). El pulsador (S1) se utiliza
para accionar el cilindro de tal forma que avance desde la posicin
retrada a la extendida y viceversa. El cilindro debe avanzar una sola
vez por accionamiento de pulsador. Para disparar un segundo movimiento del cilindro, el pulsador debe soltarse y accionarse de nuevo.

B1

B2
1.0

S1

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

A-95
Ejercicio 11

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:

Cantidad

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 5/2 vas de una bobina

Entrada de seales elctricas

Sensor de proximidad inductivo

Sensor de proximidad capacitivo


Tubo de plstico

Antes de cablear y conectar tubos:


Desconectar la alimentacin!
Desconectar la alimentacin del aire!

Establecer las conexiones elctricas y neumticas.

Festo Didactic TP301

Lista de componentes

A-96
Ejercicio 11

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 comentario 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 sistemas 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 formulacin 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:
Conectar la fuente de alimentacin utilizando una tensin estndar de 24 V DC!
Aumentar la presin del aire hasta la de funcionamiento
(ver las fichas tcnicas de los componentes neumticos)
Funcionamiento de la instalacin:
mantener despejada la zona de trabajo!

Cargar el programa en el PLC


Realizar una funcin de prueba
Corregir cualquier error que pudiera haber en el programa del PLC.
Documentar la solucin.

TP301 Festo Didactic

A-97
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.

+24V
0V

I
24V
0V

PLC

0V

Esquema del
circuito elctrico

Festo Didactic TP301

A-98
Ejercicio 11

HOJA DE TRABAJO
Configurar el sistema de control
B1

1.0

1.1

4(A)

B2

2(B)

Y1
5(R)

3(S)
1(P)

Esquema del circuito


electroneumtico

2. Declaracin de las variables del programa del PLC


Declarar las variables requeridas en el programa del PLC:
Designacin

Tipo de dato

Direccin

Comentario

Declaracin de variables

TP301 Festo Didactic

A-99
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:
Diagrama de funciones (FBD)
Diagrama de contactos (LD)
Lista de instrucciones (IL)
Texto estructurado (ST)

Programa del PLC

Festo Didactic TP301

A-100
Ejercicio 11

HOJA DE TRABAJO
Preguntas

Responder a las siguientes preguntas:


1. Qu se entiende por un flanco negativo?

2. Qu efecto tiene el perodo de actuacin en la ejecucin del programa?

TP301 Festo Didactic

A-101
Ejercicio 12

Controles lgicos programables

Tema

Encolado de componentes
Pulso

Ttulo

Ser capaz de utilizar el bloque de funcin estndar TP para generar un


pulso de tiempo.

Objetivo didctico

Un gran nmero de tareas de control requieran la programacin de


tiempos. A travs de IEC 1311-3, se dispone de bloques de funcin
estndar para temporizadores con diferentes tipos de respuesta.

Conocimientos
tcnicos

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

BOOL
TIME

TP
IN
Q
PT ET

B 13

BOOL
TIME

Fig. A12.1:
Bloque de funcin R_TRIG

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.
El valor actual de tiempo (el tiempo que ha transcurrido desde el
inicio) est disponible en la salida ET.
El temporizador slo puede arrancar de nuevo una vez que haya
expirado.

Festo Didactic TP301

A-102
Ejercicio 12

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.

Ejemplo

Unas piezas deben sujetarse de forma segura durante un perodo de


12 segundos para un proceso de mecanizado, por medio de un dispositivo especial accionado por el cilindro Y1. El proceso se inicia accionando el pulsador de marcha S1.
VAR
S1 AT %IX1 : BOOL;
Y1 AT %QX1 : BOOL;
TP_Y1
: TP;

(* Pulsador S1
*)
(* Bobina Y1 para el cilindro
*)
(* Temporizador de pulso TP_Y1*)
(* para el proceso de sujecin *)

END_VAR
B7

FBD
TP_Y1
TP
S1
T#12s

B8

Q
ET

Y1

LD

S1

Tabla A12.1:
Utilizacin de un
temporizador de pulso

IN
PT

Bloque temporizador TP_Y1,


conectado con los parmetros
indicados.

T#12s

TP_Y1
TP
IN

PT

ET

Y1
Interconexin del bloque
temporizador TP_Y1 en el rengln.

TP301 Festo Didactic

A-103
Ejercicio 12

IL

B9

CAL TP_Y1 (IN := S1, PT := T#12s)


LD

TP_Y1.Q

ST

Y1

Invocacin del bloque de


funcin TP_Y1.
Lectura de la salida Q de
TP_Y1.
Almacenamiento del
resultado actual en Y1.

ST

B 10

TP_Y1 (IN := S1, PT := T#12s);

Invocacin del bloque de


funcin TP_Y1.

Y1 := TP_Y1.Q;

Asignacin de la salida Q
de TP_Y1 a Y1.

Festo Didactic TP301

Tabla A12.1:
Utilizacin de un
temporizador de pulso
(contiuacin)

A-104
Ejercicio 12

Descripcin del
problema

Dos componentes deben ser encolados con la ayuda de un cilindro


neumtico 1.0. Para ello, las superficies a encolar se presionan entre
s con una determinada fuerza por un perodo de 5 segundos. El tiempo 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 medio del pulsador S1.

1.0

S1

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

A-105
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:

Quantity

Description

Control lgico programable

Cable de unin de la unidad de conexin

Unidad de conexin

Unidad de matenimiento

Distribuidor

Distribuidor de enchufe rpido

Cilindro de simple efecto

Electrovlvula de 5/2 vas de una bobina

Entrada de seales elctricas

Sensor de proximidad inductivo-magntico


Tubo de plstico

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.

Festo Didactic TP301

Lista de componentes

A-106
Ejercicio 12

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 comentario 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 sistemas 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 formulacin 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:
Comprobar el circuito montado con ayuda del esquema
Puesta a punto de la instalacin:
Conectar la fuente de alimentacin utilizando una tensin estndar de 24 V DC!
Aumentar la presin del aire de alimentacin en la unidad de mantenimiento (ver ficha tcnica de los componentes neumticos)
Funcionamiento de la instalacin
Mantener el entorno de trabajo despejado

Cargar el programa en el PLC


Realizar una funcin de prueba
Corregir cualquier error que pudiera haber en el programa del PLC.
Documentar la solucin.

TP301 Festo Didactic

A-107
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.

+24V
0V

I
24V
0V

PLC

0V

Esquema del circuito


elctrico

Festo Didactic TP301

A-108
Ejercicio 12

HOJA DE TRABAJO
Configurar el sistema de control
B1

1.1

1.0

4(A)

2(B)

Y1
5(R)

3(S)
1(P)

Esquema del circuito


electroneumtico

2. Declaracin de las variables del programa del PLC


Declarar las variables requeridas en el programa del PLC:
Denominacin

Tipo de datos

Direccin

Comentario

Declaracin de variables

TP301 Festo Didactic

A-109
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:
Diagrama de funciones (FBD)
Diagrama de contactos (LD)
Lista de instrucciones (IL)
Texto estructurado (ST)

Programa del PLC

Festo Didactic TP301

A-110
Ejercicio 12

HOJA DE TRABAJO
Preguntas

Responder a las siguientes preguntas::


1. Especificar en nombre y la funcin de los parmetros del temporizador 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.

IN

1
0
t0

Q
Fig. A12.2:
Tiempo de respuesta del
temporizador de pulso

t1 t2

t3

1
0
t0

t0 + PT
5s

TP301 Festo Didactic

A-111
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


el bloque de funcin estndar TON

Objetivo didctico

Bloque de funcin TON, Retardo a la conexin


El bloque de funcin estndar TON se utiliza para generar un retardo a
la conexin.

Conocimientos
tcnicos

BOOL
TIME

TON
IN
Q
PT ET

BOOL
TIME
Fig. A13.1:
Bloque de funcin TON

El comportamiento del bloque de funcin TON es como sigue:


El bloque de funcin TON se pone en marcha por medio de una
seal 1 en la entrada IN.
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 0.
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 0.
El valor actual del tiempo (el tiempo transcurrido desde el comienzo)
est disponible en la salida ET.

Festo Didactic TP301

B 13

A-112
Ejercicio 13

Programacin de un seal con retardo a la conexin en los


distintos lenguajes
En el siguiente ejemplo se demuestra la utilizacin de un retardo a la
conexin de una seal:

Ejemplo

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 %IX1 : BOOL;
Y1 AT %QX1 : BOOL;
TON_Y1

: TON;

(* Barrera fotoelctrica
(* Bobina Y1 del cilindro de
(* cerrar la puerta
(* Seal temporizada a la conexin
(* TON_Y1 para cerrar la puerta

*)
*)
*)
*)
*)

END_VAR

B7

FBD
TON_Y1
B1
T#5s

B8

Y1

Conexin de entradas y salidas


del bloque de funcin TON_Y1
con los parmetros actuales.

LD

B1
Tabla A13.1:
Utilizacin de un
temporizador a la conexin

TON
Q
IN
PT ET

T#5s

TON_Y1
TON
Q
IN
PT

ET

Y1
Interconexin del bloque de funcin
TON_Y1 en el rengln.

TP301 Festo Didactic

A-113
Ejercicio 13

IL

B9

CAL TON_Y1 (IN := B1, PT := T#5s)


LD

TON_Y1.Q

ST

Y1

Invocacin del bloque de


funcin TON_Y1.
Lectura de la salida Q de
TON_Y1.
Almacenamiento del resultado
actual en Y1.

ST

B 10

TON_Y1 (IN := B1, PT := T#5s);

Invocacin del bloque de


funcin TON_Y1.

Y1 := TON_Y1.Q;

Asignacin de la salida Q
de TON_Y1 a Y1.

Festo Didactic TP301

Tabla A13.1:
Utilizacin de un
temporizador a la conexin
(continuacin)

A-114
Ejercicio 13

Descripcin del
problema

Una pieza debe marcarse accionando un pulsador (S1). Para asegurar


que el ciclo de marcado no se pone en marcha inadvertidamente, deber mantenerse presionado el pulsador durante ms de tres segundos. La posicin de cilindro 1.0 se establece por medio de los interruptores de proximidad B1 (retrado) y B2 (extendido).

1.0

S1

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

A-115
Ejercicio 13

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:
Cantidad

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

Electrovlvula de 5/2 vas de una bobina

Entrada de seales elctricas

Sensor de proximidad inductivo

Sensor de proximidad capacitivo


Tubo de plstico

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.

Festo Didactic TP301

Lista de componentes

A-116
Ejercicio 13

2. Declaracin de las variables del programa del PLC


Todas variables deben ser declaradas como variables locales.
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 comentario 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 sistemas 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 formulacin 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:
Conectar la fuente de alimentacin utilizando una tensin estndar de 24 V DC!
Aumentar la presin del aire de alimentacin en la unidad de mantenimiento (ver ficha tcnica de los componentes neumticos)
Funcionamiento de la instalacin
Mantener el entorno de trabajo despejado

Cargar el programa en el PLC


Realizar una funcin de prueba
Corregir cualquier error que pudiera haber en el programa del PLC.
Documentar la solucin.

TP301 Festo Didactic

A-117
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.

+24V
0V

I
24V
0V

PLC

0V

Esquema del
circuito elctrico

Festo Didactic TP301

A-118
Ejercicio 13

Configurar el sistema de control.


B1

1.0

1.1

4(A)

B2

2(B)

Y1
5(R)

3(S)
1(P)

Esquema del circuito,


electro-neumtico

2. Declaracin de las variables del programa del PLC


Declarar las variables requeridas en el programa del PLC:
Designacin

Tipo de datos

Direccin

Comentario

Declaracin de variables

TP301 Festo Didactic

A-119
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:
Diagrama de funciones (FBD)
Diagrama de contactos (LD)
Lista de instrucciones (IL)
Texto estructurado (ST)

Programa del PLC

Festo Didactic TP301

A-120
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

A-121
Ejercicio 14

Controles lgicos programables

Tema

Dispositivo de fijacin
Seal con retardo a la desconexin

Ttulo

Ser capaz de realizar una temporizacin a la desconexin utilizando el


bloque de funcin estndar TOF

Objetivo didctico

Bloque de funcin TOF, retardo a la desconexin


El bloque de funcin estndar TOF (fig. A14.1) se utiliza para generar
retardos de seales a la desconexin.

Conocimientos
tcnicos

BOOL
TIME

TOF
IN
Q
PT ET

BOOL
TIME
Fig. A14.1:
Bloque de funcin TOF

El comportamiento de un bloque de funcin TOF es como sigue:


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.
Una vez que la seal IN ha pasado de nuevo al valor 0, la salida Q
sigue teniendo seal 1 durante el tiempo especificado en la entrada
PT, transcurrido el cual vuelve a adoptar el valor 0.

Festo Didactic TP301

B 13

A-122
Ejercicio 14

Programacin de un temporizador con retardo a la desconexin


en los diferentes lenguajes
A continuacin se muestra un ejemplo de utilizacin de un temporizador a la desconexin:

Ejemplo

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.
VAR
Door_closed AT

%MX1: BOOL;

AT

%QX1: BOOL;

Y1
TOF_Door

: TOF;

(* Memoria para enclavamien- *)


(* to de la puerta del horno
*)
(* Bobina Y1 para el cil. de
*)
(* apertura de la puerta.
*)
(* Seal de desconexin re- *)
(* tardada TOF_Door
*)

END_VAR
B7

FBD
TOF__Door
Door_closed
T#10m

B8

Y1

Conexin de entradas y
salidas del bloque de funcin
TOF_Door con los parmetros
actuales.

LD

Door_closed
Tabla A14.1:
Utilizacin de un retardo a
la desconexin

TOF
IN
Q
PT ET

T#10m

TOF_Door
TOF
IN
Q
PT

ET

Y1

Interconexin del bloque de


funcin TOF_Door
en el rengln.

TP301 Festo Didactic

A-123
Ejercicio 14

IL

B9

CAL TOF_Door (IN := Door_closed, PT := T#10m) Invocacin del bloque


de funcin TOF_Door.
Lectura de la salida
LD
TOF_Door.Q
Q de TOF_Door.
Almacenamiento de
ST
Y1
resultado actual de Y1

ST

B 10

TOF_Door (IN := Door_closed, PT := T#10m);

Invocacin del bloque


de funcin TOF_Door.

Y1 := TOF_Door.Q;

Asignacin de la salida
Q de TOF_Door a Y1.

Festo Didactic TP301

Tabla A14.1:
Utilizacin de un retardo a
la desconexin
(continuacin)

A-124
Ejercicio 14

Descripcin del
problema

Una pieza debe sujetarse activando el pulsador de marcha S1. Cuando


la pieza es sujeta por el cilindro 1.0, 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.0.

1.0

2.0

S1

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

A-125
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:

Cantidad

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 5/2 vas de una bobina

Electrovlvula de 5/2 vas de dos bobinas

Entrada de seales elctricas

Sensor de proximidad inductivo

Distribuidor de enchufe rpido


Tubo de plstico

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.

Festo Didactic TP301

Tabla A14.1:
Lista de componentes

A-126
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 comentario 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 sistemas 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 formulacin 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:
Conectar la fuente de alimentacin utilizando una tensin estndar de 24 V DC!
Aumentar la presin del aire de alimentacin en la unidad de mantenimiento (ver ficha tcnica de los componentes neumticos)
Funcionamiento de la instalacin
Mantener el entorno de trabajo despejado

Cargar el programa en el PLC


Realizar una funcin de prueba
Corregir cualquier error que pudiera haber en el programa del PLC.
Documentar la solucin.

TP301 Festo Didactic

A-127
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.

+24V
0V

I
24V
0V

PLC

0V

Esquema del
circuito elctrico

Festo Didactic TP301

A-128
Ejercicio 14

HOJA DE TRABAJO
Configurar el sistema de control
B1

1.1

1.0

B3

B2

4(A)

2(B)

5(R)

3(S)

2.1

4(A)

2(B)

5(R)

3(S)
1(P)

Y2

Y1
1(P)

Esquema del circuito


electroneumtico

B4

2.0

Y3

2. Declaracin de las variables del programa del PLC


Declarar las variables requeridas en el programa del PLC:
Denominacin

Tipo de datos

Direccin

Comentario

Declaracin de variables

TP301 Festo Didactic

A-129
Ejercicio 14

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)
Diagrama de contactos (LD)
Lista de instrucciones (IL)
Texto estructurado (ST)

Programa del PLC

Festo Didactic TP301

A-130
Ejercicio 14

HOJA DE TRABAJO
Pregunta

Responder a la siguiente pregunta:


1. A travs de qu seal empieza a contar el temporizador con retardo a la desconexin?

TP301 Festo Didactic

A-131
Ejercicio 15

Controles lgicos programables

Tema

Dispositivo elevador para paquetes


Secuencia lineal

Ttulo

Ser capaz de disear y representar sistemas secuenciales de control


simples segn IEC 848.
Ser capaz de programar un sistema de control secuencial consistente en una secuencia lineal
Ser capaz de utilizar el lenguaje de programacin Diagrama de Funciones Secuencial

Objetivo didctico

Sistemas de control secuenciales


Los sistemas de control secuencial describen procesos que suceden
en varias etapas claramente separadas.

Conocimientos
tcnicos

La transicin de una etapa a la siguiente depende del estado del proceso. El proceso puede derivarse en procesos parciales en relacin
con el estado del proceso establecido.

B 15

Por lo tanto, el programa de un sistema de control secuencial debe


cumplir con tres funciones bsicas:

Acciones ejecutivas:
Etapa

Acciones interrogativas:
Condiciones de transicin (condiciones de
habilitacin de la etapa)
Establecimiento de
recorrido para la continuacin del programa
Derivaciones

Activacin y desactivacin de salidas


Activacin y desactivacin de memorias.
Activacin y arranque
de temporizadores y
contadores
Interrogacin de entradas y memorias
Interrogacin de
temporizadores
Interrogacin de
contadores
Seleccin del
recorrido
Seguimiento de recoridos en paralelo

Fig. A15.1:
Funciones de un
programa de control

Festo Didactic TP301

A-132
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. Permite una clara representacin grfica del comportamiento y funcionamiento de un sistema de control secuencial.

Establecer posicin inicial


Pieza en almacn, cilindro 1.0 y cilindro 2.0
en posicin retrada

Cilindro 1.0 avanza

2.1: Cilindro 1.0 avanzado y


pieza expulsada
3

Cilindro 2.0 avanza

3.1: Cilindro 2.0 avanzado


4

Cilindro 2..0 retrocede

4.1: Cilindro 2.0 ha retrocedido


5

Cilindro 1.0 retrocede

5.1: Cilindro 1.0 ha retrocedido


Fig. A15.2:
Ejemplo de un sistema
de control secuencial

El ejemplo mostrado describe la siguiente tarea de control:


Se alimenta una pieza desde un almacn por gravedad para su posterior 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

A-133
Ejercicio 15

Programacin de un sistema de control secuencial por medio del


Diagrama de Funciones Secuencial
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.
Etapa => Clasificacin en acciones
Transicin => Descripcin por medio de condiciones de transicin
Derivacin alternativa y unin
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 ejemplo mostrado, la etapa S1 es una etapa vaca. Si se cumplen las condiciones de habilitacin de la siguiente etapa los cilindros 1.0 y 2.0
estn retrados y el almacn contiene piezas se activa la etapa S2 y
se desactiva la S1. 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 medida 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 = 1), se desactiva la etapa
S2 y se activa la S3. El cilindro 1.0 permanece extendido como resultado del cualificador S (=Set/Activar). En la etapa 3, el cilindro 2.0 avanza por el efecto de la activacin de la electrovlvula 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 B5 seala que se ha
alcanzado la posicin final retrada del cilindro 2.0, el cilindro 1.0 tambin retrocede. El sensor B3 seala ahora el final de la secuencia y el
programa regresa al principio. Toda la secuencia de las etapas se repite de nuevo.

Festo Didactic TP301

A-134
Ejercicio 15

VAR
Y1
Y2
B1
B2
B3
B4
B5
B6

AT
AT
AT
AT
AT
AT
AT
AT

%QX1
%QX2
%IX1
%IX2
%IX3
%IX4
%IX5
%IX6

:
:
:
:
:
:
:
:

BOOL;
BOOL;
BOOL;
BOOL;
BOOL;
BOOL;
BOOL;
BOOL;

(* Bobina Y1, Cilindro 1.0


(* Bobina Y2, Cilindro 2.0
(* Pieza en almacn
(* Pieza expulsada
(* Cilindro 1.0 retrado
(* Cilindro 1.0 extendido
(* Cilindro 2.0 retrado
(* Cilindro 2.0 extendido

*)
*)
*)
*)
*)
*)
*)
*)

END_VAR

S1
B1
B3
B5

&

B2
B4

&

S2

Y1

B4

S3

Y2

B6

Y2

B5

Y1

B3

B6
S4
B5
S5
B3
Fig. A15.3:
Ejemplo de un diagrama
de funciones secuencial

TP301 Festo Didactic

A-135
Ejercicio 15

Generacin de una secuencia de etapas por medio de elementos


memorizantes RS
La secuencia de etapas puede generarse utilizando elementos memorizantes si el lenguaje de diagrama de funciones secuencial no es soportado directamente como programa del PLC que se utilice.

Etapa n-1
Condiciones de habilitacin
para la etapa n
Etapa n+1

&

Etapa n

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 tareas de control en la fig. A15.2 Todas las acciones se producen como
aciones booleanas.

Festo Didactic TP301

Fig. A15.4:
Representacin de una
etapa

A-136
Ejercicio 15

VAR
Y1 AT
Y2 AT
B1 AT
B2 AT
B3 AT
B4 AT
B5 AT
B6 AT
RS_S1
RS_S2
RS_S3
RS_S4
RS_S5
RS_Y1
RS_Y2

%QX1
%QX2
%IX1
%IX2
%IX3
%IX4
%IX5
%IX6

:
:
:
:
:
:
:
:
:
:
:
:
:
:
:

BOOL;
BOOL;
BOOL;
BOOL;
BOOL;
BOOL;
BOOL;
BOOL;
RS;
RS;
RS;
RS;
RS;
RS;
RS;

(* Bobina Y1, Cilindro 1.0


(* Bobina Y2, Cilindro 2.0
(* Pieza en almacn
(* Pieza expulsada
(* Cilindro 1.0 retrado
(* Cilindro 1.0 extendido
(* Cilindro 2.0 retrado
(* 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
(* Flip-flop para bobina Y2

*)
*)
*)
*)
*)
*)
*)
*)
*)
*)
*)
*)
*)
*)
*)

END_VAR
(* Programacin de la secuencia de etapas *)
B3
B5

&

RS_S2.Q1

RS_S1.Q1
B3
B5
B1
Fig. A15.5:
Ejemplo de una secuencia
de etapas con elementos
memorizantes RS

RS_S3.Q1

RS_S1
RS
Q1
S
R1

(* Activacin del *)
(* flip-flop para *)
*)
(* Etapa S1

&
RS_S2
RS
Q1
S
R1

(* Activacin del *)
(* flip-flop para *)
(* Etapa S2
*)

TP301 Festo Didactic

A-137
Ejercicio 15

RS_S2.Q1
B4
B2

&

RS
Q1
S
R1

RS_S4.Q1

RS_S3.Q1
B6

&

RS_S5.Q1

RS_S4.Q1
B5

RS_S3

&

RS_S1.Q1

(* Activacin del *)
(* flip-flop para *)
*)
(* Etapa S3

RS_S4
RS
Q1
S
R1

(* Activacin del *)
(* flip-flop para *)
*)
(* Etapa S4

RS_S5
RS
Q1
S
R1

(* Activacin del *)
(* flip-flop para *)
*)
(* Etapa S5

(* Programacin de la seccin de potencia *)


RS_Y1
RS_S2.Q1
RS_S5.Q1

RS
Q1
S
R1

Y1

(* Bobina Y1 para
(* Cilindro 1.0

Y2

(* Bobina Y2 para *)
(* Cilindro 2.0
*)

*)
*)

RS_Y2
RS_S3.Q1
RS_S4.Q1

RS
Q1
S
R1

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
Secuencia de etapas
Seccin de potencia (para la activacin de las salidas)

Festo Didactic TP301

Fig. A15.5:
Ejemplo de una secuencia
de etapas con elementos
memorizantes RS
(continuacin)

A-138
Ejercicio 15

Descripcin del
problema

Un transportador de rodillos es supervisado por un sensor de proximidad B1, para comprobar si hay un paquete presente. Si es este el
caso, el paquete es empujado por un cilindro 1.0 (cilindro de elevacin)
y a continuacin es transferido a otro transportador por medio del cilindro 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 B2 o B5.
En el lado de la alimentacin, los paquetes han sido previamente dispuestos de forma tal que llegan al dispositivo de alimentacin individualmente.

2.0

1.0

Croquis de situacin

TP301 Festo Didactic

A-139
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 funciones secuencial IEC 848
3. Declaracin de las variables del programa PLC
4. Formulacin del programa de PLC por medio del diagrama de funciones secuencial IEC 848
Programacin de las condiciones de transicin directamente en
uno de los lenguajes FBD, LD o ST
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

Realizacin

Completar el esquema elctrico del circuito en la HOJA DE TRABAJO.


Montar el equipo necesario en la placa perfilada:
Cantidad

Descripcin

Control lgico programable

Cable de unin para la unidad de conexin

Unidad de conexin

Unidad de mantenimiento

Distribuidor

Cilindro de doble efecto

Electrovlvula de 5/2 vas de una bobina

Sensor de proximidad ptico

Sensor de proximidad inductivo


Tubo de plstico

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.

Festo Didactic TP301

Lista de componentes

A-140
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 comentario 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 sistemas 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 secuencial


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 directamente soportado por el PLC que se utilice.

TP301 Festo Didactic

A-141
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 estndar de 24 V DC!
Aumentar la presin del aire de alimentacin en la unidad de mantenimiento (ver ficha tcnica de los componentes neumticos)
Puesta a punto de la instalacin:
Mantener el entorno de trabajo despejado

Cargar el programa en el PLC


Realizar una funcin de prueba
Corregir cualquier error que pudiera haber en el programa del PLC.
Documentar la solucin.

Festo Didactic TP301

A-142
Ejercicio 15

TP301 Festo Didactic

A-143
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.

+24V
0V

I
24V
0V

PLC

0V

Esquema del
circuito elctrico

Festo Didactic TP301

A-144
Ejercicio 15

HOJA DE TRABAJO
Configurar el sistema de control
B2

1.1

1.0

4(A)

B4

B3

Y1

4(A)

2(B)

Y2
5(R)

Esquema del circuito


electroneumtico

2.1

2(B)

B5

2.0

3(S)
1(P)

5(R)

3(S)
1(P)

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.

TP301 Festo Didactic

A-145
Ejercicio 15

HOJA DE TRABAJO
3. Declaracin de las variables del programa del PLC
Declarar las variables requeridas en el programa del PLC:
Designacin

Tipo de datos

Direccin

Comentario

Declaracin de variables

4. Formulacin del programa de PLC en diagrama de funciones secuencial

Festo Didactic TP301

A-146
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 secuencial si la accin de la etapa S3: "Avanzar cilindro 2.0" se programa como accin no-memorizante?

TP301 Festo Didactic

A-147
Ejercicio 16

Controles lgicos programables

Tema

Dispositivo elevador y clasificador para paquetes


Secuencia con desvo alternativo

Ttulo

Ser capaz de programar un sistema de control secuencial con una derivacin alternativa

Objetivo didctico

Sistema de control, secuencial con derivacin alternativa


Hay sistemas de control secuencial, en los que deben preverse diferentes secuencias. Una secuencia es seleccionada dependiendo de las
seales originadas por el proceso.

Conocimientos
tcnicos

Verificar posicion inicial

Pieza pequea
2

Fijar pieza

Pieza grande
1

2.1: Pieza fijada


3

Estampar pieza

Liberar pieza

Fijar pieza

4.1: Pieza fijada


1

3.1: Pieza estampada

B 15

Estampar pieza

5.1: Pieza estampada

6.1: Pieza liberada


7

Expulsar pieza

7.1: Pieza expulsada

Festo Didactic TP301

1
Fig. A16.1:
Ejemplo de sistema de
control secuencial con
derivacin alternativa

A-148
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 desvo alternativo es representado por tantas transiciones como secuencias 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.
Si 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 secuencial 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 transicin 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 pequea, se activa la etapa S2 y se desactiva la etapa S1. La pieza es a
continuacin fijada, estampada, liberada y finalmente expulsada.
Si se ha detectado una pieza grande (B1=1 y B2=1), las etapas S1,
S4, S5, S6 y S7 se ejecutan consecutivamente.
A continuacin, el procesamiento de las etapas empieza de nuevo con
la etapa S1.

TP301 Festo Didactic

A-149
Ejercicio 16

VAR
B1
B2
B3
B4
B5
B6
B7
B8
B9
B10
Y1
Y2
Y3
Y4

AT
AT
AT
AT
AT
AT
AT
AT
AT
AT
AT
AT
AT
AT

%IX1.0
%IX1.1
%IX2.0
%IX2.1
%IX2.2
%IX2.3
%IX2.4
%IX2.5
%IX2.6
%IX2.7
%QX1.0
%QX1.1
%QX1.2
%QX1.3

:
:
:
:
:
:
:
:
:
:
:
:
:
:

BOOL;
BOOL;
BOOL;
BOOL;
BOOL;
BOOL;
BOOL;
BOOL;
BOOL;
BOOL;
BOOL;
BOOL;
BOOL;
BOOL;

*)
(* pieza grande o pequea
*)
(* slo para pieza grande
*)
(* cilindro 1.0 retrado
*)
(* cilindro 1.0 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

END_VAR

S1

B1 & NOT B2 & B3 &


B5 & B7 & B9
S2

Y1

B4

B1 & B2 & B3 &


B5 & B7 & B9
S4

Y2

B6

B6

S6

Y1

B4

Y3

B8

B4

B4
S3

S5
B8

Y1

B3

Y4

B10

B3
S7
B10

Festo Didactic TP301

Fig. A16.2:
Ejemplo de diagrama de
funciones secuencial con
derivacin alternativa

A-150
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 mientras 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

A-151
Ejercicio 16

Unos paquetes son transportados hacia un dispositivo de medida en


un transportador de rodillos para establecer su tamao. Hay dos tamaos de paquetes diferentes: Paquetes largos y cortos. El dispositivo de
medicin lineal suministra seal 0 para los paquetes cortos y seal 1
para paquetes largos.

Descripcin del
problema

A continuacin, el paquete llega a una plataforma elevadora. La secuencia empieza con el pulsador de MARCHA S1. 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 transportador por medio del cilindro 3.0. El cilindro de elevacin 1.0 debe
retroceder de nuevo una vez que los cilindros 2.0 y 3.0 hayan alcanzado su posicin final retrada.
Las posiciones del cilindro se detectan por medio de interruptores de proximidad B1 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 electrovlvulas de una sola bobina (bobinas
Y3 e Y4).

2.0

3.0

S1
1.0

Croquis de situacin

Festo Didactic TP301

A-152
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 funciones secuencial IEC 848
3. Declaracin de las variables del programa PLC
4. Formulacin del programa de PLC por medio del diagrama de funciones secuencial
Programacin de las condiciones de transicin directamente en
uno de los lenguajes FBD, LD o ST
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


Completar el esquema elctrico del circuito en la HOJA DE TRABAJO.
Montar el equipo necesario en la placa perfilada:
Cantidad

Lista de componentes

Designacin

Control lgico 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 vas de una bobina

Electrovlvula de 5/2 vas de dos bobinas

Entrada de seales elctricas

Sensor de proximidad capacitivo

Sensor de proximidad ptico

Sensor de proximidad inductivo


Tubo de plstico

TP301 Festo Didactic

A-153
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


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 comentario 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 sistemas 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 secuencial


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 directamente soportado por el PLC que se utilice.

Festo Didactic TP301

A-154
Ejercicio 16

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 estndar de 24 V DC!
Aumentar la presin del aire de alimentacin en la unidad de mantenimiento (ver ficha tcnica de los componentes neumticos)
Funcionamiento de la instalacin
Mantener el entorno de trabajo despejado

Cargar el programa en el PLC


Realizar una funcin de prueba
Corregir cualquier error que pudiera haber en el programa del PLC.
Documentar la solucin.

TP301 Festo Didactic

A-155
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.

+24V
0V

I
24V
0V

PLC

0V

Esquema del
circuito elctrico

Festo Didactic TP301

A-156
Ejercicio 16

HOJA DE TRABAJO
Configurar el sistema de control
B1

1.1

1.0

4(A)

B3

B2

2.1

2(B)

Y1

Y2
5(R)

3(S)
1(P)

2.0

4(A)

B4

3.0

3.1

2(B)

Y3

4(A)

B5

B6

2(B)

Y4
5(R)

3(S)
1(P)

5(R)

3(S)
1(P)

Esquema del circuito


electroneumtico

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.

Preguntas

Responder a las siguientes preguntas:


1. Cul es el criterio de clasificacin segn el cual se evalan los paquetes?

2. Cmo se asegura que se seleccione una sola secuencia de etapas


durante la ejecucin del programa?

TP301 Festo Didactic

A-157
Ejercicio 16

HOJA DE TRABAJO
3. Declaracin de las variables del programa del PLC
Declarar las variables requeridas en el programa del PLC:
Designacin

Tipo de datos

Direccin

Comentario

Declaracin de variables

4. Formulacin del programa de PLC en diagrama de funciones secuencial

Festo Didactic TP301

A-158
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

A-159
Ejercicio 17

Controles lgicos programables

Tema

Dispositivo de estampacin con contador


Ciclos de conteo

Ttulo

Poder realizar ciclos de conteo por medio de la utilizacin de los mdulos de funcin estndar CTU o CTD

Objetivo didctico

Los ciclos de conteo forma parte de las operaciones bsicas de un


PLC. IED 1131-3 define tres bloques de funcin estndar: CTU (contador incremental), CTD (contador decremental) y CTUD (contador incremental/decremental) para la realizacin de estas operaciones.

Conocimientos
tcnicos

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.

B 14

BOOL
BOOL
INT

CTU
CU Q
R
PV CV

BOOL
INT
Fig. A17.1:
Bloque de funcin CTU

El comportamiento caracterstico de un contador incremental es como


sigue:
Una seal 1 en la entrada de reset R, pone el estado CV del contador a 0.
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 0 mientras el estado actual CV del contador sea
inferior al valor preseleccionado PV.

Festo Didactic TP301

A-160
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
BOOL
INT

CTD
CD Q
LD
PV CV

BOOL
INT

Fig. A17.2:
Bloque de funcin CTD

El comportamiento de un contador decremental es como sigue:


Una seal 1 en la entrada LD establece el estado del contador CV
al valor preseleccionado PV.
Cada flanco ascendente en la entrada CD decrementa el estado del
contador CV en 1.
La salida Q muestra seal 0 mientras el estado actual del contador
CV sea mayor de 0. Solamente cuando el valor actual es menor o
igual a 0, aparece una seal 1 en la salida Q.

TP301 Festo Didactic

A-161
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.
Una vez llena una caja, aparece otra. Cada ciclo de envasado se dispara con una memoria (flag) M_init. Las piezas son detectadas por
medio de un sensor B1. El estado del contador es copiado a una memoria M_new.
VAR
AT %IX1.0 : BOOL;
B1
M_init AT %MX1.0 : BOOL;
M_new AT %MX1.1 : BOOL;
CTU_1

: CTU;

(* detecta pieza para envasar


(* detecta si el contador tiene
(* que ser inicializado
(* detecta si se requiere una
(* nueva caja
(* Contador incremental
(* CTU_1 para el recuento

Ejemplo

*)
*)
*)
*)
*)
*)
*)

END_VAR
FBD
CTU_1
B1
M_init
12

CTU
CU Q
R
PV CV

M_new

Bloque de funcin CTU_1,


conectado con los
parmetros actuales.

LD
CTU_1
B1

CTU
CU Q

M_init
R
12

PV CV

Festo Didactic TP301

M_new

Interconexin del bloque de


funcin CTU_1 en el rengln.
Tabla A17.1:
Aplicacin de un
contador incremental

A-162
Ejercicio 17

IL
CAL CTU_1 (CU := B1, 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);

M_new := CTU_1.Q;
Tabla A17.1:
(Continuacin)

Invocacin del bloque


de funcin CTU_1

Asignacin de la salida Q
de CTU_1 a M_new

TP301 Festo Didactic

A-163
Ejercicio 17

En una mquina se estampan 10 piezas cada vez. El ciclo del programa se inicia por medio de un pulsador S1. El interruptor de proximidad
B7 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.

Descripcin del
problema

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 interruptores de proximidad B1 a B6.

2.0

3.0
1.0

S1

Croquis de situacin

Festo Didactic TP301

A-164
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 funciones secuencial IEC 848
3. Declaracin de las variables del programa PLC
4. Formulacin del programa de PLC por medio del diagrama de funciones secuencial
Programacin de las condiciones de transicin directamente en
uno de los lenguajes FBD, LD o ST
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


Completar el esquema elctrico del circuito en la HOJA DE TRABAJO.
Montar el equipo necesario en la placa perfilada:
Cantidad

Lista de componentes

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 5/2 vas de una bobina

Electrovlvula de 5/2 vas 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

TP301 Festo Didactic

A-165
Ejercicio 17

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


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 comentario 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 sistemas 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 secuencial


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 introducir un nombre para la accin.
Crear la estructura de etapas copiando los pasos en los elementos
memorizantes si el diagrama de funciones secuencial no est directamente soportado por el PLC que se utilice.

Festo Didactic TP301

A-166
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 estndar de 24 V DC!
Aumentar la presin del aire de alimentacin en la unidad de mantenimiento (ver ficha tcnica de los componentes neumticos)
Funcionamiento de la instalacin
Mantener el entorno de trabajo despejado

Cargar el programa en el PLC


Realizar una funcin de prueba
Corregir cualquier error que pudiera haber en el programa del PLC.
Documentar la solucin.

TP301 Festo Didactic

A-167
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.

+24V
0V

I
24V
0V

PLC

0V

Esquema del
circuito elctrico

Festo Didactic TP301

A-168
Ejercicio 17

HOJA DE TRABAJO
Configurar el sistema de control.
B1

1.1

1.0

B3

B2

4(A)

2(B)

5(R)

3(S)
1(P)

Y1

2.1
Y2

2.0

B4

3.0

4(A)

2(B)

5(R)

3(S)
1(P)

Y3

3.1

4(A)

B5

B6

2(B)

Y4
5(R)

3(S)
1(P)

Esquema del circuito


electroneumtico

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.

TP301 Festo Didactic

A-169
Ejercicio 17

HOJA DE TRABAJO
3. Declaracin de las variables del programa del PLC
Declarar las variables requeridas en el programa del PLC:
Designacin

Tipo de datos

Direccin

Comentario

Declaracin de variables

Festo Didactic TP301

A-170
Ejercicio 17

HOJA DE TRABAJO
4. Formulacin del programa de PLC en diagrama de funciones secuencial

TP301 Festo Didactic

A-171
Ejercicio 17

HOJA DE TRABAJO
Responder a la siguiente pregunta:
1. Cundo cambia el estado del contador?

Festo Didactic TP301

Preguntas

A-172
Ejercicio 17

TP301 Festo Didactic

B-I

Seccin B Fundamentos

Festo Didactic TP301

B-II

Captulo 1 Automatizando con un PLC . . . . . . . . . . . . . . . . . . . . B-1


1.1

Introduccin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . B-2

1.2

Campos de aplicacin de un PLC . . . . . . . . . . . . . . . . . . . . . B-2

1.3

Diseo bsico de un PLC . . . . . . . . . . . . . . . . . . . . . . . . . . . B-5

1.4

El nuevo estndar para PLC IEC 1131 . . . . . . . . . . . . . . . . . B-8

Captulo 2 Fundamentos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . B-11


2.1

El sistema de numeracin decimal . . . . . . . . . . . . . . . . . . . B-12

2.2

El sistema de numeracin binario . . . . . . . . . . . . . . . . . . . . B-12

2.3

El cdigo BCD . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . B-14

2.4

El sistema de numeracin hexadecimal . . . . . . . . . . . . . . . B-14

2.5

Nmeros binarios con signo . . . . . . . . . . . . . . . . . . . . . . . . B-15

2.6

Nmeros reales . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . B-15

2.7

Generacin de seales binarias y digitales . . . . . . . . . . . . . B-16

Captulo 3 Operaciones Booleanas . . . . . . . . . . . . . . . . . . . . . . B-19


3.1

Funciones lgicas bsicas . . . . . . . . . . . . . . . . . . . . . . . . . . B-20

3.2

Otras operaciones lgicas . . . . . . . . . . . . . . . . . . . . . . . . . . B-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 . . . B-33


4.1

Estructura de un PLC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . B-34

4.2

Unidad de procesamiento principal de un PLC . . . . . . . . . . B-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. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . B-42

4.6

Mdulo de Salidas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . B-44

4.7

Aparato programador / Ordenador personal . . . . . . . . . . . . B-46

TP301 Festo Didactic

B-III

Captulo 5 Programacin de un PLC . . . . . . . . . . . . . . . . . . . .

B-49

5.1

Bsqueda de una solucin sistemtica . . . . . . . . . . . . . . . . B-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 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . B-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 . . . . . . . . . . . . . .

B-91

7.1

Elementos del diagrama de bloques de funcin . . . . . . . . . B-92

7.2

Evaluacin de redes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . B-93

7.3

Estructuras de bucle. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . B-94

Captulo 8 Diagrama de contactos . . . . . . . . . . . . . . . . . . . . . .

B-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. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . B-102

9.2

Operadores. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . B-103

9.3

Funciones y bloques de funcin. . . . . . . . . . . . . . . . . . . . . B-104

Captulo 10 Texto estructurado. . . . . . . . . . . . . . . . . . . . . . . .

B-107

10.1

Expresiones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . B-108

10.2

Instrucciones. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . B-110

10.3

Instrucciones de seleccin . . . . . . . . . . . . . . . . . . . . . . . . . B-112

10.4

Instrucciones de iteracin. . . . . . . . . . . . . . . . . . . . . . . . . . B-115

Festo Didactic TP301

B-IV

Captulo 11 Diagrama de funciones secuencial . . . . . . . . . . B-119


11.1

Introduccin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . B-120

11.2

Elementos del diagrama de funciones secuencial . . . . . . B-120

11.3

Transiciones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . B-130

11.4

Pasos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . B-133

11.5

Ejemplo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . B-143

Captulo 12 Sistemas de control lgico. . . . . . . . . . . . . . . . . . B-147


12.1

Qu es un sistema de control lgico . . . . . . . . . . . . . . . . . B-148

12.2

Sistema de control lgico sin propiedades memorizantes

12.3

Sistema de control lgico con propiedades memorizantes B-154

12.4

Evaluacin de flancos . . . . . . . . . . . . . . . . . . . . . . . . . . . . B-157

B-148

Captulo 13 Temporizadores . . . . . . . . . . . . . . . . . . . . . . . . . . B-161


13.1

Introduccin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . B-162

13.2

Temporizador de pulsos. . . . . . . . . . . . . . . . . . . . . . . . . . . B-163

13.3

Seal con retado a la conexin . . . . . . . . . . . . . . . . . . . . . B-165

13.4

Seal con retado a la desconexin . . . . . . . . . . . . . . . . . . B-167

Captulo 14 Contadores . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . B-171


14.1

Funciones de contador . . . . . . . . . . . . . . . . . . . . . . . . . . . B-172

14.2

Contador incremental . . . . . . . . . . . . . . . . . . . . . . . . . . . . . B-172

14.3

Contador decremental . . . . . . . . . . . . . . . . . . . . . . . . . . . . B-176

14.4

Contador incremental/decremental . . . . . . . . . . . . . . . . . . B-178

Captulo 15 Sistemas de control secuencial. . . . . . . . . . . . . . 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

B-V

Captulo 16 Puesta a punto y seguridad en el manejo


de un PLC. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

B-187

16.1

Puesta a punto . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . B-188

16.2

Seguridad en el manejo de un PLC. . . . . . . . . . . . . . . . . . B-190

Captulo 17 Comunicaciones. . . . . . . . . . . . . . . . . . . . . . . . . .

B-195

17.1

La necesidad de comunicacin . . . . . . . . . . . . . . . . . . . . . B-196

17.2

Transmisin de datos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . B-196

17.3

Interfaces . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . B-197

17.4

Comunicacin a nivel de campo . . . . . . . . . . . . . . . . . . . . B-198

Festo Didactic TP301

B-VI

Prefacio
Los Controles Lgicos Programables1) representan un factor clave en
la automatizacin industrial. Su utilizacin permite una adaptacin flexible 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 Logic Control es Control Lgico Programable. A pesar de ello, su acrnimo castellanizado CLP no ha tenido una plena aceptacin en los
medios industriales, que siguen utilizando con ms frecuencia el acrnimo Ingls PLC.
Otras denominaciones de estos equipos son:
Autmata Programable Industrial o simplemente Autmata Industrial
(AI), procedente del francs y Mando Programable en Memoria, procedente del alemn Speicherprogrammierbare Steuerungen (SPS).

En este libro de texto hemos utilizado la denominacin Control Lgico


Programable, con su acrnimo Ingls PLC.

TP301 Festo Didactic

B-1
Captulo 1

Captulo 1
El PLC en la
tecnologa de automatizacin

Festo Didactic TP301

B-2
Captulo 1

1.1

Introduccin

El primer Control Lgico 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 requerimientos:
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 correspondientes sistemas de control por rels
Sencillo y con bajo coste de mantenimiento
Los sucesivos desarrollos llevaron a un sistema que permita la conexin
sencilla de seales binarias. Los requerimientos de cmo estaban conectadas 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 enormes progresos hechos en el desarrollo de la micro electrnica han
favorecido la proliferacin de los controles lgicos programables. Por
ejemplo, a pesar de que en sus comienzos, la optimizacin del programa y con ello la necesidad de reducir la ocupacin de memoria representaba 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 analgico o incluso la utilizacin de un PLC como un regulador, eran considerados una utopa. Actualmente, muchos de estos elementos son
parte integral de muchos PLCs.
En las pginas siguientes de este captulo de introduccin, describiremos el diseo bsico de un PLC junto con las tareas y aplicaciones
ms importantes actualmente.

1.2

reas de
aplicacin
de un PLC

Todas las mquinas o sistemas automticos tienen un control. Dependiendo del tipo de tecnologa utilizada, los controles pueden dividirse en neumticos, 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 componentes electromecnicos (rels, etc) o componentes electrnicos (circuitos
integrados)) y controles lgicos programables. Los primeros se utilizan principalmente 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 hallarse en los electrodomsticos, vdeo cmaras, vehculos, etc.

TP301 Festo Didactic

B-3
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 sencillos, 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 diferentes aplicaciones y, dado que el programa se
halla escrito en su memoria electrnica, el usuario puede modificar, ampliar y optimizar con cierta sencillez sus procesos de control.

Fig. B1.1:
Ejemplo de aplicacin
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 interconexin es "cierta", activar la correspondiente salida. El lgebra de Boole
forma la base matemtica para esta operacin, ya que solamente reconoce dos estados definidos de una variable: "0" (falso) y "1" (cierto) (vase
tambin el captulo 3). Consecuentemente, una salida slo asume estos
dos estados. Por ejemplo, una electrovlvula conectada a la salida puede
estar activada o desactivada, es decir, controlada.

Festo Didactic TP301

B-4
Captulo 1

Esta funcin ha acuado el nombre de PLC: Programmable Logic


Control o Control Lgico Programable. En l, el comportamiento de
las entradas/salidas 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 cableado
est almacenado en una memoria electrnica.
Sin embargo las tareas del PLC se ampliaron rpidamente: las funciones de temporizacin y recuento, operaciones de clculo matemtico,
conversin de seales analgicas, etc. representan funciones que pueden ejecutarse en casi todos los PLCs actuales.
Las demandas que se requieren de los PLCs siguen creciendo al mismo ritmo que su amplia utilizacin y desarrollo en la tecnologa de
automatizacin. Por ejemplo: la visualizacin, es decir, la representacin de los estados de las mquinas o la supervisin de la ejecucin 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 armonizar 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, as como la de un PLC con el
ordenador master se realiza por medio de interfaces de comunicacin
especiales. Para ello, la mayora de los ms recientes PLCs son compatibles con sistemas de bus abiertos estandarizados, tales como Profibus segn DIN 19 245. Gracias al enorme aumento de la potencia y
capacidad de los PLCs avanzados, estos pueden incluso asumir directamente la funcin de un ordenador master.
Hacia finales de los setenta, las entradas y salidas binarias fueron finalmente ampliadas con la adicin de entradas y salidas analgicas,
ya que hay muchas aplicaciones tcnicas que emiten y requieren seales analgicas (medicin de fuerzas, velocidades, sistemas de posicionado 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 sugiere el nombre de control lgico programable.

TP301 Festo Didactic

B-5
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 disponibles actualmente desde PLCs en miniatura con unas decenas de entradas/salidas hasta grandes PLCs con miles de entradas/salidas.
Muchos PLCs pueden ampliarse por medio de mdulos adicionales de
entradas/salidas, mdulos analgicos y de comunicacin. Hay PLCs
disponibles para sistemas de seguridad, barcos o tareas de minera.
Otros PLCs son capaces de procesar varios programas al mismo tiempo (Multitarea). Finalmente, los PLCs pueden conectarse con otros
componentes de automatizacin, creando as reas considerablemente
amplias de aplicacin.

Fig. B1.2:
Ejemplo de un PLC:
AEG Modicon A120

El trmino Control Lgico Programable se define en IEC 1131, Parte 1,


como sigue:
"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 especficas tales como enlaces lgicos, 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 perifricos asociados
estn diseados de forma que puedan integrarse fcilmente en un sistema de control industrial y ser fcilmente utilizados en todas las aplicaciones para las que estn previstos."

Festo Didactic TP301

1.3

Definicin bsica
de un PLC

B-6
Captulo 1

Por lo tanto, un control lgico programable es sencillamente un ordenador, adaptado especficamente para ciertas tareas de control.
La Fig. B1.3 ilustra los componentes del sistema de un PLC

Programa PLC

Mdulo de entrada

Fig. B1.3:
Componentes de un
sistema PLC

Sensores

Unidad Central

Mdulo de salida

Actuadores

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 adecuadas 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 memoria.
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 diagramas de funciones con smbolos grficos para puertas lgicas (logigramas) 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 mdulos de entrada y salida, hay que distinguir entre PLCs compactos
(mdulo de entrada, unidad central y mdulo de salida en un slo cuerpo) o PLCs modulares.

TP301 Festo Didactic

B-7
Captulo 1

La Fig. B1.4 muestra el control FX0 de Mitsubishi, representando un


ejemplo de un PLC compacto.

Fig. B1.4:
PLC compacto
(Mitsubishi FX0),
PLC Modular
(Siemens S7-300),
PLC con tarjetas
(Festo FPC 405)

Los PLCs modulares pueden configurarse individualmente. Los mdulos requeridos por la aplicacin prctica aparte de los mdulos de
entradas/salidas 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 B1.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 caractersticas importantes tales como el ahorro
de espacio, flexibilidad y posibilidad de ampliacin.
La tarjeta con formato PLC es un tipo especial de PLC modular desarrollado durante los ltimos aos. Con este tipo, varios mdulos realizados sobre tarjetas de circuito impreso se montan en una caja estandarizada. El FPC 405 de Festo es representativo de este tipo de diseo (Fig. B1.4).

Festo Didactic TP301

B-8
Captulo 1

El diseo del hardware de un control lgico programable est hecho de


forma que pueda soportar los entornos tpicos industriales en cuanto a
los niveles de las seales, calor, humedad, fluctuaciones en la alimentacin 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 esIEC-1311
tado de la tecnologa en aquel momento. Tenan 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 existan 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 seales 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
programacin y diagnosis, equipos de verificacin, interfaces hombremquina, etc.). En este contexto, un dispositivo configurado por el
usuario y compuesto por los elementos citados anteriormente, se conoce como un sistema PLC.
El nuevo estndar IEC 1131 consta de cinco partes:
Parte
Parte
Parte
Parte
Parte

1:
2:
3:
4:
5:

Informacin general
Requerimientos y verificaciones del equipo
Lenguajes de programacin
Directrices para el usuario
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 programacin 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

B-9
Captulo 1

Los siguientes captulos tratarn con detalle sobre este estndar. Por
el momento, ser suficiente la siguiente informacin:
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 estndar, 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, Klcker-Moeller, Philips, para mencionar 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 mercado 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.

Festo Didactic TP301

B-10
Captulo 1

TP301 Festo Didactic

B-11
Captulo 2

Capitulo 2
Fundamentos

Festo Didactic TP301

B-12
Captulo 2

2.1

El sistema de
numeracin
decimal

La caracterstica del sistema de numeracin decimal, comunmente utilizado, es la disposicin lineal de los dgitos y su emplazamiento significativo. El nmero 4344, por ejemplo, puede representarse como sigue:
4344 = 4 x 1000 + 3 x 100 + 4 x 10 + 4 x 1
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 0 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 siguiente arrastre se realiza cuando se alcanza el valor 99.
Utilizaremos el nmero 71.718.711 como ejemplo:
107

106

105

104

103

102

101

100

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 dgito del extremo derecho se conoce como el dgito menos significativo 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
numeracin
binario

Fue Leibnitz quien aplic por primera vez las estructuras del sistema
de numeracin decimal al clculo con dos dgitos. All por el ao 1679,
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 corriente" o
"no circula corriente". Estos dos valores se representan en forma de
dgitos "1" y "0".

TP301 Festo Didactic

B-13
Captulo 2

Si en un nmero estuviramos limitados a exactamente 2 dgitos por


posicin, el sistema de numeracin quedara configurado como sigue:
27=128

26=64

25=32

24=16

23=8

22=4

21=2

20=1

Ejemplo

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 10x,
sino con al base 2x. As, el nmero menos significativo en el extremo
derecho es 20 = 1, y para la siguiente posicin 21 = 2, etc. Dado el uso
exclusivo de dos dgitos, este sistema de numeracin se conoce como
sistema binario o sistema dual.
Con ocho posiciones, pueden representarse un mximo de:
28 1 = 256 1 = 255
valores que alcanzaran hasta el numero 1111 11112
Cada una de las posiciones de un sistema de numeracin binario puede adoptar uno de los dos dgitos 0 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, 1011 00012, corresponde al valor decimal
17710.

1 x 27

0 x 26

= 128
= 177

Festo Didactic TP301

1 x 25

1 x 24

+ 32

+ 16

0 x 23

0 x 22

0 x 21

1 x 20
+1

Ejemplo

B-14
Captulo 2

2.3

El cdigo BCD

Tabla B2.1:
Representacin de
nmeros decimales en
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 dgito del sistema de numeracin decimal representa a su correspondiente nmero binario.
010

0000BCD

110

0001BCD

210

0010BCD

310

0011BCD

410

0100BCD

510

0101BCD

610

0110BCD

710

0111BCD

810

1000BCD

910

1001BCD

Por lo tanto, se necesitan 4 dgitos en la notacin binaria para representar el sistema decimal. A pesar de que en una notacin binaria de 4
dgitos pueden representarse los valores del 0 al 15, los valores correspondientes a 10, 11, 12, 13, 14 y 15 no se usan en BCD
As, el nmero decimal 7133 se representa como sigue en cdigo BCD:
0111 0001 0011 0011BCD
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
numeracin
hexadecimal

La utilizacin de nmeros binarios es difcil y la utilizacin del cdigo


BCD ocupa bastante espacio de memoria. Por esta razn se desarrollaron los sistemas octal y hexadecimal. En el caso del sistema octal se
utilizan grupos de tres dgitos. Esto permite contar de 0 hasta 7, es
decir, contar con "ochos".

TP301 Festo Didactic

B-15
Captulo 2

Alternativamente, en el sistema de numeracin hexadecimal se combinan 4 bits. Estos 4 bits permiten la representacin de los nmeros 0 al
15, es decir, contar en "dieciseises". Para representar estos nmeros
se utilizan los dgitos 0 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 dgito se evala con las potencias de 16.

163=4096

162=256

161=16

160=1

Ejemplo

Por lo tanto, el nmero 87BC16 dado como ejemplo se lee como sigue:
8 x 163 + 7 x 162 + 11 x 161 + 12 x 160 = 34 74810

Hasta ahora, hemos tratado solamente con nmeros enteros y positivos, sin tener en cuenta los nmeros negativos. Para poder trabajar
con estos nmeros, se decidi que el bit ms significativo en el extremo izquierdo de un nmero binario se utilizara para representar el
signo: as "0" corresponde al "+" y "1" al "".

2.5

Nmeros binarios
con signo

As, 1111 11112 = -12710 y 0111 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 siguiente margen de valores:
Entero

Margen de valores

sin signo

0 a 65535

con signo

-32768 a +32767

Aunque ahora ya es posible representar con 0 y 1 nmeros enteros


positivos con signo, an hay la necesidad de poder representar los
decimales o nmeros reales.
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 cientfica de
nmeros.

Festo Didactic TP301

Tabla B2.2:
Margen de valores para
los nmeros binarios

2.6

Nmeros reales

B-16
Captulo 2

El nmero 27,334 se convierte as en 273 341 x 10-4. Por lo tanto se


necesitan dos nmeros enteros con signo para representar un nmero
real en un ordenador.

2.7

Generacin de
seales
digitales y
binarias

Como ya parece haber quedado claro en la seccin anterior, todos los


ordenadores, y por lo tanto todos los PLCs, funcionan utilizando seales digitales o binarias. Por binario, entendemos una seal que slo
reconoce dos valores definidos.

Fig. B2.1:
Seal binaria

Estos valores se les llama "0" o "1", aunque tambin se utilizan los
trminos "bajo" y "alto". Las seales pueden realizarse muy fcilmente
con componentes de contactos. Un contacto activado corresponde a
una seal de lgica 1 y uno sin activar a una de lgica 0. Cuando se
trabaja con elementos sin contacto, esto puede forzar unos ciertos
mrgenes de tolerancia. Por esta razn, hay que definir ciertos mrgenes de tensin para definirlos como lgica 0 lgica 1.

V
30
margen seal-1

11
5
0
-3

margen seal-0
t

Fig. B2.2:
Mrgenes de tensin

TP301 Festo Didactic

B-17
Captulo 2

IEC 1131-2 define un margen de valores de -3 V a 5 V como seal de


lgica 0, y de 11 V a 30 V como seal de lgica 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 lgica 0 y
lgica 1: Ampliamente usadas son: -30 V a +5V para lgica 0 y +13 V
a +30 V para lgica 1.
A diferencia de las seales binarias, las seales digitales pueden asumir cualquier valor. Se les conoce tambin como etapas de valor. As,
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.
V
6
5
4

Seal analgica

Seal digital
en base de 0,5 V

Seal digital
en base de 1 V

3
2

Seal digital
en base de 3 V

1
0

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 0 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.

Festo Didactic TP301

Fig. B2.3:
Conversin de una
seal analgica en
una seal digital

B-18
Captulo 2

Un ejemplo simple de una seal analgica es la presin, que se mide y


se visualiza en un manmetro. La seal de presin puede asumir cualquier valor intermedio entre sus valores mnimo y mximo. A diferencia
de la seal digital, cambia continuamente. En el caso del procesamiento 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 seales binarias es posible
generar una seal digital con 256 valores.

Ejemplo

Bit No.

Valor digital

Ejemplo 1

187

Ejemplo 2

51

Ejemplo 3

Este proceso se utiliza, por ejemplo, para la realizacin de temporizadores o de contadores.

TP301 Festo Didactic

B-19
Captulo 3

Captulo 3
Operadores Booleanos

Festo Didactic TP301

B-20
Captulo 3

Funciones lgicas
bsicas

Como se ha descrito en el captulo anterior, cualquier ordenador e


igualmente cualquier PLC, funcionan utilizando el sistema de numeracin de base 2. Esto se aplica tambin a los sistemas octal (23) y
hexadecimal (24). 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 lgebra de Boole. Los enlaces entre variables tambin pueden representarse claramente por medio de contactos elctricos.
Funcin NOT, negacin
El pulsador mostrado representa un contacto normalmente cerrado.
Cuando no est fsicamente accionado, el piloto H1 luce, mientras que
en estado accionado, el piloto H1 se apaga.

24V
S1
(I)

H1
(O)
0V
Fig. B3.1:
Esquema del circuito

El pulsador S1 acta como una seal 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-I igual a O)

TP301 Festo Didactic

B-21
Captulo 3

El smbolo lgico es:

Fig. B3.2:
Funcin NOT

Dos negaciones consecutivas se cancelan entre s.

I=I
1

I
Fig. B3.3:
Dos funciones
lgicas NOT

Funcin AND, conjuncin


Si dos contactos abiertos se conectan en serie, el piloto conectado
slo lucir si ambos pulsadores estn fsicamente accionados.

24V
S1
(I1)
S2
(I2)
H1
(O)
0V
Fig. B3.4:
Esquema del circuito

Festo Didactic TP301

B-22
Captulo 3

I1

I2

Tabla de la verdad

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 siguiente ecuacin:
I1 I2 = O

I1

&
O

I2
Fig. B3.5:
Funcin AND

Adems, valen las siguientes ecuaciones para la conjuncin


a0=0
a1=a
aa=0
aa=a

TP301 Festo Didactic

B-23
Captulo 3

Funcin OR, disyuncin


Otra funcin lgica bsica es la funcin OR (O). Si dos contactos normalmente abiertos se conectan en paralelo, el piloto luce siempre que
por menos uno de los pulsadores se halle fsicamente accionado.

24V
S1
(I1)

S2
(I2)

H1
(O)
0V
Fig. B3.6:
Esquema del circuito

I1

I2

Tabla de la verdad

I1

>=1
O

I2
Fig. B3.7:
Funcin OR

La operacin lgica se escribe en forma de la siguiente ecuacin:


I1 I2 = O

Festo Didactic TP301

B-24
Captulo 3

Valen tambin las siguientes ecuaciones para la disyuncin:


b0=b
b1=1
bb=b
bb=1

3.2

Otras operaciones En la seccin B3.1 se ha descrito la realizacin elctrica de las operaciones NOT-/AND-/OR. Naturalmente, cada una de estas funciones
lgicas
puede tambin realizarse con componentes neumticos y electrnicos.
El lgebra de Boole reconoce tambin las siguientes operaciones lgicas. La siguiente tabla proporciona un resumen de ellas.
Tabla B3.1:
Conexiones lgicas

Nombre

Ecuacin

Tabla verd.

Smbolo lgico

Realizacin neumtica

Realiz. elctrica

Realiz. electrnica
+

Identidad

I=A

I O
0 0
1 1

O
R

O
+

Negacin

I=O

I O
0 1
1 0

I
I

I
O
-

I1

>

Conjuncin

I2 = O

I1 I2 O
0 0 0
0 1 0
1 0 0
1 1 1

I1
I2

&

I1

I2
I1

I1

I2
O

I2

I1
O

I1

I2 = O

>

Disyuncin

I1 I2 O
0 0 0
0 1 1
1 0 1
1 1 1

I1
I2

>=1

I1

I2

I2

O
I1

I2

R
O

TP301 Festo Didactic

B-25
Captulo 3

Tabla B3.1:
Conexiones lgicas
(continuacin)
Nombre

Ecuacin

Tabla verd.

Realizacin neumtica

Smbolo lgico

Realiz. elctrica

Realiz. electrnica

I1
I1

> >

Antivalencia
( OR
exclusiva)

I2 = O
I2 = O

I1 I2 O
0 0 0
0 1 1
1 0 1
1 1 0

I1

I1
I2

I1

I2

I1

I2

I1

I2

I2

> >

I2
I2 = O
>

Equivalencia I1
I1

I1 I2 O
0 0 1
0 1 0
1 0 0
1 1 1

I1

I1
I2

I1

I1

I2

I2

I2
I1

I2

I1

>

NAND

I2 = O

I1 I2 O
0 0 1
0 1 1
1 0 1
1 1 0

I1

I1
I2

&

I1 I2 = O
>

NOR

Festo Didactic TP301

>=1

I2
K1

I1
I2

I1

I2

K1

I1

O
I1

I1

I2

I1 I2 O
0 0 1
0 1 0
1 0 0
1 1 0

K1

I2
I1

I2

I2

K1

B-26
Captulo 3

3.3

Establecimiento
de funciones de
conmutacin

Derivacin de ecuaciones booleanas de la tabla de la verdad


A menudo, las operaciones lgicas mostradas en la seccin anterior no
son suficientes para describir adecuadamente un estado en la tecnologa de control.
A menudo, hay combinaciones de diferentes operaciones lgicas. La
conexin lgica en forma de una ecuacin booleana puede establecerse 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 sensores B1 a B4 estn previstos para
la deteccin de estos agujeros.

1.0

B1

B4
B3
B2

Fig. B3.8:
estacin de clasificacin

Las piezas con la siguiente distribucin de agujeros son para el tipo de


cocina Estndar. Estas piezas deben extraerse de la cinta transportadora por medio del cilindro de doble efecto 1.0.

TP301 Festo Didactic

B-27
Captulo 3

Fig. 3.9:
Distribucin de los
agujeros en las piezas

Asumiendo que un taladro realizado se lee como seal-1, se obtiene la


siguiente tabla de la verdad:

Tabla de la verdad

Festo Didactic TP301

B-28
Captulo 3

Para obtener la ecuacin lgica a partir de esta tabla existen dos opciones, que conducen a dos expresiones diferentes. Naturalmente ambas 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 0
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 lgica es la
siguiente:
y

= (a b c d) (a b c d) (a b c d)
(a b c d) (a b c d) (a b c d)

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 0, 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 "0"
y

= (a b c d) (a b c d) (a b c d)
(a b c d) (a b c d) (a b c d)
(a b c d) (a b c d)
(a b c d) (a b c d)

3.4

Simplifiacin de
funciones lgicas

Ambas ecuaciones para el ejemplo dado son bastante amplias, si bien


ms larga an es la que se ha dado como forma estndar conjuntiva.
Esto define el criterio para utilizar la forma estndar disyuntiva o conjuntiva: La decisin se hace en favor de la forma ms corta de la
ecuacin. En este caso la forma estndar disyuntiva.
y

= (a b c d) (a b c d) (a b c d)
(a b c d) (a b c d) (a b c d)

Esta expresin puede simplificarse con la ayuda de las propiedades


del lgebra de Boole,

TP301 Festo Didactic

B-29
Captulo 3

Las propiedades ms importantes del lgebra de Boole se muestran a


continuacin:
a
a
a
a

0
1
a
a

=
=
=
=

a
1
a
1

Propiedad conmutativa
ab=ba

a
a
a
a

0
1
a
a

=
=
=
=

0
a
a
0

ab=ba

Propiedad asociativa
a b c = a (b c) = (a b) c
a b c = a (b c) = (a b) c
Propiedad distributiva
a (b c) = (a b) (a c)
a (b c) = (a b) (a c)
Ley de De Morgan
ab=ab

ab=ab

Aplicadas al ejemplo citado, se obtiene el siguiente resultado:


y

abcd abcd abcd abcd abcd abcd

abcd abcd abcd abcd abd(c c)

acd(b b) abd(c c) abd

acd abd abd

acd ad(b b)

(ac a)d

(c a)d

cd ad

Por razones de claridad, el smbolo de la operacin AND "" 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 mtodo 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.

Festo Didactic TP301

B-30
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.
a

No.

10

11

12

13

14

15

16

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. B3.1:
Tabla de valores

cd

cd

cd

cd

ab

ab

ab

10

11

12

ab

13

14

15

16

TP301 Festo Didactic

B-31
Captulo 3

El resultado de la tabla de la verdad se transfiere al diagrama KV tal


como se indica en la figura. En principio, de nuevo es posible la representacin en la forma estndar disyuntiva o conjuntiva. Sin embargo,
en este ejemplo nos limitaremos a la forma estndar disyuntiva.
cd

cd

cd

cd

ab

ab

ab

ab

Fig. B3.11:
Tabla de valores

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 2x.

De esto resulta lo siguiente


cd

cd

cd

cd

ab

ab

ab

ab

y1

Festo Didactic TP301

y2

Fig. B3.12:
Tabla de valores

B-32
Captulo 3

Los valores de las variables, se seleccionan para el bloque establecido


y estos a su vez se combinan en forma disyuntiva.
y1 = cd
y2 = acd
y

= cd acd
= (c ac) d
= (c a) d
= cd ad

Naturalmente, el diagrama KV no est limitado a 16 casillas. Con 5


variables, por ejemplo, se produciran 32 casillas (25) y con 6 variables
64 casillas (26).

TP301 Festo Didactic

B-33
Captulo 4

Captulo 4
Diseo y modo de funcionamiento
de un PLC

Festo Didactic TP301

B-34
Captulo 4

4.1

Estructura de
un PLC

En los ordenadores, generalmente se distingue entre hardware, firmware 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 hallan 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 procesador 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.
Bus de datos

Microprocesador
(CPU)

ROM

RAM

Sistema
operativo

Programas
y Datos

Mdulos
de entradas

Mdulos
de salidas

Bus de
direcciones

Fig. B4.1:
Diseo fundamental de
un microordenador

Bus de control

La Fig. B4.1 ilustra el diseo fundamental de un microordenador. El


hardware del PLC como es el caso de casi todos los sistemas microordenadores actuales est basado en un sistema de bus. Un sistema de bus es un determinado nmero de lneas elctricas divididas
en lneas 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 lnea de datos para transmitir la informacin requerida. Las
lneas de control son necesarias para habilitar el dispositivo conectado
el bus como emisor o como receptor..

TP301 Festo Didactic

B-35
Captulo 4

Los principales elementos conectados al sistema de bus son el microprocesador 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 E/S. Especialmente en el caso de grandes
sistemas modulares de PLC, es ms usual un bus externo de E/S.
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. B4.2 ilustra el FPC 101 de Festo como ejemplo.

Fig. B4.2:
Control Lgico Programable
Festo FPC 101

Festo Didactic TP301

B-36
Captulo 4

4.2

Unidad Central
de un PLC

En esencia, la unidad central de un PLC consiste en un microordenador. El sistema operativo del fabricante del PLC hace que el ordenador
que hay en el PLC est optimizado especficamente para tareas de
tecnologa de control.
Diseo de la unidad central
La Fig. B4.3 muestra una versin simplificada de un microprocesador,
que representa el corazn de un microordenador.

Bus de datos

ALU

Fig. B4.3:
Diseo de un
microprocesador

Bus de control

Registro de instrucciones

Acumulador

Contador de programa

Unidad aritmtica

Unidad de control

Bus de control

Bus de
direcciones

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 lgica 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 procesar como los resultados de una operacin.
El registro de instrucciones almacena cada orden o instruccin llamada 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
(seales de entrada, flags, etc.) con los que hay que realizar la operacin indicada.

TP301 Festo Didactic

B-37
Captulo 4

El contador de programa es un registro, que contiene la direccin de


la siguiente orden a procesar. La seccin siguiente tratar este apartado con ms detalle.
La unidad de control regula y controla toda la secuencia de operaciones requeridas para la ejecucin de una orden.

Ciclo de instrucciones en la unidad central


Los sistemas microordenadores convencionales de hoy en da funcionan segn el denominado "principio de von-Neumann". Segn este
principio, el ordenado procesa el programa lnea a lnea. En trminos
sencillos, podramos decir que cada lnea 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 representacin siempre resultan en una serie de lneas de programa dentro
del ordenador, se procesan consecuentemente una tras otra.
En principio, una lnea de programa, es decir, generalmente una orden
se procesa en dos etapas:
recogida de la orden desde la memoria de programa
ejecucin de la orden

Bus de datos
Microprocesador

Memoria

Instruccin Registro de
instrucciones
Seales de control

Instruccin

Contador de
programa
+1

Direcciones
Bus de direcciones

Festo Didactic TP301

Fig. B4.4:
Secuencia de instrucciones

B-38
Captulo 4

El contenido del contador de programa es transferido al bus de direcciones. 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 secuencia de seales de control para su ejecucin.
Durante la ejecucin de un programa, las instrucciones se van a buscar 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
funcionamiento
de un PLC

Los programas para el procesamiento convencional de datos, generalmente se procesan una sola vez, de arriba a abajo y terminan. A diferencia de estos, el programa de un PLC se procesado continua y cclicamente.

Tabla de imagen
Entradas

Entradas

Programa PLC

Tabla de imagen
Salidas

Salidas

Fig. B4.5:
Procesamiento cclico
de un programa de PLC

TP301 Festo Didactic

B-39
Captulo 4

Las caractersticas del procesamiento cclico son:


As que el programa ha sido ejecutado una vez, salta automticamente al principio y se va repitiendo el proceso continuamente.
Antes de que se procese la primera lnea 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
lgico de una entrada permanece constante durante un ciclo, incluso 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. Solamente al final del ciclo se activan o desactivan fsicamente las salidas
segn el estado lgico almacenado en la memoria.
El procesamiento de una lnea de programa a travs de la unidad central de un PLC ocupa un tiempo que, dependiendo del PLC y de la
instruccin que contenga puede variar desde unos pocos microsegundos hasta unos pocos milisegundos.
El tiempo requerido por el PLC para una simple ejecucin de un programa, incluyendo la actualizacin de las salidas y la imagen del proceso, 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 lnea 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:
Las seales de entrada de una duracin inferior al tiempo de ciclo,
posiblemente no sern reconocidas.
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.
Dado que las instrucciones se procesan secuencialmente, el comportamiento especfico de la secuencia de un programa de PLC
puede ser crucial.
En algunas aplicaciones, es esencial que pueda accederse directamente a entradas y salidas durante un ciclo. Por ello, este tipo de procesamiento de programa, saltndose la imagen del proceso, tambin es
posible en algunos sistemas PLC.

Festo Didactic TP301

B-40
Captulo 4

4.4

Memoria de
programas de
aplicacin

Los programas especficamente desarrollados para determinadas aplicaciones requieren una memoria de programa, de la cual puedan ser
ledos por la unidad central. Los requerimientos para tal memoria de
programa son relativamente simples de formular:
Debera ser lo muy sencilla de modificar o de crear y almacenar
nuevos programas con la ayuda de un dispositivo programador o un PC.
Debe haber mecanismos que aseguren que el programa no pueda
perderse incluso ante un fallo de tensin o por tensiones de interferencia
La memoria de programa debe ser econmica
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:
RAM
EPROM
EEPROM

RAM
La memoria RAM (random acceso memory/memoria de acceso aleatorio) es una memoria muy rpida y econmica. Dado que la memoria
principal de los ordenadores (y tambin de los PLCs) consiste en memorias 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
batera, acumulador o pila. Dado que la vida til y la capacidad de las
modernas pilas les permiten durar varios 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

B-41
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.

Fig. B4.6:
Ejemplo de una EPROM

Sin embargo, a efectos de modificar un programa, debe borrarse primero toda la memoria y, tras un tiempo de enfriamiento, reprogramarse
completamente. El borrado requiere generalmente un dispositivo borrador 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 programacin 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 / ROM programable y borrable elctricamente ), EEROM (electrically erasable ROM /
ROM borrable elctricamente) y la EAROM (electrically alterable ROM /
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.

Festo Didactic TP301

B-42
Captulo 4

4.5

Mdulo de
entradas

El mdulo de entradas de un PLC es el mdulo al cual estn conectados los sensores del proceso. Las seales de los sensores deben pasar 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

Seal de
entrada
Fig. B4.7:
Diagrama de bloques
de un mdulo de entradas

Deteccin
de error de
tensin

Retardo de
la seal

Optoacoplador

Seal a la
unidad de
control

El principal componente de los actuales mdulos de entradas, que


cumple con estos requerimientos es el optoacoplador.
El optoacoplador transmite la informacin del sensor 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 garantizan proteccin a picos de aproximadamente 5 kV, lo que es adecuado 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 correspondientes de diodos y optoacopladores. Los datos precisos en relacin
con las seales a detectar se especifican en DIN 19240.

TP301 Festo Didactic

B-43
Captulo 4

El filtrado de la seal emitida por el sensor es crtica en automatizacin industrial. En la industria, las lneas elctricas estn generalmente muy cargadas debido a tensiones de interferencia inductivas,
que producen muchas interferencias en las seales. Las lneas 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 tiempo 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 hardware, 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 tareas en las que el retardo de la seal de entrada es demasiado larga
para reconocer la seal requerida.
Cuando se conectan sensores a las entradas del PLC, debe distinguirse entre conexiones de conmutacin positiva y de conmutacin negativa. En otras palabras, hay que distinguir entre entradas que representan un consumo de corriente o una fuente de corriente. En Alemania, por ejemplo, cumpliendo con VDI 2880, se utilizan principalmente
las conexiones de conmutacin positiva, ya que ello permite la utilizacin de un tierra de proteccin. Conmutacin positiva significa que la
entrada del PLC representa un drenaje de corriente. El sensor suministra la tensin de funcionamiento o tensin de control a la entrada en
forma de seal-1.
Si se utiliza tierra de proteccin, la tensin de salida del sensor es
cortocircuitada hacia los 0 voltios o se funde el fusible en caso de
cortocircuito en la lnea de seal. Esto significa que se aplica una lgica 0 en la entrada del PLC.

Festo Didactic TP301

B-44
Captulo 4

En muchos pases, es comn utilizar sensores de conmutacin negativa, 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 puesta a tierra de la tensin de control positiva o la supervisin del aislamiento, 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. Principalmente, la funcin de una salida vista desde la aplicacin del PLC
incluye lo siguiente:
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 elementos finales de control
Proteccin de cortocircuito y sobrecarga de los mdulos de salida
En el caso de mdulos de salida, hay disponibles dos mtodos fundamentalmente diferentes para conseguir lo indicado: El uso de rels o
de electrnica de potencia.

Fig. B4.8:
Diagrama de bloques
de un mdulo de salida

Seal de
la unidad
central

Optoacoplador
Amplificador

Supervisin de
cortocircuito

Seal de
salida

El optoacoplador, forma de nuevo la base para la electrnica de potencia 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 transistor de potencia de los picos de tensin.

TP301 Festo Didactic

B-45
Captulo 4

Actualmente, la proteccin ante cortocircuito, proteccin ante sobrecargas y amplificacin de potencia, se ofrecen a menudo como
mdulos completamente integrados. Las medidas estndar de proteccin ante cortocircuito miden el flujo de corriente a travs de una resistencia de potencia para desconectar en caso de cortocircuito; un sensor 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 inferior a la suma total de la potencia de cada salida, ya que los transistores 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 especialmente protegido de sobrecargas, con lo que solamente debe preverse 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 sencillos.
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 potencia de rels 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 conmutacin positiva, segn VDI 2880, es decir, la salida representa una fuente
de potencia y suministra la tensin de funcionamiento para el dispositivo 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 tierra de proteccin. La electrnica conmuta a proteccin de cortocircuito
o se funde el fusible, es decir, el dispositivo consumidor no puede drenar 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 Didactic TP301

B-46
Captulo 4

Si se utilizan salidas de conmutacin negativa, es decir, la salida representa 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 tensin de control positiva son prcticas estndar en este caso.

4.7

Dispositivo
programador /
Ordenador
personal

Cada PLC tiene una herramienta de diagnosis y programacin para


soportar la aplicacin del PLC

Programacin
Verificacin
Puesta punto
Localizacin de averas
Documentacin del programa
Almacenamiento del programa

Estas herramientas de programacin y diagnosis son o bien dispositivos de programacin especficos del fabricante u ordenadores personales con su software correspondiente. Actualmente, estos ltimos son
casi exclusivamente las variantes preferidas, ya que la enorme capacidad 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 mantenimiento. Con la creciente utilizacin de ordenadores personales porttiles (LapTop), funcionando con bateras, la importancia de los programadores de mano disminuye paulatinamente.

TP301 Festo Didactic

B-47
Captulo 4

Las funciones esenciales del sistema de software forman parte de la


herramienta de programacin y diagnosis
Cualquier software de programacin segn IEC 1131-1 deben proporcionar al usuario una serie de funciones. As, el software de programacin 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
as la introduccin de programas defectuosos.
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:
una verificacin del estado de las entradas, salidas temporizadores, contadores, etc.
verificacin de secuencias de programa por medio de operaciones de paso a paso, rdenes de STOP, etc.
simulacin por medio de activacin manual de entradas/salidas,
establecimiento de valores, etc.
Indicacin del estado de sistemas de control
Emisin de informacin relacionada con la mquina, proceso y estado del sistema PLC:
Indicacin del estado de seales de entrada y salida
Registro/indicacin de cambios de estado en seales externas y
datos internos
Supervisin de los tiempos de ejecucin
Formato en tiempo real de la ejecucin del programa

Festo Didactic TP301

B-48
Captulo 4

Documentacin
Creacin de una descripcin del sistema PLC y el programa del
usuario. Esto consiste en:
Descripcin de la configuracin del hardware
Impresin del programa de usuario con los correspondientes datos e identificadores para las seales y comentarios
Lista de referencias cruzadas para todos los datos procesados
tales como entradas, salidas, temporizadores, etc.
Descripcin de las modificaciones
Archivado del programa de usuario
Proteccin del programa de usuario en memorias no voltiles tales
como EPROM, etc.

TP301 Festo Didactic

B-49
Captulo 5

Captulo 5
Programacin de un PLC

Festo Didactic TP301

B-50
Captulo 5

5.1

Bsqueda de
una solucin
sistemtica

Los programas de control representan un componente importante en


un sistema de automatizacin.
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. B5.1 ha sido probado y verificado. La divisin en
secciones definidas conduce a un funcionamiento sistemtico y objetivado, 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 verificacin 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.

Fig. B5.1:
Modelo de fases para
la generacin de
software de PLC

1.

Especificacin

- Descripcin verbal de la tarea de control


- Tecnologa, croquis de situacin
- Macroestructura de los programas de
control

2.

Diseo

- Diagrama de funciones segn IEC 848


- Diagrama de funciones, tal como
el Diagrama espacio-tiempo
- Tabla de funciones
- Definicin de los mdulos de software
- Lista de piezas y esquemas del circuito

3.

Realizacin

4.

Puesta a punto

- Programacin en LD, FBD, IL,


ST y/o SFC
- Simulacin de subprogramas y del
conjunto de programas

- Construccin del sistema


- Verificacin de los subprogramas
- Verificacin del conjunto de programas

TP301 Festo Didactic

B-51
Captulo 5

El modelo de fases puede aplicarse a programas de control de complejidad 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 tarea de control. La descripcin especfica de la funcin del sistema de
control, formalizada al mximo, revela cualquier requerimiento conflictivo, especificaciones incompletas o equivocadas.
Al final de esta fase se dispone de lo siguiente:
Descripcin escrita de la tarea de control
Estructura/distribucin
Macroestructuracin del sistema o proceso y con ello un esbozo de
la estructura de la solucin.

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 independiente de la realizacin tcnica.
Estos requerimientos se cumplen con el diagrama de funciones (FCH)
segn define DIN 40 719, Parte 6 o IEC 848. Empezando con una
representacin de una visin de conjunto del control (esbozo de la estructura de la solucin), la solucin puede refinarse paso a paso hasta
que se obtenga un nivel de descripcin que contenga todos los detalles 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 mdulos de software individuales. Estos mdulos de software realizan las etapas de trabajo del sistema de control.
Estos pueden ser funciones especiales como la realizacin de un interface 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 719, Parte 6.

Festo Didactic TP301

B-52
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
1131-3. Estos son: diagrama de funciones secuencial, diagrama de
bloques de funcin, diagrama de contactos, lista de instrucciones y texto estructurado.
Los sistemas de control que funcionan en un proceso tiempo/lgica y
estn disponibles en FCH segn DIN 40 719, P.6, pueden ser clara y
fcilmente programados en diagrama de funciones secuencial. Un diagrama 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 instrucciones son los lenguajes de programacin adecuados para la formulacin de operaciones bsicas y para sistemas de control que pueden ser descritos por simples seales lgicas combinadas por operaciones booleanas.
El lenguaje de alto nivel denominado texto estructurado se utiliza principalmente 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 permitan, los programas de control o parte de los programas creados, deberan ser simulados antes de la puesta a punto. Esto permite la deteccin 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 eliminarse fcilmente utilizando este mtodo.

TP301 Festo Didactic

B-53
Captulo 5

Documentacin
Un componente importante y crucial de un sistema es la documentacin, ya que es un requerimiento esencial para el mantenimiento y ampliacin 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 informacin sobre las fases individuales, listados del programa de control y
de cualquier informacin adicional posible concerniente al programa de
control. Individualmente estos son:
Descripcin 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


individual, sino tambin para sistemas de automatizacin complejos.
Los programas de control para grandes aplicaciones deben ser claramente estructurados para ser inteligibles, fciles de mantener y si es
posible tambin porttiles, es decir, transferibles a otros sistema de PLC.

5.2

Recursos de
estructuracin
IEC 1131-3

Las definiciones se necesitan no slo para las instrucciones de lenguaje elemental, sino tambin para los elementos de lenguaje para estructuracin. Los recursos de estructuracin (fig. B5.2) se refieren a programas de control y a la configuracin del sistema de automatizacin.

RECURSO DE
CONFIGURACIN
TAREA
VAR_GLOBAL
RUTA_ACCESO

Diagrama de funciones
secuencial

PROGRAMA
BLOQUE-FUNCIN
FUNCIN
TIPO-DATOS

Configuracin de
un sistema de
automatizacin

Representacin
de la secuencia
Refinamiento
Modularizacin

Estructuracin
del nivel de
configuracin

Estructuracin
del nivel de
programa

Fig. B5.2:
IEC 1131-3
mtodo de estructuracin

Festo Didactic TP301

B-54
Captulo 5

Recursos de estructuracin del programa


Los recursos de estructuracin programa, bloque de funciones y funcin 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 suministrados 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 reales 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 incorporacin 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

B-55
Captulo 5

Un recurso (elemento de lenguaje RECURSO) corresponde al procesador 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 control es una tarea (elemento de lenguaje TAREA). El elemento de control Tarea define si un programa debe procesarse cclicamente o slo
una vez, disparado por un evento especfico. Los programas que no
estn especficamente enlazados a una tarea son procesados cclicamente en segundo plano y con la prioridad ms baja.

Configuracin de la fabricacin de vlvulas


Recurso
montaje de vlvulas
Tarea_1

Recurso
control transportador

Recurso
control de calidad
Tarea_
cclica

Tarea_2

Programa
montaje

Programa
transportador

Programa
posicin_inicial

Programa
transp_vaco

Tarea_
unica

Programa
envasado
Programa
estadsticas
Programa
Guarda_datos

Variables globales y directamente representadas

Los recursos de estructuracin para la configuracin se muestran en


un resumen combinado en la fig. B5.3. A continuacin se explica el
ejemplo que aplica este concepto a una tarea de automatizacin.
La tarea planteada es la de disear y automatizar una lnea de produccin para el montaje de vlvulas neumticas.
Se ha elegido un PLC multiprocesador con tres tarjetas de procesador
para el montaje de las vlvulas. Las tarjetas de procesador estn asignadas al montaje de las vlvulas, el control del transportador y el control de calidad.

Festo Didactic TP301

Fig. B5.3:
Ejemplo grfico de
una configuracin

B-56
Captulo 5

Los programas Estadsticas y Guarda_datos est asociados con diferentes tareas. Como tales, poseen diferentes caractersticas de ejecucin. 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_cclica. 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 datos. 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 estandarizados 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 intercambiados con una variable designada como tal. A las variables globales 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 bloques de funciones de comunicacin estandarizados. Estos se definen
en IEC 1131-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
programacin

IEC 1131-3 define cinco lenguajes de programacin. Aunque la funcionalidad 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 configuracin.
Los lenguajes pueden mezclarse de cualquier forma dentro de un proyecto de PLC. La unificacin y estandarizacin de estos cinco lenguajes 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 Estructurado); adems, se ha incorporado la informacin necesaria sobre detalles tecnolgicos (tipo de datos, etc.)

TP301 Festo Didactic

B-57
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 sensores para establecer si una pieza con los talados correctamente 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 derivado de los esquemas de circuitos de los mandos por rels directamente cableados. El diagrama de contactos contiene lneas de alimentacin a derecha e izquierda del diagrama; a estas lneas estn conectados los reglones, que se componen de contactos (normalmente
abiertos y normalmente cerrados) y de elementos de bobina.

Pieza_TipoA Pieza_presente

Taladro_ok

Mete_funda

Pieza_TipoB
Fig. B5.4:
Ejemplo del lenguaje en
diagrama de contactos

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 lgico que se utiliza en el diseo de circuitos electrnicos.

Pieza_TipoA

OR

AND

Mete_funda

Pieza_TipoB
Pieza_presente
Taladro_ok

Festo Didactic TP301

Fig. B5.5:
Ejemplo del lenguaje en
bloques de funciones

B-58
Captulo 5

Lista de Instrucciones (Statement list o Instruction List) IL


La lista de instrucciones es un lenguaje textual tipo assembler, caracterizado por un modelo de mquina simple (procesador con un slo registro). La lista de instrucciones se formula a partir de instrucciones de
control consistentes en un operador y un operando.

Fig. B5.6:
Ejemplo de lenguaje en
lista de instrucciones

LD
OR
AND
AND
ST

Pieza_TipoA
Pieza_TipoB
Pieza_presente
Taladro_ok
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 dialectos 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,
WHILE etc. y llamadas a bloques de funcin.

Fig. B5.7:
Ejemplo de lenguaje en
texto estructurado

Mete_funda := (Pieza_TipoA OR Pieza_TipoB) AND Pieza_presente AND Taladro_OK;

El texto estructurado permite la formulacin de numerosas aplicaciones, ms all de la pura tecnologa de funciones, tales como algoritmos (algoritmos de regulacin de nivel superior, etc.) y manejo de datos (anlisis de datos, procesamiento de estructuras de datos complejas, etc.)

TP301 Festo Didactic

B-59
Captulo 5

Diagrama de funciones secuencial (Sequential function chart) SFC


El diagrama de funciones secuencial (casi idntico al GRAFCET francs) 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 control, 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 estructuras secuenciales. Esta caracterstica permite la estructura jerrquica de
un programa de control. Por lo tanto, el diagrama de funciones secuencial es una herramienta excelente para el diseo y la estructuracin de
programas de control.

Festo Didactic TP301

B-60
Captulo 5

TP301 Festo Didactic

B-61
Captulo 6

Captulo 6
Elementos comunes de los
lenguajes de programacin

Festo Didactic TP301

B-62
Captulo 6

6.1

Recursos de
un PLC

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 est
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 entradas, salidas y la memoria. Slo a travs de estas entradas puede un
control recibir informacin de los procesos conectados. De forma similar, 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..

Fig. B6.1:
Designaciones para
Entradas, Salidas y
Memoria

Entradas
(Inputs)

Salidas
(Outputs)

Memorias
(Memory)

Sin posteriores referencias, estos designan slo entradas y salidas binarias y elementos de memoria de un slo bit, designados como flags
(tambin denominado marcas).
El estndar habla generalmente de variables representadas directamente. Estas son variables que estn referidas directamente a las entradas, salidas y elementos de memoria del control disponibles, relacionadas 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.

TP301 Festo Didactic

B-63
Captulo 6

Siempre que el control lo soporte, pueden direccionarse recursos que


excedan de un bit. IEC 1311-3 emplea otra letra para decribirlos, que
sigue a la abreviacin I, 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.
BOOL

Secuencia de bits de longitud 1

BYTE

Secuencia de bits de longitud 8

WORD

Secuencia de bits de longitud16

Fig. B6.2:
Tipos de datos

Los tamaos de 1 bit, tal como describe el tipo de datos BOOL (booleana) solamente pueden asumir los valores 0 1. Consecuentemente,
el margen de valores para un dato del tipo BOOL consiste en dos
valores "0" 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 meramente una combinacin de varios bits. Cada uno de estos bits tiene el
valor 0 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.
I, Q, M
o bien
IX, QX, MX

Bit de entrada, bit de salida, bit de memoria

1 bit

IB, QB, MB

Byte de entrada, byte de salida, byte de memoria

8 bit

IW, QW, MW

Word de entrada, word de salida, word de memoria

16 bit

Festo Didactic TP301

Fig. B6.3:
Designacin para
Entradas, Salidas y
Memorias

B-64
Captulo 6

Un bit individual de una entrada, salida o flag tambin puede ser direccionado 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 especialmente identificados a efectos de diferenciacin. Para ello se utiliza
la numeracin indicada por IEC 1131-3, como en el siguiente ejemplo:
I1

Entrada 1

IX9

Entrada 9

I15

Entrada 15

QW3

Word de salida 3

MB5

Byte de memoria 5

MX2

Memoria 2

IEC 1131-3 no especifica el margen de nmeros que se permite para


esta numeracin ni si deben empezar por 0 por 1. Esto lo especifica
el fabricante del control.
Tambin deben utilizarse una cantidad jerrquica de entradas, salidas
y flags, si el control utilizado ha sido adecuadamente configurado.
Se utiliza un punto para separar los niveles individuales de la jerarqua.
El nmero de niveles de jerarqua no ha sido definido.
En el caso de numeracin jerrquica, la posicin ms alta en el nmero de la izquierda debe ser codificado, los nmeros que siguen a la
derecha representan consecutivamente las posiciones ms bajas.

Ejemplo

I3.8.5

TP301 Festo Didactic

B-65
Captulo 6

La estrada especificadas I3.8.5 puede por lo tanto representar:


Entrada
en inserto No. 3
en tarjeta No. 8
como Entrada No. 5
I

3.

8.

IEC 1131-4 no hace ningn comentario en relacin con la asignacin


de bits individuales en un BYTE o WORD. Los fabricantes de los controles 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 alguna 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 0 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 recurso %.
Ejemplos de variables directamente direccionables:
%IX12
o
%I12

Bit de entrada 12

%IW5

Word de Entrada 5

%QB8

Byte de Output 8

%MW27

Word de Memoria 27

El uso de variables directamente direccionadas solamente es permisible en programas, configuraciones y recursos.


Las unidades de organizacin de programas Funcin y Bloque de Funcin deben operar exclusivamente con variables simblicas, para mantener el programa lo ms independiente posible del control y, con ello,
lo ms ampliamente utilizable.

Festo Didactic TP301

Fig. B6.4:
Estructura de las
designaciones jerrquicas

B-66
Captulo 6

6.2

Variables y
tipos de datos

La utilizacin de variables representadas exclusiva y directamente (recursos, entradas, salidas y memoria) no es suficiente para crear programas de control. Frecuentemente, se requieren datos, que contienen
informacin especfica, tambin de una naturaleza ms compleja. Estos 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 empezar 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 minsculas, 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:
123

El nombre no empieza con una letra

Button_?

El ltimo carcter no es vlido ya que


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 reservadas 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
Valores de tiempo
Cadenas

TP301 Festo Didactic

B-67
Captulo 6

Descripcin

Ejemplos

Enteros

12, -8, 123_456*, +75

Nmeros en coma flotante

-12.0, -8.0, 0.123_4*

Nmeros de base 2
(Nmeros binarios)

2#1111_1111
2#1101_0011

(255 decimal)
(211 decimal)

Nmeros de base 8
(Nmeros octales)

8#377
8#323

(255 decimal)
(211 decimal)

Nmeros de base 16
(Nmeros hexadecimales)

16#FF o 16#ff
16#D3 o 16#d3

(255 decimal)
(211 decimal)

Cero y Uno Booleanos

0, 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

IEC 1131-3 prev diferentes tipos de datos de tiempo:


Duracin, es decir, para medicin de resultados
Fecha
Hora del da, p. ej. para sincronizacin desde el inicio o el final de
un evento (tambin juntamente con la fecha)

Descripcin

Ejemplos

Duracin de tiempo

T#18ms, t#3m4s, t#3.5s


t#6h_20m_8s
TIME#18ms

Fecha

D#1994-07-21
DATE#1994-07-21

Hora del da

TOD#13:18:42.55
TIME_OF_DAY#13:18:42.55

Fecha y Hora

DT#1994-07-21-13:18:42.55
DATE_AND_TIME#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

Tabla B6.2:
Representacin de tiempo,
fecha y hora

B-68
Captulo 6

Abreviaciones para datos de tiempo:


d

Dias

Horas

Minutos

Segundos

ms

Milisegundos

Tambin pueden utilizarse maysculas en lugar de minsculas y guiones de subrayado para mejorar la lectura del dato.
Tambin IEC 1131-3 ha especificado un formato fijo para la indicacin
de una fecha, hora del da o una combinacin de ambos. Cada especificacin empieza con una palabra clave; la informacin real se representa como se muestra en la tabla B6.2.
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 diferentes controles, con otros componentes de un sistema de automatizacin 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 con una coma volada.

Tabla B6.3:
Representacin de cadenas

Ejemplo

Descripcin

Cadena de longitud 1, conteniendo el carcter B

Atencin

Cadena de longitud 7, conteniendo el mensaje Atencin

cadena vaca

TP301 Festo Didactic

B-69
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 0 bien el valor 1.

Palabra clave

Tipo de Dato

Margen de valores

BOOL

Nmero Booleano

0, 1

SINT

Entero corto

0 a 255

INT

Entero

-32 768 a +32 767

DINT

Entero doble

-2 147 483 648 a +2 147 483 647

UINT

Entero sin signo

0 a 65 535

REAL

Nmero en coma flotante

+/-2.9E-39 a +/-3.4E+38

TIME

Duracin de tiempo

dependiendo de la implementacin

STRING

Cadena de longitud variable

dependiendo de la implementacin

BYTE

Secuencia de 8 bits

sin rango de valores declarable

WORD

Secuencia de 16 bits

sin rango de valores declarable

Otros dos importantes tipos de datos, denominados INT e UINT definen nmeros enteros. Las variables del tipo de datos INT (integer/entero) 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 UNIT (unsigned integer/entero sin signo) slo permiten valores positivos. El margen de valores para las
UINT va desde 0 a 65 535. SINT (short integer/entero corto) y DINT
(double integer/entero doble) son tipos de datos adicionales que definen 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.

Festo Didactic TP301

Tabla B6.4:
Un nmero de tipos de
datos elementales

B-70
Captulo 6

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

Tabla B6.5:
Tipos de datos derivados

Tipo de dato derivado

Declaracin
TYPE END_TYPE

Tipo de enumeracin

Color: (ROJO, AZUL, AMARILLO, NEGRO);

Tipo de subrango

Margen_referencia: INT(80..110);

Campos (array)

Posicion: ARRAY[1..10] OF REAL;

Estructuras

Coordenadas:
STRUCT
X:REAL;
Y:REAL;
END_STRUCT;

El significado de los tipos de datos individuales en la tabla B6.5 se


explica brevemente abajo:
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 110, incluyen los lmites inferior y superior 80 110.
Un dato del tipo Posicion, representa una lista con 10 entradas.
Cada entrada tiene el valor de un nmero REAL. Con este ndice
pueden indexarse las entradas individuales.
Un elemento del tipo de datos Coordenadas contiene dos nmeros
REAL, a los que puede accederse a travs de sus nombres X e Y.
No todos los controles necesitan reconocer todos estos tipos de datos.
Cada fabricante dispone un juego de tipos de datos, que pueden utilizarse en el correspondiente control.

TP301 Festo Didactic

B-71
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 variables.
Para comprender la funcin de una declaracin de variables, es necesario establecer antes que el programa del control est construido en
unidades de organizacin individuales.
Estas unidades son:
Configuracin
Recurso
Programas
Bloques de funcin
Funciones
Todas las variables tienen una posicin especfica. En el caso de lenguajes de programacin en forma textual (IL y ST), las declaraciones
de variables son aproximadamente las mismas que las utilizadas en el
lenguaje Pascal. Para las formas grficas de representacin sera factible una forma tabular con el contenido equivalente. Sin embargo, esto
no est especificado en IEC 1131-3.
Todas las declaraciones de variables (fig. B6.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
Temp
Manual
Lleno, Abierto
END_VAR

: INT;
: BOOL;
: BOOL;

(*Temperatura
(*Flag para funcionamiento manual
(*Flag para "lleno" y "abierto"

*)
*)
*)

Las variables y su asignacin a un tipo de datos, se introduce entre


estas palabras clave en las que se especifica un identificador o identificadores 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.

Festo Didactic TP301

Fig. B6.5:
Declaracin de variables

B-72
Captulo 6

IEC 1131-3 distingue entre seis tipos diferentes de acceso a las variables. Cada tipo tiene una palabra clave, que introduce la declaracin
de la variable.

Tabla B6.6:
Palabras clave para la
declaracin de variables

Variables de Entrada

VAR_INPUT

Variables de Salida

VAR_OUTPUT

Variables de Entrada/Salida

VAR_IN_OUT

Variables locales

VAR

Variables globales

VAR_GLOBAL

Variables externas

VAR_EXTERN

Las variables de entrada son declaradas con las palabras clave


VAR_INPUT y END_VAR.

Fig. B6.6:
Declaracin de una
variables de entrada

VAR_INPUT
Input : INT;
END_VAR

(*Valor de entrada

*)

Las variables especificadas de esta forma representan variables de entrada, alimentadas externamente a una unidad de organizacin, p. ej,
un bloque de funcin. Estas slo pueden leerse dentro de la unidad de
organizacin.
No es posible hacer modificaciones.
Anlogamente a esto, las variables de salida se definen con las palabras clave VAR_OUTPUT y END_VAR

Fig. B6.7:
Declaracin de una
variable de salida

VAR_OUTPUT
Result : INT;
END_VAR

(*Valor de realimentacin

*)

El dato que calcula una unidad de organizacin y devuelve de nuevo el


exterior se declara arriba.
Todos los resultados de una unidad de organizacin deben ser transferidos ms all de la unidad de organizacin a travs de variables declaradas de esta forma. Dentro de las unidades de organizacin, estas
pueden ser ledas y escritas. Externamente, slo se permite el acceso
de lectura.

TP301 Festo Didactic

B-73
Captulo 6

En los casos en que se permitan variables conteniendo valores de entrada y salida, estos deben crearse con las palabras clave
VAR_IN_OUT y END_VAR.

VAR_IN_OUT
Value
END_VAR

Fig. B6.8:
Declaracin de una
variable de entrada/salida

: INT;

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 deben 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

*)

Las variables especificadas aqu son locales para una unidad de organizacin y solame te pueden ser utilizadas en ella. Son desconocidas
para otras unidades organizacionales y por lo tanto inaccesibles.
Una aplicacin tpica 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 variable local Z. Estas variables locales son completamente independientes y difieren unas de otras.
Una variable tambin puede ser declarada globalmente, en cuyo caso
puede ser accedida universalmente. La necesaria declaracin se realiza de una forma similar, utilizando las palabras clave VAR_GLOBAL y
VAR_EXTERNAL.

Festo Didactic TP301

Fig. B6.9:
Declaracin de una
variable local

B-74
Captulo 6

Fig. B6.10:
Declaracin de una
variable global

VAR_GLOBAL
Global_value: INT;
END_VAR

As es como se declaran todos los datos globales para un programa de


control. Los datos globales son accesibles universalmente. Esta declaracin slo puede hallarse en unidades de organizacin, configuracin
y recurso.

Fig. B6.11:
Declaracin de acceso a
una variable global

VAR_EXTERNAL
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.
Sin la declaracin mostrada arriba, el acceso a los datos globales no
sera permisible.
Esta estricta unidad de declaracin para todas las variables define nicamente qu variables son reconocidas por una unidad de organizacin 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.

Fig. B6.12:
Declaracin de variables
con asignacin a entradas
de un control

VAR
Pulsador_paro AT %I2.3: BOOL;
Temperatura AT %IW3: INT;
END_VAR

Las declaraciones hechas de esta forma son el mejor medio para definir el significado de todas las entradas y salidas del control. Si se produce un cambio en el sistema y su conexin al controlador, slo debern 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.

TP301 Festo Didactic

B-75
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 %I4.2
AT %MW1
END_VAR

: BOOL;
: WORD;

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 declaracin 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
END_VAR

Fig. B6.13:
Declaracin de una
variable global
con valor inicial

: INT := 12;

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 definido al inicio del programa. Esto lo facilita la caracterstica definida en
IEC 1131-3, en donde los tipos de datos tienen un valor preestablecido. 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 elementales puede verse en la tabla B6.7.
Tipo de dato

Valor inicial

BOOL, SINT, INT, DINT


UINT
BYTE, WORD
REAL
TIME
STRING

0
0
0
0.0
T#0s
(cadena vaca)

Festo Didactic TP301

Tabla B6.7:
Valores iniciales
preestablecidos

B-76
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 todos 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 funciones especificadas y bloques de funcin, IEC 1131-3 permite la definicin de sus propias funciones y bloques de funcin. Los fabricantes o
los usuarios pueden as crear mdulos de software hechos a su medida 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 significa que la invocacin de una funcin con los mismos argumentos (parmetros 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.

F nombre
X
Y
Z
Fig. B6.14:
Representacin
grfica de una funcin

Entradas

Salida

TP301 Festo Didactic

B-77
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 funciones de desplazamientos de bits, por ejemplo (fig. B6.15b). Para funciones
con entradas idnticas, como es el caso 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;
END_VAR

%QW4
%IW9
%IW7

%IW2
4

ADD

%MW1

a) sin nombres de
parmetros formales

SHL
IN
N

%MW5

b) con nombres de
parmetros formales
Fig. B6.15:
Uso de parmetros
formales con funciones

Las entradas o salidas booleanas de una funcin pueden ser negadas,


es decir, invertidas especificando un crculo directamente fuera del rectngulo (fig. B6.16).

%Q5.3
%M1.1

AND

%Q4.1

Fig. B6.16:
Representacin de
negaciones Booleanas

Festo Didactic TP301

B-78
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 enteros 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 funciones sobrecargadas, independientes del tipo. La Fig. B6.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 parmetros de
entrada de resultado

ADD

a) Parmetros de Entrada del tipo INT


general
INT
INT

ADD

INT

ejemplo
VAR
AT %IW1 : INT;
AT %IW2 : INT;
AT %MW3 : INT;
END_VAR
%IW1
%IW2

ADD

%MW3

b) Parmetros de entrada del tipo SINT


ejemplo

general

VAR
SINT
SINT

ADD

SINT

AT %IB4 : SINT;
AT %IB5 : SINT;
AT %MB6 : SINT;
END_VAR

Fig. B6.17:
Funcin sobrecargada de
tipo independiente

%IB4
%IB5

ADD

%MB6

TP301 Festo Didactic

B-79
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 B6.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

INT
INT

ADD_INT

INT

ejemplo
VAR
AT %IW1 : INT;
AT %IW2 : INT;
AT %MW3 : INT;
END_VAR

%IW1
%IW2

ADD_INT

%MW3

Fig. B6.18:
Una funcin con tipo

Funciones estndar
Las funciones estndar ms importantes para la realizacin de tareas
bsicas de tecnologa de control se relacionan a continuacin.
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.
ANY_NUM

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.

ANY_INT

Todos los tipos de datos para enteros tales como INT, UINIT, etc.

ANY_REAL

Todos los tipos de datos, definiendo nmeros en coma flotante


tales como REAL e LREAL

ANY_BIT

Todos los tipos de datos de secuencia de bits, tales como BOOL,


BYTE, WORD etc.

Festo Didactic TP301

Tabla B6.8:
Tipos de datos genricos

B-80
Captulo 6

ANY_BIT
ANY_BIT
...

***

ANY_BIT

...
ANY_BIT
* * * = nombre o smbolo
Nombre
AND
OR

Tabla B6.9:
Funciones booleanas
Bit-a-bit

XOR

Smbolo

Descripcin

&

Operacin AND de todas las entradas

>=1

Operacin OR de todas las entradas

=2k+1

Operacin OR-exclusiva de todas las entradas

NOT

Entrada negada

ANY_BIT
ANY_INT

***
IN
N

ANY_BIT

* * * = nombre

Tabla B6.10:
Funciones de
desplazamiento de bits

Nombre

Descripcin

SHL

Desplazar IN por N bits hacia la izquierda, llenar con ceros la derecha

SHR

Desplazar IN por N bits hacia la derecha, llenar con ceros la izquierda

ROR

Desplazar IN cclicamente por N bits hacia la derecha

ROL

Desplazar IN cclicamente por N bits hacia la izquierda

TP301 Festo Didactic

B-81
Captulo 6

***

ANY_BIT or ANY_NUM
...
...

ANY_BIT or ANY_NUM

* * * = nombre o smbolo

Nombre

Smbolo

Descripcin

GT

>

Mayor que (secuencia descendiente)

GE

>=

Mayor o iguall (secuencia monotnica)

EQ

Igual

LE

<=

menor o igual (secuencia monotnica)

LT

<

Menor que (rsecuencia ascendente)

NE

<>

No igual, no expandible

Tabla B6.11:
Funciones de comparacin

a) Representacin grfica
ANY_BIT

BCD_TO_INT

INT

Descripcin:
Convierte variables del tipo BYTE, WORD etc. en
variables del tipo INT.
La variable de secuencia de bits contiene datos en
formato BCD (nmero decimal codificado en binario)
Ejemplo:
2#0011_0110_1001

BCD_TO_INT

369

b) Representacin grfica
INT

INT_TO_BCD

ANY_BIT

Descripcin:
Convierte variables de tipo INT en variables de tipo BYTE,
WORD etc.
La variable de secuencia de bits contiene datos en formato
BC.
Ejemplo:
25

INT_TO_BCD

Festo Didactic TP301

2#0010_0101

Tabla B6.12:
Funciones para
conversin de tipo

B-82
Captulo 6

ANY_NUM
ANY_NUM
...

***

ANY_NUM

...
ANY_NUM
* * * = nombre o smbolo
Nombre

Smbolo

ADD

Tabla B6.13:
Funciones aritmticas

Descripcin
Suma todas las entradas

MUL

Multiplica todas las entradas

SUB

Resta la segunda entrada de la primera

DIV

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 programa, debe crearse una copia. Esto se realiza a travs de la asignacin 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 internas). 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

B-83
Captulo 6

Identificador
Tipo FB
X
P
Y
Q

Tipo dato
Tipo dato
Entradas

Tipo dato
Tipo dato

Salidas

Fig. B6.19:
Representacin grfica
de una copia de un
bloque de funcin

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. B6.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 introducen 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 procesamiento. Si las entradas no estn conectadas, entonces se accede de
nuevo a los valores almacenados en invocaciones anteriores o se utilizan los correspondientes valores iniciales.
La Fig. B6.20 muestra el uso (invocacin) del bloque de funcin
estndar para un contador.

BOOL
BOOL
INT

CTU
CU Q
R
PV CV

BOOL

Bloque de funcin tipo CTU


(contador incremental)

INT

Count_Pack
%I 1.3
10

CTU
CU Q
R
PV CV

Festo Didactic TP301

%Q2.5

Use una copia del bloque de


funcin CTU en un programa
de control

Fig. B6.20:
Uso (invocacin) del
bloque de funcin CTU
(contador incremental)

B-84
Captulo 6

La copia utilizada del bloque de funcin CTU lleva el identificador


Count_Pack. A cada flanco positivo de la entrada %I1.3 el valor actual
del contador se incrementa en 1 unidad. Cuando se alcanza el valor
preestablecido de 10, la salida Q del Count_pack, 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.
B6.21.
TP
BOOL
TIME

IN
PT

Q
ET

BOOL
TIME

T_Colour

%I 1.7
T#7s

Fig. B6.21:
Uso de varias copias de
un bloque de funcin

TP
IN
Q
PT ET

Bloque de funcin
tipo TP (pulse timer)

OR

Display_1

T#3s15ms

T_Pressure
TP
IN
Q
PT ET

Uso de varias copias del


bloque de funcinTP

TP301 Festo Didactic

B-85
Captulo 6

Bloques de funcin estndar


La Tabla B6.14 relaciona los bloques de funcin ms importantes estandarizados por IEC 1131-3.
SR

Bloque de funcin biestable (activacin prioritaria)

RS

Bloque de funcin biestable (desactivacin prioritaria)

CTU

Contador incremental

CTD

Contador decremental

TP

Pulso de tiempo

TON

Retardo a la conexin

TOF

Retardo a la desconexin

R_TRIG

Deteccin de flanco: flanco ascendente

F_TRIG

Deteccin de flanco: flanco descendente

Funciones definidas de usuario


Aparte de las funciones especificadas, IEC 1131-3 permite la definicin
de funciones propias .
Para la declaracin grfica se aplican las siguientes reglas:
Declaracin de la funcin dentro de la construccin FUNCTION...
END_FUNCTION.
Especificacin del nombre de la funcin y los nombres de los parmetros formales y tipos de datos de entradas y salidas de la funcin
Especificacin de los nombres y tipos de datos de variables internas
utilizadas en la funcin; para ello puede utilizarse una construccin
VAR... END_VAR. No pueden utilizarse copias de bloques de funcin como variables internas, ya que estas necesitaran el almacenamiento de informacin del estado.
Programacin del cuerpo de la funcin en uno de los lenguajes LD,
FBD, IL, o ST.

Festo Didactic TP301

Tabla B6.14:
Bloques de funcin
estndar

B-86
Captulo 6

A la funcin ejemplo SPEC_MUL en la fig. B6.22 se le dan dos parmetros 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

INT
INT

(* Descripcin del interface externo *)

SPEZ_MUL
F1
F2

INT

(* Cuerpo de la funcin:
*)
(* Programado en lenguaje FBD *)
F1
F2

*
+

SPEZ_MUL

15
Fig. B6.22:
Ejemplo de una
funcin SPEZ_MUL

END_FUNCTION

El uso de la funcin podra ser como el que se ha mostrado en la fig.


B6.23.

VAR
AT %MW1
AT %MW2
AT %MW3
AT %IW4
AT %QW5

: INT;
: INT;
: INT;
: INT;
: INT;

END_VAR

%MW1
%MW2

Fig. B6.23:
Uso de la funcin
SPEZ_MUL

SPEZ_MUL
F1
F2

%MW3

%IW4
%QW5

TP301 Festo Didactic

B-87
Captulo 6

Bloques de funcin definidos por el usuario


La generacin de los propios bloques de funcin por el usuario es una
caracterstica importante de IEC 1131-3.
Se aplican las siguientes reglas para una declaracin grfica:
Declaracin de bloques de funcin en una construccin FUNCTION_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 salidas del bloque de funcin.
Especificacin de los nombres y tipos de datos de variables internas; 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

BOOL
TIME

(* Descripcin del interface externo *)

Filtro_rebotes
S_ON
S_OFF
E_TIME

BOOL

(* Cuerpo del bloque de funcin: *)


(* programado en lenguaje FBD *)

S_ON

EP_ON

EP_S

TON
IN
Q
PT ET

SR
S1 Q1
R

S_OFF

EP_OFF

E_TIME

TOF
IN
Q
PT ET

END_FUNCTION_BLOCK

Festo Didactic TP301

Fig. B6.24 :
Declaracin de un
bloque de funcin

B-88
Captulo 6

El bloque de funcin ilustrado en la fig. B6.24 representa un bloque 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 S_OFF 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 deseado 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 idnticos 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 programa son PROGRAM... END_PROGRAM.
La utilizacin de variables directamente direccionables solamente se
permite dentro de programas.
Un ejemplo de esto se muestra en la figura B6.25.

PROGRAM luz_escalera
VAR
Interruptor_F AT %IX0.0 : BOOL; (* Interruptor en la puerta
Interruptor_A AT %IX0.1 : BOOL; (* Interruptor interior apartamento
AT %QX0.0 : BOOL; (* Luz de la escalera
Luz
(* Tiempo de encendido
: TP;
Duracion

*)
*)
*)
*)

END_VAR
Interruptor_F
Interruptor_A
T#3m

OR

Duracion
TP
IN
PT

Q
ET

Luz

END_PROGRAM
Fig. B6.25:
Ejemplo de un programa

TP301 Festo Didactic

B-89
Captulo 6

El nombre del programa es "Luz_escalera". Tres variables booleanas


Interruptor_F, Interruptor_A y Luz, asignadas a dos entradas y una salida 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 acciona uno de los dos interruptores; el de la puerta o el del apartamento.

Festo Didactic TP301

B-90
Captulo 6

TP301 Festo Didactic

B-91
Captulo 7

Captulo 7
Diagrama de bloques de funcin

Festo Didactic TP301

B-92
Captulo 7

7.1

Elementos del diagrama de bloques


de funcin

El diagrama de bloques de funcin es un lenguaje de programacin


grfico que es consistente, en la medida de lo posible, con la documentacin estndar IEC 617, P.12.

a) Operacin lgica de funciones


>=1

Manual_desc
Temp
60

Puerta_cerrada

>

b) Uso de bloques de funcin


T_Arranque

Fig. B7.1:
Diagrama de bloques
de funcin (FBD)

%I 1.3
T#7s

TON
IN
Q
PT ET

%Q2.4

Los elementos del diagrama de bloques de funcin son funciones


representadas grficamente y bloques de funcin. Estas estn interconectadas por lneas de flujo de seal, los elementos directamente enlazados formando una red de trabajo (Network)

La Fig. B7.1 ilustra dos simples ejemplos del diagrama de bloques de


funcin. En la Fig. B7.1a, 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.1b representa el uso
de un bloque de funcin. El retardo de la seal T_arranque se pone en
marcha con la entrada %I1.3 con el tiempo preestablecido de 7 segundos. El estado del retardo de la seal, T_arranque.Q, se asigna a la
salida %Q2.4.

TP301 Festo Didactic

B-93
Captulo 7

La direccin del flujo de seales es una red de izquierda a derecha. Si


una unidad de organizacin del programa consta de varias redes, estas son procesadas en secuencia de arriba a abajo.

7.2

Evaluacin
de redes

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 saltos condicionales e incondicionales. En la fig. B7.2 se utiliza un salto
condicional para realizar una derivacin en el programa.

%I 1.1
%M2.5

&

Variante_1

Variante_1:
%M2.1
%I 2.5

>=1

%Q1.0

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 identificador 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

Fig. B7.2:
Uso de un salto en FBD

B-94
Captulo 7

7.3

Estructuras
en bucle

Cuando se programa en el lenguaje FBD, hay que observar que dentro


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


%M4
%I 1
%I 2

&

>=1

b) estructura en bucle permitida


%M4
%I 1
%I 2

&

%M2.0

>=1

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

B-95
Captulo 8

Captulo 8
Diagrama de contactos

Festo Didactic TP301

B-96
Captulo 8

8.1

Elementos del
diagrama de
contactos

El lenguaje de diagrama de contactos (o diagrama en escalera), al


igual que del diagrama de bloques de funcin representa un lenguaje
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.

%M1.5

%Q3.5

Fig. B8.1:
Estructuta bsica
de un rengln

La Fig. B8.1 ilustra la estructura bsica de un regln. En este ejemplo,


el estado del flag %M1.5 est directamente asignado a la salida
%Q3.5. La tabla B8.1 contiene una lista de los elementos ms importantes asignados a un diagrama de contactos.
Contactos
Contacto normalmente abierto
/

Contacto normalmente cerrado

Contacto de flanco positivo

Contacto de flanco negativo

Bobinas
Bobina

Tabla B8.1:
Elementos del
diagrama de contactos

Bobina negada

Activacin de una bobina remanente

Desactivacin de una bobina remanente

Bobina activada por flanco positivo

Bobina activada por flanco negativo

TP301 Festo Didactic

B-97
Captulo 8

Un contacto normalmente abierto suministra el valor 1 cuando se activa el accionamiento del correspondiente interruptor. Un contacto normalmente 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 0 a 1 (flanco positivo) y de 1 a 0 (flanco negativo).
Con una bobina normal, el resultado (resultado de la operacin lgica
entre los contactos) es copiado a la variable especfica; 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 0. De forma
similar, la bobina de desactivacin remanente asume el valor 0 si el
resultado es 1. Se mantiene el estado 0 de la bobina.
Los flancos de las bobinas se activan si el resultado cambia de 0 a 1
(flanco positivo) o de 1 a 0 (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
%I 1.3

%M3.2

%Q2.1

b) Funcin OR
%I 1.5

%Q2.3

%M3.4
Fig. B8.2:
Conexiones bsicas
lgicas en diagrama
de contactos

La funcin AND es representada por medio de la conexin en serie de


dos contactos (fig. B8.2a). La salida %Q2.1 slo se activa si ambas
entradas %I1.3 y el flag %M3.2 se hallan activados. En todos los dems casos, la salida %Q2.1 es desactivada.

Festo Didactic TP301

B-98
Captulo 8

La funcin OR se obtiene a travs de la conexin en paralelo de contactos (fig. B8.2b). La salida %Q2.3 asume el valor 1, si la entrada
%I1.5 o el flag %F3.3 asumen el valor 1, o si ambas condiciones se
cumplen simultneamente.

8.2

Funciones y
bloques de
funcin

Aparte de los elementos de contacto y bobina, LD proporciona el uso


ilimitado de funciones y bloques de funcin siempre que esta 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 booleana y una salida booleana del bloque en cuestin. Si no es este el
caso, la entrada booleana con el parmetro formal EN (enable/habilitacin) se aada a las correspondientes funciones o mdulos de funcin
as como una salida booleana ENO (enable OK /habilitacin correcta).
Las entradas/salidas booleanas son necesarias para permitir que la potencia fluya a travs del bloque.

a) Incorporacin de funciones
Sumar_act

Suma_ok

EN ENO
Cantidad_1
Cantidad_2

Nivel_llenado

b) Invocacin de un bloque de funcin


T_Arranque
%I 1.3

Fig. B8.3:
Funciones y
bloques de funcin
en diagrama de contactos

T#7s

TON
IN
Q
ET
PT

%Q2.4

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 Cantidad_1 y Cantidad_2 se suman y el resultado de estas variables se
asigna a la variable Nivel_llenado. Al mismo tiempo, el valor de la salida ENO indica si la adicin ha sido ejecutada, activada y correcta
(ENO=1). Si el bloque no ha sido procesado correctamente, la salida
ENO asume el valor 0.

TP301 Festo Didactic

B-99
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 %I1.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


potencia, y como tal el procesamiento de una unidad de organizacin
del programa, es de izquierda a derecha y de arriba a abajo. De forma
similar la secuencia de procesamiento tambin puede cambiar en LD
utilizando elemento para el control de la ejecucin.

%I 1.1

8.3

Evaluacin de
los renglones
actuales.

%M2.5
Variante_1

Variante_1:
%M2.1

%Q1.0

%I 2.5

Fig. B8.4:
Salto condicional en LD

Si la condicin del salto, en este caso la operacin AND de la entrada


%I1.1 y el flag %M2.5 se cumple, se ejecuta un salto al rengln actual
con el identificador Variante_1. El procesamiento continua entonces a
partir de este rengln.

Festo Didactic TP301

B-100
Captulo 8

TP301 Festo Didactic

B-101
Captulo 9

Captulo 9
Lista de instrucciones

Festo Didactic TP301

B-102
Captulo 9

9.1

Lista de
Instrucciones

La lista de instrucciones es un lenguaje de programacin textual, tipo


ensamblador (assembler). Sus instrucciones son ms cercanas a las
rdenes procesadas en un PLC.
Un programa de control formulado en lenguaje de Lista de Instrucciones consiste en una serie de instrucciones, en las que cada instruccin
se empieza en una nueva lnea.
En la formulacin de una instruccin, se especifica un formato fijo. Una
instruccin (fig. B9.1) empieza con un operador con modificador opcional y, si es necesario para la operacin en cuestin, uno o varios operandos, separados por comas. Las instrucciones pueden ser precedidas por una etiqueta seguida de dos puntos. La etiqueta acta como
una direccin de salto. Las etiquetas son identificadas de la misma
forma que los smbolos. Si se utiliza un comentario, este debe representar el ltimo elemento de la lnea. Un comentario se inicia con la
cadena (*, y termina con la cadena *).

Instruccin

Etiqueta

Inicio:

Fig. B9.1:
Estructura de
una instruccin

Operador y
Modificador
LD
AND
ST

Operando

%I1.2
%M3.7
%Q2.4

Comentario

(* Pieza pres.
(* Taladro OK
(* Avance
(* estampador

*)
*)
*)
*)

El valor de la entrada %I1.2 se carga en el acumulador y se enlaza en


AND con el valor del flag %M3.7. El resultado es asignado a la salida
%Q2.4.

TP301 Festo Didactic

B-103
Captulo 9

9-2
Operador

Modificador

Operando

Descripcin/Significado

LD

Carga el operando especificado al


acumulador e iguala el resultado actual a
este operando

ST

Almacena el resultado actual en los


operandos especificados

BOOL

Activa el operando booleano al valor 1, si el


valor del resultado actual es un 1 booleano

BOOL

Desactiva el operando booleano a o, si el


valor del resultado actual es un 1 booleano

AND

N, (

BOOL

AND Booleano

&

N, (

BOOL

AND Booleano

OR

N, (

BOOL

OR Booleano

XOR

N, (

BOOL

OR Exclusivo Booleano

ADD

Adicin (Suma)

SUB

Sustraccin (Resta)

MUL

Multiplicacin

DIV

Divisin

GT

Comparacin: >

GE

Comparacin: >=

EQ

Comparacin: =

NE

Comparacin: < >

LE

Comparacin: <=

LT

Comparacin: <

JMP

C, N

Etiqueta

Salto a una etiqueta

CAL

C, N

Nombre

Invocacin de bloques de funcin

RET

C, N

Festo Didactic TP301

Operadores

Retorno de bloques de funcin


Procesamiento de una operacin

Tabla B9.1:
Operadores en
lista de instrucciones

B-104
Captulo 9

IEC 1131-3 define los operadores para la lista de instrucciones relacionadas en la tabla B9.1
Los operadores no estn enlazados con ninguna prioridad. Consecuentemente, las operaciones se procesan en la secuencia en la cual se
introducen en la lista de instrucciones. Si se desea una secuencia diferente, esta puede conseguirse con el uso de parntesis los denominados modificadores. La Fig. B9.2 explica el uso de algunos modificadores.
LDN

%I1.1

AND(

%I1.2

OR

%I1.3

JMPC

Marcha

El valor de la entrada %I1.1 es cargado


en forma negada al acumulador
Primero se evala el contenido del
parntesis - en este ejemplo las
entradas %I1.2 y %I1.3
se enlazan en OR el resultado
de la expresin entre parntesis
es enlazada en AND con el
contenido actual del acumulador
Se ejecuta el salto a la etiqueta Marcha
tan slo si el valor del resultado acabado de
ejecutar es un 1 booleano.

Fig. B9.2:
Uso y significado
de los modificadores

9.3

Funciones y
bloques de
funcin

En lista de instrucciones, tambin el uso de funciones y bloques de


funcin es ilimitado. Las funciones para tareas tpicas de tecnologa de
control, tales como la lgica booleana u operaciones aritmticas (vase
fig. B9.3.a) se realizan directamente a travs de los operandos especificados en la tabla B9.1.

a) Invocacin a travs de un operador


LD
GT
OR
ST

Temp
60
Manual_desc
Cerrar_puerta

(* Temperatura medida*)
(* Mayor de 60 *)
(* OR est activado el pulsador Manual_desc *)
(* Cerrar la puerta *)

b) Invocacin a travs de un nombre de funcin

Fig. B9.3:
Invocacin de funciones

LD
SHL
ST

%IW3
4
%QW2

(* Cargar la input word %IW3 *)


(* Desplazar %IW3 por 4 bits a la izquierda *)
(* Guardar el resultado en la output word %QW2 *)

TP301 Festo Didactic

B-105
Captulo 9

Las funciones ms complejas tales como las funciones de desplazamiento de bits se invocan con el nombre de la funcin situado en el
campo del operador. El resultado actual (en el acumulador) debe ser
utilizado como el primer argumento de la funcin. Si se requieren otros
argumentos, estos deben especificarse en el campo de operando separados por comas. El valor devuelto por la funcin, representa el nuevo resultado actual.
Los bloques de funcin pueden ser invocados segn diferentes mecanismos (fig. B9.4).
a) CAL con una lista de parmetros de entrada
CAL

T_arranque(IN := %I1.3, PT := T#7s )

b) CAL con almacenamiento/carga de parmetros de entrada separados


LD
ST

T#7s
T_arranque.PT

LD
ST

%I1.3
T_arranque.IN

CAL

T_startup

(*
(*
(*
(*
(*
(*
(*
(*

Cargar T#7s
Almacenar en T_aranque.PT
parmetros de entrada tiempo preselecc.
Cargar %I1.3
Almacenar T_arranque.IN
transferir parmetro para activacin
del mdulo
Invoc. de una copia del bloque T_arranque

*)
*)
*)
*)
*)
*)
*)
*)

Un requisito es que la variable T_arranque sea declarada como una


seal de retardo. La invocacin de un bloque de funcin puede establecerse claramente a travs del operador CAL con una lista de parmetros de entrada asociados.
La variable T_arranque de la Fig. B9.4a, declarada en todas partes
como una seal de retardo, representa por ello un bloque del tipo seal de retardo. Siendo un argumento actual, este se asigna al valor de
la entrada %I1.3 para la entrada de activacin IN y una duracin de
tiempo de t#7s para la entrada PT. Como resultado, el bloque de funcin T_arranque se invoca siguiendo la actualizacin de parmetros.
La transferencia de parmetros para un bloque de funcin tambin
puede realizarse por separado a partir de la invocacin del bloque de
funcin actual.

Festo Didactic TP301

Fig. B9.4:
Invocacin de
bloques de funcin

B-106
Captulo 9

Como se muestra en la fig. B9.4b, los valores del parmetro actuales


se cargan a travs de operaciones elementales IL y se asignan a las
entradas del bloque de funcin Solamente despus de esto es invocado el bloque de funcin T_arranque y procesado a travs de una instruccin CAL. La ventaja de este mtodo reside en el hecho que el
tiempo de actualizacin de los argumentos y la invocacin real del mdulo de funcin pueden hacerse por separado.

TP301 Festo Didactic

B-107
Captulo 10

Captulo 10
Texto estructurado

Festo Didactic TP301

B-108
Captulo 10

10.1 Expresiones

El lenguaje Texto Estructurado (ST = Structured Text) es un lenguaje


de alto nivel tipo Pascal, que incorpora los conceptos fundamentales
de un lenguaje moderno de alto nivel, en particular los principios ms
importantes para la estructuracin de datos e instrucciones. La estructuracin de datos representa un constituyente comn de los cinco lenguajes de programacin; la estructuracin de instrucciones, sin embargo, es tan slo una caracterstica importante del ST.
Una expresin es un constituyente elemental para la formulacin de
instrucciones. Una expresin consiste en operadores y operandos. Los
operandos que aparecen con ms frecuencia son datos, variables o
invocaciones a funciones. Sin embargo, un operando tambin puede
ser una expresin en s mismo. La evaluacin de una expresin suministra un valor que corresponde a uno de los tipos de datos estndar o
a un dato de un tipo definido por el usuario. Por ejemplo, si X es un
nmero REAL, entonces la expresin SIN(X) proporciona tambin un
nmero del tipo REAL. La tabla B10.1 contiene un resumen de los
operadores.

Tabla B10.1:
Operadores del lenguaje
Texto Estructurado

Operacin

Smbolo

Prioridad

Parntesis

(expresin)

la ms alta

Procesamiento de funcin

Nombre de la funcin
(Lista de parmetros transferidos)
Ejemplo: LOG(X), SIN(Y)

Exponenciacin

**

Signo
Complemento

NOT

Multiplicacin
Divisin
Mdulo

*
/
MOD

Adicin
Subtraccin

Comparacin

<, >, ,

Igualdad
Desigualdad

=
<>

AND Booleano

&, AND

OR Exclusivo Booleano

XOR

OR Booleano

OR

la ms baja

TP301 Festo Didactic

B-109
Captulo 10

Lo que sigue son ejemplos de expresiones:


SIN(X)
4*COS(Y)
AB
A+B+C

La evaluacin de una expresin consiste en aplicar los operadores a


los operandos, en donde los operadores se evalan en una secuencia
definida por su prioridad en la tabla B10.1. Un operador con una prioridad mayor es evaluado antes que un operador con una prioridad inferior.
A, B, y C son variables del tipo de dato INT; A sume el valor 1, B el
valor 2 y C el valor 3. La evaluacin de la expresin A+B*C proporciona el valor 7. Si se desea una secuencia diferente que la especificada
por la prioridad, ello es posible utilizando los parntesis. Utilizando los
valores numricos descritos antes, la expresin (A+B)*C proporciona el
valor 9.
Si un operador tiene dos operandos, el operando de ms a la izquierda
debe evaluarse primero. La expresin SIN(X)*COS(Y) se evala por lo
tanto en la secuencia: clculo de la expresin SIN(X), clculo de la
expresin COS(Y), seguida por el clculo del producto SIN(X) y
COS(Y).
Como se ha demostrado en el prrafo anterior, una funcin slo puede
ser invocada dentro de una expresin. La invocacin es formulada especificando el nombre de la funcin y la lista de argumentos entre parntesis.

Festo Didactic TP301

Ejemplo

B-110
Captulo 10

10.2 Instrucciones

La tabla B10.2 contiene una lista de posibles instrucciones en el lenguaje de Texto Estructurado. Una instruccin puede sobrepasar la longitud de una lnea, con lo que el salto de linea ser tratado de la
misma forma que un espacio en blanco.
Instruccin

Ejemplo

Asignacin :=

A := B;
CV := CV + 1;
Y := COS(X);

Invocacin de bloques
de funcin

RS_Zumb(S := Fallo_broca, R1 := Pulsador);


Zumb := RS_Zumb.Q1;

Retorno de funciones y bloque


sde funcin

RETURN;

Instrucciones de seleccin
IF

D:= B*B 4*A*C;


IF D < 0.0 THEN Number_Sln := 0;
ELSIF D = 0.0 THEN
Number_Sln := 1;
X1 := B / (2.0*A);
ELSE
Number_Sln := 2;
X1 := (B + SQRT(D)) / (2.0*A);
X2 := (B SQRT(D)) / (2.0*A);
END_IF;

CASE

CASE Voltage OF
101 ... 200: Display := too_large;
20 ... 100: Display := large;
2 ... 29: Display := normal;
ELSE
Display := too_small;
END_CASE;

Instrucciones de iteracin

Tabla B10.2:
Instrucciones del lenguaje
Texto Estructurado

FOR

Total := 0;
FOR I := 1 TO 5 DO
Total := Total + I;
END_FOR;

REPEAT

Total := 0;
I := 0;
REPEAT
I := I + 1;
Total := Total + I;
UNTIL I = 5
END_REPEAT;

TP301 Festo Didactic

B-111
Captulo 10

Instruccin

Ejemplo

Instrucciones de iteracin
(continuacin)
WHILE

Total := 0;
I := 0;
WHILE I < 5 DO
I := I + 1;
Total := Total + I;
END_WHILE;

Terminacin de bucles

EXIT;

Instruccin nula

;;

Asignaciones
Una asignacin es la forma ms simple de una instruccin. Esta reemplaza el valor actual de la variable a la izquierda de := con el valor de
la expresin a la derecha de :=. Cada asignacin termina con un punto
y coma. Una posible asignacin (tabla B10.2) es A := B en donde el
valor de la variable B es asignado a la variable A. Como resultado de
la asignacin CV := CV + 1, la variable CV es incrementada en 1 como
resultado de la expresin CV+1.

Bloques de funcin y funciones


En IEC 1131-3 se establece un mecanismo definido para la invocacin
y tambin para la salida anticipada de una funcin o de un bloque de
funcin.
Como se ha descrito, una funcin es invocada slo como parte de la
evaluacin de una expresin. La propia invocacin consiste en la especificacin del nombre de la funcin, seguida por los parmetros de entrada entre parntesis.
La invocacin de un bloque de funcin es anloga a la especificacin
del nombre de instancia (copia) del bloque de funcin. Esta es seguida
de una lista entre parntesis consistente en la asignacin de valores a
los parmetros de entrada. La especificacin del nombre del parmetro
de entrada es obligatorio, los parmetros individuales de entrada pueden indicarse en cualquier secuencia.

Festo Didactic TP301

Tabla B10.2:
Instrucciones en el
lenguaje
Texto Estructurado
(continuacin)

B-112
Captulo 10

Adems, no es esencial para todos los parmetros de entrada que se


les asigne un valor en cada invocacin. Si a un determinado parmetro
de entrada no se le asigna un valor en la invocacin, se aplica el valor
del parmetro previamente asignado o el valor inicial.
La tabla B10.2 contiene un ejemplo de una invocacin a un bloque de
funcin. Debe sonar un zumbador su una broca est defectuosa. El
estado del zumbador se almacena por medio de un bloque de funcin RS.
La instruccin RETURN sirve para permitir una salida anticipada de
una funcin o bloque de funcin. Lo que sigue es un ejemplo de la
utilizacin de la instruccin RETURN:
IF X < 0 THEN
Valor := -1;
Error := 1;
RETURN;
END_IF
Y := LOG(X);

Si el valor de X es menor de 0, el bloque conteniendo la secuencia de


instrucciones termina inmediatamente.

10.3 Instrucciones
de seleccin

Las instrucciones de seleccin conocidas tambin como instrucciones


de derivacin del programa estn disponibles en la forma de instrucciones IF y CASE. Pueden seleccionarse diferentes grupos de instrucciones y ejecutarse en relacin con una condicin definida. La unidad
del programa de organizacin puede ramificarse de diferentes formas.

Instruccin IF
La forma general de una instruccin IF es:
IF expresin booleana1 THEN instruccin(es)1;
[ ELSIF expresin booleana2 THEN instruccin(es)2; ]
[ ELSE instruccion(es); ]
END_IF;

TP301 Festo Didactic

B-113
Captulo 10

Las partes entre parntesis rectangulares son opcionales, es decir,


pueden producirse en una instruccin IF, pero no necesariamente.
La instruccin IF ms sencilla consiste en una construccin IF-THEN
(derivacin simple).
Esto se demuestra por el siguiente ejemplo
IF X < 0 THEN X := X;
END_IF;
Y := SQRT(X);

Si la condicin que sigue a la palabra clave IF es cierta, se ejecutan


las instrucciones que siguen a la palabra clave THEN. Si la condicin
no se cumple, las instrucciones en la parte THEN no se ejecutan.
En el caso de un ejemplo concreto esto significa: Si la variable X es
menor de 0, es decir, es negativa, se le aade un signo menos, con lo
que representa un valor positivo; si no es este el caso, se ejecuta
inmediatamente la funcin raz cuadrada.
Una derivacin simple puede conseguirse por medio de una construccin IF-THEN-ELSE
Error := 0;
IF Pieza_ok THEN Numero := Numero + 1;
ELSE Error := 1;
END_IF;

Las instrucciones que siguen a la palabra clave THEN se ejecutan, si


la condicin que sigue a la palabra clave IF se cumple; si la condicin
no se cumple, se ejecutan las instrucciones formuladas tras la palabra
clave ELSE.
El ejemplo dado, trata con piezas de produccin. Si la pieza es buena
(Pieza_ok = 1) se ejecuta la parte THEN, en este caso, la cantidad
(Numero) de piezas producidas correctamente se incrementa en 1; de
lo contrario se activa un bit para la deteccin del error.

Festo Didactic TP301

B-114
Captulo 10

Si debe programarse una derivacin para ms de dos ramificaciones,


puede emplearse una construccin IF-THEN-ELSIF. La tabla B10.2
ilustra esto por medio de un ejemplo, en donde se establecen las soluciones de la ecuacin de segundo grado AX2 + BX + C = 0. Si el
discriminante en este caso la variable B es menor de 0, se ejecuta
la subsiguiente parte THEN: no hay solucin, es decir, Num_sol := 0.
Si no se cumple la primera condicin, es decir, D es mayor o igual a 0,
ser evaluada la condicin que sigue a ELSIF: Si se cumple, es decir,
D igual a 0, se ejecutarn las instrucciones que siguen a la palabra
clave THEN: La nica solucin existente es especificada como X1.
De lo contrario (siendo D mayor de 0). se ejecutan las lneas que siguen a la instruccin ELSE: Se especifican las dos soluciones X1 y X2.

Instruccin CASE
Si debe hacerse una seleccin entre varios grupos de instrucciones
posibles, puede utilizarse la instruccin CASE.
La forma estndar de una seleccin mltiple con CASE es:
CASE Selector OF
Valor1: instruccion(es)1;
Valor2: instruccion(es)2;
...
ValorN: instruccion(es)n;
[ ELSE
instruccion(es); ]
END_CASE;

La instruccin CASE consiste en un selector, que suministra una variable del tipo INT durante su ejecucin y una lista de grupos de instrucciones. A cada grupo se le asigna un valor (etiqueta). Los valores estn separados por comas si un grupo de instrucciones depende de
varios valores. Los valores tambin pueden representar variables del
tipo INT.

TP301 Festo Didactic

B-115
Captulo 10

Con la evaluacin de la instruccin CASE, primero se determina el


valor del selector, seguido por la ejecucin del primer grupo de instrucciones a los cuales se aplica el valor del selector calculado. Sin el valor
del selector no est contenido en ninguno de los grupos de instrucciones, se ejecutan las instrucciones que siguen a la palabra clave ELSE.
Si no hay ELSE, no se ejecuta ninguna instruccin.
En el ejemplo dado en la tabla B10.2, el texto para una instruccin se
selecciona en relacin con el valor medido disponible. Los valores para
la seleccin de la instruccin son el tipo INT.

A menudo es necesario ejecutar instrucciones repetidas veces (bucles


de programa). Si el nmero de repeticiones ha sido previamente definido, se utiliza el bucle FOR, de lo contrario se utiliza en bucle REPEAT
o el WHILE.

Bucle FOR
La representacin estndar para el bucle FOR es:
FOR Variable := Expresion TO expresion [ expresion BY ] DO
instruccion(es);
END_FOR;

La denominada variable de control se establece a un valor inicial especfico y se incrementa a cada bucle que se ejecuta hasta que la variable de control alcanza el valor de la variable final. Por lo tanto, un
simple bucle FOR se ejecuta de acuerdo con el siguiente mecanismo:
FOR variable de recuento := valor inicial TO valor final DO
Instruccion(es);
END_FOR;

Si no se especifican incrementos, como se ha formulado arriba, la variable de control aumenta automticamente en 1 a cada bucle completo. Si se necesita un incremento diferente, esto puede especificarse
por la palabra clave BY, seguida por el valor deseado. Sin embargo, la
variable de control no puede ser cambiada dentro del bucle es decir,
las instrucciones se ejecutan repetidamente. Adems, la variable de
control, el valor inicial y el valor final deben ser expresiones del mismo
tipo de dato entero (INT, SINT, DINT).

Festo Didactic TP301

10.4 Instrucciones
de iteracin

B-116
Captulo 10

La prueba para la terminacin de la condicin se hace al inicio de cada


iteracin, de forma que las instrucciones no son ejecutadas si el valor
inicial excede del valor final. Una caracterstica adicional de los bucles
FOR es que estos pueden anidarse en cualquier momento.
Un ejemplo de la aplicacin de un bucle FOR se da en la tabla B10.2.
En este ejemplo, se realiza una suma de los nmeros 1 al 5 a travs
de un bucle. Cuando el bucle es ejecutado por primera vez, I tiene el
valor inicial 1, el valor de la variable Total es tambin 1. A la segunda
ejecucin del bucle, I tiene el valor 2, la variable Total alcanza el valor
1+2 = 3 etc. Tras el quinto y ltimo bucle, el valor de Total es 15, la
variable de recuento ha alcanzado el valor final 5, y con ello se completa el procesamiento del bucle.

Bucle REPEAT
A diferencia del bucle FOR, en el bucle REPEAT el nmero de iteraciones no est previamente definido por medio de un valor final especificado. En su lugar, se utiliza una condicin, denominada la condicin
de terminacin.
La forma del bucle REPEAT es como sigue
REPEAT
instruccion(es);
UNTIL Expresin Booleana
END_REPEAT;

La terminacin del bucle REPEAT se verifica tras la ejecucin de las


instrucciones de bucle. Por lo tanto el bucle se ejecuta por lo menos
una vez. La condicin de terminacin debe ser cambiada en el bucle,
ya que de lo contrario el bucle se ejecutara indefinidamente. Por lo
tanto, es importante asegurar que el bucle puede realmente completarse. Debe comprobarse lo siguiente:
Incluye realmente la condicin de terminacin una variable, de forma que la condicin pueda suministrar el valor 1 (cierto)?
Se alcanza alguna vez la condicin de terminacin?

TP301 Festo Didactic

B-117
Captulo 10

Un ejemplo de utilizacin del bucle REPEAT se demuestra en la tabla


B10.2. Aqu tambin, se suman los primeros cinco nmeros enteros no
negativos.
En la primera ejecucin del bucle, I tiene el valor 1, el valor de Total es
tambin 1. Una comprobacin de la condicin de terminacin muestra
que esto no se cumple, por lo que el bucle se ejecuta de nuevo. El
bucle se ejecuta repetidamente hasta que la condicin de terminacin
es cierta. Este ser el caso hasta la quinta ejecucin del bucle en la
que termina. Aqu tambin, el valor de la variable Total es 15.

Bucle WHILE
El bucle WHILE representa una segunda opcin para la formulacin de
iteraciones especificando una condicin de terminacin. La representacin estndar de un bucle WHILE es:
WHILE Expresin Booleana DO
instruccion(es);
END_WHILE;

Si la expresin Booleana de la palabra clave WHILE se cumple, se


ejecutan las instrucciones que siguen a la palabra clave DO. la terminacin del bucle WHILE es por lo tanto verificada antes de la ejecucin
de las instrucciones del bucle. Por lo tanto, las instrucciones del bucle
puede ser que no se ejecuten. La condicin de terminacin debe cambiar en las instrucciones que se repiten.
Es importante que las condiciones del bucle se cumplan realmente
para que el procesamiento del bucle pueda terminarse.
La tarea de sumar los nmeros 1 al 5 tambin puede realizarse utilizando un bucle WHILE (tabla B10.2). A diferencia del bucle REPEAT,
el bucle WHILE se ejecuta repetidamente hasta que la condicin de
terminacin es cierta. En realidad esto significa que el bucle se ejecutan mientas I sea menor que 5. Si es igual o mayor que 5, el bucle
deja de procesarse.
En principio, un bucle REPEAT puede reemplazarse por un bucle WHILE y viceversa.

Festo Didactic TP301

B-118
Captulo 10

Instruccin EXIT para terminar un bucle


La instruccin EXIT debe utilizarse para terminar iteraciones antes del
final o de que se cumpla la condicin de terminacin.
El siguiente programa ilustra el ejemplo de una instruccin EXIT:
S := 0;
FOR I := 1 TO 2 DO
FOR J := 1 TO 3 DO
IF error THEN EXIT;
END_IF;
S := S + J;
END_FOR;
(* Si se ejecuta la instruccin EXIT se realiza un salto a este punto *)
S := S + I;
END_FOR;

Si la instruccin EXIT se halla dentro de un bucle anidado, la salida


ser desde el bucle ms profundamente anidado en el que se halla la
instruccin EXIT. La siguiente instruccin a ejecutar es la instruccin
inmediatamente despus del fin de bucle (END_FOR, END_WHILE,
END_REPEAT). En el ejemplo dado en la fig, B10.1, esta es la instruccin "S := S + I;".
En el caso del ejemplo citado se aplica lo siguiente: Si el valor de la
variable booleana Error es igual a 0, el algoritmo para la variable S
proporciona el valor 15. Si la variable Error tiene el valor 1, el valor
calculado por S es 3.

TP301 Festo Didactic

B-119
Captulo 11

Captulo 11
Diagrama de funciones secuencial

Festo Didactic TP301

B-120
Captulo 11

11.1 Introduccin

IEC 1131-3 define el diagrama de funciones secuencial (Sequential


Function Chart / SFC) como una herramienta de programacin importante para sistemas de control. Su clara estructura de distribucin proporciona una forma de representacin del programa especialmente clara para sistemas de control y como tal es una de las partes ms importantes de IEC 1131-3.
Cada programa de un sistema de control secuencial consta de Etapas
y de Transiciones (condiciones de habilitacin de la etapa). Aparte de
esto contiene otras informaciones importantes concernientes a la ejecucin del programa y el tipo de continuacin del programa.
Si la ejecucin del programa no es nica, sino que debe elegirse un
determinado camino entre varios posibles, la representacin del diagrama de funciones secuencial lo indica de una forma grfica particular.

11.2 Elementos del


diagrama de
funciones
secuencial

La tarea fundamental de un diagrama de funciones secuencial es estructurar un programa de control en etapas individuales y en transiciones (condiciones de habilitacin de la etapa), interconectadas por enlaces directos.
Esto requiere una representacin en forma grfica, que hace claramente reconocible la intencin del programa.
El diagrama de funciones secuencial IEC 1131-3 est estructurado en
forma de un pequeo juego de elementos grficos bsicos definidos,
de sencilla construccin. Estos elementos bsicos deben combinarse
para crear un programa de control. El cmo se consigue esto, est
definido por unas pocas reglas sencillas en el estndar.
El lenguaje de diagrama de funciones secuencial est basado, en la
medida de lo posible, en el lenguaje de diagrama de funciones segn
DIN 40 719 Parte 6 o IEC 848. Las nicas enmiendas hechas fueron
las necesarias para poder generar rdenes ejecutables para un PLC a
partir de un elemento de documentacin. Un ejemplo de esto es el
calificador S. En la documentacin estndar, este calificador se utiliza
para definir el modo de accin, es decir, la activacin y desactivacin
de un operando. Un PLC requiere rdenes nicas. Esta es la razn por
la que el diagrama de funciones secuencial emplea dos calificadores
para realizar los dos modos de accin: el calificador S para activar
(SET) y el R para desactivar (RESET).
Dado que los diagramas de funcin secuenciales requieren la memorizacin de la informacin del estado (las etapas activas, etc., en un
momento dado), las nicas unidades de organizacin del programa
que pueden estructurarse utilizando estos elementos son los Programas y los Bloques de Funcin.

TP301 Festo Didactic

B-121
Captulo 11

a) Etapa con identificador ***

***

b) Etapa inicial con identificador ***

***

c) Bloque de accin , conteniendo las


acciones asignadas a una etapa
Campo a: Calificador de la accin
Campo b: Nobre de la accin
Campo c: Variable de realimentacin
Campo d: Contenido de la accin

a b

d) Transisicn con identificador ***


o condicin de transicin ***

***

e) Derivacin alternativa

Etapa_3
E

f) Unin de rutas alternativas

Etapa_4

Etapa_5

Etapa_6

Etapa_7

G
Etapa_8

Festo Didactic TP301

c
d

Tabla B11.1:
Elementos de un diagrama
de funciones secuencial
(representacin grfica)

B-122
Captulo 11

Etapa_3

g) Derivacin paralela (simultnea)

Tabla B11.1:
Elementos del diagrama
de funciones secuencial
(representacin grfica,
continuacin)

Etapa_4

Etapa_5

Etapa_6

Etapa_7

h) Unin de rutas paralelas

M
Etapa_8

La Etapa
Una etapa contiene varias partes de ejecucin del programa de control.
Las salidas solamente pueden ser activadas o desactivadas las etapas.
Esta significa tambin que todas las variables de correccin que se
emiten a la planta conectada con el programa de control, slo pueden
programarse en estas etapas.
La parte de ejecucin asignada a una etapa, las denominadas acciones, son formuladas dentro de los bloques de accin.
Una etapa puede estar activa, con su accin asociada siendo ejecutada en aquel momento, o inactiva. De esta forma, el estado del sistema
conectado est definido en cualquier momento por el juego de etapas
activas en el programa de control.
Como se muestra en la tabla B11.1a, una etapa se representa grficamente por un bloque. Cada etapa tiene un nombre simblico, que puede ser libremente seleccionado por el usuario. El mismo juego de reglas se aplica para el nombre de la etapa que el mencionado para los
identificadores simblicos: un nombre simblico puede consistir slo de
letras maysculas y minsculas, nmeros y el sigo de subrayado, y
debe empezar siempre con una letra o el signo de subrayado.

Fig. B11.1:
Etapas con nombres
de etapa

Motor_3_activo

Vaco_inactivo

TP301 Festo Didactic

B-123
Captulo 11

Todas las etapas de un programa o bloque de funcin formuladas en


un diagrama de funciones secuencial deben tener nombres diferentes.
Aunque dos etapas tengan las mismas partes de ejecucin, deben ser
designadas dos veces.
La razn de esto es la siguiente:
La informacin se memoriza en el control para cada etapa. La asignacin nica de esta informacin a una etapa as como el acceso a estos
datos se hace a travs del nombre de la etapa.
El usuario puede as obtener informacin en relacin a:
el estado actual de una etapa (activa, inactiva),
el tiempo que una etapa ha estado activa desde el inicio.
La tabla B11.2 ilustra el acceso a los datos de la etapa.
a)

Motor_3_activo.X

Variable booleana indicando si la etapa Motor_3_activo


se halla activa (Motor_e_activo.X=1) o inactiva (=0)

b)

Motor_3_activo.T

Variable del tipo TIME indicando el tiempo que ha


estado activa la etapa Motor_3_activo desde el inicio.

La evaluacin de los datos citados puede ser til en relacin a la supervisin del sistema conectado. Pueden tambin surgir aplicaciones
que requieran el uso de variables en el propio programa de control.

Festo Didactic TP301

Tabla B11.2:
Informacin relativa a una
etapa

B-124
Captulo 11

Un caso especial dentro del elemento etapa es la denominada etapa


principal (tabla B11.1b). Esta se dibuja grficamente por medio de una
doble lnea.
Cada red en un diagrama de funciones secuencial tiene una sola etapa
inicial, que es ejecutada como primera etapa dentro de una red.
Como ya se ha mencionado, la importancia de un diagrama de funciones secuencial reside en su representacin grfica claramente estructurada de un programa de control. Sin embargo, tambin puede ser til
representar estructuras secuenciales textualmente. El estndar IEC
1131-3 proporciona un equivalente de representacin textual de elementos SFC para ello, que es como sigue para el elemento etapa:

STEP Motor_3_activo
(* Contenido de la etapa *)
END_STEP

Fig. B11.2:
Representacin textual
de las etapas

STEP Vacio_inactivo
(*Contenido de la etapa*)
END_STEP

La representacin textual de estructuras secuenciales puede, segn el


fabricante, ser parte de la documentacin de un programa de control;
este tipo de distribucin de las estructuras secuenciales no tiene ninguna restriccin en cuanto al formato y juego de caracteres para la impresin.
Ademas, para programas de control en representacin textual estandarizada, puede ser posible que sean porttiles entre PLCs de diferentes
fabricantes.

La transicin
Una transicin o condicin de habilitacin de una etapa contiene las
condiciones lgicas que permiten la transicin, de acuerdo con el programa, desde una etapa a la siguiente.
Como puede verse en la tabla B11.1d, la transicin est representada
por una lnea horizontal que cruza el enlace vertical entre etapas. Cada
transicin tiene una condicin de transicin, que es el resultado de la
evaluacin de una expresin booleana. La condicin de transicin puede formularse en cualquiera de los lenguajes IEC 1131-3, tales como
LD, FBD, IL o ST.

TP301 Festo Didactic

B-125
Captulo 11

Una condicin de transicin o en cierta y entonces tiene el valor 1, o


es falsa y tiene el valor 0. Solamente si la condicin es cierta, se prosigue la ejecucin del programa o el bloque de funcin en este punto.
Si una condicin es siempre cierta, puede ser identificada simplemente
con el nmero 1 en la transicin. Las condiciones de transicin de este
tipo que son siempre ciertas pueden producirse frecuentemente en un
programa o bloque de funcin en un diagrama de funciones secuencial.

Condicin de transicin siempre cierta

Condicin de transicin siempre falsa

0
Tabla B11.3:
Transiciones especiales

Interconexin de etapas y condiciones de habilitacin de etapas


En la prctica, no puede conseguirse mucho con una simple etapa o
con una transicin. Por lo tanto, un programa de control representado
en diagrama de funciones secuencial estar compuesto siempre por
una sucesin de muchas transiciones y etapas.
Una secuencia de transiciones y etapas se denomina cadena de etapas, secuencia o tambin recorrido.

Etapa_5
D
Etapa_6
E
Etapa_7
F

Festo Didactic TP301

Fig. B11.3:
Etapas y transiciones
en secuencia

B-126
Captulo 11

Aqu, las transiciones y etapas deben alternarse continuamente. El recorrido lgico a travs de esta representacin es siempre de arriba a
abajo. El siguiente comportamiento puede verse en el ejemplo mostrado en la figura B11.3:
Asumiendo que la etapa Etapa_5 est activa, la Etapa_5 permanece
activa hasta que la transicin D sea cierta. El cumplimiento de las condiciones de transicin producen la desactivacin de la Etapa_5 y la
activacin de la siguiente Etapa_6. En el momento en que la Etapa_6
est activa, se examina la transicin E de control. Si la transicin E es
cierta, termina la Etapa_6 y se procesa la Etapa_7, etc.

La derivacin alternativa
A menudo es necesario programar una derivacin en un programa de
control, con lo que el programa puede continuar en diferentes lugares
en este punto.
La derivacin alternativa a diferentes recorridos se representa por el
correspondiente nmero de transiciones tras la lnea horizontal. En el
ejemplo de la tabla B11.1e, se sigue la ruta hacia la Etapa_4 si la
transicin E es cierta y la F falsa, o hacia la Etapa_5, si la transicin F
es cierta y la E falsa.
La correspondiente contrapartida a la derivacin alternativa es la unin
de rutas alternativas, en las que las transiciones deben situarse siempre sobre la lnea horizontal.
El flujo del programa en la tabla B11.1f pasa de la Etapa_6 a la Etapa_8 si la transicin G es cierta o de la Etapa_7 a la Etapa_8 si la
transicin H es cierta. El factor decisivo aqu es la ruta que haya seguido el control para alcanzar esta unin de rutas alternativas. Si esta se
realiza a travs de la Etapa_6, la condicin H no tiene significado alguna. Anlogamente si el programa de control ha seguido la ruta hacia la
Etapa_7, la condicin G no se evala, ya que no interviene.
Hay que observar que en el caso de una derivacin alternativa, el programa de control sigue solamente una de las rutas. Por ello no es
obligatorio que las transiciones de las derivaciones sean mutuamente
excluyentes.

TP301 Festo Didactic

B-127
Captulo 11

Si no existen otras especificaciones, se sigue la ruta que se halla ms


a la izquierda. Por lo tanto, la prioridad para el clculo de las transiciones se realiza de izquierda a derecha.
Esta es probablemente las variante ms comunmente empleada por
los fabricantes de controles para la consecucin de derivaciones alternativas.
Por todo ello, una seccin de un programa o bloque de funcin con
una triple derivacin alternativa podra ser como sigue:

Etapa_3
D
Etapa_4
G

E
Etapa_5
H

F
Etapa_6
I

Etapa_7

Sin embargo, el estndar IEC 1131-3 tambin ofrece la facilidad para


el usuario de definir la prioridad durante la ejecucin de las transiciones. La definicin de la funcionalidad de las derivaciones alternativas
en IEC 848, que requiere que el usuario programe una exclusin mtua de las condiciones de transicin, est tambin soportada por IEC
1131-3 como un tercer mtodo.

Festo Didactic TP301

Fig. B11.4:
Derivacin alternativa:
Procesamiento de
transiciones de
izquierda a derecha

B-128
Captulo 11

A diferencia de los ejemplos anteriores, los nmeros en la ruta, en la fig.


B11.5 indican la prioridad definida por el usuario para la evaluacin de la
transicin. La ruta con el nmero ms bajo tiene la mayor prioridad.

Etapa_7
2

Fig. B11.5:
Derivacin alternativa
con prioridad definida
por el usuario

Etapa_8

Etapa_9

As, la transicin evoluciona de la Etapa_7 a la Etapa_9, si las transiciones D y E son ciertas, o de la Etapa_7 a la Etapa_8 si la transicin
D es cierta y la transicin E es falsa.
Una estructura en bucle puede considerarse como un caso especial de
derivacin alternativa, en la que uno o varias etapas regresan a una
etapa precedente.

Etapa_3
C
Etapa_4

D
Etapa_5

E
Fig. B11.6:
Representacin
de un bucle

Etapa_6

En la fig. B11.6, el flujo del programa evoluciona desde la Etapa_5 a la


Etapa_4 si la condicin F es cierta y la E es falsa. De esta forma
puede repetirse la evolucin de la secuencia Etapa_4 a Etapa_5.

TP301 Festo Didactic

B-129
Captulo 11

La derivacin paralela
Un elemento funcional completamente diferente en el diagrama de funciones secuencial es la derivacin paralela.
Esta se representa por una doble lnea y una transicin encima de esta
lnea (tabla B11.1g). Cuando se cumple la transicin B, se produce una
evolucin de la Etapa_3 a la Etapa_4 y Etapa_5. Estas dos etapas se
ejecutan simultneamente.
Una derivacin en paralelo determina que los caminos conectados deben ser activados simultneamente y deben evolucionar independientemente uno de otro. En el caso opuesto, al finalizar los recorridos paralelos, la transicin se representa siempre bajo la doble lnea
horizontal.
La unin paralela contiene un mecanismo para la sincronizacin. Slo
cuando los recorridos procedentes de arriba se han ejecutado completamente, se evala la subsecuente transicin. Si es cierta, se realiza la
transicin a la siguiente etapa. En la tabla B11.1h esto significa: ambas
etapas Etapa_6 y Etapa_7 deben haber transcurrido antes de la evaluacin de la transicin F.

F
Etapa_4

Etapa_5

Etapa_6

G
Etapa_7

Cuando se ha cumplido la condicin de habilitacin F, los tres recorridos con las etapas Etapa_4, Etapa_5 y Etapa_6 y Etapa_7 deben evolucionar simultneamente.
Dependiendo del contenido de la transicin G entre las dos etapas
Etapa_6 y Etapa_8, el programa de control puede tener que esperar
hasta que se cumpla la transicin G. Por lo tanto, la transicin inferior
H slo se examina si el recorrido de la derecha ha evolucionado completamente. Este slo puede suceder si la transicin G en este recorrido se ha cumplido.

Festo Didactic TP301

Fig. B11.7:
Representacin de una
derivacin en paralelo triple

B-130
Captulo 11

11.3 Transiciones

Cada transicin es asignada a una condicin de transicin (condicin


de habilitacin de la etapa). Esto lo proporciona el resultado de una
ecuacin Booleana.
En el caso ms simple, una condicin de habilitacin de la etapa puede ser especificada por la interrogacin de una entrada del control u
otra variable booleana. Sin embargo, es tambin posible programar
condiciones de habilitacin de la etapa considerablemente ms complejas.
Formulacin de condiciones de transicin
Las condiciones de transicin pueden programarse en los siguientes
lenguajes
Diagrama de contactos
Diagrama de funciones
Lista de instrucciones
Texto estructurado
El contenido de la condicin de transicin o bien est especificada directamente en la transicin (vase fig. B11.8) o enlazada con la transicin a travs de un nombre de transicin (vase fig. B11.9).

a) Condicin de transicin
en lenguaje LD

%IX3

%MX1

Etapa_3

Etapa_4

Etapa_3

b) Condicin de transicin
en lenguaje FBD
%IX3

&

%MX1
Etapa_4

c) Condicin de transicin
en lenguaje ST

Etapa_3

%IX3 & %MX1


Fig. B11.8:
Especificacin directa
de una condicin
de transicin

Etapa_4

TP301 Festo Didactic

B-131
Captulo 11

Aqu, dos resultados estn conectados a travs de una funcin lgica


AND, con lo que la condicin de transicin no se cumplir hasta que
ambas entradas %IX3 y el flag %MX1 asuman el valor 1.
La seal pasa de izquierda a derecha en los lenguajes grficos LD y
FBD, la parte LD o FBD se define a la izquierda, junto al smbolo de la
transicin (lnea horizontal).
La expresin Booleana en el lenguaje ST se define a la derecha del
smbolo de transicin.

Etapa_3
Tran_3_4

Nombre de la transicin

Etapa_4

a) Condicin de transicin
en lenguaje LD

TRANSITION Tran_3_4:
%IX3
%MX1 Tran_3_4

END_TRANSITION
b) Condicin de transicin
en lenguaje FBD

TRANSITION Tran_3_4:
%IX3
%MX1

&

Trans_3_4

END_TRANSITION
c) Condicin de transicin
en lenguaje IL

TRANSITION Tran_3_4:
LD %IX3
AND %MX1
END_TRANSITION

d) Condicin de transicin
en lenguaje ST

TRANSITION Tran_3_4:
: = %IX3 & %MX1;
END_TRANSITION

Festo Didactic TP301

Fig. B11.9:
Asignacin de una
condicin de transicin,
especificando un nombre
para la transicin

B-132
Captulo 11

Si se utiliza un nombre de transicin como mecanismo de asignacin


de una condicin de transicin, el nombre de la transicin debe referirse a una construccin TRANSTION...END_TRANSITION.
La condicin de transicin se formula dentro de esta construccin y el
resultado booleano es reproducido en el nombre de la transicin.
Los nombres de transicin dentro de una unidad de organizacin de
programa, como los nombres de las etapas, deben diferir unos de
otros. Un nombre se formula de acuerdo con las reglas IEC 1131-3
aplicables a los identificadores.
IEC 1131-3 define tambin una representacin textual equivalente para
el elemento grfico Transicin. La verdadera condicin de transicin se
programa o bien en lenguaje de lista de instrucciones o en texto estructurado.

a) Condicin de transicin formulada en lenguaje ST


STEP Etapa_3: END_STEP
TRANSITION FROM Etapa_3 TO Etapa_4
:= %IX3 & %MX1;
END_TRANSITION
STEP Etapa_4: END_STEP
b) Condicin de transicin formulada en lenguaje IL

Fig. B11.10:
Representacin
textual de transiciones

STEP SEtapa_3: END_STEP


TRANSITION FROM Etapa_3 TO Etapa_4
LD %IX3
AND %MX1;
END_TRANSITION
STEP Etapa_4: END_STEP

TP301 Festo Didactic

B-133
Captulo 11

Una etapa representa la parte de ejecucin de un diagrama de funciones secuencial. Slo dentro de las etapas puede un programa o un
bloque de funcin, dentro de un control, influir en el sistema conectado
a travs de sus salidas, activando o desactivando las salidas.

11.4 Etapas

Estructura de una etapa dentro de las acciones


Cada etapa puede contener varias acciones. Cada una de estas acciones realiza una tarea para el sistema conectado. La estructura de una
etapa en acciones individuales inicialmente es tan slo una funcin de
ordenacin. Esto hace ms clara la etapa, ya que crea lmites claramente definidos entre las etapas de las tareas individuales. Sin embargo, ya que cada accin tiene asignado un calificador, la estructuracin
de una etapa en acciones individuales tambin define una funcionalidad adicional.
Una etapa que no contenga ninguna accin puede ser considerada
como un caso especial. Su nica finalidad es separar dos condiciones
de habilitacin de etapa, que van a ser evaluadas consecutivamente.
Ello permite una funcin de espera, en la que la primera condicin de
habilitacin de la etapa tiene prioridad, independientemente de si la
segunda se ha cumplido o no, y la segunda condicin de habilitacin
de la etapa debe cumplirse a continuacin.
Bloques de accin
La programacin grfica de etapas se realiza a travs de bloques de
accin individuales. cada accin es, por lo tanto, conectada con una
caracterstica particular.
Un bloque de accin es representado en forma tabular, que contiene
posiciones fijas para la especificacin del calificador de la accin, el
nombre de la accin y el contenido de la accin. Adems, puede tambin introducirse una variable de realimentacin.

a b

c
d

Campo a:

Campo b:
Campo c:
Campo d:

Calificador de la accin:
N = no memorizante
S = activar, memorizante
R = desactivar
P = puls (nico)
L = limitado en el tiempo
Nombre de la accin
Variable de realimentacin
Contenido de la accin

Festo Didactic TP301

D
DS
SD
SL

= retardado en el tiempo
= retard. en tiempo y memoriz.
= memoriz y retardado en tiempo
= memoriz. y limitado en tiempo

Fig. B11.11:
Representacin grfica
de un bloque de accin

B-134
Captulo 11

De nuevo, el nombre b de una accin representa un identificador simblico estndar, que acta puramente como un medio de diferenciacin
y no tiene ms significado.
Ya que la lista de acciones a menudo forma parte de una etapa, tambin puede ser representada junto con esta.

Etapa_8
Var_1

L
Accin_1
T#10s
Accin_2
P
Accin_3
N

Var_1

Fig. B11.12:
Lista de bloques de accin

La asignacin de acciones a una etapa en forma grfica se realiza por


medio de bloques de accin.
Sin embargo, la asignacin tambin puede formularse textualmente. En
el caso del ejemplo mostrado en la fig, B11.12, esto resulta en la siguiente representacin:

Fig. B11.13:
Representacin textual de
una etapa con acciones

STEP Etapa_8
Accin_1( L, T#10s, Var_1 );
Accin_2( P );
Accin_3( N );
END_STEP

El contenido de una accin, es decir, la propia accin, puede definirse


por medio de varios mtodos:
Especificacin de una variable booleana
Programacin en lista de instrucciones
Programacin en texto estructurado
Diagrama de contactos
Diagrama de funciones
Diagrama de funciones secuencial

TP301 Festo Didactic

B-135
Captulo 11

La utilizacin de una variable booleana representa una forma simple y


frecuentemente utilizada de una accin. En muchos casos, sin embargo, se requieren acciones ms complejas conteniendo una conexin
lgica til de informacin diferente.
En los ejemplos B11.14 a B11.16, la salida %QX1.2 se activa, si la
entrada %IX0.5 est activa o si estn activos los flags %MX1 y %MX3.
Si no es este el caso, la salida %QX1.2 se desactiva.
Accin_2
>=1

%IX0.5

%QX1.2

&

%MX1
%MX3

Fig. B11.14:
Formulacin de acciones:
declaracin grfica en FDB

Accin_2
%IX0.5

%QX1.2

%MX1 %MX3

Lenguaje IL
ACTION Accin_2:
LD %IX0.5
OR ( %MX1
AND %MX3
)
ST %QX1.2
END_ACTION

Lenguaje ST
ACTION Accin_2:
%QX1.2 := %IX0.5 OR (%MX1 AND %MX3);
END_ACTION

En lugar de una red individual de una secuencia de instrucciones, tambin son posibles varias redes dentro de una accin en lenguajes textuales. De esta forma, es posible incorporar una gama muy amplia de
acciones en una etapa y la propia etapa puede seguir contiendo estructuras secuenciales (fig. B11.17).

Festo Didactic TP301

Fig. B11.15:
Formulacin de acciones:
Declaracin grfica en
lenguaje LD

Fig. B11.16:
Formulacin de acciones:
Declaracin textual

B-136
Captulo 11

Accin_4

Marcha
Pieza_presente
Color

Fig. B11.17:
Formulacin de acciones:
Inclusin de elementos
SFC en una accin

C_ok

L
Determinar_color
T#1s

Si hay campos individuales de un bloque de accin que no se necesitan, tales como por ejemplo, si una variable Booleana se utiliza como
contenido de la accin, es permisible una posterior simplificacin en la
representacin de un bloque de accin.

Fig. B11.18:
Representacin simplificada
de un bloque de accin

%QX12

Una variable de realimentacin (campo c) puede introducirse en cada


bloque de accin. Las variables de realimentacin son programadas
por el usuario dentro de las acciones e indican su condicin de finalizacin, desbordamiento de tiempo o error. La Fig, B11.19 indica una aplicacin recurrente que se produce con frecuencia. Aqu, la secuencia de
etapas y transiciones est estructurada de forma tal que la accin de un
paso establece la subsecuente condicin de habilitacin de la etapa.

Etapa_2

Cilindro_1

Pos_1

S
S

Cilindro_2
Vacio_activo

Vac_on

Cilindro_1

Pos_2

Pos_1
Etapa_3

Vac_on
Etapa_4

Pos_2

Fig. B11.19:
Uso de variables
de realimentacin

TP301 Festo Didactic

B-137
Captulo 11

Modo de accin de los calificadores de accin


El tipo de ejecucin de las acciones programadas por el usuario se
define por el calificador de accin asociado.
IEC 1131-3 define los siguientes calificadores de accin
N Non-stored (no memorizante)
S Set (Activacin - Memorizante)
R Reset (Desactivacin - Memorizante)
P Pulse (Pulso nico)
L Time limited (Limitado en el tiempo)
D Time delayed (Retardado en el tiempo)
DS Time delayed and stored (Retardado en el tiempo y memorizante
SD Stored and time delayed (Memorizante y retardado en el tiempo)
SL Stored and time limited (Memorizante y limitado en el tiempo)
Cada accin es el equivalente de exactamente uno de estos calificadores. Adems, los calificadores L, D, DS, SD, SL tienen una duracin
asociada del tipo Time (Tiempo), ya que estos definen un comportamiento temporal de la accin.
Los calificadores tienen un significado definido con precisin. Si una
etapa est inactiva, no se ejecuta ninguna de las acciones de la etapa.
Dentro de una etapa activa, se aplican los siguientes mtodos para la
ejecucin de un calificador de accin.

N No memorizante
la accin se ejecuta mientras la etapa est activa.

N
Etapa
activa
%QX12

%QX12

1
0
1
0

En el ejemplo citado, la salida %QX12 est activada mientras la etapa


que contiene esta accin est activa. Al finalizar la etapa, es decir,
cuando se cumple la condicin de habilitacin de la etapa siguiente, la
salida se desactiva automticamente.

Festo Didactic TP301

Fig. B11.20:
Accin no memorizant

B-138
Captulo 11

S Set - Activar
la ejecucin de la accin de activacin se ejecuta permanentemente
(activacin memorizante).

S
Etapa
activa
Fig. B11.21:
Accin Set
(activar - memorizante)

%QX12

%QX12

1
0
1
0

En este ejemplo, la salida %QX12 se activa mientras la etapa conteniendo esta accin est activa. La salida tambin permanece activa,
cuando la subsecuente condicin de habilitacin de la etapa se cumple
y la etapa considerada ya no sigue activa. La salida solamente puede ser
desactivada en otro paso, en otra accin, definida con el calificador R.

R Reset - Desactivar
se cancela una accin de activacin previa (realizada en otra etapa)
con el calificador S, DS, SD, L o SL.

R
Etapa
activa
Fig. B11.22:
Accin Reset
(desactivar - memorizante)

%QX12

%QX12

1
0
1
0

La salida %QX12 ha sido activada en otra etapa, en una accin con


uno de los calificadores S, DS, SD, L o SL y desactivada de nuevo a
travs de esta accin

TP301 Festo Didactic

B-139
Captulo 11

P Pulso (nico)
ejecucin nica de la accin

P
Etapa
activa
%QX12

%QX12

1
0
1
0

Fig. B11.23:
Accin nica

Durante la ejecucin inicial de la accin, dentro del procesamiento de


la etapa, la salida %QX12 se activa exactamente un ciclo del control y
se desactiva de nuevo. La salida slo podr activarse de nuevo tras la
salida y una nueva entrada en la etapa.

L Limitada en el tiempo
La accin se ejecuta durante un tiempo especfico.

L
T#10s
Etapa
activa
%QX12

1
0
1
0

10s

%QX12

10s

La salida %QX12 se activa durante 10 segundos y a continuacin se


desactiva. Esto requiere que la etapa que contenga esta accin est
activa por un perodo de por lo menos 10 segundos. Si las condiciones
de habilitacin de la etapa siguiente se cumplen antes de este tiempo,
el tiempo de accin de la salida tambin se reduce, ya que en cualquier caso es desactivada al final de la etapa.

Festo Didactic TP301

Fig. B11.24:
Accin limitada
en el tiempo

B-140
Captulo 11

D Retardada en el tiempo
La ejecucin de la accin es retardada hasta el final de la etapa.

D
T#10s
1
0
1
0

Etapa
activa
Fig. B11.25:
Accin retardada
en el tiempo

%QX12

%QX12

10s

10s

Aqu, la salida %QX12 no se activa hasta que hayan expirado 10 segundos y permanece activa hasta que la etapa pasa a estar inactiva.
Si el tiempo que est activada la etapa es inferior a los 10 segundos,
la salida no ser activada durante el procesamiento de esta etapa.

DS Retardada en el tiempo y memorizante


La ejecucin de la accin es retardada en el tiempo y mantenida
ms all del final de la etapa.

DS
T#10s

Fig. B11.26:
Accin retardada en el
tiempo y memorizante

Etapa
activa

1
0

%QX12

1
0

10s

%QX12

10s

1
R
activo
0
(en otra etapa)

En este ejemplo tambin, la salida %QX12 se activa una vez transcurridos 10 segundos. Sin embargo, permanece activada hasta que se
haya completado la etapa. Debe ser explcitamente desactivada a travs de otra accin con el calificador R (en otro paso). Si la duracin
de la etapa no es suficientemente larga, en este caso, menos de 10
segundos, la salida nunca ser activada.

TP301 Festo Didactic

B-141
Captulo 11

SD Memorizante y retardada en el tiempo


la ejecucin de la accin es retardada en el tiempo y se mantiene
ms all del final de la etapa

SD
T#10s
Etapa
activa

1
0

%QX12

1
0

%QX12

10s

10s

1
R
activo
0
(en otra etapa)

Fig. B11.27:
Accin memorizante y
retardada en el tiempo

Aqu tambin, la salida %QX12 se activa transcurridos los 10 segundos. Permanece activada despus del final de la etapa y solamente
puede ser desactivada explcitamente a travs de otra accin con el
calificador R en otra etapa. A diferencia del modo de accin del calificador DS, no es necesario que la etapa permanezca activa ms all
de la duracin del retardo para que la salida est activa.

SL Memorizante y limitada en el tiempo


la accin es ejecutada continuamente por un periodo especfico.

SL
T#10s
Etapa
activa

1
0

%QX12

1
0

10s

%QX12

10s

La salida es activada durante 10 segundos y a continuacin es


desactivada de nuevo. A diferencia del modo de accin del calificador L, no es necesario que el paso est activo por un mnimo
de 10 segundos.

Festo Didactic TP301

Fig. B11.28:
Accin memorizante y
limitada en el tiempo

B-142
Captulo 11

Si la siguiente condicin de habilitacin del paso se cumple antes de


que expire este tiempo, es decir, si la etapa est activa menos de 10
segundos, el perodo activo de la salida no se ve afectado por esto. La
salida puede ser desactivada en cualquier momento a travs de otra
accin con el calificador R.
El modo de accin de los calificadores individuales ha sido ilustrado en
el ejemplo de una variable booleana como accin. Si se necesitan acciones ms complejas, es decir, no booleanas, el tipo de ejecucin es
diferente a las variables booleanas examinadas previamente. Las redes son continuamente procesadas mientras la etapa est activa. Sin
embargo, as que se cumple la siguiente condicin de habilitacin del
paso, se realiza una vez ms la ltima y nica ejecucin de las redes.
Esta definicin permite la desactivacin objetiva de variables al final del
procesamiento de una accin, cuando se utiliza el calificador N para
acciones ms complejas.

Etapa_5

Accin_1

%IX1.0
%MX12
Step_5.X

&

%QX1.0

SR_1
%IX1.5

SR
S1 Q1
R

%QX1.5

Fig. B11.29:
Accin compleja en
lenguaje FBD

Si la Etapa_5 es desactivada, el ltimo procesamiento de la red se


realiza con el valor 0 para el flag de etapa Etapa_5.X. Esto hace que
la salida %QX1.0 se desactive a 0 cuando se sale de la etapa.

TP301 Festo Didactic

B-143
Captulo 11

Descripcin del problema


Unos componentes se trasladan juntos en una cinta transportadora hacia una estacin de procesamiento doble. Las unidades de taladrado y
avellanado descienden cuando el componente se halla en posicin. Se
utilizan dos cilindros 1.0 y 2.0 para mover las dos herramientas de
mecanizado. El dispositivo de transporte es indexado una posicin de
trabajo a travs de un tercer cilindro 3.0.

11.5 Ejemplo

Dos sensores B1 y B2 estn dispuestos para detectar si la pieza se


halla debajo de la broca o del avellanador. Las profundidades necesarias de taladrado y avellanado se detectan a travs de los sensores de
posicin B6 y B7. Las posiciones iniciales del cilindro de transporte,
taladrado y avellanado pueden detectarse a travs de los estados de
los sensores B3, B4 y B5. El sensor B8 indica el avance del cilindro de
transporte.
El sistema no puede garantizar siempre que habr una pieza bajo la
broca y el avellanador en cada movimiento de transporte. Por ello,
debe interrumpirse el procesamiento en el caso de que ho hubiera pieza. Si faltan ambas piezas al mismo tiempo, no deber descender ninguna de las herramientas.

1.0

2.0

B3

B4

B6

B7

B1

B2

3.0
B5

Festo Didactic TP301

B8

Fig. B11.30:
Croquis de situacin

B-144
Captulo 11

Lista de asignaciones

Tabla B11.4:
Lista de asignaciones

Denominacin
del componente

Entrada PLC/
Salida PLC

Tarea

B1
B2
B3
B4
B5
B6
B7
B8
Y1
Y2
Y3

%IX0.1
%IX0.2
%IX0.3
%IX0.4
%IX0.5
%IX0.6
%IX0.7
%IX0.8
%QX0.1
%QX0.2
%QX0.3

Detectar la pieza bajo el taladro


Detectar la pieza bajo el avellanador
Posicin inicial del taladro (arriba)
Posicin inicial del avellanador (arriba)
Posicin inicial del transportador
Taladro en posicin baja
Avellanador en posicin baja
Cilindro de transporte extendido
Bajar taladro
Bajar avellanador
Alimentar transporte

Problema
Debe disearse un programa de control para esta tarea. La solucin es
conseguir una configuracin por medio de un diagrama de funciones
secuencial. Las condiciones y acciones deben entonces aplicarse a las
etapas y las transiciones. El programa debe ejecutarse cclicamente.
Para simplificar, puede asumirse que no hay necesidad de utilizar tiempos para compensar las tolerancias de posicionado.

TP301 Festo Didactic

B-145
Captulo 11

Solucin

Marcha
B3

B4

B5

B1

R Y1
R Y2
R Y3

B1

B2

/
Taladrado

S A

B6

B2
/

Avellanado

S B

B7

T_arriba

R A

B3

A_arriba

R B

B4

1
Transporte

S C

B8
Fig. B11.31:
Programa en lenguaje
secuencial

Festo Didactic TP301

B-146
Captulo 11

Todos los cilindros son llevados a su posicin inicial en una primera


etapa. Al final del programa, esta etapa se utiliza tambin para hacer
retroceder el cilindro que ha avanzado durante la ltima etapa para el
dispositivo de transporte.
Cuando todos los cilindros se hallan en su posicin inicial, empieza
una derivacin en paralelo con dos secuencias, una para taladrar y
otra para avellanar. En este ejemplo, ambas secuencias contienen las
mismas tareas, pero utilizan diferentes herramientas. La secuencia de
la izquierda hace bajar la broca y la eleva de nuevo, y la secuencia de
la derecha hace lo mismo con el avellanador. Las secuencias difieren
meramente en la utilizacin que hacen de sensores y actuadores. Al
principio y al final de ambas secuencias se ha incorporado una etapa
vaca para mantener la secuencia necesaria de etapas y transiciones.
El programa para el taladrado evoluciona como se indica a continuacin. Detecta si hay pieza disponible a travs del estado del sensor B1.
Si tiene seal 1, la pieza se halla en posicin y empieza el proceso de
taladrado. De lo contrario se elude todo el proceso de taladrado a travs de una ruta alternativa. El taladrado del agujero empieza haciendo
descender la broca activando Y1. Cuando se alcanza la posicin ms
baja, es decir, cuando ha finalizado el taladrado del agujero, el sensor
B6 emite una seal 1. En la siguiente etapa, la broca regresa a su
posicin normal en la parte superior. Esta parte de la derivacin alternativa termina cuando la broca alcanza la parte superior. El programa
sigue el mismo procedimiento para el avellanado.
Cuando ambas secuencias paralelas se han completado, se produce
una transicin en el programa a la etapa de transporte. La necesaria
sincronizacin es decir, taladrado y avellanado finalizados est
asegurada por el diagrama de funciones secuencial y por lo tanto no
requiere ningn tratamiento especial. En este punto se inserta siempre
una condicin de habilitacin del paso que sea cierta para alternar las
etapas y las transiciones.
En la ltima etapa Transporte, el cilindro del dispositivo de transporte
avanza y se espera que se haya completado la accin en la siguiente
condicin de transicin. A continuacin, todo el proceso empieza de
nuevo.

TP301 Festo Didactic

B-147
Captulo 12

Captulo 12
Sistemas de control lgico

Festo Didactic TP301

B-148
Captulo 12

12.1 Qu es un
sistema de
control lgico?

Los sistemas de control lgico son controladores programados a travs


del uso de operaciones booleanas. Todas las operaciones lgicas son
procesadas y ejecutadas durante un ciclo de mquina.
Las tareas de control realizadas tpicamente en forma de control lgico,
se caracterizan por el hecho que no se asigna una duracin de tiempo
al proceso, sino que todas o la mayor parte de las condiciones del
programa de control son examinadas simultneamente.
Por ello pueden encontrarse ejemplos de sistemas de control lgico en
aplicaciones de PLC, en donde son importantes los aspectos de seguridad. A menudo se requiere que la supervisin de ciertas tareas sea
permanente e independiente de la ejecucin del proceso en relacin
con el tiempo. Estos requerimientos se aplican, por ejemplo en:
Circuitos de proteccin: un dispositivo solamente puede cargar si
todos los dispositivos de proteccin estn conectados.
Enclavamiento de seguridad

12.2 Sistemas de
control lgico
sin propiedades
memorizantes

Los sistemas de control lgico sin propiedades memorizantes (combinatorios) pueden describirse por medio de una combinacin de operaciones booleanas, mientras que las seales de salida de un control
estn determinadas por una combinacin de seales de entrada en un
determinado momento.
Las operaciones lgicas bsicas AND, OR y NOT pueden utilizarse
para crear operaciones lgicas completas y por lo tanto, tambin
sistemas de control.
Se utilizan diversos mtodos del lgebra booleana, tales como tablas
de funcin, ecuaciones booleanas y la forma normal disyuntiva (DNF)
para describir el problema y hallar la solucin. La importancia de estos
mtodos se demuestra entre otras cosas en las aplicaciones ms complejas para los sistemas de control lgico. La programacin real de un
sistema de control lgico es preferible hacerla en los lenguajes de diagrama de contactos o el diagrama de bloques de funcin.

TP301 Festo Didactic

B-149
Captulo 12

Tpicas operaciones booleanas


Lo que sigue representan tareas bsicas de la tecnologa de control,
tales como las operaciones booleanas que se realizan por medio de un
PLC.
Las soluciones estn representadas en los lenguajes LD, FBD, IL y ST.
Las secciones con la solucin estn precedidas por una declaracin de
las entradas y salidas necesarias para el PLC. Adems, se relacionan
tambin las opciones de descripcin de una tabla de funcin y la ecuacin booleana.
Negacin:
La seal de salida asume el valor 1, si la seal de entrada tiene el
valor 0 y viceversa.
El piloto H1 se ilumina mientras el interruptor S1 no est accionado; se
apaga si se cierra el interruptor. Por lo tanto, la finalidad de S1 es
apagar el piloto.
Tabla de funciones

Ecuacin Booleana

S1 H1

H1 = S1

VAR
S1 AT %I2.5
H1 AT %Q1.4
END_VAR

Festo Didactic TP301

Ejemplo

Fig. B12.1:
Mtodos de descripcin

: BOOL;
: BOOL;

Fig. B12.2:
Declaracin de variables

B-150
Captulo 12

b) FBD

a) LD
S1

H1

c) IL

Fig. B12.3:
Negacin

LDN
ST

NOT

S1

H1

d) ST
S1
H1

H1 : = NOT S1;

Operacin AND:
La seal de salida solamente asume el valor 1, si todas las seales de
entrada tienen el valor 1.

Ejemplo

El piloto H1 debe iluminarse slo si los dos interruptores S1 y S1 estn


accionados simultneamente.
Tabla de funciones

H1 = S1

Fig. B12.4:
Mtodos de descripcin

Fig. B12.5:
Declaracin de variables

VAR
S1 AT %I2.5
S2 AT %I2.6
H1 AT %Q1.4
END_VAR

>

S1 S2 H1
0

Ecuacin Booleana
S2

: BOOL;
: BOOL;
: BOOL;

TP301 Festo Didactic

B-151
Captulo 12

b) FBD

a) LD
S1

S2

H1

c) IL

&

S1
S2

H1

d) ST

LD
AND
ST

S1
S2
H1

H1 : = S1 AND S2;
Fig. B12.6:
Operacin AND

Operacin OR
La seal de salida asume el valor 1, si por menos una seal de entrada tiene el valor 1.
El piloto H1 debe encenderse, si por lo menos uno de los interruptores
S1 o S2 est activado.
Tabla de funciones

VAR
S1 AT %I2.5
S2 AT %I2.6
H1 AT %Q1.4
END_VAR

Festo Didactic TP301

S2

>

Ecuacin booleana
H1 = S1

S1 S2 H1

Ejemplo

Fig. B12.7:
Mtodos de descripcin

: BOOL;
: BOOL;
: BOOL;

Fig. B12.8:
Declaracin de variables

B-152
Captulo 12

b) FBD

a) LD
S1

H1

S1
S2

>=1

H1

S2

c) IL

Fig. B12.9:
Operacin OR

d) ST

LD
OR
ST

S1
S2
H1

H1 : = S1 OR S2;

Operaciones lgicas combinadas

Ejemplo

El piloto H1 debe iluminarse slo si precisamente dos de los tres interruptores S1, S2 y S3 estn activados.
Los primero que hay que crear es la tabla de funciones, en la que se
seleccionan aquellas combinaciones que dan el resultado 1. Estas son
las lneas 4, 6 y 7. La ecuacin booleana y por lo tanto la solucin
puede crearse a partir de esta combinacin. La conversin de la solucin en cada uno de los lenguajes de programacin se indica en la fig.
B12.12.

Fig. B12.10:
Mtodos de descripcin

S2

S3)

(S1

S2

S3)

(S1

S2

S3)

> >

H1 = (S1

> > >

S1 S2 S3 H1

Ecuacin booleana
> > >

Tabla de funciones

TP301 Festo Didactic

B-153
Captulo 12

VAR
S1 AT %I2.5
S2 AT %I2.6
S3 AT %I2.7
H1 AT %Q1.4
END_VAR

: BOOL;
: BOOL;
: BOOL;
: BOOL;

Fig. B12.11:
Declaracin de variables

a) LD

b) FBD
S1

S2

S3

S2

S3

H1

/
S1

/
S1

S2

S3
/

&

S1
S2
S3

&

S1
S2
S3

&

>=1

H1

d) ST

c) IL
LD (
AND
ANDN
)
OR (
ANDN
AND
)
OR (
AND
ANDN
)
ST

S1
S2
S3

S3
S2
S1

H1 : = (NOT S1 AND S2 AND S3)


OR (S1 AND NOT S2 AND S3)
OR (S1 AND S2 AND NOT S3);

S1
S2
S3
S1
S2
S3
H1

Festo Didactic TP301

Fig. B12.12:
Combinacin de
operaciones booleanas

B-154
Captulo 12

12.3 Sistemas de
control lgico
con funcin
memorizante

Muchas aplicaciones de PLC requieren operaciones memorizantes.


Una funcin memorizante consiste en la retencin, es decir, el almacenamiento, del estado de una seal de breve duracin. En un instante
determinado, las seales de salida no slo dependen de la combinacin de las seales de entrada, sino tambin de los "estados previos".
El ejemplo dado aqu es el de un interruptor para encender o apagar
un piloto.
IEC 1131-3 define dos bloques de funcin para la realizacin de funciones de memoria. Estos son el bloque de funcin SR (activacin prioritaria) y RS (desactivacin prioritaria). A continuacin se da una descripcin de los bloques.

Bloque de funcin RS

Fig. B12.13:
Bloque de funcin SR, de
activacin prioritaria

BOOL
BOOL

SR
S1 Q1
R

BOOL

El bloque de funcin estndar SR contiene un flip-flop de activacin


prioritaria (memoria biestable con estado 1 preferente). Una seal 1 en
la entrada de activacin S1 activa el flip-flop, es decir, el valor Q1 pasa
a 1. El valor aplicado en la entrada de desactivacin R es irrelevante.
Una seal 1 en la entrada de desactivacin R, solamente pone la salida Q1 al valor 0, si la entrada de activacin S1 es tambin 0. Por lo
tanto, la entrada de activacin en este flip-flop es dominante.

TP301 Festo Didactic

B-155
Captulo 12

Bloque de funcin RS

BOOL
BOOL

RS
S
Q1
R1

BOOL
Fig. B12.14:
Bloque de funcin RS,
desactivacin prioritaria

El bloque de funcin estndar RS contiene un flip-flop con desactivacin prioritaria (memoria biestable con estado dominante 0). Una seal
1 en la entrada de desactivacin R1, desactiva el flip-flop, es decir, el
valor de Q1 pasa a 0. El valor que haya en la entrada S es irrelevante
en este momento.
El siguiente ejemplo ilustra el uso de operaciones elementales de memoria.
Si el sensor B1 tiene una seal-1, esto indica un estado de error en el
sistema. Debe sonar un zumbador H1. El zumbador slo puede ser
desactivado presionando el pulsador S1. Debe ser posible desactivar el
zumbador, an en el caso que la seal B1 siga activada.

VAR
B1 AT %IX1
S1 AT %IX2
H1 AT %QX1
RS_H1

: BOOL;
: BOOL;
: BOOL;
: RS;

(* El sensor detecta el estado de error


(* Pulsador
(* Zumbador
(* Flip-flop RS_H1 para el estado
(* del zumbador

*)
*)
*)
*)
*)

END_VAR

En los lenguajes FBD y ST, las operaciones con memoria se realizan


invocando una copia del bloque de funcin RS. La copia en este ejemplo tiene el nombre RS_H1. LA invocacin en FBD se realiza grficamente enlazando los parmetros de transferencia actuales con las entradas de la copia del bloque de funcin. Ya que el valor de la copia
del bloque de funcin es relevante, la salida de la copia del bloque de
funcin se conecta correspondientemente.

Festo Didactic TP301

Ejemplo

Fig. B12.15:
Declaracin de variables

B-156
Captulo 12

a) LD

b) FBD
B1

S1

H1

RS_H1

RS

H1

B1
S1

S
R1

Q1

H1

c) IL
LD
S
LD
R

d) ST
B1
H1
S1
H1

RS_H1 (S := B1, R1 := S1);


H1 := RS_H1.Q1;

or

Fig. B12.16:
Utilizacin de un
bloque de funcin RS

CAL
LD
ST

RS_H1 (S := B1, R1 := S1)


RS_H1.Q1
H1

En el lenguaje textual ST, la invocacin se realiza especificando la


copia del bloque de funcin. Los parmetros actuales tambin se relacionan simultneamente. Puede accederse al valor de la salida de la
copia del bloque de funcin RS_H1 a travs de la variable RS_H1.Q1;
el nombre de la variable de salida es por lo tanto definido a travs de
los nombres de la copia del bloque de funcin y los nombres de las
salidas deseadas.
Los lenguajes LD e IL tienen sus propias operaciones para la activacin y desactivacin de variables memorizantes, con lo que puede omitirse el uso del bloque de funcin RS. Debera observarse que la secuencia de rdenes de activacin y desactivacin es crucial para el
comportamiento del PLC. La orden que debe ser dominante en este
caso la orden de desactivacin solamente debe producirse despus
de la orden de activacin en el programa, de forma que es la ltima
orden que se ejecuta y por lo tanto determina el comportamiento en
este caso de la salida.

TP301 Festo Didactic

B-157
Captulo 12

Las seales que llegan a las entradas procedentes de los sensores


son evaluadas como seales 1 o seales 0 por la unidad central del
PLC, mientras que la duracin de los estados de las seales 0 y 1 est
determinada por el propio sensor.
Por ejemplo: Mientras est accionado el pulsador, habr una seal-1,
de lo contrario se recibir una seal 0.

12.4 Evaluacin
de flancos

En muchos casos, sin embargo, no es la propia seal lo que importa,


sino el momento exacto durante el cual la seal cambia de estado.
Este tipo de cambio de seal se denomina Flanco.
Para aclarar esto, imagine los interruptores (pulsadores) de un sistema
de iluminacin, en la que la evaluacin del flanco se realiza mecnicamente. Al accionar el pulsador, la luz se enciende (independientemente
del tiempo que se est presionando el pulsador). Si se ha soltado el
pulsador, la luz puede apagarse presionando de nuevo el mismo pulsador.

Ejemplo

Exactamente de la misma forma, el momento en que la seal de entrada cambia de 0 a 1, debe ser registrado en el PLC, ya que siempre
puede dispararse una nica reaccin cada vez que se acciona el pulsador independientemente de cuanto tiempo est aplicada la seal-1.
Esto evita que un proceso sea puesto en movimiento repetidamente
por el control, si se presionada durante mucho tiempo un pulsador. Los
flancos de la seal de entrada se evalan para cada programa.
En este contexto nos referimos a la deteccin de flanco. Cada seal
binaria tiene un flanco ascendente y un flanco descendente:
flanco
ascendente

Flancos ascendentes
y descendentes

flanco
ascendente

1
0
flanco
descendente

flanco
descendente

Los flancos ascendentes marcan el instante en que el nivel de la


seal pasa de 0 a 1.
Los flancos descendentes marcan el instante en que el nivel de la
seal pasa de 1 a 0.

Festo Didactic TP301

Fig. B12.17:
Flancos ascendentes
y descendentes

B-158
Captulo 12

Evaluar el flanco ascendente o descendente en un programa o bloque


de funcin, depende del tipo de sensor (normalmente abierto o normalmente cerrado) y de cmo deba utilizarse.
Un pulsador (normalmente abierto), por ejemplo, crea un flanco ascendente en el momento en que se pulsa y un flanco descendente en el
momento en que se suelta.
IEC 1131-3 proporciona dos bloques de funcin estndar para la evaluacin de los flancos.

Bloque de funcin R_TRIG, flanco ascendente


El bloque de funcin estndar R_TRIG (ascendente) se utiliza para la
deteccin de flancos positivos. Su salida Q tiene el valor 1 desde una
ejecucin del bloque de funcin al siguiente, si su entrada CLK (reloj
para pulso) cambia de 0 a 1.

Fig. B12.18:
Bloque de funcin
R_TRIG,
flanco ascendente

BOOL

R_TRIG
CLK
Q

BOOL

Bloque de funcin F_TRIG, flanco descendente


Un flanco descendente o de conmutacin negativa, se detecta por medio del bloque de funcin F_TRIG (descendente). Si se ha producido
un cambio en la entrada CLK de 1 a 0, la salida Q asume el valor 1
para un ciclo de procesamiento.

Fig. B12.19:
Bloque de funcin
F_TRIG,
flanco descendente

BOOL

F_TRIG
CLK
Q

BOOL

TP301 Festo Didactic

B-159
Captulo 12

El siguiente ejemplo muestra la programacin de la evaluacin de un


flanco en los lenguajes FBD, LD, IL y ST, en donde se evalan los
flancos ascendentes.
El accionamiento de un pulsador S1 hace que se abra la puerta de un
horno. Una nueva actuacin sobre el pulsador S1 hace que la puerta
se cierre.
VAR
S1 AT %IX1
H1 AT %QX1

: BOOL;
: BOOL;

(* Interruptor de la puerta
(* Bobina para actuacin del cilindro
(* para la puerta
: RS;
(* Flip-flop RS_Y1 para el estado
(* de la bobina
: R_TRIG; (* Bloque de funcin R_TRIG_S1
(* para deteccin del flanco en S1

RS_Y1
R_TRIG_S1
END_VAR

Ejemplo

*)
*)
*)
*)
*)
*)
*)

Fig. B12.20:
Declaracin de variables

a) LD
S1

Y1

Y1

S1

Y1

Y1

b) FBD
RS_Y1
R_TRIG_S1 Y1
S1

&

R_TRIG
Q
CLK

RS
S
Q1
R1

Y1

&
Y1
c) IL
CAL
LD
ANDN
S
LD
AND
R

R_TRIG_S1 (CLK := S1)


R_TRIG_S1.Q
Y1
Y1
R_TRIG_S1.Q
Y1
Y1

d) ST
R_TRIG_S1 (CLK := S1);
RS_Y1 ( S := R_TRIG_S1.Q & NOT Y1,
R1 := R_TRIG_S1.Q & Y1);
Y1 := RS_Y1.Q1;

Festo Didactic TP301

Fig. B12.21:
Utilizacin del bloque
de funcin R_TRIG

B-160
Captulo 12

En los lenguajes FBD, IL y ST, la deteccin del flanco se realiza por


medio de la invocacin al bloque de funcin R_TRIG. El nombre del
bloque de funcin utilizado en el ejemplo es R_TRIG_S1; R_TRIG_S1
representa una copia del bloque de funcin tipo R_TRIG.
El lenguaje LD tiene contactos especiales para la evaluacin de los
flancos, por lo que se omite la invocacin del bloque de funcin
R_TRIG.

TP301 Festo Didactic

B-161
Captulo 13

Captulo 13
Temporizadores

Festo Didactic TP301

B-162
Captulo 13

13.1 Introduccin

Muchas tareas de control requieren la programacin de tiempos. Por


ejemplo, el cilindro 2.0 debe avanzar si el cilindro 1.0 ha retrocedido
pero slo tras un retardo de 5 segundos. Esto se conoce como seal
con retardo a la conexin. Los retardos a la conexin de las seales
durante la conexin de las etapas de potencia se necesitan a menudo
por razones de seguridad.
Los temporizadores en un PLC se realizan en forma de mdulos de
software y estn basados en la generacin digital de un tiempo. Los
pulsos de reloj contados se obtienen del generador de cuarzo del microprocesador. La duracin del tiempo establecida se establece en el
programa de control.
IEC 1131-3 define tres tipos de bloques de funcin de temporizador
TP Pulse timing - Temporizador de pulso
TON On-delay timing - Temporizador a la conexin
TOF Off-delay timing - Temporizador a la desconexin
La duracin del tiempo est especificada por medio de un formato de
carcter definido. Una especificacin de tiempo se introduce por los
caracteres T# o t#, seguido por los elementos del tiempo, es decir,
das, horas, minutos, segundos y milisegundos.

Los siguiente representa ejemplos de especificaciones permisibles de


tiempos:
d

Da

Hora

Minuto

Segundo

ms

Milisegundo

Los detalles relacionados con las especificaciones de tiempo pueden


hallarse en el captulo 6.2.
T#2h15m
t20s
T#10M25S
t#3h_40m_20s

TP301 Festo Didactic

B-163
Captulo 13

El bloque de funcin TP es un temporizador de pulso, que se pone en


marcha por una seal-1 larga o corta en la entrada IN. En la salida Q
aparece una seal-1 por el tiempo especificado en su entrada PT
(tiempo preestablecido). Por ello, la salida Q tiene una duracin fija,
que es la especificada en PT. El temporizador no puede activarse de
nuevo mientras est activo el tiempo de pulso. El valor actual el temporizador de pulso est disponible en la salida ET (tiempo estimado).

BOOL
TIME

TP
IN
Q
PT ET

BOOL
TIME

13.2 Temporizador
de pulso

Fig. B13.2:
Bloque de funcin TP,
temporizador de pulso

IN

PT

ET
0

Festo Didactic TP301

Fig. B13.1:
Diagrama de tiempos
de un temporizador
de pulso TP

B-164
Captulo 13

Con la ayuda de un ejemplo, se expone la utilizacin de un temporizador de pulso.

Ejemplo

Presionando el pulsador de marcha S2 se hace avanzar el mbolo de


un cilindro. Este mecanismo se utiliza para sujetar piezas. Cuando el
mbolo ha avanzado completamente, debe permanecer en esta posicin durante 20 segundos. A continuacin el cilindro regresa a su posicin inicial.
VAR
S2 AT %IX1
B1 AT %IX2
B2 AT %IX3
Y1 AT %QX1
SR_Y1

Fig. B13.3:
Declaracin de variables

:
:
:
:
:

TP_Y1
END_VAR

BOOL;
BOOL;
BOOL;
BOOL;
SR;

: TP;

S2
B1

(*
(*
(*
(*
(*
(*
(*

Pulsador de marcha
Cilindro retrado
Cilindro extendido
Cilindro de avance
Flip-flop denominado SR_Y1 para
inicadr el estado de Y1
Bloque de funcin TP, TP_Y1

&

*)
*)
*)
*)
*)
*)
*)

SR_Y1
SR
S1 Q1
R

TP_Y1

Y1

TP
B2
T#20s
Fig. B13.4:
Uso de un temporizador
de pulso en FBD

IN
PT

Q
ET

&

B2

Esta tarea de control ha sido programada en el lenguaje FBD como


ejemplo. Por descontado que en cualquier otro lenguaje puede utilizarse un bloque de funcin de temporizacin. Un ejemplo con un temporizador a la desconexin se da en el captulo 13.4 para demostrar esto
con los lenguajes FBD, LD, IL y ST.

TP301 Festo Didactic

B-165
Captulo 13

La vlvula Y1 para el accionamiento del cilindro se activa a travs de


un flip-flop SR, SR_Y1. La condicin de activacin para SR_Y1 se
cumple si se activa el final de carrera de la posicin retrada del cilindro. Una vez que el cilindro ha avanzado, se pone en marcha el temporizador de pulso TP_Y1 con un tiempo de 20 segundos por el flanco
ascendente del sensor B2. La salida Q de TP_Y1 asume ahora una seal-1. Una vez que ha expirado el temporizador de pulso transcurridos
los 20 segundos la salida Q de TP_Y1 asume el valor 0. Se cumple la
condicin de desactivacin de SR_Y1: el cilindro retrocede de nuevo.
Nota: Las formulaciones con "temporizador de pulso con el nombre
TP_Y1" significan que TP_Y1 es una copia del bloque de funcin tipo
TP, en este caso una copia del temporizador de pulso.

El bloque de funcin TON (temporizador a la conexin) se utiliza para


generar seales retardadas respecto al momento de la aparicin de
una seal. Cuando se aplica una seal-1 a una entrada IN, la salida Q
no asume el valor 1 hasta que no haya transcurrido el tiempo especificado en la entrada PT, y mantiene este estado hasta que la seal de
entrada IN pase de nuevo a 0. Si la duracin de la seal de entrada IN
es ms corta que el tiempo especificado PT, el valor de la salida permanece en 0.

BOOL
TIME

TON
IN
Q
PT ET

BOOL
TIME

13.2 Seal con retardo


a la conexin

Fig. B13.5:
Bloque de funcin TON.
Seal con retardo
a la conexin

IN

PT

ET
0

Festo Didactic TP301

Fig. B13.6:
Diagrama de tiempos
de una seal retardada
a la conexin TON

B-166
Captulo 13

Ejemplo

El cilindro 1.0 avanza si se activa el pulsador de marcha S1. Una vez


ha permanecido extendido durante 2 segundos, un segundo cilindro
2.0 avanza hacia su posicin final delantera. Los sensores B1 y B2
indican las posiciones avanzada y retrada del cilindro 1.0.
VAR
S1 AT %IX1
B1 AT %IX2
B2 AT %IX3
Y1 AT %QX1
Y2 AT %QX2
RS_Y1
TON_Y2

Fig. B13.7:
Declaracin de variables

:
:
:
:
:
:
:

BOOL;
BOOL;
BOOL;
BOOL;
BOOL;
RS;
TON;

(*
(*
(*
(*
(*
(*
(*
(*

Pulsador de marcha
Cilindro 1.0 extendido
Cilindro 1.0 retrado
Avance del cilindro 1.0
Avance del cilindro 2-0
Flip-flop RS_Y1 para Y1
Temporizador a la conexin
TON_Y2 para Y2

*)
*)
*)
*)
*)
*)
*)
*)

END_VAR

RS_Y1

S1
B1

&

RS
Q1
S
R1

Y1

TON_Y2

Fig. B13.8:
Utilizacin de una
seal con retardo a la
conexin en FBD

B2
T#2s

TON
IN
Q
PT ET

Y2

El cilindro 1.0 se controla por medio de la vlvula Y1. Una vez que el
cilindro 1.0 ha avanzado y el sensor B2 tiene seal-1, empieza a funcional el temporizador a la conexin TON_Y2. Transcurridos los 2 segundos, se obtiene una seal-1 en la salida Q de TON_Y2 y el cilindro
2.0 avanza. El cilindro 2.0 permanece extendido mientras haya aplicada una seal-1 en la entrada IN de TON_Y2, es decir, mientras el
cilindro 1.0 permanezca extendido.

TP301 Festo Didactic

B-167
Captulo 13

Como se muestra en este ejemplo, no todas las entradas y salidas de


un bloque de funcin deben conectarse o alimentarse.
Si una entrada de un bloque de funcin no est conectada en este
caso la entrada R1 de RS_Y1 se utilizan los valores de la invocacin
previa. En este caso, el valor de inicializacin de la variable R1, que
representa una variable booleana, est preasignada con el valor 0, es
decir, el bloque de funcin RS_Y1 opera con el valor 0 para el parmetro R1 durante esta invocacin.

TOF (temporizador a la desconexin) es el nombre del bloque de funcin para generar seales retardadas respecto al momento de la ausencia de una seal. El temporizador se pone en marcha al aplicar una
seal-1 en la entrada IN. Al mismo tiempo, la seal de salida Q asume
el valor 1. Una vez que la seal de entrada IN ha vuelto a pasar al
valor 0, la salida permanece en 1 durante un tiempo especificado por
PT y no pasa a 0 hasta que no haya expirado este tiempo.

BOOL
TIME

TOF
IN
Q
PT ET

BOOL
TIME

13.4 Seal con retardo


a la desconexin

Fig. B13.9:
Bloque de funcin TOF,
seal con retardo
a la desconexin

IN

PT

ET
0

Festo Didactic TP301

Fig. B13.10:
Diagrama de tiempos
de una seal con retardo
a la desconexin TOF

B-168
Captulo 13

El siguiente ejemplo ilustra el uso de un temporizador a la desconexin


en los lenguajes FBD, LD, IL y ST.

Ejemplo

Tras accionar un pulsador, el cilindro de un dispositivo de estampacin


debe avanzar inmediatamente. Cuando se suelta el pulsador, el cilindro
slo debe retroceder transcurrido un periodo de estampacin de 30
segundos.

VAR
S1 AT %IX1
Y1 AT %QX1
TOF_Y1

Fig. B13.11:
Declaracin
de variables

: BOOL;
: BOOL;
: TOF;

(*
(*
(*
(*

Pulsador
Avance del cilindro
Temporizador a la desconexin
TOF_Y1 para Y1

*)
*)
*)
*)

END_VAR

a) LD

b) FBD
TOF_Y1
S1

T#30s

TOF
Q
IN
PT

TOF__Y1
Y1

ET

S1
T#30s

TOF
IN
Q
PT ET

Y1

c) IL
CAL
LD
ST

TOF_Y1 (IN := S1, PT := T#30s)


TOF_Y1.Q
Y1

d) ST
Fig. B13.12:
Uso de una seal
con retardo a la
desconexin en FBD

TOF_Y1 (IN :=S1, PT := T#30s);


Y1 := TOF_Y1.Q;

En todos los lenguajes, se invoca una copia del bloque de funcin


TOF_Y1 para realizar el temporizador a la desconexin del cilindro de
estampacin.

TP301 Festo Didactic

B-169
Captulo 13

En el lenguaje LD, el bloque de funcin se adjunta al rengln a travs


de la entrada booleana de marcha IN y la salida booleana Q. Si el
contacto normalmente abierto S1 suministra una seal-1, se obtiene
tambin una seal-1 en la salida Q de TOF_Y1. El valor Q se copia a
la variable Y1. Cuando la seal-1 de S1 regresa a 0, la seal 1 de la
salida Q de TOF_Y1 sigue teniendo seal-1 durante un perodo de 30
segundos. Transcurrido este tiempo la seal pasa tambin a 0.
En los lenguajes textuales IL y ST, el temporizador con retardo a la
desconexin se invoca especificando el nombre TOF_Y1 de la copia
declarada y relacionando los correspondientes parmetros de transferencia. El estado del retardo de la seal puede obtenerse a travs de
la salida Q. En el ejemplo dado aqu, el estado de la seal retardada
TOF_Y1 se guarda en la variable TOF_Y1.Q.

Festo Didactic TP301

B-170
Captulo 13

TP301 Festo Didactic

B-171
Captulo 14

Captulo 14
Contadores

Festo Didactic TP301

B-172
Captulo 14

14.1 Funciones
de conteo

Los contadores se utilizan para detectar cantidades y eventos. En la


prctica, los controles necesitan a menudo utilizar contadores. Se necesita un contador si, por ejemplo, deben contarse exactamente 10
piezas para que sean dirigidas a una cinta transportadora por un dispositivo de clasificacin.
IEC 1131-3 distingue entre tres diferentes mdulos de contador:
CTU: Incremental counter - Contador incremental
CTD: Decremental counter - Contador decremental
CTUD: Incremental/Decremental counter - Contador incremental/decremental
Estos mdulos de funcin estndar se utilizan para detectar conteos
estndar, no crticos en el tiempo.
Sin embargo, en muchas tareas de control es necesario utilizar los
denominados contadores de alta velocidad. La "alta velocidad", en este
caso, se refiere generalmente a una frecuencia de conteo superior a
50 Hz., es decir, contar ms de 50 eventos por segundo. Las tareas de
este tipo no pueden resolverse con los mdulos de funcin contadores
estndar de un PLC.
Las limitaciones de la frecuencia de conteo en los bloques de funcin
contadores se deben en primer lugar a los retardos de las seales de
entrada. Cada seal de entrada es decir, tambin las seales de
conteo es retardada por hardware un cierto tiempo, antes de que sea
entregada al PLC para su procesamiento. Esto evita interferencias.
Otra limitacin es el tiempo de ciclo del PLC.
Por esta razn, en los PLC se dispone generalmente de mdulos contadores adicionales para conteo a alta velocidad. Los contadores de
alta velocidad se utilizan, p. ej. para los sistemas de posicionado.

14.2 Contador
incremental

Fig. B14.1:
Bloque de funcin CTU,
Contador incremental

El contador incremental se conoce como CTU (count up - conteo hacia


arriba). El contador se establece al valor inicial 0 por una seal de
reset en la entrada R.

BOOL
BOOL
INT

CTU
CU Q
R
PV CV

BOOL
INT

TP301 Festo Didactic

B-173
Captulo 14

El estado actual del contador est disponible en la salida CV (current


value - valor actual). El valor del contador se incrementa en una unidad
a cada flanco positivo en la entrada CU del contador. Al mismo tiempo,
el valor actual se compara en el bloque de funcin con el valor preseleccionado PV. En el momento en que el valor actual CV es igual o
mayor que el valor preseleccionado, la seal de salida asume el valor
1. Antes de alcanzar este valor, la salida Q tiene seal-0.
El siguiente ejemplo muestra el uso de un contador incremental en los
lenguajes FBD, LD, IL y ST.
Deben extraerse piezas de un almacn por gravedad por medio de un
cilindro. Si se presiona el pulsador S1, el cilindro debe avanzar, extraer
una pieza y retroceder de nuevo. De esta forma deben extraerse 15
piezas. Una vez extradas las 15 piezas, ya no debe ser posible activar
el movimiento del cilindro por medio del pulsador S1. Primero debe
desactivarse el contador accionando el pulsador S2.

VAR
S1 AT %IX1
S2 AT %IX2
B1 AT %IX3
B2 AT %IX4
Y1 AT %QX1
Y1_advance
AT %MX1
CTU_Y1_M
AT %MX2
RS_Y1
CTU_Y1
END_VAR

Festo Didactic TP301

: BOOL;
: BOOL;
: BOOL;
: BOOL;
: BOOL;

(* Pulsador para mover el cilindro


(* Pulsador de reset contador CTU_Y1
(* Cilindro retrado
(* Cilindro extendido
(* Avance del cilindro

*)
*)
*)
*)
*)

: BOOL;

(* Memorizacin avance cilindro

*)

: BOOL;
: RS;
: CTU;

(* Memorizar estado contador CTU_Y1


(* Flip-flop RS_Y1 para Y1
(* Contador incremental CTU_Y1 para
(* los movimientos del cilindro

*)
*)
*)
*)

Ejemplo

Fig. B14.2:
Declaracin de variables

B-174
Captulo 14

a) LD

S1

B1 CTU_Y1.Q
/

Y1
S

B2

Y1
R
CTU_Y1

B2

CTU_Y1_M

CTU
CU

S2
R

15

PV

CV
RS_Y1

b) FBD

S1
B1
CTU_Y1.Q

&
B2

RS
S
Q1
R1

Y1

CTU_Y1

B2
S2
15

Fig. B14.3:
Uso del contador
incremental

CTU
CU Q
R
PV CV

c) IL

LD
AND
ANDN
ST
CAL
LD
ST
CAL

S1
B1
CTU_Y1.Q
Y1_advance
RS_Y1 (S := Y1_advance, R1 := B2)
RS_Y1.Q1
Y1
CTU_Y1 (CU := B2, R := S2, PU := 15)

d) ST

RS_Y1 ( S := S1 & B1 & NOT CTU_Y1.Q, R1 := B2);


Y1 := RS_Y1.Q1;
CTU (CU := B2, R := S2, PU := 15);

TP301 Festo Didactic

B-175
Captulo 14

Un bloque de funcin CTU (contador incremental) se utiliza en todos


los lenguajes para realizar la funcin de conteo; en el ejemplo actual,
el nombre de la copia declarado es CTU_Y1.
El cilindro es accionado por medio de la vlvula Y1. La propia vlvula
es conmutada a travs de un flip-flop RS denominado RS_Y1. El cilindro solamente avanza si se presiona el pulsador S1 y el cilindro ha
retrocedido (B1=1) y si no ha vencido el contador (CTU_Y1.Q = 0).
Cuando el cilindro ha alcanzado su posicin final delantera (B2=1), el
valor de Y1 vuelve a 0 y el cilindro retrocede de nuevo.
Los recorridos del cilindro se cuentan a travs del contador denominado CTU_Y1. El contador tiene un estado definido al principio del procesamiento, ya que todas las variables estn preasignadas. Esto significa
que, si el cilindro se halla en posicin inicial y no se acciona ninguno
de los pulsadores, hay seal-0 en B2 y S2 y con ello en las entradas
CU y R; el valor preseleccionado PV es 15, el valor actual CV del
contador es 0. Por lo tanto, el contador an no ha vencido y la salida
Q tiene el valor 0.
El accionamiento del pulsador S1 hace que el cilindro avance. EL flanco ascendente de B2 genera un pulso de conteo y el valor actual CV
del CTU_Y1 se incrementa en 1. Cuando se han realizado 15 movimientos del cilindro, el valor actual del CV es igual al valor preseleccionado PV; el contador ha vencido y ello se indica por el valor 1 en la
salida Q. El cilindro no se mover hasta que el contador sea repuesto,
es decir, se ponga en marcha de nuevo. Esto se realiza accionando el
pulsador S2; la seal-1 en la entrada R establece el valor actual CV
del contador a 0, con lo que inmediatamente aparece una seal-0 en la
salida Q.
En este punto, debe hacerse una especial mencin a una caracterstica particular del lenguaje IL. En la lista de instrucciones, los parmetros de transferencia para un bloque de funcin deben ser slo variables individuales. No se permiten expresiones. Esta es la razn por la
que la operacin AND de las variables S1, B1 y CTU_Y1.Q se copia a
la variable Y1_advance y sta se utiliza entonces como parmetro de
transferencia.

Festo Didactic TP301

B-176
Captulo 14

14.3 Contador
decremental

El bloque de funcin CTD (count down - conteo hacia abajo) es el


contador decremental de IEC 1131-3 y representa lo opuesto del contador incremental.
El contador decremental con valor de preseleccin PV se activa con
una seal-1 en la entrada LD (load - carga). Durante el funcionamiento
normal, cada flanco positivo en la entrada CD reduce el valor del contador. El valor actual del contador est tambin disponible en la salida
CV en este caso. La salida Q del bloque de funcin CTD es 0, hasta
que el valor CV del contador es igual o menor que 0.

BOOL
BOOL
INT

Fig. B14.4:
Bloque de funcin CTD,
contador decremental

CTD
CD Q
LD
PV CV

BOOL
INT

El uso de contadores decrementales se demuestra tambin por medio


de un pequeo ejemplo.

Ejemplo

Un cilindro se mueve a travs de una vlvula Y1. La posicin del cilindro se detecta por los sensores B1 (retrado) y B2 (extendido). El cilindro debe avanzar si se presiona el pulsador S1. Una vez se han realizado 10 recorridos de esta forma, el contador ha vencido y el piloto H1
se enciende. El contador debe ser cargado de nuevo con el valor preseleccionado, antes de que puedan seguir ejecutndose movimientos del
cilindro. Esto se realiza por medio del accionamiento del pulsador S2.
VAR
S1 AT %IX1
S2 AT %IX2
B1 AT %IX3
B2 AT %IX4
Y1 AT %QX1
H1 AT %QX2
RS_Y1
CTD_Y1

Fig. B14.5:
Declaracin de variables

:
:
:
:
:
:
:
:

BOOL;
BOOL;
BOOL;
BOOL;
BOOL;
BOOL;
RS;
CTD;

(* Pulsador para mover el cilindro


(* Pulsador de reset contador CTD_Y1
(* Cilindro retrado
(* Cilindro extendido
(* Avance del cilindro
(* Piloto
(* Flip-flop RS_Y1 para Y1
(* Contador decremental CTD_Y1 para
(* los recorridos del cilindro

*)
*)
*)
*)
*)
*)
*)
*)
*)

END_VAR

TP301 Festo Didactic

B-177
Captulo 14

RS_Y1
S1
B1
CTD_Y1.Q

&

RS
S
Q1
R1

Y1

B2

B2
S2
10

CTD
CD Q
LD
PV CV

H1

La vlvula Y1 se activa a travs de un bloque de funcin RS denominado RS_Y1. La condicin de activacin se cumple cuando el cilindro
se halla retrado, el contador an no ha vencido y se presiona el pulsador S1. Cuando el cilindro ha avanzado completamente, aparece de
nuevo una seal 0 en la salida Q1 de RS_Y1.
Los recorridos del cilindro se detectan por medio de un contador decremental denominado CTD_Y1. Si el cilindro se halla en posicin inicial y
ninguno de los pulsadores est activado, hay aplicados los siguientes
valores en las entradas y salidas al principio del procesamiento del
contador decremental: las entradas CD y LD tiene seal-0, la entrada
PV tiene aplicado el valor 10; el valor actual CV del contador es 0, por
lo tanto, se cumple la condicin CV <=0 y hay una seal-1 en la salida
Q. El valor 1 en la salida Q indica que el contador decremental ha
vencido. El piloto H1 se halla al mismo tiempo iluminado.
El valor preseleccionado 10 no est cargado como valor actual del
contador hasta que no se presione el pulsador S2. Ahora CV es mayor
de 0, la salida Q es tambin 0 y el piloto est apagado. Los movimientos del cilindro pueden ahora activarse accionando el pulsador S1.
Cada movimiento produce un pulso de conteo por medio del flanco
ascendente de B2, que reduce el valor actual del contador en 1 unidad
cada vez. Tras completar 10 recorridos, el valor actual del contador es
0; el contador ha vencido. Esto se indica por el valor 1 en la salida Q.
Una vez que el contador ha sido cargado de nuevo con el valor de
partida 10, pueden repetirse las operaciones de conteo.

Festo Didactic TP301

Fig. B14.6:
Uso de un contador
decremental en
lenguaje FBD

B-178
Captulo 14

14.4 Contador
incremental
/decremental

Fig. B14.7:
Bloque de funcin
CTUD, contador
incremental /decremental

El bloque de funcin CTUD, contador incremental/decremental, combina el contador incremental y el decremental.

BOOL
BOOL
BOOL
BOOL
INT

CTUD
CU
QU
CD
QD
R
LD
PV
CV

BOOL
BOOL

INT

El valor de la salida QU se calcula de acuerdo con la ecuacin:


CV PV, y el valor de la salida QD de acuerdo con la ecuacin CV 0.
Observar que la funcin del contador decremental solamente debe utilizarse una vez cargado el valor de partida al contador a travs de la
orden LD.

TP301 Festo Didactic

B-179
Captulo 15

Captulo 15
Sistemas de control secuencial

Festo Didactic TP301

B-180
Captulo 15

15.1 Qu es un
sistema de
control
secuencial?

Los sistemas de control secuencial son procesos que se realizan en


varias etapas claramente separadas. El paso de una etapa a otra depende de las condiciones de habilitacin del paso. Una caracterstica
importante es que, en una determinada secuencia, slo puede estar
activa una etapa, a no ser que se hayan programado explcitamente
secuencias paralelas cuyas etapas deban ejecutarse simultneamente.
Comparado con un sistema de control lgico (combinatorio), ofrece las
siguientes ventajas:
el programa se divide en etapas y por lo tanto es ms claro de
seguir, modificar y ampliar.
los sistemas de control secuencial pueden programarse grficamente en forma de diagrama de funciones secuencial (tambin denominado GRAFCET - Grfico de Etapas y Transiciones).
la deteccin de errores en una secuencia de control representada
grficamente, es en general ms fcil de seguir que en los sistemas
de control con lgica combinatoria.
Ejemplos tpicos de controles secuenciales son los controles de mquinas en el campo de la tecnologa de produccin o controles receptivos
en la tecnologa de procesos.

15.2 Diagrama de funciones secuencial


segn IEC 848
o DIN 40 719,
P.6

La necesidad de configurar un control secuencial no se manifiesta inmediatamente en el caso de pequeos controles orientados a secuencias, pero la necesidad de mejorar las descripciones funcionales aumenta con la complejidad de las tareas. El diagrama de contactos y la
lista de instrucciones no son muy adecuados para una descripcin estructurada. Los diagramas de funcin (o tambin los diagramas de flujo) se introdujeron como medios auxiliares para el anlisis de arriba
hacia abajo y para la representacin de diagramas de proceso. Los
elementos utilizados para este tipo de descripcin y su uso, ha sido
estandarizado internacionalmente por IEC 1131-3. El estndar IEC 848
con la adicin de definiciones nacionales ha sido publicado en DIN 40
719, P.6.
El diagrama de funciones secuencial describe principalmente dos aspectos de un control, de acuerdo con unas reglas definidas:
las acciones a ejecutar (rdenes)
la secuencia de la ejecucin

TP301 Festo Didactic

B-181
Captulo 15

Por lo tanto, un diagrama de funciones secuencial se divide en dos


partes (fig. B15.1). La parte secuencial representa la ejecucin del proceso en relacin con el tiempo.
La parte secuencial no describe las acciones a ejecutar individualmente. Estas estn contenidas en la parte de accin del diagrama de funciones secuencial, que para el ejemplo en cuestin, consta de bloques
en el lado derecho de las etapas.

Posicin inicial

Pieza en zona de elevacin


1

Deteccin del material y color; t = 0,5 s

Tiempo transcurrido
2

Elevacin del cilindro elevador

Cilindro elevador arriba


3

Definicin del grosor; t = 1 s

Tiempo transcurrido
4

Avance del cilindro expulsor

Cilindro expulsor delante


5

Retroceso del cilindro expulsor

Cilindro expulsor detrs


6

Descenso del cilindro elevador

Cilindro elevador abajo

Festo Didactic TP301

Fig. B15.1:
Diagrama de funciones
secuencial para un
proceso de verificacin

B-182
Captulo 15

Los que sigue proporciona una breve explicacin de los elementos individuales utilizados para describir un diagrama de funciones secuencial.

Etapas
Un diagrama de funciones secuencial se estructura por medio de etapas. Estas estn representadas por bloques y se identifican con el correspondiente nmero de etapa.
El estado de las salidas del control se identifica en la etapa inicial.
Cada paso tiene asignadas acciones (rdenes) que contienen la verdadera parte de ejecucin del control.

Etapa
inicial

1
conexiones directas

Transicin
Etapa
Fig. B15.2:
Elementos de un diagrama
de funciones secuencial

Accin

Transiciones
Una transicin es un enlace desde una etapa a la siguiente. La condicin lgica asociada con la transicin se representa junto a la lnea
horizontal de la transicin. Si la condicin se cumple, se realiza la transicin a la siguiente etapa, que es procesada por el control.

TP301 Festo Didactic

B-183
Captulo 15

Estructuras secuenciales
Pueden crearse tres formas bsicas de estructura secuencial por medio de la combinacin de elementos de etapa y de transicin:
Secuencia lineal
Derivacin alternativa
Derivacin en paralelo
Las etapas y las transiciones deben estar siempre alternadas, independientemente de la forma de la estructura secuencial. Las estructuras secuenciales se procesan desde arriba hacia abajo.
En una secuencia lineal, a cada etapa le sigue una sola transicin y a
cada transicin una sola etapa. La fig B15.1 ilustra un ejemplo de una
secuencia lineal.

En la derivacin alternativa mostrada en la fig. B15.3, dos o ms transiciones siguen a una etapa. La secuencia parcial, cuyas condiciones
de transicin se cumplen primero, se activa y se procesa. Ya que solamente una secuencia parcial puede ser elegida en una derivacin alternativa, las condiciones de transicin d y g en la fig. B15.3 deberan
excluirse mutuamente.

2
d

5
e

4
f

6
i

Festo Didactic TP301

Fig. B15.3:
Derivacin alternativa

B-184
Captulo 15

2
d
3

5
e

6
g
7

Fig. B15.4:
Derivacin en paralelo

En el caso de la derivacin en paralelo, si se cumple la condicin de


transicin, se realiza la activacin simultnea de varias secuencias parciales. Las secuencias parciales evolucionan simultneamente, pero
completamente independientes unas de otras. La convergencia de las
secuencias parciales est sincronizada. Solamente cuando han finalizado todas las secuencias parciales se produce la transicin a la siguiente etapa bajo la doble lnea en este ejemplo a la etapa 7.

Accin
Cada etapa contiene acciones, la verdadera parte de ejecucin del control. La propia accin (fig, B15.5) se divide en tres campos, en donde los
campos a y c solamente deberan representarse si fuera necesario.

a: Caracterizacin de las acciones a ejecutar


b: Descripcin de la accin
Fig. B15.5:
Accin

c: Referencia a las respuestas asociadas con la orden

La tabla B15.1 contiene los smbolos definidos en DIN 40 719, P.6 o


IEC 848 utilizados para describir la orden de ejecucin de las acciones.

TP301 Festo Didactic

B-185
Captulo 15

stored - memorizante

non-stored - no memorizante

delayed - retardada

enabling - habilitacin

limited - limitada

pulse - pulso

conditional - condicional

Tabla B15.1:
Modo de las acciones

Si una accin debe ser descrita con ms detalle, deber elegirse una
combinacin de letras y smbolos en la orden de esta ejecucin.
DCSF
accin de memorizacin condicional tras un retardo, sujeta a una condicin de habilitacin adicional tras la memorizacin.

Ejemplo

Refinamiento de las etapas


Como se muestra en la fig. B15.6, cada etapa puede contener a su
vez estructuras secuenciales. Esta caracterstica es soportada por el
refinamiento paso a paso de una solucin en el sentido del diseo de
arriba hacia abajo.

2.1

Llenado del almacn

Pieza en almacn y pinza en


posicin 1 y cilindro expulsor retrado

Marcha
2

2.2

Avance cilindro expulsor

Pieza expulsada
Pieza liberada

2.3

S
S

Pinzar pieza
Pinza a posicin 2

Pieza aceptada y requerimiento


de liberar pieza
2.4

S
S

Liberar pieza
Retroceso cil. expulsor

Cilindro expulsor detrs


2.5

Festo Didactic TP301

Pinza en posicin 1

Fig. B15.6:
Refinamiento de las etapas

B-186
Captulo 15

15.3 Diagrama
desplazamiento
-paso

El diagrama de desplazamiento-paso (o desplazamiento-fase) representa grficamente una secuencia de control. La estructura de un diagrama de este tipo se describe en VDI 3260.
Cada uno de los sensores y actuadores estn dispuestos verticalmente
en el diagrama, y cada una de los pasos del control se halla representado horizontalmente. Una lnea de funcin indica el estado de la
seal del correspondiente elemento de sealizacin en cada paso. Las
lneas de seal enlazan las lneas de funcin individuales e indican qu
elemento de sealizacin en el proceso dispara cada accin. Una flecha indica el sentido de la accin. El diagrama se clarifica posteriormente con smbolos.
El diagrama de desplazamiento-paso lo dibuja generalmente el diseador de la mquina o sistema. Cuando se resuelve una tarea de control,
es til trazar el diagrama de desplazamiento-paso como etapa previa a
la programacin del PLC.

Fig. B15.7:
Estructura de un diagrama
desplazamiento-paso

TP301 Festo Didactic

B-187
Captulo 16

Captulo 16
Puesta a punto y
seguridad funcional de un PLC

Festo Didactic TP301

B-188
Captulo 16

16.1 Puesta a punto

Los programas de PLC nunca se terminan, en el sentido de que siempre es posible hacer correcciones y las consiguientes adaptaciones a
los nuevos requerimientos del sistema.
Incluso durante la puesta a punto, a menudo son necesarios los cambios en el programa. La puesta a punto de un sistema puede dividirse
bsicamente en cuatro etapas:
Verificacin del hardware
Transferencia y verificacin del software
Optimizacin del software
Puesta en marcha del sistema

Verificacin del hardware


Cada sensor se conecta a una entrada especfica y cada actuador a
una salida; las direcciones no deben mezclarse.
Esta el la razn por la que el primer paso en la verificacin del hardware siempre debe hacerse tras la lista de asignaciones. Estn todos los
sensores y actuadores asignados a las direcciones de entrada y salida
correctas? Se identifica inequvocamente la funcin seal-0 y seal-1?
La lista de asignaciones debe corregirse y completarse ya que forma
parte de la documentacin antes de la puesta a punto de un programa.
Durante la verificacin, las salidas se activan para comprobarlas. Los
actuadores deben cumplir con las funciones especificadas.

Transferencia y pruebas del software


Incluso antes de la puesta a punto, todas las facilidades de verificacin
del programa sin conexin con el control, deberan utilizarse intensivamente. Una de estas funciones de prueba muy prctica es, por ejemplo, la simulacin del programa.
A continuacin, el programa es transferido a la unidad central de control el PLC. Un pequeo nmero de PLCs ofrecen actualmente facilidades para la simulacin: Todo el programa se ejecuta sin que haya
entradas ni salidas conectadas. De forma similar, slo la conexin de
las salidas puede omitirse. As, el procesamiento de las salidas del
PLC se realiza solamente en la tabla de imagen, cuyos estados no son
traspasados fsicamente a las salidas disponibles. Esto, por lo tanto,
elimina el riesgo de daar partes de la mquina o del sistema, lo cual
es de mucha importancia en el caso de procesos crticos o peligrosos.

TP301 Festo Didactic

B-189
Captulo 16

Tras esto, las partes individuales del programa y las funciones del sistema se verifican: Funcionamiento manual, ajuste, programas de supervisin individuales, etc., y finalmente la interaccin de las partes del
programa con la ayuda de todo el conjunto.
Con ello, el programa es puesto a punto paso a paso. Aspectos importantes de la puesta a punto y la deteccin de errores son las funciones
de test de los sistemas de programacin, tales como el funcionamiento
en paso a paso o el establecimiento de puntos de parada. El modo de
paso a paso tiene una particular importancia, ya que con ello el programa se ejecuta en la memoria del PLC lnea a lnea o paso a paso. De
esta forma, cualquier error que pudiera haber en el programa puede
ser localizado inmediatamente.

Optimizacin del software


Casi siempre, los programas largos pueden mejorarse tras la primera
prueba de funcionamiento. Es importante que cualquier modificacin o
correccin se haga no tan slo en el programa del PLC, sino que tambin se tenga en cuenta en la documentacin. Adems de la documentacin, debe guardarse cada vez el nuevo estado del software.

Puesta en marcha del sistema


Esto ya se produce en parte durante la fase de optimizacin y verificacin. Una vez que el estado final del programa PLC y la documentacin
han sido establecidos, hay que ejecutar de nuevo todas las funciones del
control (de acuerdo con la tarea). Entonces el sistema est listo para ser
aceptado por el cliente o el correspondiente departamento.

Festo Didactic TP301

B-190
Captulo 16

16.2 Seguridad
funcional
de un PLC

Alimentacin de tensin al PLC


Debe distinguirse entre la tensin de control (tensin de las seales
entre la mquina controlada y el PLC) y la tensin de la lgica (tensin de alimentacin interna de la unidad central de control).
El nivel de tensin de funcionamiento de un PLC est especificado en
DIN IEC 1131-/Parte 2. Se halla entre 24 VDC y 48 VDC o 48 VAC y
220 VAC respectivamente. Para el mercado americano tambin puede
utilizarse 120 VAC.
Tensin de control
La tensin de control alimenta a los sensores y actuadores. Para ello
el usuario debe conectar una fuente de alimentacin al control. La tensin de control de un PLC es generalmente de 24 VDC o 230 VAC.
(Principalmente se utiliza corriente continua (DC)). En algunos pases,
se utilizan tambin diferentes tensiones, p. ej., 48 VDC o 120 VAC. La
potencia de la fuente de alimentacin depende el control utilizado y de
las entradas/salidas conectadas.
El valor de la tensin de control permite una cierta tolerancia. En general, los mdulos del PLC estn protegidos contra sobretensiones, dependiendo del mdulo a travs del cual se realiza la unidad central de
control.
Tensin de la lgica
Adems, un PLC requiere una alimentacin para la lgica interna: La
tensin de la lgica, que forma las seales en la unidad central. Dado
que la tensin de la lgica debe cumplir con exigencias muy estrictas,
debe estar estabilizada. Se utilizan o bien 5 V (nivel TTL) o 10 V (nivel
CMOS), dependiendo del mdulo a travs del cual se realiza la unidad
central de control.
Hay tres posibilidades de tensin de alimentacin:
1.

La tensin de control y la tensin de la lgica se generan


completamente separadas de la tensin principal.

2.

Dos fuentes de alimentacin combinadas en una caja para la


generacin de ambas tensiones.

3.

La tensin de la lgica es generada a partir de la tensin de


control (no de la tensin principal).

TP301 Festo Didactic

B-191
Captulo 16

Supresin de interferencias
Todos los PLCs son extremadamente sensibles a las interferencias
elctricas. Debe distinguirse entre dos versiones diferentes:
Interferencias que alcanzan la tensin de la lgica desde la alimentacin de tensin a travs de la fuente de alimentacin;
Interferencias que afectan a las lneas desde y hacia los sensores y
actuadores.

1.

Interferencias en la tensin de la lgica


Un filtro principal de supresin de interferencias y un condensador protegen contra interferencias de este tipo. El filtro principal
de supresin de interferencias protege contra sobretensiones y
seales de interferencia de la alimentacin de tensin. Un condensador almacena energa elctrica, con lo que la tensin de
alimentacin del control est protegida en el caso de breves fallos de tensin.
Si este tipo de supresin de interferencias no ha sido incorporado
por el fabricante del PLC, deber ser el usuario quien instale
consecuentemente un filtro principal de supresin de interferencias y un condensador.

2.

Interferencias en la lnea desde y hacia sensores y actuadores


Los pulsos de interferencia en las lneas elctricas pueden producir falsas seales 1 0 en las entradas de los PLCs, que no
corresponden a las emitidas por los sensores. Estas seales
pueden generarse por efecto de otros cables.
Este tipo de interferencias es peligrosa: Por ello, como norma, los
mdulos de entrada de un PLC estn protegidos por medio de
optoacopladores conectados en serie y por un retardo de las seales. El optoacoplador protege contra tensiones de hasta
5000 V aproximadamente. El retardo de la seal evita seales
espreas, ya que estas generalmente son muy breves. El retardo puede oscilar entre 1 y 20 ms, segn el tipo de PLC. Los
mdulos de entrada de "Alta velocidad" (sin seal de retardo)
deben apantallarse, por ejemplo por medio de cables blindados.

Festo Didactic TP301

B-192
Captulo 16

Los mdulos de salida contiene tambin un optoacoplador para proteccin contra sobretensiones. Adems, las salidas est protegidas ante
cortocircuitos, aunque normalmente no ante cortocircuitos muy prolongados.

Tensin inducida
Cuando se corta la tensin que alimenta a una carga inductiva (p. ej.
una bobina de una electrovlvula), se crea un tensin inducida en la
bobina.
Esta tensin inducida, que puede alcanzar valores muy altos, debe eliminarse para proteger el mdulo de salida. Para ello se utiliza un diodo
supresor. Los mdulos de salida de muchos PLCs ya est provistos de
diodos supresores de este tipo. Sin embargo, en este caso, la tensin
residual se convierte en un factor de interferencia en los cables de
interconexin. Por ello deben tomarse medidas protectoras directamente en el punto de origen, es decir, en la bobina: por medio de un diodo
supresor (slo para corriente continua) o por medio de un varistor
(resistencia que depende de la tensin). Tambin pueden utilizarse en
paralelo con la bobina dos diodos Zener polarizados inversamente.
Sin embargo, para tensiones que sobrepasen los 150 V, deben conectarse en serie varios diodos.

PARO DE EMERGENCIA
Si se acciona el PARO DE EMERGENCIA, es esencial llegar a la situacin que sea menos peligrosa, tanto para las personas como para
el sistema. Los elementos finales de control y los actuadores que pudieran provocar situaciones peligrosas, deben desconectarse inmediatamente (p. ej. husillos). Por el contrario, los elementos de control finales y los actuadores que podran provocar situaciones peligrosas a las
personas o al sistema cuando se desactivan, debern seguir activados
incluso en un caso de emergencia (p. ej. dispositivos de sujecin). En
un sistema automatizado, en cualquier momento debe disponerse de la
posibilidad de accionar el PARO DE EMERGENCIA.
Esta es la razn por la que los controles electrnicos no deben asumir
la funcin de PARO DE EMERGENCIA. El circuito de PARO DE
EMERGENCIA debe ser establecido independientemente del PLC por
medio de la tcnica de rels (contactos fsicos). DIN 57 113 tambin lo
especifica, ya que sera imposible activar un PARO DE EMERGENCIA
con un control averiado o simplemente detenido.
Una vez que el PARO DE EMERGENCIA ha sido desenclavado, no debe
ser posible que la mquina se ponga en marcha automticamente.

TP301 Festo Didactic

B-193
Captulo 16

Se ha cruzado un transistor de salida de un PLC. En la salida hay


aplicados 24 V permanentemente (correspondientes a una seal-1). La
bobina de la electrovlvula est activada; el cilindro avanza, aunque la
salida no haya sido activada por el sistema. Si el PARO DE EMERGENCIA tuviera que ser ejecutado por el programa del PLC, permanecera inactivo, ya que el error se produce "fuera" del programa. Por
ello, la accin del PARO DE EMERGENCIA debe realizarse por hardware directamente sobre los elementos de potencia.
Un mtodo es conectar la funcin de PARO DE EMERGENCIA con la
tensin de alimentacin de los mdulos de salida. La conexin debe
ser a prueba de fallos. En el caso de un PARO DE EMERGENCIA,
todas las salidas deben asumir la seal-0. No importa si una determinada salida haya sido activada o desactivada por el PLC.
Si se utiliza este mtodo, los actuadores conectados o no deben moverse o deben hacerlo hacia una posicin de seguridad en el caso
prdida de tensin! En lo posible, debern utilizarse este tipo de vlvulas y actuadores:
Vlvulas neumticas/hidrulicas:
Se utilizan vlvulas de 5/4 5/3 vas con posicin central normalmente
cerrada (posicin con bloqueo de las conexiones al cilindro). Estas vlvulas bloquean el cilindro entre dos cmaras de aceite o de aire. En el
caso de cilindros neumticos deben elegirse tubos cortos entre cilindro
y vlvula y restricciones en el aire de escape de la vlvula.
Motores elctricos
Se utilizan motores con freno. En el caso de un fallo de tensin, el
freno acta inmediatamente como resultado de la fuerza de un muelle.

El circuito de PARO DE EMERGENCIA por Hardware realiza la verdadera funcin de seguridad. Adicionalmente, tambin puede enviarse al
PLC una seal de PARO DE EMERGENCIA. Independientemente de
la accin que se haya realizado por hardware, los programas del PLC
deben reaccionar en consecuencia; en este caso, desactivando todas
las salidas. Esto se define en un programa paralelo. Una vez que se
ha repuesto el PARO DE EMERGENCIA, el sistema no debera poder
arrancar de nuevo por s solo. Debe accionarse un pulsador independiente para volver a poner en marcha el sistema.

Festo Didactic TP301

Ejemplo

B-194
Captulo 16

El nuevo arranque del sistema debe ser controlado por medio de un


programa del PLC. Hay dos posibilidades para el arranque despus de
una emergencia:
Continuar a partir del mismo punto;
Situar el sistema en posicin de partida y volver a poner en marcha
el sistema desde el origen.
En el segundo caso, es necesario pasar al modo manual o modo de
ajuste.
Si se requieren medidas de seguridad adicionales para el PARO DE
EMERGENCIA, deben utilizarse rels o controles neumticos adicionales por parte del usuario. Tambin pueden utilizarse PLCs especiales de seguridad, que funcionan por medio de dos unidades centrales
separadas, con dos etapas conectadas en serie para cada salida (sistemas redundantes).

Conexin segura ante un fallo


La mayora de las mquinas se ponen en marcha por medio de un
pulsador y se desconectan por medio de otro pulsador. El pulsador de
desconexin asume adicionalmente una funcin de seguridad: El proceso de trabajo puede ser interrumpido en cualquier momento y la mquina puede detenerse. Sin embargo, con el PARO DE EMERGENCIA,
todo el sistema se desconecta. A diferencia del PARO DE EMERGENCIA, la funcin de DESCONEXIN (OFF) se controla a travs del PLC.
Sin embargo hay que observar que la funcin de DESCONEXIN
debe mantenerse aunque el cableado del pulsador de desconexin sea
defectuoso. La conexin debe ser a prueba de fallos (fail-safe); es
decir, el pulsador DESCONEXIN debe conectarse y programarse en
forma de un contacto normalmente cerrado. La lista de asignaciones
facilita informacin relacionada con los estados fsicos del elemento y
sus estados lgicos (seal-1 seal-0).

Ejemplo

Un generador de seal supervisa la temperatura del aceite de una caja


de cambios. Por razones de seguridad, la conexin del generador de
seal debe ser a prueba de fallos: La seal-1 identifica la temperatura
correcta, la seal.0 la temperatura incorrecta. Si la conexin es defectuosa, el generador de seal asume tambin una seal-0 (incluso en el
caso de que la causa no sea una temperatura incorrecta).
Esto elimina la situacin en la que una condicin crtica del sistema no
es indicada por el generador de seal por un cableado defectuoso.

TP301 Festo Didactic

B-195
Captulo 17

Captulo 17
Comunicaciones con PLC

Festo Didactic TP301

B-196
Captulo 17

17.1 La necesidad de
comunicacin

Por comunicaciones con PLC, entendemos la transferencia de informacin, es decir, de datos, entre el control lgico programable y otros
dispositivos de procesamiento, en donde estos dispositivos se utilizan
como un medio auxiliar para tareas de control especficas, p. ej., entrada de datos a travs de un ordenador o emisin de datos hacia una
impresora.
La automatizacin aumenta la necesidad de comunicacin. Los datos
deben fluir continuamente desde la produccin a otras reas operativas. Esto proporciona una visin de conjunto de los estados de la produccin y de las tareas individuales (adquisicin de datos de produccin).
Actualmente, los sistemas automatizados estn equipados con complejos sistemas de deteccin de errores y de fallos. Las indicaciones de
fallos y advertencias deben generarse, centralizarse y ser comunicadas
automticamente al operador. Para ello se conecta al control una impresora para seguimiento histrico o un display electrnico para
indicacin instantnea.
En algunos casos, los datos se transfieren al PLC por un ordenador en
un proceso activo, o se combinan varios dispositivos de control en una
red de sistemas.

17.2 Transmisin
de datos

Cmo puede comunicarse el PLC con otros dispositivos de procesamiento de datos? Los bit individuales, que se combinan en una palabra
de datos (data word), deben transmitirse desde un terminal de datos a
otro.
Aqu debe hacerse una distincin bsica entre dos mtodos de transmisin de datos: serie o paralelo.
La transmisin de datos en paralelo significa que debe utilizarse una
lnea independiente para cada seal binaria individual. Cuando los generadores de seal estn, por ejemplo, conectados a un control lgico
programable, se instala un cable para cada pulsador, final de carrera y
sensor hasta un terminal de bornes y de ah a la entrada del PLC.
Toda la informacin (pulsador accionado , cilindro extendido) puede
as transmitirse simultneamente (en paralelo) al PLC. Ya que en el
caso de transmisin paralela de seales de entrada y salida, se necesita una lnea para cada generador de seal, se necesitan kilmetros
de mazos de cables en aquellas instalaciones y mquinas que por su
complejidad ocupan muchas entradas/salidas.
Por ello, para la transmisin en paralelo de una palabra de datos (data
word) debe disponerse del suficiente nmero de lneas para transmitir
todos los bits de esta data word simultneamente.
Con la transmisin de todos en serie se transmite una sola seal binaria cada vez.

TP301 Festo Didactic

B-197
Captulo 17

Consecuentemente, se necesita una sola lnea de datos para la transmisin en serie de palabras de datos, independientemente del nmero
de bits, para transmitir seales binarias consecutivamente. Para poder
identificar las diferentes seales en forma de palabra de datos, es necesario que el emisor y el receptor estn ajustados a la misma velocidad de transmisin (frecuencia en Baudios), longitud de palabra, bit de
inicio y de parada y paridad.

Los diferentes procedimientos de codificacin, transmisin y mtodos


de funcionamiento, as como los diferentes mtodos de proteccin de
datos hacen que sea esencial definir como estndares las caractersticas elctricas, funcionales y mecnicas de los interfaces.

17.3 Interfaces

Un interface paralelo muy extendido es el interface Centronics. Dispone de 8 lneas de datos para la transmisin, es decir, pueden transmitirse 8 bits simultneamente. El interface Centronics se utiliza muy a
menudo en distancias cortas para la conexin con impresoras.

Interfaces por tensin

Interfaces por
corriente

Denominacin

V.24

Centronics

20 mA

Modo de
transmisin

serie
asncrona

paralelo

serie
asncrona

Modo de
funcionamiento

full duplex

simplex

full duplex

Estndard

V.24
RS-232-C

Centronics
TTL

TTY

hasta 30 m
20 000 bit/s

hasta 2 m
106 bit/s

hasta 1000 m
20 000 bit/s

Distancia de
transmisin,
velocidad de
transmisin

Tabla B17.1:
Interfaces

Festo Didactic TP301

B-198
Captulo 17

El interface ms frecuentemente utilizado para la transmisin de datos


en serie es el V.24.
El interface paralelo Centronics y el serie V.24, ambos son interfaces
de tensin. Los bits estn representados por 0 1 a travs de un
determinado nivel de tensin. Para crear este nivel de seal, debe incorporarse una lnea de masa al interface V.24.
En ambos interfaces, se han definido lneas adicionales para el control de
los datos y la masa (tierra), aparte de las lneas para los datos en s.
Algo ms sencillo que el interface V.24 es una conexin configurada a
travs de un interface serie de 20 mA. Todo lo que necesita este interface en bucle de corriente en un bucle transmisor y uno receptor para
la transmisin de datos. Una corriente constante de 20 mA seala el
nivel 0 (lgica 0), "ausencia de corriente" seala el nivel 1 (lgica 1)
en la lnea de datos. Este interface se utiliza bastante en la tecnologa
de control debido a su inmunidad a interferencias.

17.4 Comunicacin
en la zona de
campo

En los sistemas y mquinas automticas debe transportarse una gran


cantidad de informacin. Desde las simples seales de sensores binarios, seales analgicas de sensores de medicin de vlvulas proporcionales, as como datos registrados y parmetros para el control de
procesos, deben ser intercambiados de forma fiable entre los componentes de la tecnologa de control en un sistema automatizado.
El intercambio de datos de campo debe realizarse dentro de unos
tiempos de reaccin especificados ya que de lo contrario partes del
sistema podran seguir funcionando incontroladamente.
Un bus de campo es un sistema de transmisin serie digital de seales y datos. Todas las estaciones en un bus de campo deben estar en
situacin de recibir la comunicacin de otras estaciones del bus e intercambiar datos segn un protocolo acordado. La estacin del bus que
toma la iniciativa para el intercambio de datos se denomina master.
Las estaciones del bus que reciben o suministran datos puramente
bajo la iniciativa del master se denominan slaves.
Para la transmisin de datos en los sistemas de bus se utilizan cables
bifilares consistente en pares trenzados o cables coaxiales. Por ello, el
cableado de los sistemas conectados en forma de bus es mnimo.

TP301 Festo Didactic

B-199
Captulo 17

En sl mercado existen una gran cantidad de diferentes sistemas de


bus, que pueden dividirse en dos grandes grupos: sistemas de bus
abiertos y sistemas de bus cerrados.
Por sistemas de bus cerrados entendemos sistemas que son:
especficos de un fabricante
no hay especificaciones disponibles sobre el protocolo de transmisin
no son compatibles. Adems, no permiten la conexin con dispositivos de otros fabricantes y la adaptacin supone costes muy elevados.
Sistemas cerrados son, p. ej. SINEC L1 de Siemens, SUCOnet K de
Klckner-Moeller, Data Highway de Allen Bradley, Festo Fielbus, Modenet de AEG/MODICON.
Contrariamente, los sistemas de bus abiertos tienen
protocolos e interfaces estandarizados,
protocolos declarados y
una gran cantidad de dispositivos de diferentes fabricantes que pueden conectarse al bus.
Son sistemas abiertos, p. ej. Profibus, Interbus-S, CAN bus, SINEC L2,
AS-i.
Las ventajas de utilizar un sistema abierto de bus son las siguientes:
Descentralizacin de las funciones de control
Coordinacin de procesos en reas separadas
Realizacin del flujo de datos de produccin y control de forma paralela al flujo de materiales.
Simplificacin de la instalacin y reduccin de los costes de cableado (bus bifilar)
Simplificacin de la puesta a punto de un sistema (mayor claridad,
subsistemas previamente verificados)
Reduccin en los costes de servicio (diagnosis del sistema centralizada)
Utilizacin de equipos de diferentes fabricantes en la misma red
Transmisin de datos del proceso hasta el nivel de planificacin.

Festo Didactic TP301

B-200
Captulo 17

TP301 Festo Didactic

B-201
Apndice

Apndice

Festo Didactic TP301

B-202
Apndice

Referencia de
las ilustraciones

Bibliografa

Fig. B1.2:

Ejemplo de un PLC: AEG Modicon A120


AEG Schneider Automation GmbH,
Steinheimer Strae 117, 63500 Seligenstadt

Fig. B1.4:

PLC Compacto (Mitsubishi FX0)


Mitsubishi Electric Europe GmbH,
Gothaer Strae 8, 40880 Ratingen

Fig. B1.4:

PLC Modular (Siemens S7-300)


Siemens AG,
AUT 111, Postfach 4848, 90475 Nrnberg

Kostka, Winfried

Diccionario de la tcnica de mando y automatizacin


Alemn/Espaol - Espaol/Alemn
Festo Didactic KG, Esslingen, 1988
Lxico de la tecnologa de control (En Ingls)
Festo Didactic KG, Esslingen, 1988

Directivas
y estndares

DIN VDE 0113/


EN 60204

Equipamiento elctrico de maquinaria industrial;


Definiciones generales

IEC 1131/
DIN EN 61131

Controles lgicos programables;


Parte 1: Informacin general
Parte 2: Equipos, requerimientos y ensayos
Parte 3: Lenguajes de programacin
Parte 4: Directivas de usuario (en preparacin con ICE)
Parte 5: Especificacin del servicio de mensajes
(en preparacin con ICE)

DIN IEC 113

Documentacin sobre circuitos;


Parte 7: Utilizacin de smbolos para elementos binarios
en esquemas de circuitos

IEC 848

Preparacin de diagramas de funciones para sistemas


de control

TP301 Festo Didactic

B-203
ndice

ndice

Festo Didactic TP301

B-204
ndice

A
Acciones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11-133
Acumulador . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-36
Ajuste de la tensin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-44
Algebra de Boole
reglas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-29
Amplificacin de potencia . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-45
reas de aplicacin de un PLC. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-2
Asignaciones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-111

B
Bloque de funcin F_TRIG . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12-158
Bloque de funcin R_TRIG . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12-158
Bloque de funcin RS . . . . . . . . . . . . . . . . . . . . . . . . . . 12-154 - 12-155
Bloques de accin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11-133
Bloques de funcin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-81
Bucle FOR . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-115
Bucle REPEAT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-116
Bucle WHILE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-117
Bus de campo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17-198

C
Calificadores de accin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11-137
Comunicacin en la zona de campo . . . . . . . . . . . . . . . . . . . . . . . 17-198
Condiciones de transicin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11-130
Contador de programa . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-37
Contador incremental/decremental . . . . . . . . . . . . . . . . . . . . . . . . 14-178

TP301 Festo Didactic

B-205
ndice

D
Declaracin de variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-71
Definicin bsica de un PLC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-5
Derivacin alternativa. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11-126
Derivacin paralela . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11-129
Deteccin de la seal . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-42
Diagrama de bloques de funcin. . . . . . . . . . . . . . . . . . . . . . . . . . . 5-57
elementos de . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-92
Diagrama de contactos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-57
elementos del . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-96
Diagrama de desplazamiento-etapa . . . . . . . . . . . . . . . . . . . . . . 15-186
Diagrama de funciones secuencial . . . . . . . . . . . . . . . . . . . 5-59, 15-180
ejemplo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11-143
Diagrama de Karnaugh-Veitch. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-30
Diagrama en escalera . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-57
Direccionamiento simblico . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-66
Dispositivo programador . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-46
Documentacin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-53

E
Ecuacin Booleana . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-20
EEPROM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-41
El cdigo BCD . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-14
El sistema de numeracin binario . . . . . . . . . . . . . . . . . . . . . . . . . . 2-12
El sistema de numeracin decimal . . . . . . . . . . . . . . . . . . . . . . . . . 2-12
EPROM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-41
Estndares
IEC 1131. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-8
Etapa . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11-122
Etapas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11-120
Etiqueta . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-102
Evaluacin de flancos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12-157
Expresin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-108

Festo Didactic TP301

B-206
ndice

F
Fallo de tensin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16-194
Filtrado de las seales . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-43
Firmware . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-34
Forma estndar
disyuntiva . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-28
Forma estndar conjuntiva . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-28
Funcin AND, conjuncin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-21
Funcin NOT, negacin. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-20
Funcin OR, disyuncin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-23
Funciones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-76
definidas por el usuario . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-85
Funciones de conmutacin
simplificacin de . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-26
Funciones de conteo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14-172
Funciones estndar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-79
Funciones lgicas bsicas. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-20

H
Hardware . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-34
Herramienta de programacin y diagnosis . . . . . . . . . . . . . . . . . . . . 4-47

I
Imagen del proceso . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-39
Inicializacin. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-75
Instruccin CASE. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-114
Instruccin EXIT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-118
Instruccin IF . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-112
Instrucciones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-102
Instrucciones de iteracin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-115
Instrucciones de seleccin. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-112
Instruction List . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-58
Interfaces . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17-197

L
Ladder diagram . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Lenguajes de programacin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Lnea de control. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Lnea de datos. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Lnea de direcciones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Lista de Instrucciones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

5-57
5-56
4-34
4-34
4-34
5-58

TP301 Festo Didactic

B-207
ndice

M
Memoria de programas de aplicacin . . . . . . . . . . . . . . . . . . . . . . . 4-40
Microordenador . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-34
Modelo de fases
generacin de software de PLC. . . . . . . . . . . . . . . . . . . . . . 5-50
Mdulo de entrada . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-6
Mdulo de entradas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-42
mdulo de salida . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-6, 4-44
potencia admisible . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-45
Multitarea . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-5

N
Numeracin hexadecimal. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-14
Nmeros reales . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-15

O
Operador . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-102
Operandos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-102
Optoacoplador . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-42
Orden . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-36
Ordenador personal . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-46

P
PARO DE EMERGENCIA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16-192
PLC
Software . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-50
Prioridad . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-109
Programa de PLC
procesamiento cclico . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-39
tiempo de ciclo/scan . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-39
Programas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-88
Proteccin ante cortocircuito . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-45
Proteccin ante sobrecargas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-45
Puesta a punto. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16-188
Pulse timer
Timing diagram . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13-163

Festo Didactic TP301

B-208
ndice

R
RAM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Recursos de estructuracin. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
configuracin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
programa . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Recursos de un PLC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
denominaciones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Red de trabajo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Registro de instrucciones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Rels . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Renglones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Representacin de datos. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Retardo de la seal de entrada. . . . . . . . . . . . . . . . . . . . . . . . . . . . .

4-40
5-53
5-54
5-54
6-62
6-62
7-92
4-36
4-45
8-96
6-66
4-43

S
Seguridad funcional de un PLC . . . . . . . . . . . . . . . . . . . . . . . . . . 16-190
Seal
binaria. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-16
digital . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-17
Seales
generacin de . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-16
Sequential function chart . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-59
Simplifiacin de funciones lgicas. . . . . . . . . . . . . . . . . . . . . . . . . . . 3-28
Sistemas de bus . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17-199
Sistemas de control lgico. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12-148
Sistemas de control secuencial . . . . . . . . . . . . . . . . . . . . . . . . . . . 15-180
Software. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-34
Statement list . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-58
Structured text . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-58
Supresin de interferencias. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16-191

TP301 Festo Didactic

B-209
ndice

T
Tabla de la verdad . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-20
Tabla de operadores . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-103
Temporizador a la conexin . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13-165
Temporizador a la desconexin. . . . . . . . . . . . . . . . . . . . . . . . . . 13-167
Temporizador de pulso . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13-163
Temporizadores . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13-162
Tensin de alimentacin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16-190
Tensin de la lgica. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16-190
Tensin inducida mtua. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16-192
Texto estructurado . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-58
Tipos de datos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-69
Transicin. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11-124
Transiciones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11-120
Transmisin de datos. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17-196
Transmisin de datos en paralelo . . . . . . . . . . . . . . . . . . . . . . . . 17-196
Transmisin de todos en serie. . . . . . . . . . . . . . . . . . . . . . . . . . . 17-196

U
Unidad aritmtica . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-36
Unidad Central . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-36
Unidad central de control. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-6
Unidad de control. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-37
Unidades de organizacin de programa . . . . . . . . . . . . . . . . . . . . . 6-76

V
Variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-65
directamente direccionadas . . . . . . . . . . . . . . . . . . . . . . . . . 6-65
von-Neuman, principio de . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-37

Festo Didactic TP301

B-210
ndice

TP301 Festo Didactic

C-1
Soluciones

Seccin C Soluciones
Componentes de un control lgico programable
Solucin 1:

Diseo y funcionamiento de un control lgico


programable
Componentes de un PLC . . . . . . . . . . . . . . . . . . . . .

C-3

Programacin segn IEC 1131


Solucin 2:

Del problema a la solucin


teniendo en cuenta IEC 1131-3
Pasos prcticos para la programacin de un PLC. .

C-5

Operaciones lgicas bsicas


Solucin 3:
Solucin 4:
Solucin 5:
Solucin 6:

Circuito de una lmpara


La funcin de asignacin . . . . . . . . . . . . . . . . . . . . .

C-7

Alarma antirrobo
La funcin NOT . . . . . . . . . . . . . . . . . . . . . . . . . . . .

C-9

Prensa con barrera protectora


La funcin AND. . . . . . . . . . . . . . . . . . . . . . . . . . . .

C-11

Sistema de timbre
La funcin OR . . . . . . . . . . . . . . . . . . . . . . . . . . . .

C-13

Sistemas lgicos sin funciones memorizantes


Solucin 7:
Solucin 8:

Dispositivo estampador
Combinacin de AND/OR/NOT . . . . . . . . . . . . . . .

C-15

Control de un silo para dos materiales a granel


Circuito combinatorio con derivacin . . . . . . . . . . . C-19

Festo Didactic TP301

C2
Soluciones

Sistemas lgicos con funciones memorizantes


Solucin 9:

Alarma de incendios
Activacin de una salida . . . . . . . . . . . . . . . . . . . . C-21

Solucin 10:

Supervisin de la rotura de una broca


Activacin y desactivacin de una salida . . . . . . . C-23

Solucin 11:

Activacin de un cilindro
Flancos de las seales . . . . . . . . . . . . . . . . . . . . . C-25

Sistemas lgicos con funciones temporales


Solucin 12:

Encolado de componentes
Pulso . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . C-29

Solucin 13:

Dispositivo de marcado
Seal con retardo a la conexin . . . . . . . . . . . . . . C-31

Solucin 14:

Dispositivo de fijacin
Seal con retardo a la desconexin . . . . . . . . . . . C-35

Sistemas de control secuencial


Solucin 15:

Dispositivo elevador para paquetes


Secuencia lineal . . . . . . . . . . . . . . . . . . . . . . . . . . C-39

Solucin 16:

Dispositivo elevador y clasificador para paquetes


Derivacin alternativa. . . . . . . . . . . . . . . . . . . . . . . C-43

Solucin 17:

Dispositivo de estampacin con contador


Ciclos de recuento . . . . . . . . . . . . . . . . . . . . . . . . . C-47

TP301 Festo Didactic

C-3
Solucin 1

Ttulo

Diseo y puesta a punto


de un control programable
Componentes de un PLC

1. Componentes de un PLC

Cules son los componentes bsicos de un control lgico programable? Pregunta 1


Respuesta

Los componentes bsicos de un PLC son:


la unidad de procesamiento principal (antiguamente unidad central de control)
los mdulos de entrada
los mdulos de salida
la memoria del programa
el programa del PLC

Cules son los mdulos bsicos que constituyen la unidad de proce- Pregunta 2
samiento principal de un control lgico programable?
Los mdulos bsicos de una unidad de procesamiento principal son:

Respuesta

la unidad de control
la memoria de datos
la unidad aritmtica y lgica (ALU)

Cmo se consigue el aislamiento elctrico entre las seales de los


sensores/actuadores y el PLC?

Pregunta 3

Las seales de los sensores/actuadores y el PLC estn elctricamente aisladas por medio de un optoacoplador. La unidad de procesamiento principal est as separada del circuito externo de los sensores y actuadores. Por lo tanto, las interferencias en estos circuitos no pueden daar al control.

Respuesta

Seal de
entrada

Deteccin
de error de
tensin

Retardo de
la seal

Optoacoplador

Seal a la
unidad de
control
Diagrama de bloques de
un mdulo de entrada

Festo Didactic TP301

C-4
Solucin 1

2. Diseo y puesta a punto del PLC seleccionado


La tabla siguiente relaciona como ejemplo los datos tcnicos de un
control lgico programable FPC 101B de Festo.

Tensin de funcionamiento
Tensin nominal

24 V DC

Margen de tensin admisible

16 a 30 V DC

Consumo de corriente

aprox. 160 mA

Entradas
Nmero

21
de las cuales 1 es de conteo rpido

Corriente de entrada

6 mA

Nivel de entrada

lg. 0 = 0 a 5 V
lg. 1 = 11 a 30 V

Salidas

Datos tcnicos

Nmero

14 salidas a transisitor

Tipo

Conmutacin a positivo

Tensin de salida

Tensin de funcionamiento 2 V

Corriente de salida

mx. 300 mA/salida


Corriente total de salida mx. 2.5 A

TP301 Festo Didactic

C-5
Solucin 2

Del problema a la solucin


teniendo en cuenta IEC 1131-3
Procedimientos de programacin de PLC

Ttulo

1. Pasos prcticos para la creacin de un programa de PLC

Lista de los cinco pasos prcticos para crear un programa de PLC.


Los cinco pasos para crear un programa de PLC son:
Descripcin de la tarea de control
Planificacin de la solucin
Implementacin de la solucin
Verificacin y puesta a punto del sistema de control
Documentacin del sistema de control

Qu actividades hay que realizar en la etapa "Realizacin de la


solucin"?

Pregunta 1

En esta etapa se realizan las siguientes actividades:

Respuesta

Configuracin del PLC


Declaracin de las variables del programa del PLC
Formulacin de la lgica del programa PLC en uno de los lenguajes LD. FBD, IL, ST o SFC
2. Recursos de un PLC segn IEC 1131-3

Los siguientes recursos pueden direccionarse directamente.


Especificar las direcciones segn IEC 1131-3_
Bit de Entrada 14%IX14 %I14
Memoria (Flag/Marca) 9%MX9 %M9
Palabra de salida 3%QW3
Entrada 7 en la 2 tarjeta de entradas%I2.7

Festo Didactic TP301

C-6
Solucin 2

3. Declaracin de variables segn IEC 1131-3

En la declaracin de un programa, deben tenerse en cuenta los siguientes datos. Usar el tipo de datos apropiado en la declaracin.
La declaracin va a ser vlida slo localmente.
Entrada de un interruptor S1, aplicada a la entrada 2
de la 4 tarjeta de entradas.
Temperatura TEMP, aplicada a la palabra de salidas N 1
memoria VALVULA_ABIERTA
memoria booleana con el identificador PIEZA_PRESENTE,
preasignada al valor inicial 0
memoria booleana con el identificador INIC_ROBOT, preasignada
con el valor inicial 1
almacenamiento de un nmero (entero - INT) bajo el nombre
NUMERO, con el valor 0 preasignado

VAR
S1 AT %I4.2
TEMP AT %QW1
VALVULA_ABIERTA
PIEZA_PRESENTE
INIC_ROBOT
NUMERO
END_VAR

:BOOL;
:INT;
:BOOL;
:BOOL:=0;
:BOOL:=1;
:INT:=0;

TP301 Festo Didactic

C-7
Solucin 3

Ttulo

Circuito de una lmpara


La funcin de asignacin

3. Declaracin de las variables del programa PLC


Nombre

Tipo de datos

Direccin

Comentario

S1

BOOL

%IX0.0

La entrada % IX0.0 genera


seal-1, mientras el pulsador
est presionado

H1

BOOL

%QX0.0

La lmpara H1 luce si la salida


% QX0.0 lleva seal-1

4. Formulacin del programa de PLC en uno de los diversos


lenguajes de programacin
Segn IEC 1131-3, un programa consiste en un descriptor de programa este tambin incluye la declaracin de variables y el
cuerpo principal del programa. Esta es la razn por la que la declaracin de variables en forma textual es una parte componente de
cada solucin representada.

PROGRAM Lampara
VAR
S1 AT %IX0.0

: BOOL;

H1 AT %QX0.0

: BOOL;

(* La entrada % IX0.0 genera seal-1,


(* mientras el pulsador est presionado
(* La lmpara H1 luce si la salida
(* % QX0.0 lleva seal-1

*)
*)
*)
*)

END_VAR
S1

H1

Diagrama de bloques
de funcin

END_PROGRAM

PROGRAM Lampara
VAR
S1 AT %IX0.0

: BOOL;

H1 AT %QX0.0

: BOOL;

(* La entrada % IX0.0 genera seal-1,


(* mientras el pulsador est presionado
(* La lmpara H1 luce si la salida
(* % QX0.0 lleva seal-1

*)
*)
*)
*)

END_VAR
S1

H1

END_PROGRAM

Diagrama de contactos

Festo Didactic TP301

C-8
Solucin 3

PROGRAM Lampara
VAR
S1 AT %IX0.0
H1 AT %QX0.0

: BOOL;
: BOOL;

(*
(*
(*
(*

La entrada % IX0.0 genera seal-1,


mientras el pulsador est presionado
La lmpara H1 luce si la salida
% QX0.0 lleva seal-1

*)
*)
*)
*)

(*
(*
(*
(*

La entrada % IX0.0 genera seal-1,


mientras el pulsador est presionado
La lmpara H1 luce si la salida
% QX0.0 lleva seal-1

*)
*)
*)
*)

END_VAR
LD
ST

S1
H1

END_PROGAM

Lista de instrucciones

PROGRAM Lamp
VAR
S1 AT %IX0.0
H1 AT %QX0.0

: BOOL;
: BOOL;

END_VAR
H1 := S1;
END_PROGRAM

Texto estructurado

TP301 Festo Didactic

C-9
Solucin 4

Ttulo

Alarma antirrobo
La funcin NOT

3. Declaracin de las variables del programa PLC


Nombre

Tipo de datos

Direccin

Comentario

S1

BOOL

%IX0.0

La entrada % IX0.0 genera


seal-1, mientras el pulsador
S1 no est presionado

H1

BOOL

%QX0.0

La alarma H1 suena , si la
salida % QX0.0 lleva seal-1

4. Formulacin del programa PLC en uno de los lenguajes de


programacin del PLC
Segn IEC 1131-3, un programa consiste en un descriptor de programa este tambin incluye la declaracin de variables y el cuerpo
principal del programa. Esta es la razn por la que la declaracin de
variables en forma textual es una parte componente de cada solucin
representada.

PROGRAM Guard
VAR
S1 AT %IX0.0

: BOOL;

H1 AT %QX0.0

: BOOL;

(* La entrada % IX0.0 genera seal-1,


(* mientras S1 no est presionado
(* La alarma H1 suena, si la salida
(* %QX0.0 lleva seal-1

*)
*)
*)
*)

END_VAR
S1

NOT

H1

END_PROGRAM

Si el valor de una variable booleana debe ser mapeado en forma negada, directamente en otra variable, esto slo puede hacerse por medio
de la funcin NOT. La negacin de una variable booleana a travs de
smbolo grfico "o" slo es posible directamente en entradas o salidas
de funciones o bloques de funcin.

Festo Didactic TP301

Diagrama de bloques
de funcin

C-10
Solucin 4

PROGRAM Guard
VAR
S1 AT %IX0.0

: BOOL;

H1 AT %QX0.0

: BOOL;

(*
(*
(*
(*

La entrada % IX0.0 genera seal-1,


mientras S1 no est presionado
La alarma H1 suena, si la salida
%QX0.0 lleva seal-1

*)
*)
*)
*)

(*
(*
(*
(*

La entrada % IX0.0 genera seal-1,


mientras S1 no est presionado
La alarma H1 suena, si la salida
%QX0.0 lleva seal-1

*)
*)
*)
*)

(*
(*
(*
(*

La entrada % IX0.0 genera seal-1,


mientras S1 no est presionado
La alarma H1 suena, si la salida
%QX0.0 lleva seal-1

*)
*)
*)
*)

END_VAR
S1

H1

END_PROGRAM

Diagrama de contactos

PROGRAM Guard
VAR
S1 AT %IX0.0
H1 AT %QX0.0

: BOOL;
: BOOL;

END_VAR
LDN S1
ST
H1
END_PROGRAM

Lista de instrucciones

PROGRAM Guard
VAR
S1 AT %IX0.0
H1 AT %QX0.0

: BOOL;
: BOOL;

END_VAR
H1 := NOT S1;
END_PROGRAM

Texto estructurado

TP301 Festo Didactic

C-11
Solucin 5

Ttulo

Prensa con barrera protectora


La funcin AND

3. Declaracin de las variables del programa PLC


Nombre

Tipo de dato

Direccin

Comentario

S1

BOOL

%IX0.0

La entrada %IX0.0 lleva


seal -1, mientras el pulsador
S1 est accionado

B1

BOOL

%IX0.1

La entrada %IX0.1 lleva


seal -1, mientras el sensor
S1 est accionado

Y1

BOOL

%QX0.0

La prensa 1.0 avanza mientras


la salida %QX0.0 tenga seal-1

4. Formulacin del programa de PLC en uno de los diversos


lenguajes de programacin
Segn IEC 1131-3, un programa consiste en un descriptor de programa este tambin incluye la declaracin de variables y el cuerpo
principal del programa. Esta es la razn por la que la declaracin de
variables en forma textual es una parte componente de cada solucin
representada.

PROGRAM Prensa
VAR
S1 AT %IX0.0

: BOOL;

B1 AT %IX0.1

: BOOL;

Y1 AT %QX0.0

: BOOL;

(* La entrada %IX0.0 lleva seal -1,


(* mientras S1 est accionado
(*La entrada %IX0.1 lleva seal-1, si
(* el sensor B1 tiene seal-1
(* la prensa 1.0 avanza, mientras
(* la salida %QX0.0 tenga seal-1

*)
*)
*)
*)
*)
*)

END_VAR
S1

&

Y1

B1

END_PROGRAM

Festo Didactic TP301

Diagrama de bloques
de funcin

C-12
Solucin 5

PROGRAM Press
VAR
S1 AT %IX0.0

: BOOL;

B1 AT %IX0.1

: BOOL;

Y1 AT %QX0.0

: BOOL;

(*
(*
(*
(*
(*
(*

La entrada %IX0.0 lleva seal -1,


mientras S1 est accionado
La entrada %IX0.1 lleva seal-1, si
el sensor B1 tiene seal-1
la prensa 1.0 avanza, mientras
la salida %QX0.0 tenga seal-1

*)
*)
*)
*)
*)
*)

(*
(*
(*
(*
(*
(*

La entrada %IX0.0 lleva seal -1,


mientras S1 est accionado
La entrada %IX0.1 lleva seal-1, si
el sensor B1 tiene seal-1
la prensa 1.0 avanza, mientras
la salida %QX0.0 tenga seal-1

*)
*)
*)
*)
*)
*)

(*
(*
(*
(*
(*
(*

La entrada %IX0.0 lleva seal -1,


mientras S1 est accionado
La entrada %IX0.1 lleva seal-1, si
el sensor B1 tiene seal-1
la prensa 1.0 avanza, mientras
la salida %QX0.0 tenga seal-1

*)
*)
*)
*)
*)
*)

END_VAR
S1

B1

Y1

END_PROGRAM

Diagrama de contactos

PROGRAM Prensa
VAR
S1 AT %IX0.0

: BOOL;

B1 AT %IX0.1

: BOOL;

Y1 AT %QX0.0

: BOOL;

END_VAR
LD
S1
AND B1
ST
Y1
END_PROGRAM

Lista de instrucciones

PROGRAM Prensa
VAR
S1 AT %IX0.0

: BOOL;

B1 AT %IX0.1

: BOOL;

Y1 AT %QX0.0

: BOOL;

END_VAR
Y1 := S1 & B1;
END_PROGRAM

Structured text

TP301 Festo Didactic

C-13
Solucin 6

Ttulo

Sistema de timbre
La funcin OR

3. Declaracin de las variables del programa PLC


Nombre

Tipo de dato

Direccin

Comentario

S1

BOOL

%IX0.0

Pulsador S1 (puerta del jardn)

S2

BOOL

%IX0.1

Pulsador S2 (puerta de la casa)

H1

BOOL

%QX0.0

Zumbado H1 (timbre)

4. Formulacin del programa PLC en uno de los lenguajes de


programacin del PLC
Segn IEC 1131-3, un programa consiste en un descriptor de programa este tambin incluye la declaracin de variables y el cuerpo
principal del programa. Esta es la razn por la que la declaracin de
variables en forma textual es una parte componente de cada solucin
representada.
PROGRAM Timbre
VAR
S1 AT %IX0.0
S2 AT %IX0.1
H1 AT %QX0.0
END_VAR
S1

>=1

: BOOL;
: BOOL;
: BOOL;

(* Pulsador S1 (puerta del jardn)


(* Pulsador S2 (puerta de la casa)
(* Zumbador H1 (timbre)

*)
*)
*)

H1

S2

END_PROGRAM

Festo Didactic TP301

Diagrama de bloques
de funcin

C-14
Solucin 6

PROGRAM Timbre
VAR
S1 AT %IX0.0
S2 AT %IX0.1
H1 AT %QX0.0
END_VAR

S1

: BOOL;
: BOOL;
: BOOL;

(* Pulsador S1 (puerta del jardn)


(* Pulsador S2 (puerta de la casa)
(* Zumbador H1 (timbre)

*)
*)
*)

: BOOL;
: BOOL;
: BOOL;

(* Pulsador S1 (puerta del jardn)


(* Pulsador S2 (puerta de la casa)
(* Zumbador H1 (timbre)

*)
*)
*)

: BOOL;
: BOOL;
: BOOL;

(* Pulsador S1 (puerta del jardn)


(* Pulsador S2 (puerta de la casa)
(* Zumbador H1 (timbre)

*)
*)
*)

H1

S2

END_PROGRAM

Diagrama de contactos

PROGRAM Timbre
VAR
S1 AT %IX0.0
S2 AT %IX0.1
H1 AT %QX0.0
END_VAR
LD
OR
ST

S1
S2
H1

END_PROGRAM

Lista de instrucciones

PROGRAM Timbre
VAR
S1 AT %IX0.0
S2 AT %IX0.1
H1 AT %QX0.0
END_VAR
H1 := S1 OR S2;
END_PROGRAM

Texto estructurado

TP301 Festo Didactic

C-15
Solucin 7

Ttulo

Dispositivo estampador
Combinaciones de AND/OR/NOT

3. Declaracin de las variables del programa PLC


Nombre

Tipo de dato

Direccin

Comentario

B1

BOOL

%IX0.0

Sensor de proximidad B1

B2

BOOL

%IX0.1

Sensor de proximidad B2

B3

BOOL

%IX0.2

Sensor de proximidad B3

Y1

BOOL

%QX0.0

Avance cilindro 1.0

4. Formulacin del programa PLC en uno de los lenguajes de


programacin del PLC
Segn IEC 1131-3, un programa consiste en un descriptor de programa este tambin incluye la declaracin de variables y el cuerpo
principal del programa. Esta es la razn por la que la declaracin de
variables en forma textual es una parte componente de cada solucin
representada.

PROGRAM Estampador
VAR
B1 AT %IX0.0
B2 AT %IX0.1
B3 AT %IX0.2
Y1 AT %QX0.0
END_VAR

B1

:
:
:
:

BOOL;
BOOL;
BOOL;
BOOL;

(* Sensor de proximidad B1
(* Sensor de proximidad B2
(* Sensor de proximidad B3
(* Avance cilindro 1.0

*)
*)
*)
*)

&

B2
B3

B1

&

B2

>=1

Y1

B3

B1

&

B2
B3
END_PROGRAM

Festo Didactic TP301

Diagrama de bloques
de funcin

C-16
Solucin 7

PROGRAM Estampador
VAR
B1 AT %IX0.0
B2 AT %IX0.1
B3 AT %IX0.2
Y1 AT %QX0.0
END_VAR

B1

:
:
:
:

BOOL;
BOOL;
BOOL;
BOOL;

B2

B3

B2

B3

(*
(*
(*
(*

Sensor de proximidad B1
Sensor de proximidad B2
Sensor de proximidad B3
Avance cilindro 1.0

*)
*)
*)
*)

Y1

/
B1

/
B1

B2

B3
/

END_PROGRAM

Diagrama de contactos

PROGRAM Estampador
VAR
B1 AT %IX0.0
B2 AT %IX0.1
B3 AT %IX0.2
Y1 AT %QX0.0
END_VAR

:
:
:
:

BOOL;
BOOL;
BOOL;
BOOL;

(*
(*
(*
(*

Sensor de proximidad B1
Sensor de proximidad B2
Sensor de proximidad B3
Avance cilindro 1.0

*)
*)
*)
*)

LD( B3
AND B2
ANDN B1
)
OR( B1
ANDN B2
AND B3
)
OR( B1
AND B2
ANDN B3
)
ST
Y1
END_PROGRAM

Lista de instrucciones

En el lenguaje de Lista de Instrucciones, la negacin de un operando


no es posible inmediatamente tras la apertura de un parntesis. Esta
es la razn por la que el orden de los operandos B1, B2, B3 ha sido
cambiado en el primer bloque AND.

TP301 Festo Didactic

C-17
Solucin 7

PROGRAM Stamping
VAR
B1 AT %IX0.0
B2 AT %IX0.1
B3 AT %IX0.2
Y1 AT %QX0.0
END_VAR

:
:
:
:

BOOL;
BOOL;
BOOL;
BOOL;

(* Sensor de proximidad B1
(* Sensor de proximidad B2
(* Sensor de proximidad B3
(* Avance cilindro 1.0

*)
*)
*)
*)

Y1 := ( NOT B1 & B2 & B3 ) OR ( B1 & NOT B2 & B3)


OR ( B1 & B2 & NOT B3);
END_PROGRAM

Texto estructurado

El parntesis de las expresiones AND no es un requerimiento obligatorio, ya que la operacin AND tiene mayor prioridad que la operacin
OR. Sin embargo, el uso de parntesis hace ms fcil y rpida la comprensin de una expresin compleja.

Festo Didactic TP301

C-18
Solucin 7

TP301 Festo Didactic

C-19
Solucin 8

Ttulo

Control de un silo para dos materiales a granel


Sistema de control lgico con derivacin

3. Declaracin de las variables del programa PLC


Nombre

Tipo de dato

Direccin

Comentario

S1

BOOL

%IX0.0

S1: Pulsador marcha

S2

BOOL

%IX0.1

S2: Interruptor selector

Y1

BOOL

%QX0.0

Cilindro 1.0: Abrir silo A

Y2

BOOL

%QX0.1

Cilindro 2.0: Abrir silo B

4. Formulacin del programa PLC en uno de los lenguajes de


programacin del PLC
Segn IEC 1131-3, un programa consiste en un descriptor de programa este tambin incluye la declaracin de variables y el cuerpo
principal del programa. Esta es la razn por la que la declaracin de
variables en forma textual es una parte componente de cada solucin
representada.
PROGRAM Sistema de control de un
VAR
S1 AT %IX0.0
: BOOL;
S2 AT %IX0.1
: BOOL;
Y1 AT %QX0.0
: BOOL;
Y2 AT %QX0.1
: BOOL;
END_VAR

S1

&

Y1

&

Y2

silo
(* S1: Pulsador de marcha
(* S2: Interruptor selector
(* Cilindro 1.0: Abrir silo A
(* Cilindro 2.0: Abrir silo B

*)
*)
*)
*)

S2

S1

S2
END_PROGRAM

Festo Didactic TP301

Diagrama de bloques
de funcin

C-20
Solucin 8

PROGRAM Sistema de control de un


VAR
S1 AT %IX0.0
: BOOL;
S2 AT %IX0.1
: BOOL;
Y1 AT %QX0.0
: BOOL;
Y2 AT %QX0.1
: BOOL;
END_VAR

S1

S2

silo
(*
(*
(*
(*

S1: Pulsador de marcha


S2: Interruptor selector
Cilindro 1.0: Abrir silo A
Cilindro 2.0: Abrir silo B

*)
*)
*)
*)

Y1

/
S1

S2

Y2

END_PROGRAM

Diagrama de contactos

PROGRAM Sistema de control de un


VAR
S1 AT %IX0.0
: BOOL;
S2 AT %IX0.1
: BOOL;
Y1 AT %QX0.0
: BOOL;
Y2 AT %QX0.1
: BOOL;
END_VAR

silo
(*
(*
(*
(*

S1: Pulsador de marcha


S2: Interruptor selector
Cilindro 1.0: Abrir silo A
Cilindro 2.0: Abrir silo B

*)
*)
*)
*)

LD
S1
ANDN S2
ST
Y1

(* Pulsador S1 accionado
(* Selector S2: material A
(* Descargar material A

*)
*)
*)

LD
S1
AND S2
ST
Y2

(* Pulsador S1 accionado
(* Selector S2: Material B
(* Descargar material B

*)
*)
*)

END_PROGRAM

Lista de instrucciones

PROGRAM Sistema de control de un


VAR
S1 AT %IX0.0
: BOOL;
S2 AT %IX0.1
: BOOL;
Y1 AT %QX0.0
: BOOL;
Y2 AT %QX0.1
: BOOL;
END_VAR
Y1 := S1 & NOT S2;
Y2 := S1 & S2;

silo
(*
(*
(*
(*

S1: Pulsador de marcha


S2: Interruptor selector
Cilindro 1.0: Abrir silo A
Cilindro 2.0: Abrir silo B

(* Descargar material A
(* Descargar material B

*)
*)
*)
*)
*)
*)

END_PROGRAM

Texto estructurado

TP301 Festo Didactic

C-21
Solucin 9

Ttulo

Alarma de incendio
Activacin de una salida

3. Formulacin del programa PLC en uno de los lenguajes de programacin del PLC
Segn IEC 1131-3, un programa consiste en un descriptor de programa este tambin incluye la declaracin de variables y el cuerpo
principal del programa. Esta es la razn por la que la declaracin de
variables en forma textual es una parte componente de cada solucin
representada.
PROGRAM Zumbador
VAR
S1 AT %IX0.0
H1 AT %QX0.0
RS_H1
END_VAR

: BOOL;
: BOOL;
: RS;

(* Pulsador
(* Zumbador
(* Flip-flop RS_H1 para el zumbador

*)
*)
*)

RS_H1
RS
S1

Q1

H1

R1

END_PROGRAM

PROGRAM Zumbador
VAR
S1 AT %IX0.0
H1 AT %QX0.0
END_VAR
S1

Diagrama de bloques
de funcin

: BOOL;
: BOOL;

(* Pulsador
(* Zumbador

*)
*)

H1
S

END_PROGRAM

Diagrama de contactos

En el lenguaje de Diagrama de Contactos, la operacin Set o de activacin memorizante se realiza a travs de una bobina de accin memorizante. Por ello, no es necesario enlazarla con un bloque de funcin RS.

Festo Didactic TP301

C-22
Solucin 9

PROGRAM Zumbador
VAR
S1 AT %IX0.0
H1 AT %QX0.0
END_VAR
LD
S

: BOOL;
: BOOL;

(* Pulsador
(* Zumbador

*)
*)

S1
H1

END_PROGRAM

Lista de Instrucciones

El lenguaje de Lista de Instrucciones tiene su propio operador S. Por


ello no es necesaria la utilizacin de un bloque de funcin RS.

PROGRAM Zumbador
VAR
S1 AT %IX0.0
H1 AT %QX0.0
RS_H1
END_VAR

: BOOL;
: BOOL;
: RS;

(* Pulsador
(* Zumbador
(* Flip-flop RS_H1 para el zumbador

*)
*)
*)

RS_H1( S := S1 );
H1 := RS_H1.Q1;
END_PROGRAM

Texto estructurado

Al invocar un bloque de funcin no es obligatorio especificar todos los


parmetros de transferencia. En este caso, la entidad bloque de funcin RS_H1 slo recibe el valor actual para el parmetro de entrada S,
es decir, el valor del pulsador S1.

TP301 Festo Didactic

C-23
Solucin 10

Ttulo

Supervisin de la rotura de una broca


Activacin y desactivacin de una salida

3. Formulacin del programa de PLC en uno de los diversos


lenguajes de programacin
Segn IEC 1131-3, un programa consiste en un descriptor de programa este tambin incluye la declaracin de variables y el cuerpo
principal del programa. Esta es la razn por la que la declaracin de
variables en forma textual es una parte componente de cada solucin
representada.

PROGRAM Indicador de alarma


VAR
S1 AT %IX0.0
: BOOL;
B1 AT %IX0.1
: BOOL;
H1 AT %QX0.0
: BOOL;
RS_H1
: RS;
END_VAR

(* Pulsador
(* Broca defectuosa: B1=0
(* Indicador de alarma
(* Flip-flop RS_H1 indicador de alarma

*)
*)
*)
*)

RS_H1
RS
B1
S1

Q1

H1

R1

END_PROGRAM

Diagrama de bloques
de funcin

El comportamiento deseado se obtiene por medio de la utilizacin de


un bloque de funcin RS (desactivacin dominante)
PROGRAM Indicador de alarma
VAR
S1 AT %IX0.0
: BOOL;
B1 AT %IX0.1
: BOOL;
H1 AT %QX0.0
: BOOL;
END_VAR

B1

H1

S1

H1

(* Pulsador
(* Broca defectuosa: B1=0
(* Indicador de alarma

*)
*)
*)

R
END_PROGRAM

Diagrama de contactos

Festo Didactic TP301

C-24
Solucin 10

PROGRAM Indicador de alarma


VAR
S1 AT %IX0.0
: BOOL;
B1 AT %IX0.1
: BOOL;
H1 AT %QX0.0
: BOOL;
END_VAR
LDN
ST
LD
R

(* Pulsador
(* Broca defectuosa: B1=0
(* Indicador de alarma

*)
*)
*)

B1
H1
S1
H1

END_PROGRAM

Lista de instrucciones

Los lenguajes de Diagrama de Contactos y Lista de Instrucciones tienen sus propias operaciones para la activacin y desactivacin memorizantes de una variable, por lo que no es aplicable el uso de un flipflop
RS. La secuencia de las rdenes de activacin SET y desactivacin
RESET son cruciales para el comportamiento del PLC. La orden que
debe ser dominante en este caso la orden de desactivacin debe
ser la ltima en ser procesada.

PROGRAM Indicador de alarma


VAR
S1 AT %IX0.0
: BOOL;
B1 AT %IX0.1
: BOOL;
H1 AT %QX0.0
: BOOL;
RS_H1
: RS;
END_VAR

(*
(*
(*
(*

Pulsador
Broca defectuosa: B1=0
Indicador de alarma
Flip-flop RS_H1 Indicador de alarma

*)
*)
*)
*)

RS_H1( S := NOT B1, R1 := S1 );


H1 := RS_H1.Q1;
END_PROGRAM

Texto estructurado

TP301 Festo Didactic

C-25
Solucin 11

Ttulo

Activacin de un cilindro
Flancos de las seales

3. Formulacin del programa PLC en uno de los lenguajes de programacin del PLC
Segn IEC 1131-3, un programa consiste en un descriptor de programa este tambin incluye la declaracin de variables y el cuerpo
principal del programa. Esta es la razn por la que la declaracin de
variables en forma textual es una parte componente de cada solucin
representada.

PROGRAM Activacin de cilindro


VAR
S1 AT %IX0.0
: BOOL; (* Pulsador marcha
B1 AT %IX0.1
: BOOL; (* Cilindro 1.0 retrado
B2 AT %IX0.2
: BOOL; (* Cilindro 1.0 extendido
Y1 AT %QX0.0
: BOOL; (* Avance cilindro 1.0
R_TRIG_S1
: R_TRIG; (* Detecta flanco ascendente S1
RS_Y1
: RS;
(* Flip-flop RS_Y1 para Y1
END_VAR
B1

&
R_TRIG_S1

S1

RS_Y1

RS
S
Q1
R1

R_TRIG
CLK
Q

*)
*)
*)
*)
*)
*)

Y1

&
B2

END_PROGRAM

En el diagrama de bloques de funcin, la evaluacin de flancos se


realiza por medio de la utilizacin del bloque de funcin R_TRIG.

Festo Didactic TP301

Diagrama de bloques
de funcin

C-26
Solucin 11

PROGRAM Activacin de cilindro


VAR
S1 AT %IX0.0
: BOOL;
B1 AT %IX0.1
: BOOL;
B2 AT %IX0.2
: BOOL;
Y1 AT %QX0.0
: BOOL;
END_VAR

S1

B1

P
S1
P

(*
(*
(*
(*

Pulsador marcha
Cilindro 1.0 retrado
Cilindro 1.0 extendido
Avance cilindro 1.0

*)
*)
*)
*)

Y1
S

B2

Y1
R

END_PROGRAM

Diagrama de contactos

El lenguaje Diagrama de Contactos tiene contactos especiales para la


deteccin de flancos.

PROGRAM Activacin de cilindro


VAR
S1 AT %IX0.0
: BOOL; (*
B1 AT %IX0.1
: BOOL; (*
B2 AT %IX0.2
: BOOL; (*
Y1 AT %QX0.0
: BOOL; (*
R_TRIG_S1
: R_TRIG; (*
RS_Y1
: RS;
(*
END_VAR
CAL
LD
AND
S
LD
AND
R

R_TRIG_S1( CLK := S1 )
R_TRIG_S1.Q
B1
Y1
R_TRIG_S1.Q
B2
Y1

(*
(*
(*
(*
(*
(*
(*

Pulsador marcha
Cilindro 1.0 retrado
Cilindro 1.0 extendido
Avance cilindro 1.0
Detecta flanco ascendente S1
Flip-flop RS_Y1 para Y1

*)
*)
*)
*)
*)
*)

Evaluacin flanco ascendente


Flanco ascendente en S1
Cilindro retrado
Avance del cilindro
Flanco ascendente en S1
Cilindro extendido
Retroceso del cilindro

*)
*)
*)
*)
*)
*)
*)

END_PROGRAM

Lista de instrucciones

TP301 Festo Didactic

C-27
Solucin 11

PROGRAM Activacin de cilindro


VAR
S1 AT %IX0.0
: BOOL; (* Pulsador marcha
B1 AT %IX0.1
: BOOL; (* Cilindro 1.0 retrado
B2 AT %IX0.2
: BOOL; (* Cilindro 1.0 extendido
Y1 AT %QX0.0
: BOOL; (* Avance cilindro 1.0
R_TRIG_S1
: R_TRIG; (* Detecta flanco ascendente S1
RS_Y1
: RS;
(* Flip-flop RS_Y1 para Y1
END_VAR
R_TRIG_S1( CLK := S1 );
(* Evaluacin flanco ascendente
RS_Y1( S := R_TRIG_S1.Q & B1; (* Invoca flip-flop para Y1
R1 := R_TRIG_S1.Q & B2 );
Y1 := RS_Y1.Q1;
(* Estado del flip-flop a Y1

*)
*)
*)
*)
*)
*)
*)
*)
*)

END_PROGRAM

Texto estructurado

En los lenguajes de Lista de Instrucciones y Texto Estructurado, la


deteccin de flancos se realiza invocando un bloque de funcin
R_TRIG.

Festo Didactic TP301

C-28
Solucin 11

TP301 Festo Didactic

C-29
Solucin 12

Ttulo

Encolado de componentes
Pulso

3. Formulacin del programa PLC en uno de los lenguajes de


programacin del PLC
Segn IEC 1131-3, un programa consiste en un descriptor de programa este tambin incluye la declaracin de variables y el cuerpo
principal del programa. Esta es la razn por la que la declaracin de
variables en forma textual es una parte componente de cada solucin
representada.
PROGRAM Encolado
VAR
S1 AT %IX0.0
B1 AT %IX0.1
Y1 AT %QX0.0
TP_Y1 1
END_VAR

: BOOL;
: BOOL;
: BOOL;
: TP;

(* Pulsador marcha
(* Cilindro encolador retrado
(* Avance cilindro encolador
(* Pulso tiempo encolado

*)
*)
*)
*)

TP_Y1
S1

&

TP

B1

IN

PT

ET

Y1

T#5s
END_PROGRAM

Diagrama de bloques
de funcin

PROGRAM Encolado
VAR
S1 AT %IX0.0
B1 AT %IX0.1
Y1 AT %QX0.0
TP_Y1 1
END_VAR

: BOOL;
: BOOL;
: BOOL;
: TP;

(* Pulsador marcha
(* Cilindro encolador retrado
(* Avance cilindro encolador
(* Pulso tiempo encolado

*)
*)
*)
*)

TP_Y1
S1

B1

T#5s

Y1

TP
IN

PT

ET

END_PROGRAM

Diagrama de contactos

Festo Didactic TP301

C-30
Solucin 12

PROGRAM Encolado
VAR
S1 AT %IX0.0
B1 AT %IX0.1
Y1 AT %QX0.0
T_Start AT %MX0.0
TP_Y1 1
END_VAR
LD
AND
ST
CAL
LD
ST

:
:
:
:
:

BOOL;
BOOL;
BOOL;
BOOL;
TP;

(*
(*
(*
(*
(*

Pulsador marcha
Cilindro encolador retrado
Avance cilindro encolador
Condicin de marcha de TP_Y1
Pulso tiempo encolado

*)
*)
*)
*)
*)

S1
B1
T_Start
TP_Y1( IN := T_Start, PT := T#5s )
TP_Y1.Q
Y1

END_PROGRAM

Lista de instrucciones

En el lenguaje de Lista de Instrucciones, la transferencia de parmetros para la invocacin de un bloque de funcin puede consistir de una
sola variable individual. Para conseguir esto, la variable T_Start se declara en el programa.

PROGRAM Encolado
VAR
S1 AT %IX0.0
B1 AT %IX0.1
Y1 AT %QX0.0
TP_Y1 1
END_VAR

:
:
:
:

BOOL;
BOOL;
BOOL;
TP;

(*
(*
(*
(*

Pulsador marcha
Cilindro encolador retrado
Avance cilindro encolador
Pulso tiempo encolado

*)
*)
*)
*)

TP_Y1( IN := S1 & B1, PT := T# 5s );


Y1 := TP_Y1.Q;
END_PROGRAM

Texto estructurado

TP301 Festo Didactic

C-31
Solucin 13

Ttulo

Dispositivo de marcado
Seal con retardo a la conexin

3. Formulacin del programa PLC en uno de los lenguajes de


programacin del PLC
Segn IEC 1131-3, un programa consiste en un descriptor de programa este tambin incluye la declaracin de variables y el cuerpo
principal del programa. Esta es la razn por la que la declaracin de
variables en forma textual es una parte componente de cada solucin
representada.
PROGRAM Marcado
VAR
S1 AT %IX0.0
B1 AT %IX0.1
B2 AT %IX0.1
Y1 AT %QX0.0
RS_Y1
TON_Y1
END_VAR

: BOOL;
: BOOL;
: BOOL;
: BOOL;
: RS;
: TON;

TON_Y1

(* Pulsador inicio proceso marcado


(* Cilindro de marcado retrado
(* Cilindro de marcado extendido
(* Avance cilindro marcado
(* Flip-flop para cilindro marcado
(* Seal retardada para marcado

RS_Y1

TON
S1
B1

&

T#3s
END_PROGRAM

*)
*)
*)
*)
*)
*)

RS

IN

PT

ET

Q1

Y1

R1

B2

Diagrama de bloques
de funcin

Festo Didactic TP301

C-32
Solucin 13

PROGRAM Marcado
VAR
S1 AT %IX0.0
B1 AT %IX0.1
B2 AT %IX0.1
Y1 AT %QX0.0
RS_Y1
TON_Y1
END_VAR

:
:
:
:
:
:

BOOL;
BOOL;
BOOL;
BOOL;
RS;
TON;

(*
(*
(*
(*
(*
(*

Pulsador inicio proceso marcado


Cilindro de marcado retrado
Cilindro de marcado extendido
Avance cilindro marcado
Flip-flop para cilindro marcado
Seal retardada para marcado

*)
*)
*)
*)
*)
*)

TON_Y1
S1

B1

Y1

TON

T#3s

IN

PT

ET

B2

Y1
R

END_PROGRAM

Diagrama de contactos

PROGRAM Marcado
VAR
S1 AT %IX0.0
B1 AT %IX0.1
B2 AT %IX0.1
Y1 AT %QX0.0
T_Start AT %MX0.0
RS_Y1
TON_Y1
END_VAR
LD
AND
ST
CAL
LD
S
LD
R

:
:
:
:
:
:
:

BOOL;
BOOL;
BOOL;
BOOL;
BOOL;
RS;
TON;

(*
(*
(*
(*
(*
(*
(*

Pulsador inicio proceso marcado


Cilindro de marcado retrado
Cilindro de marcado extendido
Avance cilindro marcado
Condicin de marcha para TON_Y1
Flip-flop para cilindro marcado
Seal retardada para marcado

*)
*)
*)
*)
*)
*)
*)

S1
B1
T_Start
TON_Y1( IN := T_Start, PT := T#3s )
TON_Y1.Q
Y1
B2
Y1

END_PROGRAM

Lista de instrucciones

TP301 Festo Didactic

C-33
Solucin 13

PROGRAM Marcado
VAR
S1 AT %IX0.0
B1 AT %IX0.1
B2 AT %IX0.1
Y1 AT %QX0.0
RS_Y1
TON_Y1
END_VAR

: BOOL;
: BOOL;
: BOOL;
: BOOL;
: RS;
: TON;

(* Pulsador inicio proceso marcado


(* Cilindro de marcado retrado
(* Cilindro de marcado extendido
(* Avance cilindro marcado
(* Flip-flop para cilindro marcado
(* Seal retardada para marcado

*)
*)
*)
*)
*)
*)

TON_Y1( IN := S1 & B1, PT := T#3s );


RS_Y1( S := TON_Y1.Q, R1 := B2 );
Y1 := RS_Y1.Q1;
END_PROGRAM

Texto estructurado

Festo Didactic TP301

C-34
Solucin 13

TP301 Festo Didactic

C-35
Solucin 14

Ttulo

Dispositivo de fijacin
Seal con retardo a la desconexin

3. Formulacin del programa PLC en uno de los lenguajes de


programacin del PLC
Segn IEC 1131-3, un programa consiste en un descriptor de programa este tambin incluye la declaracin de variables y el cuerpo
principal del programa. Esta es la razn por la que la declaracin de
variables en forma textual es una parte componente de cada solucin
representada.

PROGRAM Fijacin
VAR
S1 AT %IX0.0
B1 AT %IX0.1
B2 AT %IX0.1
B3 AT %IX0.2
B4 AT %IX0.3
Y1 AT %QX0.0
Y2 AT %QX0.1
Y3 AT %QX0.2
RS_Y2
RS_Y3
TOF_Y1
R_TRIG_B2
END_VAR

: BOOL; (* Pulsador de marcha


: BOOL; (* Cilindro fijacin retrado
: BOOL; (* Cilindro fijacin extendido
: BOOL; (* Cilindro marcado retrado
: BOOL; (* Cilindro marcado extendido
: BOOL; (* Avance cilindro fijacin
: BOOL; (* Avance cilindro marcado
: BOOL; (* Retroceso cilindro marcado
: RS;
(* Flip-flop para Y2
: RS;
(* Flip-flop para Y3
: TOF;
(* Retardo a la desconexin
: R_TRIG; (* Flanco ascendente de B2

*)
*)
*)
*)
*)
*)
*)
*)
*)
*)
*)
*)

TOF_Y1
TOF
S1
B1
B3

&

IN

PT

ET

Y1

T#3s
RS_Y2

R_TRIG_B2

RS

R_TRIG
B2

CLK

&

Q1

Y2

R1

B3
B4

RS_Y3
RS

END_PROGRAM

Festo Didactic TP301

B4

B3

R1

Q1

Y3

Diagrama de bloques
de funcin

C-36
Solucin 14

PROGRAM Fijacin
VAR
S1 AT %IX0.0
B1 AT %IX0.1
B2 AT %IX0.1
B3 AT %IX0.2
B4 AT %IX0.3
Y1 AT %QX0.0
Y2 AT %QX0.1
Y3 AT %QX0.2
TOF_Y1
END_VAR

:
:
:
:
:
:
:
:
:

BOOL;
BOOL;
BOOL;
BOOL;
BOOL;
BOOL;
BOOL;
BOOL;
TOF;

(*
(*
(*
(*
(*
(*
(*
(*
(*

Pulsador de marcha
Cilindro fijacin retrado
Cilindro fijacin extendido
Cilindro marcado retrado
Cilindro marcado extendido
Avance cilindro fijacin
Avance cilindro marcado
Retroceso cilindro marcado
Retardo a la desconexin

*)
*)
*)
*)
*)
*)
*)
*)
*)

TOF_Y1
S1

B1

B3

T#3s
B2

B3

Y1

TOF
IN

PT

ET
Y2

B4

Y2
R
Y3
S

B3

Y3
R

Diagrama de contactos

END_PROGRAM

TP301 Festo Didactic

C-37
Solucin 14

PROGRAM Fijacin
VAR
S1 AT %IX0.0
B1 AT %IX0.1
B2 AT %IX0.1
B3 AT %IX0.2
B4 AT %IX0.3
Y1 AT %QX0.0
Y2 AT %QX0.1
Y3 AT %QX0.2
T_Start AT %MX0.0
TOF_Y1
R_TRIG_B2
END_VAR
LD
AND
AND
ST
CAL
LD
ST
CAL
LD
AND
S
LD
R
S
LD
R

: BOOL; (* Pulsador de marcha


: BOOL; (* Cilindro fijacin retrado
: BOOL; (* Cilindro fijacin extendido
: BOOL; (* Cilindro marcado retrado
: BOOL; (* Cilindro marcado extendido
: BOOL; (* Avance cilindro fijacin
: BOOL; (* Avance cilindro marcado
: BOOL; (* Retroceso cilindro marcado
: BOOL; (* Condicin de marcha para TOF_Y1
: TOF;
(* Retardo a la desconexin
: R_TRIG; (* Flanco ascendente de B2

*)
*)
*)
*)
*)
*)
*)
*)
*)
*)
*)

S1
B1
B3
T_Start
TOF_Y1( IN := T_Start, PT := T#3s )
TOF_Y1.Q
Y1
R_TRIG_B2( CLK := B2 )
R_TRIG_B2.Q
B3
Y2
B4
Y2
Y3
B3
Y3

END_PROGRAM

Lista de instrucciones

Festo Didactic TP301

C-38
Solucin 14

PROGRAM Fijacin
VAR
S1 AT %IX0.0
B1 AT %IX0.1
B2 AT %IX0.1
B3 AT %IX0.2
B4 AT %IX0.3
Y1 AT %QX0.0
Y2 AT %QX0.1
Y3 AT %QX0.2
RS_Y2
RS_Y3
TOF_Y1
R_TRIG_B2
END_VAR

:
:
:
:
:
:
:
:
:
:
:
:

BOOL; (*
BOOL; (*
BOOL; (*
BOOL; (*
BOOL; (*
BOOL; (*
BOOL; (*
BOOL; (*
RS;
(*
RS;
(*
TON;
(*
R_TRIG; (*

Pulsador de marcha
Cilindro fijacin retrado
Cilindro fijacin extendido
Cilindro marcado retrado
Cilindro marcado extendido
Avance cilindro fijacin
Avance cilindro marcado
Retroceso cilindro marcado
Flip-flop para Y2
Flip-flop para Y3
Retardo a la desconexin
Flanco ascendente de B2

*)
*)
*)
*)
*)
*)
*)
*)
*)
*)
*)
*)

TOF_Y1( IN := S1 & B1 & B3, PT := T#3s );


Y1 := TOF_Y1.Q;
R_TRIG_B2( CLK := B2 );
RS_Y2( S := R_TRIG_B2.Q & B3, R1 := B4 );
Y2 := RS_Y2.Q1;
RS_Y3( S := B4, R1 := B3 );
Y3 := RS_Y3.Q1;
END_PROGRAM

Texto estructurado

TP301 Festo Didactic

C-39
Solucin 15

Ttulo

Dispositivo elevador para paquetes


Secuencia lineal

2. Descripcin de la tarea de control en diagrama de funciones


secuencial segn IEC848

Posicin inicial

Cilindro elevador retrado, cilindro de


transferencia retrado y paquete presente
S Avance cilindro elevacin

2.1 : Cilindro elevador extendido


S Avance cilindro transferencia

3.1 : Cilindro de transferencia extendido


S Retroceso cilindro elevador

4.1 : Cilindro elevador retrado


S Retroceso cilindro transfer.

5.1 : Cilindro de transferencia retrado

Diagrama de funciones
segn IEC 848

Festo Didactic TP301

C-40
Solucin 15

4. Formulacin del programa PLC


Segn IEC 1131-3, un programa consiste en un descriptor de programa este tambin incluye la declaracin de variables y el cuerpo
principal del programa. Esta es la razn por la que la declaracin de
variables en forma textual es una parte componente de cada solucin
representada.

PROGRAM Transport
VAR
B1 AT %IX0.0
B2 AT %IX0.1
B3 AT %IX0.2
B4 AT %IX0.3
B5 AT %IX0.4
Y1 AT %QX0.0
Y2 AT %QX0.1
END_VAR

: BOOL;
: BOOL;
: BOOL;
: BOOL;
: BOOL;
: BOOL;
: BOOL;

(*
(*
(*
(*
(*
(*
(*

Paquete presente
Cilindro elevador retrado
Cilindro elevador extendido
Cilindro de transferencia retrado
Cilindro de transferencia extendido
Avance cilindro elevador
Avance cilindro de transferencia

*)
*)
*)
*)
*)
*)
*)

S_1
B1
B2
B4

&
S_2

Y1

B3

Y2

B5

Y1

B2

Y2

B4

B3
S_3
B5
S_4

B2
S_5
B4

Diagrama de
funciones secuencial

END_PROGRAM

TP301 Festo Didactic

C-41
Solucin 15

El cuerpo principal del programa est estructurado en diagrama de funciones secuencial. Las condiciones de transicin asociadas estn formuladas en diagramas de bloques de funcin. Si una condicin de
transicin consiste solamente en una variable booleana, esta se representa en texto estructurado. Las etapas consisten en simples acciones
booleanas con los calificadores S (activacin memorizante) y R (desactivacin memorizante). La etapa S_1 es una etapa vaca.

Festo Didactic TP301

C-42
Solucin 15

TP301 Festo Didactic

C-43
Solucin 16

Ttulo

Dispositivo elevador y clasificador para paquetes


Secuencia con desvo alternativo

2. Descripcin de la tarea de control en diagrama de funciones


secuencial segn IEC848

Posicin inicial
Pulsador de marcha y posicin inicial

S Avance cilindro elevador

2.1 : Cilindro elevador extendido


y paquete corto
3

S Avance cilindro 2.0

2.1 : Cilindro elevador extendido


y paquete largo
1

3.1 : Cilindro 2.0 extendido


4

S Retroceso cilindro 2.0

5.1 : Cilindro 3.0 extendido


1

4.1 : Cilindro 2.0 retrado


7

S Avance cilindro 3.0

S Retroceso cilindro 3.0

6.1 : Cilindro 3.0 retrado

S Retroceso cilindro elevador 1


7.1 : Cilindro elevador retrado

Diagrama de funciones
segn IEC 848

Festo Didactic TP301

C-44
Solucin 16

4. Formulacin del programa PLC


Segn IEC 1131-3, un programa consiste en un descriptor de programa este tambin incluye la declaracin de variables y el cuerpo
principal del programa. Esta es la razn por la que la declaracin de
variables en forma textual es una parte componente de cada solucin
representada.
PROGRAM Clasificacin
VAR
S1 AT %IX0.0
S2 AT %IX0.1
B1 AT %IX0.2
B2 AT %IX0.3
B3 AT %IX0.4
B4 AT %IX0.5
B5 AT %IX0.6
B6 AT %IX0.7
Y1 AT %QX0.0
Y3 AT %QX0.2
Y4 AT %QX0.3
END_VAR

:
:
:
:
:
:
:
:
:
:
:

BOOL;
BOOL;
BOOL;
BOOL;
BOOL;
BOOL;
BOOL;
BOOL;
BOOL;
BOOL;
BOOL;

(*
(*
(*
(*
(*
(*
(*
(*
(*
(*
(*

Pulsador de marcha
Selector , S2=0: paquete corto
Cilindro elevador 1.0 retrado
Cilindro elevador 1.0 extendido
Cilindro 2.0 retrado
Cilindro 2.0 extendido
Cilindro 3.0 retrado
Cilindro 3.0 extendido
Retroceso cilindro elevador
Avance cilindro 2.0
Avance cilindro 3.0

*)
*)
*)
*)
*)
*)
*)
*)
*)
*)
*)

S_1
S1 & B1 & B3 & B5
S_2

Y1

Y2

B2

B2 & NOT S2
S

S_3

B2 & S2
Y3

B4

S_5

B4
Y3

B3

B3
S_7

Y4

B6

Y4

B5

B6
R

S_4

S_6
B5

Y2

Y1

B1

B1

END_PROGRAM

Diagrama de
funciones secuencial

TP301 Festo Didactic

C-45
Solucin 16

El cuerpo principal del programa est estructurado en diagrama de funciones secuencial. Las condiciones de transicin asociadas estn formuladas en lenguaje de texto estructurado. Las etapas consisten en
simpleas acciones booleanas con los calificadores S (activacin memorizante) y R (desactivacin memorizante). La etapa inicial S_1 es una
etapa vaca. Tras la etapa S_2 el programa deriva en dos secuencias
alternativas.

Festo Didactic TP301

C-46
Solucin 16

TP301 Festo Didactic

C-47
Solucin 17

Ttulo

Dispositivo de estampacin con contador


Ciclos de conteo

2. Descripcin de la tarea de control en diagrama de funciones


secuencial segn IEC848

Posicin inicial
Pieza presente, contador no vencido
y posicin inicial

S Avance cilindro 1.0


1
N Incrementar contador en 1

S Avance cilindro 2.0

N Inicializar contador
1

2.1 : Cilindro extendido


3

Contador vencido y S1 accionado

3.1 : Cilindro 2.0 extendido


4

S Retroceso cilindro 2.0

4.1 : Cilindro 2.0 retrado


5

S Retroceso cilindro 1.0

5.1 : Cilindro 1.0 retrado


6

S Avance cilindro 3.0

6.1 : Cilindro 3.0 extendido


7

S Retrocxeso cilindro 3.0


7.1 : Cilindro 3.0 retrado

Festo Didactic TP301

Diagrama de funciones
segn IEC 848

C-48
Solucin 17

4. Formulacin del programa PLC

PROGRAM Estampacin
VAR
S1 AT %IX0.0
B1 AT %IX0.1
B2 AT %IX0.2
B3 AT %IX0.3
B4 AT %IX0.4
B5 AT %IX0.5
B6 AT %IX0.6
B7 AT %IX0.7
Y1 AT %QX0.0
Y2 AT %QX0.1
Y3 AT %QX0.2
Y4 AT %QX0.3
CTU_1
END_VAR

:
:
:
:
:
:
:
:
:
:
:
:
:

BOOL;
BOOL;
BOOL;
BOOL;
BOOL;
BOOL;
BOOL;
BOOL;
BOOL;
BOOL;
BOOL;
BOOL;
CTU;

(*
(*
(*
(*
(*
(*
(*
(*
(*
(*
(*
(*
(*

Pulsador de marcha
Cilindro 1.0 retrado
Cilindro 1.0 extendido
Cilindro 2.0 retrado
Cilindro 2.0 extendido
Cilindro 3.0 retrado
Cilindro 3.0 extendido
Pieza en almacn
Avance cilindro 1.0
Retroceso cilindro 1.0
Avance cilindro 2.0
Avance cilindro 3.0
Contador incremental CTU_1

*)
*)
*)
*)
*)
*)
*)
*)
*)
*)
*)
*)
*)

Declaracin de variables

TP301 Festo Didactic

C-49
Solucin 17

END_VAR

S_1

S1 & CTU_1.Q

B1 & B3 & B5 & B7 &


NOT CTU_1.Q

S_8

S_2

Y1

Y2

Count

Counter_init

B2
CTU_1

CTU_1
S_2.X

10

CTU
CU
R
PV CV

CTU
CU Q
R
PV CV

B2

S_3

Y3

B4

Y3

B3

Y2

B1

Y1

Y4

B6

Y4

B5

B4

S_4
B3
S_5

B1
S_6

B6
S_7
B5

END_PROGRAM

Festo Didactic TP301

Diagrama de funciones
secuencial

C-50
Solucin 17

El cuerpo principal del programa est estructurado en diagrama de funciones secuencial. Las condiciones de transicin asociadas estn formuladas en lenguaje de texto estructurado. Tras la etapa inicial S_1 el
programa deriva en dos secuencial alternativas.
Si se acciona el pulsador S1 por primera vez, se inicializa la copia
CTU_1 del bloque de funcin contador. Esto sucede siempre dentro de
la accin denominada "Counter_init". El programa regresa a la etapa
S_1 con una condicin de transicin que siempre es cierta. Las condiciones de la cadena secuencial de la izquierda se cumplen ahora. Esta
es procesada cclicamente hasta que se han estampado y expulsado
10 piezas. El verdadero proceso de conteo no est programado en la
accin booleana "Count". El flanco que dispara el procedimiento de
conteo se crea a travs del flag de etapa S_2.X.
Cuando la copia del bloque de funcin CTU_1 ha sido inicializada, se
aplica el valor 0 en la entrada CU. Si ahora se ejecuta la etapa S_2, el
flag de etapa S_2.X asume el valor 1, mientras que el flanco ascendente se aplica brevemente a la entrada CU.
Si la condicin de transicin B2 se ha cumplido ahora, la accin
"Count" se ejecuta como accin no-booleana por ltima vez. Para este
proceso de evolucin final, el flag de etapa S_2.X ya tiene el valor 0,
por lo que tambin lo tiene la entrada CU de CTU_1. Si el programa
llega una vez ms a la etapa S_2, se produce un cambio en el estado
de la entrada CU de 0 a 1: se aplica el flanco ascendente para la
realizacin del ciclo de conteo.

TP301 Festo Didactic

D-1
Apndice

Seccin D Apndice
Fichas tcnicas
Entrada de seales elctricas . . . . . . . . . . . . . . . . . . . . . . . . . .

011088

Indicador y placa de distribucin elctrica. . . . . . . . . . . . . . . . .

030311

Cilindro de simple efecto . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

152887

Cilindro de doble efecto . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

152888

Unidad de mantenimiento con vlvula de interrupcin . . . . . .

152894

Distribuidor de aire . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 152896


Sensor de proximidad inductivo. . . . . . . . . . . . . . . . . . . . . . . . .

152902

Sensor de proximidad capacitivo . . . . . . . . . . . . . . . . . . . . . . . .

152903

Sensor de proximidad ptico . . . . . . . . . . . . . . . . . . . . . . . . . . .

152904

Interruptor de proximidad para montaje en cilindro. . . . . . . . . .

152905

Electrovlvula de 5/2 vas . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

152909

Electrovlvula de 5/2 vas, doble solenoide . . . . . . . . . . . . . . .

152910

Unidad de conexin E/S digitales . . . . . . . . . . . . . . . . . . . . . . .

159385

Glosario . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . D-3

Festo Didactic TP301

D-2
Apndice

TP301 Festo Didactic

011088

Entrada de seales elctricas

1/2

S
14

11

S
12
1

S
14

11

S
12

Diseo
Este componente consta de dos pulsadores iluminados en forma de contactos
momentneos y un pulsador iluminado en forma de contacto con retencin. Todas las
conexiones elctricas son en forma de zcalos de 4 mm. La unidad puede montarse en
un bastidor de montaje o en la placa perfilada utilizando cuatro clavijas enchufables.
Funcin
Los pulsadores iluminados en forma de contactos momentneos consisten en un
bloque de contactos con dos contactos normalmente cerrados y dos normalmente
abiertos, junto con un pulsador con tapa transparente con piloto miniatura. El bloque de
contactos se activa presionando el pulsador. Los circuitos elctricos abren o cierran a
travs del bloque de contactos. Cuando se suelta el pulsador, el bloque de contactos
regresa a su posicin inicial.
El pulsador iluminado en forma de interruptor con retencin consiste en un bloque de
contactos con dos contactos normalmente abiertos y dos normalmente cerrados, junto
con un pulsador con tapa transparente con piloto miniatura. El bloque de contactos se
activa presionando el pulsador. Los circuitos elctricos abren o cierran a travs del
bloque de contactos. Cuando se suelta el pulsador, el bloque de contactos permanece
en la posicin alcanzada. El bloque de contactos regresa a su posicin inicial
presionando de nuevo el pulsador.
Nota
Cuando se aplica tensin a las conexiones del indicador ptico, se visualiza el estado
de conmutacin por medio del piloto miniatura incorporado en el pulsador.

Tensin

24 V DC

Bloque de contactos

2 contactos n.a.,
2 contactos n.c.

Capacidad de los contactos

Max. 1 A

Consumo (piloto)

0,48 W

Conexiones

Cuatro clavijas de 4 mm

Sujeto a cambios

Festo Didactic

Datos tcnicos

011088

Entrada de seales elctricas

2/2

Ejemplo de aplicacin:
Esquema del circuito
elctrico

S = SPulsador
marcha
= STA TdeTaster

= Contacto
ffner

norm. cerrado

= Contacto
Schlie er

norm. abierto

24V
1

12

14

S
14

11

A1
A2

0V
=

2
STA T Taster
SS==Pulsador
de marcha

Ejemplo de aplicacin:
Montaje elctrico prctico

A1 12
A2

Contactos normalmente
abiertos, normalmente
cerrados: Asignacin de
contactos en la placa de
rels

14
11

Interruptor
conmutador
Wechsler
als Schlie
er
conectado como contacto n.o.
angeschlossen

Contacto
norm. cerrado
ffner

= Contacto
Schlie er

A1 12
A2

norm. abierto

14
11

Interruptor
Wechsler
als conmutador
ffner
conectado como contacto n.a.
angeschlossen

Festo Didactic

030311

Unidad de indicacin y distribucin elctrica

1/2

ise o
Este componente consiste en un indicador ac stico y cuatro indicadores pticos con
conexiones, y tres l neas de bus para alimentacin. Todas las conexiones elctricas
son en forma de zcalos de 4 mm. La unidad puede montarse en un bastidor de
montaje o sobre la placa perfilada utilizando cuatro adaptadores de clavijas
enchufables.

Funcin
El indi ador a s i o emite un zumbido cuando se aplica tensin a sus conexiones.
El indi ador isual, consiste en un cuerpo con una cxaperuza transparente y una
lmpara minuatura. Cuando se aplica tensin a sus conexiones, su estado operativo se
indica por la lmpara minuatura incorporada. Por cada lmpara se han previsto un par
de zcalos puenteados, permitiendo que el componente se utilice adems como
distribuidor.
Nota
Para asegurar que el indi ador a
de la fuente de alimentacin.

s i o funciona correctamente, verificar la polaridad

Tensin

24 V DC

Consumo (indicador ac stico)

0,04 W

Indicador ptico

1,2 W

recuencia (indicador ac stico)


Conexiones

Sujeto a cambios

Festo Didactic

420 z
Para clavijas de 4 mm

Datos tcnicos

030311

Unidad de indicacin y distribucin elctrica

2/2

H1

H2

=Contacto
ffner
cerrado en reposo

= Contacto
Schlieer abierto en reposo

Ejemplo de aplicacin:
Circuito elctrico

S = Pulsador
START - Taster
de marcha

+24V13

12

14

K
14

11

A1

H1

H2

A2

0V
2

Ejemplo de aplicacin:
Montaje elctrico
prctico

S = Pulsador
START - Taster
de marcha

= Contacto
ffner

cerrado en reposo

= Contacto
Schlieer

abierto en reposo

Festo Didactic

Cilindro de simple efecto

152887
1/1

Diseo
Este cilindro de simple efecto con leva en el vstago y racores rpidos, se halla
montado sobre un soporte. El conjunto puede montarse sobre la placa perfilada con
el sistema de fijacin rpida con dos tuercas de tetones (alternativa de montaje B).
Funcin
El vstago del cilindro de simple efecto se desplaza en sentido de avance al alimentarlo con aire comprimido. Al cortar y descargar el aire comprimido, el mbolo regresa a su posicin de origen por medio de un muelle de retorno.
El campo magntico de un imn permanente, unido al mbolo, permite accionar interruptores de proximidad magnticos.
Fluido

Aire comprimido filtrado (con o sin lubricacin)

Diseo

Cilindro de mbolo

Presin de
funcionamiento mx.

10 bar (1000 kPa)

Carrera mxima

50 mm

Fuerza
a 6 bar (600 kPa)

150 N

Mnima fuerza del


muelle

13,5 N

Conexin

G 1/8
Racores CU-PK-3 para tubo de plstico PUN-4 x 0,75

Sujeto a modificaciones
Datos tcnicos

Festo Didactic

Festo Didactic

Cilindro de doble efecto

152888
1/1

Diseo
Este cilindro de doble efecto con leva en el vstago y racores rpidos, se halla
montado sobre un soporte. El conjunto puede montarse sobre la placa perfilada con
el sistema de fijacin rpida con dos tuercas de tetones (alternativa de montaje B).
Funcin
El vstago del cilindro de doble efecto se invierte por medio de la alimentacin alternativa de aire comprimido. La amortiguacin en ambos extremos evita choques bruscos del mbolo en las culatas. La amortiguacin de los finales de recorrido puede
ajustarse por tornillos de regulacin
El campo magntico de un imn permanente, unido al mbolo, permite accionar interruptores de proximidad magnticos.
Fluido

Aire comprimido filtrado (con o sin ubricacin)

Diseo

Cilindro de mbolo

Presin de
funcionamiento mx.

10 bar (1000 kPa)

Carrera mxima

100 mm

Fuerza a 6 bar
(600 kPa)

165 N

Fuerza de retorno
a 6 bar (600 kPa)
Conexin

140 N
G 1/8
Racores CU-PK-3 para tubo de plstico PUN-4 x 0,75

Sujeto a modificaciones
Datos tcnicos

Festo Didactic

Festo Didactic

Unidad de mantenimiento
con vlvula de interrupcin

152894
1/1

Diseo
El filtro regulador con manmetro, racores rpidos y vlvula de interrupcin, se halla
montado en un soporte basculante. El vaso del filtro se halla protegido por una funda metlica. La unidad se monta sobre la placa perfilada por medio de tornillos
Allen y tuercas en Te (alternativa de montaje C)
Funcin
El filtro con separador de agua, limpia el aire comprimido de suciedad, virutas de la
tubera, xidos y condensados.
El regulador de presin ajusta el aire comprimido suministrado a la presin de funcionamiento requerida y compensa las fluctuaciones de la presin de entrada. Una
flecha en el cuerpo indica el sentido del flujo. El vaso del filtro posee un tornillo de
drenaje. El manmetro muestra la presin ajustada. La vlvula de interrupcin corta
y descarga la presin del sistema. La vlvula de 3/2 vas se acciona deslizando la
corredera cilndrica azul.
Nota
Cuando se monta el circuito, asegurarse de que el filtro regulador se monta en posicin vertical. El regulador est provisto de un pomo, que permite ajustar la presin
requerida girndolo. Apretando el tornillo ranurado en la cabeza del regulador, el
ajuste puede bloquearse.
Fluido

Aire comprimido

Diseo

Filtro sinterizado con separador de agua, regulador de


presin tipo mbolo

Caudal nom. estndar*

750 l/min

Presin mx. entrada.

1600 kPa (16 bar)

Presin mx. salida.

1200 kPa (12 bar)

Grado de filtracin

40 m

Volumen de
condensados

14 cm3

Conexin

G 1/8
Racor CU-PK-4 para tubo de plstico PUN-6 x 1

* Presin de entrada
Presin de salida
Presin diferencial
Sujeto a modificaciones

Festo Didactic

1000 kPa (10 bar)


600 kPa (6 bar)
100 kPa (1 bar)

Datos tcnicos

Festo Didactic

152896

Distribuidor de aire

1/1

Diseo
Este distribuidor de aire con ocho salidas autobloqueadas, se halla sujeto sobre una
placa universal. La unidad se fija a la placa perfilada por medio de un sistema de
fijacin rpido con leva azul (alternativa de montaje A).
Funcin
El distribuidor con una alimentacin P comn, permite alimentar de aire comprimido
hasta ocho puntos en un sistema de control neumtico

Conexin

Sujeto a modificaciones

Festo Didactic

G 18
1 racor CU-18-6 para tubo de plstico PUN-6 x 1
8 racores KCU-18-4 para tubo de plstico PUN-4 x 0,75

Datos tcnicos

Festo Didactic

152902

Sensor de proximidad inductivo

1/2

24V

0V

Festo Didactic

152902

Sensor de proximidad inductivo

2/2

Diseo
Este sensor de proximidad inductivo con LED y conexiones elctricas se halla montado
sobre una base de polmero. La unidad se fija sobre la placa perfilada por medio de un
sistema de bloqueo rpido con tuerca azul de tetones (alternativa de montaje B)
Funcin
El sensor de proximidad inductivo consiste en un circuito oscilador realizado con un
circuito resonante paralelo con bobina y condensador, as como un amplificador. El
campo electromagntico es dirigido hacia el exterior por medio de un ncleo de ferrita.
Cuando un cuerpo conductor de la electricidad penetra en el campo electromagntico,
genera unas corrientes parsitas en el material segn la ley de la induccin que
atenan la oscilacin. Dependiendo de la conductividad, el tamao y la proximidad del
objeto conductor, el oscilador puede atenuarse tanto que deje de oscilar. La atenuacin
del oscilador se evala en la etapa de disparo, lo cual proporciona una seal de salida.
El sensor de proximidad tiene salida PNP, es decir, la lnea de seal se conecta al
potencial positivo en el estado de activacin. El interruptor est diseado en forma de
contacto normalmente abierto. La conexin de la carga se realiza entre la seal de
salida del sensor y el potencial cero. La superficie activa puede identificarse por el
disco de polmero azul. El estado de funcionamiento se indica por un LED. El sensor
se halla protegido contra polaridad inversa, sobrecarga y cortocircuito.
Nota
La adecuada polaridad de la tensin aplicada es necesaria para un correcto
funcionamiento. Las conexiones para la tensin de alimentacin estn codificadas en
colores como se indica: rojo para positivo, azul para negativo y negro para la seal de
salida. La carga se conecta entre la salida de conmutacin y el potencial 0 V de la
alimentacin.

Datos tcnicos

Tensin de conmutacin

10 a 30 V DC

Rizado residual

mximo 10% segn DIN 41755

Distancia nominal de deteccin

4 mm (material: acero dulce)

Frecuencia de conmutacin

mximo 800 Hz

Funcin de salida

contacto normalmente abierto,


conmutacin a positivo

Corriente de salida

mximo 400 mA

Clase de proteccin

IP65

Conexiones

para clavija de 4 mm o zcalo de 3 pines

Sujeto a cambios

Festo Didactic

152903

Sensor de proximidad, capacitivo

1/2

1
2
3
4

5
6
7
8

24V

0V

Festo Didactic

8
9

Oscilador
Demodulador
Etapa de disparo
Indicador de
funcionamiento
Etapa de salida con
corcuito de proteccin
Tensin externa
Alimentacin interna de
tensin constante
Condensador con
zona activa
Salida

152903

Sensor de proximidad, capacitivo

2/2

Diseo
Este sensor de proximidad capacitivo con LED y conexiones elctricas se halla
montado sobre una base de polmero. La unidad se fija sobre la placa perfilada por
medio de un sistema de bloqueo rpido con tuerca azul de tetones (alternativa de
montaje B)
Funcin
El principio de funcionamiento de un sensor capacitivo est basado en la evaluacin
del cambio de capacidad de un condensador en un circuito resonante RC.
Cuando un material se acerca al sensor de proximidad, la capacidad de condensador
se estimula (aumentanto), con lo que puede evaluarse un cambio en las caractersticas
de la oscilacin del circuito RC. El cambio de capacidad detende mucho de la
distancia, tamao y constante dielctrica del material utilizado.
El sensor de proximidad tiene una salida PNP, es decir, la lnea de seal es conmutada
a un potencial positivo en el estado de conmutacin. El interruptor est diseado como
un contacto normalmente abierto. La conexin de la carga se realiza entre la seal de
salida del sensor y el potencial cero. La superficie activa puede identificarse por el
disco de polmero azul. El estado de funcionamiento se indica por un LED. El sensor
se halla protegido contra polaridad inversa, sobrecarga y cortocircuito.
Nota:
La adecuada polaridad de la tensin aplicada es necesaria para un correcto
funcionamiento. Las conexiones para la tensin de alimentacin estn codificadas en
colores como se indica: rojo para positivo, azul para negativo y negro para la seal de
salida. La carga se conecta entre la salida de conmutacin y el potencial 0 V de la
alimentacin.

Datos tcnicos

Tensin de conmutacin

10 a 30 V DC

Rizado residual

mximo10%

Distancia nominal de conmutacin

4 mm

Punto de conmutacin reproducible


a temperatura constante

0,01 mm

Frecuencia de conmutacin

mximo 100 Hz

Corriente en vaco

aprox. 15 mA

Intensidad de salida

mximo 200 mA

Capacidad de conmutacin

mximo 4,8 W

Funcin de salida

Contacto n.a. conmutacin a positivo

Clase de proteccin

IP65

Conexiones

para clavija de 4 mm o zcalo 3 pines

Sujeto a cambios

Festo Didactic

152904

Sensor de proximidad ptico

1/2

1
2
3
4

9
10

5
6
7
8

11

24V

0V

Festo Didactic

12

9
10
11
12

Oscilador
Emisor fotoelctrico
Receptor foroelctrico
Preamplificador con
potencimetro
Funcin lgica
Convertidor nivel/pulso
Indicador de estado
Etapa de salida con
circuito protector
Tensin externa
Fuente de tensin
interna constante
Recorrido ptico
Salida

152904

Sensor de proximidad ptico

2/2

Diseo
Este sensor de proximidad ptico con LED y conexiones elctricas se halla montado
sobre una base de polmero. La unidad se fija sobre la placa perfilada por medio de un
sistema de bloqueo rpido con tuerca azul de tetones (alternativa de montaje B).
Funcin
Los sensores de proximidad pticos consisten en dos mdulos principales, el emisor y
el receptor. En el caso del sensor de reflexin directa, estos se hallan montados en el
mismo cuerpo.
El emisor del sensor de reflexin directa emite una luz roja pulsante en el margen del
espectro visible. El objeto a detectar refleja parte de la luz emitida. Esta luz es
detectada por un dispositivo semiconductor en el receptor que tambin se halla
dispuesto en el cuerpo del sensor y que provoca un cambio en el estado de
conmutacin.
El objeto a detectar puede ser reflectante, mate, transparente u opaco. Todo lo que se
necesita es que una parte suficientemente elevada de luz sea reflejada directamente o
de forma difusa. La distancia de deteccin puede variarse por medio de un
potencimetro.
El sensor de proximidad tiene una salida PNP, es decir, la lnea de seal es conmutada
a un potencial positivo en el estado de conmutacin. El interruptor est diseado como
un contacto normalmente abierto. La conexin de la carga se realiza entre la seal de
salida del sensor y el potencial cero. La superficie activa puede identificarse por el
disco de polmero azul. El estado de funcionamiento se indica por un LED. El sensor
se halla protegido contra polaridad inversa, sobrecarga y cortocircuito.
Nota:
La adecuada polaridad de la tensin aplicada es necesaria para un correcto
funcionamiento. Las conexiones para la tensin de alimentacin estn codificadas en
colores como se indica: rojo para positivo, azul para negativo y negro para la seal de
salida. La carga se conecta entre la salida de conmutacin y el potencial 0 V de la
alimentacin.

Datos tcnicos

Tensin de conmutacin

10 a 30 V DC

Rizado residual

mximo 10%

Distancia nominal de deteccin

0 a 100 mm (ajustable)

Frecuencia de conmutacin

mximo 200 Hz

Funcin de salida

Contacto n.a. conmutacin a positivo

Corriente de salida

mximo 100 mA

Clase de proteccin

IP65

Conexiones

para clavija de 4 mm o zcalo de 3 pines

Sujeto a cambios

Festo Didactic

152905

Interruptor de proximidad
para montaje en cilindro

1/1

BN

BK
BU

Diseo
Este interruptor de proximidad consta de un sensor y un kit
de montaje. La conexin elctrica se realiza por medio de una
clavija. El zcalo y el cable (incluido en el kit) se necesitan
para este fin.
Funcin
El interruptor de proximidad emite una seal elctrica cuando
penetra en un campo magntico (es decir, el campo del imn
permanente montado sobre el mbolo del cilindro). Las
conexiones elctricas se hallan embebidas en el interruptor. El
estado de conmutacin se muestra por un LED. Este LED
amarillo luce cuando el interruptor est accionado.

24V
BN

BK

BU
0V

Nota
Para asegurar una operacin de conmutacin correcta,
asegurarse que la polaridad de las tensiones aplicadas al
interruptor son correctas. Los cables estn codificados por
colores; azul (BU) para el negativo, rojo (BN) para el positivo
y negro (BK) para la seal de salida. La carga (rel) se
conecta entre este y el terminal negativo. El interruptor se
halla protegido contra polaridad incorrecta, sin embargo, no
se halla protegido contra cortocircuito.

Tensin de interrupcin

24 V DC/AC

Intensidad de interrupcin

Mx. 500 mA

Precisin

0,1 mm

Conexin

Clavija con cable para zcalo

Cable

con clavijas de 4 mm

Sujeto a cambios
Datos tcnicos

Festo Didactic

Festo Didactic

Electrovlvula de 5/2 vas

152909
1/1

2(B)

4(A)

5(R)

3(S)

1(P)

Diseo
Esta vlvula de 5/2 vas de una sola bobina, con racores rpidos esta unida a una
placa de funcin que se halla provista de una conexin P y un silenciador. La
unidad se monta sobre la placa perfilada con un sistema de bloqueo rpido con leva
azul (alternativa de montaje A).
Funcin
La electrovlvula invierte cuando se aplica tensin a la bobina del solenoide (1 4)
y regresa a su posicin inicial (1 2) por un muelle de retorno cuando cesa la
seal. El estado de conmutacin se visualiza por medio de un LED en la carcasa
del terminal
Nota
La bobina del solenoide se caracteriza por un muy bajo consumo y una baja
generacin de calor. La conexin elctrica incorpora proteccin contra polaridad
incorrecta para el LED y un circuito de proteccin.
Seccin neumtica
Fluido

Aire comprimido, filtrado (con o sin lubricacin)

Diseo

Vlvula de corredera pilotada, con muelle de retorno

Margen de presin

250 a 800 kPa (2,5 a 8 bar)

Tiempo de conmutacin

a 600 kPa (6 bar)


Con.: 20 ms, Descon.: 30 ms

Caudal nominal estndar

500 l/min

Conexin

Racor CU-PK-3 para tubo de plstico PUN-4 x 0.75

Seccin elctrica
Tensin

24 V DC

Consumo

1,5 W

Duracin

100%

Conexin

Para clavijas de 4 mm y conector doble

Sujeto a cambios

Datos tcnicos

Festo Didactic

Festo Didactic

Vlvula de 5/2 vas, doble solenoide

152910
1/1

4(A)

2(B)

3(S)

5(R)
1(P)

Diseo
Esta vlvula de 5/2 vas con racores rpidos est montada sobre una placa
equipada con una entrada P y un silenciador. La unidad se fija sobre la placa
perfilada utilizando el sistema de fijacin rpida con leva azul (variante de montaje
A)
Funcin
La electrovlvula invierte su estado cuando se aplica tensin a la bobina del
solenoide y permanece en esta posicin aunque desaparezca la seal. Cuando
aparece una seal en la bobina opuesta, la vlvula invierte de nuevo su estado. El
estado de conmutacin se visualiza por medio de un LEDs incorporados en los
conectores de las bobinas.
Nota
Las bobinas del solenoide se caracterizan por su bajo consumo y su poca
generacin de calor. La conexin elctrica incorpora una proteccin contra polaridad
incorrecta para el LED y un circuito de proteccin.
Seccin neumtica
Fluido

Aire comprimido, filtrado (con o sin lubricacin)

Diseo

Vlvula de corredera pilotada, con muelle de retorno

Margen de presin

150 a 800 kPa (1,5 a 8 bar)

Tiempo de conmutacin

a 600 kPa (6 bar) 10 ms

Caudal nominal estndar

500 l/min

Conexin

Racor CU-PK-3 para tubo de plstico PUN-4 x 0.75

Seccin elctrica
Tensin

24 V DC

Consumo

1,5 W

Duracin

100%

Conexin

Para clavijas de 4 mm y conector doble

Sujeto a cambios

Datos tcnicos

Festo Didactic

Festo Didactic

Unidad de conexin E/S digitales

159385
1/2

Diseo
Esta unidad de conexin est dispuesta en un cuerpo
provisto de pasadores de fijacin y se monta en el bastidor de un armario de maniobra o en la placa de montaje
perfilada con ayuda de adaptadores enchufables.
Las conexiones elctricas para la alimentacin se conectan por medio de clavijas de 4 mm.
El control lgico programable se conecta a una regleta/conector de 18 pines.
Funcin
La unidad de conexin permite cablear interruptores, sensores y actuadores a las entradas y salidas de los controles
conectados por medio de zcalos y clavijas de 4 mm.
Cada una de las entradas digitales (I_.0 a I_.7) y salidas
(Q_.0 a Q_.7) de un control lgico programable son accesibles simultneamente. El estado de conmutacin de las
salidas se indica por medio de un diodo LED.

Festo Didactic

159385

Unidad de conexin E/S digitales

2/2

Tensin de funcionamiento admisible

24 VDC

Rizado residual

mx. 10%

Entradas
Corriente de entrada
Tolerancias en el nivel de entrada

8 entradas digitales
*
*

Salidas
Tensin de salida
Corriente de salida

8 salidas digitales
*
*

Consumo del LED a 24 V

5 mA

Conexin elctrica
Tensin de funcionamiento
Entradas y salidas

Datos tcnicos

zcalos de 4 mm
zcalos de 4 mm y clavijas enchufables
con regleta

Sujeto a cambios

* Para las especificaciones de los datos de entrada y salida, por favor, vase
el manual del control lgico programable utilizado.

Nota
La unidad de conexin se suministra con una regleta/conector de 18 pines para el
cable de conexin entre el control lgico programable y la unidad de conexin. La
asignacin de los 18 pines se da en la tabla inferior.
Zcalo N

Asignacin de la
regleta/conector
de 18 pines
(de ariba a abajo)

Zcalo N

Zcalo N

24 V DC

I_.4

13

Q_.2

0 V DC

I_.5

14

Q_.3

I_.0

I_.6

15

Q_.4

I_.1

10

I_.7

16

Q_.5

I_.2

11

Q_.0

17

Q_.6

I_.3

12

Q_.1

18

Q_.7

Festo Didactic

D-3
Glosario

Accin
Elemento de una etapa. La accin contiene las partes de ejecucin
de un programa en Diagrama de Funciones Secuencial.
Bit
Forma derivada de "binay digit / dgito binario": carcter bivalente
(binario), la ms pequea unidad de informacin.
Bloque de accin
Coleccin de calificador de accin, nombre de la accin, variables
de realimentacin y contenido de la accin.
Bloques de funcin
Los bloques de funcin son partes del programa que pueden utilizarse repetidamente, para procesar los datos de entrada hacia datos de salida. Tambin pueden utilizarse para almacenar resultados
intermedios y tienen un nombre para cada aplicacin.
Bus de control
Circuito del bus en un sistema de bus, que transmite exclusivamente instrucciones de control.
Bus de datos
Bus de un PLC, con el que se transmite informacin (seales, datos).
Bus de direcciones
Haz de conductores de un sistema, que transmite exclusivamente
informacin sobre direcciones, es decir, direcciones de entradas y
salidas del PLC, flags o dispositivos perifricos.
Byte
Una unidad de datos consistente en 8 bits
Calificador de accin
Cada accin tiene un calificador, que describe su comportamiento
en mayor detalle.
Ciclo
En un ciclo, el estado de las entradas es ledo de la tabla de imagen al principio, el programa es procesado una vez completamente,
y a continuacin se actualiza la tabla de imagen de salidas.
Declaracin de datos
Para poder acceder a datos con nombres simblicos, estos deben
primero estar enlazados en declaraciones con tipos de datos.
Derechos de acceso
IEC 1131-3 especifica para todas las variables, a partir de qu punto y hasta qu alcance puede producirse el acceso de lectura ,
escritura o cambio de una variable.

Festo Didactic TP301

D-4
Glosario

Derivacin alternativa
La derivacin es la ejecucin de un programa en Diagrama de Funciones Secuencial en uno o varios recorridos posibles. El recorrido
tomado depende de las condiciones de transicin del funcionamiento del programa.
Derivacin paralela (simultnea)
Las derivaciones paralelas son aquellos tipos de derivaciones en un
Diagrama de Funciones Secuencial, que contienen un programa que
sigue por varias derivaciones simultneamente. Cuando se alcanza
el final, se sincroniza su finalizacin.
Diagrama de bloques de funcin (FBD)
Un lenguaje de programacin segn IEC 1131-3, que interconecta
grficamente las funciones y bloques de funcin para resolver una
tarea de control.
Diagrama de Contactos (LD)
Un lenguaje de programacin estandarizado en IEC 1131-3, derivado de la representacin del esquema de un circuito.
Diagrama de Funciones Secuencial
Lenguaje grfico de programacin de IEC 1131-3. Su objetivo es
estructurar las tareas de los programas de control en etapas y transiciones.
EEPROM
Desarrollo avanzado de las EPROMs. Se utiliza un impulso elctrico
para borrar el contenido de la memoria, en lugar de rayos ultravioletas. Subsecuentemente, puede escribirse nueva informacin en la
memoria.
EPROM
Memoria de slo lectura, cuyo contenido se borra con luz UV, y que
puede reescribirse con nueva informacin.
Etapa
Las etapas son la parte de ejecucin y al mismo tiempo los recursos
de organizacin del Diagrama de Funciones secuencial
Etapa inicial, Etapa de inicializacin
Una etapa especial en el Diagrama de Funciones Secuencial, que
se ejecuta en primer lugar y al principio del programa. cada estructura secuencial (red) tiene una nica etapa inicial.
Funciones
Una funcin es una parte del programa, que suministra un nico
valor para las variables de entrada transmitidas. la informacin no
puede ser almacenada de forma intermedia en una funcin.

TP301 Festo Didactic

D-5
Glosario

Instruccin (command)
Instruccin a la MPU de un PLC para la ejecucin de una operacin definida con precisin. La instruccin consiste en una parte de
operacin, que contiene informacin sobre lo que hay que hacer y
el operando o la parte de direccin. esto define dnde hay que
hacer algo y dnde debe leerse o almacenarse la informacin.
Interface paralelo
Interface para la transmisin de bits de datos en paralelo.
Ventaja: Se consiguen elevadas velocidades de transmisin como
resultado de la transmisin simultnea de 8 bits de datos.
Desventaja: longitud limitada de la lnea.
Interface serie
Interface serie para la transmisin de datos.
Ventajas: Un interface serie permite transmitir y recibir datos al mismo tiempo.
Desventaja: bajas velocidades de transmisin.
Lenguajes de programacin
IEC 1131-3 permite la utilizacin de diferentes lenguajes de programacin, parcialmente incluso en forma mezclada, para la creacin
de un programa de control. El diagrama de bloques de funcin, el
diagrama de contactos, la lista de instrucciones y el texto estructurado son lenguajes de programacin estandarizados de este tipo.
Lista de asignaciones, lista de declaraciones
La lista de asignaciones designa y explica el equipamiento conectado al PLC (pulsadores, vlvulas, contactores, etc.). En IEC 1131-3,
estas listas son reemplazadas por la declaracin estructurada de
variables.
Esto no significa que un sistema de programa no sea capaz de
crear listas de este tipo para la documentacin de un programa de
control.
Lista de Instrucciones (IL)
Lenguaje de programacin orientado a la mquina segn IEC 11313, hecho a base de instrucciones. Las instrucciones consisten principalmente en un operador y un operando.
Memoria de slo lectura
ROM Read Only Memory: Memoria cuyo contenido slo puede ser
ledo.
MPU
Abreviacin de Main Processing Unit (Unidad de procesamiento
principal (antiguamente CPU - Central Process Unit o Unidad Central de Proceso UCP)

Festo Didactic TP301

D-6
Glosario

Palabra clave
Algunas palabras en el estndar estn reservadas a tareas especficas, por lo que no pueden utilizarse libremente.
Programa de control
El programa de un PLC representando el total de todas las instrucciones para el procesamiento de seales, como resultado de lo cual,
se influye sobre el equipamiento a controlar. Consiste en una secuencia de instrucciones.
Sistema de bus
Sistema de bus para la transmisin de datos entre, por ejemplo,
mdulos individuales de un PLC
Sistema de Control Lgico (combinatorio)
Sistema de control, en el cual las combinaciones de seales de salida estn asignadas a las seales de salida en todo momento. Esta
asignacin se realiza predominantemente por medio de operaciones
lgicas. Un programa combinatorio se realiza completamente en un
ciclo.
Sistema de control secuencial
Un sistema de control, que es subdividido en etapas que se procesan consecutivamente. Slo despus que se ha ejecutado una etapa, se ejecuta la siguiente. El paso de una etapa a la siguiente
depende de ciertas condiciones, las condiciones de transicin.
Tabla de imagen
Los programas de PLC, normalmente no operan directamente en las
entradas y salidas del PLC, sino sobre una imagen (copia de los
valores de la seal en la memoria interna). Las entradas se leen al
principio del ciclo; al final del ciclo, la imagen de las salidas se emite
fsicamente hacia las salidas.
Texto estructurado (ST)
Un lenguaje textual de alto nivel de IEC 1131-3 para la creacin de
programas de control
Tiempo de ciclo
El tiempo de ciclo de un PLC es el tiempo requerido por la unidad
de control central para procesar una vez el programa desde el principio al final. Esto tambin tiene en cuenta el tiempo requerido para
leer y para emitir la tabla de imagen. La indicacin del tiempo se
hace generalmente en ms/K.
Tipo de datos
Las variables de IEC 1131-3 pueden ser de diferentes tipos. Las
declaraciones correspondientes permiten la definicin de tipos de
datos.

TP301 Festo Didactic

D-7
Glosario

Transicin
El elemento de un Diagrama de funciones secuencial, que evala
una expresin booleana y habilita el paso el flujo del programa a la
siguiente etapa
Transmisin de datos en paralelo
La transmisin de cada bit individual se realiza por una lnea aparte. Para transmitir un byte, por lo tanto, se necesitan 8 lneas individuales en paralelo que transmitan simultneamente.
Transmisin de datos en serie
Forma de transmitir datos, en la que los datos se transmiten consecutivamente bit a bit. Para ello se necesita por lo menos una lnea
de datos.
Unidades de organizacin de programas
IEC 1131-3 distingue entre diferentes partes de un programa de
control y requiere estructuracin en unidades de organizacin. Estos son los programas, funciones y bloques de funcin. Una unidad
de mayor nivel de organizacin es la configuracin.
Valor inicial, Valor de partida
A una varia se le puede asignar un valor inicial durante la generacin del programa, que es el que la variable asumir al empezar el
programa.
Variable de realimentacin
La memoria de realimentacin es programada por el usuario e indica el final o eventualmente una condicin de error de la accin
ordenada. La variable de realimentacin se utiliza a menudo en la
siguiente condicin de transicin.

Festo Didactic TP301

D-8
Glosario

TP301 Festo Didactic

También podría gustarte