UNIVERSIDAD DE SANTIAGO DE CHILE Departamento de Ingeniería Eléctrica CONTROLADORES DE LÓGICA PROGRAMABLE Actualizado al 24 de abril de 2003 Mauricio Vanín Freire Ingeniero Civil Electricista Alvaro Waman Moraga Ingeniero Civil Electricista Oscar Páez Rivera Profesor Asociado Departamento de Ingeniería Eléctrica
Pagina 2 Índice 1. CONTROLADORES DE LÓGICA PROGRAMABLE - PLC's 2. ARQUITECTURA INTERNA DEL PLC 3. ARQUITECTURA MODULAR DEL PLC 4. CPU 5. FUNCIONAMIENTO 1. CONTROLADORES DE LÓGICA PROGRAMABLE PLC Los primeros sistemas de control lógico usados en la industria se basaron casi exclusivamente en componentes, hidráulicos, mecánicos y electromecánicos. Más tarde, a fines de los años sesenta, con la presencia de semiconductores, aparecen sistemas de control de menor tamaño y consumo, más rápidos y con menor desgaste. Estos dispositivos se basaron en circuitos integrados con la lógica TTL. A pesar de sus ventajas, estos sistemas no prosperaron. La mayor debilidad se tuvo en el área de detección de fallas y reparación de fallas, ante la gran dificultad de poder chequear el comportamiento de los circuitos, ya que todas las soluciones eran propietarias. El usuario no tenía accesos a los planos de diseño, desconociendo los circuitos integrados componentes de las tarjetas de los sistemas de control lógico. En la mitad de la década de los setenta, las prestaciones de los sistemas de control se incrementan gracias al empleo de los microprocesadores. Entonces, la demanda en la industria de un sistema económico, robusto, flexible, fácilmente modificable y con mejores características de control sobre tensiones y corrientes fuertes provoca el desarrollo de los autómatas programables industriales llamados PLC. Los primeros PLC estaban diseñados para sustituir a los sistemas convencionales con relays o circuitos lógicos. Por tal motivo, surgieron con prestaciones muy similares a las de los sistemas de control lógico basados en relay; y sus lenguajes de programación eran muy próximos a los esquemáticos empleados en las mismas. En los PLC actuales, se producen mejoras significativas, incorporando principalmente un conjunto de instrucciones más completo que les permite mejorar la velocidad de respuesta. El PLC permite elaborar y modificar las funciones que tradicionalmente se han realizado con relays, contactores, temporizadores, etc. Actualmente hay en el mercado autómatas que se adaptan a casi todas las necesidades, con entradas / salidas digitales y/o analógicas, hay pequeños y grandes. La programación suele ser sencilla, dependiendo básicamente de lo que se pretenda conseguir.
Pagina 3 A pesar que los distintos lenguajes de programación usan la misma simbología (esquema de contactos); cada fabricante tiene su propio lenguaje de programación. Esto dificulta el emplear una nueva marca cuando ya se domina un lenguaje dado, por ello es importante es conocer las posibilidades de un autómata y saber como llevarlas a la práctica con cualquiera de las marcas de PLC que existen en el mercado. 2. ARQUITECTURA INTERNA DEL PLC Las unidades más importantes aparte de la fuente de alimentación son: Unidad central de proceso, CPU. Memoria Interfaces de entrada salida Memoria Definición: cualquier tipo de dispositivo que permita almacenar información en forma de bits (unos y ceros), los cuales pueden ser leídos posición a posición (bit a bit, o por bloques de 8 (byte) o dieciséis posiciones (word) Las memorias se pueden clasificar en memoria RAM y en memoria ROM RAM (Random Acces Memory), memoria de acceso aleatorio o memoria de lecturaescritura. Pueden realizar los procesos de lectura y escritura por procedimientos eléctricos. Su información desaparece al faltarle la alimentación. ROM (Read Only Memory), o memoria de sólo lectura. En estas memorias se puede leer su contenido, pero no se puede escribir en ellas; los datos e instrucciones los graba el
Pagina 4 fabricante y el usuario no puede alterar su contenido. Aunque haya un fallo en la alimentación. Clasificación (lectura/escritura) En la tabla siguiente se muestran las características de las posibles memorias MEMORIA LECTURA/ESCRITURA SÓLO LECTURA APLICACIONES VOLÁTIL RAM Datos Internos Memoria NO VOLÁTIL RAM + BATERÍA RAM + EEPROM EEPROM ROM EPROM Imagen E/S Monitor Intérprete Programa de usuario (Lo guarda una vez depurado) Programa de usuario (RAM + Batería) Datos internos mantenidos Parámetros Más RAM + EEPROM respalda a la RAM Programa de usuario Parámetros Se requieren cuatro tipos de memoria para la operación del PLC: Memoria de usuario: Contiene la aplicación de control desarrollada por el usuario. Memoria imagen de las entradas y salidas del PLC: Contiene los valores leídas de las entradas físicas y las salidas calculadas por el PLC. Memoria de datos: dados por el usuario como los presets y los valores calculados por la aplicación, tales como salidas virtuales, temporizadores, contadores, registros, etc. Mapa de memoria: Contiene los bits y bytes que corresponden a todos los elementos que maneja el software. En la tabla siguiente se muestra el mapa de memoria del PLC Siemens TI405 Elemento de Rango Ubicación en mapa Cantidad memoria Variable asignada De memoria Puntos de entrada X0 - X477 V40400 - V40423 320 Puntos de Salida Y0 - Y477 V40500 - V40523 320 Relays de Control C0 - C1777 V40600 - V40677 1024
Pagina 5 SP0 - SP137 V41200 - V41205 Relays Especiales SP320 - SP617 V41215 - V41230 352 SP620 - SP717 V41231 - V41234 Timers T0 - T377 --- 256 Timers de valor --- V00000 - V00377 256 continuo Bits de estado de T0 - T377 V41100 - V41117 256 timers Contadores CT0 - CT177 --- 128 Contadores de valor --- V01000 - V01177 128 continuo Bits de estado de CT0 - CT177 V41040 - V41147 128 contadores V1400 - V7377 Palabras de datos --- V10000 - V17777 3072 Stages S0 - S1777 V41000 - V41077 1024 Entradas / salidas GX0 - GX1777 V40000 - V40077 1024 remotas V700 - V737 Parámetro de --- sistemas V7400 - V7777 288 Interfaces de entrada / salida Cumplen la función de conectar el PLC con el mundo exterior; los objetivos de estas unidades son acondicionar las señales de entradas para permitir que el PLC lea las condiciones de terreno y comando y acondicionar las señales lógicas de salida del PLC de modo que puedan accionar a los elementos finales de control. Los comandos que llegan, provienen de botoneras, interruptores, y las condiciones de terreno se obtienen de : limites de carrera, sensores análogos y digitales, selectores, etc. Estos dispositivos son alambrados desde sus terminales a las interfaces de entrada (puntos de entrada). Los dispositivos que son controlados, ya sea partida de motores, válvulas solenoides y luces piloto, son conectados desde sus terminales a los puntos de salida. Cabe señalar que tanto las salidas como las entradas pueden ser del tipo digital y/o análogas.
Pagina 6 Fuente de poder Entrega los voltajes requeridos para las operaciones ya sea de la CPU como de las entradas y salidas del PLC. Usualmente, el PLC dispone de una batería conectada a esta fuente de alimentación, lo que asegura el mantenimiento de la memoria del programa y algunos datos en las otras memorias en caso de la interrupción de la tensión exterior 3. ARQUITECTURA FÍSICA DEL PLC La estructura externa DEL PLC Se clasifica en: Estructura compacta. Estructura modular. Estructura compacta En un solo bloque se disponen todos los elementos necesarios (fuente de alimentación, CPU, memorias, entrada/salida, etc. Este formato es ideal para aplicaciones en las que el número de entradas y salidas es pequeño, poco variable y conocido a priori. Su carcasa es de carácter hermético, lo que permite su empleo en ambientes industriales especialmente hostiles. Consideran un número fijo de entradas salidas, con rangos de trabajo igualmente establecidos e inmodificables. Ofrecen condiciones de programación limitadas y son, en general, simples de utilizar y de alcance reducido. Son adecuados para el control de tareas de mediana y baja complejidad en las cuales no se requiera de posibilidad de expansión futura del sistema y que cuenten con un reducido número de señales de rangos normalizados. Autómata de estructura compacta Estructura modular Permite adaptarse a las necesidades del diseño, y a las posteriores actualizaciones. Configuración del sistema variable. Permite el funcionamiento parcial del sistema frente a averías localizadas, y una rápida reparación con la simple sustitución de los módulos averiados.
Pagina 7 Habitualmente este sistema está conformado por módulos, que a su vez constituyen un rack; el tamaño de los módulos en un rack depende del fabricante del controlador (estos pueden ser de 4, 8, 16). Actualmente, además de los módulos de entrada y salida, se han agregado módulos especiales, como por ejemplo módulos de comunicación directa a un computador personal (PC) mediante el cual se puede realzar la programación utilizando un software adecuado; y trabajar a distancia mediante un módem. Con estas nuevas funciones se puede hacer trabajar el PLC en tareas de proceso y control industrial manteniendo un monitoreo constante, logrando obtenerse gráficos de los procesos, supervisión, etc.; lo cual hace de estos controladores lo más poderoso en los procesos industriales. Consideran número, tipo y rangos de trabajo de las señales como una opción abierta al usuario. De esta forma es posible conformar un sistema adaptado a las necesidades propias, mediante la selección de los módulos más adecuados. En este caso los elementos básicos con que debe contarse son sólo las unidades de alimentación y procesamiento, al igual que las capacidades de memoria, quedando abierta al usuario, la utilización de variables discretas, análogas, de temporización, etc. PLC de estructura modular Proporcionan de este modo, una amplia posibilidad de expansión y adaptación y son adecuados para el control de tareas de mediana y alta complejidad donde haya un gran número y una amplia diversidad en la señales de trabajo empleadas. 4. CPU La CPU (Crontrol Processing Unit) es la encargada de ejecutar el programa de usuario y activar el sistema de entradas y salidas. Tiene la misión, en algunos tipos de autómatas, de controlar la comunicación con otros periféricos externos, como son la unidad de programación, LCDs, monitores, teclados, otros autómatas u otros computadores, etc.
Pagina 8 La CPU esta formada por el microprocesador (µp), la memoria y circuitos lógicos complementarios. La CPU ejecuta el programa de usuario, que reside en la memoria, adquiriendo las instrucciones una a una. El funcionamiento es de tipo interpretado, con decodificación de las instrucciones cada vez que son ejecutadas. Los bloques fundamentales de una CPU son: ALU (Arithmetic Logic Unit) Acumulador Flags Contador de programa (PC) Decodificadores de instrucciones y secuenciador Programa ROM Esquema de bloques fundamentales que componen una CPU ALU (Arithmetic Logic Unit): La unidad aritmético lógica, es la parte de la CPU donde se realizan los cálculos y las decisiones lógicas (combinaciones Y, O, sumas, comparaciones, etc.). Acumulador: Almacena el resultado de la última operación realizada por la ALU.
Pagina 9 Flags: Indicadores de resultado de operación (mayor que, positivo, negativo, resultado cero, etc.). El estado de estos flags puede ser consultado por el programa. Contador de programa (PC): Direccionamiento de la memoria donde se encuentran las instrucciones del programa de control, y del cual depende la secuencia de ejecución de ellas. Decodificadores de instrucciones y secuenciador: Puede ser cableado y/o programado, donde se codifican las instrucciones leídas en la memoria y se generan la señales de control pertinentes. Programa ROM: El fabricante suele grabar una serie de programas ejecutables fijos y es a estos programas a los que accederá el microprocesador para realizar las funciones ejecutivas. El sofware de cualquier Autómata consta de una serie de funciones básicas que realiza en determinados tiempos de cada ciclo: en el inicio o conexión, durante el ciclo de o ejecución del programa y a la desconexión. Este software o programa del sistema es ligeramente variable para cada autómata, pero, en general, contiene las siguientes funciones: Supervisión y control de tiempo de ciclo (watchdog), tabla de datos, alimentación, batería, etc. Autotest en la conexión y durante la ejecución del programa. Inicio del ciclo de exploración de programa y de la configuración del conjunto. Generación del ciclo base de tiempo. Comunicación con periféricos y unidad de programación, etc. Hasta que el programa del sistema no ha ejecutado todas las acciones necesarias que le corresponden, no se inicia el ciclo de programa de usuario. 5. FUNCIONAMIENTO Un PLC es un autómata programable diseñado y construido para efectuar el control lógico que se requiere en los procesos industriales. Para controlar dicho proceso, este controlador emplea un programa especifico (aplicación), el que contiene la secuencia de las operaciones a realizar y todos los condicionamientos lógicos necesarios. En forma practica, las condiciones lógicas que se requieren, se establecen mediante dispositivos de dos estados (selectores, switchs, pulsadores, etc.). Estos dispositivos de terreno se conectan a los puntos de entradas del PLC. Fuente poder entradas Entradas PLC Fuente poder salidas ~ Salidas Esquemático para el funcionamiento general de un PLC. Esta secuencia de operaciones se comunica al
Pagina 10 proceso como señales de salida a los preactuadores del proceso, estos están cableados directamente en los bornes de conexión del PLC. Para efectuar el control lógico que se requieren los procesos industriales el PLC emplea un programa específico (aplicación), el que contiene la secuencia de las operaciones a realizar y todos los condicionamientos lógicos necesarios. El PLC puede ser visto como un dispositivo inteligente capaz de calcular a través de un Programa de control lógico, las salidas en función de las entradas determinadas. Capacidades generales de un PLC Un PLC genérico tiene por lo menos las siguientes capacidades: Entrada salida a. Entradas digitales. El PLC acepta la conexión directa a sus bornes de entrada digital de contactos secos provenientes de comandos o detectores de terreno. También acepta la información digital proveniente de sensores inductivos o capacitivos. b. Entradas análogas. El PLC acepta la conexión directa a sus bornes de entrada análoga de instrumentos de medición provenientes de terreno. c. Salidas digitales. El PLC acepta la conexión directa a sus bornes de salida digital de preactuadores digitales tales como relays, contactores, electroválvulas etc. d. Salidas análogas. El PLC acepta la conexión directa a sus bornes de salida análoga de válvulas de control. Procesamiento lógico e. Lógica Booleana convencional: El PLC es capaz de calcular las operaciones básicas AND OR y NOT (Figura 1.6). Puede realizar cualquier combinación de estas operaciones. f. Conteo. El PLC es capaz de llevar la cuenta de las veces que una variable digital pasa del valor 0 al valor 1, o lo que es equivalente, las veces que se cierra el contacto asociado a la variable digital (Figura 1.6).
Pagina 11 g. Temporizaciones. El PLC es capaz de llevar la cuenta del tiempo asociada al cierre sostenido de una variable digital, existen diversas formas de temporización el retardo a la conexión (On delay Figura 1.6). h. Secuenciamiento El PLC es capaz de ejecutar una secuencia de tareas asociadas a la producción (Figura 1.6). Existen diversas formas de programar estas secuencias dependiendo de las herramientas especificas del PLC siendo la más frecuente alguna forma de GrafSet. i. Movimiento y procesamiento de datos. El PLC es capaz de mover y ejecutar operaciones con datos del tipo bit y tipo byte. Existen diversas funciones posibles de realizar (operaciones con las palabras, aritmética binaria y operaciones matemáticas avanzadas) dependiendo de las herramientas especificas del PLC siendo la más frecuente alguna forma de GrafSet Ciclo scan El ciclo de funcionamiento del PLC se basa en el ciclo scan, el que se define a continuación. 1. El procesador lee las entradas de terreno y actualiza el sector de memoria imagen de las entradas. 2. Con los nuevos valores de las entradas y los anteriores valores de las salidas, ejecuta el programa, en el orden establecido por el programador, después de calculada una salida (virtual o real) actualiza su valor en el sector de la memoria llamada imagen de las salidas. Este valor recién calculado queda disponible para los siguientes cálculos. Este algoritmo se repite hasta finalizar el programa. 3. El procesador traspasa la información de las imágenes de las salida hacia los módulos respectivos, para el control de actuadores en terreno. 4. Se vuelve al punto 1. ADQUIRIR ESTADO DE ENTRADAS REALES (CAPTURA EN PARALELO) ACTUALIZAR LAS IMÁGENES DE LAS ENTRADAS (EN MEMORIA) EJECUCIÓN SECUENCIAL DE UNA LINEA DE PROGRAMA ACTUALIZAR LAS IMÁGENES DE LAS SALIDA S (RECIÉN CALCULADAS) ACTUALIZAR LAS SALIDAS REALES
Pagina 12 Tiempo de scan El procesamiento de entradas y salidas del PLC ocurre como un proceso batch. El tiempo empleado por el PLC en ejecutar el programa, es un parámetro importante para su aplicabilidad a determinado tipo de problemas. El tiempo empleado por el PLC para ejecutar determinado programa es lo que se conoce como TIEMPO DE SCAN (scan = barrido en inglés). Los fabricantes de PLC especifican este tiempo de diversas formas, siendo las más comunes indicar el tiempo necesario para ejecutar una sola instrucción y el tiempo para ejecutar un programa de la máxima longitud posible. Se debe tener en cuenta que cuando se habla del tiempo de ejecución de una sola instrucción, este NO es el mismo tiempo que el necesario para ejecutar un programa de una sola instrucción. Esta aparente incoherencia, se aclara recordando que una "vuelta" de programa incluye la lectura de las entradas, la actualización de las salidas y una serie de procesos internos que son invisibles al usuario.