Portada club 91M
9/10/12
2:04 PM
Página 1
2ª de forros.qxd
9/10/12
4:30 PM
Página 2ªFo1
suma + edi club 91.qxd
9/11/12
9:55 AM
Página 1
PLC & Autómatas Programables
Director Ing. Horacio D. Vallejo
Editorial
Producción José María Nieves (Grupo Quark SRL) Selección y Recopilación de esta Obra: Ing. Horacio Daniel Vallejo
[email protected] SOBRE APORTES DEL CLUB SE, MONOGRAFÍAS Y LA REVISTA SABER ELECTRÓNICA Coordinación: Ing. Ismael Cervantes de Anda EDITORIAL QUARK S.R.L. Propietaria de los derechos en castellano de la publicación mensual SABER ELECTRÓNICA - San Ricardo 2072 (1273) - Capital Federal - Buenos Aires - Argentina - T.E. 4301-8804 Administración y Negocios Teresa C. Jara (Grupo Quark SRL) Patricia Rivero Rivero (SISA SA de CV) Margarita Rivero Rivero (SISA SA de CV) Staff Liliana Teresa Vallejo Mariela Vallejo Diego Vallejo Luis Alberto Castro Regalado (SISA SA de CV) José Luis Paredes Flores (SISA SA de CV) Sistemas: Paula Mariana Vidal Red y Computadoras: Raúl Romero Video y Animaciones: Fernando Fernández Legales: Fernando Flores Contaduría: Fernando Ducach Técnica y Desarrollo de Prototipos: Alfredo Armando Flores Atención al Cliente Alejandro Vallejo
[email protected] Internet: www.webelectronica.com.mx Publicidad: Rafael Morales
[email protected] Club SE: Grupo Quark SRL
[email protected] Editorial Quark SRL San Ricardo 2072 (1273) - Capital Federal www.webelectronica.com.ar
La Editorial no se responsabiliza por el contenido de las notas firmadas. Todos los productos o marcas que se mencionan son a los efectos de prestar un servicio al lector, y no entrañan responsabilidad de nuestra parte. Está prohibida la reproducción total o parcial del material contenido en esta revista, así como la industrialización y/o comercialización de los aparatos o ideas que aparecen en los mencionados textos, bajo pena de sanciones legales, salvo mediante autorización por escrito de la Editorial. Impresión: Talleres Babieca - México
Del Editor al Lector
Los Controles Lógicos Programables (PLC por sus siglas en inglés) sustituyeron a los dispositivos electromagnéticos de control automático industrial, incrementando con esta acción condiciones óptimas para que los procesos alcancen niveles de confiabilidad y eficiencia muy altos. Los PLCs fueron introducidos en la década de 1970 y aún a la fecha se siguen empleando, a pesar de que la tendencia siguiente es que sean sustituidos por computadoras industriales. Mientras esto no suceda, y según nuestras expectativas, los PLCs continuarán empleándose aún como una pequeña extensión de las computadoras industriales, será necesario que se cuente con personal que entienda tanto a programarlos, como a realizar cambios en los programas ya creados. Esta obra, la cuarta de la colección Saber Electrónica, está destinada a personas con conocimientos de programación principalmente en “lenguaje escalera” (también conocido como diagrama de contactos), además de conocimientos eléctricos en general, ya que el PLC tiene que ser conectado tanto con sensores, como con elementos de potencia (actuadores). Aunque los PLCs de diferentes marcas y modelos, pueden tener internamente diversos microcontroladores, y cada uno de éstos son incompatibles entre sí, el ambiente de programación es el que hace que se logre la compatibilidad entre todos los PLCs. Este ambiente de programación es el “lenguaje escalera”, que una vez creado se puede ingresar a un PLC de una marca, como a otro de marca totalmente distinta, y ambos realizarán la misma actividad. Nuestro objetivo es que el lector pueda aprender a realizar programas en lenguaje escalera, y para ello se cuenta con una distribución ordenada concienzudamente, para que al ir avanzando con la lectura del libro, el lector sea capaz de ir dominando las diferentes técnicas que se recomiendan para programar un PLC. También le proponemos el armado de un PLC pequeño y otro de mayores prestaciones, fáciles de montar y programables bajo un ambiente gratuito. Esperamos que lo explicado sea de su agrado y recomendamos que descargue los discos sugeridos ya que su contenido le permitirá afianzar sus conocimientos. ¡Hasta el mes próximo!
SOBRE LOS 2 CDS Y SU DESCARGA
Ud. podrá descargar de nuestra web el CD: “Curso de PLCs” y 1 VCD “Proyectos con PLC” que contienen Cursos, Videos, Tutoriales, Proyectos, etc. Todos los CDs son productos multimedia completos con un costo de mercado equivalente a 8 dólares americanos cada uno y Ud. los puede descargar GRATIS con su número de serie por ser comprador de este libro. Para realizar la descarga deberá ingresar a nuestra web: www.webelectronica.com.mx, tendrá que hacer clic en el ícono password e ingresar la clave “PLCCSE91”. Tenga este texto cerca suyo ya que se le hará una pregunta aleatoria sobre el contenido para que pueda iniciar la descarga.
Editorial
1
suma + edi club 91.qxd
9/11/12
9:55 AM
Página 2
PLC & Autómatas Programables
SUMARIO
PLC & AUTÓMATAS PROGRAMABLES
Funciones Lógicas . . . . . . . . . . . . . . . . . . . . . . .33 CAPÍTULO 1: Los Temporizadores . . . . . . . . . . . . . . . . . . . . . .33 PLC: CONTROLADORES LÓGICOS PROGRAMABLES QUÉ SON, CÓMO SE USAN, ARQUITECTURA . . . .3 Los Contadores . . . . . . . . . . . . . . . . . . . . . . . . .35 Introducción . . . . . . . . . . . . . . . . . . . . . . . . . . . . .4 Breve Historia de los PLC . . . . . . . . . . . . . . . . . . .6 Componentes de un PLC . . . . . . . . . . . . . . . . . .6 Unidad Central de Proceso . . . . . . . . . . . . . . . . .9 La Memoria del PLC . . . . . . . . . . . . . . . . . . . . . .13 Módulos de Entrada y Salida de Datos . . . . . . .14
Monoestables . . . . . . . . . . . . . . . . . . . . . . . . . .36 Las Operaciones Aritméticas . . . . . . . . . . . . . .36 Operaciones de Comparación . . . . . . . . . . . . .37 Instrucciones SET Y RESET . . . . . . . . . . . . . . . . . .37 Programación en Lenguaje Ladder . . . . . . . . . .38 Ejemplo de Programación . . . . . . . . . . . . . . . .39
CAPÍTULO 2: CAPÍTULO 4: LÓGICA CABLEADA & PLC EDICIÓN DE PROGRAMAS Y SIMULACIÓN . . . . . . . . . . . .41 LÓGICA CABLEADA INDUSTRIAL . . . . . . . . . . .15 Interpretación de la Lógica Cableada . . . . . . .16 Barras de Polaridad . . . . . . . . . . . . . . . . . . . . . .18 Servicios Esenciales . . . . . . . . . . . . . . . . . . . . . .19 Los Montajes con Lógica Cableada . . . . . . . . .19 Los Relés . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .19 Contactos “Normal Abierto” y “Normal Cerrado 20 Funciones Lógicas . . . . . . . . . . . . . . . . . . . . . . .20 Relé Automantenido . . . . . . . . . . . . . . . . . . . . .20 Temporización . . . . . . . . . . . . . . . . . . . . . . . . . .21 Señalización . . . . . . . . . . . . . . . . . . . . . . . . . . . .21 Enclavamientos . . . . . . . . . . . . . . . . . . . . . . . . .22 Comando Secuencial . . . . . . . . . . . . . . . . . . . .22 Los Controladores Lógicos Programables . . . . .22 Unidad Central de Proceso . . . . . . . . . . . . . . . .24 Memoria del Controlador . . . . . . . . . . . . . . . . .24 Interfaces de Entrada Salida . . . . . . . . . . . . . . .25 Fuente de Alimentación . . . . . . . . . . . . . . . . . .26 Ciclo de Funcionamiento . . . . . . . . . . . . . . . . .26 Imagen del Proceso de las Entradas y Salidas .27 Programación del PLC . . . . . . . . . . . . . . . . . . . .27
CAPÍTULO 3: EL LENGUAJE LADDER
O EN
ESCALERA . . . . . . .31
Introducción . . . . . . . . . . . . . . . . . . . . . . . . . . . .31 Los Contactos . . . . . . . . . . . . . . . . . . . . . . . . . .32 Relés Internos o Marcas . . . . . . . . . . . . . . . . . .32 2
Club Saber Electrónica Nº 91
Introducción . . . . . . . . . . . . . . . . . . . . . . . . . . . .41 Cómo se Usa el Programa Mi PLC . . . . . . . . . . .41
CAPÍTULO 5: EJEMPLOS DE PROGRAMACIÓN
EN
LADDER . . . .49
Introducción . . . . . . . . . . . . . . . . . . . . . . . . . . . .49 Contacto normalmente abierto (NA) . . . . . . . . .50 Contacto normalmente cerrado (NC) . . . . . . . .50 Función Lógica AND (Y) . . . . . . . . . . . . . . . . . . .51 Función Lógica OR (O) . . . . . . . . . . . . . . . . . . . .52 Función Lógica Inversora (NOT) . . . . . . . . . . . . .52 Función Lógica No Inversora . . . . . . . . . . . . . . .53 Funciones Combinadas y Ejemplos Prácticos . .53
CAPÍTULO 6 PLC MICROCONTROLADO CON ENTRADAS ANALÓGICAS . . . . . . . . . . . .63
Introducción . . . . . . . . . . . . . . . . . . . . . . . . . . . .63 Etapa de Entrada . . . . . . . . . . . . . . . . . . . . . . . .65 La Etapa de Entrada Analógica . . . . . . . . . . . .66 La Etapa de Salida . . . . . . . . . . . . . . . . . . . . . . .69 La Etapa de Control . . . . . . . . . . . . . . . . . . . . . .70 Montaje del PLC . . . . . . . . . . . . . . . . . . . . . . . . .70 Programación del PLC . . . . . . . . . . . . . . . . . . . .72 PLC de 3 Entradas y 2 Salidas . . . . . . . . . . . . . .76
CAP 1 - INRO PLC.qxd
9/11/12
9:58 AM
Página 3
Capítulo 1
Los Controladores Lógicos Programables o PLC (Programmable Logic Control) son automatismos “normalizados” que poseen una unidad central de proceso, que es el corazón del PLC y que recibe datos de dispositivos conectados a las entradas de dicho PLC (sensores), procesa dichos datos en función del programa contenido en la CPU y arroja los resultados a las salidas del PLC, donde hay actuadores (relés, triacs, sistemas de arranque, etc.).
PLC:
CONTROLADORES LÓGICOS PROGRAMABLES
QUÉ SON, CÓMO
SE
USAN, ARQUITECTURA
En base a la definición dada más arriba, podríamos decir que una central de alarma es un PLC ya que tiene zonas de entrada y de salida y un programa grabado en un microcontrolador de la central; sin embargo, dicha central NO ES UN PLC, ya que para que lo sea debe cumplir con determinados requisitos como son: 1) Debe poseer bloques de entradas aisladas de la CPU. 2) Tiene que incluir bloques de salida con “buffers” (aislados de la CPU y que manejen potencia). 3) Se debe poder programar por medio de cursos de programación estándar (funciones, instrucciones y lenguaje de contactos o escalera establecidos en la norma IEC 61131-3). 4) Se debe poder reemplazar por un PLC de otra marca y similares características.
En base a lo dicho, puedo utilizar un PLC como central de alarma, ya que es posible programar su CPU para que “lea” los datos de los sensores conectados a las entradas (detector de movimientos, detector exterior por microondas, sensores magnéticos conectados en las aberturas, etc.) y cuando detecta una intromisión, activa una o varias salidas en las que pueden estar conectados sistemas sonoros de aviso, discadores telefónicos, etc. Ese mismo PLC podrá ser utilizado en aplicaciones industriales, ya sea para controlar automáticamente una máquina herramienta o para controlar la seguridad de un entorno de trabajo. En este capítulo explicaremos qué es un PLC, cómo funciona y cuál es su arquitectura básica. Capítulo 1
3
CAP 1 - INRO PLC.qxd
INTRODUCCIÓN
9/11/12
9:58 AM
Página 4
PLC & Autómatas Programables
El funcionamiento del sistema de un PLC es simple y directo, el procesador central o CPU completa tres procesos:
Figura 1
1) Escanea o lee datos de los dispositivos de entrada. 2) Ejecuta o "resuelve" la lógica del programa y las actualizaciones. 3) Escribe, a los dispositivos de salida. En la figura 1 se puede apreciar el diagrama funcional de un PLC en que se puede apreciar que existe una unidad de proceso central o CPU que puede ser programada por medio de un dispositivo externo al PLC y que, en base al programa cargado, lee los datos recibidos desde sensores conectados a las entradas, procesa dicha información y entrega los resultados a los actuadores conectados a las salidas del PLC. Para que el PLC sea útil, primero debe tener un programa lógico “cargado” para que la CPU lo ejecute. Un ingeniero en sistemas o un programador de PLC primero creará la lógica del programa en un dispositivo de programación (en estos días por lo general es un software que se ejecuta en una computadora portátil). Esta lógica se puede escribir en lógica escalera (ladder o lógica de contactos), lista de instrucciones (generalmente en lenguaje Basic), gráficas de funciones secuenciales (compuertas lógicas), o cualquiera de los lenguajes IEC. El programador descarga el programa al PLC, esto se hace generalmente conectando temporalmente el programador al PLC. Una vez que el programa está instalado o cargado en la CPU del PLC, normalmente no es necesario que él permanezca conectado. Una vez que el programa se encuentra en la CPU, el PLC se establece en "ejecutar" y ejecuta el programa de aplicación en varias ocasiones. Además de la ejecución del programa, la CPU lee regularmente el estado de los dispositivos de entrada, y envía los datos a los dispositivos de salida. El sistema detecta el estado de las entradas del mundo real (un interruptor, un sensor de nivel, etc.), los traduce a valores 4
Club Saber Electrónica Nº 91
que pueden ser utilizados por la CPU y escribe estos valores en la tabla de entrada establecida en el programa grabado en la CPU. El programa de aplicación se ejecuta, y escribe los valores obtenidos en la tabla de salida. A continuación, el sistema de salida convierte el valor de esta tabla de salida a un cambio compatible con el mundo real (se enciende un motor, se abre una válvula, etc.). Este proceso de lectura de entradas, ejecución de la lógica de control y la escritura de salidas suele denominarse en el mundo técnico como “barrido” o “Scan PLC”, figura 2. La CPU lee continuamente las entradas, resuelve la lógica, y escribe en las salidas. Es importante entender la lógica del programa, ya que se puede Figura 2 escribir como una serie de estructuras lógicas consecutivas. El programa de control o programa de aplicación se almacena en la memoria. Al mismo tiempo que el PLC ejecuta la lógica, también puede leer y almacenar los valores en la memoria. Los valores también se pueden usar por el programa de aplicación.
CAP 1 - INRO PLC.qxd
9/11/12
9:58 AM
Página 5
CAP 1 - INRO PLC.qxd
9/11/12
9:58 AM
Página 6
PLC & Autómatas Programables
BREVE HISTORIA DE LOS PLC
La llegada de los PLC al mundo de la electrónica se inició en los años 1960 y 1970 para reemplazar los tradicionales controles "cableados" y, desde entonces, se ha convertido en la opción predominante para controles industriales. Antes de los PLC, gran parte del control de las máquinas herramientas se basaba en contactos y relés que proporcionaban una “lógica cableada” de los controles de la máquina. Los cambios en la lógica significaban mano de obra intensiva y costosa. En 1968, la división GM “Hydramatic” especificó los criterios de diseño para lo que sería el primer controlador lógico programable. Pidieron un sistema de estado sólido que haría lo siguiente: 1) Ser compatible en el ambiente industrial. 2) Ser fácilmente programados por ingenieros de planta y técnicos. 3) Ser fácilmente reprogramado y reutilizado en otros ámbitos. La propuesta ganadora vino de Bedford Asociado que introdujo el Controlador Modular Digital (MODICON). MODICON sigue siendo una marca popular de PLC hoy en día, pero es propiedad de Schneider Electric. En la figura 3 podemos observar la imagen de un PLC actual de dicha empresa, el MODICON 340 PLC, diseñado para aplicaciones medianas, que representa una síntesis de potencia e innovación y ofrece buenas respuestas a las distintas necesidades. El procesador cuenta con 4MB de RAM interna para gestionar aplicaciones de hasta 70K de instrucciones, incluye una tarjeta de memoria Flash SD para la copia de seguridad de aplicaciones lo que elimina la necesidad de una batería auxiliar. Tiene 512 a 1028 Entradas/Salidas Digitales, 128 a 256 Entradas/Salidas Analógicas y 20 a 36 Vías Específicas de Conteo. Continuando con esta breve historia, debemos decir que la industria del automóvil era un adoptante temprano importante de controladores lógicos programables (PLC). Ellos querían un método de programación que pudiera ser fácilmente comprendido por los ingenieros y técnicos que empleaban los controles existen6
Club Saber Electrónica Nº 91
Figura 3
tes en dicha época. El resultado fue el empleo de un lenguaje de programación llamado lógica de escalera de relé o simplemente "lógica de escalera", conocido en el mundo de la electromecánica como “lógica de contactos”. El diseño de la lógica de escalera es, por lo tanto, muy similar a la lectura de los diagramas para los controles hechos con relés. KOP fue uno de los primeros lenguajes, figura 4 y hoy sigue siendo uno de los más populares para la programación de PLC, aunque se han desarrollado muchos otros a lo largo de los años. COMPONENTES DE UN PLC Para describir las partes que integran a un PLC es imperante definir que todo sistema de control automático posee tres etapas que le son inherentes e imprescindibles, éstas son: 1) Etapa de acondicionamiento de señales.- Está
Figura 4
CAP 1 - INRO PLC.qxd
9/11/12
9:58 AM
Página 7
CAP 1 - INRO PLC.qxd
9/11/12
9:58 AM
Página 8
PLC & Autómatas Programables
integrada por toda la serie de sensores que convierten una variable física determinada a una señal eléctrica, interpretándose ésta como la información del sistema de control. 2) Etapa de control.- Es en donde se tiene la información para poder llevar a cabo una secuencia de pasos; dicho de otra manera, es el elemento de gobierno. 3) Etapa de potencia.- Sirve para efectuar un trabajo que siempre se manifiesta por medio de la transformación de un tipo de energía a otro tipo.
La unión de los tres bloques nos da como resultado un sistema de control automático completo, pero se debe considerar que se requiere de interfaces entre las conexiones de cada etapa para que el flujo de información circule de forma segura entre éstas. Los sistemas de control pueden concebirse bajo dos opciones de configuración: 1) Sistema de control de lazo abierto.- Es cuando el sistema de control tiene implementado los algoritmos correspondientes para que, en función de las señales de entrada, se genere una respuesta considerando los márgenes de error que pueden representarse hacia las señales de salida, figura 5. 2) Sistema de control de lazo cerrado.- Es cuando se tiene un sistema de control que responde a las señales de entrada, y a una proporción de la señal de salida, para de esta manera corregir el posible error que se pudiera inducir. En este sistema de control la retroalimentación es un parámetro muy importante, ya que la variable física que se está controlando se mantendrá siempre dentro de los rangos establecidos, figura 6. Idealmente todos los sistemas de control deberían diseñarse bajo el concepto de lazo cerrado, porque la variable física que se está interviniendo en todo 8
Club Saber Electrónica Nº 91
Figura 5
momento se encuentra controlada. Esta actividad se efectúa comparando el valor de salida contra el de entrada, pero en muchas ocasiones, de acuerdo a la naturaleza propia del proceso productivo, es imposible tener un sistema de control de lazo cerrado. Por ejemplo en una lavadora automática, la tarea de limpiar una prenda que en una de sus bolsas se encuentra el grabado del logotipo del diseñador de ropa, sería una mala decisión el implementar un lazo cerrado en el proceso de limpieza, porque la lavadora se encontraría comparando la tela ya lavada (señal de salida) contra la tela sucia (señal de entrada), y mientras el logotipo se encuentre presente la lavadora la consideraría como una mancha que no se quiere caer. Revisando las partes que constituyen a un sistema de control de lazo abierto o lazo cerrado, prácticamente se tiene una similitud con respecto a las partes que integran a un PLC, por lo que cualquiera de los dos métodos de control pueden ser implementados por medio de un PLC. Para comenzar a utilizar los términos que le son propios a un PLC, se observará que los elementos que conforman a los sistemas de control de lazo abierto y/o lazo cerrado se encuentran englobados en las partes que conforman a un Control Lógico Programable y que son las siguientes: Figura 6
CAP 1 - INRO PLC.qxd
9/11/12
9:58 AM
Página 9
PLC: Qué son, Cómo se Usan, Arquitectura
o Unidad central de proceso. o Módulos de entrada y salida de datos. o Dispositivo de programación o terminal.
En la figura 7 se puede observar el diagrama funcional de un PLC en el que se detalla, incluso, el dispositivo de programación, externo al PLC. UNIDAD CENTRAL DE PROCESO Esta parte del PLC es considerada como la más importante, ya que dentro de ella se encuentra un microcontrolador que lee y ejecuta el programa de usuario que a su vez se localiza en una memoria (normalmente del tipo EEPROM), además de realizar la gestión de ordenar y organizar la comunicación entre las distintas partes que conforman al PLC. El programa de usuario consiste en una serie de instrucciones que representan el proceso del control lógico que debe ejecutarse. Para poder hacer este trabajo, la unidad central de proceso debe almacenar en posiciones de memoria temporal las condiciones de las variables de entrada y variables de salida de datos más recientes.
Si bien no todos los PLCs son iguales, básicamente la estructura de su CPU responde a la forma de trabajo de cualquier microcontrolador. Es decir, la unidad central de proceso en esencia tiene la capacidad para realizar las mismas tareas que una computadora personal, porque, como ya se mencionó líneas atrás, en su interior se encuentra instalado un microcontrolador que es el encargado de gobernar todo el proceso de control. En la figura 8 se observa el diagrama en bloques que representa el funcionamiento de un microcontrolador, en el que se destacan las siguientes partes: o Procesador o CPU (Unidad Central de Proceso). o Memoria Central: o Memoria de programa de tipo ROM / EPROM/EEPROM / Flash . o Memoria de datos de tipo RAM. o Buses de control, datos y direcciones. o Líneas de E/S para comunicarse con el exterior. o Recursos auxiliares (temporizadores, Puertas Serie y Paralelo, Conversores Analógico/Digital, Conversores Digital/Analógico, etc.). o Generador de impulsos de reloj (sincroniza el funcionamiento de todo el sistema).
Figura 7
Capítulo 1
9
CAP 1 - INRO PLC.qxd
9/11/12
9:58 AM
Página 10
PLC & Autómatas Programables
Figura 8
Figura 9
En la figura 9 podemos observar diferentes modelos de PLCs. Cuando se energiza un PLC, el microcontrolador apunta hacia el bloque de memoria tipo ROM donde se encuentra la información que le indica la manera de cómo debe predisponerse para comenzar sus operaciones de control (BIOS del PLC). Es en la ejecución de este pequeño programa (desarrollado por el fabricante del PLC) que se efectúa un proceso de diagnóstico a través del cual se sabe con qué elementos periféricos se cuentan (módulos de entrada / salida, por ejemplo). Una vez concluida esta fase, el PLC “sabe” si tiene un programa de usuario alojado en el bloque de memoria correspondiente; si es así, por medio de un indicador avisa que está en espera de la orden para comenzar a ejecutarlo; de otra manera, también notifica que el bloque de memoria de usuario se encuentra vacío. El técnico o profesional es quien debe realizar 10
Club Saber Electrónica Nº 91
Figura 10
este programa, para que el PLC “haga” lo que se pretende de él. En general, primero se realiza el programa en lenguaje estructural o diagrama de flujo (figura 10) para, posteriormente, “compilarlo” o traducirlo a un lenguaje que sea entendible por el PLC Una vez que el programa de usuario ha sido cargado en el bloque de memoria correspondiente del PLC, y se le ha indicado que comience a ejecutarlo, el microcontrolador se ubicará en la primera posición de memoria del programa de usuario y procederá a leer, interpretar y ejecutar la primera instrucción. Dependiendo de qué instrucción se trate será la acción que realice el microcontrolador, aunque de manera general las acciones que realiza son las siguientes: leer los datos de entrada que se generan en los sensores, guardar esta información en un bloque de memoria temporal, realizar alguna operación con los datos temporales, enviar la información resultante de las operaciones a otro bloque de memoria temporal, y por
CAP 1 - INRO PLC.qxd
9/11/12
9:58 AM
Página 11
PLC: Qué son, Cómo se Usan, Arquitectura
último la información procesada enviarla a las terminales de salida para manipular algún(os) actuador(es). En cuanto a los datos que entran y salen de la unidad central de proceso, se organizan en grupos de 8 valores, figura 11, que corresponden a cada sensor que esté presente si se trata de datos de entrada, o actuadores si de datos de salida se refiere. Se escogen agrupamientos de 8 valores porque ése es el número de bits que tienen los puertos de entrada y salida de datos del microcontrolador. A cada agrupamiento se le conoce con el nombre de byte ó palabra. En cada ciclo de lectura de datos que se generan en los sensores, ó escritura de datos hacia los actuadores, se gobiernan 8 diferentes sensores ó actuadores, por lo que cada elemento de entrada / salida tiene su
Figura 11 Figura 12
imagen en un bit del byte que se hace llegar al microcontrolador. En el proceso de lectura de datos provenientes de los sensores, se reservan posiciones de memoria temporal que corresponden con el bit y la palabra que a su vez es un conjunto de 8 bits (byte). Esto es para tener identificado en todo momento el estado en que se encuentra el sensor 5, por ejemplo. Con los espacios de memoria temporal reservados para los datos de entrada, se generan paquetes de información que corresponden al reflejo de lo que están midiendo los sensores. Estos paquetes de datos cuando el microcontrolador da la indicación, son almacenados en la posición de memoria que les corresponde, siendo esa información la que representa las últimas condiciones de las señales de entrada. Sí durante la ejecución del programa de control el microcontrolador requiere conocer las condiciones de entrada más recientes, de forma inmediata accede a la posición de memoria que corresponde al estado de determinado sensor. El producto de la ejecución del programa de usuario depende de las condiciones de las señales de entrada; dicho de otra manera, el resultado de la ejecución de una instrucción puede tener una determinada respuesta si una entrada en particular manifiesta un uno lógico, y otro resultado diferente si esa entrada está en cero lógico. La respuesta que trae consigo la ejecución de una instrucción se guarda en una sección de la memoria temporal para que estos datos posteriormente sean recuperados, ya sea para exhibirlos o sean utilizados para otra parte del proceso. La información que se genera en los sensores se hace llegar al microcontrolador del PLC a través de unos elementos que sirven para aislar la etapa del medio ambiente (donde se encuentran los sensores) de la etapa de control, que es comprendida por la unidad central de proceso del PLC y que en su interior se encuentra el microcontrolador. Los elementos de aislamiento reciben el nombre de módulos de entradas, los cuales se encuentran identificados y referenciados hacia los bloques de memoria temporal donde se alojan los datos de los sensores. En Capítulo 1
11
CAP 1 - INRO PLC.qxd
9/11/12
9:58 AM
Página 12
PLC & Autómatas Programables
cuanto a los datos que manipulan a los actuadores (también llamados datos de salida, figura 12), éstos se encuentran alojados en las posiciones de memoria temporal que de manera ex profesa se reservan para tal información. Cuando en el proceso de ejecución de un programa de usuario se genera una respuesta y ésta a su vez debe modificar la operación de un actuador, el dato se guarda en la posición de memoria temporal correspondiente, tomando en cuenta que este dato representa un bit de información y que cada posición de memoria tiene espacio para 8 bits. Una vez que los datos de salida han sido alojados en las posiciones de memoria correspondientes, en un ciclo posterior el microcontrolador puede comunicarlos hacia el exterior del PLC, ya que cada bit que conforma un byte de datos de salida tiene una correspondencia en cuanto a las conexiones físicas que tiene el PLC hacia los elementos de potencia o actuadores, o dicho de otra forma, al igual que en las terminales de los datos de entrada, cada una de las terminales que contienen la información de salida también tienen asociado un elemento de potencia conectado en su terminal correspondiente. A medida que el microcontrolador de la unidad central de proceso del PLC ejecuta las instrucciones del programa de usuario, el bloque de memoria temporal asignado a la salida de datos, se está actualizando continuamente ya que las condiciones de salida muchas veces afectan el resultado que pueda traer consigo la ejecución de las instrucciones posteriores del programa de usuario, figura 13. De acuerdo a la manera de cómo se manejan los datos de salida, se puede observar que esta información cumple con una doble actividad, siendo la primordial la de canalizar los resultados derivados de la ejecución de las instrucciones por parte del microcontrolador hacia los bloques de memoria correspondientes, y pasar también los datos de salida a las terminales donde se encuentran conectados los actuadores. Otra función que se persigue es la de retroalimentar la infor12
Club Saber Electrónica Nº 91
Figura 13
mación de salida hacia el microcontrolador de la unidad central de proceso del PLC cuando alguna instrucción del programa de usuario lo requiera. En cuanto a los datos de entrada, no tienen la doble función que poseen los datos de salida, ya que su misión estriba únicamente en adquirir información del medio ambiente a través de las terminales de entrada y hacerla llegar hacia el microcontrolador de la unidad central de proceso. Los datos de salida, al igual que los de entrada, son guiados hacia los respectivos actuadores a través de elementos electrónicos que tienen la función de aislar y proteger al microcontrolador de la unidad central de proceso respecto de la etapa de potencia. Estos elementos reciben el nombre de módulos de salida. Tanto los módulos de entrada como de salida tienen conexión directa hacia las terminales de los puertos de entrada y salida del microcontrolador del PLC. Esta conexión se realiza a través de una base que en su interior cuenta con un bus de enlace, el cual tiene asociado una serie de conectores que son los medios físicos en donde se insertan los módulos (ya sean de entrada o salida). El número total de módulos de entrada o salida que pueden agregarse al PLC depende de la cantidad de direcciones que el microcontrolador de la unidad central de proceso es capaz de alcanzar. De acuerdo con lo escrito en el párrafo anterior, cada dato (ya sea de entrada o salida), representado por un bit y a su vez agrupado en bloques de 8 bits (palabra o byte), debe estar registrado e identificado para que el microcontrolador “sepa” si está siendo ocu-
CAP 1 - INRO PLC.qxd
9/11/12
9:58 AM
Página 13
PLC: Qué son, Cómo se Usan, Arquitectura
pado por un sensor o un actuador, ya que determinado bit de específico byte y por ende de determinada ubicación de memoria temporal tiene su correspondencia hacia las terminales físicas de los módulos. Esto último quiere decir que en los conectores de la base se pueden conectar de manera indistinta tanto los módulos de entrada como los módulos de salida, por lo que el flujo de información puede ser hacia el microcontrolador de la unidad central de proceso o, en dirección contraria. LA MEMORIA DEL PLC
Con respecto a la memoria donde se aloja el programa de usuario, es del tipo EEPROM, en la cual no se borra la información a menos que el usuario lo haga. La forma en cómo se guarda la información del programa de usuario en esta memoria es absolutamente igual que como se almacena en cualquier otro sistema digital, sólo son “ceros y unos” lógicos. A medida que el usuario va ingresando las instrucciones del programa de control, automáticamente éstas se van almacenando en posiciones de memoria secuenciales; este proceso de almacenamiento secuencial de las instrucciones del programa es autocontrolado por el propio PLC, sin intervención y mucho menos arbitrio del usuario. La cantidad total de instrucciones en el programa de usuario puede variar de tamaño, todo depende del proceso a controlar. Por ejemplo, para controlar una máquina sencilla basta con una pequeña cantidad de instrucciones, pero para el control de un proceso o máquina complicada, se requieren hasta varios miles de instrucciones. Una vez terminada la tarea de la programación del Figura 14
PLC, esto es terminar de insertar el programa de control a la memoria de usuario, el operario del PLC manualmente se debe dar a la tarea de conmutar el PLC del modo de “programación” al modo de “ejecución”, lo que hace que la unidad central de proceso ejecute el programa de principio a fin repetidamente. El lenguaje de programación del PLC cambia de acuerdo al fabricante del producto, y aunque se utilizan los mismos símbolos en distintos lenguajes de programación, la forma en cómo se crean y almacenan cambia de fabricante a fabricante. Por lo tanto, la manera de cómo se interpretan las instrucciones de un PLC a otro es diferente, todo depende de la marca. En otro orden de ideas, a la unidad central de proceso de un PLC una vez que le fue cargado un programa de usuario, su operación de controlar un proceso de producción no debe detenerse a menos que un usuario autorizado así lo haga. Para que el PLC funcione de forma ininterrumpida se debe contemplar el uso de energía de respaldo ya que ésta, bajo ninguna circunstancia, tiene que faltarle a la unidad central de proceso. Cabe aclarar que los PLC modernos cuentan con 2 CPUs de 32bits que interactúan para efectuar el control, figura 14. o La CPU de lógica ejecuta el código de la aplicación y realiza el procesamiento de los mensajes. o La CPU de “backplane” se comunica con las E/S y envía y recibe datos desde el “backplane”. Como este CPU es independiente del otro, toda la información de E/S se maneja asincrónicamente a la ejecución del programa (no altera el “scan”). La energía que alimenta al PLC se obtiene de un módulo de alimentación cuya misión es suministrar el voltaje que requiere tanto la unidad central de proceso como todos los módulos que posea el PLC. Normalmente el módulo de alimentaCapítulo 1
13
CAP 1 - INRO PLC.qxd
9/11/12
9:58 AM
Página 14
PLC & Autómatas Programables
ción se conecta a los suministros de voltajes de corriente alterna (VCA). El módulo de alimentación prácticamente es una fuente de alimentación regulada de voltaje de corriente directa, que tiene protecciones contra interferencias electromagnéticas, variaciones en el voltaje de corriente alterna, pero el aspecto más importante es que cuenta con baterías de respaldo para el caso de que falle el suministro de energía principal y entren en acción las baterías, provocando de esta manera el trabajo continuo del PLC, a la vez que puede activarse una alarma para dar aviso en el momento justo que el suministro de energía principal ha dejado de operar. MÓDULOS DE ENTRADA Y SALIDA DE DATOS Se encargan del trabajo de intercomunicación entre los dispositivos industriales exteriores al PLC y todos los circuitos electrónicos de baja potencia que comprenden a la unidad central de proceso del PLC, que es donde se almacena y ejecuta el programa de control. Los módulos de entrada y salida tienen la misión de proteger y aislar la etapa de control, que está conformada principalmente por el microcontrolador del PLC, de todos los elementos que se encuentran fuera de la unidad central de proceso, ya sean sensores o actuadores. Los módulos de entrada y salida hacen las veces de dispositivos de interfase, que entre sus tareas principales están las de adecuar los niveles eléctricos tanto de los sensores como de los actuadores o elementos de potencia, a los valores de voltaje que emplea el microcontrolador, que normalmente se basa en niveles de la lógica TTL, 0 (VCD) equivale a un “0 lógico”, mientras que 5 (VCD) equivale a un “1 lógico”. Físicamente los módulos de entrada y salida de datos, están construidos en tarjetas de circuitos impresos que contienen los dispositivos electrónicos capaces de aislar al PLC con el entorno exterior, además de contar con indicadores luminosos que informan de manera visual el estado que guardan las entradas y salidas. Para que los módulos de entrada o salida lleven a cabo la tarea de aislar eléctricamente al microcontrolador, se requiere que éste no tenga contacto físico con 14
Club Saber Electrónica Nº 91
los bornes de conexión de los sensores o actuadores y con las líneas de conexión que se hacen llegar a los puertos de entrada o salida del microcontrolador. Existen distintos módulos de entrada y salida de datos: la diferencia principal depende de los distintos tipos de señales que éstos manejan; esto quiere decir que se cuenta con módulos que manejan señales discretas o digitales, y módulos que manejan señales analógicas. A los módulos de entrada de datos se hacen llegar las señales que generan los sensores. Tomando en cuenta la variedad de sensores que pueden emplearse, existen dos tipos de módulos de entrada, algunos de los cuales se describen a continuación. Módulos de entrada de datos discretos.- Estos responden tan sólo a dos valores diferentes de una señal que puede generar el sensor. Las señales pueden ser las siguientes: a) El sensor manifiesta cierta cantidad de energía diferente de cero si detecta algo. b) Energía nula si no presenta detección de algo. Un ejemplo de sensor que se emplea en este tipo de módulo es el que se utiliza para detectar el final de carrera del vástago de un pistón. Para este tipo de módulos de entradas discretas, en uno de sus bornes se tiene que conectar de manera común uno de los terminales de los sensores. Para ello tenemos que ubicar cuál es la terminal común de los módulos de entrada. La forma en cómo se conoce popularmente a los módulos de entrada y salida es por medio de la siguiente denominación “Módulos de E/S”. Para seleccionar el módulo de E/S adecuado a las necesidades del proceso industrial, se tiene que dimensionar y cuantificar perfectamente el lugar donde se instalará un PLC. El resultado del análisis reportará el número de sensores y actuadores que son imprescindibles para que el PLC opere de acuerdo a lo planeado; por lo tanto, ya se sabrá la cantidad de entradas y salidas que se requieren, y si por ejemplo se cuenta con 12 sensores y 10 actuadores, entonces se tiene que seleccionar un PLC que soporte por lo menos 22 E/S. ☺
CAP 2 - Lógica cableada.qxd
9/11/12
10:04 AM
Página 15
Capítulo 2
Como el título lo indica, este capítulo trata los conceptos básicos de los controladores lógicos programables y su analogía con su antesesora “lógica Cableada”. En el capítulo anterior vimos básicamente qué es un PLC y cuál es su arquitectura de trabajo dentro de un sistema de funcionamiento, aquí analizaremos un poco más en detalle la estructura interna del equipo. El material fue pensado como un complemento de los manuales de usuarios de determinados PLCs comerciales (PLC S7-200 de Siemens, entre otros), teniendo en cuenta que aún existen en fábricas profesionales que no poseen conocimientos detallados sobre estos dispositivos electrónicos, dado que su formación en automatismos se remonta a la lógica cableada.
LÓGICA CABLEADA & PLC
LÓGICA CABLEADA INDUSTRIAL
Lógica cableada o lógica de contactos, es una forma de realizar controles en la que el tratamiento de datos (botonería, fines de carrera, sensores, presóstatos, etc.) se efectúa en conjunto con contactores o relés auxiliares, frecuentemente asociados a temporizadores y contadores. En la acepción de los técnicos electromecánicos, la lógica cableada industrial es la técnica de diseño de pequeños a complejos autómatas utilizados en plantas industriales, básicamente con relés cableados. Para los técnicos en telecomunicaciones e informáticos, la lógica cableada utiliza compuertas lógicas discretas (TTL, CMOS, HCMOS), para implementar circuitos digitales de comunicaciones y computadores.
La lógica cableada industrial consiste en el diseño de automatismos con circuitos cableados entre contactos auxiliares de relés electromecánicos, contactores de potencia, relés temporizados, diodos, relés de protección, válvulas óleo-hidráulicas o neumáticas y otros componentes. Los cableados incluyen funciones de comando y control, de señalización, de protección y de potencia. La unidad de potencia, además de circuitos eléctricos, comprende a los circuitos neumáticos (mando por aire a presión) u óleo hidráulicos (mando por aceite a presión). Crea automatismos rígidos, capaces de realizar una serie de tareas en forma secuencial, sin posibilidad de cambiar variables y parámetros. Si se ha de realizar otra tarea será necesario realizar un nuevo diseño. Se emplea en automatismos pequeños, o en Capítulo 2
15
CAP 2 - Lógica cableada.qxd
9/11/12
10:04 AM
Página 16
PLC & Autómatas Programables
lugares críticos, donde la seguridad de personas y máquinas, no puede depender de la falla de un programa de computación. En sistemas más grandes también se emplea el autómata programable, entre los que se encuentran los PLC, objeto de este texto, la UTR (Unidad Terminal Remota) o los relés programables y las computadoras o servidores de uso industrial. Estos autómatas no se programan en lenguajes tradicionales como cualquier computador, se programan en Ladder, lenguaje en el cual las instrucciones no son otra cosa que líneas de lógica cableada. Así el conocimiento de la lógica cableada es de fundamental importancia para quien programa un autómata programable o PLC. La lógica cableada más que una técnica, hoy en día constituye una filosofía que permite estructurar circuitos en forma ordenada, prolija y segura, sea en circuitos cableados o programados. La práctica de la lógica cableada ha sido asimilada por otras ramas de la tecnología como las telecomunicaciones y la informática, con la introducción del cableado estructurado en edificios, oficinas y locales comerciales, lugares donde es poco usual el manejo de esquemas y dibujos de las instalaciones eléctricas, excepto la de potencia, la elaboración de proyectos de detalle y el cableado en forma ordenada mediante el uso borneras y regletas, que pasaron a llamarse “patcheras” en el caso de las redes de datos y telefonía. INTERPRETACIÓN DE LA LÓGICA CABLEADA
Desde un punto de vista teórico la lógica cableada opera de igual forma que la lógica tradicional, donde las variables solamente pueden tener dos estados posibles, “verdadero” o “falso”. En la lógica cableada “verdadero” es igual a un relé energizado o en ON, en el caso de los contactos el estado “verdadero” es el contacto CERRADO. En la lógica cableada un “falso” es igual a un relé desenergizado o en OFF, para los contactos el estado “falso” es el contacto ABIERTO. En los circuitos electrónicos digitales o compuerta 16
Club Saber Electrónica Nº 91
Figura 1
lógica, se utiliza el sistema numérico binario; donde verdadero es igual a “1” y falso es igual a “0”. Si se trata de un sistema neumático u óleo-hidráulico, “verdadero” es igual a una válvula ABIERTA y “falso” es igual a una válvula CERRADA. Si se trata del mando de la válvula, “verdadero” corresponde al mando accionado (puede ser un solenoide, una palanca de accionamiento manual o un simple volante), y “falso” corresponde al estado no accionado del mando. En la figura 1 se muestran las variables lógicas empleadas en lógica cableada en comparación con la lógica, circuitos digitales, neumática y óleo-hidráulica. Los relés y otros elementos empleados en la técnica de comando y control, pueden ser dibujados con sus bornes de conexión tal cual son físicamente, y luego conectar con conductores los distintos bornes, conformando lo que se denomina un “esquema de conexión”. El esquema de conexión debe dar los datos constructivos y la ubicación de cada elemento, pero no es la mejor forma de representar un circuito a la hora de comprender y visualizar su funcionamiento, como si lo es el esquema de principio. Los dibujos o planos de los esquemas de conexión y esquemas de principio, antiguamente eran realizados por dibujantes técnicos en folios de papel de gran tamaño, por ejemplo; 1,50 x 2,00 metros, donde se dibujaban todos los cables del circuito en un solo folio. Por ejemplo, en la figura 2 se observan diferentes formas de representar un esquema eléctrico; el esquema de conexiones y el esquema de principio mientras que en la figura 3 se reproduce un esquema de principio típico de un cableado de comando y control. Actualmente los dibujos son realizados directamente por los electricistas, en programas CAD e impresos en
CAP 2 - Lógica cableada.qxd
9/11/12
10:04 AM
Página 17
Lógica Cableada & PLC Figura 2
hojas A4 o A3. Un circuito de automatización de lógica cableada se dibuja en varias hojas numeradas, y los cables y aparatos son referenciados de una hoja a otra, marcando el número de hoja y las coordenadas columna-fila donde se ubica el cable, borne o aparato cableado.
Para que un circuito de lógica cableada pueda funcionar correctamente, es primordial contar previamente con el dibujo del mismo, donde se identifican todos los cables y borneras de conexión, para luego realizar el montaje y revisar el correcto cableado de todos los elementos. Para que esto último sea posible es necesario colocar identificadores o marcadores alfanuméricos en todos los cables y bornes. Existen distintos criterios para realizar la identificación de los cables, teniendo cada una de ellas sus ventajas y desventajas. Básicamente se pueden identificar los cables según los números de borneras o regletas de conexión, o de acuerdo a una numeración arbitraria especificado en los planos o dibujos. En la figura 4 puede observar ejemplos de diferentes formas de identificar un cableado en esquemas de
Figura 3
Capítulo 2
17
CAP 2 - Lógica cableada.qxd
9/11/12
10:04 AM
Página 18
PLC & Autómatas Programables
lógica cableada. Los criterios de identificación del cableado son muchos, algunos apuntan a facilitar el montaje o trabajo del electricista que realiza el cableado, otros facilitan el trabajo del personal de mantenimiento de la instalación, otros son de acuerdo a la conveniencia del proyectista que dibujó los planos. Algunos de ellos; son:
1) identificar los cables con el nombre-número de la bornera o borne de conexión a donde llega el cable; 2) identificar los cables con el nombre-número de la bornera o borne de conexión del extremo opuesto del cable; 3) identificar los cables con un número correlativo de 00 a 99, donde ese número está marcado en el dibujo o plano como número del cable, se puede agregar el número de hoja del dibujo donde se encuentra el cable; 4) los números de los cables se corresponden con la numeración de la bornera principal del circuito cuyos números no se repiten en otra bornera; 5) mediante signos, letras y números que denoten la función del cable, como la polaridad +P y -P, mandos de apertura y cierre, funciones de protección, etc. Barras de Polaridad: Las barras de polaridad +P y P son las que permiten energizar las bobinas de los relés con los contactos. Usualmente se denominan +P y -P, pero pueden tener otra letra o leyenda cualquiera, y ser una tensión tanto de corriente continua como de alterna. La tensión de polaridad, usualmente esta cableada a elementos de control en posible contacto con las personas, por ejemplo; pulsadores manuales, controles de nivel de líquidos, sensores de posición o instrumentos de medida. Por este motivo, por razones de seguridad para las personas, esta tensión debe estar aislada galvánicamente de tierra, usualmente con un aislamiento de 1kV a 2kV. Las tensiones estándar empleadas en corriente continua son; 24V, 48V, 110V, 125V, 220V y 250V. Las tensiones estándar en corriente alterna son; 24V, 110V-120V, 220V-240V y 380V-400 V. 18
Club Saber Electrónica Nº 91
Figura 4
En la figura 5 podemos ver cómo se representa la formación de polaridad de mando en un circuito de lógica cableada; polarización con corriente continua y polarización con corriente alterna. En circuitos pequeños, con unos pocos relés la polaridad se arma mediante una guirnalda que va saltando entre los bornes que van conectados a la polaridad. En circuitos de lógica cableada mayores, como autómatas industriales, esta práctica es poco común ya que acarrea algunos inconvenientes en caso de falsos contactos en alguno de los bornes, lo que acarrea la perdida de la polaridad en toda la guirnalda, provocando una falla masiva del sistema. La solución a estos problemas consiste en armar barras de polaridad con borneras o regletas de conexión en puente, las que ya vienen provistas por los fabricantes de borneras. En la figura 6 podemos ver la distribución de polaridad positiva +P por medio de una guirnalda, y distribución por medio de una barra de polaridad construida con un bloque de borneras en puente. Figura 5
CAP 2 - Lógica cableada.qxd
9/11/12
10:04 AM
Página 19
Lógica Cableada & PLC
Figura 6
Servicios Esenciales: En lógicas cableadas para comando y control de servicios esenciales, la corriente continua se respalda con un banco de baterías del tipo estacionario. Si se ha tomado la decisión de usar corriente alterna, el comando y control de servicios esenciales se realiza con un oscilador o inversor CC/CA. En la figura 7 tenemos una formación de polaridad de mando en un circuito de lógica cableada de un servicio esencial, donde no puede detenerse el servicio en caso de corte de energía.
LOS MONTAJES CON LÓGICA CABLEADA
El montaje de la lógica cableada se realiza en gabinetes o armarios, donde sobre un fondo muerto o sobre rieles verticales, conocidos como rack en inglés de 19”, se atornillan en forma horizontal los llamados rieles asimétricos y simétricos, donde se instalan los relés, fuentes de alimentación, elementos de potencia como los contactores, y protección como portafusibles o llaFigura 7 ves termo-magnéticas. Los rieles más económicos son de chapa galvanizada, los de mejor calidad son de acero con un protección superficial de cadmio. Los cables de mando que van del gabinete de la lógica cableada a la planta o al campo, son cables armados, rígidos debido al fleje de protección mecánica y/o a una pantalla de cobre o aluminio, la cual es aterrada en ambos extremos. Esa rigidez impide realizar el cableado directamente hasta los bornes de los relés de la lógica cableada. Para resolver este problema se utilizan borneras frontera, donde llegan los cables armados desde la planta y salen hacia el interior del gabinete cables monopolares y flexibles, cables de mando o de potencia, figura 8. Para el ingreso de los cables al gabinete se emplean los llamados pasa cables o prensaestopas, que impiden la Figura 8 entrada de insectos, polvo y humedad al gabinete. Los Relés: En la lógica cableada, la mención de “relé” comprende diversos equipamientos eléctricos y electrónicos, de distinta tecnología y función. Todos estos equipos, aparatos o instrumentos, son considerados como “relés” en la medida de que cuenten con contactos eléctricos NA o NC de salida, y realicen una funCapítulo 2
19
CAP 2 - Lógica cableada.qxd
9/11/12
10:04 AM
Página 20
PLC & Autómatas Programables
ción particular de Lógica Cableada. Las entradas pueden ser bobinas, circuitos de medida de tensión, corriente, temperatura, nivel, accionamientos físicos y manuales, comandos remotos, por cable o por radiofrecuencia. Figura 9 Así por ejemplo, un relé puede ser un control de nivel o temperatura, un relé electromecánico, un contactor con contactos auxiliares, un relé de sub o sobre tensión, un relé de protección y decenas de otras funciones, que distintos fabricantes de equipamiento industrial catalogan como “relés”. La denominación relé comprende, además del relé electromecánico, a todo dispositivo eléctrico o electrónico con entradas analógicas o digitales, y con una o más salidas por contactos secos, figura 9. Al realizar un montaje, las borneas y relés en general, van montados sobre rieles, existiendo dos tipos básicos; el asimétrico y simétrico, también conocido como riel omega, figura 10.
Contactos “Normal Abierto” y “Normal Cerrado”: Los contactos eléctricos de los relés pueden ser contactos normalmente abiertos NA, o normalmente cerrados NC. En los esquemas de conexión y de principio siempre se dibuja el contacto en su posición de reposo, con la bobina del relé desenergizada o en OFF. El contacto NC se dibuja cerrado y el contacto NA se dibuja abierto. Los relés se dibujan sin energizar. En la figura 11 se pueden observar los símbolos de los elementos o componentes básicos utilizados en lógica cableada mientras que en la figura 12 se aprecia una de las formas de dibujar los contactos normal abierto, normal cerrado y la bobina de relé, y polaridad. Funciones Lógicas: Las funciones lógicas empleadas en la lógica cableada son las mismas que en los circuitos digitales o compuertas lógicas, figura 13. La denominada común20
Club Saber Electrónica Nº 91
Figura 10
Figura 11
mente repetición de contacto, “buffer” en un circuito digital. La inversión en un contacto normal cerrado, el NOT (negación) en circuito digital: El AND lógico (función “y”), lograda con contactos en serie. El OR lógico (función “o”), logrado con contactos en paralelo. Relé Automantenido: Un relé con auto-mantenimiento es un relé en donde un contacto auxiliar mantiene el relé energizado, luego de que el contacto de arranque cierra y abre. El contacto de parada tipo NC, desenergiza el relé. En la electrónica digital es equivalente a un Biestable o Flip-Flop.
Figura 12
CAP 2 - Lógica cableada.qxd
9/11/12
10:04 AM
Página 21
Lógica Cableada & PLC
Figura 13
porización a la conexión-desconecxión. En los dos últimos casos el relé temporizado deber alimentarse desde una conexión independiente a la de la bobina. Los contactos temporizados se representan mediante un paraguas que se opone al movimiento. Existen muchas funciones de tiempo o de temporización, pero tres de ellas son las más conocidas, la temporización al cierre, a la apertura y pulso o monoestable, figura 14. Debemos aclarar que todo circuito automático siempre cuenta con un mando manual para prueba, mantenimiento y emergencias. La selección se realiza con una llave selectora Manual-Automático, figura 15.
Señalización: La señalización comprende la indicación de los estados de marcha, parada, falla o defectos, posición de interruptores abiertos o cerrados para lo cual se emplean sistemas luminosos con lámpara incandescente o con LED, figura 16. La lámpara es energizada mediante contactos auxiliares de contactores e interruptores, o con relés que copian la posición de los mismos. En autómatas de relés de gran tamaño, la Figura 14 polaridad empleada para la señalizaTemporización: Existen relés temporizados de varios ción es independiente de la polaridad de mando, ya tipos, pero tres funciones básicas son; la temporización que un cortocircuito en un luminoso no debería dejar a la conexión, temporización a la desconexión y la temfuera de servicio el autómata. Para la señalización en pulsadores de mando y lámparas o luminosos, se emplean distintos colores. Cabe aclarar que en todo automatismo siempre es conveniente contar con la posibilidad de elegir entre un comando manual por pulsadores, y un comando automático por nivel, presión, temperatura, etc. La selección se realiza por llaves selectoras manual/automático. Figura 15 Capítulo 2
21
CAP 2 - Lógica cableada.qxd
9/11/12
10:04 AM
Página 22
PLC & Autómatas Programables
Por razones de seguridad de las personas y equipos, siempre se deja fuera de la selección el mano de parada manual y automática, por ejemplo por nivel bajo, a los efectos de prevenir que una bomba quede succionando en vació y se dañe. Las funciones de protección deben guardar en lo posible independencia de los circuitos de mando, de modo de funcionar con mandos en manual, en automático y en casos de falla. En el dibujo de la figura 15, el contacto kth de relé térmico y el flotador NV2 son elementos de protección en serie con el circuito de mando manual y automático.
Enclavamientos: Los enclavamientos impiden que dos órdenes de mando contradictorias tengan efecto simultáneamente. Existen muchas formas de realizarlo, eléctricamente en las botoneras o pulsadores de mando, entre relés, en el circuito de potencia y hasta mecánicamente entre motores con funciones opuestas, figura 17. Comando Secuencial: Como su nombre lo dice, un comando secuencial es un circuito con una secuencia de estados predeterminada, y dependientes de ciertas entradas del sistema (pulsadores, detectores, etc.). Las secuencia pueden ser fija, producidas por un reloj electromecánico (motor eléctrico con un reductor, levas y contactos de salida). Por ejemplo; los controles automáticos de las lavadoras domésticas, hornos de microondas, etc. Las secuencias no fijas, son producidas por cadenas de relés temporizados, donde al cumplirse el tiempo de retardo programado para un relé, se dispara el conteo de tiempo del relé temporizado correspondiente al estado siguiente. Para proyectar y diseñar sistemas de lógica cableada complejos, se emplean Diagrama de Flujo, donde los distintos estados del diagrama luego se ven reflejados en relés automantenidos, y las entradas se corresponden a pulsadores y detectores del circuito de mando. En la figura 18 se puede observar un ejem22
Club Saber Electrónica Nº 91
Figura 16
Figura 17 plo de comando secuencial con estados 1, 2, 3,..., accionados inicialmente por un pulsador. LOS CONTROLADORES LÓGICOS PROGRAMABLES Tal como adelantamos en el capítulo anterior, un Controlador Lógico Programable (PLC), es un microprocesador de aplicación específica para el control de procesos industriales. Podríamos decir que, programado adecuadamente, es la implementación (síntesis) “programada” de un sistema lógico. Nacen en la década del 70'. Figura 18
CAP 2 - Lógica cableada.qxd
Figura 19
9/11/12
10:04 AM
Página 23
Lógica Cableada & PLC
En la figura 19 se muestra un esquema típico de un sistema de control de lazo cerrado de un proceso industrial. Se pretende que el sistema simbolizado con el bloque Planta, presente un comportamiento determinado. La unidad de control “ve”, por medio de los sensores, como se comporta la planta y en función de esto decide el estado de sus salidas, que son las señales de control que vuelven a la planta. Un PLC es una unidad de control que incluye total o parcialmente las interfases con las señales de proceso. En la figura 20 se muestra una parte ampliada del esquema anterior.
Un PLC incluye el bloque Unidad de Control y uno o más de los dispositivos y bloques dibujados. Esto es: conversores A/D-D/A, relés, llaves, teclado, indicadores luminosos, salidas 7 segmentos, etc. Otra característica de un PLC es su hardware estándar con capacidad de conexión directa a las señales de campo (valores de tensión y corriente industriales, transductores, sensores, etc.) y programable por el usuario. Las ventajas son las siguientes: o Flexibilidad en la implementación (ampliación, modificación y depuración). o Permite el uso por parte de idóneos (no Figura 20 especialistas). o Gran rendimiento y sofisticación si lo usan especialistas. o Comunicación con otros PLCs y con computadoras de procesos. o Gran robustez para uso industrial (polvo, temperatura, humedad, vibraciones, ruido, etc.). Capítulo 2
23
CAP 2 - Lógica cableada.qxd
9/11/12
10:04 AM
Página 24
PLC & Autómatas Programables
La tendencia actual en el control de procesos complejos es utilizar PLC en red o como periférico de una computadora u ordenador, con lo cual se combinan la potencia de cálculo de la computadora y la facilidad de interfaces estándar que ofrece el PLC. El sistema así integrado ofrece las siguientes características: o Sistema programable con una gran potencia de cálculo. O Gran cantidad de software estándar para manipulación de datos y gestión de la producción. O Interfaces estándares de computadora para estaciones gráficas, utilizadas para monitorear el proceso. o Control descentralizado con inteligencia distribuida, sin interrupción de todo el proceso ante fallas del procesador central. O Sistemas de comunicación estándar (LAN o WAN). O Facilidad de interfaz con la planta. O Mantenimiento fácil por secciones. O Posibilidad de visualizar el proceso en tiempo real. O Flexibilidad para hacer cambios. O Programación sencilla a nivel de secciones. En forma genérica podemos esquematizar la estructura interna de un PLC como lo indica la figura 21. Unidad Central de Proceso: Está estructurada en base a un microprocesador, es la encargada de ejecutar el programa del usuario y de producir las transferen24
Club Saber Electrónica Nº 91
Figura 21
cias de datos desde las entradas y hacia las salidas. También es la encargada de gestionar la comunicación con otros periféricos. Toma las instrucciones una a una de la memoria, las decodifica y las ejecuta. En general el funcionamiento es tipo interpretado y la decodificación puede ser programada o cableada La primera opción, más económica, es frecuente en PLCs de menor complejidad mientras que la segunda, con diseños propios del fabricante, se utilizan tecnologías tipo “custom” para autómatas de mayor complejidad y logrando mejores tiempos de respuesta. Memoria del Controlador: En general podemos dividir la demanda de memoria en dos grandes grupos: o Datos del proceso: Señales de planta, entradas y salidas. Variables internas. Datos alfanuméricos y constantes. o Datos de control Programa del usuario. Configuración del PLC (cantidad de entradas/salidas conectadas, modo de funcionamiento, etc.). Para dar respuesta a esta demanda, los controladores hacen uso de distintos tipos de memoria según sea su capacidad de almacenamiento, su velocidad de acceso, su volatilidad, etc. En la tabla 1 se muestra un
CAP 2 - Lógica cableada.qxd
Tabla 1
9/11/12
10:04 AM
Página 25
Lógica Cableada & PLC
esquema de los tipos de memoria y la posible aplicación dentro de un PLC. En un PLC, la memoria interna es la que almacena el estado de las variables que maneja el autómata: entradas, salidas, contadores, temporizadores, marcas, señales de estado, etc. Esta memoria interna está caracterizada por la cantidad de bits que utiliza (cabe aclarar que emplearemos sólo parámetros que utilizan un bit para su almacenamiento, excepción hecha con los temporizadores, que utilizan más de un bit y que sí utilizaremos): o Posiciones de 1 bit Memoria imagen de entradas/salidas digitales (ejemplo: I0.2, Q1.2) Marcas (ejemplo: M23.8) Variables (ejemplo: V12.5) Relés (ejemplo: S3.2) o Posiciones de 8 bits (Byte-B), 16 bits (Palabra-W) o 32 bits (Palabra doble-D) Memoria imagen de entradas/salidas digitales (ejemplo: IB2, QB6) Entradas analógicas (ejemplo: AIW5) Salidas analógicas (ejemplo: AQW12) Marcas (ejemplo: MD18) Variables (ejemplo: VW12) Temporizadores (ejemplo: T32) Contadores (ejemplo: C20) Acumuladores (ejemplo: AC3) Para el procesamiento de la información proveniente de las entradas, el PLC utiliza lo que está almacenado en lo que se llama memoria imagen, que es la entrada “inmovilizada” durante el ciclo de procesamiento. Después de ejecutar cada ciclo, la CPU ordena
el intercambio de señales entre las interfaces E/S y la memoria imagen, de forma que, mientras dura la ejecución del ciclo (y los cálculos correspondientes), los estados y valores de las entradas considerados para el cómputo no son los actuales de la planta, sino los almacenados en la memoria imagen leídos en el ciclo anterior. De igual forma, los resultados obtenidos no son enviados directamente a la interfaz de salida, sino a la memoria imagen de salida (ó imagen del proceso), transfiriéndose a la interface, al terminar el ciclo.
Interfaces de Entrada Salida: Establecen la comunicación con la planta, permiten ingresar la información proveniente de los sensores, interruptores, etc. (entradas) y enviar información a motores, bombas, electroválvulas y accionamientos en general. Para esto, las interfaces deben filtrar, adaptar y codificar adecuadamente las señales. Las señales pueden clasificarse según distintas características: o Por tipo: Analógicas Digitales o Por la tensión de alimentación: Corriente continua (estáticas de 24V-110V) Corriente continua a colector abierto (PNP o NPN) Corriente alterna (60V-110V-220V) Salidas por relé (libres de tensión) O Por el aislamiento: Con separación galvánica (ejemplo: optoacopladas) Acoplamiento directo En los PLCs más sencillos encontramos una gama más limitada de opciones: O Entradas: Corriente continua 24V o 48V Corriente alterna 110V o 220V Capítulo 2
25
CAP 2 - Lógica cableada.qxd
9/11/12
10:04 AM
Página 26
PLC & Autómatas Programables
Analógicas de 0-10Vcc ó 4-20mA
O Salidas: Por relé Estáticas por triac a 220VCA máximo Analógicas de 0-10Vcc ó 4-20mA Fuente de alimentación: En general poseen dos tipos de fuentes de alimentación independiente: o Alimentación del PLC (CPU, memorias e interfaces) o Alimentación de las entradas y de las salidas (a veces por separado) CICLO DE FUNCIONAMIENTO Los controladores lógicos programables son máquinas secuenciales que deben modelar sistemas que son, muchas veces, de evolución concurrente. El PLC entonces, ejecuta en forma correlativa las instrucciones que están indicadas en el programa del usuario almacenado en su memoria. En general podemos decir que lee las entradas provenientes de la planta, ejecuta el programa con esos valores de entradas y genera las salidas (acciones) que controlan la planta. Esta secuencia se ejecuta continuamente para conseguir el control actualizado del proceso. En términos generales, la secuencia de operación del autómata se puede dividir en tres fases principales:
o Ejecutar el programa de usuario. En esta fase, la CPU ejecuta el programa desde la primera instrucción hasta la última (END). o Peticiones de comunicación. Durante esta fase del ciclo, la CPU procesa los mensajes que hubiera recibido por la interface de comunicación. o Autodiagnóstico. Durante el autodiagnóstico se comprueba el firmware de la CPU y la memoria del programa, así como el estado de los módulos de ampliación. o Escribir los valores de la imagen del proceso en las salidas digitales. El tiempo total que el PLC emplea para ejecutar un ciclo de operación se llama tiempo de ejecución de ciclo o más sencillamente tiempo de ciclo (scan time ). Para un determinado PLC, el tiempo de ciclo depende de: a) El número de entradas/salidas afectadas, b) La longitud del programa usuario y c) El número y tipo de periféricos conectados al PLC. Los tiempos empleados en chequeos y comprobaciones (autodiagnóstico) son del orden de 1 a 2 ms, valores similares se emplean en la atención de periféricos externos. Los tiempos de ejecución de instrucciones se miden en microsegundos (µs), resultando que el tiempo de ejecución del programa, depende del número y tipo de instrucciones. Este tiempo es un parámetro importante del PLC y se lo expresa en milisegundos por cada mil instrucciones (ms/K). Como dijimos, esto dependerá del tipo de instrucciones elegidas, por lo que el fabricante suele indicar las que utilizó como
o Lectura de señales desde la interfaz de entradas o Procesado del programa para la obtención de las señales de control Figura 22 o Escritura de señales en la interfaz de salidas. En particular, un PLC comercial puede seguir el ciclo mostrado en la figura 22: o Leer las entradas digitales. Al principio de cada ciclo se leen los valores actuales de las entradas digitales y las graba luego como “imagen de las entradas”. 26
Club Saber Electrónica Nº 91
CAP 2 - Lógica cableada.qxd
9/11/12
10:04 AM
Página 27
Lógica Cableada & PLC
base de cálculo y las proporciones de ellas utilizadas en el programa muestra. Son comunes valores de 5 a 15 ms/K, aunque con una tendencia muy marcada a su disminución (menos de 1 ms/K). Para un plc estándar, con unas 1000 instrucciones, podemos esperar un tiempo de ciclo total de 20 ms. Por último, para el cálculo de los tiempos finales, se deberán tener en cuenta una limitante importante, como lo es la lectura/escritura de señales de planta en las interfaces. Éstas incorporan retardos elevados en las conmutaciones (entre otros, debido a los filtros), por lo que valores típicos de frecuencias de trabajo son 100Hz o menor. IMAGEN DEL PROCESO DE LAS ENTRADAS Y SALIDAS Como se mencionara anteriormente, los accesos a las entradas y salidas se efectúan generalmente a través de las respectivas imagen de entrada e imagen del proceso y no de forma directa. Es decir, el proceso accede a registros donde se almacenan una réplica de las entradas y el resultado del proceso. Las razones principales de este procedimiento son:
1. Al leer desde la interface las entradas (al comienzo del ciclo) y grabarlas en la imagen de entrada, se sincronizan y congelan estos valores durante la fase de proceso. Finalmente, la imagen del proceso pasa a la interface de salida cuando se finaliza la ejecución del ciclo. Este procedimiento da “estabilidad” al sistema. 2. El programa de usuario tiene tiempos de acceso mucho menores a las “imágenes” que a las entradas y salidas físicas, con lo cual acelera su tiempo de ejecución.
3. Las entradas y salidas digitales son elementos que admiten señales binarias (sólo una línea binaria c/u) a las que se debe acceder en formato de bit. Sin embargo, la imagen del proceso permite acceder a ella en formato de bits, byte, palabra y palabra doble, lo que aumenta la flexibilidad y potencia de proceso. 4. En la imagen del proceso, puede haber direcciones no utilizadas como salidas físicas, que pueden utilizarse como marcas internas adicionales (variables internas). PROGRAMACIÓN DEL PLC Los PLCs admiten varios lenguajes de programación, que podemos clasificar en: Algebraicos o Lenguajes booleanos o Lista de instrucciones (en Siemens _ AWL) o Lenguajes de alto nivel Gráficos o Diagrama de contactos (en Siemens _ KOP) o Diagrama de funciones/bloques o Intérprete GRAFCET (GRAfico Funcional de Control de Estados y Trancisiones, similar a diagramas de Petri). En los PLCs que se utilizarán en el Laboratorio, están disponibles los lenguajes diagrama de contactos (KOP) y lista de instrucciones (AWL). Temporizadores: Un temporizador es un dispositivo capaz de retardar una orden de salida (activación o desactivación) durante un tiempo, en respuesta a una señal de mando de entrada. Figura 23 Haremos referencia a tres funciones distintas de temporización: Impulso. La salida se mantiene activa mientras dure la señal de mando (entrada) hasta un cierto tiempo máximo denominado tiempo de impulso, figura 23(a). Capítulo 2
27
CAP 2 - Lógica cableada.qxd
9/11/12
10:04 AM
Página 28
PLC & Autómatas Programables
Retardo de (a la) conexión. La salida se retarda (demora la subida de la salida) hasta que transcurra el tiempo de retardo, figura 23 (b). Retardo de (a la) desconexión. La salida conecta al mismo tiempo que se activa la entrada y se mantiene hasta un tiempo (tiempo de desconexión) de caer aquella, figura 23 (c). Figura 24
En el PLC 215 de Siemens, por ejemplo, hay disponibles temporizadores del tipo “retardo a la conexión” y viene especificado como se muestra en la figura 24, donde:
-Txx es la referencia al tipo de temporizador (y también el nombre simbólico) que hemos elegido (ejemplo: T32, T101, etc.). Cada temporizador tiene asociada una base de tiempo o resolución (en ms) que se consigna en una tabla del manual. Podemos ver un ejemplo en la tabla 2. -IN es la línea de habilitación, la que se deberá energizar en el momento que se desee que comience a temporizar. -PT es el valor de preselección. Este es un valor que el usuario define y coloca en el mismo diagrama para determinar el valor final de la cuenta. La función que Figura 26 relaciona estos parámetros es: Tiempo Total = PT · Base de tiempo [ms] En la figura 25 (a) se muestra el diagrama “ladder” de un temporizador excitado por el contacto I1.2, con una valor de preselección PT=20. Además, con un contacto normal abierto asociado al tempori28
Club Saber Electrónica Nº 91
zador, se excita una salida Q3.1. Se ha utilizado un temporizador T35 que, por Figura 2 manual, tiene una base de tiempo (o resolución) de 10 ms. En la figura 25 (b) se muestra el diagrama de evolución en el tiempo de los parámetros involucrados. Con este programa se logra que, luego de 200 milisegundos de que se cierra el contacto I1.2, se cierra el contacto T35 asociado al temporizador T35 y esto resulta en la excitación de la bobina Q3.1. En el diagrama también se observa que T35 baja (se abre el contacto T35) al bajar la señal de habilitación IN del temporizador (cuando se abre I1.2).
Ejemplo: Programar un PLC para que comande una luz L tal que, al pulsar P, se encienda por 10 minutos. Disponer Figura 25
CAP 2 - Lógica cableada.qxd
9/11/12
10:04 AM
Página 29
Lógica Cableada & PLC
dad del problema, en este caso se llevará a un diagrama “ladder” en forma directa aplicando una lógica de contactos (método tradicional generalmente utilizado por “idóneos” en fábrica). La figura 27 muestra el diagrama referido, realizado con el editor del STEP 7 Micro WIN (ambiente para la programación del PLC 215 de Siemens). Queda para el lector, la realización del diagrama “ladder” a partir de la red de Petri de la figura 26. Debe tener presente que la simulación a partir de las redes de Petri puede presentar aleatorios. Estos pueden eliminarse, dividiendo el programa en dos partes:
Figura 27
también otro pulsador A que, si se pulsa antes de transcurrido los 10 minutos de temporizado, apague la luz L. En la Figura 26, se dibuja el esquema del sistema y la red de “Petri” que describe el comportamiento pedido. La red de Petri dibujada, puede llevarse al PLC aplicando los métodos visto en clases, sobre síntesis de una red de Petri en un PLC. Sin embargo, dada la simplici-
a) el que representa el disparo de las transiciones y b) el que representa el marcado y desmarcado de los lugares. Nota: Una Red de Petri es una representación matemática o gráfica de un sistema a eventos discretos en el cual se puede describir la topología de un sistema distribuido, paralelo o concurrente. La red de Petri esencial fue definida en la década de los años 1960 por Carl Adam Petri. Son una generalización de la teoría de autómatas que permite expresar un sistema a eventos concurrentes. ☺
Capítulo 2
29
CAP 2 - Lógica cableada.qxd
9/11/12
10:04 AM
Página 30
cap 3 - ladder.qxd
9/10/12
12:27 PM
Página 31
Capítulo 3
El lenguaje LADDER, también denominado lenguaje de contactos o en escalera, es un lenguaje de programación gráfico muy popular dentro de los autómatas programables debido a que está basado en los esquemas eléctricos de control clásicos. De este modo, con los conocimientos que todo técnico eléctrico posee, es muy fácil adaptarse a la programación en este tipo de lenguaje. Para programar un autómata con LADDER, además de estar familiarizado con las reglas de los circuitos de conmutación, es necesario conocer cada uno de los elementos que componen este lenguaje. En este capítulo se describen de modo general los más comunes.
EL LENGUAJE LADDER O EN ESCALERA
INTRODUCCIÓN
El denominado diagrama de contactos, lenguaje ladder o en escalera es un lenguaje gráfico, derivado del lenguaje de relés. Mediante símbolos representa contactos, bobinas, etc. Su principal ventaja es que los símbolos básicos están normalizados según el estándar IEC y son empleados por todos los fabricantes. Los símbolos básicos se muestran en la figura 1. En estos diagramas la línea vertical a la izquierda representa un conductor con tensión, y la línea vertical a la derecha representa un potencial de tierra (GND). En la figura 2 tenemos un ejemplo de programación en lenguaje ladder con su correspondiente
programa en lenguaje de instrucciones (derecha). Con este tipo de diagramas se describe normalmente la
Figura 1
Figura 2 Capítulo 3
31
cap 3 - ladder.qxd
9/10/12
12:27 PM
Página 32
PLC & Autómatas Programables
operación eléctrica de distintos tipos de OR X3 máquinas, y puede utilizarse para sintetizar un sistema de control y, con las herramientas de software adecuadas, realizar la programación del PLC. Se debe recordar que mientras que en el diagrama eléctrico todas las acciones ocurren simultáneamente, en el programa se realizan en forma secuencial, siguiendo el orden en que los "escalones" fueron escritos, y que a diferencia de los relés y contactos reales (cuyo número está determinado por la implementación física de estos elementos), en el PLC se puede considerar que existen infinitos contactos auxiliares para cada entrada, salida, relé auxiliar o interno, etc. En este tipo de lenguaje cada instrucción es un “escalón” del programa (de ahí el nombre ladder, que significa: escalera). LOS CONTACTOS
Las salidas en un programa ladder son equivalentes a las cargas (bobinas de relés, lámparas, etc.) de un circuito eléctrico. Se las identifica con la letra Figura 4 "S", "A" u otra letra, dependiendo de los fabricantes, y dos números que indicaran el modulo al cual pertenecen y la bornera al la cual están asociados, figura 4, por ejemplo: S0.1 -> Salida del módulo "0", conectado en el borne "1". S2.3 -> Salida del módulo "2", conectado en el borne "3". RELÉS INTERNOS O MARCAS
Los elementos a evaluar para decidir si se deben activar o no las salidas en determinado "escalón", son variables lógicas o binarias, que pueden tomar solo dos estados lógicos: 1 ó 0. Estos estados surgen del valor (estado) que toman las entradas del PLC o de relés internos del mismo. En la programación escalera (ladder), estas variables se representan por contactos, que justamente pueden estar en sólo dos estados: abierto o cerrado. Los contactos se representan con la letra "E" y dos números que indican el módulo al cual pertenecen y la bornera a la cual están conectados, figura 3: Los contactos cerrados (normalmente “cerrados”) al activarse se abrirán. Los contactos abiertos (normalmente “abiertos”) al activarse se cerrarán.
Como salidas en el programa para hacer funcionar a un PLC se toma no sólo a las que el equipo posee físicamente hacia el exterior (salidas externas), sino también las que se conocen como "Relés Internos o Marcas". Los relés internos son simplemente variables lógicas que se pueden usar, por ejemplo, para memorizar estados o como acumuladores de resultados que se utilizarán posteriormente en el programa. Se las identifica con la letra Figura 5 "M" y un número el cual servirá para asociarla a algún evento, tal como mostramos en la figura 5. Siempre una marca tendrá asociado un contacto. En la figura 6 tenemos un ejemplo para el uso de una “marca” donde el estado de la salida “M50”
Figura 3 32
Club Saber Electrónica Nº 91
Figura 6
cap 3 - ladder.qxd
9/10/12
12:27 PM
Página 33
El Lenguaje Ladder o en Escalera
depende directamente de la entrada E0.0, pero esta salida no está conectada a un borne del módulo de salidas, es una marca interna del programa. Mientras que el estado de la salida S1.2 es el resultado del estado que tiene el contacto M50. Así por ejemplo, cada vez que se cierre el contacto E0.0, se modificará el estado virtual de la marca (estado de M50) y cuando se cumplan las condiciones establecidas en dicha variable el contacto M50 se cerrará y se activará la salida S1.2. Las marcas remanentes son aquellas que en el caso de haber un fallo de tensión, cuando se restablece recuerdan su estado anterior, o sea, si estaban a 1 se pondrán a 1 solas (las salidas NO son remanentes). En la figura 7 tenemos un ejemplo.
Figura 7 FUNCIONES LÓGICAS Las funciones lógicas más complejas como: temporizadores, contadores, registros de desplazamiento, etc. se representan en formato de bloques. Estos no están normalizados, aunque guardan una gran similitud entre sí para distintos fabricantes. Resultan mucho más expresivos que si se utiliza para el mismo fin el lenguaje en lista de instrucciones. Sobre estos bloques se define: * La base de los tiempos y el tiempo final en el caso de temporizadores. * El módulo de conteo y condiciones de paro y reset en el caso de contadores. * Existen también bloques funcionales complejos que permiten la manipulación de datos y las operaciones con variables digitales de varios bits.
La presencia de estos bloques de ejecución dependiente de una o más condiciones binarias, multiplica la potencia de programación sin dejar de mantener las ventajas de la representación gráfica del programa. Así, pueden programarse situaciones de automatización compleja que involucren variables digitales, registros, transferencias, comparaciones, señales analógicas, etc. No todos los PLCs, aun del mismo fabricante, pueden manejar todas las posibilidades de programación con contactos; solo las gamas más altas acceden a la totalidad de extensiones del lenguaje. LOS TEMPORIZADORES Como lo indica su nombre, cada vez que alcanzan cierto valor de tiempo activan un contacto interno. Dicho valor de tiempo, denominado PRESET o meta, debe ser declarado por el usuario. Luego de haberse indicado el tiempo de meta, se le debe indicar con cuáles condiciones debe empezar a temporizar, o sea a contar el tiempo. Para ello, los temporizadores tienen una entrada denominada START o inicio, a la cual deben llegar los contactos o entradas que sirven como condición de arranque. Dichas condiciones, igual que cualquier otro renglón de programa ladder, pueden contener varios contactos en serie, en paralelo, normalmente abiertos o normalmente cerrados. Una de las tantas formas de representación es la mostrada en la figura 8. Figura 8
Las operaciones de tiempo permiten programar los temporizadores internos del autómata. Existen diversos tipos de temporizadores y para utilizarlos se deben ajustar una serie de parámetros: Capítulo 3
33
cap 3 - ladder.qxd
9/10/12
12:27 PM
Página 34
PLC & Autómatas Programables
* Arranque del temporizador: conjunto de contactos que activan el temporizador, conectados como se desee. * Carga del tiempo: la forma habitual es mediante una constante de tiempo, pero pueden haber otros ajustes, por ejemplo, leyendo las entradas, un valor de una base de datos, etc.
Esta carga del valor se debe realizar con la instrucción L que lo almacena en una zona de memoria llamada acumulador (AKKU1) para luego transferirlo al temporizador. El formato para este bloque sería: L KT xxx.y
A continuación definimos diferentes tipos de temporizadores: SE - Con retardo a la conexión. SS - Con retardo a la conexión activado por impulso en set. SI - mientras mantenemos conectada la señal set, la salida estará activa durante KT. SV - mantiene la salida activa durante la cuenta KT. Temporizador SE: “retardo a la conexión manteniendo la entrada set a 1”. La entrada reset desconecta el temporizador. Su símbolo y uso se muestra en la figura 9. Figura 9
Dónde: KT es una constante de tiempo. La letra K se emplea para señalizar que el valor que le sigue es una constante (en este caso, una constante de tiempo). xxx es el tiempo (máximo 999) y es la base de tiempo; si y=0 el temporizador cuenta centésimas de segundo; si y = 1 el temporizador cuenta décimas de segundo; si y = 2 el temporizador cuenta segundos; si y=3 el temporizador cuenta de a diez segundos. Por ejemplo sea: KT 654.1 Esto significa que el temporizador contará 654 décimas de segundo (ya que xxx = 654 e y=1), o sea 65,4 segundos. Otro ejemplo sería:
Temporizador SS: “retardo a la conexión activado por impulso en set”. Sólo se desconectará la salida por la entrada reset. Su símbolo y uso se muestra en la figura 10. Figura 10
KT 328.2 Significa que el temporizador contará 328 segundos. Los temporizadores se denominan “T0…MAX”. El número MAX de temporizadores internos que puede tener el PLC depende del fabricante. La función “paro del temporizador” es opcional y pone a cero el valor contado en el temporizador. 34
Club Saber Electrónica Nº 91
Temporizador SI: En este tipo de temporizador, “mientras mantenemos conectada la señal set, la salida estará activa durante KT”. Su símbolo y uso se muestra en la figura 11.
cap 3 - ladder.qxd
9/10/12
12:27 PM
Página 35
El Lenguaje Ladder o en Escalera Figura 11
Temporizador SV: mantiene la salida activa durante KT independientemente del tiempo de la señal set esté activa. Su símbolo y uso se muestra en la figura 12. Figura 12
LOS CONTADORES Se trata de contadores virtuales, definidos como posiciones de memoria que almacenan un valor numérico, mismo que se incrementa o decrementa según la configuración dada a dicho contador. Como los temporizadores, un contador debe tener un valor prefijado como meta o PRESET, el cual es un número que el usuario programa para que dicho contador sea activo o inactivo según el valor alcanzado. Por ejemplo, si el contador tiene un preset de 15 y el valor del conteo va en 14, se dice que el contador se encuentra inactivo, sin que por ello se quiera decir que no esté contando. Pero al siguiente Figura 13
pulso, cuando el valor llegue a 15, se dice que el contador es activo porque ha llegado al valor de preset, figura 13. Dependiendo del software, puede ocurrir que el contador empiece en su valor de preset y cuente hacia abajo hasta llegar a cero, momento en el cual se hace activo. Los contadores nos permitirán contar y/o descontar impulsos que enviemos al contacto que lo activa (por ejemplo, número de botes, sacos, piezas, etc.) entre 0 y 999. Los parámetros son: Z0... MAX - número de contador. ZV - incrementa el valor del contador (no supera el valor 999). ZR - decrementa el valor del contador (no decrementa por debajo de 0). S - carga el valor inicial en el contador. KZ xxx - valor inicial. R - resetea el valor del contador. La salida del contador estará a “1” siempre que el valor del contador sea diferente de “0”. Vea en la figura 14 un ejemplo de uso de contadores. En la figura 15 tenemos un ejemplo en el que se desea conectar una salida al accionar el pulsador de marcha 3 veces y pararla al pulsar el de paro 2 veces.
Figura 14 Capítulo 3
35
cap 3 - ladder.qxd
9/10/12
12:27 PM
Página 36
PLC & Autómatas Programables
etc. Todas ellas utilizan valores que están contenidos en registros de memoria referenciados a contadores, entradas, salidas, temporizadores y demás. Las funciones matemáticas son usadas especialmente para la manipulación de variables analógicas. Las operaciones aritméticas con números enteros son representadas por cajas (boxes) en las que se indica la operación a efectuar y los operandos. El funcionamiento sigue las reglas generales del diagrama de contactos, cuando se cierra el contacto XXX se realiza la operación. Figura 15 En la figura 17 podemos ver un ejemplo en el que se representa un bloque sumador que responde a la siguiente ecuación:
MONOESTABLES
El monoestable es un elemento capaz de mantener activada una salida durante el tiempo con el que se haya programado, desactivándola automáticamente una vez concluido dicho tiempo. Una de sus principales ventajas es su sencillez ya que sólo posee una entrada y una salida como podemos observar en la figura 16, Figura 16 donde: Mip: tiempo. Mib: base de tiempos. Entrada STAR (S): Cuando se activa o se le proporciona un impulso comienza la cuenta que tiene programada. Salida RUNNING (R): Se mantiene activada mientras dura la cuenta y se desactiva al finalizarla. Al igual que con el temporizador, para programar la cuenta hay que introducir los valores de Mip y Mib.
Suma -> REG7 = REG1 + REG2
Figura 17 En este ejemplo se suman los contenidos de las memorias de datos REG1 Y REG2 y se almacena el resultado en REG7, cuando la condición XXX se vuelve verdadera (se cierra el contacto XXX). En la figura 18 podemos ver otro ejemplo en el que se representa un bloque restador que responde a la siguiente ecuación: Resta -> REG72 = REG11 + REG21
LAS OPERACIONES ARITMÉTICAS Al programar un PLC se pueden hacer operaciones matemáticas como sumas, restas, comparaciones, multiplicaciones, divisiones, desplazamientos de bits, 36
Club Saber Electrónica Nº 91
Figura 18
cap 3 - ladder.qxd
9/10/12
12:27 PM
Página 37
El Lenguaje Ladder o en Escalera
En la figura 19 se representa un bloque multiplicador que responde a la siguiente ecuación: Multiplicación -> REG47 = REG41 x 15
Figura 21
Figura 19 Recuerde que K es el “elemento que usamos” para señalizar que el valor que sigue representa una constante. Una división se representa como se muestra en la figura 20, bloque que responde a la ecuación: División -> REG85 = REG41 / REG20
OPERACIONES DE COMPARACIÓN Un comparador es una instrucción que nos permitirá relacionar dos datos del mismo formato (BYTE o WORD) entre sí. Las comparaciones pueden ser: != F -> igualdad >
desigualdad >F -> mayor menor >=F -> mayor o igual <=F -> menor o igual En la figura 22 podemos observar cómo se representan estas instrucciones junto con un ejemplo de uso en un programa.
Figura 20 También se pueden representar otras operaciones, como “raíz cuadrada” que se reconoce mediante el término SQRT y se simboliza de la manera dibujada en la figura 21. Tal “programación” responde a la ecuación: Raíz Cuadrada -> REG23 = SQRT (REG11) Aquí se obtiene la raíz cuadrada del número almacenado en el registro REG11 y el resultado se almacena en el registro REG23.
Figura 22
INSTRUCCIONES SET Y RESET La instrucción SET activa la bobina correspondiente cada vez que enviamos un IMPULSO al bloque correspondiente, y sólo se desactivará al enviar otro a la instrucción RESET, figura 23. Podemos activar tanto salidas como marcas internas. Capítulo 3
37
cap 3 - ladder.qxd
9/10/12
12:27 PM
Página 38
PLC & Autómatas Programables
tactos en serie, conviene usar la conexión paralelo de las bobinas, ya que el programa se ejecuta en menor tiempo, figura 26.
Figura 23 PROGRAMACIÓN EN LENGUAJE LADDER En el próximo capítulo explicaremos cómo se realiza una programación en lenguaje ladder, empleando un software que podrá bajar gratuitamente de la web y que le permitirá, entre otras cosas, simular la rutina para saber si cometió errores o si hace lo que Ud. pretende. Sin embargo, a continuación veremos cómo es el procedimiento de programación y algunas limitaciones. Las bobinas, por ejemplo, pueden ir precedidas de contactos, pero no pueden estar seguidas por ninguno, figura 24.
Figura 26
La diferencia ocurre cuando se utilizan contactos auxiliares, ya que debe prestarse atención al orden en que se ubican las bobinas. Por ejemplo, en el programa de la figura 27, si adoptáramos la segunda alternativa de conexión (segundo escalón de programación) sucedería que, una vez actuada la salida O001, ya nunca se activaría la salida O000, dado que el contacto invertido de la salida O001 quedaría definitivamente abierto.
Figura 24 Lo mismo se aplica a los bloques “Función”, como ser el bloque función transferencia, ya que se comporta como una bobina, figura 25.
Figura 27 La cantidad de uniones "llamadas NODOS" están limitadas, no puede superar cierto número. En la figura 28 podemos observar otra rutina programada en ladder en la que existen dos nodos.
Figura 25
Sin embargo hay una conexión que es posible realizar en ladder pero imposible en un tablero. Las bobinas pueden ser conectadas en serie comportándose en forma similar que si estuvieran en paralelo. Si en el circuito de activación de las bobinas existen varios con38
Club Saber Electrónica Nº 91
Figura 28
cap 3 - ladder.qxd
9/10/12
12:27 PM
Página 39
El Lenguaje Ladder o en Escalera
Los bloques Timer, Contadores, etc. sólo pueden aparecer una vez en el programa, sin embargo, pueden utilizarse contactos y bobinas referidos a éstos en cualquier parte. No pueden editarse dos bloques Timer, Contadores, etc. con el mismo número. Si las bobinas son conectadas directamente a la barra de la izquierda, entonces se las considera permanentemente activadas. Por supuesto, esto siempre que esa parte del programa esté siendo ejecutada. En algunos PLC esto esta Prohibido, debe colocarse un contacto entre la entrada y la bobina, figura 29.
Figura 31
EJEMPLO DE PROGRAMACIÓN Figura 29
A los fines prácticos, en las figura 30 y 31 tenemos un ejemplo de programación en ladder con el uso de contactos externos en un PLC y el diagrama de conexión de dicho PLC en las borneras de entrada y de salida. La figura 30 representa la forma de hacer un enclavamiento de alguna máquina usando dos pulsadores NA.
Sobre una cinta transportadora impulsada por un motor M, se transportan cajas las cuales deberán detenerse bajo una tolva al ser detectadas por un sensor D. Una vez detenida la caja bajo la tolva, se abrirá una esclusa (mediante el contactor K1) durante 10 segundos, tiempo en el cual la caja se llena. Pasado este tiempo, la esclusa deberá cerrarse y la cinta comenzara a moverse quitando la caja de esa posición. Este proceso se deberá repetir cuando pase otra caja bajo la tolva y se muestra en la figura 32. Figura 32
Figura 30
Note que en la figura 31 empleamos un contacto normal abierto y otro normal cerrado y que en ambos casos, externamente no existe el contacto S0.1, dado que, como vimos, es un contacto interno del PLC que responde al estado en que se encuentra una salida.
Vamos a realizar el denominado “cuadro de asignaciones y el programa en diagrama escalera o lenguaje ladder. Nota: La esclusa se abre cuando es activado el contactor K1 y se cierra al desactivarse éste. La cinta esta funcionando siempre, salvo cuando una se detecta una caja. Capítulo 3
39
cap 3 - ladder.qxd
Tabla 1
9/10/12
12:27 PM
Página 40
PLC & Autómatas Programables Figura 33
El cuadro de asignaciones es una tabla en la que se detallan los elementos que voy a usar en el programa, ya sea mediante el símbolo que emplearé en el diagrama escalera y su correspondiente denominación. Para el ejemplo que estamos siguiendo, el diagrama de asignaciones se muestra en la tabla 1. Si bien cada “programador” puede usar una rutina diferente, en la figura 33 podemos observar el diagrama en escalera que ejemplifica la rutina que debemos llevar a cabo. ☺
40
Club Saber Electrónica Nº 91
CAP 4 - Programación.qxd
9/10/12
2:16 PM
Página 41
Capítulo 4
Para empezar a programar un PLC necesitamos conocer bajo qué ambiente de programación lo haremos. Normalmente ese ambiente de programación es gráfico, se lo conoce con el nombre de “Lenguaje en Escalera”, pero su título oficial es el de Diagrama de Contactos. La forma en que se estructura dicho lenguaje la hemos visto en el capítulo anterior razón por la cual “es hora de practicar” y, para ello, proponemos que descargue un software gratuito que no sólo le permitirá hacer rutinas en lenguaje ladder sino que también podrá simular el funcionamiento de dicho programa para asegurarse que el mismo funcione como lo ha planificado. Cabe aclarar que existen diversos lenguajes de programación para los PLCs, pero el llamado Lenguaje en Escalera es el más común y prácticamente todos los fabricantes de PLC lo incorporan como lenguaje básico de programación
EDICIÓN DE PROGRAMAS Y SIMULACIÓN INTRODUCCIÓN
Figura 1
El Lenguaje en Escalera es el mismo para todos los modelos existentes de PLC, lo que cambia de fabricante a fabricante o de modelo a modelo es el microcontrolador que emplea el autómata, y por esta razón lo que difiere entre los PLCs es la forma en que el software interpreta los símbolos de los contactos en Lenguaje en Escalera. El software de programación es el encargado de generar el código en ensamblador del microcontrolador que posee el PLC. Por ejemplo existen fabricantes de PLC que emplean un microcontrolaCapítulo 4
41
CAP 4 - Programación.qxd
9/10/12
2:16 PM
Página 42
PLC & Autómatas Programables
dores HC11 de motorola® ó el Z80® de Intel ó los PIC de Microchip® ó los AVR de Atmel®, etc. Para cada PLC, el código que se crea es diferente, ya que por naturaleza propia los códigos de los microcontroladores son diferentes, aunque el Lenguaje en Escalera sea el mismo para todos los PLCs. En este capítulo describiremos el uso del software de programación del PLC publicado en diversas oportunidades en Saber Electrónica y que le servirá como práctica ya que aprendiendo a programar con este utilitario (llamado MI PLC, figura 1) podrá programar cualquier PLC, sin importar qué software entregue el fabricante y que puede ser tan caro y/o sofisticado como el mostrado en la figura 2. Figura 2
Como ya mencionamos en líneas anteriores, el código que se genera a partir del programa que haga en lenguaje escalera es diferente para las distintas marcas de PLC, pero el lenguaje en escalera es el mismo para todos los autómatas, y al final de cuentas eso es lo que nos interesa para programar un PLC. Si aprendemos a programar uno de la marca Siemens®, de manera implícita estaremos obteniendo el mismo conocimiento para programar uno de la marca GE-Fanuc® o Festo®, y así sucesivamente. El Lenguaje Escalera es funcional para cualquier PLC, y por lo tanto solo debemos tomar en cuenta la cantidad de entradas y salidas que posea el PLC. Para programar el PLC con una aplicación industrial ó con un programa de prueba como los que estaremos desarrollando en esta serie de ejemplos; la primer acción que tenemos que realizar es abrir el software de 42
Club Saber Electrónica Nº 91
programación “Mi Plc” que previamente tuvo que ser instalado en el disco duro de su computadora. Este programa lo pueden descargar gratuitamente de la página de Saber Electrónica, cuya dirección es www.webelectronica.com.mx, debe hacer clic en el ícono password e ingresar la clave “progplc”. Una vez descargado el programa en su computadora, hacemos doble clic sobre el ícono del software de programación Mi Plc (figura 3) y aparece una ventana de bienvenida en la cual se observan los datos de la empresa fabricante del PLC, sus correos electrónicos y el número de teléfono por si gustan contactarlos directamente; para ingresar al programa, figura 4, se debe hacer clic sobre el botón OK. Figura 3
Figura 4
Aclaramos que este programa lo usamos en Saber Electrónica desde hace más de 10 años junto con un PLC que oportunamente publicamos. Lo fácil que resulta el manejo de este programa nos ha motivado a seguir usándolo para enseñar el lenguaje escalera. Lo interesante, además, es que no sólo puede aprender a programar sino que podrá descargar el código dentro del PLC, también puede guardar el archivo y luego “convertirlo” para que pueda abrirlo en el programa de gestión de otro PLC (no siempre esto es posible) o simplemente puede usarlo para practicar, que es lo que proponemos en este capítulo. Si quisiera descargar el código que genere dentro
CAP 4 - Programación.qxd
9/10/12
2:16 PM
Página 43
Edición de Programas y Simulación
del PLC, ya dentro del programa del PLC tenemos que dirigirnos al menú de herramientas y seleccionar el que se llama Puerto Serie; como paso siguiente, se tiene que seleccionar la opción de Configurar Puerto, tal como se ilustra en la figura 5.
Figura 6
Figura 5 La acción anterior provocará que se abra la ventana etiquetada como setup, en la cual configuramos las características de la comunicación serial que se establecerá entre el PLC y la computadora, por lo que normalmente se dejan los datos que se ilustran en la figura 6, y cuando ya tenemos ingresados estos datos, oprimimos con el apuntador del ratón sobre el cuadro OK, lo que provocará que se abra el canal de comunicación serial. Podemos decir con toda seguridad que el software de nuestro PLC ya ha sido configurado adecuadamente para que éste pueda operar; por lo tanto, lo que sigue es ingresar los símbolos correspondientes al programa. Si su computadora no tuviera puerto serial, deberá usar un cable adaptador de puerto serial a puerto USB, al respecto recomendamos que dicho cable tenga en su circuito un chip de la familia FTDI ya que los que son de la familia Prolific no siempre funcionan correctamente (sobre todo en Windows 7). En la figura 7 se observa la imagen del software de programación de PLC donde se identifican las partes que lo componen y son las siguien-
tes: menú de herramientas, botones de acceso rápido, los menús específicos de trabajo y el estado de la actividad existente entre el PLC y la computadora. Como primer paso para comenzar con un programa se tiene que crear un nuevo proyecto, por lo que nos dirigimos al menú Proyecto, y posteriormente al comando Nuevo, tal como se ilustra en la figura 8. Figura 8
Figura 7 Capítulo 4
43
CAP 4 - Programación.qxd
9/10/12
2:16 PM
Página 44
PLC & Autómatas Programables
En forma automática se abre un escalón de programación, figura 9, de modo que ya estamos en posibilidad de comenzar a insertar los símbolos correspondientes al lenguaje en escalera para formar nuestro programa. Ahora seleccionamos el menú específico de trabajo denominado “Elementos”, ya que en esa sección se tienen los símbolos que representan las operaciones que el programa tiene que ir interpretando; a continuación, iremos describiendo símbolo por símbolo. El primer conjunto de símbolos corresponde a variables de señales de entrada, figura 10. Estas se denominan como contacto normalmente abierto (N.A.) y contacto normalmente cerrado (N.C), y su función principal es la de informar al PLC el estado lógico en que se encuentran las variables físicas que son captadas a través de sensores, y al igual que los contactos de un relevador, cuando éste se encuentra desenergizado el contacto N.A. se encuentra abierto, mientras que el contacto N.C. se encuentra cerrado, y cuando se activan el contacto N.A. se cierra y el contacto N.C. se abre, o dicho en otras palabras, existe un cambio de estado cuando los contactos son manipulados. Estos contactos constituyen las “CONDICIONES” que sirven para generar la lógica de programación del PLC, ya que es a través de éstos que se implementan las funciones lógicas que el programa de control de algún proceso industrial utiliza. Para insertar alguno de estos símbolos basta con seleccionarlo con el apuntador del ratón y darle clic con el botón izquierdo; esta acción provocará que se abra una ventana preguntando qué tipo de entrada es (figura 11), por lo que aquí seleccionaremos si se trata de una entrada a través de los bornes de conexión 44
Club Saber Electrónica Nº 91
Figura 9
Figura 10
Figura 11
CAP 4 - Programación.qxd
9/10/12
2:16 PM
Página 45
Edición de Programas y Simulación
(entrada física) o se trata de una entrada interna (estado generado por alguna operación interna del PLC). Una vez seleccionado el tipo de entrada tendremos que decirle de dónde leerá la información, por lo que tenemos que seleccionar el origen de la entrada (ya sea física o interna) y por último asignarle una etiqueta que corresponda con la información que está leyendo. El segundo conjunto de símbolos corresponde a variables de salida, figura 12, las que a su vez activarán elementos de potencia, los cuales pueden ser motores de CD o de CA, calefactores, pistones, lámparas, etc. Los símbolos que se emplean para representar a las salidas en el lenguaje en escalera tienen el mismo significado que en un diagrama eléctrico tiene la bobina de un relevador, y lo mismo que sucede con uno real para que se energice, se tienen que cumplir ciertas condiciones lógicas previas, así sea el accionamiento de un botón. Los símbolos que activan a las salidas constituyen las “ACCIONES” que todo proceso industrial debe efectuar, esto es para modificar las variables físicas que se encuentran interviniendo en cualquier línea de producción. Las salidas, dependiendo de cómo se lleve a cabo su manejo de memoria, reciben los nombres de salida momentánea o salida memorizada. La salida momentánea nos representa un estado lógico que hará encender o apagar cualquier elemento actuador; esta salida se caracteriza por el modo de operación, que nos dice que para tener un “1” lógico a la salida es requisito indispensable que las CONDICIONES que prevalecen a la entrada se mantengan todo el tiempo que sea necesario para que ese “1”
lógico exista; de cualquier otra forma, lo que se tendrá es un “0” lógico a la salida. La salida memorizada contiene de manera implícita una memoria, la cual es de mucha utilidad para mantener el estado de “1” lógico durante todo el periodo de tiempo que el proceso así lo requiera, y lo único que se tiene que hacer es activar la salida con memoria. Cuando se activa la salida memorizada no importa que cambien las CONDICIONES, el estado de “1” lógico no se modifica. Ahora bien, Figura 12 cuando sea necesario que se tenga que cancelar la memoria o también se puede expresar que se apagará la salida, ó se llevará al estado de “0” lógico, lo que se tiene que realizar es accionar la desactivación correspondiente. Cuando se utiliza una salida se tienen dos posibilidades de configurarla: un tipo de salida es como externa, por lo que la definiremos como salida, y para ello le indicaremos a qué terminal física del bornero de conexión está reflejándose su actividad. El segundo tipo de salida es considerada como interna y se denomina como marca, y lo que representa es que esta marca es una condición interna del programa de control que no tiene reflejo hacia algún elemento actuador. Según lo dicho, cuando emplee una salida, se abrirá una ventana de configuración como la mostrada en la figura 13.
Figura 13 Cabe mencionar que para el programa del PLC que empleamos en Saber Electrónica, se permite tener tan Capítulo 4
45
CAP 4 - Programación.qxd
9/10/12
2:16 PM
Página 46
PLC & Autómatas Programables
solo un diferente símbolo de salida, y si requerimos más de uno, se necesita abrir tantos escalones como salidas tengamos en nuestro proceso. El tercer conjunto de símbolos está compuesto por uno solo y se trata del temporizador, el cual es una herramienta que tiene la función de activar el conteo de un intervalo de tiempo que tiene como base 1 segundo; el tiempo máximo que se puede fijar es de 255 segundos. El temporizador es una gran ayuda, sobre todo cuando se pretende establecer una condición de seguridad para el operador, por ejemplo, cuando haya transcurrido un tiempo de algunos segundos sin que exista respuesta alguna; entonces, el accionamiento de los botones de control no responderán sino hasta que el proceso se restablezca. El temporizador, una vez que es activado, comienza a cuantificar el tiempo de forma descendente, y cuando llega a 0 segundos origina una salida interna con el estado de 1 lógico, cancelándose esta salida cuando se restablece el temporizador. En la figura 14 podemos observar el elemento “temporizador” en la barra de menú del programa Mi PLC.
prefijado para colocar en 0 lógico la salida interna del contador. Este se debe reinicializar para poder comenzar con un nuevo proceso de conteo. Para programar un contador en un ciclo de trabajo de un PLC tendremos dos elementos, figura 15, uno que incrementa el estado de un contador ante un evento y otro que reestablece el contador.
Figura 15 El quinto conjunto de símbolos está integrado por dos herramientas, una que sirve para diseñar funciones que operen como subrutinas y otra que sirve para saltar un escalón, que es lo mismo que inhabilitarlo y su lugar en la barra de menú del programa Mi PLC se muestra en la figura 16.
Figura 14 El cuarto conjunto de símbolos sirve para utilizar la herramienta que tiene la función de contar eventos. A este contador se le tiene que fijar cuál es el valor máximo al que tiene que llegar, lo cual depende del PLC, pero normalmente para controlar el proceso de llenado de una caja con productos no se requieren valores muy altos. Una vez que fue activado y llega a su conteo máximo, se origina una salida interna con el estado de 1 lógico avisando que ha llegado al valor de conteo 46
Club Saber Electrónica Nº 91
Figura 16 Las subrutinas se emplean cuando en el desarrollo de nuestra aplicación existen condiciones que se repiten más de una vez, y si las ingresamos en cada escalón diferente nos llevaría a incrementar enormemente nuestro programa, razón por la cual para simplificarlo se
CAP 4 - Programación.qxd
9/10/12
2:16 PM
Página 47
Edición de Programas y Simulación
diseña una función que internamente contenga toda la lógica de control que se repite constantemente y posteriormente sólo se llama y ya no se ingresan todos los símbolos. La segunda herramienta, que sirve para saltar un escalón, se emplea cuando, dependiendo del contexto del programa de control lógico, una condición se lleva a cabo que conlleva el seleccionar uno de dos o más caminos, por lo que se selecciona el adecuado y se eliminan los demás. El sexto y último conjunto de símbolos sirve para realizar bifurcaciones cuando se están ingresando los contactos, ya sean N.A. o N.C. Estos símbolos sirven para abrir una rama y también para cerrarla, figura 17. Figura 17
Una vez que hayamos ingresado todos los símbolos de nuestro programa en lenguaje en escalera, es recomendable antes de programar al PLC simular las funciones lógicas y tener la certeza de que nuestra lógica
funciona, por lo que hacemos uso de la tecla de acceso rápido correspondiente. Como respuesta de la acción anterior, se provocará que una ventana se abra, figura 18, visualizando ahí el estado que guardan todas las entradas, salidas, temporizadores, contadores, etc. Para realizar la simulación de nuestro programa tenemos que ir manipulando en el recuadro correspondiente las condiciones, o sea las entradas y tan solo basta con que coloquemos el apuntador del ratón y oprimamos el botón izquierdo del mismo para cambiar el estado lógico que contenía. Cuando se ha simulado el programa y éste ejecuta todas las condiciones lógicas que le programamos, ya estamos en posibilidad de cargar el programa al PLC, por lo que ahora conectamos el cable de programación tanto al puerto serie de la computadora (o al puerto USB a través de un adaptador) como a la terminal correspondiente del PLC, y para ello hacemos uso del botón de acceso rápido como se muestra en la figura 19. Pues bien, aquí se Figura 19 ha descrito lo que corresponde al ambiente gráfico del programa de nuestro PLC, pero lo importante para aprender a programar es que uno realice los ejercicios que hemos propuesto a lo largo de este libro, y aunque no posea algún PLC, basta con el software para practicar, ya que éste contiene un simulador. Por otra parte, también es digno de mencionarse que si en un futuro pretenden programar un PLC de otra marca y con otras características, no existe el mayor problema ya que al aprender el lenguaje en escalera, prácticamente están aprendiendo a programar cualquier PLC. Esto es porque el lenguaje en escalera es Figura 18 universal para todos. ☺ Capítulo 4
47
CAP 4 - Programación.qxd
9/10/12
2:16 PM
Página 48
ASISTA A LOS TALLERES DE E LECTRÓNICA
s ca s o y P te Mu can Va • APRENDA ELECTRÓNICA DIGITAL
• APRENDA PICAXE DESDE CERO
• ENERGÍA SOLAR Y ROBÓTICA BEAM • ALARMAS, AUTOMATISMOS Y PLC
Ecatepec, México - 28 y 29 de Septiembre Caracas, Venezuela - 1 y 2 de Octubre
¿SE LOS VA A PERDER?
ASISTA PERSONALMENTE O DESDE SU CASA
Saber Electrónica tiene el agrado de invitar a todos los lectores a los TALLERES DE ELECTRÓNICA que se dictarán en la sede central de Saber Internacional en Ecatepec. Lo novedoso de estos talleres es que mientras escucha al profesor, Ud. realizará los ejercicios en el banco de trabajo, además, si compra el Paquete Educativo y trae su computadora, TODO LO QUE HAGA QUEDA DE SU PROPIEDAD. Para cada taller se ha preparado un kit de elementos con los que el alumno realizará sus prácticas, este kit viene acompañado de cursos e información bibliográfica (libros, revistas, CDs, Videos, etc.). Quienes asisten personalmente no tienen necesidad de comprar el kit, ya que saber Internacional les proveerá de lo necesario para que practique y luego el material quedará en propiedad de SISA. Quienes deseen seguir el taller desde su casa, comprando el kit, podrán hacer los ejercicios siguiendo la clase por Videoconferencia: UD. TENDRÁ EL VIDEO EN EL QUE EL PROFESOR LO GUIARÁ PASO A PASO. Ing. Horacio D. Vallejo Los socios del Club SE sólo deberán abonar una cuota de recuperación de $200.00 M/N, con lo cual tendrán derecho a un Diploma de Asistencia y material exclusivo sobre cada TALLER que podrán descargar de Internet al momento de la Inscripción. Los invitados deberán abonar una cuota de $500.00 M/N. Quienes compren el PAQUETE EDUCATIVO TIENEN DERECHO A ASISTIR AL TALLER, ya sea en forma personal o por Videoconferencia sin abonar ninguna cuota.
IMPORTANTE: Los asistentes deberán tener sus herramientas para realizar las prácticas (cautín, pinzas, multímetro, etc.). Si va a asistir personalmente sin ellas, debe avisar con anticipación para que tengamos preparado un set. Costo de Cada Taller: $200 para Socios del Club SE - $500 para Invitados Puede Asistir desde su Casa, por Internet Si compra su Paquete Educativo puede realizar el taller GRATIS
APRENDA ELECTRÓNICA DIGITAL (VIERNES DE 09:00HS. A 12:30HS.) ENERGÍA SOLAR Y ROBÓTICA BEAM (SÁBADO DE 08:30HS. A 12:30HS.) Este taller enseña qué son las técnicas digitales, las familias lógicas (TTL y CMOS), las compuertas lógicas, las leyes de la electrónica digital y realiza prácticas con compuertas, flip-flops y circuitos secuenciales. EL PAQUETE EDUCATIVO (de compra opcional): contiene un curso teórico-práctico de Técnicas Digitales compuesto de 6 CDs en DVD, 6 Videos en DVD, 6 revistas, 2 Libros, 1 laboratorio de técnicas digitales compuesto de un protoboard, una placa entrenadora, circuitos integrados y componentes para prácticas. También reciben pilas, cables y demás elementos (Consulte costos del paquete y promociones).
Este taller enseña qué son las fotocélulas y los paneles solares, los principios de la robótica BEAM y realiza prácticas sobre cargadores solares, iluminación ecológica, y robótica beam con el armado de insectos robots. EL PAQUETE EDUCATIVO (de compra opcional): contiene 2 cursos teóricos-prácticos de Energía Solar y Robótica Beam compuesto de 8 CDs en DVD, 8 Videos en DVD, 6 revistas, 2 Libros, 1 laboratorio de prácticas compuesto de 2 minipaneles solares, pila recargable, motor, estructura para robot, placa entrenadora y componentes. También reciben pilas, cables y demás elementos (Consulte costos del paquete y promociones).
******************************************************************************
******************************************************************************
APRENDA PICAXE DESDE CERO (VIERNES DE 13:30HS. A 15:00HS. Y DE 16:00HS. A 18:00) ALARMAS, AUTOMATISMOS Y PLC (SÁBADO DE 13:00HS. A 15:00HS. Y DE 16:00HS. A 17:30) Este taller enseña qué es un microcontrolador, las diferencias entre PIC y PICAXE, que es un programa, cómo se hace un programa y realizará prácticas de programación con los elementos provistos (encendido de leds, automatismos, semáforo, secuenciales, etc.) EL PAQUETE EDUCATIVO (de compra opcional): es un curso teórico-práctico de Microcontroladores PICAXE que contiene 6 CDs en DVD, 6 Videos en DVD, 6 revistas, 2 Libros, 1 kit de entrenamiento compuesto una placa entrenadora, cable de programación, microcontrolador PICAXE y componentes para prácticas. También reciben pilas, cables y demás elementos (Consulte costos del paquete y promociones).
Para este taller se supone que el alumno ya sabe lo que es un microcontrolador y se enseña que es un PLC y cómo con él se pueden construir automatismos y sistemas de alarma. Realiza prácticas de programación sobre el PLC provisto en el KIT EDUCATIVO (secuenciales, alarmas, automatismos).. EL PAQUETE EDUCATIVO (de compra opcional): es un curso teórico-práctico de Alarmas, Automatismos y PLC que contiene 6 CDs en DVD, 6 Videos en DVD, 6 revistas, 2 Libros, 1 kit de entrenamiento compuesto por un PLC, cable de programación, microcontrolador PICAXE y componentes para prácticas. También reciben pilas, cables y demás elementos (Consulte costos del paquete y promociones).
Para más informes e inscripciones debe contactarse con Saber Internacional S.A. de C.V., llamando al teléfono del D. F.: (01 55) 58 39 72 77 o enviando un mail a: [email protected].
Cap 5 - ejemplo prog escalera.qxd
9/11/12
10:05 AM
Página 49
Capítulo 5
Tal como explicamos en capítulos anteriores, para programar un PLC es necesario el empleo de un lenguaje específico, ya que el PLC está preparado para recibir órdenes sólo desde su sistema de programación. El lenguaje de programación de cada PLC cambia de acuerdo al creador del producto, y aunque se utilizan los mismos símbolos en los distintos lenguajes, la forma en cómo se crean y almacenan cambia de fabricante a fabricante; por lo tanto, la manera de cómo se interpretan las instrucciones por medio de un PLC es diferente, dependiendo de la marca. Sin embargo, sin importar la marca del autómata, la gran mayoría emplea el lenguaje ladder para que el usuario (el técnico) escriba el programa que luego será descargado en el PLC. En este capítulo veremos cómo se estructura un programa escrito en ladder
EJEMPLOS
PROGRAMACIÓN
INTRODUCCIÓN
Existen comercialmente tres lenguajes que la mayoría de los fabricantes de los PLCs ponen a disposición de los usuarios; estos lenguajes son: o Diagrama de Contactos, también conocido como Lenguaje en Escalera. o Listado de Instrucciones. o Diagramas de Funciones.
DE
EN
LADDER
Como vimos en el capítulo 3, el lenguaje en escalera (ladder) es una representación gráfica que por medio de software se implementan tanto los contactos físicos que posee un relevador (Variables de Entrada), así como también las bobinas (Variables de Salida) que lo constituyen. Las actividades que realizan estas representaciones se materializan a través de las líneas de entrada y salida del PLC. En el “Lenguaje en Escalera” son muy vastos los símbolos empleados, pero como introducción, en primer Capítulo 5
49
Cap 5 - ejemplo prog escalera.qxd
9/11/12
10:05 AM
Página 50
PLC & Autómatas Programables
término, explicaremos los símbolos que relacionan las entradas con las salidas. Los elementos básicos correspondientes a las entradas son los que a continuación se muestran: o Contacto normalmente abierto. o Contacto normalmente cerrado.
Contacto normalmente abierto (NA): Tiene la misma función de un botón real, el cual cuando no es accionado se reposiciona automáticamente a su estado natural, que es encontrarse abierto o desconectado. En otras palabras, cuando el usuario presiona el interruptor, hace que exista una unión entre los dos contactos internos que tiene el botón, cambiando su estado lógico de abierto (desconectado) a cerrado (conectado). Según lo dicho, en la figura 1 podemos apreciar un interruptor con contacto normalmente abierto en reposo, mientras que en la figura 2 podemos ver un interruptor con contacto normalmente abierto activado. Figura 1
Contacto normalmente cerrado (NC): Igualmente funciona como un botón real, pero de manera inversa al contacto normalmente abierto, esto es que, cuando no es accionado, se reposiciona automáticamente a su estado natural que es el encontrarse cerrado o conectado. La figura 3 indica un interruptor con contacto normalmente cerrado en reposo. Figura 3
Cuando el usuario presiona el interruptor abre la unión que existe entre los dos contactos internos del botón, cambiando su estado lógico de cerrado (conectado) a abierto (desconectado). La representación de un interruptor con contacto normalmente abierto activado la puede ver en la figura 4. Figura 4
Figura 2
De acuerdo a la convención establecida por los fabricantes de los PLCs, se sabe que la correspondencia que tienen los estados lógicos cerrado y abierto con los dígitos binarios “0” y “1” es la siguiente: 50
Club Saber Electrónica Nº 91
Cap 5 - ejemplo prog escalera.qxd
9/11/12
10:05 AM
Página 51
Ejemplos de Programación en Ladder
Abierto equivale a “0” lógico. Cerrado equivale a “1” lógico.
Ya que conocemos los símbolos básicos correspondientes a las entradas en el Lenguaje en Escalera, debemos encontrar la manera de obtener una respuesta en base a nuestras entradas. La solución la hallamos en el mismo Lenguaje en Escalera, ya que para representar una salida se emplea el símbolo -( )-, el cual tiene una función similar a la de una bobina en un relevador, la cual una vez energizada provoca un cambio de estado en el (los) interruptor(es) que se encuentran bajo su influencia. Para programar un PLC, primeramente se deben tener contempladas las entradas y las salidas totales que estarán interactuando en el sistema que se va a automatizar; posteriormente, es necesario plantear el procedimiento mediante el cual se relacionarán las entradas con las salidas de acuerdo a las respuestas que se esperan del sistema. Una herramienta que se emplea frecuentemente para programar un PLC son las “Tablas de Verdad”, ya que en éstas se observa la respuesta que debe emitir el PLC en función de las combinaciones de los estados lógicos de las entradas. La combinación generada por la forma en como se conecten las variables de entrada da origen a funciones lógicas estandarizadas como por ejemplo: AND, OR, INVERSOR, etc. Tanto las funciones lógicas, mencionadas en el párrafo anterior, como todas las que faltan; tienen asociado un símbolo por medio del cual se identifican en el área de la electrónica. Cabe aclarar que en esta área estas funciones son llamadas por su nombre en inglés; por lo tanto, así nos referiremos a ellas. Cuando se utiliza el Lenguaje en Escalera para programar un PLC, no se emplean los símbolos de las funciones lógicas; por lo tanto, debemos ser capaces de implementarlas utilizando las variables de entrada y salida que, de acuerdo a cierto arreglo, se comportarán como las funciones lógicas: AND, OR, INVERSOR, NOR, etc. Existen tres funciones lógicas a partir de las cuales se generan todas éstas, las cuales son: AND, OR e INVERSOR.
Por lo tanto, a continuación se explicará cómo se implementan con el Lenguaje en Escalera, así como su comportamiento. FUNCIÓN LÓGICA AND (Y) La función lógica AND tendrá la salida activada (energizada) sólo si ambos contactos (normalmente abiertos) tienen el nivel lógico de 1; en todos los otros casos, la salida estará desactivada (desenergizada). La figura 5 representa la función Lógica AND (Y) con las entradas A y B en “0”.Nota: Los símbolos iluminados se encuentran activos. Figura 5
La figura 6 muestra la función Lógica AND (Y) con entrada A en “0” y B en “1”. Figura 6
En la figura 7 se ve la función Lógica AND (Y) con entrada A en “1” y B en “0” y en la figura 8 se representa la función Lógica AND (Y) con las entradas A y B en “1”.
Figura 7
Figura 8
Las figuras 5, 6, 7 y 8 generan la siguiente tabla de verdad: Capítulo 5
51
Cap 5 - ejemplo prog escalera.qxd
9/11/12
10:05 AM
Página 52
PLC & Autómatas Programables
En la figura 11 puede observar la función Lógica OR (O) con entrada A en “1” y B en “0” mientras que en la figura 12 se reproduce la función Lógica OR (O) con las entradas A y B en “1”.
Tabla 1 Función lógica AND (Y): A B Salida Figura 0 0 0 5 0 1 0 6 1 0 0 7 1 1 1 8
Figura 11
FUNCIÓN LÓGICA OR (O) Con una función lógica OR la salida se presenta activada (energizada) si uno o todos sus contactos (normalmente abiertos) se encuentran en el estado de “1” lógico. En contraparte, la salida se presentará desactivada (desenergizada) cuando todos los interruptores tienen un estado lógico “0”. La forma en que se pueden programar estas compuertas de acuerdo con el lenguaje en escalera se pueden ver en las figuras 9 a 12. La figura 9 representa la función Lógica OR (O) con las entradas A y B en “0”.
Figura 12
Figura 9
La tabla de verdad que se desprende de las figuras 9, 10, 11 y 12 es la siguiente:
La figura 10 muestra la función Lógica OR (O) con entrada A en “0” y B en “1”. Figura 10
Tabla 2 Función lógica OR (O): A B Salida Figura 0 0 0 9 0 1 1 10 1 0 1 11 1 1 1 12 FUNCIÓN LÓGICA INVERSORA (NOT) La función lógica INVERSORA (NOT), a diferencia de las funciones AND y OR, sólo requiere un contacto en la entrada, el cual debe ser normalmente cerrado. La salida se presenta activada (energizada) si el contacto se encuentra en el estado de 0 lógico. Para entender mejor cómo se escribe esta función en el lenguaje en
52
Club Saber Electrónica Nº 91
Cap 5 - ejemplo prog escalera.qxd
9/11/12
10:05 AM
Página 53
Ejemplos de Programación en Ladder
escalera, en la figura 13 se tiene la función Lógica Inversora (NOT) con las entrada A en “0”. Figura 13
La tabla de verdad de la función lógica NO INVERSORA es la que se presenta a continuación: Figura 15
Figura 16
En contraparte, la salida se presentará desactivada (desenergizada) cuando el interruptor tiene un estado lógico “1”. En la figura 14 se puede ver la representación de la función Lógica Inversora (NOT) con las entrada A en “1”. Figura 14
De acuerdo a lo explicado en el párrafo anterior, se observa que la finalidad de esta función lógica es presentar en la salida el estado lógico del contacto de manera invertida. Las Figuras 13 y 14 se resumen en la tabla 3. Tabla 3 Función Lógica Inversora (NOT): A Salida Figura 0 1 13 1 0 14 FUNCIÓN LÓGICA NO INVERSORA La función lógica NO INVERSORA requiere únicamente de un contacto, el cual debe ser normalmente abierto. La salida es el reflejo del estado lógico en el que se encuentre el contacto. Note en la figura 15 la representación de la función Lógica NO Inversora con las entrada A en “0” y en la figura 16 como se escribe la función Lógica NO Inversora con las entrada A en “1”.
Tabla 4 Función Lógica NO Inversora. A Salida Figura 0 0 15 1 1 16 FUNCIONES COMBINADAS Y EJEMPLOS PRÁCTICOS Tenemos pues el equivalente de las tres funciones lógicas básicas para los diagramas de escalera. Y con esto podemos representar cualquier circuito lógico tal como expresa el Ingeniero Armando Martínez en su libro: “Fundamentos de Lógica Digital: Problemas y Soluciones” editado en Internet en el sitio: www.logica-digital.blogspot.com.ar. Creo personalmente que dicho texto es digno de ser leído y consultado tanto por docentes como alumnos y el breve desarrollo que hacemos a continuación es una pequeña muestra del tremendo potencial que tiene dicha obra. Como menciona el Ing. Martínez, las expresiones Boleanas usadas en los circuitos combinatorios lógicos convencionales pueden ser “traducidas” con pocos problemas hacia un diagrama en escalera. Tal es el caso de la expresión Boleana: Y = ABC Capítulo 5
53
Cap 5 - ejemplo prog escalera.qxd
9/11/12
10:05 AM
Página 54
PLC & Autómatas Programables Figura 17
Cuya implementación en un diagrama en escalera se muestra en la figura 17, mientras que para la siguiente expresión Boleana: Y = ABC + ABC Su contraparte en un diagrama en escalera es el mostrado en la figura 18. Figura 18
Tal como vimos al comienzo de este capítulo, los interruptores mostrados en estos diagramas de escalera son interruptores que pueden ser activados tanto por intervención humana como por acción de algún sensor (temperatura, presión, humedad, etc.) Sin embargo, cuando queremos destacar en forma muy explícita algún interruptor que será accionado manualmente por una persona, ponemos el símbolo de la figura 1 (página 50), cuando se trata de un interruptor normalmente abierto o bien el símbolo de la figura 3 cuando se trata de un interruptor normalmente cerrado. De este modo, un interruptor normalmente cerrado X activado manualmente cuya función no es permitir el paso de la corriente eléctrica a una carga Y sino cerrar el paso de la corriente eléctrica a dicha carga tendrá la representación en un diagrama en escalera como el de la figura 19. Es importante tener en mente que la notación que hemos presentado aquí, aunque difundida en muchos libros de texto, no es adoptada universalmente por 54
Club Saber Electrónica Nº 91
Figura 19
todos los fabricantes de equipo cuyo uso está basado en la aplicación de diagramas de escalera. Ejemplo de ello es el diagrama en escalera de la figura 20 que utiliza la notación del fabricante Allen-Bradley. Este diagrama en escalera representa la misma configuración que vimos previamente cuya expresión Bolena es: Y = ABC + ABC
Figura 20
Una diferencia notoria entre estas funciones lógicas de escalera y las funciones lógicas manejadas por los circuitos integrados es que en el diagrama en escalera los voltajes usados para accionar las entradas pueden ser (y de hecho son en muchos casos) diferentes de los voltajes usados para activar las salidas, de modo tal que una entrada puede representar el accionamiento de un relevador energizado con un voltaje DC de 5 volt, mientras que una salida puede representar la aplicación de un voltaje de 120 volt AC a un motor usando los contactos de salida del mismo relevador. En cierta forma, el uso de un relé electromecánico (o su equivalente en circuitos semiconductores de alta potencia) nos permite manipular cargas pesadas de voltajes y corrientes eléctricas a través de un voltaje mucho más pequeño empleado para activar la bobina del relevador. Esto nos da ya una pista de que muchas aplicaciones interesantes tienen su origen con el empleo de relevadores, razón por la cual enfocaremos ahora nuestra atención a estos componentes que fueron el punto de
Cap 5 - ejemplo prog escalera.qxd
9/11/12
10:05 AM
Página 55
Ejemplos de Programación en Ladder
partida para la construcción de los primeros controladores lógicos. La salida del relevador puede tener niveles completamente diferentes de voltaje y corriente eléctricas, de modo tal que si bastase un voltaje de 5 volt de corriente directa para activar a un relevador, los contactos representativos de la salida del mismo podrían manejar y suministrar un voltaje de 120 volt de corriente alterna para alimentar un motor eléctrico de uso pesado (como el motor del elevador de un edificio) que tal vez consuma una corriente eléctrica tan grande que esta misma corriente eléctrica posiblemente quemaría el alambre de la bobina del relevador (o mejor dicho, lo fundiría.) La entrada del relevador (su bobina) y la salida (o salidas) del relevador que vienen siendo interruptores normalmente abiertos o normalmente cerrados se pueden considerar eléctricamente aisladas e independientes. En la figura 21 tenemos un relevador Potter & Brumfield cuya bobina requiere un voltaje de 24 volt de corriente directa para energizarse cerrando los contactos normalmente abiertos y abriendo los contactos normalmente cerrados. Obsérvese que en la cara de Figura 21 este relevador tenemos la explicación clara del “diagrama de contactos” situados en la parte inferior del mismo; es un relevador que nos proporciona dos interruptores separados (conocidos comúnmente como polos), los cuales al energizarse la bobina no sólo abren al mismo tiempo sus contactos normalmente cerrados sino que cierran otros contactos complementarios (esto se conoce como una acción de dos tiros), y por esto mismo este relevador puede ser clasificado como un relevador de “dos-polos dos-tiros” (en inglés, DPDT o double-pole double-throw). Este dispositivo es un relé cuya bobina se activa mediante la aplicación de un voltaje de corriente directa. Pero también hay relevadores cuyas bobinas pueden ser activadas mediante la aplicación de un vol-
taje de corriente alterna. Vea en la figura 22 cómo podemos representar la acción de un relevador electromecánico en un diagrama en escalera. Figura 22
Emplearemos en nuestro ejemplo un relevador cuya bobina es accionada con 120 volt de corriente alterna. Obsérvese el uso de la simbología que habíamos definido previamente para simbolizar a un relevador de control con el símbolo CR (Control Relay). En este diagrama, cuando se cierra el interruptor X1la bobina del relevador CR1 es energizada, con lo cual el contacto normalmente cerrado (N.C.) se abre cortando el suministro de energía a la salida Y1, mientras que el contacto normalmente abierto (N.A.) se cierra suministrándole energía a la salida Y2. Podemos simplificar este diagrama si convenimos en representar tanto la bobina del relevador como los contactos a la salida del mismo con el mismo símbolo, con lo cual nuestro diagrama en escalera toma el aspecto de la figura 23. Figura 23
Capítulo 5
55
Cap 5 - ejemplo prog escalera.qxd
9/11/12
10:05 AM
Página 56
PLC & Autómatas Programables
Este diagrama en escalera se lee de la siguiente manera: en el primer peldaño cuando se cierra el interruptor X1el relevador CR1 es energizado; al ocurrir esto el contacto normalmente cerrado de CR1 en el segundo peldaño se abre cortando todo suministro de energía a la salida Y1, mientras que en el tercer peldaño el contacto normalmente abierto de CR1 se cierra suministrándole energía a la salida Y2. En la figura 24 tenemos un diagrama en escalera que muestra el modo de funcionamiento de un relevador de control que posee dos interruptores (o polos). Figura 24
Hemos añadido aquí un símbolo nuevo, el símbolo típico de un indicador visual (el que parece el dibujito de un sol), que puede ser una lámpara, un foco, un diodo emisor de luz LED, una lámpara fluorescente o inclusive una señal proporcionada en el monitor de una computadora, que nos provee de una confirmación de que el relevador de control asociado con nuestro indicador visual está trabajando bien, lo cual puede ser de gran ayuda para los técnicos de mantenimiento. Si pudiésemos “montar” físicamente sobre un diagrama en escalera real tanto un interruptor que llamaremos A como un relevador capaz de accionar varias salidas al mismo tiempo en respuesta a la corriente eléctrica recibida al cerrarse el interruptor de entrada A, posiblemente veríamos algo como lo mostrado en la figura 25. 56
Club Saber Electrónica Nº 91
Figura 25
Identificando numéricamente a cada uno de los peldaños de la escalera en orden ascendente al ir bajando, el último diagrama en escalera (figura 24) lo podemos leer de la siguiente manera: al ser cerrado el interruptor X1ya sea manualmente por un operador o como resultado de una señal enviada por algún otro proceso de control, la bobina del relevador de control que está representada por el símbolo CR1 en el primer peldaño es energizada. En el segundo peldaño tenemos a uno de los interruptores normalmente abiertos del relevador de control CR1, el cual al ser energizada la bobina CR1 se cierra, energizando la salida Y1 que puede ser un motor, una bomba hidráulica, un rayo láser o cualquier otra cosa que requiera ser energizada. En el tercer peldaño tenemos a uno de los interruptores normalmente cerrados del relevador que en este caso se convierte en un interruptor normalmente abierto al ser energizada la bobina CR1 del relevador, cortando el suministro de energía a la “carga” de salida Y2. De nueva cuenta, estamos representando con el mismo símbolo tanto al relevador de control (o mejor dicho, a su bobina) como a sus interruptores normalmente cerrados y sus interruptores normalmente abiertos sobre los cuales actúa. Por último, en el cuarto peldaño el interruptor normalmente abierto CR1 se cierra alimentando de este modo al indicador visual Y3, dando una confirmación visual de que el relevador de control CR1 está trabajando. Obsérvese que al energizarse un relevador de control éste afecta directamente y en forma simultánea todos aquellos peldaños en la escalera que incorporen contactos de salida de dicho relevador.
Cap 5 - ejemplo prog escalera.qxd
9/11/12
10:05 AM
Página 57
Ejemplos de Programación en Ladder
Esta es una consideración de vital importancia a la hora de leer diagramas de escalera. El uso de relevadores electromecánicos nos permite repasar un fenómeno que habíamos encontrado previamente en el estudio de los circuitos lógicos: la aparición de efectos de memoria al llevar a cabo la retroalimentación de señales en circuitos construidos con funciones lógicas básicas, lo cual nos puede llevar a preguntarnos: ¿habrá alguna manera en la cual tales efectos puedan ser reproducidos mediante los diagramas de escalera? La respuesta es afirmativa, y podemos empezar considerando el diagrama en escalera de la figura 26. Figura 26
Al inicio, no hay suministro alguno de energía al relevador de control CR1, lo cual cambia cuando cerramos el contacto del interruptor X1 posiblemente oprimiendo algún botón. Al energizarse la bobina del relevador, el contacto normalmente abierto CR1 en la parte inferior del diagrama se cierra. Una vez que esto ocurre, cuando dejamos de oprimir el botón X1 el relevador CR1 de cualquier modo continuará energizado porque al estar energizado el contacto CR1 del mismo relevador permanecerá cerrado. En efecto, el interruptor X1 ha dejado de ser relevante. Obsérvese la importancia de lo que está sucediendo aquí. El relevador CR1 puede permanecer energizado gracias a que él mismo está proporcionando lo necesario para que el contacto CR1 permanezca cerrado, lo cual a su vez le permite al relevador CR1 seguir energizado. Esto es nada más ni nada menos que una retroalimentación en la cual el relevador de control CR1 se está ayudando “a sí mismo” a permanecer encendido, es algo que podemos llamar el efecto memoria en los diagramas de escalera. Esta acción es se puede asimilar a la de una compuerta AND realimentada, figura 27, en donde si tanto la
entrada A como la salida del circuito son inicialmente cero, al aplicar un “1” a la entrada del circuito, la salida del mismo permanece en “1” aunque la entrada A sea regresada a cero, por estarse retroalimentando la salida de este circuito a su entrada. Así, del mismo modo que la retroalimentación proporciona memoria a los circuitos lógicos, también proporciona efectos de memoria en diseños de sistemas de control representados con diagramas de escalera. Y esto no se trata de una acción parecida, se trata esencialmente de lo mismo, aunque la diferencia de las representaciones esquemáticas oscurezca un poco el hecho. Al menos en lo que a la teoría básica se refiere, se trata de dos representaciones diferentes de una misma cosa. El problema que tenemos en esta implementación de efectos de memoria en el diagrama en escalera es que después de que el interruptor X1 ha sido oprimido momentáneamente, el relevador CR1 queda activado permanentemente no habiendo forma alguna de regresarlo a su estado original que no sea el apagar por completo todo el sistema, lo cual es algo que tal vez no queramos hacer. Vemos pues que resulta no solo deseable sino necesario interrumpir de alguna manera el suministro de energía al relevador CR1 sin que para ello nos veamos obligados a apagar todo el sistema. Podemos hacerlo con el simple hecho de agregar un interruptor adicional de manera sugerida en la figura 28. Figura 27
Figura 28 Al inicio, al cerrarse el interruptor X1, el relevador CR1 es activado a través del contacto normalmente cerrado X2 y el contacto normalmente abierto CR1 se cierra. El relevador CR1 permanece encendido por el efecto de Capítulo 5
57
Cap 5 - ejemplo prog escalera.qxd
9/11/12
10:05 AM
Página 58
PLC & Autómatas Programables
retroalimentación, pero si queremos apagarlo entonces todo lo que tenemos que hacer es activar el interruptor X2, lo cual equivale a abrirlo cortando con ello el suministro de corriente al relevador CR1. Esto que hemos hecho es análogo al comportamiento del sistema funcional de la figura 29, donde para “limpiar” la memoria insertamos un bloque AND y un bloque NOT.
Un diagrama eléctrico de un motor reversible que es controlado alimentándolo de corriente trifásica a través de dos contactores M1 y M2 se muestra en la figura 31.
Figura 29
En la figura 18 (página 54), en el primer diagrama en escalera mostrado, se utilizó como ejemplo un motor eléctrico de 120 VAC que es energizado al cerrarse un interruptor. Pero este no es el único tipo de motor que existe; hay también motores reversibles en los cuales el eje del motor puede girar en sentido de las manecillas del reloj cuando es energizado de cierta manera, y puede girar en sentido contrario a las manecillas del reloj cuando es energizado de otra manera. Generalmente, este tipo de motores trabaja con corriente eléctrica conocida como corriente trifásica, y requiere de tres cables de alimentación en lugar de dos. El circuito de control para un motor reversible emplea un relevador de uso pesado conocido como contactor, que no es más que un conjunto coordinado de varios contactos que se abren o se cierran de manera simultánea. Podemos visualizar un contactor como un relevador común y corriente el cual al energizarle su bobina con una señal de control cierra al mismo tiempo todos sus contactos normalmente abiertos, permitiendo el paso de corrientes eléctricas separadas a través de varios cables, figura 30.
Figura 31
Cuando se cierran los tres contactos normalmente abiertos del contactor M1, los escobillones del motor (1, 2 y 3) son alimentados por la corriente trifásica a través de los alambres A, B y C de modo tal que el motor gira en un sentido que podemos llamar “hacia adelante” (forward), mientras que si los escobillones del motor son alimentados de otro modo por la corriente trifásica cerrándose los tres contactos normalmente abiertos del contactor M2, el motor gira en sentido inverso que podemos llamar “en reversa” (reverse). Podemos representar en la figura 32 el diagrama en escalera de un circuito de control para este motor reversible.
Figura 32
Figura 30 58
Club Saber Electrónica Nº 91
En este circuito, tenemos un botón interruptor de corriente stop que es un interruptor normalmente cerrado, el cual puede ser utilizado como un “botón de
Cap 5 - ejemplo prog escalera.qxd
9/11/12
10:05 AM
Página 59
Ejemplos de Programación en Ladder
emergencia” para detener el movimiento del motor sin importar el estado en el que se encuentre. Para echar a andar el motor en un sentido, oprimimos momentáneamente el botón normalmente abierto forward, con lo cual la bobina del relevador M1 que cierra los contactos normalmente abiertos del contactor M1 recibe la corriente eléctrica a través del contacto normalmente cerrado M2. Obsérvese que tenemos en esta sub-sección del circuito una configuración que nos proporciona el efecto memoria, esto con la finalidad de que no tengamos que mantener oprimido todo el tiempo el botón forward para mantener al motor trabajando. Del mismo modo, si queremos echar a andar el motor en el sentido inverso, oprimimos momentáneamente el botón normalmente abierto reverse, con lo cual la bobina del relevador M2 que cierra los contactos normalmente abiertos del contactor M2 recibe la corriente eléctrica a través del contacto normalmente cerrado M2. Obsérvese que tenemos aquí otra sub-sección del circuito con una configuración que también nos proporciona el efecto memoria, independiente de la anterior, también con la finalidad de que no tengamos que mantener oprimido todo el tiempo el botón reverse para mantener al motor trabajando. Una vez que hemos echado a andar el motor ya sea oprimiendo el botón forward o el botón reverse, podemos detener posteriormente al motor oprimiendo el botón stop, lo cual corta de tajo la alimentación de corriente a toda la configuración. En este diagrama aparece otro contacto normalmente cerrado que también en un momento dado puede detener por completo el movimiento del motor, el cual inusualmente aparece en el extremo derecho del diagrama en vez de aparecer en el extremo izquierdo. Se trata del contacto OL, que significa OverLoad, el cual es un componente generalmente puesto cerca del motor (o inclusive dentro del mismo motor) para protegerlo en caso de que se presente una SobreCarga de corriente. Esto puede ocurrir en caso de que el motor reciba un peso mucho mayor del que está diseñado para manejar, en cuyo caso el motor se “atasca” quedando expuesto a un sobrecalentamiento que puede terminar destruyéndolo en poco tiempo. El interruptor OL puede ser un interruptor térmico, el cual al aumentar la temperatura arriba de cierto límite se abre
interrumpiendo el flujo de la corriente. En el circuito que acabamos de ver, la presencia aparentemente superflua de los contactos normalmente cerrados M1 y M2 puestos en el mismo tiene un propósito muy específico. Han sido puestos allí en la eventualidad de que el operador del sistema apriete al mismo tiempo los botones forward y reverse. Si no estuvieran allí dichos contactos, las fases A y B de la corriente trifásica entrarían en cortocircuito por el hecho de que el contactor M1envía las fases A y B directamente hacia el motor mientras que el contactor M2 las invierte. La fase A entraría en corto-circuito con la fase B y viceversa. Para impedir que esto ocurra, es indispensable diseñar el sistema de modo tal que la energización de un contactor impedirá la energización del otro contactor. Obsérvese en el diagrama en escalera que si oprimimos el botón forward, el contacto normalmente cerrado M1 en la sub-sección inferior se abre de modo tal que aunque se oprima el botón reverse no llegará corriente eléctrica alguna al contactor M2. Del mismo modo, si oprimimos el botón reverse, el contacto normalmente cerrado M2 en la sub-sección superior se abre de modo tal que aunque se oprima el botón forward no llegará corriente eléctrica alguna al contactor M1. Esta técnica de protección es conocida como interlocking. Si pudimos encontrar el equivalente de las tres funciones lógicas básicas dentro de los diagramas de escalera, si hemos podido construir el equivalente de sistemas con memoria mediante los diagramas de escalera, ¿acaso no será posible construir también el equivalente de otros componentes y bloques lógicos en los diagramas de escalera? Tomemos por ejemplo el flip-flop R-S, el cual se puede construir utilizando ya sea bloques NAND o bloques NOR. Los bloques NOR y los bloques NAND se obtienen con las tres funciones lógicas básicas, mismas funciones que también existen en los diagramas de escalera. Y la función de retroalimentación empleada para construir un flip-flop R-S también puede ser implementada en los diagramas de escalera. Esto nos debe convencer de que, en principio, debemos poder construír algo equivalente en funciones al flip-flop R-S dentro de los diagramas de escalera. Esta sospecha nos conduce a un circuito que podemos considerar como una solución al siguiente problema: Capítulo 5
59
Cap 5 - ejemplo prog escalera.qxd
9/11/12
10:05 AM
Página 60
PLC & Autómatas Programables
“Diseñar el equivalente de un flip-flop R-S usando un diagrama lógico de escalera”. Un esquema funcional representativo de lo que andamos buscando es el mostrado en la figura 33. Figura 33
Si el interruptor normalmente abierto X1 es cerrado así sea momentáneamente, al energizarse el relevador de control CR1 éste relevador por el efecto de la retroalimentación del mismo peldaño que lo alimenta se enciende y se queda encendido, lo cual hace que la salida Y1 en el tercer peldaño se “encienda”. Al quedarse encendido CR1 después de haberse oprimido X1, el interruptor normalmente cerrado CR1 que está puesto en el segundo peldaño se abre, cortando así cualquier suministro de corriente que pudiera estarse dando a través de la retroalimentación en dicho peldaño al relevador de control CR2. En otras palabras, esto “limpia” la “memoria” que pudiera haber habido en el segundo peldaño, “apagando” al relevador CR2, lo cual hace que la salida Y2 del cuarto peldaño se “apague” si es que estaba encendida. En este estado de cosas, el relevador CR1 permanece encendido aún con el interruptor X1 abierto, mientras que el relevador de control CR2 permanece apagado, lo cual podemos confirmar visualmente al ver al foco Y1 encendido y al foco Y2 apagado. 60
Club Saber Electrónica Nº 91
Ahora cerraremos el interruptor X2 momentáneamente. Al energizarse el relevador de control CR2 éste relevador por el efecto de la retroalimentación en el mismo peldaño (el segundo peldaño de la escalera) que lo alimenta se enciende y se queda encendido, lo cual hace que la salida Y2 en el cuarto peldaño se “encienda”. Al quedarse encendido CR2 después de haberse oprimido X2, el interruptor normalmente cerrado CR2 que está puesto en el primer peldaño se abre, cortando así cualquier suministro de corriente que pudiera estarse dando a través de la retroalimentación en dicho peldaño al relevador de control CR1. En otras palabras, esto “limpia” la “memoria” que pudiera haber habido en el primer peldaño, “apagando” al relevador CR1, lo cual hace que la salida Y1 del tercer peldaño se “apague” si es que estaba encendida. En este estado de cosas, el relevador CR2 permanece encendido aún con el interruptor X2 abierto, mientras que el relevador de control CR1 permanece apagado, lo cual podemos confirmar visualmente al ver al foco Y2 encendido y al foco Y1 apagado. La configuración representada por este diagrama en escalera ha pasado de un estado estable con Y1 encendido al oprimirse X1 a otro estado estable con Y2encendido al oprimirse X2. Esta configuración tiene dos estados estables y por lo tanto es un multivibrador biestable. Si hacemos ahora un ligero cambio de nombres bautizando al interruptor X1 como S, al interruptor X2 como R, a la salida Y1 como Q y a la salida Y2 como Q, resultará obvio que lo que tenemos en nuestras manos es el equivalente funcional de un flip-flop R-S; en este caso el equivalente de un flip-flop construido con bloques NOR. El que hayamos podido crear dentro de los diagramas de escalera no sólo un equivalente completo de los circuitos lógicos sino también el equivalente de bloques de memoria convirtiendo en realidad un flip-flop RS completamente funcional nos debe meditar en que la mayor parte de lo que hemos estudiado se puede trasladar directamente hacia los diagramas de escalera. Y en efecto, no hay obstáculo teórico alguno para poder hacerlo. Esto lo podemos enunciar de modo categórico con el siguiente enunciado:
Cap 5 - ejemplo prog escalera.qxd
9/11/12
10:05 AM
Página 61
Ejemplos de Programación en Ladder
“Todos los circuitos lógicos, tanto aquellos que forman parte de la lógica combinatoria como los que forman parte de la lógica secuencial (construida a base de flip-flops) tienen una implementación equivalente en los diagramas de escalera”.
Este enunciado tiene un alcance amplio; nos está asegurando que podemos construir mediante diagramas de escalera flip-flops D, flip-flops J-K, contadores binarios, etc. Pero aquí el lector puede ser asaltado por una duda. Si recordamos la acción de contadores secuenciales elementales como el contador binario de conteo ascendente, tenemos un elemento que hasta ahora no hemos encontrado en los diagramas de escalera: el elemento tiempo. Con lo que hemos visto, no se ve una manera obvia de poder suministrar el equivalente de los “pulsos de reloj” a los elementos en un diagrama en escalera que les permita poder comportarse como verdaderos circuitos secuenciales. Los diagramas de escalera que hemos estudiado son en cierta forma configuraciones estáticas en las cuales lo que ocurre en un peldaño puede influir directamente sobre lo que ocurre en otros peldaños, pero estos efectos son inmediatos, el factor tiempo no interviene en ellos. Si queremos extender los diagramas de escalera para cubrir también todos los circuitos secuenciales que hemos estudiado en esta obra, necesitamos introducir algún relevador de control en el cual la acción de un tiempo predeterminado tenga un efecto directo, y esto es precisamente lo que haremos a continuación. Sin lugar a dudas, el empleo de relevadores electromecánicos nos suministra con una herramienta poderosa para muchas aplicaciones de control. Pero existe otro tipo de relevador que nos permite hacer realidad operaciones cronometradas, el relevador de retardo de tiempo (time delay relay). En este tipo de relevador, al aplicarle un voltaje a su entrada (a su bobina), la acción en sus salidas no ocurre de inmediato, sino que hay un retardo de tiempo tras el cual obtenemos la acción deseada con las salidas normalmente abiertas convirtiéndose en salidas normalmente cerradas y las salidas normalmente cerradas convirtiéndose en salidas normalmente abiertas. En muchos relevadores de tiempo de uso pesado, este retardo de tiempo puede
ser seleccionado con una perilla puesta en el mismo relevador, como ocurre con el relevador de retardo de tiempo de la empresa Potter & Brumfield mostrado en la figura 34 cuya bobina es activada con 24 volt de corriente directa. Naturalmente, también hay relevadores de retardo de tiempo activados con la aplicación de Figura 34 corriente alterna, como el mostrado en la figura 35, también fabricado por la misma empresa Potter & Brumfield. La perilla puesta en la parte supeFigura 35 rior de este relevador nos permite variar el retardo de tiempo desde 1 segundo hasta 10 segundos. Las puntas de los contactos en la parte inferior del relevador están puestas en orden octal (ocho terminales) con la entrada a la bobina aplicada en las terminales 2 y 7. Al serle aplicado un voltaje de 120 VAC a este relevador, el contacto normalmente abierto entre las terminales 1 y 3 se vuelve un contacto normalmente cerrado, ocurriendo lo mismo con el contacto normalmente abierto entre las terminales 6 y 8, mientras que el contacto normalmente cerrado entre las terminales 1 y 4 se abre, ocurriendo lo mismo con el contacto normalmente cerrado entre las terminales 5 y 8. Todo esto después de que ha transcurrido el tiempo seleccionado con la perilla. Podemos leer en el mismo relevador que los contactos pueden manejar una corriente de hasta 10 amperes. El relevador de retardo de tiempo que se acaba de describir es el de uso más generalizado, pero no es el único posible. Los contactos de un relevador de tiempo tienen que ser clasificados no sólo por ser normalmente abiertos o normalmente cerrados, sino también según la acción del retardo, ya sea que este retardo ocurra en el sentido Capítulo 5
61
Cap 5 - ejemplo prog escalera.qxd
9/11/12
10:05 AM
Página 62
PLC & Autómatas Programables
de la cerradura del contacto o en el sentido de la apertura del mismo. Desafortunadamente, la simbología para representar los relevadores de retardo de tiempo es amplia y variada, e inclusive mucha de la simbología que hemos visto aquí para representar las entradas, las salidas y los relevadores de control también suele ser diferente de un fabricante a otro. Empezaremos dando en la figura 36 la representación de la acción de un relevador de tiempo con un símbolo usado ampliamente aunque no de manera universal. Figura 36
Obsérvese que seguimos manteniéndonos en la convención de representar tanto la entrada de un relevador (su bobina) como los contactos activados a la salida del mismo con un mismo identificador alfanumérico, en este caso TD1. En el primer peldaño de la escalera, al cerrarse el interruptor X1 manteniéndose cerrado, la bobina del relevador de tiempo TD1 es energizada. Obsérvese que en el segundo peldaño estamos utilizando uno de los interruptores normalmente cerrados del relevador de tiempo TD1. El símbolo del interruptor X1 también aparece en el segundo peldaño de esta escalera. Puesto que son peldaños diferentes en los cuales aparece el interruptor X1, se sobreentiende que en este caso estamos utilizando un interruptor de dos tiros, un interruptor doble con ambos polos normalmente encendidos o normalmente apagados a la vez, figura 37. De este modo, al cerrarse Figura 37 X1 suministrándose energía 62
Club Saber Electrónica Nº 91
al relevador de tiempo TD1, en el segundo peldaño existe un camino de conducción eléctrica para suministrar energía al “foco” de salida. Si el relevador TD1 fuera un relevador de control ordinario sin acción alguna de retardo de tiempo, entonces el interruptor TD1 en el segundo peldaño se abriría inmediatamente y el foco a la salida se apagaría de inmediato; esto es, nunca lo veríamos encenderse. Pero como se trata de un relevador de retardo de tiempo, la salida normalmente cerrada no se abrirá sino hasta después de que haya transcurrido cierta cantidad de tiempo, digamos un segundo. Una vez que ha transcurrido ese segundo, el contacto normalmente cerrado TD1 en el segundo peldaño se abrirá, cortando el suministro de energía a la salida, aunque el interruptor X1 permanezca cerrado. Esta acción la hemos representado en los diagramas de tiempo puestos debajo del diagrama de escalera, diagramas de tiempo en los que dicho sea de paso nos hemos abstenido de hacer referencia a un “1” lógico o a un “0” lógico como niveles de voltaje en virtud de que la acción lógica que está siendo representada es una de interruptores normalmente cerrados o normalmente abiertos que permiten o impiden el suministro de corriente a la carga de salida. El relevador de retardo de tiempo, por la forma en la que trabaja, en realidad no es más que otra forma de implementación de un componente que ya habíamos visto en uno de los capítulos de la obra principal: el multivibrador monoestable. Y de hecho, con dos relevadores de retardo de tiempo (uno para controlar la duración del tiempo de encendido y el otro para controlar la duración del tiempo de apagado) podemos construir fácilmente un multivibrador astable, cambiando de un estado a otro en forma alternada mientras esté recibiendo un suministro de corriente; y si los tiempos de encendido y apagado son iguales entonces tenemos algo que nos puede proporcionar “pulsos de reloj” como los que utilizamos en los circuitos lógicos secuenciales para hacer pasar el sistema de un estado a otro. Sin embargo, dado el costo de los relevadores de tiempo, implementar este nivel de sofisticación puede resultar mucho más costoso que introducir tales efectos con la ayuda de alguna microcomputadora dedicada a este tipo de aplicaciones. ☺
Cap 6 - montaje PLC
9/11/12
10:07 AM
Página 63
Capítulo 6
PLC MICROCONTROLADO CON ENTRADAS ANALÓGICAS Los lectores de Saber Electrónica conocen las grandes “ventajas” de los microcontroladores PICAXE, entre las que se destacan la fácil programación y el hecho de que no precisan “quitar” al chip para cambiar su programación. Atentos a estas características, diseñamos un Controlador Lógico Programable (PLC) de 5 entradas y 8 salidas con características “profesionales” construido a partir de un microcontrolador PICAXE - 18A, que tiene la posibilidad de conectarle hasta 3 sensores del tipo analógico, además, cuenta con un circuito simple para manejar la corriente que demandan los relés que se encuentran en las salidas de potencia del PLC. Este equipo no posee un utilitario propio de programación, lo que lo hace útil para cualquier aplicación, tanto en la industria como en el taller y el hogar. De hecho, la programación del PLC se efectúa con el Editor de Programación de PICAXE, software gratuito que puede bajar desde nuestra web. También mostramos cómo implementar un PLC más pequeño y lo invitamos a practicar con el lenguaje en escalera explicado en capítulos anteriores.
INTRODUCCIÓN Uno de los objetivos de la utilización de los microcontroladores se basa en el control de procesos industriales, pasando por todas las líneas de producción que tengamos en mente (aun las que ni siquiera nos imaginamos). Para ello se requiere de un circuito base, el cual podamos aplicar de forma general
para casi todos los procesos que se requieren automatizar, y que obviamente tenga un microcontrolador como eje principal de su operación. En varias ediciones de Saber Electrónica explicamos cómo utilizar un PICAXE 18 para construir un PLC de 5 entradas y 8 salidas razón por la cual, para poder montar este proyecto, deberá leer los artículos publicados en saber Electrónica Nº 221, 223 y 228. Si
Capítulo 6
63
Cap 6 - montaje PLC
9/11/12
10:07 AM
Página 64
PLC & Autómatas Programables
no tiene dichas revistas, puede descargar los artículos desde nuestra web www.webelectronica.com.mx haciendo clic en el ícono password e ingresando la
64
Club Saber Electrónica Nº 91
clave PLC58. Una vez que posea conocimientos básicos sobre PICAXE estará en la antesala de la construcción de un proyecto que tiene una utilidad muy
FIGURA 1
Cap 6 - montaje PLC
9/11/12
10:07 AM
Página 65
PLC Microcontrolado con Entradas Analógicas
importante en el ambiente industrial, y cuya denominación es la de “Control Lógico Programable”. La figura 1 muestra el diagrama esquemático del PLC con PICAXE-18 que describiremos a continuación. El PLC (por sus siglas en inglés) lo podemos construir nosotros mismos a partir de las ventajas que nos ofrecen los microcontroladores del sistema PICAXE, y por lo tanto contamos con la prestación adicional de que podemos construir nuestro PLC del tamaño que queramos o más bien del tamaño de las necesidades que se requieren cubrir en el proceso industrial. De acuerdo a esto último, nuestro PLC lo podemos crear tan pequeño que, inclusive podemos emplear el microcontrolador PICAXE-08. Lo diseñaremos tomando las bondades que nos ofrece el microcontrolador PICAXE-18A del cual utilizaremos todos los recursos que nos brinda, y que para empezar cuenta con 5 entradas y 8 salidas. El diseño es tan compacto que permite montarlo en una placa de 10 cm x 15 cm tal como veremos más adelante. Nuestro PLC tiene todas las prestaciones que nos entrega un dispositivo electrónico comercial, y para programarlo emplearemos el propio sistema de programación de los microcontroladores PICAXE. Alguien, al leer el párrafo anterior, se podrá sentir defraudado, porque podrían argumentar que no tenemos un PLC completo ya que faltaría el lenguaje de programación en escalera, y en efecto así es lo que faltaría por el momento, pero sí podemos llamar
PLC a nuestro proyecto, ya que un PLC requiere de 3 partes esenciales para admitir esa acepción. Las partes de un PLC son: etapa de entrada o ingreso de datos, etapa de activación de actuadores o elementos de potencia (etapa de salida), y el controlador que gestiona la información de la entrada, la procesa y reporta un resultado a la salida. El controlador al que hacemos referencia normalmente es un microcontrolador. Nuestro PLC contará con las 3 partes que de rigor debe tener un PLC, y el lenguaje en escalera será substituido por el programa de los PICAXE, que durante el desarrollo de este material mostraremos bloques de instrucciones que se utilizan comúnmente en el programa de un PLC. Comencemos con la descripción del circuito que le dará vida a nuestro PLC, y para ello vamos a dividir el circuito eléctrico en 3 partes, las cuales son: ETAPA
DE
ENTRADA
Este fragmento del circuito total, es tan imprescindible como las 2 siguientes. En este caso se trata de la parte que se encarga de adquirir la información del entorno que rodea al PLC y enviarla a las terminales de entrada de datos del microcontrolador PICAXE, para realizar esta tarea se requiere de sensores para que éstos adquieran la información. En general los PLC cuentan con la posibilidad de manejar 2 tipos de sensores, ya sean analógicos o discretos. De acuerdo con lo anterior podemos realizarnos la siguiente pregunta: ¿Cómo sé qué sensor seleccionar? La respuesta nos la proporciona el propio proceso que vamos a intervenir con nuestro PLC, y lo que tenemos que saber para tomar la mejor decisión sobre qué sensores seleccionar, es tomar alguno de los siguientes criterios:
FIGURA 2
1.- ¿Se requiere conocer si está presente o no, algún producto o material? 2.- ¿Se requiere saber la magnitud de alguna variable física? Capítulo 6
65
Cap 6 - montaje PLC
9/11/12
10:07 AM
Página 66
PLC & Autómatas Programables
De las preguntas anteriores tenemos que la 1 corresponde a sensores discretos, mientras que la pregunta 2 se relaciona con los sensores analógicos. El esquema del módulo de entrada discreto del PLC PICAXE-18 incluye optoacopladores 4N25 y se muestra en la figura 2. Para una mejor comprensión explicaremos lo expresado líneas atrás mediante un ejemplo; supongamos que se tiene que controlar la magnitud de la temperatura en el interior de algún recinto, por lo tanto tenemos que seleccionar los tipos de sensores para implementar el control de la temperatura y que está sea estable dentro del recinto. De un análisis rápido y muy básico llegamos a la conclusión de que por lo menos se requieren 2 tipos de sensores los cuales se emplearán para realizar una de las siguientes acciones: o Leer el valor de la magnitud de la temperatura que está presente. o Detectar si la puerta del recinto se encuentra cerrada. La primera descripción corresponde a un sensor del tipo analógico, mientras que la segunda descripción hace referencia a un sensor del tipo discreto. La diferencia principal entre los 2 tipos de sensores radica en el hecho de que el sensor analógico entrega un valor infinito de valores, los cuales dependen de la intensidad de la magnitud física que se está midiendo (luz, temperatura, humedad, etc.), mientras que el sensor discreto tan sólo nos reporta tan solo 2 valores, que son un “1 lógico” ó “0 lógico”. El circuito correspondiente a la etapa de entrada de un PLC tiene que ser adecuada al sensor que se va a emplear, y tomando en cuenta que el microcontrolador que se utilizará es un PICAXE 18A, que nos permite una disposición de 5 terminales que en su totalidad pueden ser para entradas discretas, el diagrama de la figura 2 representa la etapa de entrada implementada para sensores discretos. La entrada discreta tan sólo debe tener la capacidad de reportar si el sensor detecta la presencia o no de algún objeto o fenómeno físico, por ello se 66
Club Saber Electrónica Nº 91
requiere que el sensor informe de su estado por medio de un contacto, el cual se hace conectando en los extremos del borne de entrada de que se trate. El contacto esta conectado en serie con un resistor, y ambos se encuentran energizados por una fuente de alimentación, y cuando el contacto se cierra (esto si el sensor se activa) se genera un “1 lógico”, mientras que si el contacto se abre (si el sensor no se activa) se da origen a un “0 lógico”. Estos estados lógicos se dirigen a la terminal del ánodo de un LED infrarrojo de un dispositivo opto acoplador (4N25), el cual a su vez en la terminal del emisor refleja el estado en que se encuentra el opto acoplador, mismo que corresponde al estado que guarda el contacto. Por último, la información del opto acoplador se hace llegar a la terminal de entrada correspondiente del microcontrolador PICAXE. Este circuito se repite 5 veces, una para cada entrada discreta que posee el PICAXE. LA ETAPA
DE
ENTRADA ANALÓGICA
Tomando en cuenta las características del microcontrolador PICAXE - 18A (que es en el que se basa este PLC), y el cual puede manejar hasta 3 entradas analógicas, es que 3 de los 5 módulos de entrada son capaces de poder identificar tanto la respuesta que genere un sensor discreto como uno analógico, los 2 módulos restantes deben responder únicamente a sensores discretos. Los módulos que protegen las entradas del microcontrolador PICAXE - 18A, que aceptan tanto sensores analógicos como discretos, son las que corresponden a las entradas identificadas como 0, 1 y 2. Los módulos para estas entradas poseen un jumper selector por medio del cual se escoge la naturaleza del sensor, y si éste es analógico el jumper se debe colocar en la posición de “A”, pero si el sensor es discreto, el jumper debe ubicarse en la posición “D”. En el fragmento del diagrama de la figura 3 se muestra el módulo de entrada que incluye la parte analógica y la discreta. En primer término se tienen los
Cap 6 - montaje PLC
9/11/12
10:07 AM
Página 67
PLC Microcontrolado con Entradas Analógicas
FIGURA
bornes en donde se hacen llegar las conexiones de los sensores, uno para cada entrada del microcontrolador PICAXE - 18A que en total posee 5, sobre el mismo borne existen 2 entradas que se identifican una como “COM” y otra como “Ref”. Continuando con la descripción de la figura 3, y posterior a los bornes de conexión de entrada, se tiene en primera instancia un amplificador operacional cuya matrícula es LM325 (identificado como IC3) que se encuentra bajo la configuración de seguidor de voltaje, el cual recibe la señal originada en los sensores, no importando si se trata de un sensor analógico o discreto (también conocido como sensor digital). El circuito seguidor de voltaje traslada el valor que tiene a su entrada hacia la salida, por ejemplo, si a la entrada del circuito seguidor de voltaje se tiene un valor de 100mV, ése será el mismo valor de voltaje que mostrará a la salida el circuito seguidor de voltaje, pero como el amplificador operacional presenta una alta impedancia de entrada, éste no le demandará corriente al sensor, por lo que los 100mV de la salida del circuito seguidor de voltaje prácticamente es el mismo que entrega el sensor, pero con la ventaja de no alterar su modo de operación. Si en el borne de entrada se tiene conectado a un sensor analógico, el circuito seguidor de voltaje acondicionará la señal del sensor para posteriormente hacerla llegar al microcontrolador PICAXE. Como ya se indicó en el ejercicio anteriormente enunciado, el sensor puede entregar cualquier valor de voltaje siempre y cuando se encuentre dentro de un rango de 0V a 5V de corriente directa, ya que ése es el rango de trabajo de las entradas analógicas del PICAXE, no existe riesgo de que se sobrepase ese nivel de voltaje, ya que el
amplificador operacional está siendo energizado con 5VCD, por lo que si el voltaje de entrada es mayor a 5V, el operacional recortará el voltaje de salida a máximo 5VCD. El sensor puede ser del tipo que entrega un voltaje tal como lo hace el LM35 que es un sensor de temperatura, que se encuentra calibrado en °C, o también puede emplearse un sensor que modifica su valor de 3 resistencia conforme cambie la variable analógica que se está midiendo, para ello puede emplearse un puente de Whenstone, para acondicionar la señal del sensor y originar un voltaje que cambie, de acuerdo al valor resistivo del sensor, que a su vez modifica su valor de acuerdo al cambio que registre la variable analógica que se está midiendo, como ejemplo de este tipo de sensores tenemos a los termistores. En el caso de que se tenga conectado un sensor que origine una respuesta discreta ó digital, se hace llegar su resultado al mismo circuito seguidor de voltaje que se ha descrito líneas atrás, recordando que de acuerdo a la lógica discreta ó digital, se tienen 2 posibles respuestas, las cuales son: “1” Lógico y “0” lógico, que a su vez corresponden a los valores de 5VCD y 0VCD respectivamente. Por lo tanto, el circuito del seguidor de voltaje no tendrá problemas en su desempeño, por lo consiguiente, su operación es válida para ambos casos. A la salida del circuito seguidor de voltaje se tiene un resistor limitador de corriente y un LED que indica el estado de la señal que está entregando el sensor. Para completar este circuito, que sirve tanto para sensores analógicos como discretos, se tiene un circuito conformado por un dispositivo opto acoplador cuya matrícula es 4N25 (del IC4 al IC8), que cumple con la tarea de aislar al microcontrolador cuando se trabaja con sensores discretos, por lo que la salida del circuito seguidor de voltaje se hace llegar al LED infrarrojo del dispositivo optoacoplador, y su salida que se presenta sobre un fototransistor, es la que se guía hasta la entrada del microcontrolador PICAXE. Tomando como referencia nuevamente al diagrama de la figura 3, se cuenta con un borne de selección de entradas analógicas o discretas identificado como “Sel0” ó “Sel1” ó “Sel2” depenCapítulo 6
67
Cap 6 - montaje PLC
9/11/12
10:07 AM
Página 68
PLC & Autómatas Programables
diendo de la entrada que se elija, por lo que se emplea un jumper por medio del cual, precisamente, se le indica al PLC qué tipo de sensor es el que se empleará, si el sensor es analógico, el jumper se coloca hacia la indicación “A”, y lo que sucederá es que la salida del circuito seguidor de voltaje se hará llegar directamente a la entrada del microcontrolador PICAXE, en el cual previamente cuando se programó se tuvo que seleccionar esta forma de operar con la entrada que se seleccionó. Pero si se va a trabajar con sensores discretos, entonces el jumper se colocará en la posición identificada como “D”, por lo que la señal pasará tanto por el circuito seguidor de voltaje como por el dispositivo optoacoplador, para hacer llegar esta información a la terminal de entrada del microcontrolador PICAXE, que también tuvo que ser programado para que esa terminal de entrada sea discreta. En los diagramas de las figuras 4, 5 y 6 se observa la manera de cómo debe conectarse un sensor analógico dependiendo si es un sensor que entrega voltaje, o si es un sensor resistivo que tiene que llevar un circuito de acondicionamiento. En el diagrama de la figura 4 se muestra un circuito sencillo con un sensor que muestra una respuesta resistiva a partir del cambio de valor de una variable física, este circuito es un divisor de voltaje. En la figura 5 se ilustra un circuito más elaborado, ya que se trata de un puente Whenstone y un circuito acoplador de la señal que entrega el sensor, que también muestra una variación de un valor resistivo de acuerdo a los cambios presentados por la correspondiente lectura de la variable analógica. Y por último, en la figura 6 se observa la conexión de un sensor que entrega, de manera directa, un voltaje de 68
Club Saber Electrónica Nº 91
FIGURA 4
acuerdo a los cambios que presenta la variable analógica que se está midiendo. En todos los casos se requiere de una fuente externa para energizar a los sensores, pero se debe tener una referencia común
FIGURA 5
entre el circuito del PLC y los exteriores de los sensores, por lo tanto se emplea el borne identificado como “Ref”, ya que en ese punto es donde se tiene el reflejo de GND del PLC, por lo que se conecta con el GND del circuito exterior de los sensores para tener
FIGURA 6
Cap 6 - montaje PLC
9/11/12
10:07 AM
Página 69
PLC Microcontrolado con Entradas Analógicas
FIGURA 7
el punto de referencia común entre ambos circuitos. En cuanto a la conexión de los sensores discretos, observe el diagrama de la figura 7. Los sensores discretos manifestarán su operación mediante el uso de un contacto que bien puede ser el de un relevador, estos sensores solamente presentarán el estado de activado ó desactivado, lo que equivale a un “1” lógico ó “0” lógico, por lo que cuando el contacto se cierra significa que lo que se está detectando ya apareció, y cuando se abre se interpreta que aún no aparece. Sobre el borne de conexiones existe una terminal identificada como “COM”, que es en donde se tienen que conectar un extremo del contacto, ya que sobre la terminal “COM” existe un voltaje de 5VCD, por lo que el otro extremo del contacto se ubica sobre la terminal de entrada que vaya a emplearse, y así cuando se cierre el contacto, estarán llegando 5V a la terminal del microcontrolador PICAXE que se haya seleccionado. En resumen, la terminal “Ref” se emplea para sensores analógicos, mientras que la terminal “COM” se emplea para sensores discretos. Por otra parte, de los circuitos de las figuras 4, 5 y 6 ¿cómo sabremos cuál emplear? La respuesta depende del tipo del sensor a utilizar, ya que si es un sensor que entrega voltaje, normalmente ya se encuentra calibrado, por lo que únicamente lo
FIGURA 8
conectamos a la terminal de entrada correspondiente, mientras que los sensores que entregan una respuesta resistiva, se tienen que acondicionar y calibrar, por lo que necesitamos saber la teoría de operación tanto del divisor de voltaje como del puente de whenstone y seleccionar el más adecuado a la aplicación que se está implementando. Para concluir con la descripción de los módulos de entrada se mencionará que las entradas identificadas como 6 y 7, tan sólo tienen implementado el circuito a base de optoacopladores, por lo que en estas 2 entradas no se tiene jumper de selección, ya que ambas son exclusivamente para entradas discretas. LA ETAPA
DE
SALIDA
Los módulos de salida cumplen con la tarea de controlar el encendido y apagado de los elementos actuadores, que en su totalidad son dispositivos que consumen potencias de energía excesivamente grandes con respecto a la del microcontrolador, por ejemplo desde un simple motor de 5V, que llega a consumir por lo menos 30mA y eso dependiendo de lo que tenga que mover, es una corriente de un valor muy grande como para que lo suministre la terminal de salida de cualquier microcontrolador. El módulo de salida se basa, principalmente, en el circuito integrado ULN2803 (identificado como IC2) que internamente posee una serie de transistores que se encuentran bajo la configuración par Darlington, y cuya característica principal es la de manejar altas corrientes con respecto a las que proporciona un microcontrolador. El ULN2803 es un circuito de interfaz que activa una serie de relevadores a partir de las señales que se generan en el microcontrolador PICAXE, esto es, en el PICAXE se indica qué salida debe activarse para posteriormente, a través del ULN2803, proporcionar la corriente necesaria para activar al relevador correspondiente, tal Capítulo 6
69
Cap 6 - montaje PLC
9/11/12
10:07 AM
Página 70
PLC & Autómatas Programables
como se ilustra en el fragmento del diagrama de la FIGURA 9 figura 8. Por lo tanto, es a través de los relevadores que se tiene el control de la activación de los elementos de potencia que se están controlando, los relevadores tienen la capacidad de manejar corrientes constantes de hasta 10A, con voltajes que pueden ser tanto de corriente alterna como de corriente directa; además los relevadores (relés) aíslan y protegen al microcontrolador de posibles regresos dañinos FIGURA 10 de corrientes (fuerza electromotriz). Se eligió a los relés (relevadores) como elementos de salida, porque de manera universal pueden controlar cualquier tipo de energía eléctrica. Lo que se puede conectar a los bornes de salida del PLC, puede ser cualquier elemento de potencia ya sea de corriente alterna ó corriente directa, mismos que pueden ser dispositivos resistivos como lo es una lámpara incandescente, ó con todas las ventajas que nos ofrece el software de elementos magnéticos como lo son los motores o programación, el cual describimos más adelante. bobinas de un relevador, en las figuras 9 y 10 se observan algunos ejemplos de conexión de las terminales de salida. MONTAJE DEL PLC El PLC-PICAXE18A se energiza con un voltaje de 12VCD, por lo que es conveniente que se respete Para armar el PLC se requiere una placa de cireste valor de voltaje, y aunque se puede energizar cuito impreso como la mostrada en la figura 11. Si hasta 28VCD no lo recomendamos, ya que los regu- bien Ud. puede conseguir este dispositivo en forma ladores de voltaje se calentarían demasiado provo- de kit, nada impide que construya el circuito impreso cando un funcionamiento erróneo. y luego monte los componentes en la forma acosLA ETAPA
DE
CONTROL
Esta parte del PLC, de manera indirecta, la describimos cuando hacemos referencia a un microcontrolador PICAXE, porque el PICAXE de forma exclusiva es la pieza que integra a la etapa de control, porque la información que se adquiere de los sensores se tiene que dirigir a las terminales de entrada del PICAXE, para que éste en función del programa que tenga gravado en su memoria, reporte un resultado y lo envíe a los circuitos pertenecientes a la etapa de salida y así poder manipular a un elemento actuador. El microcontrolador PICAXE de nuestro PLC contará 70
Club Saber Electrónica Nº 91
tumbrada. Los reguladores de tensión de 3 terminales deben estar dotados de disipador de calor tipo “clip” y para la programación del PICAXE precisará colocar en el espacio identificado como PROGRA en la placa un jack estéreo del tipo usado para auriculares y luego armar el cable para programar PICAXE que deberá conectar en la placa del PLC en un extremo y en el puerto COM de una computadora en el otro extremo, figura 12. Se deduce que el conector de audio estéreo de tan sólo 3 terminales será utilizadas para comunicar al microcontrolador con una PC a través del puerto serie. Los terminales del conector de audio realizarán las siguientes actividades:
Cap 6 - montaje PLC
9/11/12
10:07 AM
Página 71
PLC Microcontrolado con Entradas Analógicas
FIGURA 11
* La línea identificada con el número 1 en el diagrama (figura 12) sirve para verificar que el micro-
controlador PICAXE se encuentra conectado al puerto serie de la PC. Capítulo 6
71
Cap 6 - montaje PLC
9/11/12
10:07 AM
Página 72
PLC & Autómatas Programables
FIGURA 12 * La línea identificada con el número 2 sirve para programar al microcontrolador PICAXE. * La línea identificada con el número 3 es la referencia GND o también conocida como tierra eléctrica. PROGRAMACIÓN
DEL
PLC
Para cualquier PLC, el software que normalmente se emplea para programarlo es el llamado “lenguaje en escalera” o diagrama de contactos, en el cual las instrucciones se implementan mediante símbolos, tal como se observa en la figura 13. Ya hemos dicho que, en particular para el PLC que estamos diseñando, por el momento no se contará con una aplicación que nos permita programarlo en “lenguaje en escalera”, pero vamos a solventar esta desventaja con la realización del armado de bloques con instrucciones propias de los microcontroladores PICAXE, para que de esta manera podamos contar con una equivalencia en cuanto a la serie de símbolos que nos puede proporcionar un PLC. Existe una serie de símbolos del lenguaje en escalera que tienen un reflejo hacia la actividad exterior del PLC, y de esta manera se tienen contactos normalmente abiertos (N.A.) y normalmente cerrados (N.C), los cuales leen la información de las terminales de entrada de datos y envían la información al PLC. También existen los símbolos que por medio de los cuales se le indica al PLC que tiene que enviar 72
Club Saber Electrónica Nº 91
un mando de control para activar o desactivar algún actuador o elemento de potencia. Entonces, para programar un PLC lo único que tenemos que hacer es emplear los símbolos adecuados para tener un sistema de control automático. Por otra parte, los símbolos que se emplean en el lenguaje en escalera, son la base para programar las funciones lógicas que integran al programa que controla algún proceso industrial, por lo tanto, por medio de un ejemplo vamos a observar de que manera se puede implementar una función lógica AND (Y), ó una función lógica OR (O) y una negación. Función lógica AND (Y) Esta función en lenguaje escalera equivale a interconectar una serie de contactos que pueden ser N.A. ó N.C. en serie, lo que asemeja en un diagrama eléctrico, a un circuito serie en donde se encuentran interruptores y al final de éstos una lámpara, y para que ésta encienda en necesario que todos estén cerrados. Para implementar esta misma función mediante el código en un microcontrolador PICAXE lo haremos en dos partes, en primer término se requiere leer el estado que están reportando los sensores (en este caso discretos), para ello como ejemplo obsérvese el fragmento de lenguaje escalera expresado en la figura 13.
FIGURA 13
Cap 6 - montaje PLC
9/11/12
10:07 AM
Página 73
PLC Microcontrolado con Entradas Analógicas
Esta disposición de símbolos da origen a una rama, en la cual se observa el efecto de 3 contactos que al estar conectados en serie, se tiene una equivalencia de una función lógica AND, estos contactos muestran su efecto a partir de 3 entradas, pues bien, en nuestro microcontrolador PICAXE también se tiene que leer el estado de 3 entradas para tener la equivalencia, y para ello necesitamos saber en qué terminales de entrada de datos se encuentran conectados los sensores, continuando con el ejemplo supóngase que las entradas para conectar esos sensores fueron la E0, E1 y E2 (en un PICAXE las terminales de entrada son 5 y son E0, E1, E2, E6 y E7), por lo tanto para que la función lógica AND implementada en la figura 13, tenga el mismo efecto en el microcontrolador PICAXE, se tiene que leer solo el efecto de las terminales involucradas con la función lógica, por lo que tenemos que anular lo que suceda con las terminales restantes, para ello vamos a colocar una máscara a manera de filtro, para que solo pueda obtenerse el estado lógico de los sensores en las terminales de entrada que nos interesan. La máscara o filtro, que le vamos a colocar al PICAXE, estará implementada de acuerdo a como se muestra en la tabla 1. Por medio de la aplicación de la máscara descrita anteriormente, vamos a indicarle al PICAXE que lea sus terminales de entrada y ese dato lo almacene en un registro temporal o variable que puede ser como en este ejemplo, el identificado como “b0”, y para eliminar el efecto de las terminales E6 y E7 lo que tenemos que hacer es, de alguna manera, que estos bits adquieran un valor de 0 lógico, no importando el estado que tengan sus sensores respectivos, mientras que sobre las terminales E0, E1 y E2 se debe mantener el valor del estado lógico que respectivamente guarden los sensores correspondientes. Esto se puede escribir por medio de un “diagrama de flujo” con el que haremos el programa de nuestro PLC en el Editor
de Programas. Para describir entonces, cómo se hace una función AND, vea el esquema de la figura 14. Se observa que el valor de la variable b0 se opera por medio de una función AND (&) con el valor decimal de 7, FIGURA 14 mismo que equivale a la aplicación de la máscara, y de esta manera cualquier valor lógico que tengan las terminales E6 y E7 será igual con “0” lógico. El dato que tengan las terminales E0, E1 y E2 se mantendrá. La instrucción “Let b0 = pins & 7” indica que le asigne a la variable b0 el valor que corresponde a la lectura de los pines E0, E1 y E2. Por ejemplo, si E2=0, E1=0 y E0=1, entonces b0=1. Otro ejemplo: si E2=1, E1=0 y E0=1, entonces b=5. Posterior a la aplicación de la máscara, se tiene que analizar el estado de las 3 terminales que están involucradas con la función lógica AND de la rama del lenguaje en escalera de la figura 13, para ello el valor que debe estar alojado dentro de la variable b0 debe ser igual a 7 decimal, si el estado de los 3 sensores es 1 lógico, y la variable b0 reportará cualquier otro valor si alguno de los sensores o todos están en 0 lógico, tal como se ilustra en la figura 14. El efecto de esta función lógica AND, equivalente a la rama de la figura 13, lo estamos reflejando sobre la salida S0, misma que se encenderá cuando los 3 sensores reporten un 1 lógico sobre las terminales de entrada del PICAXE. Si se quiere cambiar de terminales de entrada o involucrar mas (solo tenemos 5) entradas, basta con adecuar la máscara que filtra a las terminales que nada tienen que ver con la función AND de una rama de lenguaje en escalera, por otra parte si se tienen mas ramas, el fragmento de código que implementamos para el PICAXE tiene que repetirse tantas veces como ramas necesitemos. Para que se entienda, según lo expresado en la tabla 1, los TABLA 1 valores de E6 y E7 son siempre Capítulo 6
73
Cap 6 - montaje PLC
9/11/12
10:07 AM
Página 74
PLC & Autómatas Programables
igual a cero, luego, para obtener una función equivalente a una AND de 3 entradas (E0, E1 y E2), sólo habrá una salida válida cuando estas tres entradas estén en “1” y si esto se cumple, la sumatoria en binario equivale al número decimal 7, por lo tanto, y tal como se muestra en el bloque de la figura 14, asignamos a una variable b0 la suma de los pines de entrada y si se cumple que: E0 = 1, E1 = 1, E2 = 1, E3 = 0, E4 = 0 Entonces la sumatoria será igual a “7” y para completar la función AND deberemos preguntar si la variable b0 = 7, tal que cuando se cumpla esa condición entonces la salida “0” vaya a estado alto. El diagrama FIGURA 15 de flujo que representa a la función lógica AND se completa entonces con el diagrama de flujo de la figura 15. Función Lógica OR (O) Esta función en lenguaje escalera obliga a interconectar interruptores en paralelo, lo que equivale en un diagrama eléctrico a tener alternativas para que al final de estos pueda encenderse una lámpara, y para ello es suficiente con tan solo tener un interruptor cerrado. Para implementar la función OR mediante el código en un microcontrolador PICAXE, en primera instancia se requiere leer el estado que están reportando los sensores (en este caso discretos), para ello a manera de ejemplo se muestra un fragmento del lenguaje escalera ilustrado en la figura 16. Por la disposición 74
Club Saber Electrónica Nº 91
FIGURA 16 de los símbolos se está dando origen a una bifurcación en una rama, en la cual se observa el efecto de 3 contactos que al estar conectados en paralelo, se tiene la equivalencia con la función lógica OR, estos contactos muestran como operan a partir de 3 entradas, por lo tanto, el microcontrolador PICAXE debe leer el estado de las 3 entradas involucradas, y para ello necesitamos saber qué terminales fueron las elegidas para conectar los sensores. Prosiguiendo con el ejemplo ilustrado en el lenguaje escalera para la función lógica OR, supóngase que las entradas para conectar esos sensores fueron la E0, E2 y E6 (recuerde que en un PICAXE las terminales de entrada son 5 y son E0, E1, E2, E6 y E7), por lo tanto para que la función lógica OR implementada en la figura 16, tenga la misma operación en el microcontrolador PICAXE, se tiene que leer sólo el estado lógico de las terminales involucradas con la implementación de la operación lógica OR, por lo que tenemos que nulificar el estado que se genere para las otras terminales que no están contempladas, para ello vamos a utilizar una máscara a manera de filtro para que sólo
TABLA 2
Cap 6 - montaje PLC
9/11/12
10:07 AM
Página 75
PLC Microcontrolado con Entradas Analógicas
pueda obtenerse el estado lógico de los sensores en las terminales de entrada que nos interesan. La máscara o filtro que le vamos a colocar al PICAXE, estará implementada de acuerdo a como se muestra en la tabla 2. Por medio de la aplicación de la máscara descrita, vamos a indicarle al PICAXE que lea sus terminales de entrada y ese dato lo almacene en un registro temporal o variable que en este ejemplo se trata de “b0”, y para descartar el efecto de las terminales E1 y E7 lo que tenemos que hacer es de alguna manera que estos bits adquieran un valor de 0 lógico, no importando el estado que tengan sus sensores respectivos, mientras que las terminales E0, E2 y E6 deben mantener el valor del estado lógico que respectivamente, guarden los sensores que tengan conectados. En dicha figura se observa que el valor de la variable b0, se opera por medio de una función AND (&) con el valor decimal de 69, mismo que equivale a la aplicación de la máscara (vea la tabla 2 nuevamente), y de esta manera sólo se tendrán en cuenta para fijar el dato de la variable b0 el dato que tengan las entradas E0, E2 y E6. La instrucción (let b0 = pins & 69) indica que se le asigne a b0 el valor correspondiente a la suma en decimal (con el peso de cada bit) de las entradas E0, E2 y E6. Por ejemplo, si E6=1 (que tiene un peso igual a 64 expresado en decimal, E2=0 (no tiene peso por ser “0”) y E0=1 (tiene un peso igual a 1, expresado en decimal) entonces b0=65 (64+1). Posterior a la aplicación de la máscara, se tiene que analizar el estado de las 3 terminales que están involucradas con la función lógica OR del lenguaje en escalera de la figura 16, para ello el valor que debe estar alojado dentro de la variable b0 se debe comparar con el valor decimal de 0, específicamente se hace la pregunta si b0 es mayor que 0. Si el estado de los 3 sensores es igual a 0 lógico, significa que ninguno de ellos se ha activado, por otra parte si en la variable b0 se reportara cualquier valor que sea mayor que 0, quiere decir que alguno de los sensores o todos inclusive están en 1 lógico. Por lo tanto, el paso siguiente del diagrama de flujo será “preguntar” si b0>0 ya que cualquier valor mayor que “)” indicará
que al menos un sensor en los pines E0, E2, E6 esté activado. El efecto de la función lógica OR programado en el diagrama de flujo de la figura 17 equivalente al lenguaje escalera de la figura 16, lo estamos refleFIGURA 17 jando sobre la salida S1. La lámpara conectada en esta salida se encenderá cuando por lo menos uno de los 3 sensores reporten un 1 lógico sobre las terminales de entrada del PICAXE. Si se quiere cambiar de terminales de entrada o involucrar más (sólo tenemos 5 entradas), basta con adecuar la máscara que filtra a las terminales que nada tienen que ver con la función OR que se quiere implementar, por otra parte si se necesitan más funciones lógicas OR, no tenemos más que repetir el fragmento del código que hicimos para el PICAXE, por lo que éste tiene que repetirse tantas veces como funciones necesitemos. Recuerden que con el programa llamado “PICAXE Programming Editor”, podemos implementar perfectamente las mismas funciones que se realizan en un lenguaje escalera, claro que no es tan fácil de hacer pero se puede. Por otra parte ya hemos abordado los conceptos mínimos que se requieren para que nuestro PLC haga todas las funciones básicas de uno comercial, pero se debe tener presente que se necesitan dominar ciertas técnicas de programación para los PLC, por lo que nuevamente les hacemos una atenta invitación a que visiten nuestra página de internet www.webelectronica.com.mx y en la sección de password empleen la clave “progplc”, para que puedan descargar mucha información sobre la programación de PLC. Capítulo 6
75
Cap 6 - montaje PLC
PLC
DE
9/11/12
10:07 AM
Página 76
PLC & Autómatas Programables
3 ENTRADAS Y 2 SALIDAS
Este PLC posee 3 entradas cuyas señales son amplificadas por medio de amplificadores operacionales y optoaisladas por medio de integrados comerciales del tipo UN25 y 2 salidas que son conducidas a relés por medio de transistores del tipo BC548. Estos elementos hacen que el equipo se comporte de forma aceptable para controlar salidas de hasta 12A con tensiones de 125V. El cerebro o CPU del PLC, tal como se observa en la figura 18, es un PICAXE-08 el cual puede ser programado sin quitarlo de la placa de circuito impreso para que realice las operaciones que precisa el usuario. Lo interesante de este circuito es que puede ser empleado como sistema de alarma para una casa, para controlar procesos industriales como máquinas inyectoras de plástico o para controlar motores paso a paso, es decir, podrá realizar casi cualquier actividad de índole industrial. Para la programación del PLC, se empleará el Editor de Programas del sistema PICAXE y para ello es preciso que tenga en cuenta cuales son los pines que hemos designado para las entradas y para las salidas, en la siguiente tabla realizamos la designación de pines: Pin pin pin pin pin pin
0 1 2 3 4
Pata 7 6 5 4 3
Función Salida (s0) Salida (s1) Entrada (e2) Entrada (e3) Entrada (e4)
En la figura 19 se muestra la placa de circuito impreso de nuestro PLC que, por ser portátil, hasta puede ser alimentado con una batería de 9V, gracias a la inclusión de un regulador de 3 terminales que alimenta a los chips con una tensión de 5V. 76
FIGURA 18
Club Saber Electrónica Nº 91
Para la programación del PLC debe proceder de la forma explicada para la placa entrenadora PICAXE-08 lo que implica que deberá conectar el cable mostrado en la figura 12 entre el PLC y la computadora, luego tendrá que ejecutar el Editor
Cap 6 - montaje PLC
9/11/12
10:07 AM
Página 77
PLC Microcontrolado con Entradas Analógicas
FIGURA 19
de Programa y realizar el “ejercicio de programación” apropiado para que el PLC realice las actividades que Usted desee. Por ejemplo, en la figura 20 se muestra el diagrama de flujo necesario para que los terminales de entrada e2 y e3 de PLC se comporten como las entradas de una compuerta AND (Y) cuya salida será el terminal s0. En el caso mostrado en dicha figura, cada vez que se active s0 por acción de sus entradas, ésta permanecerá indefinidamente en dicho estado lo que significa, por ejemplo, que si en las entradas e2 y e3 hay interruptores tal que al ser presionados introduzcan un “1” en las entradas, cuando se active cualquiera de ellos, cambiará de estado la salida y si en ella hay un motor, éste comenzará a girar y ya no se detendrá. En este ejemplo se dice que se obtiene una salida “con memoria”. También podría haber realizado el programa en BASIC (o lo podría convertir el diagrama de flujo en su correspondiente BASIC) y obtendríamos un archivo como el mostrado en la figura 21. Ahora bien, todo PLC debe poder ser programado en lenguaje de instrucciones (BASIC, por ejemplo), en diagrama de funciones (las podemos
FIGURA 20
FIGURA 21 Capítulo 6
77
Cap 6 - montaje PLC
9/11/12
10:07 AM
Página 78
PLC & Autómatas Programables
armar en el diagrama de flujo) o en lenguaje de contactos, también llamado lenguaje escalera o Ladder. En la figura 22 realizamos el mismo ejercicio en el programa Mi PLC, propuesto por CINDA Electrónica para que Ud. “practique” este lenguaje. Dicho programa y la explicación de su uso se brindó en el capítulo 3. Nosotros le recomendamos que se “familiarice” con la construcción de programas ya sea en diagrama de flujo o en BASIC, usando el Editor de Programas que le permitirá “cargar” al PIC sin tener que realizar ninguna conversión. En este punto es preciso recalcar que el manejo de estos programas ya los hemos explicado en numerosas ediciones de Saber Electrónica y que con las claves que brindamos podrá obtener la bibliografía gratuitamente. Otro ejemplo es el que mostramos en la figura 23. Dicho diagrama de flujo representa la misma “compuerta lógica” del ejemplo anterior, pero en este caso la salida sólo estará activa siempre y cuando esté activa alguna de las entradas, de esta manera se puede realizar el mando de un dispositivo desde dos posiciones por medio de dos “sensores independientes”, sin embargo debemos aclarar que no se trata de un interruptor “con memoria” y, por lo tanto sus aplicaciones pueden ser limitadas. En la figura 24 se muestra la pantalla correspondiente al programa expresado en BASIC y en la figura 25 se ha dibujado el programa realizado en lenguaje de contactos. Note que la única diferencia respecto al programa de la figura 26 es que la salida ahora no posee memoria (en la figura 20 tenemos el símbolo -( A )- mientras que ahora tenemos el símbolo -( )- ). De la misma manera que hemos representado el funcionamiento de una compuerta AND, ahora podemos hacer lo mismo pero con una compuerta OR (O), lo que implica que vamos a programar nuestro PLC para que la salida s0 se active cada vez que se active ya sea la entrada e2 “o” la entrada e3 “o” ambas entradas a la vez. La figura 26 muestra el diagrama de flujo de esta acción. Una rápida mirada nos permitirá compren78
Club Saber Electrónica Nº 91
FIGURA 22
FIGURA 23
FIGURA 24 FIGURA 25
FIGURA 26
der que la salida tiene memoria, es decir, una vez que se activó la salida, ésta ya no podrá ser desac-
Cap 6 - montaje PLC
9/11/12
10:07 AM
Página 79
PLC Microcontrolado con Entradas Analógicas
FIGURA 27
FIGURA 28 FIGURA 29
encuentran en paralelo y que con uno sólo de ellos que se active la salida pasará a estado alto. Una de las “limitantes” de la programación en diagrama de flujo es que a un proceso le puede seguir “sólo” un proceso, con lo cual no puede aplicarse el concepto de “escalones de programación” que se usan en el lenguaje escalera. Sin embargo, esto no debe ser un obstáculo para Ud, ya que existen variadas formas de programar con lo que podrá realizar rutinas y luego “guardarlas” para que las pueda utilizar en otros proyectos. Hasta aquí hemos dado ejemplos de cómo se pueden realizar funciones sencillas por medio de diagramas de flujo pero un PLC por ejemplo, debe poder activar salidas pero también desactivarlas. Por ejemplo, podemos activar la sirena de una alarma domiciliaria si se abre una ventana o si se detecta el movimiento de una persona (hasta aquí precisamos dos entradas y una salida) y desactivar dicha sirena a distancia pero que el sistema de seguridad siga alerta por si se produce alguna otra alteración en las correspondientes entradas (es decir, precisamos una nueva entrada que haga cambiar de estado a la salida). En este ejemplo precisamos tres entradas y una salida y la designación de terminales será la siguiente: Entrada e2 e3 e4 s0
FIGURA 30
tivada. El programa en BASIC que representa a esta compuerta se muestra en la pantalla de la figura 27, mientras que el correspondiente diagrama de programación en lenguaje de contactos se puede ver en la figura 28. Se observa que el lenguaje de contactos es “más intuitivo”, ya que es fácil distinguir que los contactos que representan a las entradas se
PIN 2 3 4 0
Función sensor de ventana sensor de movimiento desactiva la salida s0 activación de sirena
Desde el punto de vista práctico, se precisa una compuerta “O” con memoria con entradas e2 y e3, que corresponda a s0 y que dicha salida se desactive si cambia de estado la entrada e4. Esta situación se puede “programar” mediante el diagrama de flujo de la figura 29. Como en los casos anteriores, en la figura 30 se observa el programa en BASIC y en la figura 31 en lenguaje Ladder. Vea que en este último caso se tienen dos escalones de programación, un escalón que establece Capítulo 6
79
Cap 6 - montaje PLC
9/11/12
10:07 AM
Página 80
PLC & Autómatas Programables
la condición de “activación” de la salida y otro escalón que establece la condición de “desactivación”. Como es sabido, los PLCs poseen temporizadores, contadores, generadores de marcas, etc. Todas estas funciones también pueden programarse en el Editor de Programas. A los efectos de dar un ejemplo, en la figura 32 se muestra el diagrama de flujo de la activación de una salida siempre y cuando una entrada se mantenga activa durante, por lo menos, 5 segundos. En este caso, si la entrada está activa menos de ese tiempo, la salida no se activa pero si la salida se activa, permanecerá en ese estado por más que la entrada haya cambiado de estado. La figura 33 muestra el listado en BASIC de este ejemplo y la figura 34 detalla cómo es el programa en lenguaje de contactos. Como puede observar la lista de “ejemplos” es interminable y la programación dependerá del sistema que desea adoptar, pero puede estar seguro de que este PLC, muy económico, tiene aplicaciones comerciales muy amplias. Lista de Materiales del PLC RG1 - LM7805 - Regulador de 3 terminales IC1 a IC3 - UN25 - Optoacopladores IC4 - LM324 - Cuádruple amplificador operacional IC5 - PICAXE-08 CN1 - Bornera de 6 contactos CN2 - Conector estéreo tipo plug hembra CN3, CN4 - Borneras de 2 contactos R1, R5, R9 - 1kΩ R2, R6, R10 - 100kΩ R3, R7, R11 - 1kΩ R4, R8, R12 - 100kΩ R13 - 22kΩ R14 - 10kΩ R15, R16, R17, R18 - 1kΩ R19, R20, R21 - 10kΩ D1, D2, D3 - Leds rojos de 5 mm D4, D5 - 1N4148 - Diodos D6, D7 - Leds verdes de 5 mm Q1, Q2 - BC548 - Transistores NPN de uso general. RL1, RL2 - Relés de 12V de bobina para circuitos impresos del tipo simple inversor (WJ107) Varios: Zócalo (base) de 8 terminales, fuente de alimentación, conectores, placa de circuito impreso, etc.
El montaje del PLC es sencillo y no reviste consideraciones especiales. ☺ 80
Club Saber Electrónica Nº 91
FIGURA 31 FIGURA 32
FIGURA 33 FIGURA 34
3ª de forros 2.qxd
9/10/12
4:31 PM
Página 3ªFo1
4ª de forros.qxd
9/10/12
4:31 PM
Página 4ªFo1