Está en la página 1de 488

Sistema para Ensear Automatizacin y Comunicaciones

Controles Lgicos Programables


Libro de Trabajo - Nivel bsico

94427 E

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 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Tabla de componentes/ejercicios. . . . . . . . . . . . . . . . . . . . . . . . . . . . Componentes del equipo. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Notas sobre seguridad. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

11 12 13 15

Tabla de contenido

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: Ejercicio 4: Ejercicio 5: Ejercicio 6: Circuito de una lmpara La funcin de asignacin . . . . . . . . . . . . . . . . . . . . . A-15 Alarma antirrobo La funcin NOT . . . . . . . . . . . . . . . . . . . . . . . . . . . . A-25 Prensa con barrera protectora La funcin AND. . . . . . . . . . . . . . . . . . . . . . . . . . . . . A-35 Sistema de timbre La funcin OR . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A-45

Sistemas lgicos sin funciones memorizantes Ejercicio 7: Ejercicio 8: Dispositivo estampador Combinacin de AND/OR/NOT . . . . . . . . . . . . . . . . A-55 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

Ejercicio 10: Ejercicio 11:

Supervisin de la rotura de una broca Activacin y desactivacin de una salida . . . . . . . A-81 Activacin de un cilindro Flancos de las seales . . . . . . . . . . . . . . . . . . . . . A-89

Sistemas lgicos con funciones temporales Ejercicio 12: Ejercicio 13: Ejercicio 14: Encolado de componentes Pulso . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A-101 Dispositivo de marcado Seal con retardo a la conexin . . . . . . . . . . . . . A-111 Dispositivo de fijacin Seal con retardo a la desconexin . . . . . . . . . . A-121

Sistemas de control secuencial Ejercicio 15: Ejercicio 16: Ejercicio 17: Dispositivo elevador para paquetes Secuencia lineal . . . . . . . . . . . . . . . . . . . . . . . . . A-131 Dispositivo elevador y clasificador para paquetes Derivacin alternativa. . . . . . . . . . . . . . . . . . . . . . A-147 Dispositivo de estampacin con contador Ciclos de recuento . . . . . . . . . . . . . . . . . . . . . . . . A-159

Seccin B Fundamentos
Captulo 1 Automatizando con un PLC. . . . . . . . . . . . . . . . . . . . B-1 1.1 1.2 1.3 1.4 Introduccin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . B-2 Campos de aplicacin de un PLC . . . . . . . . . . . . . . . . . . . . . B-2 Diseo bsico de un PLC . . . . . . . . . . . . . . . . . . . . . . . . . . . B-5 El nuevo estndar para PLC IEC 1131 . . . . . . . . . . . . . . . . . B-8

Captulo 2 Fundamentos. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . B-11 2.1 2.2 2.3 2.4 2.5 2.6 El sistema de numeracin decimal . . . . . . . . . . . . . . . . . . . B-12 El sistema de numeracin binario . . . . . . . . . . . . . . . . . . . . B-12 El cdigo BCD . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . B-14 El sistema de numeracin hexadecimal . . . . . . . . . . . . . . . B-14 Nmeros binarios con signo . . . . . . . . . . . . . . . . . . . . . . . . B-15 Nmeros reales . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . B-15

TP301 Festo Didactic

2.7

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

Captulo 3 Operaciones Booleanas . . . . . . . . . . . . . . . . . . . . . 3.1 3.2 3.3 3.4 3.5

Funciones lgicas bsicas . . . . . . . . . . . . . . . . . . . . . . . . . . B-20 Otras operaciones lgicas . . . . . . . . . . . . . . . . . . . . . . . . . . B-24 Establecimiento de funciones de conmutacin . . . . . . . . . . B-26 Simplificacin de funciones lgicas . . . . . . . . . . . . . . . . . . . B-28 Diagrama de Karnaugh-Veitch . . . . . . . . . . . . . . . . . . . . . . . B-30 B-33

Captulo 4 Diseo y modo de funcionamiento de un PLC . . 4.1 4.2 4.3 4.4 4.5 4.6 4.7

Estructura de un PLC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . B-34 Unidad de procesamiento principal de un PLC . . . . . . . . . . B-36 Modo de funcionamiento de un PLC . . . . . . . . . . . . . . . . . . B-38 Memoria del programa de la aplicacin . . . . . . . . . . . . . . . B-40 Mdulo de Entradas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . B-42 Mdulo de Salidas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . B-44 Aparato programador / Ordenador personal . . . . . . . . . . . . B-46 B-49

Captulo 5 Programacin de un PLC . . . . . . . . . . . . . . . . . . . . 5.1 5.2 5.3

Bsqueda de una solucin sistemtica . . . . . . . . . . . . . . . . B-50 Recursos de estructuracin de IEC 1131-3 . . . . . . . . . . . . B-53 Lenguajes de programacin. . . . . . . . . . . . . . . . . . . . . . . . . B-56 B-61

Captulo 6 Elementos comunes de los lenguajes . . . . . . . . . 6.1 6.2 6.3

Recursos de un PLC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . B-62 Tipos de datos y variables . . . . . . . . . . . . . . . . . . . . . . . . . . B-66 Unidades de organizacin de programas . . . . . . . . . . . . . . B-76 B-91

Captulo 7 Diagrama de bloques de funcin . . . . . . . . . . . . . 7.1 7.2 7.3

Elementos del diagrama de bloques de funcin . . . . . . . . . B-92 Evaluacin de redes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . B-93 Estructuras de bucle. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . B-94

Festo Didactic TP301

Captulo 8 Diagrama de contactos . . . . . . . . . . . . . . . . . . . . . . B-95 8.1 8.2 8.3 Elementos del diagrama de contactos. . . . . . . . . . . . . . . . . B-96 Funciones y bloques de funcin . . . . . . . . . . . . . . . . . . . . . B-98 Evaluacin de los renglones . . . . . . . . . . . . . . . . . . . . . . . . B-99

Captulo 9 Lista de instrucciones . . . . . . . . . . . . . . . . . . . . . . B-101 9.1 9.2 9.3 Instrucciones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . B-102 Operadores . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . B-103 Funciones y bloques de funcin . . . . . . . . . . . . . . . . . . . . B-104

Captulo 10 Texto estructurado . . . . . . . . . . . . . . . . . . . . . . . . . B-107 10.1 10.2 10.3 10.4 Expresiones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . B-108 Instrucciones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . B-110 Instrucciones de seleccin . . . . . . . . . . . . . . . . . . . . . . . . . B-112 Instrucciones de iteracin . . . . . . . . . . . . . . . . . . . . . . . . . B-115

Captulo 11 Diagrama de funciones secuencial. . . . . . . . . . . . B-119 11.1 11.2 11.3 11.4 11.5 Introduccin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . B-120 Elementos del diagrama de funciones secuencial . . . . . . B-120 Transiciones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . B-130 Pasos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . B-133 Ejemplo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . B-143

Captulo 12 Sistemas de control lgico. . . . . . . . . . . . . . . . . . B-147 12.1 12.2 12.3 12.4 Qu es un sistema de control lgico . . . . . . . . . . . . . . . . . B-148 Sistema de control lgico sin propiedades memorizantes B-148

Sistema de control lgico con propiedades memorizantes B-154 Evaluacin de flancos . . . . . . . . . . . . . . . . . . . . . . . . . . . . B-157

Captulo 13 Temporizadores . . . . . . . . . . . . . . . . . . . . . . . . . . . B-161 13.1 13.2 Introduccin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . B-162 Temporizador de pulsos. . . . . . . . . . . . . . . . . . . . . . . . . . . B-163

TP301 Festo Didactic

13.3 13.4

Seal con retardo a la conexin . . . . . . . . . . . . . . . . . . . . B-165 Seal con retardo a la desconexin. . . . . . . . . . . . . . . . . . B-167 B-171

Captulo 14 Contadores. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14.1 14.2 14.3 14.4

Funciones de contador . . . . . . . . . . . . . . . . . . . . . . . . . . . . B-172 Contador incremental . . . . . . . . . . . . . . . . . . . . . . . . . . . . . B-172 Contador decremental . . . . . . . . . . . . . . . . . . . . . . . . . . . . B-176 Contador incremental/decremental. . . . . . . . . . . . . . . . . . . B-178 B-179

Captulo 15 Sistemas de control secuencial . . . . . . . . . . . . . 15.1 15.2 15.3

Qu es un sistema de control secuencial . . . . . . . . . . . . . B-180 Diagrama de funciones segn IEC 848 . . . . . . . . . . . . . . B-180 Diagrama desplazamiento-fase . . . . . . . . . . . . . . . . . . . . . B-186

Captulo 16 Puesta a punto y seguridad en el manejo de un PLC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16.1 16.2

B-187

Puesta a punto . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . B-188 Seguridad en el manejo de un PLC. . . . . . . . . . . . . . . . . . B-190 B-195

Captulo 17 Comunicaciones con PLC . . . . . . . . . . . . . . . . . . 17.1 17.2 17.3 17.4

La necesidad de comunicacin . . . . . . . . . . . . . . . . . . . . . B-196 Transmisin de datos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . B-196 Interfaces . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . B-197 Comunicacin a nivel de campo . . . . . . . . . . . . . . . . . . . . B-198

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

Festo Didactic TP301

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 Sensor de proximidad, capacitive Sensor de proximidad con brida para cilindro Electrovlvula de 5/2 vas de una bobina Electrovlvula de 5/2 vas de doble bobina Cilindro de doble efecto Cilindro de simple efecto Vlvula de paro/marcha con filtro y regulador Distribuidor

10

11

12

13

14

15

16

17

1 1

1 1

1 1 1

1 1

1 1 1

1 1 1 1 1 1 4 1 1 1 4 2

1 1

1 1

1 4 2 1 2 2 1 1 1 1 1

1 4 2 1 2 1 1 1

1 1 1 1 1 1 1 1 1 1 1

1 1

1 1

1 1

1 1

TP301 Festo Didactic

13

Equipo TP310, Placa de montaje perfilada, N de artculo 080 261


Descripcin
Entrada de seales elctricas Distribuidor e indicador elctrico Sensor de proximidad, ptico Sensor de proximidad, inductivo Sensor de proximidad, capacitivo Sensor de proximidad con brida para cilindro Electrovlvula de 5/2 vas de una bobina Electrovlvula de 5/2 vas de dos bobinas Cilindro de doble efecto Cilindro de simple efecto Vlvula de paro/marcha con filtro y regulador Distribuidor Tubo de plstico Distribuidor de enchufe rpido

N de artculo
011 088 030 311 152 904 152 902 152 903 152 905 152 909 152 910 152 888 152 887 152 894 152 896 151 496 036 315

Cantidad
1 1 1 1 1 4 2 1 2 1 1 1

opcional, no includo en la dotacin original del equipo Fuente de alimentacin Juego de cables Clavija adaptadora 151 503 030 332 035 651

Festo Didactic TP301

14

Equipo TP301, Placa de montaje perforada, N de artculo 080 260

Descripcin

N de artculo
011 088 030 311 150 758 150 757 150 759 030 331 030 315 030 317 013 415 011 711 011 758 011 713 006 204 006 831

Cantidad

Entrada de seales elctricas Distribuidor e indicador elctrico Sensor de proximidad, ptico Sensor de proximidad, inductivo Sensor de proximidad, capacitivo Sensor de proximidad con brida para cilindro Electrovlvula de 5/2 vas de una bobina Electrovlvula de 5/2 vas de dos bobinas Cilindro de doble efecto Cilindro de simple efecto Vlvula de paro/marcha con filtro y regulador Distribuidor Tubo de plstico Distribuidor de enchufe rpido

1 1 1 1 1 4 2 1 2 1 1 1

opcional, no includo en la dotacin original del equipo Fuente de alimentacin Juego de cables 151 503 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)

2(B)

5(R)

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: Ejercicio 4: Ejercicio 5: Ejercicio 6: Circuito de una lmpara La funcin de asignacin . . . . . . . . . . . . . . . . . . . . . A-15 Alarma antirrobo La funcin NOT . . . . . . . . . . . . . . . . . . . . . . . . . . . . A-25 Prensa con barrera protectora La funcin AND. . . . . . . . . . . . . . . . . . . . . . . . . . . . . A-35 Sistema de timbre La funcin OR . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A-45

Sistemas lgicos sin funciones memorizantes Ejercicio 7: Ejercicio 8: Dispositivo estampador Combinacin de AND/OR/NOT . . . . . . . . . . . . . . . . A-55 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: Ejercicio 11:

Supervisin de la rotura de una broca Activacin y desactivacin de una salida . . . . . . . A-81 Activacin de un cilindro Flancos de las seales . . . . . . . . . . . . . . . . . . . . . A-89

Sistemas lgicos con funciones temporales Ejercicio 12: Ejercicio 13: Ejercicio 14: Encolado de componentes Pulso . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A-101 Dispositivo de marcado Seal con retardo a la conexin . . . . . . . . . . . . . A-111 Dispositivo de fijacin Seal con retardo a la desconexin . . . . . . . . . . A-121

Sistemas de control secuencial Ejercicio 15: Ejercicio 16: Ejercicio 17: Dispositivo elevador para paquetes Secuencia lineal . . . . . . . . . . . . . . . . . . . . . . . . . A-131 Dispositivo elevador y clasificador para paquetes Derivacin alternativa. . . . . . . . . . . . . . . . . . . . . . A-147 Dispositivo de estampacin con contador Ciclos de recuento . . . . . . . . . . . . . . . . . . . . . . . . A-159

TP301 Festo Didactic

A-3
Ejercicio 1

Controles lgicos programables Diseo y funcionamiento de un control lgico programable Componentes de un PLC 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 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.

Tema Ttulo

Objetivo didctico

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

UPP Unidad Principal de Proceso

Mdulo de salida

Fig. A1.2: Componentes de un sistema PLC

Sensores

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

Festo Didactic TP301

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 Del problema a la solucin teniendo en cuenta IEC 1131-3 Pasos prcticos para la programacin de un PLC 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. Creacin de un programa de PLC Los pasos prcticos para la creacin de un programa de PLC se muestran en la fig. A2.1

Tema Ttulo Objetivo didctico

Conocimientos tcnicos

Descripcin de la tarea de control Descripcin verbal Croquis de situacin Programa del PLC 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) Instalacin/proceso

B5

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

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

Festo Didactic TP301

A-10
Ejercicio 2

B 6.1

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
S1 Y5

Direcciones de Entrada/salida en el PLC


I1.5 Q2.7

Comentario
Pulsador de MARCHA Avance del cilindro C

Tabla A2.1: Ejemplo de lista de asignaciones

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.

B 6.1 - 6.3

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

CONFIGURATION ejemplo RESOURCE Instalacin TASK T_cclica PROGRAM Timbre

Pulsador_FD Pulsador_AD END_PROGRAM

>=1

Timbre

a) Ejemplo de un programa de PLC

b) Ejemplo de la instalacin de un programa en un PLC o en un sistema PLC

Fig. A2.2: Realizacin de la solucin

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

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

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.

Definicin del ejercicio

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"?

Pregunta

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

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 Circuito de una lmpara La funcin de asignacin 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 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. 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.

Tema Ttulo Objetivo didctico

Conocimientos tcnicos

B3

%IX1
0 1

%QX2
0 1

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

Festo Didactic TP301

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.
LD %IX1 %QX2 Rengln con un contacto abierto y bobina no-memorizante.

B8

B7

FBD

%IX1

%QX2

Conexin directa de la entrada y la salida especificadas

B9

IL Leer el valor de la entrada especificada y cargarlo al acumulador Carga el contenido del acumulador a la salida especificada

LD

%IX1

ST ST

%QX2

B 10

%QX2 := %IX1;
Tabla A3.2: La funcin de asignacin

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.

Definicin del ejercicio

Festo Didactic TP301

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 1 1 1 1 Descripcin Control lgico programable Cable de unin con la unidad de conexin Unidad de conexin Entrada de seales elctricas Dispositivo indicador

Lista de componentes

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 0V Q

PLC

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

H1

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?

Pregunta

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

Festo Didactic TP301

A-24
Ejercicio 3

TP301 Festo Didactic

A-25
Ejercicio 4

Controles lgicos programables Alarma antirrobo La funcin NOT Poder realizar la funcin not con un PLC La funcin NOT La funcin NOT se utiliza para convertir seales binarias a su valor opuesto: 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.

Tema Ttulo Objetivo didctico Conocimientos tcnicos

B3

%IX1
0 1

%QX2
1 0

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

Festo Didactic TP301

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

NOT

%QX2

Usar la funcin NOT en la entrada especificada

B9

IL Cargar el valor inverso de la entrada en el acumulador. Cargar el contenido del acumulador a la salida especificada.

LDN

%IX1

ST ST

%QX2

B 10

%QX2 := NOT %IX1;


Tabla A4.2: La funcin NOT

Asignar el valor inverso de la entrada especificadaa la salida indicada a la izquierda de ":=".

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

Definicin del ejercicio

Festo Didactic TP301

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

Descripcin
Control lgico programable Cable de unin con la unidad de conexin Unidad de conexin Entrada de seales elctricas Dispositivo indicador

Lista de componentes

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 0V Q

PLC

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 0 1 H1

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?

Pregunta

Festo Didactic TP301

A-34
Ejercicio 4

TP301 Festo Didactic

A-35
Ejercicio 5

Controles lgicos programables Prensa con barrera protectora La funcin AND 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 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. 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.

Tema Ttulo Objetivo didctico

Conocimientos tcnicos

B3

%IX1
0 0 1 1

%IX2
0 1 0 1

%QX3
0 0 0 1

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

Festo Didactic TP301

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 Las entradas y salidas de la funcin AND se conectan con los parmetros especificados

o bien %IX1 %IX2 IL AND %QX3

B9

LD AND ST

%IX1 %IX2 %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

B 10

ST %QX3 := %IX1 & %IX2; o bien %QX3 := AND(%IX1, %IX2); 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.

Tabla A5.2: La funcin AND

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

Descripcin del problema

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.

Definicin del ejercicio

Festo Didactic TP301

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 1 1 1 1 1 1 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 1 1 Entrada de seales elctricas Interruptor de proximidad inductivo Tubo de plstico

Lista de componentes

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 Y1

4(A)

2(B)

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 0V Q

PLC

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 Sistema de timbre La funcin OR Realizacin de la funcin lgica OR con un PLC. 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. 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.

Tema Ttulo Objetivo didctico Conocimientos tcnicos

B3

%IX1
0 0 1 1

%IX2
0 1 0 1

%QX3
0 1 1 1

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

Festo Didactic TP301

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 Las entradas y la salida de la funcin OR estn conectadas con los parmetros especificados.

o bien %IX1 %IX2 IL OR %QX3

B9

LD OR ST

%IX1 %IX2 %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.

B 10

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

Definicin del ejercicio

Festo Didactic TP301

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 1 1 1 1 Descripcin Control lgico programable Cable de unin con la unidad de conexin Unidad de conexin Entrada de seales elctricas Dispositivo indicador

Lista de componentes

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 0V Q

PLC

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

Pregunta

S1
0 0 1 1

S2
0 1 0 1

H1

Tabla de funciones

Festo Didactic TP301

A-54
Ejercicio 6

TP301 Festo Didactic

A-55
Ejercicio 7

Controles lgicos programables Dispositivo estampador Combinaciones de AND/OR/NOT 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 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: 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: 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:

Tema Ttulo Objetivo didctico

Conocimientos tcnicos

B3

S1
0 0 0 0 1 1 1 1

S2
0 0 1 1 0 0 1 1

S3
0 1 0 1 0 1 0 1

H1
0 0 0 0 0 1 1 0

Tabla A7.1: Tabla de funciones

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

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 H1

S1

S2 /

S3

S1

S2

S3 /

B7

FBD

S1 S2 S3 S1 S2 S3
B9

& >=1 & H1

IL

LD ANDN AND OR( AND ANDN ) ST


B 10

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 Completar el esquema elctrico en la HOJA DE TRABAJO.

Realizacin

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

Lista de componentes

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

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 Q

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:
B1
0 0 0 0 1 1 1

B2
0 0 1 1 0 0 1 1

B3
0 1 0 1 0 1 0 1

Y1

Tabla de funciones

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 Control de un silo para dos materiales a granel Sistema de control lgico con derivacin Ser capaz de resolver un sistema de control lgico con derivacin An en los casos de tareas de control simples, se utilizan ms de un elemento final de control. 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.

Tema Ttulo Objetivo didctico Conocimientos tcnicos

B 12

Festo Didactic TP301

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 Completar el esquema elctrico del circuito en la HOJA DE TRABAJO.

Realizacin

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 1 1 1 1 1 2 2 1 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

Lista de componentes

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

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 Q

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 2.0

1.1 Y1

4(A)

2(B)

2.1 Y2

4(A)

2(B)

5(R)

3(S)
1(P)

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:
S1
0 0 1

S2
0 1 0 1

Y1

Y2

Tabla de funciones

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 Alarma de incendio Activacin de una salida 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 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. Bloque de funcin SR, flip-flop de activacin prioritaria El bloque de funcin SR (fig. A9.1) contiene un flip-flop de activacin prioritaria,

Tema Ttulo Objetivo didctico

Conocimientos tcnicos

B 12

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


SR S1 Q1 R

BOOL BOOL

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 S2 SR S1 Q1 R H2

SR flip-flop SR_H2 para memorizacin del estado de la variable H2. Asignacin directa del valor de Q1 a la variable H2.

B8

LD S2 H2 S Rengln con contacto normalmente abierto y bobina de activacin.

B9

IL LD S o bien CAL LD ST SR_H2 (S1 := S2) SR_H2.Q1 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. S2 H2 Lectura del valor de S2 Activacin de la variable H2

B 10

ST SR_H2 (S1 := S2); Invocacin del flip-flop SR_H2 usando un parmetro de transferencia. Asignacin del valor de la salida Q1 de SR_H2 a la variable H2.

Tabla A9.1: La funcin de memorizacin Activar

H2 := SR_H2.Q1;

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

Definicin del ejercicio

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 1 1 1 1 1 Descripcin Control lgico programable Cable de unin con la unidad de conexin Unidad de conexin Entrada de seales elctricas Dispositivo indicador

Realizacin

Lista de componentes

Festo Didactic TP301

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 0V Q

PLC

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
Nombre Parmetros de entrada Parmetros de salida Parte componente de la declaracin de variables Informacin de estado

Funcin
s uno uno s s no varios varios no no

Bloque de funcin
s uno uno s s no varios varios no no

Responder a la siguiente pregunta:

Pregunta

1. Qu informacin se memoriza en un bloque SR?

Festo Didactic TP301

A-80
Ejercicio 9

TP301 Festo Didactic

A-81
Ejercicio 10

Controles lgicos programables Supervisin de la rotura de una broca Activacin y desactivacin de una salida Ser capaz de activar y desactivar una salida memorizante de un PLC Bloque de funcin RS, flip-flop con desactivacin prioritaria El bloque de funcin RS contiene un flip-flop con desactivacin prioritaria

Tema Ttulo Objetivo didctico 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.

B 12

Festo Didactic TP301

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 LD S2 H2 R Rengln con contacto normalmente abierto y desactivacin de bobina. S R1 Q1 H2

RS flip-flop RS_H2 para almacenamiento del estado de la variable H2. Asignacin directa del valor de Q1 a la variable H2.

B8

Tabla A10.1: La funcin de memorizacin Desactivar

TP301 Festo Didactic

A-83
Ejercicio 10

AWL LD R oder CAL LD ST RS_H2 (R1 := S2) RS_H2.Q1 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. S2 H2 Lectura del valor de S2 Desactivacin de la variable H2

B9

ST RS_H2 (R1 := S2); H2 := RS_H2.Q1; Invocacin del Flip-flop RS_H2 con transferencia de parmetro. Asignacin del valor de salida Q1 de RS_H2 a la variable H2.

B 10

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

Festo Didactic TP301

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 S1

H1

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 Completar el esquema elctrico del circuito en la HOJA DE TRABAJO. Montar el equipo necesario en la placa perfilada:
Cantidad 1 1 1 1 1 1 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

Realizacin

Lista de componentes

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

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 0V Q

PLC

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 Activacin de un cilindro Flancos de las seales Ser capaz de describir la funcin de los flancos de una seal 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.

Tema Ttulo Objetivo didctico

Conocimientos tcnicos

flanco ascendente 1 0

flanco ascendente

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.
F_TRIG CLK Q

BOOL
Fig. A11.3: Bloque de funcin F_TRIG

BOOL

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 END_VAR

: : : :

BOOL; BOOL; R_TRIG RS;

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

FBD
B7

S1

R_TRIG_S1 H1 R_TRIG CLK Q H1

RS_H1 & RS S Q1 R1 H1

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

Tabla A11.1: Evaluacin de un flanco ascendente

TP301 Festo Didactic

A-91
Ejercicio 11

LD

B8

S1 P S1 P

H1 / H1

H1 S H1 R

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 CAL LD S LD AND R ST R_TRIG_S1 (CLK := S1); Invocacin del bloque de funcin R_TRIG_S1. Invocacin del flip-flop RS_H1. R_TRIG_S1 (CLK := S1) R_TRIG_S1.Q H1 R_TRIG_S1.Q H1 H1 o se apaga. Invocacin del bloque de funcin R_TRIG_S1. Segn el resultado de la evaluacin del flanco, el piloto se enciende...

B9

ANDN H1

B 10

RS_H1 ( S := R_TRIG_S1.Q & NOT H1, R1 := R_TRIG_S1.Q & H1); H1 := RS_H1.Q1;

El estado del flip-flop RS_H1 se copia a H1.

Tabla A11.1: (Continuacin)

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.

Comentario

Festo Didactic TP301

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 S_old RS_S_old END_VAR &

AT %IX1 : BOOL; AT %MX1 : BOOL; AT %MX2 : BOOL := 0; : 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

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

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 S_old SR_S_old END_VAR &

AT %IX1 : BOOL; AT %MX1 : BOOL; AT %MX2 : BOOL := 0; : 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

Signal S_old

S_Edge

SR_S_old Signal S_Edge RS S1 Q1 R S_old


Fig. A11.5: Deteccin de un flanco descendente

Festo Didactic TP301

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 Completar el esquema elctrico del circuito en la HOJA DE TRABAJO. Montar el equipo necesario en la placa perfilada:

Realizacin

Cantidad
1 1 1 1 1 1 1 1 1 1 1

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

Lista de componentes

Antes de cablear y conectar tubos: Desconectar la alimentacin! Desconectar la alimentacin del aire!

Establecer las conexiones elctricas y neumticas.

Festo Didactic TP301

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 Q

PLC

0V

Esquema del circuito elctrico

Festo Didactic TP301

A-98
Ejercicio 11

HOJA DE TRABAJO
Configurar el sistema de control
1.0 B1 B2

1.1 Y1

4(A)

2(B)

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 Encolado de componentes Pulso Ser capaz de utilizar el bloque de funcin estndar TP para generar un pulso de tiempo. 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. 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

Tema Ttulo Objetivo didctico Conocimientos tcnicos

B 13

BOOL TIME

TP IN Q PT ET

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; END_VAR
B7

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

FBD TP_Y1 TP S1 T#12s IN PT Q ET Y1 Bloque temporizador TP_Y1, conectado con los parmetros indicados.

B8

LD TP_Y1 TP IN Q ET PT

S1 T#12s

Y1 Interconexin del bloque temporizador TP_Y1 en el rengln.

Tabla A12.1: Utilizacin de un temporizador de pulso

TP301 Festo Didactic

A-103
Ejercicio 12

IL CAL TP_Y1 (IN := S1, PT := T#12s) LD ST TP_Y1.Q Y1 Invocacin del bloque de funcin TP_Y1. Lectura de la salida Q de TP_Y1. Almacenamiento del resultado actual en Y1.

B9

ST TP_Y1 (IN := S1, PT := T#12s); Y1 := TP_Y1.Q; Invocacin del bloque de funcin TP_Y1. Asignacin de la salida Q de TP_Y1 a Y1.

B 10

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

Festo Didactic TP301

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 Completar el esquema elctrico del circuito en la HOJA DE TRABAJO. Montar el equipo necesario en la placa perfilada:

Realizacin

Quantity
1 1 1 1 1 1 1 1 1 1

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

Lista de componentes

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

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 Q

PLC

0V

Esquema del circuito elctrico

Festo Didactic TP301

A-108
Ejercicio 12

HOJA DE TRABAJO
Configurar el sistema de control
B1 1.0

1.1 Y1

4(A)

2(B)

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 1 0 t0
5s

t1 t2

t3

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

t0 + PT

TP301 Festo Didactic

A-111
Ejercicio 13

Controles lgicos programables Dispositivo de marcado Seal con retardo a la conexin Ser capaz de realizar un retardo a la conexin de una seal utilizando el bloque de funcin estndar TON Bloque de funcin TON, Retardo a la conexin El bloque de funcin estndar TON se utiliza para generar un retardo a la conexin.

Tema Ttulo Objetivo didctico 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.

B 13

Festo Didactic TP301

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 END_VAR FBD TON_Y1 B1 T#5s LD TON_Y1 TON Q IN PT ET TON Q IN PT ET Y1 Conexin de entradas y salidas del bloque de funcin TON_Y1 con los parmetros actuales. : TON; (* Barrera fotoelctrica (* Bobina Y1 del cilindro de (* cerrar la puerta (* Seal temporizada a la conexin (* TON_Y1 para cerrar la puerta *) *) *) *) *)

B7

B8

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

Y1 Interconexin del bloque de funcin TON_Y1 en el rengln.

T#5s

TP301 Festo Didactic

A-113
Ejercicio 13

IL CAL TON_Y1 (IN := B1, PT := T#5s) LD ST TON_Y1.Q Y1 Invocacin del bloque de funcin TON_Y1. Lectura de la salida Q de TON_Y1. Almacenamiento del resultado actual en Y1.

B9

ST TON_Y1 (IN := B1, PT := T#5s); Y1 := TON_Y1.Q; Invocacin del bloque de funcin TON_Y1. Asignacin de la salida Q de TON_Y1 a Y1.

B 10

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

Festo Didactic TP301

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 Completar el esquema elctrico del circuito en la HOJA DE TRABAJO. Montar el equipo necesario en la placa perfilada:
Cantidad
1 1 1 1 1 1 1 1 1 1 1

Realizacin

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

Lista de componentes

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

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 Q

PLC

0V

Esquema del circuito elctrico

Festo Didactic TP301

A-118
Ejercicio 13

Configurar el sistema de control.


1.0 B1 B2

1.1 Y1

4(A)

2(B)

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 Dispositivo de fijacin Seal con retardo a la desconexin Ser capaz de realizar una temporizacin a la desconexin utilizando el bloque de funcin estndar TOF 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.

Tema Ttulo Objetivo didctico 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.
B 13

Festo Didactic TP301

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 Y1 TOF_Door END_VAR
B7

%MX1: BOOL; %QX1: BOOL; : TOF;

AT

(* 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 *)

FBD TOF__Door Door_closed T#10m LD TOF_Door TOF IN Q PT ET TOF IN Q PT ET Y1

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

B8

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

Y1

T#10m

Interconexin del bloque de funcin TOF_Door en el rengln.

TP301 Festo Didactic

A-123
Ejercicio 14

IL 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

B9

ST TOF_Door (IN := Door_closed, PT := T#10m); Y1 := TOF_Door.Q; Invocacin del bloque de funcin TOF_Door. Asignacin de la salida Q de TOF_Door a Y1.

B 10

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

Festo Didactic TP301

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 Completar el esquema elctrico del circuito en la HOJA DE TRABAJO Montar el equipo necesario en la placa perfilada:

Realizacin

Cantidad
1 1 1 1 1 1 1 1 1 1 1 4 1

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

Tabla A14.1: Lista de componentes

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

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 Q

PLC

0V

Esquema del circuito elctrico

Festo Didactic TP301

A-128
Ejercicio 14

HOJA DE TRABAJO
Configurar el sistema de control
B1 1.0 B2 B3

2.0

B4

1.1 Y1

4(A)

2(B)

2.1 Y2

4(A)

2(B)

Y3
5(R) 3(S) 1(P)

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-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 Dispositivo elevador para paquetes Secuencia lineal 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 Sistemas de control secuenciales Los sistemas de control secuencial describen procesos que suceden en varias etapas claramente separadas. 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. Por lo tanto, el programa de un sistema de control secuencial debe cumplir con tres funciones bsicas:

Tema Ttulo Objetivo didctico

Conocimientos tcnicos

B 15

Acciones ejecutivas: Etapa

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

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

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 S Cilindro 2.0 avanza 1

3.1: Cilindro 2.0 avanzado 4 S Cilindro 2..0 retrocede 1

4.1: Cilindro 2.0 ha retrocedido 5 S Cilindro 1.0 retrocede 1

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 & S3 B6 S4 B5 S5 B3
Fig. A15.3: Ejemplo de un diagrama de funciones secuencial

Y1

B4

Y2

B6

Y2

B5

Y1

B3

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

&

S R

Etapa n

Fig. A15.4: Representacin de una etapa

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

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 END_VAR (* Programacin de la secuencia de etapas *) B3 B5 RS_S2.Q1 & RS_S1 RS Q1 S R1 (* Activacin del *) (* flip-flop para *) *) (* Etapa S1 %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 *) *) *) *) *) *) *) *) *) *) *) *) *) *) *)

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

& RS_S2 RS Q1 S R1 (* Activacin del *) (* flip-flop para *) (* Etapa S2 *)

RS_S3.Q1

TP301 Festo Didactic

A-137
Ejercicio 15

RS_S2.Q1 B4 B2 RS_S4.Q1

&

RS_S3 RS Q1 S R1 RS_S4 RS Q1 S R1 RS_S5 RS Q1 S R1 (* Activacin del *) (* flip-flop para *) *) (* Etapa S5 (* Activacin del *) (* flip-flop para *) *) (* Etapa S4 (* Activacin del *) (* flip-flop para *) *) (* Etapa S3

RS_S3.Q1 B6 RS_S5.Q1

&

RS_S4.Q1 B5 RS_S1.Q1

&

(* Programacin de la seccin de potencia *) RS_Y1 RS_S2.Q1 RS_S5.Q1 RS Q1 S R1 RS_Y2 RS_S3.Q1 RS_S4.Q1 RS Q1 S R1 Y2 (* Bobina Y2 para *) (* Cilindro 2.0 *) Y1 (* Bobina Y1 para (* Cilindro 1.0 *) *)

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

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

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

Definicin del ejercicio

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
1 1 1 1 1 2 2 1 4

Realizacin

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

Lista de componentes

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

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 Q

PLC

0V

Esquema del circuito elctrico

Festo Didactic TP301

A-144
Ejercicio 15

HOJA DE TRABAJO
Configurar el sistema de control
B2

1.0

B3

B4

2.0

B5

1.1 Y1

4(A)

2(B)

2.1 Y2

4(A)

2(B)

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.

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 Dispositivo elevador y clasificador para paquetes Secuencia con desvo alternativo Ser capaz de programar un sistema de control secuencial con una derivacin alternativa 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.

Tema Ttulo Objetivo didctico Conocimientos tcnicos


B 15

Verificar posicion inicial

Pieza pequea 2 S Fijar pieza 1 4

Pieza grande S Fijar pieza 1

2.1: Pieza fijada 3 N Estampar pieza 1 5

4.1: Pieza fijada N Estampar pieza 1

3.1: Pieza estampada

5.1: Pieza estampada

Liberar pieza

6.1: Pieza liberada 7 N Expulsar pieza 1


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

7.1: Pieza expulsada

Festo Didactic TP301

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 B4 S3 B6 N Y2 B6 S5 S Y1 B4 S4

B1 & B2 & B3 & B5 & B7 & B9 S B4 N B8 Y3 B8 Y1 B4

S6 B3 S7 B10

Y1

B3

Y4

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

Festo Didactic TP301

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

Descripcin del problema

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
1 1 1 1 1 1 1 2 2 1 1 1 1 4

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

Lista de componentes

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 Q

PLC

0V

Esquema del circuito elctrico

Festo Didactic TP301

A-156
Ejercicio 16

HOJA DE TRABAJO
Configurar el sistema de control
B1 1.0 B2 B3 2.0 B4 3.0 B5 B6

1.1 Y1

4(A)

2(B)

2.1 Y2 Y3

4(A)

2(B)

3.1 Y4

4(A)

2(B)

5(R)

3(S)
1(P)

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 Dispositivo de estampacin con contador Ciclos de conteo Poder realizar ciclos de conteo por medio de la utilizacin de los mdulos de funcin estndar CTU o CTD 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. 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.

Tema Ttulo Objetivo didctico Conocimientos tcnicos

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


Fig. A17.2: Bloque de funcin CTD

CTD CD Q LD PV CV

BOOL INT

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 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. : CTU;

Ejemplo

(* 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

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

LD CTU_1 B1 M_init R 12 PV CV CTU CU Q

M_new

Interconexin del bloque de funcin CTU_1 en el rengln.


Tabla A17.1: Aplicacin de un contador incremental

Festo Didactic TP301

A-162
Ejercicio 17

IL CAL CTU_1 (CU := B1, R := M_init, PV := 12) Invocacin del bloque de funcin CTU_1 LD ST CTU_1.Q M_new Lectura de la salida Q de CTU_1 Almacenamiento del resultado actual en M_new

ST CTU_1 (CU := B1, R := M_init, PV := 12); Invocacin del bloque de funcin CTU_1

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

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

Descripcin del problema

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
1 1 1 1 1 1 1 2 2 1 1 1 1 1 4

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

Lista de componentes

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 Q

PLC

0V

Esquema del circuito elctrico

Festo Didactic TP301

A-168
Ejercicio 17

HOJA DE TRABAJO
Configurar el sistema de control.
B1 B2 B3 B4 B5 B6

1.0

2.0

3.0

1.1 Y1

4(A)

2(B)

2.1 Y2 Y3

4(A)

2(B)

3.1 Y4

4(A)

2(B)

5(R)

3(S) 1(P)

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.

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?

Preguntas

Festo Didactic TP301

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 1.2 1.3 1.4 Introduccin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . B-2 Campos de aplicacin de un PLC . . . . . . . . . . . . . . . . . . . . . B-2 Diseo bsico de un PLC . . . . . . . . . . . . . . . . . . . . . . . . . . . B-5 El nuevo estndar para PLC IEC 1131 . . . . . . . . . . . . . . . . . B-8

Captulo 2 Fundamentos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . B-11 2.1 2.2 2.3 2.4 2.5 2.6 2.7 El sistema de numeracin decimal . . . . . . . . . . . . . . . . . . . B-12 El sistema de numeracin binario . . . . . . . . . . . . . . . . . . . . B-12 El cdigo BCD . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . B-14 El sistema de numeracin hexadecimal . . . . . . . . . . . . . . . B-14 Nmeros binarios con signo . . . . . . . . . . . . . . . . . . . . . . . . B-15 Nmeros reales . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . B-15 Generacin de seales binarias y digitales . . . . . . . . . . . . . B-16

Captulo 3 Operaciones Booleanas . . . . . . . . . . . . . . . . . . . . . . B-19 3.1 3.2 3.3 3.4 3.5 Funciones lgicas bsicas . . . . . . . . . . . . . . . . . . . . . . . . . . B-20 Otras operaciones lgicas . . . . . . . . . . . . . . . . . . . . . . . . . . B-24 Establecimiento de funciones de conmutacin . . . . . . . . . . B-26 Simplificacin de funciones lgicas . . . . . . . . . . . . . . . . . . . B-28 Diagrama de Karnaugh-Veitch. . . . . . . . . . . . . . . . . . . . . . . B-30

Captulo 4 Diseo y modo de funcionamiento de un PLC . . . B-33 4.1 4.2 4.3 4.4 4.5 4.6 4.7 Estructura de un PLC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . B-34 Unidad de procesamiento principal de un PLC . . . . . . . . . . B-36 Modo de funcionamiento de un PLC . . . . . . . . . . . . . . . . . . B-38 Memoria del programa de la aplicacin . . . . . . . . . . . . . . . B-40 Mdulo de Entradas. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . B-42 Mdulo de Salidas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . B-44 Aparato programador / Ordenador personal . . . . . . . . . . . . B-46

TP301 Festo Didactic

B-III

Captulo 5 Programacin de un PLC . . . . . . . . . . . . . . . . . . . . 5.1 5.2 5.3

B-49

Bsqueda de una solucin sistemtica . . . . . . . . . . . . . . . . B-50 Recursos de estructuracin de IEC 1131-3 . . . . . . . . . . . . B-53 Lenguajes de programacin. . . . . . . . . . . . . . . . . . . . . . . . . B-56

Captulo 6 Elementos comunes de los lenguajes . . . . . . . . . . 6.1 6.2 6.3

B-61

Recursos de un PLC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . B-62 Tipos de datos y variables . . . . . . . . . . . . . . . . . . . . . . . . . . B-66 Unidades de organizacin de programas . . . . . . . . . . . . . . B-76

Captulo 7 Diagrama de bloques de funcin . . . . . . . . . . . . . . 7.1 7.2 7.3

B-91

Elementos del diagrama de bloques de funcin . . . . . . . . . B-92 Evaluacin de redes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . B-93 Estructuras de bucle. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . B-94

Captulo 8 Diagrama de contactos . . . . . . . . . . . . . . . . . . . . . . 8.1 8.2 8.3

B-95

Elementos del diagrama de contactos . . . . . . . . . . . . . . . . . B-96 Funciones y bloques de funcin. . . . . . . . . . . . . . . . . . . . . . B-98 Evaluacin de los renglones . . . . . . . . . . . . . . . . . . . . . . . . B-99

Captulo 9 Lista de instrucciones . . . . . . . . . . . . . . . . . . . . . . B-101 9.1 9.2 9.3 Instrucciones. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . B-102 Operadores. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . B-103 Funciones y bloques de funcin. . . . . . . . . . . . . . . . . . . . . B-104

Captulo 10 Texto estructurado. . . . . . . . . . . . . . . . . . . . . . . . 10.1 10.2 10.3 10.4

B-107

Expresiones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . B-108 Instrucciones. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . B-110 Instrucciones de seleccin . . . . . . . . . . . . . . . . . . . . . . . . . B-112 Instrucciones de iteracin. . . . . . . . . . . . . . . . . . . . . . . . . . B-115

Festo Didactic TP301

B-IV

Captulo 11 Diagrama de funciones secuencial . . . . . . . . . . B-119 11.1 11.2 11.3 11.4 11.5 Introduccin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . B-120 Elementos del diagrama de funciones secuencial . . . . . . B-120 Transiciones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . B-130 Pasos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . B-133 Ejemplo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . B-143

Captulo 12 Sistemas de control lgico. . . . . . . . . . . . . . . . . . B-147 12.1 12.2 12.3 12.4 Qu es un sistema de control lgico . . . . . . . . . . . . . . . . . B-148 Sistema de control lgico sin propiedades memorizantes B-148

Sistema de control lgico con propiedades memorizantes B-154 Evaluacin de flancos . . . . . . . . . . . . . . . . . . . . . . . . . . . . B-157

Captulo 13 Temporizadores . . . . . . . . . . . . . . . . . . . . . . . . . . B-161 13.1 13.2 13.3 13.4 Introduccin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . B-162 Temporizador de pulsos. . . . . . . . . . . . . . . . . . . . . . . . . . . B-163 Seal con retado a la conexin . . . . . . . . . . . . . . . . . . . . . B-165 Seal con retado a la desconexin . . . . . . . . . . . . . . . . . . B-167

Captulo 14 Contadores . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . B-171 14.1 14.2 14.3 14.4 Funciones de contador . . . . . . . . . . . . . . . . . . . . . . . . . . . B-172 Contador incremental . . . . . . . . . . . . . . . . . . . . . . . . . . . . . B-172 Contador decremental . . . . . . . . . . . . . . . . . . . . . . . . . . . . B-176 Contador incremental/decremental . . . . . . . . . . . . . . . . . . B-178

Captulo 15 Sistemas de control secuencial. . . . . . . . . . . . . . B-179 15.1 15.2 15.3 Qu es un sistema de control secuencial . . . . . . . . . . . . . B-180 Diagrama de funciones segn IEC 848 . . . . . . . . . . . . . . B-180 Diagrama desplazamiento-fase . . . . . . . . . . . . . . . . . . . . . B-186

TP301 Festo Didactic

B-V

Captulo 16 Puesta a punto y seguridad en el manejo de un PLC. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16.1 16.2

B-187

Puesta a punto . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . B-188 Seguridad en el manejo de un PLC. . . . . . . . . . . . . . . . . . B-190

Captulo 17 Comunicaciones. . . . . . . . . . . . . . . . . . . . . . . . . . 17.1 17.2 17.3 17.4

B-195

La necesidad de comunicacin . . . . . . . . . . . . . . . . . . . . . B-196 Transmisin de datos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . B-196 Interfaces . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . B-197 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."

1.3

Definicin bsica de un PLC

Festo Didactic TP301

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

Unidad Central

Mdulo de salida

Fig. B1.3: Componentes de un sistema PLC

Sensores

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 7 106 1 105 7 104 1 103 8 102 7 101 1 100 1

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 1 26=64 0 25=32 1 24=16 1 23=8 0 22=4 0 21=2 0 20=1 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 = 128 = 177

0 x 26

1 x 25 + 32

1 x 24 + 16

0 x 23

0 x 22

0 x 21

1 x 20 +1

Ejemplo

Festo Didactic TP301

B-14
Captulo 2

2.3

El cdigo BCD

Para las personas acostumbradas a tratar con el sistema decimal, los nmeros binarios son difciles de leer. Por esta razn, se introdujo una representacin numrica de ms fcil lectura, es decir, una notacin decimal codificada de un nmero binario: el denominado BCD (binary coded decimal). Con este cdigo BCD, cada dgito del sistema de numeracin decimal representa a su correspondiente nmero binario.
010 110 210 310 410 510 610 710 0000BCD 0001BCD 0010BCD 0011BCD 0100BCD 0101BCD 0110BCD 0111BCD 1000BCD 1001BCD

Tabla B2.1: Representacin de nmeros decimales en cdigo BCD

810 910

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 8

162=256 7

161=16 B

160=1 C

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 "". 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
sin signo con signo

2.5

Nmeros binarios con signo

Margen de valores
0 a 65535 -32768 a +32767

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

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.

2.6

Nmeros reales

Festo Didactic TP301

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

0 t

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 3 2 1 0 t
Fig. B2.3: Conversin de una seal analgica en una seal digital
Seal digital en base de 3 V Seal digital en base de 1 V Seal analgica Seal digital en base de 0,5 V

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

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.

Bit No.
Ejemplo 1 Ejemplo 2

7
1 0 0

6
0 0 0

5
1 1 0

4
1 1 0

3
1 0 0

2
0 0 0

1
1 1 0

0
1 1 0

Valor digital
187 51 0

Ejemplo

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:

I
0 1

O
1 0

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

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

I2
0 1 0 1

O
0 0 0 1

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 I2
Fig. B3.5: Funcin AND

& O

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

I2
0 1 0 1

O
0 1 1 1

Tabla de la verdad

I1 I2

>=1 O
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

I I O R +

O
O

Negacin

I=O

I O 0 1 1 0

I I 1 O

R O

I O -

Conjuncin

I1

I2 = O

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

I1 I2

I1 I2

R I1 O I2 O

&

O
I1 I2

>

I1
O

Disyuncin

I1

I2 = O

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

I1

I2

I2

I1 I2

>=1

O
I1 I2 O R

>

TP301 Festo Didactic

B-25
Captulo 3

Tabla B3.1: Conexiones lgicas (continuacin)


Nombre Ecuacin Tabla verd. Smbolo lgico Realizacin neumtica
O

Realiz. elctrica

Realiz. electrnica

Antivalencia ( OR exclusiva)

I1 I1

I2 = O I2 = O

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

I1

I1

> >

I1 I2

I1

I2

I2

I2 O

I1

I2

Equivalencia I1 I1

I2 I2 = O
>

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

NAND

I1

I2 = O

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

I1

K1

R
I1

R O

I1 I2

&

O
I1 I2

I2

>

I2 K1 O

I1

I2

K1
I1

NOR

I1 I2 = O
>

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

I1 I2

>=1

O
I1 I2

I2 K1 O
R

Festo Didactic TP301

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

B4 B3 B2

B1

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

d a c d

b a b

d a d b

d c d
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:

a
0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1

b
0 0 0 0 1 1 1 1 0 0 0 0 1 1 1 1

c
0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1

d
0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1

y
0 1 0 0 0 1 0 0 0 1 0 1 0 1 0 1

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 a a a a 0 1 a a = = = = 0 a a 0

Propiedad conmutativa ab=ba

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

b
0 0 0 0 1 1 1 1 0 0 0 0 1 1 1 1

c
0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1

d
0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1

y
0 1 0 0 0 1 0 0 0 1 0 1 0 1 0 1

No.
1 2 3 4 5 6 7 8 9 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.
cd ab ab ab 1 5 9 13 cd 2 6 10 14 cd 3 7 11 15 cd 4 8 12 16

Fig. B3.1: Tabla de valores

ab

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 ab ab ab ab 0 0 0 0 cd 1 1 1 1 cd 0 0 0 0 cd 0 0 1 1

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 ab ab ab ab 0 0 0 0 cd 1 1 1 1 cd 0 0 0 0 cd 0 0 1 1

y1

y2

Fig. B3.12: Tabla de valores

Festo Didactic TP301

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) Bus de direcciones

ROM Sistema operativo

RAM Programas y Datos

Mdulos de entradas

Mdulos de salidas

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

Bus de control

Registro de instrucciones

Bus de control

Acumulador

Contador de programa

Unidad aritmtica

Unidad de control Bus de direcciones

Fig. B4.3: Diseo de un microprocesador

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 Instruccin Registro de instrucciones Seales de control Contador de programa +1 Direcciones Bus de direcciones Instruccin Memoria

Fig. B4.4: Secuencia de instrucciones

Festo Didactic TP301

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.
- Descripcin verbal de la tarea de control - Tecnologa, croquis de situacin - Macroestructura de los programas de control

1.

Especificacin

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

- Programacin en LD, FBD, IL, ST y/o SFC - Simulacin de subprogramas y del conjunto de programas

4.

Puesta a punto

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

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

5.2

Recursos de estructuracin IEC 1131-3

RECURSO DE CONFIGURACIN TAREA VAR_GLOBAL RUTA_ACCESO

Configuracin de un sistema de automatizacin

Estructuracin del nivel de configuracin

Diagrama de funciones secuencial

Representacin de la secuencia Refinamiento Modularizacin

PROGRAMA BLOQUE-FUNCIN FUNCIN TIPO-DATOS

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 Tarea_2 Programa transportador Programa transp_vaco Recurso control transportador Recurso control de calidad Tarea_ cclica Tarea_ unica

Programa montaje Programa posicin_inicial

Programa envasado Programa estadsticas Programa Guarda_datos

Variables globales y directamente representadas

Fig. B5.3: Ejemplo grfico de una configuracin

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

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 Pieza_TipoB Pieza_presente Taladro_ok

OR

AND

Mete_funda

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

Festo Didactic TP301

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.
LD OR AND AND ST Pieza_TipoA Pieza_TipoB Pieza_presente Taladro_ok Mete_funda

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

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..
Entradas (Inputs) Salidas (Outputs) Memorias (Memory) I

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

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 BYTE WORD Secuencia de bits de longitud 1 Secuencia de bits de longitud 8 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 IB, QB, MB IW, QW, MW Bit de entrada, bit de salida, bit de memoria 1 bit

Byte de entrada, byte de salida, byte de memoria Word de entrada, word de salida, word de memoria

8 bit 16 bit

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

Festo Didactic TP301

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 IX9 I15 QW3 MB5 MX2 Entrada 1 Entrada 9 Entrada 15 Word de salida 3 Byte de memoria 5 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. 5

Fig. B6.4: Estructura de las designaciones jerrquicas

IEC 1131-4 no hace ningn comentario en relacin con la asignacin de bits individuales en un BYTE o WORD. Los fabricantes de los 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 %IW5 %QB8 %MW27 Bit de entrada 12

Word de Entrada 5 Byte de Output 8 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

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 Button_? El nombre no empieza con una letra 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
Enteros Nmeros en coma flotante Nmeros de base 2 (Nmeros binarios) Nmeros de base 8 (Nmeros octales) Nmeros de base 16 (Nmeros hexadecimales) Cero y Uno Booleanos *

Ejemplos
12, -8, 123_456*, +75 -12.0, -8.0, 0.123_4* 2#1111_1111 2#1101_0011 8#377 8#323 16#FF o 16#ff 16#D3 o 16#d3 0, 1 (255 decimal) (211 decimal) (255 decimal) (211 decimal) (255 decimal) (211 decimal)

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
Duracin de tiempo

Ejemplos
T#18ms, t#3m4s, t#3.5s t#6h_20m_8s TIME#18ms D#1994-07-21 DATE#1994-07-21 TOD#13:18:42.55 TIME_OF_DAY#13:18:42.55 DT#1994-07-21-13:18:42.55 DATE_AND_TIME#1994-07-21-13:18:42.55

Fecha

Hora del da

Fecha y Hora

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

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

B-68
Captulo 6

Abreviaciones para datos de tiempo:


d h m s ms Dias Horas Minutos Segundos 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.
Ejemplo
B Atencin

Descripcin
Cadena de longitud 1, conteniendo el carcter B Cadena de longitud 7, conteniendo el mensaje Atencin cadena vaca

Tabla B6.3: Representacin de cadenas

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
BOOL SINT INT DINT UINT REAL TIME STRING BYTE WORD

Tipo de Dato
Nmero Booleano Entero corto Entero Entero doble Entero sin signo Nmero en coma flotante Duracin de tiempo Cadena de longitud variable Secuencia de 8 bits Secuencia de 16 bits

Margen de valores
0, 1 0 a 255 -32 768 a +32 767 -2 147 483 648 a +2 147 483 647 0 a 65 535 +/-2.9E-39 a +/-3.4E+38 dependiendo de la implementacin dependiendo de la implementacin sin rango de valores declarable sin rango de valores declarable

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

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

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

Tipo de dato derivado

Declaracin TYPE END_TYPE


Color: (ROJO, AZUL, AMARILLO, NEGRO); Margen_referencia: INT(80..110); Posicion: ARRAY[1..10] OF REAL; Coordenadas: STRUCT X:REAL; Y:REAL; END_STRUCT;

Tipo de enumeracin Tipo de subrango Campos (array) Estructuras

Tabla B6.5: Tipos de datos derivados

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"

*) *) *)

Fig. B6.5: Declaracin de variables

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

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.
Variables de Entrada Variables de Salida Variables de Entrada/Salida Variables locales VAR_INPUT VAR_OUTPUT VAR_IN_OUT VAR VAR_GLOBAL VAR_EXTERN

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

Variables globales Variables externas

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

: INT;

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

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

*)

Fig. B6.9: Declaracin de una variable local

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

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

: INT := 12;

Fig. B6.13: Declaracin de una variable global con valor inicial

Como se ha mostrado en este ejemplo, el valor de inicializacin se inserta siempre entre el tipo de dato en este caso INT y el punto y coma de cierre. La especificacin del valor de inicializacin siempre requiere el signo :=. De esta forma, a cada variable se le puede especificar un valor inicial. Fundamentalmente, las variables siempre tienen un valor inicial 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
BOOL, SINT, INT, DINT UINT BYTE, WORD REAL TIME STRING

Valor inicial
0 0 0 0.0 T#0s (cadena vaca)

Tabla B6.7: Valores iniciales preestablecidos

Festo Didactic TP301

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

ADD

%MW1

a) sin nombres de parmetros formales

%IW2 4

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 ADD Todos los tipos de datos que definen nmeros son permisibles como parmetros de entrada de resultado

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 general SINT SINT ADD SINT ejemplo VAR AT %IB4 : SINT; AT %IB5 : SINT; AT %MB6 : SINT; END_VAR %IB4 %IB5 ADD %MB6

Fig. B6.17: Funcin sobrecargada de tipo independiente

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 ADD_INT

INT 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. Todos los tipos de datos para enteros tales como INT, UINIT, etc. Todos los tipos de datos, definiendo nmeros en coma flotante tales como REAL e LREAL Todos los tipos de datos de secuencia de bits, tales como BOOL, BYTE, WORD etc.

ANY_INT ANY_REAL

ANY_BIT

Tabla B6.8: Tipos de datos genricos

Festo Didactic TP301

B-80
Captulo 6

ANY_BIT ANY_BIT ... ... ANY_BIT

***

ANY_BIT

* * * = nombre o smbolo
Nombre
AND OR

Smbolo
& >=1 =2k+1

Descripcin
Operacin AND de todas las entradas Operacin OR de todas las entradas Operacin OR-exclusiva de todas las entradas Entrada negada

Tabla B6.9: Funciones booleanas Bit-a-bit

XOR NOT

ANY_BIT ANY_INT

*** IN N

ANY_BIT

* * * = nombre
Nombre
SHL SHR

Descripcin
Desplazar IN por N bits hacia la izquierda, llenar con ceros la derecha Desplazar IN por N bits hacia la derecha, llenar con ceros la izquierda Desplazar IN cclicamente por N bits hacia la derecha Desplazar IN cclicamente por N bits hacia la izquierda

Tabla B6.10: Funciones de desplazamiento de bits

ROR ROL

TP301 Festo Didactic

B-81
Captulo 6

ANY_BIT or ANY_NUM ... ...

***

ANY_BIT or ANY_NUM

* * * = nombre o smbolo

Nombre
GT GE EQ LE LT NE

Smbolo
> >= = <= < <>

Descripcin
Mayor que (secuencia descendiente) Mayor o iguall (secuencia monotnica) Igual menor o igual (secuencia monotnica) Menor que (rsecuencia ascendente) No igual, no expandible

Tabla B6.11: Funciones de comparacin

a) Representacin grfica ANY_BIT 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 BCD_TO_INT INT

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 2#0010_0101

Tabla B6.12: Funciones para conversin de tipo

Festo Didactic TP301

B-82
Captulo 6

ANY_NUM ANY_NUM ... ... ANY_NUM

***

ANY_NUM

* * * = nombre o smbolo
Nombre
ADD MUL SUB DIV * / :=

Smbolo

Descripcin
Suma todas las entradas Multiplica todas las entradas Resta la segunda entrada de la primera Divide la primera entrada por la segunda Asigna una entrada a una salida. no ampliable

Tabla B6.13: Funciones aritmticas

MOVE

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 dato Tipo dato Entradas Tipo FB X P Y Q Tipo dato Tipo dato
Fig. B6.19: Representacin grfica de una copia de un bloque de funcin

Salidas

Tambin se dispone de la representacin grfica de bloques de funcin (aparte de la representacin en uno de los lenguajes textuales). Estos se representan por rectngulo de la misma forma que las funciones (fig. 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 INT

Bloque de funcin tipo CTU (contador incremental)

Count_Pack %I 1.3 10 CTU CU Q R PV CV Use una copia del bloque de funcin CTU en un programa de control

%Q2.5

Fig. B6.20: Uso (invocacin) del bloque de funcin CTU (contador incremental)

Festo Didactic TP301

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

Bloque de funcin tipo TP (pulse timer)

T_Colour TP IN Q PT ET

OR

T_Pressure TP IN Q PT ET

%I 1.7 T#7s

Display_1

T#3s15ms

Fig. B6.21: Uso de varias copias de un bloque de funcin

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 RS CTU CTD TP TON TOF R_TRIG F_TRIG Bloque de funcin biestable (activacin prioritaria) Bloque de funcin biestable (desactivacin prioritaria) Contador incremental Contador decremental Pulso de tiempo Retardo a la conexin Retardo a la desconexin Deteccin de flanco: flanco ascendente Deteccin de flanco: flanco descendente

Tabla B6.14: Bloques de funcin estndar

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

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 SPEZ_MUL F1 F2

(* Descripcin del interface externo *) INT

INT INT

(* Cuerpo de la funcin: *) (* Programado en lenguaje FBD *) F1 F2 15


Fig. B6.22: Ejemplo de una funcin SPEZ_MUL

* + 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 END_VAR SPEZ_MUL F1 F2 : INT; : INT; : INT; : INT; : INT;

%MW1 %MW2 %IW4 %QW5

%MW3

Fig. B6.23: Uso de la funcin SPEZ_MUL

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 Filtro_rebotes S_ON S_OFF E_TIME

(* Descripcin del interface externo *)

BOOL TIME

BOOL

(* Cuerpo del bloque de funcin: *) (* programado en lenguaje FBD *) EP_ON S_ON TON IN Q PT ET EP_OFF TOF IN Q PT ET EP_S SR S1 Q1 R S_OFF

E_TIME

END_FUNCTION_BLOCK

Fig. B6.24 : Declaracin de un bloque de funcin

Festo Didactic TP301

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 END_PROGRAM
Fig. B6.25: Ejemplo de un programa

*) *) *) *)

OR

Duracion TP IN PT Q ET Luz

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 Manual_desc Temp 60 > >=1 Puerta_cerrada

b) Uso de bloques de funcin T_Arranque %I 1.3 T#7s TON IN Q PT ET %Q2.4

Fig. B7.1: Diagrama de bloques de funcin (FBD)

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

7.2

Evaluacin de redes

%I 1.1 %M2.5

&

Variante_1

Variante_1: %M2.1 %I 2.5 >=1 %Q1.0


Fig. B7.2: Uso de un salto en FBD

El salto condicional, representado por una doble flecha, se ejecuta si se cumple la condicin para el salto. Por ello, si la entrada %I1.1 y el flag %M2.5 llevan ambos seal 1, entonces se ejecutar un salto a la red con el 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

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


Fig. B7.3: FBD con estructuras en bucle

&

%M2.0

>=1

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
Fig. B8.1: Estructuta bsica de un rengln

%Q3.5

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 / P N Contacto normalmente cerrado Contacto de flanco positivo Contacto de flanco negativo

Bobinas Bobina / S R P
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 Cantidad_1 Cantidad_2 + EN ENO Nivel_llenado Suma_ok

b) Invocacin de un bloque de funcin T_Arranque %I 1.3 T#7s TON IN Q ET PT %Q2.4

Fig. B8.3: Funciones y bloques de funcin en diagrama de contactos

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.

8.3

Evaluacin de los renglones actuales.

%I 1.1

%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

Operador y Modificador LD AND ST

Operando

Comentario

Inicio:

%I1.2 %M3.7 %Q2.4

Fig. B9.1: Estructura de una instruccin

(* 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
LD

Operadores

Modificador
N

Operando

Descripcin/Significado
Carga el operando especificado al acumulador e iguala el resultado actual a este operando Almacena el resultado actual en los operandos especificados

ST

BOOL

Activa el operando booleano al valor 1, si el valor del resultado actual es un 1 booleano Desactiva el operando booleano a o, si el valor del resultado actual es un 1 booleano AND Booleano AND Booleano OR Booleano OR Exclusivo Booleano Adicin (Suma) Sustraccin (Resta) Multiplicacin Divisin Comparacin: > Comparacin: >= Comparacin: = Comparacin: < > Comparacin: <= Comparacin: <

BOOL

AND & OR XOR ADD SUB MUL DIV GT GE EQ NE LE LT JMP CAL RET )

N, ( N, ( N, ( N, ( ( ( ( ( ( ( ( ( ( ( C, N C, N C, N

BOOL BOOL BOOL BOOL

Etiqueta Nombre

Salto a una etiqueta Invocacin de bloques de funcin Retorno de bloques de funcin Procesamiento de una operacin

Tabla B9.1: Operadores en lista de instrucciones

Festo Didactic TP301

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 AND( OR ) %I1.1 %I1.2 %I1.3 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.

JMPC

Marcha

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 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 *)

Fig. B9.3: Invocacin de funciones

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 LD ST T#7s T_arranque.PT %I1.3 T_arranque.IN (* (* (* (* (* (* (* (* 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 *) *) *) *) *) *) *) *)

CAL

T_startup

Fig. B9.4: Invocacin de bloques de funcin

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

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.

Operacin
Parntesis Procesamiento de funcin

Smbolo
(expresin) Nombre de la funcin (Lista de parmetros transferidos) Ejemplo: LOG(X), SIN(Y) ** NOT * / MOD + <, >, , = <> &, AND XOR OR

Prioridad
la ms alta

Exponenciacin Signo Complemento Multiplicacin Divisin Mdulo Adicin Subtraccin Comparacin Igualdad Desigualdad AND Booleano

Tabla B10.1: Operadores del lenguaje Texto Estructurado

OR Exclusivo Booleano OR Booleano

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.

Ejemplo

Festo Didactic TP301

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
Asignacin :=

Ejemplo
A := B; CV := CV + 1; Y := COS(X); RS_Zumb(S := Fallo_broca, R1 := Pulsador); Zumb := RS_Zumb.Q1; RETURN;

Invocacin de bloques de funcin Retorno de funciones y bloque sde funcin 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 Voltage OF 101 ... 200: Display := too_large; 20 ... 100: Display := large; 2 ... 29: Display := normal; ELSE Display := too_small; END_CASE;

CASE

Instrucciones de iteracin FOR Total := 0; FOR I := 1 TO 5 DO Total := Total + I; END_FOR; Total := 0; I := 0; REPEAT I := I + 1; Total := Total + I; UNTIL I = 5 END_REPEAT;

REPEAT

Tabla B10.2: Instrucciones del lenguaje Texto Estructurado

TP301 Festo Didactic

B-111
Captulo 10

Instruccin
Instrucciones de iteracin (continuacin) WHILE

Ejemplo

Total := 0; I := 0; WHILE I < 5 DO I := I + 1; Total := Total + I; END_WHILE;

Terminacin de bucles Instruccin nula

EXIT; ;;

Tabla B10.2: Instrucciones en el lenguaje Texto Estructurado (continuacin)

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

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.

10.4 Instrucciones de iteracin

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

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

d) Transisicn con identificador *** o condicin de transicin ***

***

e) Derivacin alternativa

Etapa_3 E Etapa_4 F Etapa_5

f) Unin de rutas alternativas

Etapa_6 G Etapa_8

Etapa_7 H

Tabla B11.1: Elementos de un diagrama de funciones secuencial (representacin grfica)

Festo Didactic TP301

B-122
Captulo 11

Etapa_3 B Etapa_4 Etapa_5

g) Derivacin paralela (simultnea)

Etapa_6 M Etapa_8

Etapa_7

h) Unin de rutas paralelas

Tabla B11.1: Elementos del diagrama de funciones secuencial (representacin grfica, continuacin)

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) Variable del tipo TIME indicando el tiempo que ha estado activa la etapa Motor_3_activo desde el inicio.

b)

Motor_3_activo.T

Tabla B11.2: Informacin relativa a una etapa

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

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


Fig. B11.3: Etapas y transiciones en secuencia

Festo Didactic TP301

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
Etapa_7

E Etapa_5 H

F Etapa_6 I
Fig. B11.4: Derivacin alternativa: Procesamiento de transiciones de izquierda a derecha

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

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

Fig. B11.7: Representacin de una derivacin en paralelo triple

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

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

b) Condicin de transicin en lenguaje FBD %IX3 %MX1 &

Etapa_3

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 Nombre de la transicin Tran_3_4


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
Fig. B11.9: Asignacin de una condicin de transicin, especificando un nombre para la transicin

Festo Didactic TP301

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 STEP SEtapa_3: END_STEP TRANSITION FROM Etapa_3 TO Etapa_4 LD %IX3 AND %MX1; END_TRANSITION STEP Etapa_4: END_STEP

Fig. B11.10: Representacin textual de transiciones

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

11.4 Etapas

a b d

Campo a:

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

D DS SD SL

= retardado en el tiempo = retard. en tiempo y memoriz. = memoriz y retardado en tiempo = memoriz. y limitado en tiempo

Campo b: Campo c: Campo d:

Fig. B11.11: Representacin grfica de un bloque de accin

Festo Didactic TP301

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 %IX0.5 %MX1 %MX3 >=1 &
Fig. B11.14: Formulacin de acciones: declaracin grfica en FDB

%QX1.2

Accin_2 %IX0.5 %MX1 %MX3 %QX1.2

Fig. B11.15: Formulacin de acciones: Declaracin grfica en lenguaje LD

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

Fig. B11.16: Formulacin de acciones: Declaracin textual

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

B-136
Captulo 11

Accin_4

Marcha Pieza_presente Color L Determinar_color T#1s

Fig. B11.17: Formulacin de acciones: Inclusin de elementos SFC en una accin

C_ok

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 Pos_1
Etapa_3

Cilindro_1

Pos_1

S S

Cilindro_2 Vacio_activo

Vac_on

Vac_on
Etapa_4
R
Cilindro_1

Pos_2

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

%QX12

Fig. B11.20: Accin no memorizant

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

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

%QX12

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

%QX12

10s

10s

Fig. B11.24: Accin limitada en el tiempo

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

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 Etapa activa


Fig. B11.25: Accin retardada en el tiempo

%QX12

%QX12

1 0 1 0

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
Etapa activa %QX12 1 0 1 0

%QX12

10s

10s

Fig. B11.26: Accin retardada en el tiempo y memorizante

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 %QX12 1 0 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 %QX12 1 0 1 0

%QX12

10s

10s

Fig. B11.28: Accin memorizante y limitada en el tiempo

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

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
Fig. B11.29: Accin compleja en lenguaje FBD

SR S1 Q1 R

%QX1.5

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

11.5 Ejemplo

1.0

2.0

B3 B6 B1

B4 B7 B2

3.0 B5 B8
Fig. B11.30: Croquis de situacin

Festo Didactic TP301

B-144
Captulo 11

Lista de asignaciones
Denominacin del componente
B1 B2 B3 B4 B5 B6 B7 B8 Y1 Y2 Y3

Entrada PLC/ Salida PLC


%IX0.1 %IX0.2 %IX0.3 %IX0.4 %IX0.5 %IX0.6 %IX0.7 %IX0.8 %QX0.1 %QX0.2 %QX0.3

Tarea

Tabla B11.4: Lista de asignaciones

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

R Y1 R Y2 R Y3

B1

B1 /

B2

B2 /

Taladrado B6

S A

Avellanado B7

S B

T_arriba B3

R A

A_arriba B4

R B

1 Transporte B8
Fig. B11.31: Programa en lenguaje secuencial

S C

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 S1 H1 0 1 1 0
Fig. B12.1: Mtodos de descripcin

Ejemplo

Ecuacin Booleana H1 = S1

VAR S1 AT %I2.5 H1 AT %Q1.4 END_VAR

: BOOL; : BOOL;

Fig. B12.2: Declaracin de variables

Festo Didactic TP301

B-150
Captulo 12

a) LD S1 / H1

b) FBD

S1

NOT

H1

c) IL LDN ST S1 H1

d) ST H1 : = NOT S1;

Fig. B12.3: Negacin

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 S1 S2 H1 0 0 1 1 0 1 0 1 0 0 0 1 Ecuacin Booleana H1 = S1 S2
>

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

: BOOL; : BOOL; : BOOL;

TP301 Festo Didactic

B-151
Captulo 12

a) LD S1 S2 H1

b) FBD S1 S2 & H1

c) IL LD AND ST S1 S2 H1

d) ST 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 S1 S2 H1 0 0 1 1 0 1 0 1 0 1 1 1
Fig. B12.7: Mtodos de descripcin

Ejemplo

Ecuacin booleana H1 = S1 S2

>

VAR S1 AT %I2.5 S2 AT %I2.6 H1 AT %Q1.4 END_VAR

: BOOL; : BOOL; : BOOL;

Fig. B12.8: Declaracin de variables

Festo Didactic TP301

B-152
Captulo 12

a) LD S1 H1

b) FBD S1 S2 >=1 H1

S2

c) IL LD OR ST S1 S2 H1

d) ST H1 : = S1 OR S2;

Fig. B12.9: Operacin OR

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.
Tabla de funciones S1 S2 S3 H1 0 0 0 0 1 1 1 1 0 0 1 1 0 0 1 1 0 1 0 1 0 1 0 1 0 0 0 1 0 1 1 0 Ecuacin booleana
> > > > > >

H1 = (S1

S2 S2 S2

S3) S3) S3)

(S1 (S1

> >

Fig. B12.10: Mtodos de descripcin

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 S1 / S1 S2 / S1 S2 S3 / S3 S2 S3 H1

b) FBD S1 S2 S3 S1 S2 S3 S1 S2 S3 &

&

>=1

H1

&

c) IL
LD ( AND ANDN ) OR ( ANDN AND ) OR ( AND ANDN ) ST S3 S2 S1 S1 S2 S3 S1 S2 S3 H1

d) ST H1 : = (NOT S1 AND S2 AND S3) OR (S1 AND NOT S2 AND S3) OR (S1 AND S2 AND NOT S3);

Fig. B12.12: Combinacin de operaciones booleanas

Festo Didactic TP301

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.

Ejemplo

VAR B1 AT %IX1 S1 AT %IX2 H1 AT %QX1 RS_H1 END_VAR

: BOOL; : BOOL; : BOOL; : RS;

(* El sensor detecta el estado de error (* Pulsador (* Zumbador (* Flip-flop RS_H1 para el estado (* del zumbador

*) *) *) *) *)

Fig. B12.15: Declaracin de variables

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

B-156
Captulo 12

a) LD B1 H1 S S1 H1 R

b) FBD RS_H1 RS B1 S1 S R1 Q1 H1

c) IL LD S LD R or CAL LD ST RS_H1 (S := B1, R1 := S1) RS_H1.Q1 H1 B1 H1 S1 H1

d) ST RS_H1 (S := B1, R1 := S1); H1 := RS_H1.Q1;

Fig. B12.16: Utilizacin de un bloque de funcin RS

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. 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. 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 1 0 flanco descendente flanco descendente flanco ascendente

12.4 Evaluacin de flancos

Ejemplo

Flancos ascendentes y descendentes

Fig. B12.17: Flancos ascendentes y descendentes

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

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 RS_Y1 R_TRIG_S1 END_VAR

Ejemplo

: 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

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

Fig. B12.20: Declaracin de variables

a) LD S1 P S1 P b) FBD RS_Y1 R_TRIG_S1 Y1 S1 R_TRIG Q CLK & Y1 c) IL CAL LD ANDN S LD AND R 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; R_TRIG_S1 (CLK := S1) R_TRIG_S1.Q Y1 Y1 R_TRIG_S1.Q Y1 Y1 & RS S Q1 R1 Y1 Y1 / Y1 Y1 S Y1 R

Fig. B12.21: Utilizacin del bloque de funcin R_TRIG

Festo Didactic TP301

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 h m s ms Da Hora Minuto Segundo 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).

13.2 Temporizador de pulso

BOOL TIME

TP IN Q PT ET

BOOL TIME

Fig. B13.2: Bloque de funcin TP, temporizador de pulso

IN

PT

ET
0

Fig. B13.1: Diagrama de tiempos de un temporizador de pulso TP

Festo Didactic TP301

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 TP_Y1 END_VAR

: : : : :

BOOL; BOOL; BOOL; BOOL; SR;

: TP;

(* (* (* (* (* (* (*

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

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

Fig. B13.3: Declaracin de variables

S2 B1

&

SR_Y1 SR S1 Q1 R &

TP_Y1 TP B2 T#20s
Fig. B13.4: Uso de un temporizador de pulso en FBD

Y1

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.

13.2 Seal con retardo a la conexin

BOOL TIME

TON IN Q PT ET

BOOL TIME

Fig. B13.5: Bloque de funcin TON. Seal con retardo a la conexin

IN

PT

ET
0

Fig. B13.6: Diagrama de tiempos de una seal retardada a la conexin TON

Festo Didactic TP301

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

: : : : : : :

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

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

Fig. B13.7: Declaracin de variables

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.

13.4 Seal con retardo a la desconexin

BOOL TIME

TOF IN Q PT ET

BOOL TIME

Fig. B13.9: Bloque de funcin TOF, seal con retardo a la desconexin

IN

PT

ET
0

Fig. B13.10: Diagrama de tiempos de una seal con retardo a la desconexin TOF

Festo Didactic TP301

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

: BOOL; : BOOL; : TOF;

Fig. B13.11: Declaracin de variables

(* (* (* (*

Pulsador Avance del cilindro Temporizador a la desconexin TOF_Y1 para Y1

*) *) *) *)

END_VAR

a) LD TOF_Y1 S1 TOF Q IN PT ET Y1

b) FBD TOF__Y1 S1 T#30s TOF IN Q PT ET Y1

T#30s

c) IL CAL LD ST d) ST
Fig. B13.12: Uso de una seal con retardo a la desconexin en FBD

TOF_Y1 (IN := S1, PT := T#30s) TOF_Y1.Q Y1

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

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.

Fig. B14.1: Bloque de funcin CTU, Contador incremental

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.

Ejemplo

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

: BOOL; : BOOL; : BOOL; : BOOL; : BOOL; : BOOL; : BOOL; : RS; : CTU;

(* Pulsador para mover el cilindro (* Pulsador de reset contador CTU_Y1 (* Cilindro retrado (* Cilindro extendido (* Avance del cilindro (* Memorizacin avance cilindro (* Memorizar estado contador CTU_Y1 (* Flip-flop RS_Y1 para Y1 (* Contador incremental CTU_Y1 para (* los movimientos del cilindro

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

Fig. B14.2: Declaracin de variables

Festo Didactic TP301

B-174
Captulo 14

a) LD

S1

B1 CTU_Y1.Q /

Y1 S Y1 R

B2

CTU_Y1 B2 CTU CU S2 R Q CTU_Y1_M

15

PV

CV RS_Y1

b) FBD

S1 B1 CTU_Y1.Q

& B2 CTU_Y1

RS S Q1 R1

Y1

B2 S2 15
c) IL LD AND ANDN ST CAL LD ST CAL

CTU CU Q R PV CV

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

Fig. B14.3: Uso del contador incremental

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.

Fig. B14.4: Bloque de funcin CTD, contador decremental

BOOL BOOL INT

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

: : : : : : : :

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

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

Fig. B14.5: Declaracin de variables

END_VAR

TP301 Festo Didactic

B-177
Captulo 14

RS_Y1 S1 B1 CTD_Y1.Q B2 CTD CD Q LD PV CV

&

RS S Q1 R1

Y1

B2 S2 10

H1

Fig. B14.6: Uso de un contador decremental en lenguaje FBD

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

B-178
Captulo 14

14.4 Contador incremental /decremental

El bloque de funcin CTUD, contador incremental/decremental, combina el contador incremental y el decremental.

Fig. B14.7: Bloque de funcin CTUD, contador incremental /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


L Deteccin del material y color; t = 0,5 s

Tiempo transcurrido 2
S Elevacin del cilindro elevador

Cilindro elevador arriba 3


L Definicin del grosor; t = 1 s

Tiempo transcurrido 4
N Avance del cilindro expulsor

Cilindro expulsor delante 5


N Retroceso del cilindro expulsor

Cilindro expulsor detrs 6


S Descenso del cilindro elevador

Cilindro elevador abajo

Fig. B15.1: Diagrama de funciones secuencial para un proceso de verificacin

Festo Didactic TP301

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 Transicin Etapa


Fig. B15.2: Elementos de un diagrama de funciones secuencial

1 conexiones directas 2

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 3 e 4 f 5 h g

6
i
Fig. B15.3: Derivacin alternativa

Festo Didactic TP301

B-184
Captulo 15

2 d 3 e 4 g 7
Fig. B15.4: Derivacin en paralelo

5 f 6

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

S N D F L P C

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 Pieza liberada

2.2

Avance cilindro expulsor

Pieza expulsada 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


S Pinza en posicin 1

Fig. B15.6: Refinamiento de las etapas

Festo Didactic TP301

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. 2. 3. La tensin de control y la tensin de la lgica se generan completamente separadas de la tensin principal. Dos fuentes de alimentacin combinadas en una caja para la generacin de ambas tensiones. 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.

Ejemplo

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

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


20 mA serie asncrona full duplex

Denominacin Modo de transmisin Modo de funcionamiento Estndard

V.24 serie asncrona full duplex

Centronics paralelo

simplex

V.24 RS-232-C

Centronics TTL

TTY

Distancia de transmisin, velocidad de transmisin

hasta 30 m 20 000 bit/s

hasta 2 m 106 bit/s

hasta 1000 m 20 000 bit/s

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

Fig. B1.2:

Ejemplo de un PLC: AEG Modicon A120 AEG Schneider Automation GmbH, Steinheimer Strae 117, 63500 Seligenstadt PLC Compacto (Mitsubishi FX0) Mitsubishi Electric Europe GmbH, Gothaer Strae 8, 40880 Ratingen PLC Modular (Siemens S7-300) Siemens AG, AUT 111, Postfach 4848, 90475 Nrnberg

Fig. B1.4:

Fig. B1.4:

Bibliografa

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 IEC 1131/ DIN EN 61131

Equipamiento elctrico de maquinaria industrial; Definiciones generales 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) Documentacin sobre circuitos; Parte 7: Utilizacin de smbolos para elementos binarios en esquemas de circuitos Preparacin de diagramas de funciones para sistemas de control

DIN IEC 113

IEC 848

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 . . . . . . . . . . . . . . . . . . . . . Alarma antirrobo La funcin NOT . . . . . . . . . . . . . . . . . . . . . . . . . . . . Prensa con barrera protectora La funcin AND. . . . . . . . . . . . . . . . . . . . . . . . . . . . Sistema de timbre La funcin OR . . . . . . . . . . . . . . . . . . . . . . . . . . . . C-7 C-9 C-11 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: Solucin 10: Solucin 11: Alarma de incendios Activacin de una salida . . . . . . . . . . . . . . . . . . . . C-21 Supervisin de la rotura de una broca Activacin y desactivacin de una salida . . . . . . . C-23 Activacin de un cilindro Flancos de las seales . . . . . . . . . . . . . . . . . . . . . C-25

Sistemas lgicos con funciones temporales Solucin 12: Solucin 13: Solucin 14: Encolado de componentes Pulso . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . C-29 Dispositivo de marcado Seal con retardo a la conexin . . . . . . . . . . . . . . C-31 Dispositivo de fijacin Seal con retardo a la desconexin . . . . . . . . . . . C-35

Sistemas de control secuencial Solucin 15: Solucin 16: Solucin 17: Dispositivo elevador para paquetes Secuencia lineal . . . . . . . . . . . . . . . . . . . . . . . . . . C-39 Dispositivo elevador y clasificador para paquetes Derivacin alternativa. . . . . . . . . . . . . . . . . . . . . . . C-43 Dispositivo de estampacin con contador Ciclos de recuento . . . . . . . . . . . . . . . . . . . . . . . . . C-47

TP301 Festo Didactic

C-3
Solucin 1

Diseo y puesta a punto de un control programable Componentes de un PLC

Ttulo

1. Componentes de un PLC

Cules son los componentes bsicos de un control lgico programable? Pregunta 1


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

Respuesta

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: la unidad de control la memoria de datos la unidad aritmtica y lgica (ALU)

Respuesta

Cmo se consigue el aislamiento elctrico entre las seales de los sensores/actuadores y el PLC?
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.

Pregunta 3 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 Margen de tensin admisible Consumo de corriente 24 V DC 16 a 30 V DC aprox. 160 mA

Entradas
Nmero 21 de las cuales 1 es de conteo rpido 6 mA lg. 0 = 0 a 5 V lg. 1 = 11 a 30 V

Corriente de entrada Nivel de entrada

Salidas
Nmero Tipo Tensin de salida Corriente de salida 14 salidas a transisitor Conmutacin a positivo Tensin de funcionamiento 2 V mx. 300 mA/salida Corriente total de salida mx. 2.5 A

Datos tcnicos

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"?


En esta etapa se realizan las siguientes actividades: 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

Pregunta 1 Respuesta

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

Circuito de una lmpara La funcin de asignacin

Ttulo

3. Declaracin de las variables del programa PLC


Nombre
S1

Tipo de datos
BOOL

Direccin
%IX0.0

Comentario
La entrada % IX0.0 genera seal-1, mientras el pulsador est presionado La lmpara H1 luce si la salida % QX0.0 lleva seal-1

H1

BOOL

%QX0.0

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 H1 AT %QX0.0 END_VAR


S1 H1

: 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

*) *) *) *)

END_PROGRAM

Diagrama de bloques de funcin

PROGRAM Lampara VAR S1 AT %IX0.0 H1 AT %QX0.0 END_VAR


S1 H1

: 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

*) *) *) *)

END_PROGRAM

Diagrama de contactos

Festo Didactic TP301

C-8
Solucin 3

PROGRAM Lampara VAR S1 AT %IX0.0 H1 AT %QX0.0 END_VAR LD ST S1 H1

: 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

*) *) *) *)

END_PROGAM

Lista de instrucciones

PROGRAM Lamp VAR S1 AT %IX0.0 H1 AT %QX0.0 END_VAR H1 := S1; END_PROGRAM

: 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

*) *) *) *)

Texto estructurado

TP301 Festo Didactic

C-9
Solucin 4

Alarma antirrobo La funcin NOT

Ttulo

3. Declaracin de las variables del programa PLC


Nombre
S1

Tipo de datos
BOOL

Direccin
%IX0.0

Comentario
La entrada % IX0.0 genera seal-1, mientras el pulsador S1 no est presionado La alarma H1 suena , si la salida % QX0.0 lleva seal-1

H1

BOOL

%QX0.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 Guard VAR S1 AT %IX0.0 H1 AT %QX0.0 END_VAR


S1 NOT H1

: BOOL; : 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_PROGRAM

Diagrama de bloques de funcin

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

C-10
Solucin 4

PROGRAM Guard VAR S1 AT %IX0.0 H1 AT %QX0.0 END_VAR


S1 / H1

: BOOL; : 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_PROGRAM

Diagrama de contactos

PROGRAM Guard VAR S1 AT %IX0.0 H1 AT %QX0.0 END_VAR LDN S1 ST H1 END_PROGRAM

: BOOL; : 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

*) *) *) *)

Lista de instrucciones

PROGRAM Guard VAR S1 AT %IX0.0 H1 AT %QX0.0 END_VAR H1 := NOT S1; END_PROGRAM

: BOOL; : 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

*) *) *) *)

Texto estructurado

TP301 Festo Didactic

C-11
Solucin 5

Prensa con barrera protectora La funcin AND

Ttulo

3. Declaracin de las variables del programa PLC


Nombre
S1

Tipo de dato
BOOL

Direccin
%IX0.0

Comentario
La entrada %IX0.0 lleva seal -1, mientras el pulsador S1 est accionado La entrada %IX0.1 lleva seal -1, mientras el sensor S1 est accionado La prensa 1.0 avanza mientras la salida %QX0.0 tenga seal-1

B1

BOOL

%IX0.1

Y1

BOOL

%QX0.0

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 B1 AT %IX0.1 Y1 AT %QX0.0 END_VAR


S1 B1

: BOOL; : BOOL; : 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

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

&

Y1

END_PROGRAM

Diagrama de bloques de funcin

Festo Didactic TP301

C-12
Solucin 5

PROGRAM Press VAR S1 AT %IX0.0 B1 AT %IX0.1 Y1 AT %QX0.0 END_VAR


S1 B1 Y1

: BOOL; : BOOL; : 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_PROGRAM

Diagrama de contactos

PROGRAM Prensa VAR S1 AT %IX0.0 B1 AT %IX0.1 Y1 AT %QX0.0 END_VAR LD S1 AND B1 ST Y1 END_PROGRAM

: BOOL; : BOOL; : 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

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

Lista de instrucciones

PROGRAM Prensa VAR S1 AT %IX0.0 B1 AT %IX0.1 Y1 AT %QX0.0 END_VAR Y1 := S1 & B1; END_PROGRAM

: BOOL; : BOOL; : 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

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

Structured text

TP301 Festo Didactic

C-13
Solucin 6

Sistema de timbre La funcin OR

Ttulo

3. Declaracin de las variables del programa PLC


Nombre
S1 S2 H1

Tipo de dato
BOOL BOOL BOOL

Direccin
%IX0.0 %IX0.1 %QX0.0

Comentario
Pulsador S1 (puerta del jardn) Pulsador S2 (puerta de la casa) 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 S2 >=1 H1

: BOOL; : BOOL; : BOOL;

(* Pulsador S1 (puerta del jardn) (* Pulsador S2 (puerta de la casa) (* Zumbador H1 (timbre)

*) *) *)

END_PROGRAM

Diagrama de bloques de funcin

Festo Didactic TP301

C-14
Solucin 6

PROGRAM Timbre VAR S1 AT %IX0.0 S2 AT %IX0.1 H1 AT %QX0.0 END_VAR

: BOOL; : BOOL; : BOOL;

(* Pulsador S1 (puerta del jardn) (* Pulsador S2 (puerta de la casa) (* Zumbador H1 (timbre)

*) *) *)

S1

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

: BOOL; : BOOL; : BOOL;

(* Pulsador S1 (puerta del jardn) (* Pulsador S2 (puerta de la casa) (* Zumbador H1 (timbre)

*) *) *)

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

: BOOL; : BOOL; : BOOL;

(* Pulsador S1 (puerta del jardn) (* Pulsador S2 (puerta de la casa) (* Zumbador H1 (timbre)

*) *) *)

Texto estructurado

TP301 Festo Didactic

C-15
Solucin 7

Dispositivo estampador Combinaciones de AND/OR/NOT

Ttulo

3. Declaracin de las variables del programa PLC


Nombre
B1 B2 B3 Y1

Tipo de dato
BOOL BOOL BOOL BOOL

Direccin
%IX0.0 %IX0.1 %IX0.2 %QX0.0

Comentario
Sensor de proximidad B1 Sensor de proximidad B2 Sensor de proximidad B3 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

: : : :

BOOL; BOOL; BOOL; BOOL;

(* Sensor de proximidad B1 (* Sensor de proximidad B2 (* Sensor de proximidad B3 (* Avance cilindro 1.0

*) *) *) *)

B1 B2 B3

&

B1 B2 B3

&

>=1

Y1

B1 B2 B3

&

END_PROGRAM

Diagrama de bloques de funcin

Festo Didactic TP301

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

: : : :

BOOL; BOOL; BOOL; BOOL;

(* (* (* (*

Sensor de proximidad B1 Sensor de proximidad B2 Sensor de proximidad B3 Avance cilindro 1.0

*) *) *) *)

B1 / B1

B2

B3

Y1

B2 /

B3

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 LD( B3 AND B2 ANDN B1 ) OR( B1 ANDN B2 AND B3 ) OR( B1 AND B2 ANDN B3 ) ST Y1 END_PROGRAM

: : : :

BOOL; BOOL; BOOL; BOOL;

(* (* (* (*

Sensor de proximidad B1 Sensor de proximidad B2 Sensor de proximidad B3 Avance cilindro 1.0

*) *) *) *)

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

Control de un silo para dos materiales a granel Sistema de control lgico con derivacin

Ttulo

3. Declaracin de las variables del programa PLC


Nombre
S1 S2 Y1 Y2

Tipo de dato
BOOL BOOL BOOL BOOL

Direccin
%IX0.0 %IX0.1 %QX0.0 %QX0.1

Comentario
S1: Pulsador marcha S2: Interruptor selector Cilindro 1.0: Abrir silo A 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 silo (* S1: Pulsador de marcha (* S2: Interruptor selector (* Cilindro 1.0: Abrir silo A (* Cilindro 2.0: Abrir silo B *) *) *) *)

S1 S2

&

Y1

S1

&

Y2

S2
END_PROGRAM

Diagrama de bloques de funcin

Festo Didactic TP301

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

silo (* (* (* (* S1: Pulsador de marcha S2: Interruptor selector Cilindro 1.0: Abrir silo A Cilindro 2.0: Abrir silo B *) *) *) *)

S1

S2 /

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 LD S1 ANDN S2 ST Y1 LD S1 AND S2 ST Y2 END_PROGRAM

silo (* (* (* (* S1: Pulsador de marcha S2: Interruptor selector Cilindro 1.0: Abrir silo A Cilindro 2.0: Abrir silo B *) *) *) *) *) *) *) *) *) *)

(* Pulsador S1 accionado (* Selector S2: material A (* Descargar material A (* Pulsador S1 accionado (* Selector S2: Material B (* Descargar material B

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; END_PROGRAM

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

Texto estructurado

TP301 Festo Didactic

C-21
Solucin 9

Alarma de incendio Activacin de una salida

Ttulo

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
RS_H1 RS S1 S R1 Q1 H1

: BOOL; : BOOL; : RS;

(* Pulsador (* Zumbador (* Flip-flop RS_H1 para el zumbador

*) *) *)

END_PROGRAM

Diagrama de bloques de funcin

PROGRAM Zumbador VAR S1 AT %IX0.0 H1 AT %QX0.0 END_VAR


S1

: BOOL; : BOOL;
H1 S

(* Pulsador (* Zumbador

*) *)

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 S1 H1

: BOOL; : BOOL;

(* Pulsador (* Zumbador

*) *)

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 RS_H1( S := S1 ); H1 := RS_H1.Q1; END_PROGRAM

: BOOL; : BOOL; : RS;

(* Pulsador (* Zumbador (* Flip-flop RS_H1 para el zumbador

*) *) *)

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

Supervisin de la rotura de una broca Activacin y desactivacin de una salida

Ttulo

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
RS_H1 RS B1 S1 S R1 Q1 H1

(* Pulsador (* Broca defectuosa: B1=0 (* Indicador de alarma (* Flip-flop RS_H1 indicador de alarma

*) *) *) *)

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

(* Pulsador (* Broca defectuosa: B1=0 (* Indicador de alarma

*) *) *)

B1 / S1

H1 S H1

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 B1 H1 S1 H1

(* Pulsador (* Broca defectuosa: B1=0 (* Indicador de alarma

*) *) *)

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 RS_H1( S := NOT B1, R1 := S1 ); H1 := RS_H1.Q1; END_PROGRAM

(* (* (* (*

Pulsador Broca defectuosa: B1=0 Indicador de alarma Flip-flop RS_H1 Indicador de alarma

*) *) *) *)

Texto estructurado

TP301 Festo Didactic

C-25
Solucin 11

Activacin de un cilindro Flancos de las seales

Ttulo

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

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

& R_TRIG CLK Q


&

RS_Y1

S1

RS S Q1 R1

Y1

B2

END_PROGRAM

Diagrama de bloques de funcin

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

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

(* (* (* (*

Pulsador marcha Cilindro 1.0 retrado Cilindro 1.0 extendido Avance cilindro 1.0

*) *) *) *)

S1 P S1 P
END_PROGRAM

B1

Y1 S

B2

Y1 R

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

Encolado de componentes Pulso

Ttulo

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 B1 T#5s
END_PROGRAM

& IN

TP Q ET Y1 PT

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


S1 B1

: BOOL; : BOOL; : BOOL; : TP;


TP_Y1 TP IN Q ET

(* Pulsador marcha (* Cilindro encolador retrado (* Avance cilindro encolador (* Pulso tiempo encolado

*) *) *) *)

Y1

T#5s

PT

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

Dispositivo de marcado Seal con retardo a la conexin

Ttulo

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;

(* 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 TON S1 B1
&

RS_Y1 RS

IN PT

Q ET

S R1

Q1

Y1

T#3s END_PROGRAM

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 TON Y1

IN
T#3s B2 PT

Q
ET

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

Dispositivo de fijacin Seal con retardo a la desconexin

Ttulo

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

Q ET

Y1

T#3s R_TRIG_B2 R_TRIG B2 CLK Q B3 B4 RS_Y3 RS B4 B3


END_PROGRAM

RS_Y2

RS
& S R1 Q1 Y2

S R1

Q1

Y3

Diagrama de bloques de funcin

Festo Didactic TP301

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 TOF IN T#3s B2 P B4 B3 PT Q ET Y2 S Y2 R Y3 S Y1

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

Dispositivo elevador para paquetes Secuencia lineal

Ttulo

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 B3 S_3 B5


S_4

Y1

B3

Y2

B5

R B2

Y1

B2

S_5
B4

Y2

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

Dispositivo elevador y clasificador para paquetes Secuencia con desvo alternativo

Ttulo

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

1 2.1 : Cilindro elevador extendido y paquete largo 1 5 S Avance cilindro 3.0 5.1 : Cilindro 3.0 extendido 1 6 S Retroceso cilindro 3.0 6.1 : Cilindro 3.0 retrado 1 1

S Avance cilindro 2.0 3.1 : Cilindro 2.0 extendido

S Retroceso cilindro 2.0 4.1 : Cilindro 2.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 S R B2 & NOT S2 S_3 B4 S_4 B3 S_7 S
R

Y1 Y2

B2

B2 & S2 Y3 B4 S_5 B6 S Y4 B6

Y3

B3

S_6 B5

Y4

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

Dispositivo de estampacin con contador Ciclos de conteo

Ttulo

2. Descripcin de la tarea de control en diagrama de funciones secuencial segn IEC848

Posicin inicial Pieza presente, contador no vencido y posicin inicial Contador vencido y S1 accionado 8 1 1 N Inicializar contador

S Avance cilindro 1.0 1 N Incrementar contador en 1 2.1 : Cilindro extendido

S Avance cilindro 2.0 3.1 : Cilindro 2.0 extendido

S Retroceso cilindro 2.0 4.1 : Cilindro 2.0 retrado

S Retroceso cilindro 1.0 5.1 : Cilindro 1.0 retrado

S Avance cilindro 3.0 6.1 : Cilindro 3.0 extendido

S Retrocxeso cilindro 3.0 7.1 : Cilindro 3.0 retrado

Diagrama de funciones segn IEC 848

Festo Didactic TP301

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

B1 & B3 & B5 & B7 & NOT CTU_1.Q


S_8

S1 & CTU_1.Q N

Counter_init
CTU_1

S_2

Y1

B2

R N

Y2

Count
1

CTU_1 S_2.X CTU CU R PV CV

10

CTU CU Q R PV CV

B2

S_3
B4

Y3

B4

S_4 B3 S_5

Y3

B3

Y2

B1

R B1
S_6 S

Y1

Y4

B6

B6
S_7 B5

Y4

B5

END_PROGRAM

Diagrama de funciones secuencial

Festo Didactic TP301

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 . . . . . . . . . . . . . . . . . . . . . . . . . . Indicador y placa de distribucin elctrica. . . . . . . . . . . . . . . . . Cilindro de simple efecto . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Cilindro de doble efecto . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Unidad de mantenimiento con vlvula de interrupcin . . . . . . 011088 030311 152887 152888 152894

Distribuidor de aire . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 152896 Sensor de proximidad inductivo. . . . . . . . . . . . . . . . . . . . . . . . . Sensor de proximidad capacitivo . . . . . . . . . . . . . . . . . . . . . . . . Sensor de proximidad ptico . . . . . . . . . . . . . . . . . . . . . . . . . . . Interruptor de proximidad para montaje en cilindro. . . . . . . . . . Electrovlvula de 5/2 vas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Electrovlvula de 5/2 vas, doble solenoide . . . . . . . . . . . . . . . Unidad de conexin E/S digitales . . . . . . . . . . . . . . . . . . . . . . . 152902 152903 152904 152905 152909 152910 159385

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

Festo Didactic TP301

D-2
Apndice

TP301 Festo Didactic

Entrada de seales elctricas

011088
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 Bloque de contactos Capacidad de los contactos Consumo (piloto) Conexiones Sujeto a cambios

24 V DC 2 contactos n.a., 2 contactos n.c. Max. 1 A 0,48 W Cuatro clavijas de 4 mm Datos tcnicos

Festo Didactic

011088
2/2

Entrada de seales elctricas

= Contacto ffner = Contacto Schlie er

norm. cerrado norm. abierto

Ejemplo de aplicacin: Esquema del circuito elctrico

S =S Pulsador marcha = STA Tde Taster

1 24V
1 12

14 11

S
14

A1 A2

0V
2 =

Contacto norm. cerrado ffner norm. abierto

Ejemplo de aplicacin: Montaje elctrico prctico

STA T Taster SS==Pulsador de marcha

= Contacto Schlie er

A1 12
A2

14
11

A1 12
A2

14
11

Contactos normalmente abiertos, normalmente cerrados: Asignacin de contactos en la placa de rels

Interruptor conmutador Wechsler als Schlie er conectado como contacto n.o. angeschlossen

Interruptor Wechsler als conmutador ffner conectado como contacto n.a. angeschlossen

Festo Didactic

Unidad de indicacin y distribucin elctrica

030311
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.
Tensin Consumo (indicador ac stico) Indicador ptico recuencia (indicador ac stico) Conexiones s i o funciona correctamente, verificar la polaridad

24 V DC 0,04 W 1,2 W 420 z Para clavijas de 4 mm

Sujeto a cambios

Datos tcnicos

Festo Didactic

030311
2/2

Unidad de indicacin y distribucin elctrica

H1

H2

=Contacto ffner cerrado en reposo

Ejemplo de aplicacin: Circuito elctrico

= Contacto Schlieer abierto en reposo S = Pulsador START - Taster de marcha

1 +24V13 12

14 11

S
14

A1

K
A2

H1

H2

0V
2 = Contacto ffner = Contacto Schlieer

cerrado en reposo abierto en reposo

Ejemplo de aplicacin: Montaje elctrico prctico

S = Pulsador START - Taster de marcha

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 Diseo Presin de funcionamiento mx. Carrera mxima Fuerza a 6 bar (600 kPa) Mnima fuerza del muelle Conexin Aire comprimido filtrado (con o sin lubricacin) Cilindro de mbolo 10 bar (1000 kPa) 50 mm 150 N 13,5 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

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 Diseo Presin de funcionamiento mx. Carrera mxima Fuerza a 6 bar (600 kPa) Fuerza de retorno a 6 bar (600 kPa) Conexin Aire comprimido filtrado (con o sin ubricacin) Cilindro de mbolo 10 bar (1000 kPa) 100 mm 165 N

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 Diseo Caudal nom. estndar* Presin mx. entrada. Presin mx. salida. Grado de filtracin Volumen de condensados Conexin * Presin de entrada Presin de salida Presin diferencial Sujeto a modificaciones Aire comprimido Filtro sinterizado con separador de agua, regulador de presin tipo mbolo 750 l/min 1600 kPa (16 bar) 1200 kPa (12 bar) 40 m 14 cm3 G 1/8 Racor CU-PK-4 para tubo de plstico PUN-6 x 1 1000 kPa (10 bar) 600 kPa (6 bar) 100 kPa (1 bar)

Datos tcnicos

Festo Didactic

Festo Didactic

Distribuidor de aire

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

Conexin

Sujeto a modificaciones

Datos tcnicos

Festo Didactic

Festo Didactic

Sensor de proximidad inductivo

152902
1/2

G
1 3 4 5

24V

0V

Festo Didactic

152902
2/2

Sensor de proximidad inductivo

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.

Tensin de conmutacin Rizado residual Distancia nominal de deteccin Frecuencia de conmutacin Funcin de salida Corriente de salida Clase de proteccin Conexiones Datos tcnicos Sujeto a cambios

10 a 30 V DC mximo 10% segn DIN 41755 4 mm (material: acero dulce) mximo 800 Hz contacto normalmente abierto, conmutacin a positivo mximo 400 mA IP65 para clavija de 4 mm o zcalo de 3 pines

Festo Didactic

Sensor de proximidad, capacitivo

152903
1/2

1 2 3 4 5 6 7

G
1 3 4 5

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

24V

0V

Festo Didactic

152903
2/2

Sensor de proximidad, capacitivo

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. Tensin de conmutacin Rizado residual Distancia nominal de conmutacin Punto de conmutacin reproducible a temperatura constante Frecuencia de conmutacin Corriente en vaco Intensidad de salida Capacidad de conmutacin Funcin de salida Clase de proteccin Conexiones Datos tcnicos Sujeto a cambios 10 a 30 V DC mximo10% 4 mm 0,01 mm mximo 100 Hz aprox. 15 mA mximo 200 mA mximo 4,8 W Contacto n.a. conmutacin a positivo IP65 para clavija de 4 mm o zcalo 3 pines

Festo Didactic

Sensor de proximidad ptico

152904
1/2

9 10

1 2 3 4 5 6 7 8
12

11

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

24V

0V

Festo Didactic

152904
2/2

Sensor de proximidad ptico

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.

Tensin de conmutacin Rizado residual Distancia nominal de deteccin Frecuencia de conmutacin Funcin de salida Corriente de salida Clase de proteccin Conexiones Datos tcnicos Sujeto a cambios

10 a 30 V DC mximo 10% 0 a 100 mm (ajustable) mximo 200 Hz Contacto n.a. conmutacin a positivo mximo 100 mA IP65 para clavija de 4 mm o zcalo de 3 pines

Festo Didactic

Interruptor de proximidad para montaje en cilindro

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

24V BN

BK

BU 0V

Tensin de interrupcin Intensidad de interrupcin Precisin Conexin Cable Sujeto a cambios

24 V DC/AC Mx. 500 mA 0,1 mm Clavija con cable para zcalo con clavijas de 4 mm

Datos tcnicos

Festo Didactic

Festo Didactic

Electrovlvula de 5/2 vas

152909
1/1

4(A)

2(B)

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 Diseo Margen de presin Tiempo de conmutacin Caudal nominal estndar Conexin Seccin elctrica Tensin Consumo Duracin Conexin Sujeto a cambios 24 V DC 1,5 W 100% Para clavijas de 4 mm y conector doble Aire comprimido, filtrado (con o sin lubricacin) Vlvula de corredera pilotada, con muelle de retorno 250 a 800 kPa (2,5 a 8 bar) a 600 kPa (6 bar) Con.: 20 ms, Descon.: 30 ms 500 l/min Racor CU-PK-3 para tubo de plstico PUN-4 x 0.75

Datos tcnicos

Festo Didactic

Festo Didactic

Vlvula de 5/2 vas, doble solenoide

152910
1/1

4(A)

2(B)

5(R) 1(P)

3(S)

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 Diseo Margen de presin Tiempo de conmutacin Caudal nominal estndar Conexin Seccin elctrica Tensin Consumo Duracin Conexin Sujeto a cambios 24 V DC 1,5 W 100% Para clavijas de 4 mm y conector doble Aire comprimido, filtrado (con o sin lubricacin) Vlvula de corredera pilotada, con muelle de retorno 150 a 800 kPa (1,5 a 8 bar) a 600 kPa (6 bar) 10 ms 500 l/min Racor CU-PK-3 para tubo de plstico PUN-4 x 0.75

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
2/2

Unidad de conexin E/S digitales

Tensin de funcionamiento admisible Rizado residual Entradas Corriente de entrada Tolerancias en el nivel de entrada Salidas Tensin de salida Corriente de salida Consumo del LED a 24 V Conexin elctrica Tensin de funcionamiento Entradas y salidas

24 VDC mx. 10% 8 entradas digitales * * 8 salidas digitales * * 5 mA zcalos de 4 mm zcalos de 4 mm y clavijas enchufables con regleta

Datos tcnicos

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
1 2 3 4 24 V DC 0 V DC I_.0 I_.1 I_.2 I_.3

Zcalo N
7 8 9 10 11 12 I_.4 I_.5 I_.6 I_.7 Q_.0 Q_.1

Zcalo N
13 14 15 16 17 18 Q_.2 Q_.3 Q_.4 Q_.5 Q_.6 Q_.7

Asignacin de la regleta/conector de 18 pines (de ariba a abajo)

5 6

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