Autómatas programables
1. ESTRUCTURA, MANEJO E INSTALACIÓN
DE LOS AUTÓMATAS PROGRAMABLES
INTRODUCCIÓN
A lo largo de la presente Unidad Didáctica se estudiarán la estructura, el
manejo y la instalación de los autómatas programables. En primer lugar, se
realizará un análisis de la estructura interna de los mismos, atendiendo a sus
diferentes partes.
Posteriormente, se abordará el ciclo de funcionamiento de un autómata y su
control en tiempo real; para ello, se estudiarán los modos de operación, el ciclo
de funcionamiento, los chequeos del sistema, el tiempo de ejecución y el
control en tiempo real, los elementos de proceso rápido, el procesado veloz de
programas, el contador de alta velocidad y las entradas detectoras de flanco.
Finalmente, se concluirá explicando la instalación y el mantenimiento de los
autómatas programables, determinando las fases de proyecto con autómatas
programables, la selección del autómata, la instalación, los espacios de
ventilación, las fijaciones y las condiciones mecánicas, las distancias de
seguridad eléctrica, las condiciones ambientales, la alimentación y las
protecciones, la compatibilidad electromagnética, la distribución y el cableado
interno del armario de control, el cableado externo, el diseño e instalación
del software, y la fiabilidad y el mantenimiento de las instalaciones con
autómatas.
OBJETIVOS
Determinar la estructura interna de un autómata.
Conocer los bloques esenciales de los cuales está formado un
autómata.
Saber cuáles son las características y funcionalidades de la CPU, la
memoria, las interfaces y las fuentes de alimentación.
Analizar el ciclo de funcionamiento de un autómata y su control en
tiempo real.
Entender sus modos de operación, chequeos sistemáticos, tiempos,
elementos de procesado rápido, contadores de alta velocidad y las
entradas detectoras de flanco.
Comprender el proceso de instalación y mantenimiento de autómatas
programables.
Adquirir capacidad para seleccionar el autómata correcto; implementar
las fases de instalación, los espacios de ventilación y las distancias de
seguridad necesarios; adecuarlo a las condiciones ambientales; distribuir
el cableado interno y externo; y comprender el diseño de software y el
mantenimiento de estas instalaciones.
MAPA CONCEPTUAL
ARQUITECTURA INTERNA DE UN AUTÓMATA:
Autómata programable
Un autómata programable industrial (API) o controlador lógico programable
(PLC) es un aparato electrónico de control con una electrónica interna
(hardware) independiente del proceso a controlar, que se adapta a dicho
proceso mediante un programa específico (software) que contiene una
secuencia de operaciones a realizar. Se trata de un equipo electrónico
diseñado para controlar procesos programados y controlados en la industria.
Esta cadena de operaciones se define sobre señales de entrada y salida al
proceso, cableadas de forma directa en los bornes de conexión del autómata.
Las señales de entrada pueden proceder de elementos digitales, como finales
de carrera y de detectores de proximidad, o analógicos, como sensores de
temperatura y dispositivos de salida en tensión o corriente continuas.
Las señales de salida son órdenes digitales, todo o nada, o señales
analógicas en tensión o corriente, que se envían a los elementos indicadores y
a los actuadores del proceso; como lámparas, contactores, relés, válvulas,
etcétera.
El autómata controla las señales de salida según el programa de control
previamente almacenado en la memoria, a partir del estado de las señales de
entrada. Este programa se introduce en el autómata a través de la unidad de
programación, que permite también funciones adicionales, tales como
depuración, simulación, monitorización, control del autómata, etcétera.
Una de las características diferenciadoras del controlador lógico programable
frente a otros sistemas de control programables está en la estandarización de
su hardware, que permite la configuración de sistemas de control a medida,
según las necesidades estimadas de potencia de cálculo y número, y tipo de
señales de entrada y de salida.
El autómata programable ha supuesto una innovación tecnológica importante
en el campo de los automatismos eléctricos, ha reemplazado las funciones
lógicas que han sido durante años la base de los automatismos industriales.
Cuando se habla de un autómata programable, se está haciendo referencia al
corazón de las actuales automatizaciones de las instalaciones; puesto que es
el elemento, capaz de ejercer control, al que llega la información para distribuir,
más tarde, las señales a los actuadores para que ejecuten órdenes de
realización.
Introducción.
El autómata se configura alrededor de una unidad central o de control que,
unida por medio de buses internos a las interfaces de entrada y de salida y a
las memorias, define lo que se conoce como arquitectura interna del
autómata.
Según sean las soluciones constructivas adoptadas, esta arquitectura puede
tomar distintas configuraciones.
Un autómata programable consta, principalmente, de los siguientes elementos:
Fuente de alimentación.
Unidad central de proceso o de control, CPU.
Interfaces de entrada y de salida.
Bus interno.
Terminal de programación.
BLOQUES ESENCIALES DE UN AUTÓMATA.
La fuente de alimentación facilita, a partir de una tensión exterior, las tensiones
necesarias para el correcto funcionamiento de los distintos circuitos
electrónicos del sistema. El autómata puede contar con una batería conectada
a esta fuente de alimentación, asegurando de este modo el mantenimiento del
programa y algunos datos en las memorias en caso de interrupción de la
tensión exterior.
La unidad de control es la encargada de realizar un control interno
(PLC, Program Logic Control) y externo (proceso) mediante la interpretación
del programa y los estados de las señales exteriores. Para ello, consulta el
estado de las entradas recoge de la memoria del programa la secuencia de
instrucciones a ejecutar; elaborando, a partir de ellas, las señales de salida u
órdenes que se enviarán al proceso.
Durante la ejecución del programa, las instrucciones son ejecutadas en serie,
es decir, una detrás de otra.
La unidad de control es también responsable de actualizar continuamente los
temporizadores y los contadores internos que hayan sido programados.
Para la realización de todas estas funciones, además del procesador, el
autómata necesita de otros componentes que constituyen su memoria y que
contienen no solo los datos e instrucciones que necesita para ejecutar la tarea
de control, sino también las instrucciones que requiere para el funcionamiento
interno del propio autómata. La memoria del autómata se puede dividir grosso
modo en dos partes fundamentales:
Memoria interna
Es la encargada de almacenar datos intermedios de cálculo y variables internas
que no aparecen directamente sobre las salidas.
Memoria de programa
Contiene las operaciones que deben realizarse sobre las señales de entrada
para obtener las señales de salida, así como los parámetros de configuración
del autómata
Las interfaces de entrada y de salida establecen la comunicación del autómata
con la planta.
Por su parte, el bus interno es un conjunto de líneas y de conexiones que
permiten la unión eléctrica entre la unidad de control, las memorias y las
interfaces de entrada y de salida. Un bus está formado por un conjunto de hilos
o pistas utilizadas para intercambiar datos u órdenes.
Para minimizar el número de conexiones y dado que la unidad de control, que
organiza el tráfico por estos hilos, solamente puede comunicarse con sus
periféricos de manera que sea secuencial (uno tras otro), el conjunto de hilos
del bus es común y compartido por todos ellos.
En todo momento, estas estructuras requieren que solo pueda haber un
periférico ocupando el bus, ya que, de lo contrario, se mezclarían los datos
enviados por varios de ellos o se recibirían en un periférico datos que no le
corresponden.
Los tres buses característicos de un sistema digital son los siguientes:
Bus de datos
Por él tienen lugar las transferencias de datos del sistema.
Bus de direcciones
A través de él se direccionan la memoria y el resto de los periféricos.
Bus de control
Está constituido por todas las conexiones destinadas a gobernar los
intercambios de información, que se reunifican en el autómata en uno solo,
denominado el bus interno. El número de líneas de este bus es aleatorio y
depende directamente del fabricante.
Se suele considerar también como bus del autómata a cualquier conexión entre
módulos o bloques que no precise de procesadores específicos de
comunicaciones en sus extremos, como puede ser el cable de conexión entre
el autómata y una unidad externa de E/S.
Los equipos o unidades de programación son los dispositivos que permiten
introducir el programa en el autómata, dispone de tres tipos:
Tipo calculadora
Están formadas por un teclado y un visor (como si fuera una calculadora). Son
muy útiles para realizar modificaciones o ajustes a la par de la máquina. Son
dispositivos numéricos y se utilizan para autómatas con lenguajes de
programación numéricos.
Consolas
Son un tipo intermedio entre los anteriores y el PC. Permiten ver hasta 20 o 30
líneas de programa. Son pantallas externas para programación alfanumérica.
PC
Normalmente cualquier PC, con el software correspondiente y la interfaz
adecuada, permite la programación de los PLC. En estos dispositivos se
encuentran los diferentes lenguajes de programación que se verán
posteriormente.
UNIDAD CENTRAL DE PROCESO, CPU.
La CPU es el cerebro del autómata programable. La unidad central de
proceso se encarga de procesar todas las señales que provienen de los
captadores de entrada, los evalúa analizando al programa de aplicación y
ordena a las salidas que efectúen sus oportunas aplicaciones.
Se considera que un autómata tiene un sistema operativo, que es un programa
interno que permite que el PLC pueda realizar las operaciones. Este sistema
operativo no es modificable por el usuario y viene instalado de fábrica. El
programa de usuario se realiza mediante una unidad de programación, por
ejemplo, un PC, y se transfiere al autómata mediante un cable de conexión;
esta acción no es definitiva, es decir, se puede modificar el programa hasta que
el autómata realice las especificaciones deseadas.
El programa de usuario se realiza con un lenguaje específico más o menos fácil
(dependiendo de la profundidad de la programación) que puede ser textual o
gráfico.
Sin duda, los usuarios acostumbrados a utilizar esquemas eléctricos prefieren
los lenguajes gráficos. Esto no quiere decir que el PLC reconozca esos gráficos
que suponen la programación que el autómata tiene que cumplir. Cuando la
unidad de programación transfiere el programa, realizado con cualquier
lenguaje, los datos que viajan al PLC y, por lo tanto, los que reconoce, están en
un lenguaje denominado lenguaje máquina.
La CPU, siglas de Central Processing Unit, está construida alrededor de un
sistema microprocesador; es la encargada de ejecutar el programa de usuarios
y de ordenar las transferencias de información en el sistema de
entradas/salidas.
De forma complementaria, puede también establecer comunicación con
periféricos externos, tales como la unidad de programación, monitores
LED/LCD o TRC, otros autómatas u ordenadores, etcétera.
Para ejecutar el programa, la CPU adquiere sucesivamente las instrucciones
una a una desde la memoria, y realiza las operaciones especificadas en las
mismas.
El funcionamiento es, salvo escasas excepciones, de tipo interpretado, con
decodificación de las instrucciones cada vez que son ejecutadas.
Esta decodificación puede realizarse mediante un sistema de lógica estándar
con microprocesador más memoria, o puede estar microprogramada
por hardware (cableada) en el propio procesador, según diseño propio del
fabricante utilizando tecnología "custom" o personalizada.
La primera solución (tecnología "custom"), más barata, se trata de la solución
más frecuente en autómatas de gama baja, mientras que la segunda
(tecnologías personalizadas), con mayores costes de diseño y desarrollo, es
propia de autómatas de gamas medias-altas, donde el aumento de precio
queda compensado por los bajos tiempos de ejecución de instrucciones,
mucho menores que en la solución estándar (décimas de microsegundos frente
a decenas de microsegundos). En cualquier caso, esta decodificación interna
de instrucciones es transparente al usuario, que no puede modificarla en
ninguna forma.
Al ser, además, específica de cada fabricante, que elige el lenguaje de
programación que soportará su autómata (instrucciones, contactos o símbolos
gráficos) y la forma en la que se interpretan sus instrucciones, la decodificación
no solo limita los lenguajes disponibles de programación, sino que es la
responsable de que no todas las CPU puedan ejecutar los mismos programas,
aunque hayan sido escritos en el mismo lenguaje; impidiendo, de este modo, el
intercambio de programas entre autómatas diferentes.
MEMORIA DEL AUTÓMATA.
Se conoce como memoria de trabajo al almacén donde el autómata guarda
todo cuanto necesita para ejecutar la tarea de control. Los datos pueden estar
relacionados con el proceso o con el control:
Datos del proceso:
o Señales o variables externas de entradas y salidas.
o Variables internas, de bit y de palabras.
o Datos alfanuméricos y constantes.
Datos del control:
o Instrucciones de usuario (programa).
o Configuración del autómata (modo de funcionamiento, número de
entradas/salidas conectadas, etcétera).
En general, toda esta información, incluyendo el programa de usuario, está
contenida en memoria de semiconductor.
La memoria de un autómata es un dispositivo electrónico capaz de almacenar
datos binarios, compuestos de 0 y 1, que pueden ser leídos posición a posición
(bit a bit), o por bloque de ocho (byte) o dieciséis posiciones (word).
La memoria ideal del autómata debería ser simultáneamente rápida, pequeña,
barata y de bajo consumo de energía. Debido a que ninguna de las memorias
del mercado reúne todas estas condiciones, los autómatas combinan distintos
tipos de ellas.
Una clasificación de memorias, atendiendo a sus características de lectura y
escritura, podría ser la que aparece a continuación:
Memoria de lectura/escritura, RAM. Esta memoria almacena de forma
temporal los datos.
Memoria de solo lectura, no reprogramable, ROM. Se utiliza como medio
de almacenamiento de datos.
Memoria de solo lectura, reprogramable, con borrador por ultra violetas,
EPROM.
Memoria de lectura, alterable por medios eléctricos, EEPROM.
La memoria de lectura/escritura, RAM, puede ser leída y modificada cuantas
veces sea necesario a través de los buses internos, y de forma rápida. Sus
inconvenientes son su relativamente baja densidad de integración (poca
capacidad de almacenamiento) y, sobre todo, su carácter volátil, que provoca la
pérdida de información cada vez que cae la tensión de alimentación.
Las memorias RAM se utilizan, principalmente, como memoria de datos
internos, y únicamente como memorias de programas en el caso de que pueda
asegurarse el mantenimiento de los datos con una batería exterior.
Las memorias de solo lectura no reprogramable, ROM, no pueden ser
modificadas en ninguna forma. Dentro del autómata, las memorias ROM se
utilizan para almacenar el programa monitor. Contienen las rutinas siguientes,
incluidas por el fabricante:
Inicialización tras puesta en tensión o reset.
Intercambio de información con unidades exteriores.
Rutinas de test y de respuesta a error de funcionamiento.
Escritura y lectura en las interfaces de E/S.
Además, este monitor puede contener el intérprete del programa de usuario, si
existe. El contenido de esta memoria no es accesible desde el exterior.
Las memorias reprogramables, EPROM, son memorias de solo lectura que
pueden programarse con un circuito especial, después de haber borrado su
contenido.
Este proceso obliga a su extracción del autómata y, por lo tanto, a la
interrupción del funcionamiento. Normalmente, estas memorias se utilizan para
almacenar el programa del usuario una vez que ha sido convenientemente
depurado.
Las EEPROM o memorias reprogramables son memorias de solo lectura
alterables por medio eléctrico, es decir, reprogramables sobre el propio circuito,
sin necesidad de extracción y borrado exterior.
Los procesos específicos de almacenamiento y borrado de las memorias
EEPROM hacen que los tiempos de acceso para lectura, y especialmente para
escritura, sean largos en comparación con los correspondientes a las memorias
RAM o EPROM.
Sin embargo, estos inconvenientes no son tan perjudiciales; las memorias
EEPROM combinan la no volatilidad de las memorias ROM y EPROM con la
reprogramabilidad de las memorias RAM, que les permite ser modificadas
directamente sobre el circuito mediante señales eléctricas.
Se debe tener especial cuidado con el hecho de que el número de operaciones
de borrado/escritura está limitado a algunos cientos de miles, por lo que estas
memorias, utilizadas como área interna de trabajo, se destruirían con rapidez
mediante la acción del procesador.
Así, las memorias EEPROM se emplean especialmente para almacenar
programas, aunque hoy en día es cada vez más frecuente el uso de
combinaciones RAM + EEPROM, estas últimas se utilizan como memorias de
seguridad, que salva el contenido RAM en caso de interrupción del suministro
eléctrico.
Reanudada la alimentación, el contenido de la EEPROM se inclina de nuevo a
RAM, con la que el autómata puede continuar en el mismo punto del programa
en el que fue interrumpido por la pérdida de tensión. Las soluciones de este
tipo están sustituyendo a las clásicas RAM + batería, que, pese a ser
profusamente utilizadas, no dejan de presentar problemas de mantenimiento.
En la siguiente tabla se puede apreciar una clasificación de las memorias
empleadas en el autómata, con cada una de sus aplicaciones.
Atendiendo a su conexionado, las memorias de trabajo pueden ser de
diferentes tipos:
Compactas: incluidas en el propio autómata y conteniendo todos los
datos e instrucciones de control.
Modulares y ampliables: mediante cartuchos o tarjetas externas que
contienen o amplían el programa y los datos alfanuméricos.
Utilización de las memorias de programa
La memoria de programa, habitualmente externa y conectable a la CPU,
almacena el programa escrito por el usuario para su ampliación.
Complementariamente, puede contener datos alfanuméricos y textos
variables, además de información parametrizada sobre el sistema. Cada
instrucción del usuario ocupa un paso o dirección del programa y precisa para
poder ser almacenada, habitualmente, dos posiciones de memoria de
semiconductor (dos bytes). La capacidad total del programa de usuario
depende del tipo de CPU utilizada, pudiendo oscilar entre los 1K pasos de un
autómata compacto hasta algún centenar de K instrucciones en un autómata
de gama alta.
Las memorias de usuario son siempre de tipo permanente RAM + batería o
EPROM/EEPROM. Generalmente, todos los fabricantes de autómatas ofrecen
la posibilidad de emplear memorias RAM con batería para la fase de desarrollo
y depuración de los programas, además de pasar estos a memorias no
volátiles EPROM o EEPROM una vez finalizada esta fase.
Las citadas memorias no volátiles se suministran como cartuchos conectables
al autómata (lo que se conoce como memory packs) en el zócalo previsto sobre
la CPU, o también como tarjetas de memoria a conectar en el bastidor,
ocupando una posición determinada del mismo. La ejecución del programa en
el módulo es indiscutiblemente prioritaria, de manera que si se proporciona
tensión al autómata con un módulo conectado, la CPU ejecuta su programa y
no el contenido en memoria RAM interna. La transferencia del programa a los
módulos de memoria (grabación) se realiza bajo el control de la unidad de
programación.
INTERFACES DE ENTRADA Y SALIDA
Las interfaces de entrada y de salida establecen la comunicación entre la
unidad central y el proceso, realizando el filtrado, la adaptación y el codificado
de manera comprensible para dicha unidad de las señales procedentes de los
elementos de entrada, y decodificando y amplificando las señales generadas
en el transcurso de la ejecución del programa antes de enviarlas a los
elementos de salida.
Debido a la gran cantidad de variantes que pueden presentarse en las señales
de proceso, debe existir también un elevado número de tipos de interfaces,
tanto de entradas como de salidas. Las señales más utilizadas en la actualidad
son las de corriente continua, debido a su alta fiabilidad y seguridad frente a
contactos directos.
Estas interfaces se pueden clasificar de la siguiente manera:
Por el tipo de señales:
o Digitales de 1 bit.
o Digitales de varios bits.
o Analógicas.
Por la tensión de alimentación:
o De corriente continua.
o De corriente alterna.
o Salidas por relé (libres de tensión).
Por el aislamiento:
o Con separación eléctrica (optoacopladores).
o Con acoplamiento directo.
Por la forma de comunicación con la unidad central:
o Comunicación en serie.
o Comunicación en paralelo.
Por la ubicación:
o Locales.
o Remotos.
En la gama de autómatas modulares construidos, generalmente, sobre un rack
que posibilita la ampliación con distintas tarjetas de interfaz, las posibilidades
son mayores, llegando hasta la conexión directa de distintos tipos de
transductores y periféricos.
El sistema de entradas/salidas de un autómata está formado por las interfaces
E/S y los bastidores de soporte de los mismos, que, en conjunto, cumplen las
siguientes funciones básicas:
Permitir el intercambio de información entre el autómata y la planta.
Proporcionar un soporte físico para la identificación o direccionamiento
de los dispositivos E/S conectados a los bornes.
Para dimensionar correctamente el autómata y abaratar los costes del
hardware, parece conveniente adaptar el número de entradas/salidas
conectadas a una misma CPU a las necesidades reales del proceso o planta a
automatizar, por lo que los fabricantes proveen de modularidad a sus equipos.
Esta modularidad se hace más necesaria en los autómatas de gamas medias y
altas, así como en el montaje en carril DIN en cuadro eléctrico, donde se
dispone de CPU con potencia de cálculo elevada que precisa controlar un
número variable, menor o mayor según sea la aplicación de los puntos de
entrada y salida, incluso los situados a gran distancia de la unidad de control.
Los autómatas disponen entonces de módulos o tarjetas E/S independientes,
con sus circuitos de interfaz, conexión al bus interno y bornero exterior. Los
módulos, que se suministran por separado a la CPU, permiten configurar el
sistema de entradas/salidas a la medida del usuario.
Debido a que la existencia de interfaces E/S conectables a bastidor es
característica de autómatas modulares, las ventajas que aportan en
adaptabilidad y flexibilidad del sistema E/S han llevado a su avance y
desarrollo, incluso para autómatas compactos o "miniautómatas".
Este tipo de máquinas facilitan la ampliación de sus entradas/salidas no por
conexión de tarjetas en un bastidor, que no existe para ellos, sino con la
utilización de unidades de expansión compactas, conectadas por cable, con
una distribución rígida de los bornes sobre la que el usuario no tiene posibilidad
de actuar.
Por lo tanto, en los desarrollos con autómatas programables existe una gran
variedad de configuraciones y posibilidades constructivas en el sistema de
entradas/salidas, utilizando los módulos y unidades de expansión disponibles.
Estas configuraciones, que se verán a continuación, aparecen en el siguiente
cuadro sinóptico.
Las entradas/salidas centralizadas se conectan directamente a la CPU del
autómata, con transmisión de datos en paralelo, mientras que las
entradas/salidas distribuidas se unen con el autómata base a través de un
módulo de interconexión o procesador de enlace E/S, con transmisión serie de
datos sobre cable o fibra óptica.
El sistema de entradas/salidas distribuidas puede, a su vez, estar compartido
por varios procesadores o autómatas, en sistemas de control distribuido que
implementan estructuras sofisticadas y complejas.
A. Entradas/salidas centralizadas
Está claro que las entradas/salidas centralizadas se sitúan o disponen en las
inmediaciones de la CPU, o autómata base, con el objetivo de incrementar el
número de puntos E/S disponibles, dentro de la capacidad de direccionamiento
del procesador.
Estas entradas/salidas responden a las siguientes características:
Se conectan a la CPU por medio del bus interno del autómata, sin
intervención de ningún tipo de adaptador o procesador de
comunicaciones (como mucho, pueden necesitar una interfaz
ampliadora de señales del bus).
Las transferencias de datos se realizan en serie y en paralelo.
Se encuentran situadas a distancias de hasta 50 metros del autómata
base. Los fabricantes marcan las distancias de las señales en función
del dispositivo utilizado.
Dependiendo del modelo, pueden no precisar de una fuente de
alimentación propia, recogiendo las tensiones de trabajo sobre las líneas
del bus interno o de la propia interfaz amplificadora.
La expansión se limita habitualmente a interfaces E/S digitales (señales
todo/nada o contaje de impulsos), y también a interfaces analógicas sin
tratamiento de señal.
En las configuraciones de estas unidades E/S centralizadas hay que saber
diferenciar entre autómatas compactos y modulares:
Autómatas de entradas/salidas compactas
Presentan una estructura cerrada, con la CPU y las interfaces contenidas en
una circundante común, conocida como autómata base. Se pueden clasificar
por el número de puntos E/S que incorporan en esta especie de "envase"
común en miniautómatas y microautómatas:
Miniautómatas, con 24 E/S 60
Se pueden ampliar mediante unidades E/S compactas o por medio de módulos
de extensión E/S, siempre conectados entre sí y al autómata base por medio
de cables de expansión. Las unidades E/S compactas, que presentan un
aspecto exterior muy semejante al de la unidad base que contiene la CPU,
combinan interfaces de entrada y salida con distribuciones 8E/6S, 22E/12S y
24E/16S, como más habituales.
Existe, por otro lado, la posibilidad de conectar varias de estas unidades de
expansión sobre el mismo bus interno del autómata, unidas todas ellas a la
misma CPU hasta el límite de direccionamiento que esta permita.
Las unidades E/S compactas incluyen, de forma habitual, su propia fuente de
alimentación con entrada 110/220 VCA o 24 VCC para alimentación de
captores y sensores de entrada y, siempre que las cargas de instalación lo
permitan, de actuadores de salida.
La figura muestra un miniautómata compacto, el C120 de Omron, y la
configuración máxima de entradas/salidas centralizadas que se obtiene al
conectar tres unidades de expansión E/S a la unidad base. Se pueden obtener
distintas combinaciones de puntos E/S, hasta un máximo de 256 en el caso
que se presenta.
Los módulos de expansión E/S, a diferencia de las unidades anteriores,
contienen solamente interfaces de entrada o de salida, en un número limitado a
solo 4 u 8 puntos por módulo, y no incorporan fuente de alimentación,
recogiendo la tensión de funcionamiento del cable de conexión.
Se encuentran disponibles módulos especiales de entradas o salidas
analógicas, temporizadores y contadores rápidos, entre otros.
La combinación de estos módulos con las unidades de expansión anteriores,
hasta los límites de direccionamiento que fija la CPU, permite configurar un
sistema E/S de suficiente flexibilidad para las aplicaciones a que se destinan
normalmente los autómatas compactos.
Microautómatas, con E/S 24
Constituyen un caso particular; son pequeñas máquinas de bajo coste con un
número limitado de entradas/salidas y un lenguaje de programación
simplificado a unas pocas instrucciones. Si estos microautómatas permiten
ampliación, la hacen normalmente con una sola unidad, que dobla la capacidad
de entradas/salidas de la unidad base.
Autómatas de entradas/salidas modulares, que presentan distintos tipos de
conexión
En los autómatas modulares, la ampliación de entradas/salidas en estructura
centralizada se puede realizar de dos formas:
Realizando la conexión con nuevas tarjetas o módulos E/S en los
espacios previstos para ello sobre el bastidor o "rack" que contiene a la
CPU.
Colocando nuevos bastidores mientras lo permita la capacidad de
direccionamiento de la CPU.
Los módulos quedan unidos al bastidor por enganche mecánico,
estableciéndose la unión eléctrica con las líneas del bus mediante un conector
posterior. Existen módulos de algunos fabricantes por enganche eléctrico y
mecánico en el mismo contacto; por ejemplo, Siemens.
La cantidad de puestos o espacios de enchufe en un bastidor está limitado
debido a que sobre él se conectan, además, módulos de procesadores
auxiliares, la fuente de alimentación de la CPU, los procesadores de
comunicaciones, etcétera.
Si se utilizan todos los puestos de enchufe del bastidor base, se puede ampliar
el sistema mediante la colocación de bastidores adicionales, unidos entre sí y
al primero de ellos mediante interfaces de conexión que tienen en su interior los
conectores de expansión del bus y los amplificadores de señal.
La configuración resultante es de la forma bastidor principal más los bastidores
de expansión. Esto es:
El bastidor principal contiene la CPU, procesadores de comunicación,
procesadores periféricos y módulos E/S (Entradas/Salidas, como ya se
ha explicado).
Los bastidores de expansión pueden contener módulos E/S y
procesadores de comunicaciones, para enlaces con otros autómatas o
con unidades remotas E/S.
Por medio de los cables de conexión entre interfaces, se transportan las
informaciones de estados E/S, y las tensiones de alimentación para los
bastidores que no disponen de fuente autónoma o propia. Se pueden situar, en
un mismo armario, varios bastidores de expansión, hasta el límite de
direccionamiento de la CPU, extendidos sobre distancias que no deben superar
los 4 o 5 metros.
En la figura que se muestra a continuación, se ve una configuración de
entradas/salidas centralizadas con el autómata Siemens, de la familia PLC S-7,
obtenida al conectar cuatro bastidores entre sí. Esta estructura permite
direccionar hasta un total de 256 puntos E/S digitales, más 16 puntos de
entrada o salida analógica, en un bus de comunicación.
Autómata Siemens, perteneciente a la familia PLC S-7
B. Entradas/Salidas distribuidas
Es habitual que las máquinas o procesos bajo control no se encuentren
localizados en un punto, sino distribuidos por una amplia superficie o una
nave industrial, por ejemplo.
Es posible que pueda ocurrir que, una vez decidido el colocar una CPU de
cierta potencia de cálculo con el objetivo de cubrir las necesidades en un punto
de la instalación, se decida aprovechar la misma CPU para el control de otros
puntos o zonas de la planta.
En ambos casos se plantea la necesidad de conectar el autómata con
sensores y actuadores alejados de él.
Es habitual no realizar estas conexiones con un cableado directo entre los
elementos de planta y los bornes E/S del autómata centralizado.
Es decir, los costes del cableado y los riesgos de error o avería aumentan de
forma proporcional con respecto al número de elementos conectados.
La solución a esta cuestión sería la colocación de interfaces allí donde se
precisan y conectarlas después con la CPU por medio de un módulo de
interconexión o procesador que se encargue de realizar el enlace E/S, que
agrupe las distintas señales en tramas o en paquetes binarios y las envíe
después por transmisión en serie sobre únicamente un canal de conexión,
resultando entonces una configuración de entradas/salidas distribuidas o
descentralizadas, como muestra la figura.
Si el número de puntos E/S a conectar es pequeño, pueden utilizarse módulos
o tarjetas especiales que contienen en un mismo cuerpo el procesador de
enlace y algunas interfaces (4 u 8, por ejemplo) de entradas/salidas. De todas
maneras, y como es la norma usual, el número total de entradas/salidas resulta
limitado por el tipo de PLC utilizado.
El modelo de conexión distribuida presenta las siguientes ventajas:
Permite el control a distancia de equipos y sistema con la manipulación
de las variables locales desde un único programa en la CPU principal.
Abarata los costes de instalación, al sustituir el cableado necesario entre
los elementos de planta y la CPU por medio de una conexión única de
hilo eléctrico o fibra óptica, a través de procesadores de comunicaciones
maestro-esclavo.
Reduce el costo de montaje y material, suprimiendo los bornes
intermedios de conexión.
Aumenta la seguridad en la transmisión con la inclusión de procesadores
de enlace con diagnóstico de averías que permiten comprobar las
conexiones eléctricas y el funcionamiento de los propios procesadores,
además de la comprobación de integridad ("checksum") de la trama
enviada. Con esto, se asegura que las señales recogidas en la planta
están siendo leídas por la CPU, y viceversa.
El resultado de este diagnóstico, como el de los test de comprobación de
funcionamiento del autómata, puede consultarse de la siguiente forma:
Por medio de señalizadores led situados en el procesador de enlace.
Leyendo en la unidad de programación los mensajes de error
resultantes.
Consultando por programas las variables internas que están asociadas,
lo que facilita respuestas muy rápidas frente al fallo.
Dependiendo de cómo sea la conexión con el autómata base que contiene la
CPU, las expansiones de entradas/salidas distribuidas pueden adoptar las
siguientes configuraciones:
Bus: un único procesador de enlace en la unidad con cada uno de los
procesadores locales.
Estrella: la unidad base contiene tantos procesadores de enlace como
unidades de expansión se necesiten, de manera que es posible la
desconexión total de cualquiera de ellos sin afectar al funcionamiento del
conjunto.
Mixta: en este caso, la unidad base contiene procesadores
independientes para cada expansión pero, a su vez, cada una de estas
expansiones puede estar formada por varias unidades conectadas en
bus entre sí.
Las figuras siguientes muestran estas diferentes configuraciones del sistema
distribuido de entradas/salidas.
Según sean las distancias de interconexión, es posible realizar una
clasificación adicional de estas entradas/salidas distribuidas. Así, se distingue
entre entradas/salidas locales o remotas.
Como se puede ver en las figuras, las expansiones distribuidas pueden, a su
vez, estar constituidas por varios bastidores.
Ejemplo de expansiones distribuidas constituidas por bastidores I
Ejemplo de expansiones distribuidas constituidas por bastidores II
Ejemplo de expansiones distribuidas constituidas por bastidores III
Sustancialmente, una unidad de entradas/salidas distribuidas es local cuando
las unidades de expansión se colocan a distancias entre 50 y 100 metros, lo
que impide la conexión directa a bus interno característica de los sistemas
centralizados.
Por esta razón, deben existir procesadores de enlace E/S tanto en la unidad
base como en la de expansión, que se encargan de efectuar las convenientes
conversiones serie/paralelo y paralelo/serie entre el bus interno del autómata y
las líneas de comunicación serie, así como de supervisar la integridad de las
comunicaciones.
De la misma forma que las expansiones centralizadas de entradas/salidas, las
distribuidas locales se limitan normalmente a interfaces E/S digitales e
interfaces analógicas sin tratamiento de señal.
No obstante y a diferencia de aquellas, las unidades incluyen su propia fuente
de alimentación y la comunicación con la CPU se realiza a través de un canal
serie.
La E/S distribuidas se conocen como remotas cuando la distancia de conexión
con la unidad base es superior a 100 metros, alcanzando en algunos modelos
hasta algunas decenas de kilómetros.
A diferencia de lo habitual en expansiones centralizadas o locales, conexión
con puntos E/S estándar analógicos o digitales, las entradas/salidas remotas
pueden incluir procesadores auxiliares o tarjetas con tratamiento de señal,
como pueden ser:
Módulos de contaje y posicionamiento.
Reguladores PID en lazo cerrado.
Módulos de interfaz para conexión a periféricos (impresoras,
visualizadores, etcétera).
Reguladores de velocidad de motores, etcétera.
La comunicación, siempre vía serie, entre el procesador maestro en la unidad
base y los procesadores esclavos en las unidades de expansión, se realiza
mediante interfaces estándar RS 232/422/485, con la utilización de protocolos
específicos del fabricante, o buses de campo normalizado (PROFIBUS,
MODBUS, etcétera), sobre soporte eléctrico u óptico.
Justamente, la distancia máxima entre estaciones y la longitud total del bus de
expansión depende del soporte o del medio físico que se emplea, ya sea cable
eléctrico o fibra óptica, aunque los valores finales son muy variables
dependiendo del fabricante.
La tabla siguiente muestra una comparación aproximada entre estos diferentes
medios.
La utilización de la tecnología óptica frente a la del cobre permite extender las
expansiones incluso a zonas de alto nivel de ruido eléctrico: la transmisión por
fibra no es electrónica, sino fotónica (impulsos de luz), por lo que no se ve
afectada por campos electromagnéticos ni, por tanto, por problemas de
inducción capacitiva o inductiva.
Además de esto, posee las ventajas propias de las expansiones E/S
distribuidas. Estas son el ahorro de:
Cableado: al contener un solo cable de fibra óptica hasta centenares de
señales.
Tiempo: por la facilidad de conexión al sustituir los borneros de cables
por los conectores incorporados en la fibra.
Dinero.
Espacio: se necesitan conductos de espacios menores.
Para la conexión por fibra óptica suele disponerse de cables prefabricados, de
conexión directa entre los módulos procesadores de enlace, para su uso en
distancias cortas (decenas de metros, por ejemplo).
Para distancias mayores, se pueden utilizar bobinas de fibra óptica estándar y
realizar los empalmes en la instalación, o encargar el cable que se necesite al
fabricante o distribuidor del autómata.
La figura muestra un ejemplo de configuración estrella-bus de entradas/salidas
distribuidas enlazadas por fibra óptica. Se observa cómo la conexión de la fibra
se realiza sobre dos canales, de emisión (TX) y recepción (RX).
El autómata base tiene dos procesadores maestros que sirven para efectuar la
estructura estrella, mientras que los procesadores esclavos tienen doble
conexión, para la recepción y para la re-emisión en la conexión del bus.
Frente a las soluciones anteriores, de conexión de E/S remotas con la
utilización de buses y de protocolos específicos, algunos fabricantes
desarrollan productos conectables a aquellos buses de campos que se van
perfilando como estándares (PROFIBUS, MODBUS, etcétera), de manera que
en la misma red se hallan inmersos desde las unidades de entradas/salidas
hasta otros autómatas, pasando por actuadores y sistemas de todo tipo.
El empleo de estos buses estándar presenta algunas ventajas con relación a
las soluciones particulares de cada fabricante. Dichas ventajas son:
Hacen posible la conexión de otros equipos (actuadores, sensores,
válvulas, etcétera) por la cualidad de ser sistemas abiertos, y no solo de las
entradas/salidas distribuidas; por ello es que no son necesarios dos buses, uno
para automatismos y el otro para entradas/salidas: si ya existe un bus de
campo, puede utilizarse para realizar la conexión de E/S distribuidas.
Permite unas velocidades mayores de transmisión de hasta
2 megabits por segundo y, por consiguiente, menores tiempos de respuesta
(menores de 1 milisegundo).
Se pueden obtener mayores distancias de interconexión, en kilómetros,
entre las entradas/salidas y la CPU, que ahora se encuentran enlazadas
utilizando procesadores de enlace de red.
Un INTERBUS ahorra:
Dinero (reducción de costes de entre un 40 % y 60 %).
Cables (solo necesita uno).
Espacio (se necesitan conductos de cables menores).
Tiempo (más rápido de instalar, mantenimiento más sencillo).
Fuente de alimentación.
Una fuente de alimentación proporciona las tensiones necesarias para el
adecuado funcionamiento de los diferentes circuitos del sistema. La fuente de
alimentación más utilizada para PLC actuales es la de 24 VCC (voltios de
corriente continua).
Un autómata programable está constituido por bloques que requieren
diferentes niveles de tensión y de potencia que, además, se encuentran
sometidos a condiciones ambientales de ruido electromagnético, igualmente
distintas.
Normalmente, los autómatas compactos pequeños disponen de una salida de
tensión de 24 VCC para la alimentación directa de sensores y actuadores, cuya
única limitación es la baja potencia que puede soportar, lo que conlleva una
limitación en el número y tipo de sensores y actuadores que puede controlar.
Debido a esto, es frecuente, a excepción de autómatas compactos pequeños,
que la alimentación se obtenga de varias fuentes separadas, procurando
independizar las siguientes partes del circuito:
Unidad central e interfaces E/S (alimentación autómata): la
alimentación a la CPU puede ser continua a 24 VCC, tensión muy frecuente en
cuadros de distribución eléctrica en la industria o en alterna.
Alimentación de entradas (emisores de señal) o salidas (cargas o
actuadores de salida): la alimentación a los circuitos E/S puede realizarse,
dependiendo del tipo, en alterna a 48/110/220 VCA, o en continua a 12/24/48
VCC. Normalmente, las cargas de salida son de tipo electromagnético, por lo
que pueden suponer bastante consumo, sobre todo en los primeros instantes
de cambio de estado de las mismas.
La fuente de alimentación del autómata puede incorporar una batería tampón,
que se utiliza para el mantenimiento de algunas posiciones internas (relés o
registros) y del programa de usuario en memoria RAM cuando falta la
alimentación o se desconecta el autómata. La capacidad de esta batería
depende de cada fabricante y es muy variable.
Los autómatas compactos la suelen llevar en el interior del encapsulado,
mientras que los modulares disponen de una tapa exterior, que permite
comprobar su estado o realizar su sustitución de forma cómoda.
El estado de la batería tampón está monitorizado sobre un diodo led en la
fuente de alimentación, que parpadea o bien se apaga con motivo de defecto o
ausencia de la misma.
A continuación, se muestran dos posibles alternativas de alimentación a un
sistema constituido por autómata y unidad de expansión de entradas/salidas
locales (unidas por el bus interno), con sus respectivos emisores y actuadores.
Fuente de alimentación común
Una única fuente incorporada en el autómata alimenta a la unidad central de
proceso con sus interfaces, tanto de entrada como de salida, y a los sensores y
actuadores del sistema. La tensión de alimentación a los circuitos internos de la
unidad de expansión llega a ella por medio del bus interno.
Fuente de alimentación específica
El sistema utiliza varias fuentes de alimentación diferentes:
La propia del autómata, interna o externa a él.
La auxiliar para alimentación de la unidad E/S.
La fuente de alimentación CC para actuadores de salida.
La fuente de alimentación CA para actuadores de salida.
Es, por tanto, frecuente en sistemas modulares, como el que se presenta en la
figura siguiente, que la propia fuente de alimentación de la CPU o del bastidor
de expansión proporcione directamente una salida auxiliar a 24 VCC, con un
nivel de potencia suficiente para alimentar los sensores.
En el ejemplo anterior, se utiliza, además de las propias para alimentar al
autómata y al módulo de expansión, una fuente auxiliar en corriente alterna
para la alimentación de los actuadores o las cargas de salida del autómata, y
otra fuente auxiliar de alimentación en corriente continua para las cargas de
salida del módulo de expansión.
La elección de uno u otro esquema de alimentación para un sistema de
autómata depende, principalmente, de las características de sus
correspondientes entradas y salidas.
Las principales a tener en cuenta son:
Niveles de potencia necesarios para la aplicación.
Compatibilidad entre la tensión auxiliar suministrada por el autómata y
las necesitadas por los actuadores o captadores.
Funcionamiento o no de sensores y cargas con igual tensión de
alimentación.
Necesidad de aislamiento galvánico en el sistema de E/S.
Requerimientos específicos de alimentación en corriente continua y poco
voltaje debido a ambientes explosivos o alto grado de humedad.
Los fabricantes proporcionan, sobre todo en sistemas modulares tipo "carril
DIN", módulos de alimentación con distintas tensiones de salida y niveles de
potencias suficientes, generalmente, para cubrir cualquier necesidad de
alimentación.
CICLO DE FUNCIONAMIENTO DE UN AUTÓMATA Y CONTROL
EN TIEMPO REAL:
La primera operación a realizar cuando se arranca el PLC es una secuencia en
la que hace un autotestpara verificar sus conexiones con el exterior; por
ejemplo, si tiene conectado algún dispositivo de programación. Además, dentro
de este mismo proceso se colocan todas las salidas a cero o posición de
reposo.
Los fabricantes proporcionan, sobre todo en sistemas modulares tipo "carril
DIN", módulos de alimentación con distintas tensiones de salida y niveles de
potencias suficientes, generalmente, para cubrir cualquier necesidad de
alimentación.
A continuación, comienza a ejecutar instrucción tras instrucción del programa
con la imagen de entradas obtenida en el paso anterior. Con los resultados que
va obteniendo "arma una imagen" de lo que va a ser la salida. Una vez que
llega al final del programa, el autómata transfiere esa imagen a los bornes de la
salida (volcado de la memoria de imagen de salidas).
Cumplida esta tarea, realiza un nuevo autotest llamado watch dog (perro
guardián) y vuelve a "cargar" las entradas, y así cíclicamente mientras el
autómata esté operativo.
Las variaciones de la entrada mientras el autómata está procesando no son
tenidas en cuenta. Por tanto, el tiempo de respuesta es de milisegundos.
Se puede decir que el autómata trabaja en tiempo real si las variaciones de la
planta son más lentas que el tiempo de respuesta. Si las variaciones de la
planta son más rápidas que el tiempo de respuesta, hay que introducir otros
componentes o módulos que puedan solucionar este desfase de tiempo.
INTRODUCCIÓN.
Se puede considerar a los autómatas programables como máquinas
secuenciales que ejecutan de forma correlativa las instrucciones indicadas en
el programa de usuario que se encuentra almacenado en su memoria,
generando unas señales u órdenes de mando a partir de las señales de
entrada leídas de la planta.
Una vez detectados los cambios en las señales, el autómata reacciona,
dependiendo del programa, hasta obtener las órdenes de salida necesarias.
Esta secuencia se ejecuta de forma continua para poder conseguir el control
actualizado del proceso.
La secuencia de operación del autómata puede dividirse en tres fases
principales:
Lectura de señales desde la interfaz de entradas.
Escritura de señales en la interfaz de salidas.
Procesado del programa para obtener señales de control.
Las dos primeras, lectura y escritura, suelen designarse también como volcado
de las señales de interfaz de entrada o salida a la memoria imagen.
Para la optimización de los tiempos de acceso a las interfaces E/S, debe
realizarse la lectura y la escritura de señales, de manera simultánea para todas
las entradas y salidas implicadas, con el objetivo de que las entradas leídas se
almacenen en una memoria temporal o memoria imagen de entradas, a la que
acude la CPU mientras dura la ejecución del programa, consiguiendo que los
resultados o señales se vayan almacenando en otra memoria temporal o
memoria de imagen de salidas, según se vayan obteniendo.
Una vez concluida la ejecución, los resultados se colocan en la interfaz de
salida de una sola vez.
Para garantizar la seguridad en el funcionamiento, el autómata programable
realiza una serie de acciones comunes como son los chequeos de memoria de
la CPU, comprobación del reloj de guarda o watchdog, etcétera.
También, y de forma esporádica, el autómata establece comunicación con
periféricos exteriores; por ejemplo, para el volcado de datos en una impresora,
para la comunicación con otros ordenadores o autómatas, o para facilitar la
conexión con la unidad de programación, entre otras acciones.
Toda esta serie de acciones se va repitiendo de forma periódica, definiendo así
un ciclo de operación que necesita de un cierto tiempo para poder ser
ejecutado. Este tiempo será determinante cuando el autómata pretenda
controlar procesos rápidos, con señales de duración muy corta o una alta
frecuencia de conmutación.
En este bloque se procede a estudiar el ciclo de operación del autómata y las
distintas comprobaciones que se realizan durante su funcionamiento, con una
valoración cualitativa de los tiempos que emplea en realizar cada operación.
También se verán el concepto de respuesta del autómata en tiempo real y las
posibles soluciones que ofrecen los fabricantes para controlar los procesos
rápidos.
MODOS DE OPERACIÓN .
Un autómata que se encuentre bajo tensión puede mantenerse en uno de los
estados de funcionamiento (modos de operación) citados a continuación:
RUN
El autómata ejecuta normalmente el programa de usuario contenido en su
memoria. Las salidas evolucionan tomando distintos estados en función del
estado de las entradas y las órdenes del programa. En dicho estado, los
temporizadores y contadores programados operan de manera normal.
STOP
La ejecución del programa se detiene por orden del usuario. En ese momento,
las salidas pasan a estado OFF, las posiciones internas (relés, registros,
contadores y temporizadores) mantienen su estado en memoria interna.
Cuando se pasa otra vez a RUN, todas las posiciones internas, excepto las
mantenidas o las protegidas contra pérdidas de tensión, pasan a estado inicial.
El modo STOP es utilizado normalmente para servicios de diagnóstico o
mantenimiento, al congelar el funcionamiento del autómata sin pérdida de la
información contenida en su interior, que puede, en ese momento, ser
visualizada desde la unidad de programación.
ERROR
En este caso, el autómata detiene la ejecución debido a un error de
funcionamiento; desactiva todas las salidas. El autómata queda bloqueado
hasta que el error es subsanado. Puede salir de este modo bien por reset de
puesta en tensión, bien por orden desde la CPU o bien con comando enviado
desde la unidad de programación.
En cuanto al modo de operación del autómata, se debe considerar que puede
ser controlado por medio de conmutadores situados en la misma CPU, o bien
desde la unidad de programación, con el envío de los comandos adecuados.
Estas dos posibilidades pueden encontrarse simultáneamente en autómatas
incluidos en las gamas medias y altas, mientras que los modelos compactos de
gama baja suelen incluir únicamente la segunda.
Algunos modelos de autómatas compactos no poseen conmutadores para el
cambio de modo, aunque pueden sustituirlos por interruptores externos que se
leen por medio de puntos de la interfaz de entradas, fijados para esta función
mediante los parámetros de configuración.
Una vez realizada la puesta en tensión, el autómata pasa a los
modos RUN o HALT/STOP, dependiendo del modelo y de la configuración del
mismo. De cualquier forma, las conmutaciones RUN/STOP pueden ser
forzadas por el usuario desde la unidad de programación o a partir de los
interruptores que se han previsto a tal efecto sobre la CPU.
La siguiente figura muestra la relación entre los distintos modos, indicando los
cambios entre ellos con los siguientes códigos:
SIS
Cambio de modo ordenado mediante el sistema monitor.
CPU
Cambio de modo ordenado por usuario desde conmutadores de la CPU.
PRG
Cambio de modo ordenado por usuario por comandos desde la unidad de
programación.
El autómata puede disponer de una función de reset que, una vez activada
desde la unidad de programación, borra todas las posiciones internas, incluso
las mantenidas, dejando al autómata totalmente reinicializado para que pueda
ejecutar el programa.
Habitualmente, y puesto que en el modo RUN no se puede modificar el
programa de usuario (únicamente es posible en autómatas con
programación online), el aparato debe estar en modo HALT/STOP cuando se
desee introducir o modificar un programa de aplicación.
La confirmación o la comprobación del modo de funcionamiento se puede
realizar de manera sencilla sobre unos led incorporados en la CPU, por
observación de su estado apagado, encendido o parpadeante, posibilitando así
las labores de mantenimiento y puesta a punto en caso de un posible error.
CICLO DE FUNCIONAMIENTO.
Con la salvedad del proceso inicial que sigue a un reset, el funcionamiento del
autómata es de tipo secuencial y cíclico; o lo que es lo mismo, las operaciones
tienen lugar una tras otra, y se van repitiendo de forma continua mientras el
autómata se encuentre bajo tensión.
La figura muestra de forma esquemática la secuencia de operaciones que el
autómata ejecuta. Sobre esta figura se define el denominado ciclo de operación
con aquellas que se repiten interminablemente.
Como se indica en la figura, previamente a la entrada en el ciclo de operación,
el autómata realiza una serie de acciones comunes que consisten en inicializar
los estados del mismo y de chequear el hardware.
Estas rutinas de chequeo, incluidas en el monitor ROM, analizan y
comprueban:
El bus de conexión de las unidades de E/S.
El nivel de la batería, si es que existe.
La conexión de las memorias internas del sistema.
El módulo de memoria exterior, si existe.
Si se encuentra algún error en chequeo, se activa el led de error, quedando
registrado el código del mismo. No obstante, el funcionamiento puede ser
interrumpido en ese punto, según sea la gravedad del error.
Una vez comprobadas las conexiones, se inicializan las variables internas:
Se ponen en OFF las posiciones de memoria interna (excepto las
mantenidas o protegidas contra pérdida de tensión).
Se borran todas las posiciones de memoria imagen E/S.
Son borrados todos los contadores y temporizadores (excepto los
mantenidos o protegidos contra pérdidas de tensión).
Una vez transcurrida la secuencia de inicialización y siempre que no hayan
aparecido errores, el autómata entra en el ciclo de operación, que está
constituido por aquellas operaciones que se ejecutan continuamente. Este ciclo
puede considerarse dividido en tres bloques:
Bloque 1: proceso común.
Bloque 2: ejecución del programa de usuario.
Bloque 3: servicio a periféricos.
En el primer bloque (proceso común), se comprueba el reloj de guarda y se
realizan los chequeos cíclicos de conexiones y de memoria de programa,
protegiendo al sistema contra los siguientes tipos de errores:
Errores de hardware (conexiones I/0, ausencia de memoria de
programa, etcétera).
Errores de sintaxis (programa imposible de ejecutar).
El watchdog o reloj de guarda es un temporizador interno, inaccesible para el
usuario, que fija el tiempo máximo de ejecución de un ciclo de operaciones. Si
este temporizador alcanza el valor prefijado, que puede ser de entre 0,1 y 0,5
segundos según el modelo, el autómata pasa al estado STOP y se ilumina el
indicador de error.
Las posibles causas para la activación del reloj de guarda pueden ser:
La existencia de algún error de sintaxis en el programa, de manera que
nunca se alcance la instrucción END.
El bloqueo de la comunicación con periféricos externos.
La avería en el funcionamiento de la CPU, etcétera.
A continuación, se citan algunos puntos que se comprueban en el chequeo
cíclico de conexiones:
Niveles de las tensiones de alimentación.
Buses de conexión con las interfaces E/S.
Estado de la batería, si es que existe.
En cuanto al chequeo de la memoria de programa, se comprueba la integridad
de la misma y la existencia de posibles errores de sintaxis y gramática:
Mantenimiento de datos, comprobados con el "checksum".
Existencia de la instrucción END de fin de programa.
Estructuras de salto y anidamiento de bloques correctas.
Códigos de instrucciones correctas, etcétera.
Normalmente, este proceso común no supera los 1 o 2 milisegundos de tiempo.
Con respecto al segundo bloque de operaciones, se consultan y se actualizan
los estados de las entradas y las salidas, elaborándose las órdenes de mando
a partir de ellos.
El tiempo de ejecución de este bloque de operaciones es la suma del tiempo de
acceso a interfaces de E/S y el tiempo de escrutinio del programa.
Estos tiempos dependen a su vez del número y ubicación de las interfaces E/S,
y de la longitud del programa y tipo de CPU que lo procesa, respectivamente.
El tiempo de acceso a las interfaces depende de si estas se encuentran
cableadas como locales o como remotas; es decir, conectadas a la CPU por el
bus interno, o por medio de procesadores de comunicaciones, o del número de
entradas/salidas instaladas.
Cuando se habla de un autómata compacto o modular con interfaces locales, el
tiempo es del orden de 5 milisegundos, aunque puede variar significativamente
de un modelo a otro.
El tiempo de ejecución del programa depende del tipo de instrucciones que se
procesan, siendo mayor en caso de instrucciones aritméticas o de
manipulación de datos, y del modelo de CPU que ejecuta, reduciéndose en el
caso de que el autómata utilice procesadores a medida o personalizados
(custom) en vez de microprocesadores estándar.
La tabla muestra los tiempos de ejecución de instrucciones (en
microsegundos), de la gama de autómatas OMRON. Los tiempos más bajo
corresponden a la ejecución de las instrucciones básicas (AND, OR, etcétera),
y lo más largos a los de manipulación de datos, contadores y temporizadores.
El tercer bloque de operaciones dentro de un ciclo de ejecución, el servicio a
periféricos externos, solamente es atendido si queda pendiente o en suspenso
algún intercambio con el exterior.
La comunicación entre los periféricos y el autómata se realiza, bien
directamente por medio de un conector situado sobre la CPU, o bien a través
de procesadores de comunicación descargando a la unidad de control de esta
tarea.
Cuando la comunicación se realiza a través de un conector incorporado,
queda reservada casi totalmente a la unidad de programación, aunque existen
productos de mercado (terminales de operador y visualizadores, por ejemplo)
directamente conectables a esta línea.
Para realizar la conexión con otros periféricos se ejecuta usualmente a través
de procesadores de comunicación que, a su vez, permiten el enlace con
ordenadores, impresoras, visualizadores de plasma o siete segmentos, lectores
de código de barra, otros autómatas, etcétera.
Después de quedar establecida la comunicación, la CPU dedica un tiempo
limitado de entre 1 y 2 milisegundos a reconocer el intercambio de datos. Si
este tiempo no fuera suficiente, el servicio sufriría una interrupción hasta el
siguiente ciclo.
Esta interrupción del servicio puede llegar a ser apreciable en procesos de
monitorización de estados, una vez que la unidad de programación u otro
periférico determinado pretende visualizar la evolución de las variables en el
autómata, ofreciendo como resultado la aparición de un retardo entre el estado
de los LED indicadores de señal en las interfaces de E/S y la información
visualizada sobre la unidad externa. Para el resto de servicios, conexión con
impresora, con monitores o visualizadores industriales, etcétera, los retardos
son inapreciables.
CHEQUEOS DEL SISTEMA.
Como se ha visto en el punto anterior, el autómata incorpora rutinas de
autochequeo en su monitor ROM que le permiten diagnosticar el estado del
programa y del hardware conectado.
Estas rutinas pueden ser:
Iniciales: que corren únicamente tras la puesta o reanudación de la
tensión.
Cíclicas: que se repiten de forma continua mientras el autómata está
ejecutando el programa.
Las primeras se encargan de comprobar las conexiones físicas del sistema y la
identificación de la configuración existente.
Las rutinas cíclicas, por su parte, verifican la integridad del programa y de las
conexiones E/S utilizadas en el mismo:
Si una vez realizados los chequeos o comprobaciones pertinentes se detecta
algún problema, el autómata acusa el error, memoriza el código identificador
correspondiente y, de forma eventual, señaliza la situación iluminado el led de
error y algún otro identificador si lo tiene incorporado.
Una vez realizando el estudio de los códigos de error y/o combinando el estado
de los diferentes pilotos, es posible analizar los defectos y corregirlos con
celeridad.
La identificación completa del error se realiza visualizando sobre la unidad de
programación el código del mismo (lectura del registro que almacena el tipo de
error) y utilizando una tabla cruzada de códigos y nomenclatura de errores.
En la documentación del autómata se suele incluir un capítulo de diagnóstico y
corrección de errores que permite, en primer lugar, la identificación del mismo y
proporciona, además, posibles soluciones para su corrección.
Los errores se pueden clasificar en dos categorías: fatales y no fatales.
Los fallos o errores fatales provocan la detención del autómata (STOP),
y exigen la reinicialización de la máquina por reset o puesta en tensión.
En cuanto a los errores no fatales, quedan recogidos y señalizados en
el autómata pero no provocan la parada de la máquina.
Es posible encontrar en algunos autómatas un histórico de errores; es decir, un
conjunto de registros internos que van almacenando los errores producidos con
sus códigos de identificación correspondientes e incluso los datos de fecha y
hora en los que se producen, si es que la CPU tiene incorporado un reloj de
tiempo real.
Los contenidos de esta tabla de registro se van actualizando conforme
aparecen nuevos errores, siempre que estos no provoquen la parada del
autómata.
A continuación, se enumeran los errores que son detectados de forma más
habitual:
Fallos de alimentación.
Desbordamiento del reloj de guarda.
Ausencia del módulo de memoria en autómatas sin RAM de programa.
Destrucción y pérdida del programa o parte de él.
Fallos de conexión con las interfaces de entrada/salida.
Valores de preselección de temporizadores y de contadores fuera de
rango.
Fallo de conexión con la unidad de programación o con otros autómatas
que se encuentren dentro de una determinada red.
Direccionamiento incorrecto de las interfaces E/S o de variables
internas.
Imposibilidad de carga del programa (demasiado largo o
incorrectamente identificado).
Las unidades de programación pueden disponer, además de las rutinas de
autochequeo incorporadas en el monitor del autómata, de unos comandos de
test que tienen como misión la comprobación sistemática de toda la estructura;
es decir: entradas/salidas, estado de la CPU y de las memorias, conexiones del
bus, conexiones con la unidad de programación, teclados y visualizadores de
esta, entre otras. La función de test, si existe, siempre es ordenada por el
usuario, a diferencia de las rutinas del autochequeo anteriores, de activación
automática.
En la actualidad, todos los fabricantes disponen de software de programación
para la simulación del funcionamiento del programa de usuario en el PC. De
esta manera, se pueden depurar los posibles errores de programa antes de
volcarlos al autómata.
TIEMPO DE EJECUCIÓN Y CONTROL EN TIEMPO REAL.
El tiempo de ejecución de ciclo o tiempo de ciclo es el tiempo total que el
autómata emplea para realizar un ciclo de operación. Este tiempo depende
directamente de:
El número de entradas/salidas involucradas.
La longitud del programa de usuario.
El número y tipo de periféricos conectados al autómata.
El tiempo total del ciclo es, por tanto, la suma de los tiempos empleados en
realizar las distintas operaciones del ciclo, es decir:
Actualización de E/S.
Autodiagnósticos.
Ejecución y/o escrutación del programa.
Servicios a periféricos.
Los tiempos empleados en chequeos y comprobaciones cíclicas
(autodiagnóstico) son del orden de 1 y 2 milisegundos, al igual que los
consumidos en la atención a periféricos externos.
Los tiempos de ejecución de instrucciones se miden en unidades de
microsegundos, dando por resultado un tiempo de escrutinio del programa
variable en función del número y tipo de instrucciones contenidas.
Se debe tener presente que el tiempo de escrutinio es uno de los parámetros
característicos del autómata y que se expresa habitualmente en milisegundos
por cada mil instrucciones (ms/K).
Es lógico, por lo tanto, deducir que el tiempo resultante irá en función del tipo
de instrucciones elegidas, por lo que el fabricante suele indicar las utilizadas
como base de cálculo (aritméticas, booleanas, de temporización, etcétera) y las
proporciones entre ellas dentro del programa muestra.
Los tiempos típicos oscilan entre los 5 y los 15 milisegundos por K
instrucciones, aunque la aplicación de nuevas tecnologías y diseños a la CPU
están reduciendo considerablemente los tiempos a valores menores de 1
milisegundo por K instrucciones.
En referencia a los tiempos de acceso al exterior para lectura o escritura de
datos, estos varían entre 1 y 5 milisegundos, dependiendo del número de E/S
involucradas, de la CPU del autómata, de si este es modular o compacto, de si
se utilizan o no entradas/salidas remotas, etcétera.
En un autómata estándar de gama media, para una aplicación que necesite
aproximadamente unas 1000 instrucciones, el tiempo de ciclo total puede, por
lo tanto, estimarse del orden de 20 milisegundos.
El tiempo de ciclo es, sin duda, uno de los factores determinantes en el diseño
del sistema de control cuando en este aparezcan unas constantes de tiempo
muy bajas (sistemas de respuesta rápida), pero no siendo el único a
considerar, ya que también la electrónica de las interfaces incorpora retardos
adicionales.
La lectura o escritura de señales de planta, realizada a través de las interfaces
de entrada/salida, se encuentra afectada por los retardos intrínsecos de estos
circuitos que, al incluir filtros que tratan de evitar la entrada de ruido eléctrico en
el autómata, introducen también retardos en las conmutaciones de la señal,
limitando la frecuencia máxima de estas a valores inferiores a 100 hercios.
La tabla presenta los rangos de retardo máximo típicos, en milisegundos, para
distintas interfaces de entrada y salida en las conmutaciones de encendido a
apagado y viceversa.
Como se observa, las entradas en DC son más rápidas que en AC, por la
mayor necesidad de filtrado de las tensiones de red; mientras que las salidas
estáticas son, además, más rápidas que las salidas por relé. Se puede
comprobar el largo tiempo de conmutación ON-OFF de la salida por TRIAC, por
el retardo que introduce el apagado natural (a corriente cero) del dispositivo.
Si el proceso utiliza además señales analógicas, es preciso entonces
considerar también los tiempos de conversión A/D y D/A, lo cual, debido al
procedimiento de conversión por doble rampa normalmente utilizado, obliga a
considerar retardos aún mayores, de 15 milisegundos.
Dada una señal de mando (salida) en función de una o varia señales de planta
(entradas), se conoce como tiempo de respuesta al que transcurre desde que
un cambio en una de aquellas señales de planta es acusado por la señal de
mando. Este tiempo depende directamente de los retardos de conmutación y
adaptación de señal en las interfaces de entrada y salida, TINPUT delay,
TOUTPUT delay y del tiempo de ciclo del autómata.
Aunque el tiempo de respuesta es variable en función del instante en que
cambia la entrada respecto al ciclo de operación, se mueve siempre entre dos
valores límite máximo y mínimo, según se puede apreciar en el esquema.
Estos valores límites son:
Valor mínimo: (la señal se encuentra disponible en la interfaz justo
antes de la lectura de entradas).
o TRES min. = TINPUT delay + TCICLO + TOUTPUT delay.
Valor máximo: (la señal está disponible en la interfaz inmediatamente
después de la lectura de entradas).
o TRES máx. = TINPUT delay + 2 TCICLO + TOUTPUT delay.
El tiempo de retardo en las interfaces de entradas y salidas depende del tipo de
conmutación, ON/OFF o bien OFF/ON; así que, para el cálculo del tiempo de
respuesta máximo, se tendrán que tomar los mayores posibles que indique el
fabricante.
Se debe tener presente que los valores de tiempo de respuesta resultante y de
su inversa, la frecuencia de operación, pueden resultar despreciables frente a
las constantes de tiempo de los sistemas electromecánicos, es decir: relés,
solenoides, electroválvulas, etcétera; a los que el autómata sustituía o
controlaba en sus primeras aplicaciones de mercado, pero no lo son tanto
comparados con los tiempos excesivamente cortos que intervienen en la
lectura y control de los elementos electrónicos que son típicos en los procesos
de posicionamiento de motores (lecturas de pulsos de encoders), detección de
móviles de alta velocidad, respuesta a alarmas, etcétera.
Cuando se trata de controlar uno de estos procesos, relativamente rápidos,
puede darse la circunstancia de que la respuesta del autómata sea demasiado
lenta, con lo que el control no actuará como se espera.
El autómata tiene la facultad de controlar en tiempo real a un determinado
proceso, siempre que sus tiempos de respuesta o retardo resulten muy
pequeños frente a los tiempos de reacción del mismo.
Un ejemplo clarificador es que, utilizando un autómata con interfaz de entrada
DC y salida por relé, con un tiempo de ciclo de ejecución de 10 milisegundos, y
despreciando los tiempos de autochequeo y actualización E/S, se obtiene un
tiempo de respuesta máximo de:
A este tiempo le corresponde una frecuencia máxima de conmutación que el
autómata pueda leer de:
Si el proceso a controlar precisa de un tiempo de respuesta en alguna variable
inferior a 40 milisegundos, o si generan o manipulan frecuencias superiores a
25 hercios, el autómata visto en el ejemplo anterior no podrá tener el control de
dicho proceso sin riesgo de provocar oscilaciones, pudiendo saturarlo y
bloquearlo.
Con el objetivo de mantener la potencialidad de los autómatas, incluso en las
aplicaciones que exigen una mayor rapidez, los fabricantes incluyen en sus
distintos modelos elementos o funciones de proceso rápido, los cuales se
estudiarán en el siguiente apartado. El coste económico de un PLC se verá
incrementado en función de su rapidez de respuesta.
ELEMENTOS DE PROCESO RÁPIDO.
Existen tres tipos de actividades o circunstancias que exigen rápidas
respuestas del autómata y que lo obligan a buscar distintas soluciones.
Primero
Ejecución de subrutinas o programas a intervalos menores de los que permite
el tiempo de ciclo general del autómata, como procesado de alarmas, por
ejemplo. Para conseguir esta reducción del tiempo de respuesta para una señal
determinada, puede ordenarse la ejecución del bloque de programa que la
controla de forma independiente al resto del ciclo, pudiéndose iniciar esta por
los siguientes métodos:
Mediante un ciclo periódico, prefijado por el usuario (temporización
interna) por medio del cual se activa una rutina rápida que asegura la
reducción del tiempo de ciclo para las señales E/S manipuladas dentro
de la rutina.
Mediante una señal de interrupción exterior (asíncrona) para conseguir
respuestas rápidas, lo que hace que el autómata responda con rapidez
frente a estímulos externos.
El programa principal continúa en el punto en que fue interrumpido tras la
ejecución del bloque de tratamiento rápido. Esto significa que, si bien se
reducen los tiempos de respuesta para las entradas/salidas procesadas en la
rutina, se incrementan los correspondientes al resto de señales, en un valor
igual al del tiempo de ciclo de la rutina rápida por el número de interrupciones
al programa normal.
Algunos autómatas, sobre todo los de gama media y alta, permiten la
programación de varios bloques de proceso específico, cada uno de ellos con
su propia retícula de tiempo: una vez alcanzado unos de estos tiempos, se
activa una interrupción y, si la tarea que se encontraba en ejecución era de un
período con mayor o menor prioridad, se interrumpe para ejecutar la tarea
asociada a la interrupción activada, trascurrida la cual el proceso se reanuda en
el punto donde sufrió la interrupción.
Esta multitarea o estructura de programación llamada programación
estructurada permite definir programas diferentes para ejecutar sobre el
procesador principal o sobre los auxiliares. Estos programas son:
Programa básico.
Programa rápido.
Programa lento.
Rutinas de emergencia, entre otros.
La totalidad de estos programas pueden intercambiar datos y acceder a las
mismas entradas, salidas y variables internas, resultando una mayor
simplicidad y facilidad de programación y supervisión del funcionamiento.
Una estructura como la descrita permite además la priorización total de las
tareas de control, lo que implica que, en la práctica, el usuario puede elegir los
tiempos de respuesta que desea para cada una de las señales de su proceso.
Segundo
Lectura de impulsos de entrada a alta frecuencia; como, por ejemplo, los
procedentes de encoders. La pérdida de información que supone la aparición
de varios impulsos dentro de un mismo ciclo de ejecución, cuando es leído solo
el que coincida con el instante de lectura, puede evitarse si se dispone de un
contador rápido que, aprovechando un hardware específico con entradas
débilmente filtradas y circuito propio, sea capaz de leer señales de alta
frecuencia.
Tercero
La detección de señales de muy corta duración, menor que el tiempo de ciclo;
como, por ejemplo, para la detección de elementos móviles a alta velocidad.
Para este supuesto podría emplearse cualquiera de las dos soluciones
anteriores; aunque algunos autómatas que no las incluyen, en particular, las de
gamas bajas, pueden tener en cambio una o varias entradas detectoras de
flancos, capaces de captar y mantener en un relé interno, y hasta que se
produzca la lectura por parte de la CPU, señales individuales de tan corta
duración como 1 milisegundo (menores de un "scan"), de manera que el
autómata llega a tener constancia de ellas.
PROCESADO RÁPIDO DE PROGRAMAS.
El procesado de los programas puede ser:
Cíclico.
Rápido.
El procesado rápido de programas es el que se caracteriza por una ejecución
de instrucciones, la cual es respuesta a una señal independiente y asíncrona.
Con este procesado se consigue eliminar la dependencia que existe entre
algunas señales y el tiempo de ciclo del programa base.
Además, los autómatas pueden reducir aún más el ciclo del programa base con
la definición de algunas entradas y salidas, lo que provoca tiempos aún
menores de conmutación.
CONTADOR DE ALTA VELOCIDAD.
El contador de alta velocidad es un módulo de hardware independiente de la
CPU que permite contar los impulsos exteriores de alta frecuencia, los cuales
proceden de captadores.
Algunos autómatas programables disponen de contadores rápidos, que son
capaces de computar velocidades superiores a las del tiempo de ciclo.
Además, existen módulos periféricos específicos para este tipo de contadores.
Ejemplo
Un contador rápido se puede utilizar, por ejemplo, para computar las vueltas de
un motor.
ENTRADAS DETECTORAS DE FLANCO.
La función flanco positivo detecta un cambio de 0 a 1 en su entrada,
implementando a su salida un 1 durante un ciclo de programa; es decir, un
instante.
Ejemplo
Un pulsador efectúa una orden mientras es presionado, normalmente, durante
poco tiempo. ¿Qué ocurre si el pulsador se avería y se queda presionado de
forma permanente? La instalación, a través de la programación, está recibiendo
todo el tiempo una orden de marcha y esto puede ocasionar el mal
funcionamiento del sistema. Con el uso del flanco positivo, aunque el pulsador
esté presionado todo el tiempo, la orden solo se efectuará el tiempo necesario
para la llamada, menos de un segundo; permitiendo ordenes inequívocas.
La función flanco negativo implementa a su salida un 1 durante un instante,
si su entrada detecta un cambio de 1 a 0.
Ejemplo
Una aplicación necesita que, cuando un motor deje de funcionar, en ese
momento se debe efectúe una orden para que se active un segundo motor. Se
usará un flanco negativo aplicado al primer motor; así, cuando pare, efectuará
la orden de puesta en marcha del siguiente.
INSTALACIÓN Y MANTENIMIENTO DE AUTÓMATAS
PROGRAMABLES:
INTRODUCCIÓN.
Un autómata programable es un equipo electrónico susceptible de ser
programado por un usuario programador, destinado a gobernar, dentro de un
entorno industrial, equipos o procesos lógicos secuenciales.
Esta tipología de autómata ha supuesto una innovación tecnológica importante
en el campo de los automatismos eléctricos, reemplazando a las funciones
lógicas, que han sido durante años la base de los automatismos industriales.
FASE DE PROYECTO CON AUTÓMATAS PROGRAMABLES.
De acuerdo con el profesor Molina (Autómatas programables, 2001), los
autómatas son equipos electrónicos de cableado interno independiente del
proceso a controlar (hardware). Un autómata se integra a la instalación o
máquina a controlar mediante un programa que define la solución de las
operaciones que se desean y de un cableado directo a los elementos de
entrada y de salida del autómata. El autómata programable dentro de las
fábricas realiza funciones de control de tipo secuencial y lógico.
El funcionamiento de un autómata industrial puede adaptarse de forma plena a
los hábitos y a la formación del personal de fabricación y mantenimiento.
El número de instrucciones procesadas difiere de un autómata a otro. El
programa es concebido directamente por un electricista, automatista o
mecánico. Este trabajo se facilita aún más mediante el empleo de consolas de
programación.
Los autómatas programables industriales conllevan una serie de ventajas, entre
las cuales se recogen las siguientes:
Están diseñados y construidos para su aplicación en ambientes
industriales.
Son equipos flexibles, por su carácter programable.
Son fáciles de instalar y reutilizables.
Están construidos de forma que sean fáciles el mantenimiento y la
localización de averías.
Pueden utilizarse en diferentes tipos de tarea de control en una misma
planta.
Su capacidad de comunicaciones permite la integración en la tarea
global de control.
La configuración del autómata es un proceso mediante el cual se determina
cómo y dónde se sitúan los diferentes componentes del sistema de control.
La configuración dependerá de la tarea de control y también del tipo de control
que se haya decidido, y contempla los elementos del autómata y sus
periféricos.
SELECCIÓN DEL AUTÓMATA.
En la selección del autómata se pueden encontrar diversos factores que
pueden agruparse en diferentes categorías:
Entradas/Salidas (E/S): cantidad, tipo, prestaciones, ubicación,
etcétera.
Tipo de control: control de una o varias máquinas, proceso, etcétera.
Memoria: cantidad, tecnología, expansibilidad, etcétera.
Software: conjunto de instrucciones, programa informático de gestión,
etcétera.
Periféricos: equipos de programación, dialogo humano–máquina,
etcétera.
Físicos y ambientales: características constructivas, banda de
temperatura.
FASE DE INSTALACIÓN.
En la fase de instalación de un autómata o de la ampliación de módulos y de
elementos de uno instalado, se deberá de contar con el proceso productivo
existente para coordinar cuándo se puede llevar acabo la instalación y si es
posible hacerlo mientras el resto del sistema funciona o si, por el contrario, es
necesario desconectar y en tal caso reiniciar todo el proceso desde el punto de
detección comprobando que no existen errores de inicio de proceso.
A la hora de instalar E/S en los que se emplean dispositivos electrónicos de
detección como elementos de entrada, se debe tener en cuenta la corriente
residual de los mismos (detectores de 2 hilos de corriente alterna). El problema
se reduce a que el indicador de entrada se ilumina sutilmente, pero en
ocasiones, cuando la corriente residual es elevada, o dependiendo de los
umbrales de disparo del circuito de entrada, pueden darse señales falsas.
FIJACIONES Y CONDICIONES MECÁNICAS.
Dadas las características constructivas y de diseño de los autómatas
programables, su instalación es viable en prácticamente cualquier ambiente
industrial siempre que no se sobrepasen las especificaciones proporcionadas
por el fabricante. Se debe tener especial consideración con la temperatura y la
humedad, así como con la inmunidad frente a interferencias eléctricas.
En general, el autómata se montará en un armario de maniobra de
dimensiones adecuadas para contener con holgura los componentes del
equipo y el resto de elementos, como interruptores o seccionadores y fuentes
de alimentación, circuitos de protección, conductos de cableado, etcétera.
Las fijaciones y condiciones mecánicas deben ser adecuadas al ambiente en el
que se encuentra la instalación; entre otras, se tendrán en cuenta las
siguuientes:
Posibles equipos que transmiten vibraciones (motores, herramientas,
maquinarias).
Grado de humedad en la zona de trabajo, en ambientes muy húmedos.
Grado de temperatura en industrias con procesos de aporte de calor.
Existencia de partículas de polvo y su naturaleza (metálicas, madera,
etcétera).
Se recomienda el empleo de armarios metálicos puesto que minimizan los
efectos de la radiación electromagnética generada por equipos de conmutación
instalados en las inmediaciones.
ESPACIOS DE VENTILACIÓN.
Como regla general para la disposición de los equipos que forman el sistema,
se tendrán que alejar siempre los aparatos de alta tensión que generan
interferencias de los equipos de baja tensión y de tipo lógico.
Al configurar la disposición de la CPU en el panel, se han de tener en cuenta
los aparatos que generan calor y, por tanto, disponer los equipos electrónicos
en las zonas más frías del armario eléctrico; así pues, en el presente caso se
colocarán la CPU y el módulo de ampliación en la parte superior del armario, ya
que tampoco se tienen aparatos que generen un calor excesivo.
Como el funcionamiento de equipos electrónicos en entornos de alta
temperatura acorta su vida útil, también se debe considerar la ruta del cableado
de los equipos montados en el panel. Por ende, se evitará, en la medida de lo
posible, colocar los conductores de señalización y los cables de comunicación
en una misma canalización junto con los cables AC y DC de alta tensión y de
conmutación rápida.
Para los equipos autómatas se prevé la ventilación por convección natural, de
forma que:
Se deberá dejar un margen mínimo de 25 milímetros por encima y por
debajo de los equipos para garantizar su ventilación.
También de habrá de prever, al menos, 75 milímetros para la
profundidad del montaje.
La mejor solución siempre será la ubicación en un lugar de ventilación natural
adecuado; en caso de que no pueda ser así, se debe pensar en un sistema de
ventilación forzado (un ventilador o, en casos extremos, sistemas de
refrigeración) para conseguir que las temperaturas de trabajo del autómata y
equipos asociados estén dentro del rango de temperaturas que indica el
fabricante de los mismos.
DISTANCIAS DE SEGURIDAD ELÉCTRICA.
Los componentes del autómata se montarán siguiendo las recomendaciones
del fabricante, aunque se pueden seguir las siguientes pautas de aplicación
general:
El montaje vertical de los componentes es aconsejable para facilitar la
convección y la disipación del calor.
Las fuentes de alimentación deberán ocupar una posición en la parte
superior del armario, ya que son generadoras de calor.
La unidad central ocupará una posición adyacente o por debajo de las
fuentes de alimentación, en la zona superior del armario, quedando a
una altura que facilite su inspección.
Los racks de E/S quedarán dispuestos de la forma más adecuada para
el acceso y cableado, en el espacio libre.
Se dejarán espacios suficientes entre los componentes para una
adecuada disipación del calor.
Para el resto de componentes del sistema, se aconseja su instalación en
posiciones lo más alejadas posible del equipo, sobre todo si se trata de
componentes electromecánicos, para minimizar las interferencias
electromagnéticas.
CONDICIONES AMBIENTALES.
Aunque, como ya se ha dicho, las características y el diseño de los autómatas
programables hacen viable su instalación en casi cualquier ambiente industrial,
siguiendo siempre las especificaciones dadas por el fabricante; existen algunas
recomendaciones muy prácticas para asegurar un adecuado funcionamiento
del sistema, que atañen especialmente a las condiciones de temperatura y
humedad, así como a la inmunidad frente a interferencias eléctricas.
Por lo general, el autómata se montará en un armario de maniobra con las
dimensiones adecuadas para contener con holgura los componentes del
equipo y el resto de elementos.
Se tendrán en cuenta distintos factores ambientales que pueden afectar al
funcionamiento del autómata y protegerlo adecuadamente, entre los cuales
destacan:
Humedad.
Temperatura.
Ambiente con polvo.
Vibraciones.
COMPATIBILIDAD ELECTROMAGNÉTICA.
Cuando los dispositivos de entrada trabajan a niveles de señal débil como TTL,
termopares, analógicas, etcétera, se deben realizar conducciones de cableado
separadas para evitar el problema de la inducción. Además, para evitar las
interferencias electromagnéticas, se recomienda la instalación mediante cables
trenzados y apantallados.
Los circuitos de salida controlan periódicamente cargas inductivas, que
provocan la aparición de picos de tensión cuando se interrumpe el circuito de
alimentación (descarga del circuito inductivo). Estas crestas deben ser
suprimidas, ya que pueden averiar los circuitos de salida (estáticos) y provocar
interferencias en todo el sistema.
Por lo general, los módulos de salida incorporan circuitos fusibles de protección
dimensionados correctamente a las características nominales de la salida; si no
es así, se debe instalarlos en el exterior teniendo en cuenta las
especificaciones del fabricante, ya que no protegerán correctamente la salida
en caso de sobrecarga si no están bien dimensionados.
ALIMENTACIÓN Y PROTECCIONES.
Se recomienda el empleo de transformadores separadores de alimentación, ya
que proporcionan una buena protección frente a interferencias introducidas en
las líneas por la conmutación de cargas importantes existentes en la
instalación. Además, es necesario que los dispositivos de E/S se alimenten de
la misma línea que el autómata, puesto que la fuente de alimentación del
mismo posee circuitos de detección de nivel de tensión que provoca la
secuencia de parada del equipo en caso de anomalía o avería en la red, y de
este modo se evitarán las falsas lecturas de señal de entrada.
Algunos autómatas incorporan una fuente auxiliar de 24 VCC para uso externo
de los dispositivos de entrada sobre módulos de entrada a 24 VCC.
Es importante vigilar que no supere la capacidad de esta fuente, sobre todo
cuando se alimentan de ella dispositivos, y deben seguirse las
recomendaciones de cableado del fabricante para reducir la posibilidad de
interferencia sobre estos circuitos.
Si se prevé la existencia de variaciones de tensión en la línea de alimentación
que puedan superar los márgenes de trabajo especificados para el equipo,
habrá que instalar transformadores estabilizadores, para evitar paradas del
sistema.
Generalmente, o por lo menos para los dispositivos de salida, es importante
que exista un contactor de maniobra que permita cortar la alimentación de esos
elementos y que haga posible trabajar con seguridad en la puesta a punto o
investigación de averías, con el autómata alimentado.
DISTRIBUCIÓN Y CABLEADO INTERNO DEL ARMARIO DE
CONTROL.
El armario eléctrico es un envolvente que protege a los sistemas de
alimentación y control de las instalaciones eléctricas. Están previstos para
alimentar los distintos componentes que alberga como autómatas y elementos
auxiliares. También permiten gestionar cualquier avería.
Dentro, se encuentran diferentes módulos que les permiten cumplir su función
principal; son los siguientes:
Acometida y medición: este módulo es responsabilidad de la empresa
suministradora (compañía eléctrica).
Instalaciones de enlace: la compañía eléctrica es la responsable de
este módulo.
Mando y protección: este módulo es responsabilidad de la empresa
mantenedora.
Control y comunicaciones: la empresa mantenedora es la responsable
en el caso de este módulo.
Ahorro energético: este módulo es responsabilidad de la empresa
suministradora y la mantenedora.
Se tendrá en cuenta, a la hora de cablear los distintos elementos, el uso de
canalizaciones y regletas, así como separadores e identificadores, con el fin de
que todos los cables queden debidamente ordenados e identificados a fin de
facilitar el mantenimiento y la resolución de averías.
La parte exterior del armario se compone de tres partes principales que son:
La bancada
Permite el anclaje del armario completo en el suelo y protege los circuitos que
vienen del suelo hacia los sistemas eléctricos para el buen funcionamiento del
armario.
El envolvente principal
Protege los sistemas eléctricos para alimentar y controlar los elementos que
alberga. Se incluyen las puertas, las rejillas de ventilación y la estructura
interna para fijar las cajas que contienen los módulos.
La tapa
Protege también los sistemas eléctricos. En la mayoría, se encuentran
pequeños agujeros para permitir la ventilación natural por las rejillas ubicadas
en el envolvente del armario eléctrico.
CABLEADO EXTERNO.
Cuando sea posible, en la configuración del sistema se intentarán agrupar los
módulos por categorías en relación con:
Entradas/salidas.
Tensión alterna o continua.
Señales discretas o analógicas.
Una configuración por grupos hace un cableado racional y una necesaria
segregación de los cables de señal débil respecto a los que alimentan cargas, y
de los de comunicaciones. Siempre que sea posible, se separarán los cables
de CC de los de CA, para minimizar las interferencias producidas por la
conmutación de cargas; y también los cables de interconexión de racks y de
comunicaciones se separan completamente de otros.
El marcado de cables permite identificar a cada conductor respecto al plano de
montaje.
La señalización puede hacerse de diferentes formas: alfabética, numérica o
alfanumérica.
Algunos de los elementos empleados para el marcaje pueden ser los
mencionados a continuación.
Etiquetas de plástico: con caracteres individuales que se colocan en las
puntas de los conductores. Existen varios tipos:
Las de anilla: se han de colocar antes de conexionar el cable a marcar.
Las de brazalete: se fijan una vez que ha sido conectado al aparato
eléctrico.
Bridas de identificación: con zona de marcaje manual para escribir el
referenciado con rotuladores de tinta inalterable. Se utilizan para el marcado de
mazos de cables y mangueras.
La correcta organización de los cables que forman un cuadro es esencial para
su óptimo funcionamiento y operaciones de mantenimiento. Si el cableado no
es el adecuado, pueden generarse situaciones de peligro, averías inesperadas
y falsos contactos. Siempre que sea posible, se evitarán las mangueras o
mazos de cables con conductores de potencia.
En los cuadros en los que existan circuitos de maniobra y fuerza, se
canalizarán independientemente.
DISEÑO E INSTALACIÓN DEL SOFTWARE.
Cuando se habla de instalación de software en autómatas se puede referir a
los dos siguientes casos:
1. Instalación del software en el PC
En este caso, se instalará el programa para poder llevar a cabo el diseño de la
programación del autómata; el fabricante facilitará un software adecuado y con
una interfaz amigable. Es interesante que la mayoría del software tenga la
opción de simular el programa que se está editando a fin de depurar errores
antes de transmitirlo al autómata físicamente. Estos software pueden ser
gratuitos o no.
2. Instalación del programa en el PLC
Es cuando se traspasa el programa al PLC para que se pueda interpretar y ejecutar;
se deberán tener en cuenta las indicaciones del fabricante para llevar a cabo esta
tarea en cuanto a la disposición del autómata para poder recibir el nuevo programa,
así como el modo en el que entra a funcionar ese nuevo programa sobrescribiendo el
anterior o conviviendo con otros ya incluidos en el autómata.
FIABILIDAD DE LAS INSTALACIONES CON AUTÓMATAS.
La automatización eléctrica es un sistema de automatización de los más
empleados y extendidos hoy en día no solo en la industria, sino en casi todos
los campos de la vida. Esta ha permitido no solo un aumento en la producción
industrial, sino un mejor control de los procesos, así como mayor seguridad y
confort de las personas en la sociedad actual.
La automatización eléctrica se ha diseñado con la finalidad de aprovechar la
capacidad de las máquinas en la realización de determinadas tareas que eran
efectuadas históricamente por el ser humano, así como para controlar la
secuencia de dichas operaciones sin intervención humana.
Cualquier máquina, por sencilla que sea, va a tener algún tipo de automatismo
eléctrico encargado de gobernar los motores, o como función de mando dentro
de la propia máquina.
Importante
La electrónica es el campo de la ingeniería y de la física aplicada relativo al
diseño y aplicación de dispositivos, generalmente circuitos eléctricos, cuyo
funcionamiento depende del flujo de electrones para la generación,
transmisión, recepción, entre otros. Esta información puede consistir en una
imagen en una pantalla de televisión, en voz o música (como, por ejemplo, en
un receptor de radio), o en números u otros datos en un ordenador o
computadora.
Los circuitos electrónicos ofrecen diferentes funciones para procesar esta
información, incluyendo:
La amplificación de señales débiles hasta un nivel que se pueda utilizar.
El generar ondas de radio.
La extracción de información.
El control, como en el caso de introducir una señal de sonido a ondas de
radio.
Las operaciones lógicas, como los procesos electrónicos que tienen
lugar en las computadoras.
La electrónica es una de las herramientas primordiales en la automatización, ya
que se pueden combinar una gran gama de componentes como tubos de
vacío, transistores, circuitos integrados, resistencias, bobinas y dispositivos de
detección, y transductores.
Por consiguiente, el uso de autómatas conlleva un nivel de fiabilidad en los
procesos productivos; la ejecución de programas es robusta y sistemática, y en
el momento que un programa está bien depurado, no existe posibilidad de fallo.
Igualmente, si las conexiones son adecuadas y tanto los elementos de entrada
como de salida funcionan correctamente, la fiabilidad del proceso es muy
elevada, principalmente evitando los posibles errores humanos por mal uso,
por descuidos o por desconocimientos del uso de la instalación, pues esta
funciona de forma automatizada.
MANTENIMIENTO DE INSTALACIONES CON AUTÓMATAS.
El mantenimiento predictivo es el mantenimiento subordinado a la aparición
de un suceso conocido (generación de ruido y vibraciones, aumento de
temperatura, etcétera) que pone de manifiesto un estado de deterioro del
componente o equipo. La detección de la condición de aviso de fallo permite
programar la intervención justo antes de que el fallo llegue a producirse. Su
tarea consiste en la realización de diversas mediciones o ensayos no
destructivos. Se lleva a cabo con equipos muy sofisticados, incidiendo en todos
los puntos vulnerables o susceptibles de la máquina; es decir, en todos los
elementos más sensibles a sufrir una avería.
Se basa en la idea de que cualquier tipo de fallo se produce lenta y
previamente en el sistema, por lo que, si se realiza un control periódico y se
observa algún indicio de fallo, es posible intervenir de manera rápida y eficaz
para evitar mayores complicaciones.
Su objetivo principal consiste en establecer una relación entre la variable
seleccionada y la vida del componente del equipo; esto se consigue con un
procedimiento denominado "toma de lecturas en intervalos periódicos", hasta
que definitivamente la pieza o elemento del equipo se rompa.
La información más importante de este tipo de mantenimiento es la que permite
calcular, con un margen de error, cuándo el equipo tendrá una avería, por lo
que se producirá una parada en el proceso de producción o fabricación.
Algunos parámetros inspeccionados en este tipo de mantenimiento son:
La temperatura de las conexiones entre elementos.
La resistencia de la bobina del motor.
Una técnica utilizada en el mantenimiento predictivo es la termografía
infrarroja. Esta técnica permite, a distancia y sin ningún contacto, medir y
visualizar temperaturas de superficie con precisión.
Las cámaras termográficas para inspecciones de mantenimiento predictivo son
herramientas muy potentes y no invasivas para el diagnóstico y la supervisión
del estado de componentes e instalaciones eléctricas y mecánicas. Con una
cámara termográfica se pueden identificar problemas en una fase temprana, de
modo que se hace posible la documentación y corrección de los mismos antes
de que se agraven y sean más costosos de reparar.
Una termografía con datos de temperatura precisos proporciona al
responsable de mantenimiento información significativa sobre el estado actual
del equipamiento que ha sido inspeccionado. Estas inspecciones se pueden
realizar mientras el proceso de producción se encuentra en pleno
funcionamiento y, en muchos casos, el uso de una cámara termográfica puede
incluso ayudar a optimizar el propio proceso de producción.
De acuerdo con Juan Palacios (2015):
"La mayoría de los problemas y averías en el entorno industrial (ya sea de tipo
mecánico, eléctrico y de fabricación) están precedidos por cambios de
temperatura que pueden ser detectados mediante la monitorización de
temperatura con sistema de termografía por infrarrojos. Con la implementación
de programas de inspecciones termográficas en instalaciones, maquinaria,
cuadros eléctricos, etcétera, es posible minimizar el riesgo de una avería de
equipos y sus consecuencias; además, también ofrece una herramienta para el
control de calidad de las reparaciones efectuadas".
El análisis mediante cámaras termográficas está recomendado para:
Instalaciones y líneas eléctricas de alta y baja tensión.
Cuadros, conexiones, bornes, transformadores, fusibles y empalmes
eléctricos.
Motores eléctricos, generadores, bobinados, etcétera.
Algunas de las ventajas que ofrece el mantenimiento preventivo por
termografía pueden ser:
Método de análisis sin la detención de procesos productivos.
Baja peligrosidad para el operario por evitar la necesidad de contacto
con el equipo.
Determinación exacta de puntos deficientes o defectuosos en una línea
de proceso.
Reduce el tiempo de reparación por la localización precisa de la avería.
Provee de informes muy precisos al personal de mantenimiento.
Ayuda al seguimiento de las reparaciones previas.
Mantenimiento preventivo
El mantenimiento preventivo es aquel que se realiza para prevenir las
posibles averías causadas en un autómata por diferentes factores. El
diagnóstico de los elementos de la instalación es una práctica fundamental
para mantener su correcto funcionamiento; es decir, revisar los posibles fallos y
detectar las anomalías de los elementos que pueden suponer una avería, con
el objetivo de detectarla, localizarla y repararla.
Un diagnóstico o las acciones preventivas pueden determinar pequeñas
averías que, al ser reparadas de manera precoz, evitan problemas y la subida
de costes en reparación; así como averías graves que pongan en peligro el
funcionamiento de la instalación o incluso al trabajador.
Se define el mantenimiento según la norma UNE 100000 (se anuló en
diciembre del año 2004 por la UNE-EN 12792:2004, pero recogía esta
definición, que aún es apropiada) como el "conjunto de operaciones necesarias
para asegurar un elevado rendimiento energético, la seguridad del servicio y
defensa del medioambiente durante el funcionamiento de la instalación". Este
es un concepto muy amplio que incluye, además de las operaciones de
conservación, el rendimiento energético (de cualquier maquinaria) y la
protección del medioambiente.
El mantenimiento preventivo, en definitiva, consiste en la programación de las
intervenciones o cambios de algunos componentes según periodos
predeterminados de tiempo o espacios regulares (horas de trabajo, acciones
realizadas, etcétera).
Este tipo de mantenimiento se lleva a cabo a través de la implantación de un
programa de acciones de revisión y lubricación de los distintos sistemas y
piezas que componen el equipo. Dichas piezas y elementos pueden ser
sistemas mecánicos, hidráulicos, neumáticos, etcétera.
El objetivo que se persigue es prever y anticipar las posibles averías en el
equipo, determinar qué tipo de revisiones deben realizarse con el sistema en
funcionamiento y cuáles se deben realizar con el sistema en parada.
Importante
El mantenimiento en general tiene como objetivo conseguir un número
determinado de horas de funcionamiento del sistema de automatización, de la
planta, instalación, máquina o equipo, en las condiciones de servicio exigidas,
al mínimo coste y con el máximo de seguridad para el personal que lo utiliza y
mantiene las instalaciones y la maquinaria, con un mínimo consumo energético
y causando un mínimo o nulo deterioro ambiental.
Centrándose en lo que se refiere al mantenimiento preventivo, el concepto
implica la eliminación o reducción de averías en el sistema. Esto se puede
conseguir mediante dos caminos:
Eliminar la causa que producirá la avería.
Anticiparse al efecto, es decir, a la avería.
La idea fundamental del mantenimiento preventivo es adelantarse en el tiempo
a las averías, y uno de los índices que miden su eficacia es la disminución de
las mismas.
Existe a la vez otra función más oculta del mantenimiento preventivo, que es
velar por el estado de la máquina e instalaciones.
El mantenimiento preventivo actúa practicando tres actividades:
Inspecciones, verificaciones y revisiones.
Engrases.
Pequeñas reparaciones.
Los resultados del mantenimiento preventivo son:
A corto plazo
Aumenta el número de intervenciones del personal ejecutivo de mantenimiento,
si bien transforman las reparaciones inesperadas y súbitas en programadas, lo
que abarata notablemente su coste y disminuye de manera extraordinaria el
gran perjuicio que las averías inesperadas causan a la explotación.
A laro plazo
Reduce el número de horas por persona de mantenimiento, así como en
consumo de repuestos caros.
Caso Práctico
Se recuerda que un autómata programable es un equipo electrónico
programable por un usuario programador, destinado a gobernar, dentro de un
entorno industrial, equipos o procesos lógicos secuenciales. El presente caso
práctico tiene por objeto, como su propio nombre indica, practicar los
conocimientos obtenidos en el contenido teórico acerca de los autómatas
programables. El alumnado deberá llevar a cabo las siguientes tareas:
Pensar en un ejemplo adecuado de autómata programable y describirlo.
Determinar las características del autómata programable elegido.
Describir la finalidad de este autómata en concreto.
En la corrección del caso práctico, se valorará la adecuación de la respuesta a
las preguntas establecidas.
RECUERDA
- Un automata programable es un equipo electronico programable por un
usuario programador, destinado a gobernar, dentro de un entorno
industrial, equipos o procesos logicos secuenciales.
- El automata se configura alrededor de una unidad central o de control,
que unida por medio de buses internos a las interfaces de entrada y salida
y a las memorias, define lo que se conoce como arquitectura interna del
automata.
- Se conoce como memoria de trabajo al almacen donde el automata
guarda todo lo que necesita para ejecutar la tarea de control.
- Las interfaces de entrada y salida establecen la comunicación entre la
unidad central y proceso.
- Es habitual que las maquinas o procesos bajo control no se encuentren
localizados en un punto.
- El tiempo de ejecucion de ciclo o tiempo de ciclo es el tiempo total que
el automata emplea para realizar su tiempo de operación.
- Se puede considerar a los automatas propramables como maquinas
secuenciales que ejecutan de forma correlativa las instrucciones
indicadas en el programa de usuario que se encuentra almacenado en su
memoria, generando unas señales u ordenes de mando a partir de las
señales de entrada leideas de la planta.
2. LENGUAJES Y PROGRAMAS EN LOS
AUTÓMATAS PROGRAMABLES
INTRODUCCIÓN
A lo largo de la presente Unidad Didáctica se estudiarán los lenguajes y
programas en los autómatas programables. Para ello, se atenderá al diseño de
automatismos lógicos dentro de los cuales se analizarán automatismos
combinacionales y secuenciales, así como sus diseños; modelos y funciones
de transferencia; el diseño, elementos de base y reglas de evolución de
GRAFCET; y las macro-etapas y representación en detalle.
Posteriormente, se explicará la programación del autómata, así como la de los
bloques funcionales. En último lugar, se abordarán las diferentes estructuras de
programación y, en concreto, las de tipo STEP-7.
OBJETIVOS
Aprender los diferentes conceptos del diseño de automatismos lógicos.
Sintetizar la programación del autómata.
Determinar el funcionamiento de la programación de bloques
funcionales.
Analizar las estructuras de programación.
Comprender la programación STEP 7.
MAPA CONCEPTUAL
DISEÑO DE AUTOMATISMOS LÓGICOS:
1. Diseño de automatismos lógicos
Automatización industrial
La automatización industrial se puede definir como el conjunto de técnicas
basadas en el uso de sistemas capaces de recibir información del proceso
sobre el que actúan, así como de realizar acciones de análisis, organización y
control de forma apropiada.
El objetivo principal de la automatización es optimizar los recursos de
producción, así como los materiales, recursos humanos, recursos económicos,
recursos financieros, etcétera. Otro de los objetivos de la automatización es el
incremento de la productividad, racionalizando las materias primas e insumos
(reduciendo costos operativos, así como el consumo energético), y mejorando
el diagnóstico, la supervisión y el control de la calidad en el proceso de
producción.
Los proyectos de automatización pasan por diferentes fases:
1. Especificaciones funcionales: es la propia fase de la automatización.
En ella, se desarrollan los pasos a seguir, observando el proceso a
controlar y seleccionando el tipo de automatismo a desarrollar.
2. Determinación de actuadores y sensores: se caracteriza por la
supervisión. Se reúnen el máximo de especificaciones sobre los estados
posibles en los que se puede encontrar una máquina, definiendo la
complejidad del problema y representando el caso mediante guías de
estudio.
3. Diseño del circuito de mando y de potencia: fase marcada por la
interacción. En ella, entra en juego el operario, controlando parte del
automatismo mediante el diseño del panel de mando en función de las
acciones físicas de los distintos dispositivos y la recepción de las
señales.
4. Selección de componentes e implementación: en esta fase, el
operario utiliza sus habilidades para la programación de los
automatismos.
5. Montaje y pruebas: a lo largo de esta fase, el operario debe estar
atento a los posibles fallos y errores que aparezcan en el proceso, para
solucionarlos antes de que el automatismo se ponga en marcha.
6. Puesta en marcha: esta última fase implica la utilización de los
automatismos.
INTRODUCCIÓN.
La automatización depende de cada empresa, pudiéndose elegir entre
automatizaciones manuales, parciales, semiautomáticas o totales.
Un automatismo es un sistema que hace que una máquina funcione de forma
autónoma, para liberar al hombre de trabajos concretos. Existen diferentes
tipos de automatismos, que se clasifican atendiendo a diferentes criterios.
Según su naturaleza:
o Automatismos hidráulicos: como los cilindros y las válvulas.
o Automatismos eléctricos: como los contadores.
o Automatismos electrónicos: como los procesadores.
o Automatismos neumáticos: como los cilindros y las válvulas.
o Automatismos mecánicos: como las ruedas dentadas, las
poleas y las cremalleras.
Según el sistema de control:
o Automatismos de lazo abierto: la salida no influye en la entrada.
o Automatismos de lazo cerrado: la salida repercute en la
entrada.
Según el tipo de información:
o Automatismos analógicos: regulación automática.
o Automatismos digitales: como los automatismos cableados y
los automatismos programados.
Además, los automatismos se diferencian en base a 10 aspectos. A
continuación, se describen dichas diferencias entre los automatismos
eléctricos, neumáticos e hidráulicos en la presente tabla:
MODELOS Y FUNCIONES DE TRANSFERENCIA.
La función de transferencia consiste en la relación matemática existente entre
la magnitud de entrada del sensor y la señal eléctrica de salida.
Por tanto, esta función de influye notablemente en la naturaleza de los
sensores a emplear en el autómata programable.
Así, en sensores lineales, la función de transferencia es una ecuación
diferencial lineal de coeficientes constantes.
Sin embargo, para sensores no lineales, la ecuación que rige la
función de transferencia no es lineal de coeficientes constantes.
Ejemplo
Como ejemplo aclaratorio, se puede hablar de un sensor de
temperatura analógico cuya magnitud de entrada será un rango de
temperaturas entre un valor mínimo y máximo, y la señal eléctrica de
salida puede ser un valor de tensión entre 0 y 5 voltios; de modo que
la relación sea lineal entre el valor de temperatura y el valor
correspondiente en tensión de salida.
AUTOMATISMOS COMBINACIONALES Y
SECUENCIALES.
Proceso continuo
Un proceso continuo se caracteriza porque las materias primas están
continuamente entrando por un extremo del sistema, mientras que
en el otro se obtiene de forma constante un producto terminado.
Ejemplo
Un ejemplo común de proceso continuo puede ser el caso
de una determinada instalación industrial, en la que se
quiere mantener una temperatura constante con un
sistema de calefacción. La entrada es la temperatura que
se quiere alcanzar en la instalación y la salida será la
temperatura que realmente existe. El sistema de control
está formado por un comparador que proporciona una señal
de error igual a la diferencia entre la temperatura que se
desea y la que existe realmente; la señal de error se aplica
al regulador, que adaptará y amplificará la señal que ha de
controlar la electroválvula que permite el paso de
combustible hacia el quemador de la caldera.
Representación esquemática del proceso continuo reflejado en el ejemplo
El regulador, en función de la señal de error
y de las pérdidas de calor que existen en la
instalación, mantendrá la temperatura que
se desea.
A la vista de la instalación, se comprueban las siguientes
características propias de los sistemas continuos:
El proceso se realiza durante un tiempo largo.
Las variables empleadas en el proceso y sistemas de control
son de tipo analógico.
Proceso combinacional
Un automatismo combinacional consiste en un sistema en el que las
salidas son únicamente función exclusiva de las entradas en un
momento dado; motivo por el cual se dice que este tipo de
automatismos no posee memoria y no tiene en cuenta estados
anteriores del sistema, solamente considera el estado actual (no
interviene ningún estado anterior de entradas ni salidas).
Proceso secuencial
Un proceso secuencial se caracteriza por:
El proceso se puede descomponer en una serie de estados o
variables internas que se activan en secuencia.
Cada uno de estos estados realiza unas acciones determinadas
cuando está activo. También se habla de variables de salida.
Las señales que proceden de los sensores controlan la
transición entre estados. Se habla, además, de variables de
entrada.
Las variables del proceso y sistema de control, es decir, de
entrada y salida, son múltiples, tomando dos valores: activado o
desactivado.
DISEÑO DE AUTOMATISMOS COMBINACIONALES.
Un sistema combinacional es aquel cuyas salidas dependen
solamente del estado de sus entradas, con independencia de cuál sea
el estado inicial de partida.
En este tipo de sistemas, la función o funciones de transferencia son
meramente funciones lógicas que relacionan las salidas con las
entradas mediante combinación de los operadores “Y”, “O” y “NO”.
Desde un punto de vista estructural, los sistemas secuenciales están
formados por la interconexión de bloques combinacionales,
apareciendo en ellos un nuevo elemento, una variable interna que se
introduce nuevamente como entrada. Este tipo de variables internas
hacen que la respuesta del sistema ya no dependa exclusivamente de
las entradas, sino que dependa también del estado interno, por lo
cual se suelen llamar variables de estado.
Desde el punto de vista del modelo matemático, la función o
funciones de transferencia de un sistema secuencial siguen siendo
funciones lógicas, pero contienen variables internas que guardan
«memoria» del estado del sistema o, si se quiere, de su evolución
anterior.
Importante
Las salidas y las entradas están relacionadas por los operadores «Y»,
«O», «NO» y «MEMORIA». De hecho, los nombres de los operadores
para la función "memoria" suelen llamarse SET (memorizar un 1) y
RESET (memorizar un O).
DISEÑO DE AUTOMATISMOS SECUENCIALES.
Un sistema secuencial es aquel cuyas salidas dependen de las
variables de entrada y del estado inicial del sistema.
En función de cómo se realice la transición entre los distintos estados,
los controladores pueden ser de dos tipos: asincrónicos y sincrónicos.
Controladores asincrónicos
La transición entre los estados se produce exactamente cuando hay
un cambio entre las variables de entrada.
Controladores sincrónicos
La transición entre los estados se produce de manera sincronizada
mediante una señal de reloj de frecuencia fija.
Se pueden distinguir dos procesos:
Proceso discretos.
Procesos discontinuos.
Procesos discretos
Las magnitudes que determinan la evolución del proceso cambian de
forma discreta o discontinua y suelen tomar solo determinados
valores.
El sistema evoluciona mediante eventos; por eso, son conocidos
también como "procesos de eventos discretos". En estos procesos se
actúa sobre objetos concretos, igualmente llamados elementos
discretos.
Ejemplo
La cinta se va a accionar hacia la derecha si S1 detecta la presencia
de un objeto al comienzo de la misma, y se detendrá cuando S2
detecte el objeto. La cinta se va a accionar hacia la izquierda si S2
detecta la presencia de un objeto al comienzo de la misma y se
detendrá cuando S1 detecte el objeto. Las magnitudes que definen la
evolución del proceso son: la detección del objeto al comienzo, la
detección del objeto al final y la marcha o paro de los motores. Dichas
magnitudes solo pueden tomar dos valores, detectado o no
detectado, en marcha o parado.
Procesos discontinuos o por lotes
Conocidos también como batch, son en los que obviamente sí existen
paros. Estos procesos son menos comunes y, por lo general, existen
en algunos tipos de empresas de operación pequeña o dentro de
esquemas de operaciones que son continuas en global. Algunos
procesos, dada su naturaleza, son necesariamente discontinuos;
como la filtración, ya que después de determinados periodos de
operación es necesario limpiar los filtros.
Para saber más
Cabe señalar que diversos procesos de producción utilizan más de
dos equipos para un mismo objetivo con la finalidad de que, por lo
menos, uno se mantenga en operación por si falla alguno de los otros,
sino es que todos llegan a fallar o a requerir de mantenimiento. Un
claro ejemplo de este tipo de procesos se encuentra en las cadenas
de fabricación de coches: se reciben todas las piezas discretas que se
necesitan a la entrada del proceso y se realizan todas las operaciones
necesarias para producir un producto acabado o un promedio
intermedio listo para un procesamiento posterior.
GRAFCET: RESUMEN HISTÓRICO.
A mediados de los años 70 surge en Francia el GRAFCET (Gráfico
Funcional de Control de Etapa Transición), propiciado por la
colaboración entre algunos fabricantes de autómatas, como
Telemecanique y Aper, con dos organismos oficiales: AFCET
(Asociación Francesa para la Cibernética, Económica y Técnica) y
ADEPA (Agencia Nacional para el Desarrollo de la Producción
Automatizada). Este gráfico fue homologado en Francia (NFC),
Alemania (DIN) y, más tarde, por la Comisión Electrotécnica
Internacional (Norma IEC 848, año 1988).
El gráfico se construyó bajo el principio de que un proceso es
secuencial cuando para alguna combinación de los elementos de
entrada se puede tener más de una combinación de estados en los
elementos de salida. También lo es cuando, además de considerarse
cómo están en el ahora las entradas, se tiene en cuenta cómo han
estado anteriormente y cuál ha sido su evolución.
El GRAFCET es un sistema gráfico de representación de control
(secuencial) mediante la sucesión alternada de etapas y transiciones.
Está normalizado a nivel europeo (CEI 848).
Como se ha visto, nació como una herramienta para resolver
problemas de automatización, para, una vez representado, ser
pasado a algún tipo de lenguaje de los vistos hasta ahora. En la
actualidad, son muchos los fabricantes que dan la posibilidad de
introducir el GRAFCET directamente en el autómata sin necesidad de
ser traducido a otro lenguaje. Es por esto que dicho gráfico se puede
considerar como otro lenguaje de programación para PLC's.
DISEÑO BASADO EN GRAFCET.
Desde el punto de vista del análisis:
Se considera al GRAFCET como un diagrama funcional que describe la
evolución del proceso que se pretende automatizar, indicando las
acciones que hay que realizar sobre el proceso y qué informaciones
las provocan; partiendo de él, se pueden alcanzar las secuencias que
ha de efectuar el autómata programable.
Su empleo para resolver tareas de automatización facilita el diálogo
entre personas con niveles de formación técnica diferente, tanto en el
momento del análisis del proceso a automatizar como más tarde, en
el mantenimiento y reparación de averías.
El GRAFCET, desde el punto de vista de modelo gráfico:
Es conciso.
Es independiente de la tecnología, su uso es indistinto para
procesos a automatizar mediante electricidad, electrónica,
neumática, hidráulica, etcétera.
Presenta unas representaciones libres de ambigüedades y
paralelismos.
Tiene una complejidad que está relacionada con la naturaleza
del problema, no con su tamaño.
Pone en evidencia incoherencias en las especificaciones.
Admite varios niveles de análisis, está jerarquizado.
Es fácil de interpretar.
Su utilización puede ir dirigida indistintamente al diseñador, porque
es un lenguaje de definición funcional. También va dirigido a quien
esté en la explotación de forma que pueda comprender mejor el
comportamiento del proceso con el que esté trabajando, así como al
técnico de mantenimiento que podrá conocer de modo global la
función de un automatismo en un entorno concreto.
GRAFCET: ELEMENTOS DE BASE Y REGLAS DE
EVOLUCIÓN.
Como se ha dicho anteriormente, el GRAFCET admite varios niveles
de análisis, los cuales de definen a continuación:
1. GRAFCET nivel 1: descripción funcional
Describe las acciones que se deben efectuar y los diferentes elementos de
control que intervendrán, sin indicar los elementos concretos que serán
utilizados.
2. GRAFCET nivel 2: descripción tecnológica
Deben señalarse todas las especificaciones de los órganos operativos y detallarse los
elementos tecnológicos que intervendrán.
3. GRAFCET nivel 3: descripción operativa
Han de indicarse todos los elementos, con los distintivos propios de las entradas y
salidas, así como los relés o marcas internos que serán utilizados.
Reglas de evolución del GRAFCET
Después de todo lo visto hasta ahora, se va a proceder a dar una
serie de reglas básicas que hay que tener presentes para aplicar el
GRAFCET. Son las siguientes:
El proceso se descompone en etapas, que serán activadas de
forma secuencial.
Una o varias acciones se asocian a cada etapa. Estas acciones
solo están activas cuando la etapa se encuentra activa.
Una etapa se hace activa cuando la anterior lo está y la
condición de transición entre ambas etapas ha sido activada.
La activación de una condición de transición implica la
activación de la siguiente etapa y la desactivación de la
precedente.
La etapa inicial E0, tiene que ser activada antes de que se inicie
el ciclo del GRAFCET. Un ciclo está formado por todas las etapas
posteriores a la etapa inicial.
GRAFCET: EJEMPLO DE DISEÑO.
Puente grúa
El puente grúa consta de los siguiente actuadores y sensores:
Dos motores de doble sentido de giro, uno para el movimiento
horizontal de la grúa y otro para el movimiento vertical.
Cuatro finales de carrera.
Dos mandos para el operario.
La automatización se va a abordar mediante un autómata de la
marca Siemens, serie SIMATIC, con CPU 314.
Descripción del proceso
Se trata de controlar la grúa para que realice los ciclos representados
en la figura. Partiendo de la posición de reposo (la representada en la
figura) realiza el ciclo 1, hasta llegar a la posición de reposo 2, donde
permanecerá un tiempo determinado antes de realizar el ciclo
número dos; cuando vuelva a conseguir la posición de reposo número
1, la grúa se parará.
El sistema de cuenta con un interruptor de control o arranque tendrá
que ser activado cada vez que se pretenda que la grúa realice los dos
ciclos. En la figura se ilustra el proceso a automatizar.
Se contempla un ejemplo de los procesos y las fases de la grúa.
El ciclo comienza cuando el operario pone en marcha la grúa
mediante el interruptor MARCHA, y, tras haber colocado la pieza a
transportar en la grúa, pulsa el pulsador PLIST que indica al autómata,
a través de la detección de flanco ascendente, que la pieza está lista
para ser transportada. Una vez se dan estas órdenes y siempre y
cuando el gancho esté en la parte inferior (FCB activado) e izquierda
(FCI) -es decir, en sus condiciones iniciales-, la grúa se pone en
marcha.
Primero se activa el relé que hace que el motor de transporte
vertical suba (MSUBIR) hasta que el gancho llega al final de carrera
superior FCS. Después se activa el relé que acciona el motor de
transporte horizontal en sentido derecho MDER, hasta que llega al
final de carrera derecho FCD. Una vez aquí, se activa el relé que hace
que el motor de transporte vertical se accione en sentido
descendente MBAJAR.
En esta etapa se espera a que el operario descuelgue la pieza y
vuelva a pulsar el pulsador PLIST, momento en el cual se activa
MSUBIR hasta llegar al final de carrera FCS; después se activa MIZQ
que hace que el gancho se desplace a la izquierda hasta llegar a FCI,
en donde el gancho baja al activarse la salida del autómata MB, hasta
llegar al final de carrera FCB, en cuyo punto finaliza el ciclo.
GRAFCET: ejemplo de diseño
Tabla de variables
A continuación se definen las variables, las entradas y las salidas del
autómata utilizadas en el programa de usuario:
Esquema de contactos
El esquema de contactos se ha estructurado en:
Condición inicial: se ha de cumplir para que el ciclo comience.
En este caso, la condición es que todas las etapas estén
desactivadas.
Condiciones de transición: se han de cumplir para poder
pasar de unas etapas a otras.
Asignación de salidas del autómata: a las variables de
etapa del GRAFCET. Aquí se identifican dichas salidas con las
etapas del gráfico.
Esquema de contactos, ejemplo
Esquema de contactos, ejemplo
Activación de la etapa 6
Activación de los motores
MACROETAPAS Y REPRESENTACIÓN EN DETALLE.
1. Macroetapas
Al hacer la descripción del automatismo, el GRAFCET da la posibilidad
de empezar desde un punto de vista general y, a partir de él, hacer
descripciones cada vez más concretas de todo el proceso de control.
El diseño se realiza de forma descendente, en grandes bloques que se
van resolviendo de forma modular, siguiendo el lema popular de
"divide y vencerás".
La expansión de la macro-etapa es una parte del diagrama del
GRAFCET, con sus etapas, transiciones y normas de evolución, pero
que en un diseño descendiente se ha englobado en una macro-etapa.
Ejemplo
Representación de una macro-etapa.
El principal diagrama evoluciona a partir de la etapa 0 y la transición
A. Una vez esté activa la etapa 1, la transición B estará receptiva, y al
validarse el sistema pasará a la macro-etapa M2. La etapa E2 estará
entonces activa, y según el estado de la transición D, evolucionará
hacia la etapa 10 o la 12; y, al llegar a la etapa S2, volverá al principal
diagrama. La E2 es la etapa de entrada a la macro 2; la etapa S2 es la
de salida de la macro 2. Una vez esté activa la etapa S2, la evolución
del GRAFCET continuará cuando se cumpla la transición C y pasará a
estar activa la etapa 3.
2. Representación
Cuando se representa la evolución de un proceso GRAFCET, es
preciso tener en cuenta que el proceso a automatizar y el autómata
que se emplea como controlador forman un solo sistema; el vínculo o
conexión entre las actuaciones que hay que hacer sobre el proceso
(activar un motor o cerrar una válvula, por ejemplo) y el programa de
usuario, cargado en el autómata, es lo que se denomina etapa.
Se puede, por tanto, afirmar que la representación gráfica de la
evolución de un proceso con GRAFCET estará constituida por una
serie de etapas y cada una de ellas llevará asociada una o varias
acciones a realizar sobre el proceso.
En un GRAFCET, todos los estados estables del sistema que se está
automatizando tienen asociado un elemento de memoria llamado
etapa.
Para representar las etapas, se utiliza un cuadrado y un número o una
E con un número; en ambos casos, el número indica el orden que
ocupa la etapa dentro del GRAFCET, como se observa en la figura
siguiente.
Para poder distinguir el comienzo del GRAFCET, la primera etapa se
representa con un doble cuadrado.
Las etapas iniciales de un sistema se activan al iniciar el GRAFCET y
representan el comportamiento inicial del elemento frete a la parte
operativa, antes de que esta lo accione. Normalmente no tienen
asociada ninguna acción, salvo el poner todas las salidas en sus
estados iniciales.
Acciones asociadas a etapas
Por otra parte, las acciones que llevan asociadas las etapas se
representan con un rectángulo donde se muestra el tipo de acción a
realizar, debiéndose recordar que una etapa puede llevar asociadas
varias acciones. Esto se puede ver en la siguiente figura.
Acciones asociadas a etapas
Descripción alternativa
Se pueden contemplar las acciones definidas en las etapas 4 y 9 para
activar bomba, parar bomba y activar motor.
Si en un sistema en un momento concreto solo hay una sola etapa
activa, entonces solo estarán funcionando los elementos activados
por las acciones asociadas en esa etapa (a no ser que en otra etapa
se haya activado de forma biestable otra acción).
Se entiende por elemento o actuador monoestable aquel que
necesita de la activación continua de una salida del PLC para estar en
funcionamiento. Por otra parte, un elemento biestable es aquel que
solo necesita una activación de una salida del PLC (S-Set) para
comenzar a funcionar, estando este elemento en funcionamiento
hasta que otra salida del PLC le indique que se desactive (R-reset); tal
es el caso de los relés con enclavamiento.
La actuación a realizar en una o más de las acciones asociadas a una
etapa se puede encontrar condicionada a una función booleana
adicional. En el rectángulo donde se representa la acción asociada
hay una entrada para las condiciones.
En este caso, la bomba se activará mientras esté activa la etapa 4 y,
además, la alarma sonora se activará mientras esté activa la etapa 4
y se active el sensor de nivel máximo.
Etapa 4
Descripción alternativa
Como se puede observar, la etapa 4 va a accionar la bomba y, por
tanto, se activará la alarma.
Condición de transición
La principal característica de un proceso secuencial es que, cuando se
realiza una acción, siempre es consecuencia del resultado de otra
anterior. En GRAFCET, el proceso se descompone en una serie de
etapas que son activadas unas tras otras. Por lo tanto, deberá existir
una condición que se ha de cumplir para pasar de una a otra etapa;
en GRAFCET se le llama condición de transición y se representa según
la figura.
Condición de transición
Descripción alternativa
Se visualiza la representación de la figura de CT en el circuito, gracias
a la cual se va a pasar de una función a otra.
Son las condiciones lógicas de la evolución del sistema; una transición
marca el paso de una etapa a la otra. Es una barrera que separa dos
etapas y que se podrá superar si al, estar activa la etapa de entrada a
la transición, las condiciones de la misma se cumplen.
Se observa en la figura anterior que existen dos etapas y una
condición de transición entre ellas.
Ejemplo
Para que el proceso evolucione de la etapa 4 a la etapa 5, es preciso
que la etapa 4 se encuentre activa y que, además, cumpla la
activación de la condición CT; es entonces cuando se produce la
activación de la etapa 5. Solo puede existir una etapa activa; por
tanto, cuando se produce una activación de la etapa 5 se desactiva la
4.
En conclusión, la condición de transición CT se encuentra siempre
asociada a la etapa posterior; en el caso que procede, a la 5.
Por otro lado, la condición de transición puede ser una o varias
variables de las que intervienen en el proceso. Por ejemplo, una señal
de un final de carrera, la activación de un motor o un tiempo. Para la
condición de transición se emplea lógica positiva pudiendo tomar los
dos valores CT=1 y CT=0.
A continuación, se ven algunos ejemplos:
Condición activa: la activación de la etapa 5 se produce cuando el
final de carrera F1 se encuentra activado.
Condición inactiva: la activación de la etapa 5 se produce cuando el
final de carrera F1 se encuentra inactivo.
Condición por tiempo: la activación se produce cuando el
temporizador activado en la etapa 3 alcanza los 10 segundos.
Condición de varias variables: la activación se produce si los
finales de carrera F1 y F3 se encuentran activos y F2 está inactivo.
Condición incondicional: la activación de la etapa 5 se produce al
activarse la etapa 4.
Condición flanco descendente: la activación se produce cuando la
señal A1 pasa de 1 a 0.
Condición flanco ascendente: la activación se produce cuando la
señal A1 pasa de 0 a 1.
ESTRUCTURAS BÁSICAS DEL GRAFCET.
Elección condicional entre varias secuencias
Un GRAFCET será de secuencia única cuando en el diagrama haya
solamente una única rama; el conjunto de etapas se irán activando
una tras la otra, inmediatamente tras validarse las recepciones
asociadas a las transiciones.
Funcionamiento
Descripción alternativa
Se ejemplifican en la imagen el control de un depósito, sus distintas
etapas y la función de cada una de ellas, así como las transiciones.
Bifurcación en O. Subprocesos alternativos
No es extraño que en un proceso se llegue a un punto del ciclo en el
que se debe efectuar una elección entre varias secuencias posibles,
dependiendo de las variables que intervienen en el proceso.
No es necesario que los diferentes caminos tengan el mismo número
de etapas, pero sí resulta indispensable que las receptividades
asociadas a las transiciones sean excluyentes entre sí.
Convergencia y divergencia en O
Descripción alternativa
En el ejemplo de la imagen se muestra cómo las condiciones son
excluyentes para imposibilitar se pongan en marcha varias etapas a
la vez.
Ejemplo
En el presente ejemplo se observa cómo partiendo de la etapa E2
activada se pueden realizar solamente una de las tres secuencias: · Si
de las tres condiciones (A, B, C) solo está activa la A, es decir, se
cumple la transición A*/B*/C, se activará la etapa E3. · Si se cumple la
transición /A*B*/C, se activará la etapa E10. · Si se cumple la
transición /A*/B*C, se activará la etapa E16.
Funcionamiento
Descripción alternativa
Como aparece en la imagen esquemática, solo puede activarse una
de las tres secuencias, dependiendo de las condiciones.
A continuación, se muestran los segmentos de programa que
provocan que se evalúe a dicho programa como indica la presente
estructura de GRAFCET:
El final de la secuencia condicionada, como se ve en la figura, se
produce cuando una de las tres condiciones de transición asociadas a
la etapa E30 se cumple:
Si la etapa E5 se encuentra activa y se cumple la condición de
transición D, se activará la etapa E30 y se desactivará la E5.
Si la etapa E15 está activa y se da la condición de transición E,
se activará la etapa E30 y se desactivará la E15.
De encontrarse la etapa E23 activa y cumplirse la condición de
transición F, se activará la etapa E30 y se desactivará la E23.
Funcionamiento
Descripción alternativa
Como aparece en la imagen esquemática, solo puede activarse una
de las tres secuencias, dependiendo de las condiciones.
Esta estructura de GRAFCET se implementa en esquema de contactos
de la siguiente forma:
Secuencias simultáneas
Se puede dar el caso de que sea necesario el desarrollo de más de
una secuencia a la vez o trabajos paralelos, cuyas etapas no tengan
ninguna interrelación. Para poder representar este funcionamiento
simultáneo, se utilizan un par de trazos paralelos que indican el
principio y el final de esta secuencia.
Partiendo de una etapa, se inician varios caminos simultáneos; es
decir, el proceso evolucionará por distintos caminos a la vez,
ejecutando varias tareas simultáneamente.
Cuando se realizan dos secuencias simultáneas, es posible que el
tiempo que cada una de ellas tarde en realizarse sea distinto, en
función del número de tareas asociadas a las etapas, de cuándo se
activan las condiciones de transición, etcétera. Para terminar dos
secuencias simultáneas, es necesario que las etapas últimas de cada
una de ellas se encuentren activas; una o ambas pueden ser etapas
de espera para que la secuencia más rápida aguarde el final de la
más lenta. Como conclusión, para activar la etapa de espera se
requiere de la terminación de todas las acciones asociadas a la etapa
anterior a ella.
A continuación, se observa un posible GRAFCET con secuencias
simultáneas junto con su implementación en esquema de contactos.
Esquema de contactos
Esquema de contactos
Salto condicional a otra etapa
El salto condicional a otra etapa permite pasar de una etapa a otra sin
activar las etapas intermedias.
Salto condicional a otra etapa
Descripción alternativa
En esta representación se observan los saltos condicionales de una
etapa a otra, realizándose de forma que no se activen otras etapas a
la vez; bien de forma ascendente o bien descendente.
DIAGRAMAS DE FLUJO Y DIAGRAMAS GRAFCET.
Los organigramas y flujogramas consisten en un sistema de
representación basado en una serie de símbolos que, según un
convenio establecido, tienen un significado determinado:
Se establecen dos niveles:
Nivel 1:
o Secuencia de acciones a realizar.
o Representar el funcionamiento general del sistema.
Nivel 2:
o Especificar las acciones en forma de instrucción.
Niveles de diagramas GRAFCET
Periódicamente, en la realización de un automatismo existen distintas
fases que van desde el análisis económico de viabilidad, pasando por
su diseño, su implementación (por ejemplo, como programa
ejecutable en un PLC), hasta finalizar con una fase de
verificación offline mediante simulación y su puesta en marcha en el
proceso real, previamente superada la fase de pruebas. Está claro
que, en las fases previas a la implementación, los niveles de detalle
del automatismo que se requieren conocer en la toma de decisiones
son diferentes.
Se pueden distinguir los siguientes tipos de diagramas GRAFCET en
función del nivel de abstracción que se represente:
GRAFCET de nivel 1
Descripción global poco detallada del automatismo que permite entender en
muy poco tiempo su funcionamiento general. Es, por ejemplo, el nivel de detalle
que las entidades financieras quieren conocer para decidir la inversión. Los
GRAFCETs de este nivel emplean descripciones en lenguaje natural para
describir las acciones y transiciones y no contiene referencias a las tecnologías
que se van a utilizar.
GRAFCET de nivel 2
Descripción de la tecnología. El grado de detalles en las descripciones debe
ser lo bastante operativo como para que todas las tecnologías empleadas en el
automatismo queden representadas. Para este nivel y el anterior se suele
emplear la especificación GRAFCET de la norma IEC 60848.
SFC de nivel 3
Descripción de la realización del automatismo: nivel de implementación. Para
ello, resulta adecuada la norma IEC 61131-3, que especifica un lenguaje de
programación gráfico completo (diagrama SPC).
ETAPAS INICIALES, PREPOSICIONAMIENTO Y
ALARMAS.
El GRAFCET, una vez representado, permite la obtención de las
ecuaciones lógicas que controlan la activación de cada etapa y la
evolución del ciclo.
A nivel general, se considera que, si una etapa ET2 está activa y la
transición B es cierta, el sistema hará que se desactive la etapa ET2 y
la ET3 permanezca activa, hasta que en otro momento esté activa la
etapa ET4.
Una de las formas más utilizadas de obtener las ecuaciones se basa
en el uso de funciones biestables R-S; esto se debe a que las
funciones biestables son muy útiles para poder hacer más fácil la
implementación.
Implementación del GRAFCET
Descripción alternativa
Se representa la ecuación que permite controlar la activación de cada
etapa y la evolución del ciclo.
Para utilizar este sistema en el GRAFCET, se asocia a cada una de las
etapas una variable interna. La condición de transición, colocada
entre dos etapas, es la que se encarga de activar la etapa posterior y
desactivar la anterior; para ello, se utilizan las instrucciones SET y
RESET del autómata.
Las instrucciones SET y RESET se utilizan junto con las variables
internas asociadas a cada una de las etapas del GRAFCET.
Este tipo de instrucciones se utiliza de manera que sea la condición
de transición la que, al cumplirse, active la etapa posterior y
desactive la anterior.
En la figura se representa un ciclo de GRAFCET y los segmentos en
esquema de contactos que posibilitan la activación de la ET3 y la
desactivación de la ET2.
No puede haber dos etapas seguidas, ni tampoco dos transiciones
seguidas. Esto se puede ver con más claridad en los siguientes
ejemplos.
Ciclo del GRAFCET
Descripción alternativa
Se observan la representación de un ciclo de GRAFCET y los
segmentos que hacen que se active la etapa 3 y se desactive la 2
Entre las etapas 200 y 201 o entre las etapas 200 y 202, existen dos
condiciones para la transición (000 y 001 o 000 y 002). En este caso,
esto se puede resolver haciendo que la receptividad de la transición
se cumpla si es válida la función And (000 * 001) o la (000 * 002).
Ejemplo
Descripción alternativa
El ejemplo refleja que no pueden darse dos etapas a la vez ni dos
transiciones seguidas.
En el siguiente supuesto se parte de que, al superar la condición 003
de la transición, el motor debe activarse y también se ha de accionar
el ventilador. Es importante saber que se tienen que poner todas las
acciones asociadas en la misma etapa, puesto que, como bien se ha
explicado, no pueden haber dos etapas ni transiciones seguidas.
Descripción alternativa
No existe la posibilidad de que se den dos etapas a la vez ni dos tran
Pulso inicial
Al poner en marcha (modo RUN) o reinicializar el autómata, se deben
activar todas las etapas iniciales del o de los GRAFCETs de que está
compuesto el programa, y desactivar las otras etapas. El objeto de
esto es activar la etapa ET0.
Algunos autómatas incorporan funciones o marcas internas
especiales que facilitan esta función; en ciertos casos son marcas
específicas que solo se activan en el primer scan y, en otros, se trata
de módulos de organización en los cuales el autómata solo entra en el
primer scan.
A continuación, se muestran algunos ejemplos con distintas marcas
de autómatas:
FI – Festo.
777- Hitachi serie E.
967- Hitachi serie 967.
OB100 – Siemens.
SM01 - S7.
Si no se disponen de estas funciones, se puede crear un pulso inicial
PI con el siguiente circuito. Existen muchas más formas de crear este
pulso inicial, aunque la que se va a explicar a continuación es la más
eficaz y recomendada.
A la variable PI se le asigna internamente una marca del autómata,
como por ejemplo M300.1.
Todo sistema tiene que arrancar con un estado completamente
conocido para que el funcionamiento posterior sea correcto. Dicho
estado significa que las magnitudes físicas (eléctricas, mecánicas)
que intervienen en el proceso a automatizar y, por tanto, en el
programa, tienen un valor concreto conocido.
PUESTAS EN MARCHA Y PARADAS: GEMMA.
La agencia ADEPA desarrolló la guía GEMMA (Guide d’Etudes des
Modes de Marches et d’Arrêts), que traducido al castellano es "guía
de estudio de los modos de marcha y de paro". Se trata de una
representación organizada de todos los modos de "marcha y paradas"
en que se puede encontrar un proceso de producción automatizado, y
orienta sobre las transiciones que pueden darse de un estado a otro.
El carácter analítico del GRAFCET no permite exponer de manera
sencilla los modos de marcha y de parada de un automatismo, ya que
está concebido para el desarrollo "desde arriba hacia abajo" de las
diversas operaciones elementales que deban tener lugar en el
funcionamiento del automatismo. Es por esta razón que el check
list que supone la aplicación de la guía GEMMA es tan interesante
para el desarrollo de sistemas SCADA. Estos distintos modos de
funcionamiento van a revelar indirectamente los controles e
indicadores necesarios para el SCADA o pupitre de control.
La GEMMA se utiliza en la fase de diseño de cualquier automatismo y,
en un principio, debe plantearse partiendo de la concepción del
macro-funcionamiento del sistema, reservando el GRAFCET, para el
desarrollo de cada uno de los macro-estados resultantes de la
GEMMA.
Al igual que el GRAFCET, esta guía es un elemento de información
técnica muy útil y esencial, pues sirve para abordar las reparaciones
y modificaciones de las mismas.
MÉTODO GENERAL DE DISEÑO BASADO EN GEMMA.
Para desarrollar una automatización mediante la guía GEMMA:
Concepto número 1: un sistema se divide en dos partes, la
operativa (PO) y la de mando o de control (PM-PC).
Partes operativas: son aquellos órganos de campo, cilindros
neumáticos, motores, incluidos sus amplificadores de señal,
sean contactores, variadores de frecuencia en su parte de
potencia, sondas PT100 y sus amplificadores, finales de carrera,
detectores, etcétera.
Partes de mando: son PLC, procesadores dedicados, lógica
cableada, PCs en control distribuido, secuenciadores
neumáticos, etcétera.
La PM puede estar energizada o no energizada; es decir, el autómata
está con o sin alimentación. En la siguiente figura, la zona estrecha y
alargada situada a la izquierda corresponde al estado no alimentado
de la parte de mando. En esta zona aparece el rectángulo-estado PZ
que será descrito más adelante.
Concepto número 2: rectángulo-estado. Cada modo de marcha está
representado gráficamente por un rectángulo-estado. Por su parte,
cada rectángulo está situado en su zona conceptual del gráfico.
Concepto número 3: el criterio "producción". Un sistema industrial
automatizado está concebido fundamentalmente para la producción.
Se representa con un rectángulo zonal de doble trazo discontinuo
donde se ubicarán los rectángulos-estados que son productivos
directa o parcialmente.
Concepto número 4: tal y como se puede ver en la siguiente figura,
se definen tres familias de modo que se representan por tres zonas
de fondo sombreado.
F (procedimientos de funcionamiento).
A (procedimientos de parada Arrêt).
D (procedimientos de fallo o defecto).
En ellos, se ubican los rectángulos-estados propios de cada familia.
Nótese que "funcionamiento" no quiere decir "productivo"; es decir, el
que una máquina esté en marcha no significa que esté produciendo.
Los rectángulos-estados productivos de las familias o grupos están
reagrupados por la intersección del rectángulo-zonal "producción".
Algunos rectángulos-estados están parcialmente fuera de producción;
según el caso particular, se desplazará su posición para representar
la situación real.
En cada uno de estos grupos F, A o D, la guía determina los modos
necesarios y suficientes para una descripción completa del sistema,
así como todas las transiciones, indicadas por flechas, más comunes
entre rectángulos-estado. Cada fase es representada por un
rectángulo-estado que la designa con precisión, así como las
condiciones a las que es necesario llegar, derivadas de la naturaleza
específica del proceso.
Grupo F: procedimientos de funcionamiento o marcha
En este grupo se ubican todos los estados que son necesarios para la
producción; principalmente cuando conciernen a las fases de
preparación o al final del ciclo de producción, o bien cuando se trata
de fases de prueba o de regulación de los aparatos. Los
procedimientos que forman en grupo F se muestran a continuación:
F1. Producción normal
Estado en que la máquina produce normalmente; su rectángulo se
representa en trazo grueso. A menudo corresponde al GRAFCET "de
base".
F2. Marcha de preparación
Este estado es importante para aquellas máquinas que requieren de
una preparación previa a la producción normal F1. Estas pueden ser
precalentamientos de moldes, de útiles, llenado de la máquina de
varias estaciones o diversas puestas en marcha. Una vez en F1, el
sistema no podrá volver a F2 más que pasando previamente por el
estado A1 de parada en el estado inicial.
F3. Marcha de clausura o cierre
Este es el estado, similar a F2, necesario para ciertas máquinas que
deben ser vaciadas y/o limpiadas, etcétera, al final de la jornada o al
cambiar algunas características del producto.
F4. Marcha de verificación en desorden
Este estado permite verificar ciertas funciones, sin respetar el orden
del ciclo de máquina, la cual debe estar en control manual. Se suele
utilizar para verificar el correcto funcionamiento de los captadores y
accionadores de la máquina, o bien para posicionarla en un
determinado estado de producción.
F5. Marcha de verificación en orden
En este estado, el ciclo de producción puede ser realizado al ritmo
que se requiera para su verificación, la máquina podrá producir o no
producir. Se usa para funciones de mantenimiento y verificación.
F6. Marcha de test
En máquinas de control, de medida que llevan dispositivos que deben
ser ajustados o contrastados. Esto requerirá operaciones propias
enfocadas a facilitar estos ajustes o contrastes.
Grupo A: procedimientos de parada
El grupo A contiene cada uno de los modos de funcionamiento en los
que el sistema está parado: los que llevan a una parada del sistema y
los que permiten pasar al sistema de un estado de defecto a un
estado de parada para volver a poner en marcha el sistema. Estos
procesos se ejecutan normalmente a petición del operador o cuando
se arranca la máquina para efectuar un posicionamiento inicial, pero
nunca se deben a eventos generados por el mismo proceso.
A1. Parada en el estado inicial
Es el estado de "reposo" de la máquina, y corresponde a la situación
inicial del GRAFCET. Supone la representación, en forma de un
rectángulo doble, de la máquina en los planos, esquemas eléctricos o
neumáticos (representación descriptiva).
A2. Demanda de paro a fin de ciclo
Cuando la parada es solicitada, el autómata la memoriza y la
máquina continúa hasta fin de ciclo. Es un estado de tránsito hacia
A1.
A3. Demanda de paro en estado determinado
El sistema continúa hasta la parada en una situación distinta a la de
fin de ciclo. Es un estado de tránsito hacia A4. Normalmente se
obtiene por congelación de la parte operativa, siempre que la parada
sea segura para el producto.
A4. Paro en estado intermedio
El sistema automatizado está parado en una posición distinta a la de
referencia correspondiente al estado A1.
A5. Preparación para puesta en marcha después del fallo
Se procede a las operaciones de vaciado de restos, limpiezas y
recargas de productos o re-engrases, para su vuelta a la marcha
después del fallo. Una vez finalizado el proceso, el operador
seleccionará el modo de reinicio por parte del operador.
A6. Puesta de la Parte Operativa al estado inicial
El sistema estando en cualquier estado permite, manual o
automáticamente, llevar la PO a la situación inicial.
A7. Puesta de la Parte Operativa al estado determinado
Desde el estado A5, el operador decide situar el proceso en un estado
diferente al inicial, dado que la producción debe continuar a partir de
ese estado y no comenzar desde el principio. Corresponde a casos en
que ha existido previamente un defecto o una parada de emergencia
que ha dejado el sistema a medio producir.
Grupo D: procedimientos de fallo o defecto
Este grupo comprende los modos de intervención, manuales (por el
operador) o lógicos (por la aparición de una señal de seguridad), que
permitan remediar los fallos internos del sistema. Esta parada de
urgencia puede conducir a dos configuraciones, según si el estado en
el cual se encuentre el sistema está perdido o no.
D1. Parada de emergencia
En este estado, se debe llevar la máquina a una situación segura;
normalmente implica la parada de los accionadores.
Se deberá procurar que el autómata memorice el estado en que se
encontraba antes de ejecutar la parada de emergencia para que, una
vez superado el defecto, se pueda rearmar en la situación correcta.
D2. Diagnóstico y/o tratamiento de fallo
Este estado permite examinar, monitorizar el fallo y/o prever los
procedimientos manuales o automáticos para permitir el arranque.
El autómata puede guiar al operador para indicarle aproximadamente
dónde se encuentra el defecto, pero la reparación del mismo tendrá
que ser realizada por el operador o por el personal de mantenimiento.
D3. Producción "a pesar de todo"
También llamada producción degradada, forzada o a pesar del fallo. A
veces es necesario continuar la producción a pesar del fallo. Será el
momento de prever anulaciones parciales de la máquina que sean
imprescindibles, a pesar del descenso de la productividad.
PAROS DE EMERGENCIA.
Al abordar la selección se deben tener en cuenta, en todo momento,
dos aspectos simultáneos: por un lado, se han de considerar todos los
rectángulos estados propuestos por GEMMA y, en segundo lugar, hay
que ir buscando las evoluciones de un estado a otro. A continuación
se explican ambos aspectos.
A. Se consideran todos los rectángulos-estados propuestos por la
GEMMA
La guía constituye una exploración de los diferentes tipos de modos
de marcha y de parada necesarios en la automatización industrial
corriente. En cada rectángulo-estado se contempla el funcionamiento
del sistema automatizado, frente a la ocurrencia de determinados
eventos específicos que lo obligan a un funcionamiento determinado.
Si el modo propuesto es acatado, su necesidad y variantes serán
precisadas, típicamente a mano, sobre el esquema impreso e inscrito
en la zona habilitada en el rectángulo-estado.
Si, por el contrario, es rechazado, no es necesario para la máquina;
será tachado con una X significando de forma clara que no será
acatado, tal y como se observa en la siguiente imagen.
Rectángulos-estados propuestos por la GEMMA.
Cuando se termine de aplicar la GEMMA al sistema, con objeto de
clarificar, conviene eliminar todos los restantes estados y líneas de
transición innecesarias.
B. Búsqueda de evoluciones de un estado a otro
Consiste en estudiar entre qué estados será posible la evolución. En
el gráfico de la guía GEMMA, para no complicar el gráfico, solo se
presentan los caminos más usuales (en línea discontinua) y será tarea
del diseñador añadir los caminos necesarios para cada aplicación. Dos
rectángulos-estado son esenciales (A1 y F1) ya que se encuentran en
todas las máquinas. Habiendo tratado cada uno de los estados
esenciales, es interesante buscar evoluciones a otros estados. Lo
práctico es ir haciendo bucles entre los estados A1 y F1 por vías
diferentes, tal y como se muestra en la siguiente figura.
Una vez seleccionados los modos de marcha y paro, se precisan las
informaciones necesarias para pasar de un estado a otro.
Es posible pasar de un estado a otro de dos maneras:
Con una condición de evolución
Esta será anotada sobre la línea de enlace orientada entre
rectángulos-estado, con una pequeña línea perpendicular cortante, a
modo de transición. Puede estar referida a una acción de pulsador del
pupitre de mando o de un dispositivo de detección situado en la
máquina.
Según sean las condiciones del operador, se puede optar por
pulsadores o selectores de 2 o 3 posiciones, biestables o
monoestables, etcétera.
Paso de un estado a otro con condición específica.
Las condiciones provenientes de la máquina corresponderán a
captadores de defecto, detectores de presencia de pieza.
Sin condición específica
En ciertas evoluciones, la escritura de una condición no aporta
ninguna información útil. En este caso, puede no ponerse indicación o
es posible utilizar la condición de que la acción anterior se complete.
Paso de un estado a otro sin condición específica.
Con todos estos apartados definidos, es posible pasar a dar una
descripción precisa del conjunto de funcionamiento de la parte de
mando de la automatización de la máquina a través de su pupitre de
control o pantalla SCADA, que por otro lado es de obligado
cumplimiento CE.
La programación diseñada en GRAFCET ha de tener en cuenta
situaciones emergencias, de forma que se garantice el buen
funcionamiento del sistema. El modo de tratar las alarmas producidas
en el sistema frente a situaciones de emergencia puede realizarse de
las siguientes formas:
Modificando el GRAFCET de funcionamiento normal añadiéndole
una secuencia de emergencia.
Sin modificar el gráfico de funcionamiento normal,
programación de la emergencia en el tratamiento preliminar: se
programan los fallos, las variables de memoria y del sistema
que van a influir en la evolución (forzado) del GRAFCET de
producción normal.
EJEMPLO DE DISEÑO.
Método por descomposición de tareas
En el presente apartado se visualiza un ejemplo en el que que se
parte el diseño de una programación en GRAFCET inicialmente en
tareas agregadas principales que se quieren llevar a cabo; y,
posteriormente, se analizan y descomponen estas tareas en otras
más simples y fáciles de abordar.
A menudo, varios rectángulos-estado exigen un proceso complejo
similar o mayor que el de producción normal (F1). Esto lleva a un
estudio separado de secuencias por cada modo de marcha.
El GRAFCET de cada uno de los rectángulos-estados permite
representar fácilmente una estructuración por tareas. La metodología
de estructuración por tareas plantea la integración de cada modo en
un "grafo contenedor" con la siguiente secuencia, que se muestra en
la figura de debajo:
Una etapa inicial que representa el reposo del modo integrado.
Una transición inicial establece las condiciones de lanzamiento
de la tarea.
A continuación, una etapa de entrada única a la secuencia
integrada.
La secuencia integrada para este modo.
Una única transición de FIN, finalización de la secuencia
integrada.
Una etapa única de salida, útil para sincronización entre tareas,
a modo de "ejecutado".
Condición de reenvío a la etapa inicial, tras confirmación
sincronizada.
Una vez que cada rectángulo-estado habita integrado en su GRAFCET
sobre la forma de tarea autónoma (de preparación, de finalización, de
test, etcétera), se pasa a contemplar atentamente las condiciones de
coordinación entre tareas.
Para ello, se puede recurrir a dos formas esenciales:
Coordinación vertical o jerarquizada.
Coordinación horizontal.
Las ventajas frente al enriquecimiento se recogen a continuación:
Facilita la automatización de cada tarea.
Simplifica los GRAFCETs a realizar al dividir el proceso.
Facilita el mantenimiento y las posibles modificaciones del
programa.
Permite testar los subsistemas de uno en uno y a medida.
Hace posible el adicionar o eliminar tareas fácilmente.
Por otro lado, los inconvenientes frente al enriquecimiento son los
siguientes:
Puede resultar compleja la coordinación entre los GRAFCET.
Aumenta el número de estados en total.
Resulta difícilmente aplicable a sistemas cableados debido a
que aumenta la complejidad.
PROGRAMACIÓN DEL AUTÓMATA:
La competición económica que soportan los productos en la
actualidad impone a la industria la necesidad de producir en calidad y
en cantidad para responder a la demanda en un entorno muy
competitivo. En términos de los objetivos, se trata de:
Producir con una calidad constante.
Manufacturar las cantidades adecuadas a cada momento.
Incrementar la productividad.
Proporcionar flexibilidad en el producto.
Disminuir los costes.
Mantener el mercado basándose en el crecimiento tecnológico.
Mejorar las condiciones de trabajo, liberando física y
mentalmente al ser humano de dicha labor.
Posibilitar el reciclaje del personal hacia tareas menos
mecánicas y más creativas.
Dicho de otra manera, es importante tener un mercado, pero también
lo es poder seguir su evolución. Es así como surge, por tanto, la
necesidad de automatizar.
Importante
Se puede entender la automatización como una combinación de las
tecnologías mecánica, eléctrica y electrónica a través de la cual se
controlan los sistemas de producción de una forma lo más autónoma
posible, es decir, con la mínima intervención de operarios.
INTRODUCCIÓN.
En relación con el control de los procesos de fabricación, su
automatización se puede clasificar en cuatro grandes grupos: fija,
programable, flexible e integrada.
1. Automatización fija
Se da en sistemas de fabricación en los que la secuencia de las operaciones
se encuentra fijada por la configuración de los equipos que los forman. Se
caracteriza porque está constituida por una secuencia sencilla de operaciones,
necesita una inversión elevada en equipos especializados, posee elevados
ritmos de producción y, en general, es muy inflexible para adaptarse a los
cambios de los productos.
2. Automatización programable
Es un sistema de fabricación en el que los equipos de producción están
diseñados para cambiar la secuencia de operaciones a fin de adaptarse a la
fabricación de productos distintos. Se inició con las máquinas y herramientas
con control numérico y los robots industriales. Se caracteriza porque requiere
cambiar el programa y/o, aunque en menor medida, la disposición física de los
elementos para cada lote de producción.
3. Automatización flexible
Es una extensión de la automatización programable que proporciona como
resultado sistemas de fabricación en los que no solamente se pueden cambiar
los programas sino que, además, se puede cambiar la relación entre los
diferentes elementos que los componen.
4. Automatización integrada
Consiste en un sistema de fabricación que integra el diseño asistido por
computador (CAD), la ingeniería o simulación asistida por computador (CAE) y
la fabricación asistida por computador con la verificación, la comercialización y
la distribución. La automatización integrada suele recibir el nombre de CIM
(Computer Integrated Manufacturing).
Atendiendo al autómata programable industrial, se entiende como un
equipo electrónico de control con una electrónica interna (hardware)
independiente del proceso a controlar, que se adapta a dicho proceso
mediante un programa específico que contiene la secuencia de
operaciones a realizar.
Por este motivo, requiere de un proceso de programación, para lo que
se necesitan conocer, entre otros, los siguientes factores:
Los sistemas de representación.
Las variables.
Los lenguajes de programación.
REPRESENTACIÓN DE SISTEMAS DE CONTROL.
Para realizar la representación de los sistemas de control, puede
utilizarse el lenguaje vulgar (descripción literal) para describir lo que
el automatismo hace en todo momento.
Combinados entre sí, los símbolos forman un modelo intermedio del
sistema imprescindible para analizar de forma exhaustiva el
comportamiento y sintetizar las soluciones. Según los símbolos
utilizados, la representación puede ser:
Proporcional
Descripciones literarles.
Algebraica
Funciones booleanas y aritméticas.
Gráfica
Esquemas de relés, diagramas lógicos, ordinogramas o técnicas GRAFCET.
DESCRIPCIONES LITERALES.
La descripción del proceso y su control pueden hacerse con la
enumeración literal de las acciones a desarrollar por el mismo,
expuestas secuencialmente y con indicación de las condiciones de
habilitación o validación en cada caso. La ventaja más destacable de
estas descripciones, que a la vez es su mayor inconveniente, es la
ausencia de rigor en la exposición; cualquier persona tiene la
capacidad de explicar la que debe llevar a cabo un proceso que
conozca.
Como otras ventajas principales, destacan la facilidad de
entendimiento por las personas y el que se suele utilizar en fases
iniciales de creación de un programa en las que el entendimiento por
parte de los creadores y las modificaciones son continuas.
Como inconveniente, se contempla también que este lenguaje no es
entendible directamente por el autómata y tendrá que ser traducido a
otro tipo.
Como conclusión, añadir que este tipo de representación o bien se
hace de forma exhaustiva, o no será totalmente unívoca con el
proceso que se quiere controlar.
IDENTIFICACIÓN DE VARIABLES Y ASIGNACIÓN DE
DIRECCIONES.
La información sobre si un pulsador está activado o desactivado es
procesada por el autómata como un dato, que será usado para
realizar unas operaciones u otras, según la programación dispuesta
para esa entrada en la que está conectado, o no, el pulsador.
Un dato ocupa una posición de memoria; esta puede usar 8
posiciones que, siendo independientes, comparten la misma
dirección. Se habla solo de ceros y unos (0 y 1).
Importante
Cada cero o uno (0 o 1) se llama bit; ocho bits(b) forman un byte (B).
El uso del byte es lo que habitualmente determina la capacidad de
memoria de un dispositivo; por tanto, si se dice que un aparato tiene
una memoria de 4 KB, se estará afirmando que puede almacenar 4 ×
1024 = 4096 bytes; ya que 1 KB equivale a 1024 bytes.
En autómatas programables se habla de palabras (words) cuando la
información o los datos utilizan dos bytes de memoria; y de palabras
dobles (double words) cuando la información usa cuatro bytes.
Además de lo anterior, existen otros formatos de mayor calibre, como
el REAL, de 32 bits, que permite operaciones más precisas.
Equivalencias entre bit, byte y palabras.
Ejemplo
Aun así, el usuario en las aplicaciones puede operar con la unidad
más pequeña, el bit. Se presenta un ejemplo de ocupación de
memoria: si un pulsador es presionado y da señal eléctrica a una
entrada del autómata, esta orden estará ocupando un bit, que
indicará ocupado o no ocupado (si se le aplica corriente o no). Con lo
cual la programación podría ser la siguiente: si el bit 6 tiene valor de
1, entonces que se active la salida 1.
Orden de trabajo producida por un solo bit
Este ejemplo, se muestra cómo con un solo bit, se puede realizar una
orden de trabajo. Esto no es siempre así, ya que temporizadores,
relojes, contadores, y contadores rápidos, necesitan ocupar porciones
de memoria más grandes (palabras, 16 bit; dobles palabras, 32 bits).
Cuando ha de buscarse un dato de la memoria, o guardarlo en ella, se
tiene que saber en qué lugar está. Para ello, cada ubicación física
tiene una dirección o registro concreto. Así pues, para programar
señales procedentes de sensores de entrada o actuadores, se les
tiene que asignar una dirección de memoria que ocupará dentro del
autómata. Esta dirección puede ser fija o variable.
Direccionamiento fijo
Es cuando la dirección de una entrada, salida o incluso una marca interna es
siempre la misma; esto ocurre en pequeños controladores programables.
Direccionamiento variable
Es cuando la dirección de una entrada, salida o marca interna se puede adjudicar a
voluntad, dentro de los límites del programa.
En la siguiente figura aparece un módulo de entradas digitales de un
microcontrolador programable. Nótese que la entrada I1 es
inequívoca, es decir, siempre será I1 tanto para el cableado, como
para la programación. Ocurre lo mismo para las salidas. También se
encuentra un módulo de entradas, con bornes sin determinar, y en el
programa se le ha asignado a una la dirección de entradas 122.1.
Módulos de entradas digitales de un microcontrolador programable
Variables
En un autómata programable, y en programación en general, una
variable es un lugar donde se guardan cierto tipo de datos. Tal y
como se ha comentado, en autómatas programables los datos se
guardan en formato tipo bit, byte, palabra o doble palabra
preferentemente, aunque este concepto depende de la tecnología de
la firma comercial. Es fundamental comprender que una variable de
cierto tipo se debe guardar solo en el lugar destinado a ello; por
ejemplo, un dato de "palabra" (16 bits) no se puede ubicar en una
variable de bit. La llamada a una variable es inequívoca, de tal forma
que no existirán dos variables con el mismo nombre.
La tabla que se muestra a continuación es meramente ilustrativa, ya
que no existe un modelo común de área de datos para los diferentes
autómatas, inclusive dentro de una misma firma comercial.
Identificad
Área de datos
or
Entradas I
digitales
Entradas AI
analógicas
Salidas digitales Q
Salidas AQ
analógicas
Marcas M
Contadores C
Contadores HC
rápidos
Temporizadores T
Relojes T
A continuación, se exponen algunos ejemplos de variables;
teniéndose en cuenta que no son equivalentes a todos los autómatas
programables, aunque sí existen en todos:
Variables de entrada digitales
Las variables digitales que relaciona el autómata con los dispositivos
de entrada se identifican como I de input; por ejemplo: I1, entrada 1;
I4 entrada 4; I0.0.1 entrada del módulo 0, del bastidor 0, entrada 1,
etcétera. Estas variables operan con datos tipo bit (0 o 1), todo o
nada, activado o no activado. También se llaman datos booleanos.
Variables de entrada analógicas
Las variables analógicas necesitan más capacidad de almacenaje, ya
que los valores equivalentes a la magnitud medida pueden ser
infinitos. Por ejemplo, la variable AI1 (Analogic Input 1), utilizará un
almacén de datos de 10 bits. Otro ejemplo es un anemómetro que
mida la velocidad del viento a través de la variable AI2 de 16 bits.
Importante
El autómata programable dispondrá de las herramientas necesarias
para poder convertir, transferir y, en definitiva, operar con los
diferentes tipos de datos.
Variables de salida digitales
Las variables de salida son de estado 1/0, variables booleanas. Las
variables Q (output) se identifican con los dispositivos a los que el
autómata alimentará; por tanto, si se lee Q2, se entiende que es la
segunda variable de salida, y lo que haya conectado a ese conector
será excitado.
Variables de salida analógicas
Como ya ocurre con las entradas analógicas, el valor de salida se
mueve en un margen muy amplio de datos; desde 10 a 32 bits,
preferentemente. Por ejemplo, una salida analógica regulará la
intensidad del alumbrado a través de la salida AQ4 de 12 bits.
Variables de marcas (memorias internas)
Prácticamente todos los autómatas programables disponen de unas
variables internas auxiliares, que sirven de apoyo en los programas.
Las variables M de memoria (o marca), hacen referencia a salidas
internas dentro del PLC; son salidas que no tienen una actuación
visible directamente, y actúan como relés dentro del propio
dispositivo. Además, las variables M pueden ocupar direcciones de
memoria mayores, como MB (marca de byte de 8 bits) o MW (marca
de palabra de 16 bits), entre otros.
Variables específicas
Son las que operan con datos internos del PLC; como temporizadores,
contadores, contadores rápidos, etcétera.
Ejemplo de distintas variables
LENGUAJES DE PROGRAMACIÓN.
En la programación de los mecanismos autómatas se pueden dar los
siguientes tipos de lenguaje:
Lenguaje de lista de instrucciones.
Lenguaje de planos de funciones.
Lenguaje de plano de contacto.
Lenguaje GRAFCET.
LENGUAJES BOOLEANOS Y LISTA DE INSTRUCCIONES.
A. Lenguajes booleanos
Utilizando expresiones booleanas se van a definir las funciones
booleanas, que son exactamente iguales a las funciones
matemáticas habituales pero con la particularidad de que sus
variables son booleanas y que los valores que devuelve la función
también son booleanos; es decir, una función basada en el álgebra de
Boole solo puede tomar los valores 0 o 1.
A continuación, se presenta un ejemplo en el que se utiliza una
función matemática muy conocida:
Se trata de una función "real", que tiene una variable
redundantemente real (x). Para cada valor de "x", se obtiene un valor
de la función; por ejemplo, se puede calcular lo siguiente:
ƒ (0) = 1.
ƒ (1) = 2.
ƒ (2) = 5.
ƒ (3) = 10.
Como es una función real, se obtienen como valores de la función
"números reales". También se pueden definir funciones reales de 2 o
más variables.
Seguidamente, se van a definir funciones propiamente booleanas.
Para ello, hay que tener en mente que se trabajará con variables
booleanas y que, por tanto, se van a utilizar las operaciones "+" y "•"
del álgebra de Boole, que nada tienen que ver con las operaciones
suma y producto habituales.
Ejemplo
Sea la siguiente función booleana en una variable:
El valor devuelto por la función es el negado del que se le pasa por la
variable. Como la variable A es booleana, solo puede tomar los
valores 0 y 1. Los que la función F toma son:
Se define en este punto también una función un poco más compleja,
usando dos variables booleanas, A y B:
¿Qué ocurre cuando F vale (0,0)? Solo hay que sustituir en la función
los valores de A y B por "0", obteniéndose:
Se calculará el valor de F para el resto de valores de entrada A y B:
Fijándose en esta función tan sencilla, es posible apreciar que:
1. Puesto que las variables de entrada A y B solo pueden tomar los
valores "0" y "1", hay cuatro casos distintos.
2. Antes de calcular los valores que toma la función, según lo que A y
B valgan respectivamente, se pueden aplicar algunas propiedades
para conseguir una función más simplificada.
Además, las funciones booleanas pueden ser de muchas más
variables, como se comprueba en los siguientes ejemplos:
Por cuestiones de comodidad, muchas veces no se escriben entre
paréntesis las variables de la función; por lo que, por ejemplo, se
puede definir una función de tres variables de la siguiente manera:
B. Listas de instrucciones
Este lenguaje utiliza un estilo muy similar al empleado por los
lenguajes de ensamblador. Se suele utilizar para pequeñas
aplicaciones, así como para optimizar partes de una aplicación.
Algunas de las limitaciones que presenta esta forma de programar
son:
Cuando se tienen muchas instrucciones, es difícil entender
rápidamente de lo que trata el programa.
Para un programa que consta de una gran cantidad de
instrucciones, es muy laborioso introducirlas.
Se emplea mayor tiempo en el diagnóstico, en la detección de
fallos, etcétera.
No obstante, una de sus ventajas es que los programadores
diseñados para este propósito son poco costosos; además, no
requieren de software especial como en el caso de los PLCs.
Llegados a esta parte, se reconocerá la estructura de una instrucción
de mando con ejemplos para algunas de las marcas de PLC y, a
continuación, las operaciones binarias utilizando esta forma de
representación.
Instrucción de mando
Una instrucción de mando es la parte más pequeña de un
programa, que representa, para el procesador, una orden de trabajo.
Para que la instrucción de mando cumpla su función es necesario
especificar dos partes: la operacional y la parte del operando.
La parte operacional representa lo que hay que hacer, es decir, la
operación a ejecutar. Como ejemplos se pueden usar las enumeradas
a continuación:
Combinación binaria Y (And).
Combinación binaria O (Or).
Combinación binaria O-exclusiva (X0).
Operación de carga L (Load).
Operación de transferencia T (Transference).
Salto a una instrucción determinada JMPi (Jump).
Asignación a un resultado (=).
La parte del operando está compuesto por la dirección de operando y
su tipo, que puede ser cualquiera entre las siguientes opciones, entre
otras:
Entrada.
Salida.
Memoria interna.
Dato.
Temporizador.
Contador, etcétera.
Cabe recordar que la dirección del operando se define según el tipo
de direccionamiento que se emplee, variable o fijo, y del número del
terminal de los módulos de E/S.
A continuación, se detalla la estructura de instrucción de mando de
dos marcas de PLCs, brindándose algunos ejemplos para una mejor
comprensión.
Elementos
Ejemplo con PLC Siemens (Siemens S5)
ALEMÁ INGLÉ
SIGNIFICADO
N S
U E 5.3 A I 5.3 Lectura del estado de señal del canal 3, de un
módulo de entradas digitales de 8 canales,
enchufado en el puerto 5.
= = Salida del estado de señal por el canal 6, de un
A I10.6 Q 10.6 módulo de salida digital de 32 canales enchufado
en el puesto 2, dirección byte 10.
ON ON Lectura del estado negado de la marca, con
M 3.7 F 3.7 dirección 3 y dirección bit 7.
L EB 7 L IB 7 Lectura de los estados de señal de todos los
canales, de un módulo digital de entrada de 8
canales enchufado en el puesto 7.
Ejemplo con PLC Telemecanique
INSTRUCCION
SIGNIFICADO
ES
A I0.04 Lectura del estado de señal del canal 4, del módulo
0 (módulo básico).
= 02.07 Salida del estado de señal por el canal 7, del
módulo 2 (módulo de segunda extensión).
L T5 Lectura del temporizador número 5.
La lista de instrucciones
En el presente apartado se van a ver distintas órdenes en lenguaje de
instrucciones con su correspondiente equivalencia en lenguaje de
contactos. Los ejemplos que se ilustran a continuación se han
realizado mediante el lenguaje de instrucciones del autómata S-200
de Siemens.
Ejemplo de función
Función "temporizador con retardo a la conexión"
Función "contador ascendente"
Función "detección de flanco ascendente"
Función "comparación de enteros"
DIAGRAMAS DE CONTACTOS.
La lógica de escalera o Ladder Diagram (LD) es el lenguaje más
usado para la programación de PLCs. Fue el primero con el que se
comenzó a programar, de ahí que presente semejanzas con los
diagramas eléctricos de escalera empleados por los técnicos
previamente a la aparición del autómata.
Este lenguaje está indicado especialmente para facilitar el cambio de
un sistema de control realizado con relés por un PLC. Otra ventaja
que presenta es que reduce el tiempo de formación de los
programadores.
El lenguaje en plano de contactos es aquel en el cual las
operaciones lógicas que rigen un automatismo se resuelven mediante
contactos normal abierto y normal cerrado, además de otros bloques
especiales.
El diagrama de contactos es un lenguaje que usa un juego
estandarizado de símbolos de programación. La gran ventaja de este
lenguaje estriba en que los símbolos básicos están normalizados
según las normas NEMA y son empleados por todos los fabricantes.
En el estándar IEC, el número de símbolos ha sido reducido.
El esquema se realiza entre dos barras o líneas de alimentación
dispuestas verticalmente a ambos lados del diagrama, entre las
cuales se dibujan los diferentes elementos del lenguaje.
Representación en el diagrama de la entrada y de la salida
A la derecha del esquema se ubican los elementos de salida y, a la
izquierda del mismo, los de entrada.
El diagrama puede tener varias ramas o escalones, también llamadas
líneas de programa (RUNG) o segmentos.
Se muestran en el diagrama las líneas de programa
Cada rama permite ubicar varios elementos de entrada, pero solo uno
de salida.
Se puede observar la ubicación de los elementos de entrada y de salida en el diagrama
La programación en cada bloque de contactos se realiza
ordenadamente de izquierda a derecha.
El sentido de programación de los bloques de contactos de un
programa o líneas de programa se ejecuta en sentido ascendente; o
sea, de arriba a abajo.
Elementos del lenguaje
Se clasifican en elementos de entrada y de salida. Su estado es
evaluado por el PLC para determinar un valor lógico, que recibe
diferentes denominaciones dependiendo del contexto de trabajo. A
continuación, se presenta una tabla donde se relacionan las distintas
denominaciones que se pueden encontrar (activo e inactivo).
Contexto Activo Inactivo
Informática True / False /
Verdadero Falso
Álgebra de V/1 F/0
Boole
Electrónica High / H Low / L
digital
PLANO DE FUNCIONES.
Puertas lógicas o funciones fundamentales
Las funciones básicas son elementos lógicos sencillos del álgebra de
Boole. Básicamente son:
La suma lógica o función OR (0).
El producto lógico o función AND (Y).
La negación o función NOT (N0).
Plano de funciones
El lenguaje de programación en plano de funciones se refiere a la
implementación de los automatismos mediante el acoplamiento de
estas puertas lógicas, las cuales se explican a continuación con más
detenimiento.
Cabe mencionar que se entiende como tabla de la verdad a la
representación gráfica de todas las posibles combinaciones de las
variables de entrada con el valor de la función de salida.
Puerta OR (suma lógica): F = A + B
La salida de OR ocupa el estado 1 cuando por lo menos una entrada
tiene estado 1, es decir, está cerrada.
Plano de la función puerta OR
Puerta AND (producto lógico): F = A · B
La salida de AND solo ocupa el estado 1 cuando todas las entradas
tienen estado 1, es decir, están cerradas.
Plano de la función puerta AND
Función NOT (inversión lógica): F = A'
La salida ocupa el estado 1 cuando la entrada tiene estado 0. El
bloque NOT invierte el estado en la entrada.
Plano de la función puerta NOT
Puerta NOR (NO más OR): F = (A + B)'
La salida de NOR solo ocupa el estado 1 cuando todas las entradas
tienen estado 0, es decir, están desactivadas. Tan pronto como se
active alguna de las entradas (estado 1), se repone a 0 la salida de
NOR.
Plano de la función puerta NOR
Anterior
Puerta NAND (NO más AND): F = (A · B)'
Produce una salida falsa solamente si todas sus entradas son
verdaderas; por tanto, su salida es inversa a la de la puerta AND.
Plano de la función puerta NAND
O-Exclusive (XOR): F = A' · B + A · B'
La salida de XOR ocupa el estado 1 cuando las entradas tienen
estados diferentes. Da 1 a la salida si solo una de las entradas está
activada.
Plano de la función XOR
NOR-Exclusive (XNOR): F = A · B + A' · B'
Da 1 a la salida cuando sus entradas son iguales.
Plano de la función XNOR
En la figura siguiente, se puede observar el desarrollo de una función
viendo la equivalencia entre funciones según las nomenclaturas
americana y europea.
Desarrollo de una función
LENGUAJES DE ALTO NIVEL.
En los lenguajes de alto nivel, las instrucciones son líneas de texto
que utilizan palabras o símbolos reservados: SET, AND, FOR, etcétera.
Las operaciones se definen por los símbolos matemáticos habituales:
+, *, <, >, -, /, etcétera.
También se dispone de funciones trigonométricas, logarítmicas y de
manipulación de variables complejas: Sen, Cos, pi, real, img, etcétera.
Sin embargo, lo que realmente distingue estos lenguajes avanzados
de las listas de instrucciones (IL o AWL) son las tres características
siguientes:
Se trata de lenguajes estructurados, donde es posible la
programación por bloques con definición de variables globales o
locales.
Incluyen estructuras de cálculo repetitivo y condicional, tales
como:
o FOR... TO
o REPEAT... UNTIL X
o WHILE X...
o IF... THEN... ELSE
Disponen de instrucciones de manipulación de cadenas de
caracteres; muy útiles en aplicaciones de gestión, estadística,
etcétera.
El BASIC se conoce como el lenguaje de alto nivel más extendido.
También se pueden encontrar intérpretes o compiladores de C,
Pascal, Fortran, etcétera; lo que permite resolver tareas de cálculo
científico en alta resolución, clasificaciones de datos, estadísticas,
etcétera, con total facilidad; y con acceso además a módulos y
subrutinas específicos ya escritos en estos lenguajes y de uso general
en aplicaciones informáticas.
Dado lo específico de su aplicación, un programa escrito en alto nivel
precisa para su edición de una unidad de programación avanzada o
de un software de desarrollo de programas que corra sobre una
computadora. De forma adicional, es habitual que el empleo de estos
lenguajes estructurados obligue además a utilizar no solamente una
unidad de programación tipo PC, sino incluso una CPU especial en el
autómata (co-procesadora), capaz de interpretar y ejecutar las
nuevas instrucciones. En cualquier caso, los lenguajes de alto nivel
son posibilidades adicionales al alcance del programador, que puede
utilizar solamente las formas básicas de contactos, bloques o lista de
instrucciones para escribir sus aplicaciones.
Otra de las ventajas del programa en alto nivel es que a él se puede
transcribir el diagrama de flujos, que constituye la primera
aproximación a la representación del sistema de control.
Texto estructurado
El texto estructurado (Structured Text ST) es un lenguaje literal de alto nivel
que nace de adaptar el lenguaje Pascal empleado en la programación de PCs
a las necesidades propias del control de procesos. Es un lenguaje muy potente
fundamentalmente indicado para la representación de algoritmos de control
complejos en los que sea preciso emplear bucles, condicionales, etcétera.
PROGRAMACIÓN DE BLOQUES FUNCIONALES:
Los lenguajes de programación de PLCs han sufrido una evolución
paralela a la de los propios equipos a lo largo del tiempo. Cuando se
habla de los lenguajes de programación, se hace referencia a
distintas formas de poder escribir el programa usuario. Los diferentes
tipos de software actuales permiten traducir el programa usuario de
un lenguaje a otro, pudiéndose así escribir el programa en el lenguaje
que más conveniente sea en ese momento.
La elección del lenguaje de programación dependerá de los factores
representados en la gráfica adjunta a continuación.
INTRODUCCIÓN.
El lenguaje de los diagramas de bloques funcionales (Function
Block Diagram-FBD o FUP) es un lenguaje gráfico que surge como una
evolución de los diagramas utilizados por los ingenieros electrónicos
para representar los circuitos lógicos. En estos, las puertas lógicas
son representadas mediante símbolos estandarizados. Un circuito
electrónico puede ser encapsulado en un integrado, el cual es
susceptible de ser empleado en un nuevo diagrama mediante el
símbolo adecuado.
Representación del lenguaje de los diagramas de bloques funcionales
El lenguaje FBD sigue las mismas pautas:
Cada operación es representada por un símbolo normalizado.
Un conjunto de operaciones que llevan a cabo una función
determinada se pueden agrupar formando una subrutina o
bloque, el cual pasa a tener un símbolo asociado que puede ser
empleado en otro segmento de programa tantas veces como se
quiera.
Solo es necesario seguir unas pautas sintácticas y semánticas a
la hora de construir los diagramas.
BLOQUES SECUENCIALES BÁSICOS.
El lenguaje de los diagramas funcionales
secuenciales (Sequential Function Chart - SFC) surge como una
evolución del lenguaje de modelado de sistemas secuenciales
GRAFCET (estándar internacional IEC 848). Este último no es un
lenguaje de programación, mientras que SFC sí lo es con todas las
connotaciones que esto supone. SFC proporciona al ingeniero un
lenguaje muy potente para la representación de automatismos
secuenciales.
SFC surge del esfuerzo del organismo internacional denominado
Comisión Electrotécnica Internacional (International Electrotechnical
Commision - IEC) cuya finalidad era la publicación de un estándar que
normalizase los PLCs desde el punto de vista hardware y software.
Este estándar se divide en varias partes y es la tercera (IEC 61131-3)
la que hace alusión a los lenguajes de programación. Esta norma
recogió los cuatro lenguajes clásicos más utilizados en la
programación de PLCs y les añadió una nueva versión de GRAFCET
que le daba carácter de lenguaje de programación, permitiendo
además la utilización de cualquiera de los cinco lenguajes para
codificar cualquier módulo de programa que fuera necesario.
Representación de lenguaje SFC
BLOQUES FUNCIONALES DE EXPANSIÓN.
Un bloque funcional es el conjunto de instrucciones o sentencias
que realizan una tarea o función compleja: contadores, registros de
desplazamientos, transferencias de información, etcétera.
Los bloques funcionales de expansión pueden dividirse en los grupos
que aparecen en el siguiente esquema:
Esquema que recoge la división de los bloques funcionales de
expansión
INSTRUCCIONES ESPECIALES.
La ejecución lineal no tiene por qué darse en todas las
programaciones; por el contrario, la ejecución de tipo secuencial, es
decir, los programas que pueden contener instrucciones especiales,
también se usan con mucha frecuencia.
Dichas instrucciones permitirán hacer saltos hacia delante y hacia
atrás, incluso es posible que existan subrutinas e interrupciones a lo
largo de toda la secuencia de órdenes.
Por último, esta secuencia acabará teniendo una instrucción final, la
cual, tras ser ejecutada, pondrá fin al paso del ciclo correspondiente.
ESTRUCTURAS DE PROGRAMACIÓN:
Antes de comenzar con el proceso de programación, es conveniente
tener claros algunos conceptos preliminares respecto a la
organización y al funcionamiento de los programas en la memoria del
procesador.
Desde el punto de vista del procesador, un programa es un conjunto
de instrucciones bien definidas que le dicen lo que tiene que hacer.
Cada instrucción le indica lo siguiente:
Esquema sobre qué indica cada instrucción
INTRODUCCIÓN.
Desde el punto de vista del usuario, un programa está formado por
las especificaciones de un conjunto de operaciones que debe llevar a
cabo el ordenador para lograr resolver una determinada tarea.
Un programa se escribe en un lenguaje de programación (software de
programación), que permite simplificar la creación de programas
debido a su fácil descripción de las instrucciones que ha de ejecutar
el procesador; agrupando varias instrucciones y dando un solo
nombre al conjunto, de tal forma que la lista de operaciones se
reduce considerablemente, resultando más fácil la comprensión y
elaboración de dichos programas.
En el PLC existen dos tipos principales de programas. Por un lado, el
que elabora el usuario para ejecutar una determinada tarea que
necesita automatizar, conocido como programa de aplicación del
usuario; y, por otro lado, los programas ya escritos por el fabricante
del PLC, que permiten procesar los programas del usuario, conocidos
como programas del sistema.
El programa de aplicación es, pues, el conjunto de instrucciones que
programa el usuario con el objeto de resolver tareas de
automatización específica. Para ello, escribe el programa de acuerdo
a la representación del lenguaje de programación del cual tenga un
mejor dominio.
Los programas del sistema son aquellos que proporcionan servicios
vitales a los programas del usuario; es decir, incluyen traductores de
lenguaje de alto nivel al rango de máquina, y realizan funciones
operativas internas del controlador. En definitiva, constituyen el
sistema operativo del PLC, cuyos servicios incluyen el manejo de los
dispositivos de entrada y salida del PLC, el almacenamiento de la
información durante largos periodos, organizar el procesamiento de
los programas del usuario o aplicación, etcétera. El usuario no tiene
acceso a ellos.
Los programas de aplicación se estructuran en función del modo en el
que se procesan los programas.
Cuando el autómata se sitúa en el ciclo de ejecución, también
conocido como ejecución cíclica, la CPU realiza, entre otras funciones,
el barrido del programa contenido en la memoria de usuario desde la
dirección o línea 0000 hasta la última posible, según sea la capacidad
de la misma.
Dependiendo de cómo se realice la ejecución o barrido del programa,
se distinguen los siguientes sistemas, modos o estructuras de
programación:
Ejecución cíclica lineal.
Ejecución con salto condicional.
Ejecución con salto a subrutinas o programación estructurada.
PROGRAMACIÓN LINEAL.
La programación lineal es aquella en la cual se sigue ordenadamente
el curso de las instrucciones, a través de las distintas líneas,
colocadas de manera consecutiva, que va "recorriendo" el programa.
Este tipo de programación incluye una variante, denominada salto
condicional. Este, permite que el ciclo de ejecución del programa
tenga la posibilidad, en caso de cumplirse o no cierta condición, de
alterar su secuencia línea a línea, saltando directamente a
determinadas líneas más avanzadas y dejando, por tanto, otras
ciertas líneas sin ejecutar.
Visualización del estado real de las entradas y salidas
Descripción alternativa
En este esquema se contempla el estado real de las entradas y las
salidas. A continuación, se explica su funcionamiento.
Su funcionamiento es el siguiente:
Si al llegar, en el proceso de ejecución del programa a la instrucción
U, tal y como se puede apreciar en la figura, se cumple la condición
en ella indicada, se salta a V; continuando el barrido en V+1 hasta n.
Por el contrario, si al llegar a U no se cumple la condición, el
programa se ejecuta de forma lineal continuando en U+1.
Esta facultad que tienen un gran número de autómatas permite
reducir el tiempo de ejecución del ciclo, siendo aplicable en aquellos
casos en que las instrucciones contenidas en el salto solo son
precisas cuando se dan determinadas condiciones impuestas por el
propio programa.
PROGRAMACIÓN ESTRUCTURADA.
En casos en los que se desee programar tareas de automatización
muy complejas donde emplear una programación lineal, es
conveniente dividir el problema de forma parcial mediante bloques y,
al final, unir este conjunto de programas en uno solo, resultando la
programación significativamente más fácil tanto para el usuario
programador como para los mantenedores.
Si las funciones de automatización más complejas se dividen en
tareas más pequeñas que correspondan a las funciones tecnológicas
del proceso de automatización, se podrán procesar mucho mejor.
Estas tareas parciales están representadas en el programa de usuario
mediante bloques.
A esta filosofía de programación se la conoce con el nombre
de programación estructurada, que consiste, en definitiva, en la
división del programa de aplicación en diferentes bloques que se
caracterizan por una independencia funcional, donde cada bloque del
programa realiza una tarea específica claramente definida.
La programación estructurada mejora el tiempo de escaneo, ya que
no se ejecutan todos los bloques en cada ciclo de barrido,
ejecutándose solo los que están en actividad en el momento dado.
Algunas de las ventajas que se obtienen de esta programación son:
La compresión, simulación, solución y pruebas se ven facilitadas
cuando un problema muy complejo es tratado por partes.
El diagnóstico de fallas y, por ende, su solución son también
más fáciles.
Los programas parciales pueden ejecutarse de manera
independiente por equipos de programadores, cada grupo
elaborando bloques individuales; se pueden usar
reiteradamente durante el escaneo del programa, o formar
parte de otro programa de aplicación.
Se emplea mejor la capacidad de la memoria.
Optimización del tiempo de barrido.
La secuencia y el anidamiento de las llamadas de bloques se
denominan jerarquía de llamadas. La profundidad de anidamiento
admisible o número de bloques a los que salta, así como su definición
y funcionamiento, dependen del tipo de fabricante y de la CPU.
La figura siguiente muestra, a la vista de un ejemplo de la familia de
autómatas de Siemens, la secuencia y la profundidad de anidamiento
de las llamadas de bloques dentro de un ciclo de ejecución.
Ejemplo de la familia autómatas de Siemens
La figura siguiente ilustra el desarrollo de la llamada de un bloque
dentro del programa de usuario: el programa llama al segundo
bloque, cuyas operaciones se ejecutan luego hasta el final. Concluido
el tratamiento del bloque llamado, se continúa el procesamiento del
bloque invocador con la operación subsiguiente a la llamada del
bloque.
Esquema de bloque invocador (OB, FB, FC) y bloque llamado (FB, FC,
SFB o SFC)
PROGRAMACIÓN MULTITAREA.
La programación multitarea se realiza en sistemas de control muy
complejos que suelen exigir operaciones entre las distintas variables
independientes. Cada tarea se compone de un programa principal,
realizado de forma cíclica o no, y eventualmente subprogramas
locales; es decir, es una programación estructurada y lineal a la vez.
Cada tarea compone una entidad de programación completa. Los
métodos de planificación usados son el prioritario y el de gestión de
tiempo.
En el método prioritario, a cada tarea se le atribuye una prioridad y el
autómata supervisor activa, según las órdenes prioritarias, una entre
las solicitadas.
El método de gestión de tiempo o tiempo compartido (time sharing)
consiste en asignar unidades de tiempo a cada tarea. Una vez
arrancado el PLC, irá ejecutando las tareas según la plantilla de
tiempos, solucionando las simultaneidades que se presenten en
atención a su mayor o menor prioridad.
TAREAS RÁPIDAS E INTERRUPCIONES.
Cuando se trabaja con aplicaciones de automatización, el tiempo de
respuesta es fundamental, puesto que suele ser necesario recurrir a
tareas de interrupción.
La estructura de programación se compone de una rutina de
funcionamiento y, cuando se trabaja con tiempos críticos, se requiere
de tareas de interrupción y de actuaciones que permitan volver al
sistema en las mismas condiciones en las que se encontraba el
equipo antes de la parada.
Representación esquemática de la estructura de programación
Las tareas de interrupción pueden diferenciarse en varios tipos:
Por entrada.
Por contador de alta velocidad.
Por tareas cíclicas.
Interrupción por entrada
En los autómatas hay algunas entradas, dependiendo del modelo, que
pueden configurarse para que, al activarse, se ejecute una
interrupción (subrutina de programa).
Interrupción por contador de alta velocidad
La utilización de encoders para labores de posicionamiento es muy
habitual en tareas de automatización.
Los pulsos que se entregan en encoder suelen ser entradas muy
rápidas; tanto que, si se cablean a entradas normales, el autómata
con su ciclo de SCAN no sería capaz de procesarlas.
Cuando se configura un encoder, a ese CAV se le puede asignar una
interrupción que ejecutará una subrutina cuando el contaje llegue a
un determinado valor o rango de valores.
Interrupción por tareas cíclicas
Este tipo de interrupción se ejecuta de manera cíclica; cada intervalo
de tiempo viene medido por el temporizador interno de la CPU.
PARAMETRIZACIÓN DE MÓDULOS FUNCIONALES.
Al configurar los módulos, todos los datos se pueden ajustar en
cuadros de diálogo. No es preciso efectuar ajustes mediante los
interruptores DIP. La parametrización de los módulos se realiza de
forma automática durante el arranque de la CPU. Por consiguiente, se
puede, por ejemplo, sustituir un módulo sin necesidad de repetir la
parametrización.
La parametrización de módulos de función (FMs) y de procesadores
de comunicaciones (CPs) se realiza con la misma herramienta de
configuración del hardware, de forma idéntica a como se
parametrizan los demás módulos. Para los FM y CP, se dispone de
cuadros de diálogo específicos de los módulos. El sistema impide que
se efectúen entradas incorrectas, debido a que los cuadros de diálogo
solamente ofrecen las entradas admisibles.
PROGRAMACIÓN DE PROCESADORES PERIFÉRICOS
INTELIGENTES.
Estos procesadores tienen como origen un programa especializado en
la ejecución de una tarea concreta, a la que le basta conocer los
puntos de consigna y los parámetros de aplicación para ejecutar el
programa de control.
Existen ocasiones en las que se deben modificar las entradas y
salidas para la aplicación, o convertir las señales entregadas por la
CPU en valores convenientes para los actuadores. Cuando los PLC
deben controlar procesos o máquinas que requieren tareas más
complejas, como por ejemplo, resolución de ecuaciones que requieren
aritmética avanzada, emisión de informes en códigos ASCII, control
de velocidades superiores al barrido del equipo, repuestas a señales
que no pueden aceptar demoras, control de lazos PID, etcétera, este
tipo de tareas pueden suponer limitaciones que estén dadas por la
falta de capacidad de los controladores para atender en un tiempo
razonable esas operaciones sin dejar de lado la resolución de la lógica
de contacto.
Para evitarlo, se diseñaron módulos de entrada/salida con concepto
de módulo inteligente de funciones especiales, que tienen capacidad
propia para el procesamiento de datos y no influyen en el tiempo de
barrido del contador, gracias a que cuentan con su propio
microprocesador y un barrido asincrónico con respecto a la CPU, pero
con la capacidad de tomar, modificar y escribir datos en la memoria.
Para la programación de estos elementos, al incluirlos y conectarlos a
un autómata, se deben tener claras las entradas al mismo, así como
los valores obtenidos una vez tratados por el elemento periférico
inteligente. Este, tras realizar la valoración de las entradas de los
distintos detectores, de los que le llega información, transforma esos
datos en valores que puedan ser legibles y entendidos por el
autómata, tomando en las entradas valores adecuados para ser
interpretados por el programa del autómata.
PROGRAMACIÓN EN STEP-7:
Actualmente, la programación de los equipos Simatic S7 ha superado
ya la fase de maduración, lo que permite asegurar que es el sistema
más avanzado en el campo de la automatización de procesos
mediante PLC.
Aunque en el mercado actual existen ya muchos avances, e incluso el
Simatic S7 cuenta ya con muchas versiones desde las iniciales, como
era la serie 200, hasta más actuales, como la 1200; se va a seguir en
el índice la programación con este autómata, pues todo lo comentado
se puede extrapolar a otros, y aún existen en el mercado gran
cantidad de este tipo de autómatas, lo que lo hace uno de los más
implantados. Todo lo indicado es, por tanto, susceptible de aplicación;
desde las primeras series hasta las actuales del S7; e igualmente es
de implementación similar para el resto de fabricantes.
INTRODUCCIÓN A STEP7.
La programación con STEP-7 se caracteriza por ser:
Literal
Lista de instrucciones AWL o STL.
Gráfica
Esquemas de contactos KOP, diagrama de funciones FUC.
Comandos de Step7
ESTRUCTURA INTERNA DE UN S7-200.
La memoria del autómata puede ser dividida en diferentes partes:
Imagen de las E/S.
E/S de la periferia.
Marcas.
Valor y estado de temporizadores y contadores.
Módulos de datos (DB).
Datos temporales que se pierden al final de cada ciclo.
Imagen de E/S
Las imágenes de las entradas y de las salidas son las señales E o A
que se usan en el programa; pero, al ser solo imágenes, no permiten
la lectura del valor instantáneo de la entrada ni el forzar
inmediatamente la salida, sino que llevan a la lectura, en el caso de
las entradas, del valor de la entrada física cuando se refresca la
imagen de las entradas antes de comenzar el nuevo ciclo del OB1.
Del mismo modo, en el caso de las salidas, cuando el programa pone
a uno o a cero una salida, no lo hace de forma inmediata; está dando
valor a la imagen de la salida, que será volcada a las salidas reales
antes de dar comienzo a un nuevo ciclo del OB1.
E/S de la periferia
En este caso, sí se puede leer de forma directa el valor actual de
cualquier sensor. Para ello, se debe hacer en bytes (PEB), word (PEW)
o doble word (PED), debido a que el acceso no puede ser directo a
un bit en concreto (a diferencia de las imágenes de E/S). Lo mismo
ocurre con las salidas, cuyo estado se puede forzar de forma
inmediata accediendo a las salidas de periferia (PAB, PAW, PAD).
Marcas
Se trata de variables indexadas y globales, por lo que no se deben
declarar, pero sí conviene darles un nombre y un tipo (entero, doble,
real, etcétera). Se les puede dar valor dentro de cualquier parte del
programa. Dependiendo de la CPU, este área es mayor o menor.
Los valores pueden ser remanentes tras el apagado del PLC o
volátiles.
Si se usan punteros de área, su acceso puede ser desde bit hasta un
ancho indeterminado.
Temporizadores y contadores
La programación en Step7 cuenta con la singularidad de tener
temporizadores de dos tipos: por software (IEC) y temporizadores S7
(llamados también de S5, puesto que existían ya en la versión
anterior). Estos últimos son temporizadores hardware, limitados
dependiendo de la CPU por ser hardware; al contrario que los IEC que,
por ser creados por software, se limitan a la propia memoria
disponible, pero no hay un número determinado de ellos.
Los contadores, por su parte, son elementos usados para contar o
descontar cantidades.
Módulos de datos (DB)
Son áreas de memoria que, a diferencia de las marcas, está definidas
por el usuario. Pueden ser de longitudes dispares y tener contenidos
de muy diverso tipo.
Las variables contenidas en los DB son remanentes al apagado del
PLC.
Variables temporales
Estas variables se declaran dentro de los módulos; sirven para
realizar cálculos intermedios y locales que no necesitan ser
empleados más allá del módulo en cuestión y en el ciclo en el que son
llamadas o tratadas.
DIRECCIONAMIENTO.
El direccionamiento indica la posición de la instrucción en la
memoria de programa. Hay tres modos posibles de direccionar los
operandos en el programa:
Directo: el programa puede acceder directamente a la
información.
Simbólico: utiliza una combinación de caracteres
alfanuméricos para identificar una dirección.
Indirecto: usa un puntero para acceder a los datos de la
memoria. Los punteros son valores de palabra doble que
señalan a una dirección diferente en la memoria. Como
punteros solo se pueden utilizar direcciones de la memorias V y
L, o bien los acumuladores (ACU1, ACU2 y ACU3).
Ejemplo
Tomándose el código "0000 LD H0501" como ejemplo, se debe
interpretar de la siguiente manera:
ESTRUCTURA DE UN PROGRAMA Y MÓDULOS DE S7-
200
El autómata S7-200 está formado por los siguientes componentes:
CPU S7-200.
Módulos de expansión.
A su vez, la CPU S7-200 posee una CPU, una fuente de alimentación y
entradas/salidas digitales.
OPERACIONES COMBINACIONALES.
Las operaciones lógicas con bits trabajan con dos dígitos, 1 y 0, que
constituyen la base de un sistema numérico llamado sistema binario.
Los dos dígitos 1 y 0 se llaman dígitos binarios o bits. En el ámbito de
los contactos y bobinas, un 1 significa activado y un 0 significa
desactivado.
Las operaciones lógicas con bits interpretan los estados de señal 1 y
0, y los combinan en función de la lógica de Boole. Estas
combinaciones producen otro 1 o 0 como resultado, y se denominan
"resultado lógico" (RLO). Las operaciones lógicas con bits permiten
ejecutar las más diversas funciones.
Dan lugar a la asignación de una salida o marca, o a la ejecución de
una instrucción determinada en función de la combinación de datos
binarios.
Por lo tanto, las operaciones combinacionales tienen en cuenta una
o varias entradas y su estado actual para aplicar la lógica que
propone la programación y, en función del desarrollo de esa lógica,
darle un valor a las salidas.
OPERACIONES DE MEMORIA.
La memoria de las CPUs S7 se subdivide en tres áreas diferenciadas:
La memoria de carga: permite almacenar el programa de
usuario sin asignación simbólica de operandos o comentarios.
La memoria de carga puede ser RAM o Flash-EPROM.
La memoria de trabajo (RAM integrada): contiene las
partes del programa S7 relevantes para la ejecución del
programa.
La memoria del sistema (RAM): tiene los elementos de
memoria que cada CPU pone a disposición del programa de
usuario; como la imagen de proceso de las entradas y salidas,
marcas, temporizadores y contadores. Contiene, además, las
pilas de bloques y de interrupción.
OPERACIONES DE TIEMPO.
Los temporizadores se denominan con la letra "T" seguida del número
de temporizador. Dependiendo del modelo de CPU, se puede utilizar
un número de temporizadores u otro.
Existen 5 modelos:
1. SI
Arranque de un temporizador como impulso.
2. SV
Arranque de un temporizador como impulso mantenido.
3. SE
Arranque de un temporizador como retardo a la conexión.
4. SS
Arranque de un temporizador como retardo a la conexión memorizado.
5. SA
Arranque de un temporizador como retardo a la desconexión.
OPERACIONES CON CONTADORES.
Un contador es un elemento funcional del software de programación
STEP 7. Los contadores tienen reservada un área de memoria propia
en la CPU. Este área guarda una palabra de 16 bits para cada
contador. La programación con AWL asiste un máximo de 256
contadores. En los datos técnicos de la CPU se halla la cantidad de
contadores de la que puede disponer.
1.L
Cargar valor actual del contador en ACU 1 en forma de entero.
2. LC
Cargar valor actual del contador en ACU 1 como número BCD.
3. R
Desactivar contador.
4. S
Poner contador al valor inicial.
5. ZV
Incrementar contador.
6. ZR
Decrementar contador.
7. FR
Habilitar contador; el FR solo sirve para contar si está a 1 la entrada de contar.
OPERACIONES DE COMPARACIÓN.
Las operaciones de comparación de enteros (de 16 bits) relacionan el
contenido del ACU2-L con el contenido del ACU1-L. Las operaciones
de comparar enteros dobles y números en coma flotante (32 bits,
IEEE-FP), por su parte, comparan el contenido del ACU2 con el
contenido del ACU1.
VALO
INFORMACIÓN
R
RLO = Indica que el resultado de la comparación es verdadero.
1
RLO = Indica que el resultado de la comparación es falso. Los bits A1 y A0 de la
0 palabra de estado indican la relación "menor que", "igual que" o "mayor
que".
Para hacer una comparación, se debe "cargar" en los acumuladores
los dos datos o variables que se quieren comparar y activar una
salida que indique el resultado de la comparación.
OPERACIONES ARITMÉTICAS.
Operaciones aritméticas con números enteros (16 bits)
El resultado de la operación se deposita en ACU1; como los
acumuladores son de 32 bits, para estas operaciones de 16 bits se
utiliza la palabra baja (Low) del acumulador ACU1-L. En
contraposición, alta (High) es ACU1-H.
+ Suma dos enteros de 16 bits. Resultado en ACU1-L.
I
- I Resta dos enteros de 16 bits. Resultado en ACU1-L.
* Multiplica dos enteros de 16 bits. Resultado en ACU1-L.
I
/ I Divide dos enteros de 16 bits. Resultado en ACU1-L. Resto en
ACU1-H.
Operaciones aritméticas con números enteros (32 bits)
Lo mismo que las anteriores, pero sustituyendo la I por R.
+ Suma dos enteros de 16 bits. Resultado en ACU1-L.
R
- R Resta dos enteros de 16 bits. Resultado en ACU1-L.
* Multiplica dos enteros de 16 bits. Resultado en ACU1-L.
R
/ R Divide dos enteros de 16 bits. Resultado en ACU1-L. Resto en
ACU1-H.
OPERACIONES ENTRE BLOQUES.
Las funciones son bloques que pueden ser llamados desde OB, FC o
FB, que se usan principalmente:
Para estructurar el código de manera que no esté todo metido
en el OB1, sino que se haga de forma inteligible dividiendo el
programa en zonas, máquinas, submáquinas, etcétera.
Como funciones que traten unos valores de entrada y den como
resultado unos valores de salida.
Tienen la peculiaridad de poder definir de forma interna variables
temporales con las que jugar dentro del bloque, pero no pueden
remanecer. Así pues, el valor de estas variables se pierde de ciclo en
ciclo de ejecución; es decir, al inicio de la ejecución del FC valdrá cero
y, aunque al final la variable valga 100, en el siguiente ciclo
de scan volverá a valer cero por dicha falta de permanencia.
RELACIONES ENTRE BLOQUES.
En las instalaciones donde hay varios elementos o equipos análogos
repetidos, como pueden ser válvulas, motores, automatismos,
etcétera; el programa total se divide en diferentes bloques de
programa, y es en estos bloques donde se realiza un programa
genérico para las válvulas, otro para los motores, etcétera.
Para ello, en dicho bloque se emplean variables locales (como, por
ejemplo: U #marcha, U #temporizador, = #motor; en vez de: U E
124.0, U T1, = A 124.0). Después, desde otro bloque del programa, se
puede llamar al genérico las veces que este elemento o equipo se
repita y decirle en cada llamada qué "Es", "Ss", "Zs", "Ts", etcétera,
utiliza en particular cada uno de esos elementos o equipos repetidos;
o sea, se hace un programa formal que vale para varios elementos o
partes de programa repetidas y después se concretan las direcciones
actuales o de trabajo real de cada uno de ellos.
En este tipo de programación se pueden emplear los elementos
mencionados en la presente enumeración:
Bloques lógicos de organización OBs.
Funciones FCs; son bloques que no tienen “memoria” particular.
Bloques de función FBs; se puede hacer en ellos lo mismo que
en los FCs y, además, como tienen “memoria” particular, se
pueden programar variables genéricas declaradas como Stat,
cada una de las cuales puede tener distintos valores.
DBs de instancia; se pueden crear de dos formas diferentes: o
bien insertándolos en el Administrador Simatic y después, al
abrirlos, poner a qué FB va asociado; o bien al hacer una
llamada con Call a un FB, poner qué DB lleva asociado.
DBs generales o globales; son capaces de poseer datos en los
que pueden leer o escribir todos los bloques lógicos
programados. Hay que insertarlos, abrirlos y rellenar la tabla
con la estructura de las variables que se necesiten.
También, para un uso más específico, se pueden emplear: FCs,
FBs, SFCs, SFBs, de las librerías del sistema; UDTs, etcétera.
RECUERDA
- La automatización industrial se puede definir como el conjunto
de técnicas basadas en sistemas capaces de recibir información
del proceso sobre el que actúan, rrealizan acciones de análisis,
organización y control de forma apropiada.
- Un GRAFCET será de secuencia única, cuando en el diagrama
solo hay una sola rama; el conjunto de etapas se iran activando
una tras la otra, después de validarse las recepciones asociadas
a las transiciones.
- El GRAFCET una vez representado, permite la obtención de las
ecuaciones lógicas que controlan la activación de cada etapa y
evolución del ciclo.
- La GEMMA es una guía grafica que permite seleccionar y
describir de forma simple los diferentes estados de marcha y
paro, así como sus posibles evoluciones de un estado a otro. Se
trata de un chequeo sistemático de los posibles estados del
sistema a automatizar.
- Utilizando expresiones booleanas vamos a definir Funciones
Booleanas, que son exactamente iguales a las funciones
matemáticas habituales pero con la particularidad de que sus
variables son booleanas y que los valores que devuelve la
función también son booleanos, es decir, una función badada en
algebra de Boole solo puede tomar los valores “0” o “1”.
- La lógica de escalera o Ladder Diagram (LD) es el lenguaje de
programación mas usado para la programación de PLCs.
3. EJEMPLOS BÁSICOS DE
PROGRAMACIÓN
INTRODUCCIÓN.
A lo largo de la presente Unidad Didáctica, se estudiarán ejemplos
básicos de programación. En primer lugar y a modo de introducción,
se explicarán los contactos de entrada y las acciones de contactos de
salida. A continuación, se realizará una identificación de las entradas
y salidas.
Posteriormente, se analizarán los programas con operaciones
combinacionales, los que tienen contadores, los que cuentan con
operadores de comparación, los programas con operaciones de
memoria y aquellos que tienen temporizadores.
Por último, para concluir la Unidad Didáctica, se desarrollarán
diferentes ejemplos de máquinas; primero se determinará el
funcionamiento de las máquinas empaquetadoras, para finalmente
analizar el ejemplo de una máquina mezcladora.
OBJETIVOS
Adquirir la capacidad de identificar los elementos de entrada y
salida del autómata.
Saber llevar a cabo un análisis de los programas con
operaciones combinacionales, con contadores, con operadores
de comparación o de memoria, o con temporizadores.
Poder aplicar los conocimientos mediante la comprensión de
ejemplos de máquinas empaquetadoras y mezcladoras.
MAPA CONCEPTUAL
IDENTIFICACIÓN DE ENTRADAS Y SALIDAS.
Es importante saber que es ilimitado el número de contactos que se
pueden poner en un bloque, desde el comienzo de la línea principal
hasta la salida. No obstante, como limitación práctica se tendrá en
cuenta la anchura del papel cuando se quiera sacar el programa por
impresora o anchura del periférico de programación que se esté
utilizando.
No se puede conectar una salida de forma directa a la línea principal;
en estos casos, se intercala un contacto cerrado de una marca, bit o
relé interno cualquiera.
Elementos necesarios para que sea posible conectar una salida
A cada entrada o salida disponible en el autómata, este le asigna un
número. Este número, dependiendo del software de programación de
cada fabricante, se puede nombrar con una etiqueta la cual se suele
definir por la función de esa entrada o salida en el sistema a
automatizar. Esta acción ayuda a la programación y comprensión del
programa. En relación a dichos números, con los que el autómata
define a sus entradas y salidas, es imprescindible tener presente lo
siguiente:
Contactos de entrada
El número de entrada, normalmente abierta o cerrada, se puede utilizar
ilimitadamente a lo largo de las líneas que componen el programa.
Acciones o contactos de salida
El número de salida es fijo, por lo que no se puede repetir un mismo número de
salida.
Elementos de entrada
Los contactos son los únicos elementos que se colocan a las entradas.
Encima de ellos se escribe la variable a la cual hacen alusión. Los
contactos pueden ser de los tipos que se describen a continuación.
Normalmente abierto: activa la línea hacia la derecha de la
instrucción cuando el contacto se activa. Si la variable es 1, el
contacto también será 1 y, si la variable es 0, el contacto será 0
Normalmente cerrado: desactiva la línea hacia la derecha de
la instrucción cuando el contacto se activa. En este contacto se
toma el valor inverso de la variable correspondiente; si es 1, el
contacto será evaluado como 0, y viceversa.
Transición positiva o flanco positivo: activa la línea hacia la
derecha de la instrucción cuando el contacto está desactivo en
el scan anterior y activo en el scan actual.
Transición negativa o flanco negativo: activa la línea hacia
la derecha de la instrucción cuando el contacto está activo en
el scan anterior y desactivo en el scan actual.
Elementos de entrada
Las variables a las cuales pueden referirse los contactos son:
Entradas digitales que toman el valor de la entrada digital
(I1.3).
Salidas digitales que toman el valor de la salida digital (Q1.5).
Bits en memoria; son bits localizados en la memoria con
posibilidad de ser definidos por el usuario (también se conocen
como relés internos o bits de estado) y que se utilizan muy a
menudo para el control de temporizadores y contadores.
Ejemplo de variables
Elementos de salida
El elemento de salida principal se denomina asignación o bobina.
Estas acciones de salida pueden ser de los tipos descritos a
continuación.
Acción simple: su valor lógico es igual al resultado de la
combinación de los contactos en la rama. Si el resultado de la
evaluación de los contactos es V, la bobina será V; si el
resultado es F, la bobina tomará el valor F.
Acción negada: su valor lógico es igual al inverso del resultado
de la combinación de los contactos en la rama. Si el resultado
de la evaluación de los contactos es V, entonces la bobina será
F; si el resultado es F, la bobina toma el valor V.
Puesta a uno (SET): cuando llega el valor V a esta entrada, su
variable asociada de salida se pone y mantiene continuamente
en estado V, sin importar que a la entrada llegue
posteriormente un valor F. Una vez retenida la variable en el
valor V, para pasarla a F será necesario el empleo de la entrada
de puesta a 0.
Puesta a cero (RESET): cuando llega un valor V a esta
entrada, su variable asociada de salida se pone y mantiene
continuamente en estado F sin importar que a la entrada
del reset llegue posteriormente un valor F. La única manera de
cambiar el estado de la variable es utilizando una entrada de
puesta a 1 (set).
Acción activa por flanco de subida: activa un bit cuando la
instrucción de entrada transita de false a true.
Acción activa por flanco de bajada: activa un bit cuando la
instrucción de entrada transita de true a false.
Representación de los elementos de salida
Otros tipos de elementos de salida son los temporizadores, los
contadores, los saltos, las llamadas y los retornos. Estos elementos
también se pueden implementar en el resto de lenguajes de
programación. Es importante recordar que sus tipos y su
funcionamiento dependen no solo del fabricante, sino también de la
CPU o gama de PLC dentro del mismo fabricante.
Ejemplo de contadores
A continuación, se indican los diagramas correspondientes para los
distintos contadores:
Comparadores
Si la línea de entrada está activa (EN), la instrucción ejecuta la
operación y activa la línea de salida (ENO) cuando el parámetro IN1
es igual al parámetro IN2. Se pueden comparar distintos tipos de
números (bits, enteros, dobles enteros, etcétera).
Comparador I
Comparador II
Rupturas de la secuencia de ejecución
Hay dos tipos; en primer lugar, las instrucciones de salto a
etiquetas o metas consisten en saltar un bloque de código del
programa. El comando JMP (procedente de la palabra jump, que
significa "saltar" en inglés) ejecuta el salto cuando se activa la
instrucción o línea de entrada; el salto se produce a la línea de
programa con la marca LBL o Label, en el cual se indica el nombre de
la etiqueta de la operación de salto.
Se indica hacia dónde va dirigido el salto
Instrucción JMP
Por otra parte, las instrucciones de salto a subrutinas tratan de
saltar a un bloque de código encapsulado como una subrutina. Este
bloque está compuesto por la operación CALL, que pasa el control a
otra función, y la función RET, que retorna al punto siguiente desde
donde fue llamada la subrutina.
Ejemplo de instrucción de salto a subrutinas
En la siguiente imagen se muestran algunos de los elementos vistos
anteriormente en el lenguaje de esquema de contactos para un
determinado autómata.
Representación de algunos de los elementos señalados anteriormente
PROGRAMAS CON OPERACIONES COMBINACIONALES.
Los programas con operaciones combinacionales son aquellos
en los que las respuestas dependen solo del valor actual de las
entradas a través de las funciones lógicas: Y, O, NO.
A continuación, se muestran las tablas de lógica combinacional:
Además, debe tenerse en cuenta que:
Por último, las Leyes de Morgan establecen lo siguiente:
PROGRAMAS CON CONTADORES.
Existen contadores ascendentes, descendentes y ascendentes-
descendentes. En el último caso, con un mismo bloque se puede
contar o descontar. Las opciones de programación de los contadores
pueden ser de las siguientes, debiéndose tener en cuenta que,
dependiendo del autómata, se contará con un número determinado u
otro de contactos disponibles:
1. Asignación (PV)
Con este elemento se define el valor inicial de la cuenta.
2. Cuenta ascendente (CA)
Un flanco de subida en la entrada del elemento hace que el valor de la cuenta
se aumente a 1. El flanco de subida se define como el cambio de una señal de
F a V.
3. Cuenta descendente (CD)
Con un flanco de bajada se hace que el valor de la cuenta descienda en 1.
4. Reposición (R)
Esta entrada obliga a que el contador se reinicie con su valor inicial.
La salida de un contador es un contacto cuya variable de referencia
es el nombre del contador; esta variable es F si el valor de la cuenta
es 0, y es V si la cuenta es diferente de 0.
Ejemplo
Cuando la entrada del contador se conexione 8 veces, se activará la
salida Q.
Así:
Primero: el contador está programado a 8; esto no quiere decir
que la entrada no pueda ser activada más, sino que, al llegar a
8, la salida tendrá el valor 1.
Segundo: el contador puede disponer de descontador, lo cual
hace que, si el número total del cómputo ascendente no es 8, la
salida se desactive.
En el siguiente gráfico se muestra cómo el cómputo llega a 8, la
salida se activa, pero entonces el descontador baja el cómputo a un
valor inferior a 8, con lo cual la salida se desconecta.
PROGRAMAS CON OPERADORES DE COMPARACIÓN.
Esta función compara dos valores de entrada y permite el paso de
corriente a su salida si se cumple la relación entre ambos valores, que
podrá ser:
Igual que.
Mayor que.
Menor que.
Mayor o igual que.
Menor o igual que.
El siguiente símbolo representa a un comparador "igual que"; sirve,
por ejemplo, para el control de un tanque: si la línea de entrada está
activa (EN), la instrucción ejecuta la operación y activa la línea de
salida (ENO) cuando el parámetro IN1 es igual al parámetro IN2. Se
pueden comparar distintos tipos de números (bits, enteros, dobles
enteros, etcétera).
Ejemplo
La entrada analógica de un autómata programable está conectada a
un anemómetro, que controla la velocidad del viento local. Si la
velocidad registrada por el PLC es mayor o igual a 100 kilómetros por
hora, se cierran automáticamente los toldos, por peligro de rotura. La
velocidad real se compara con un valor establecido.
PROGRAMAS CON OPERADORES DE MEMORIA.
El conjunto de direcciones correspondientes a todas las posiciones de
memoria que puede direccionar la CPU, o lo que es lo mismo, de toda
la memoria de trabajo que posee, es lo que se conoce en el mundo
del autómata como mapa de memoria.
La longitud del mapa de memoria depende de tres factores
determinantes. Estos factores son:
Factores determinantes de la longitud del mapa de memoria
Dada una CPU concreta, la longitud total del mapa de memoria se
encuentra siempre limitada a un determinado valor.
PROGRAMAS CON TEMPORIZADORES.
Existen varios temporizadores, en función de si tienen retardo a la
conexión o a la desactivación.
Estos temporizadores pueden estar definidos mediante símbolos de
acciones o, más corrientemente, por ser menos difíciles de
comprender, mediante bloques funcionales, tal y como se especifica
en la siguiente imagen.
Temporizador definido por bloques funcionales
Se puede observar una serie de parámetros de programación y de
activación así como de salida:
IN: instrucción de entrada de la línea de contactos que activan
esta salida o acción.
Q: resultado de la temporización, que varía conforme a su tipo
(0 o 1).
PT: (Preset Time) parámetro que indica cuanto tiempo se va a
temporizar o asignación de la base de tiempo del temporizador.
ET: (Elipse Time) indica el transcurso de la temporización hasta
que llega a la base de tiempo definida en PT.
Temporizador de impulso
El temporizador comienza su cuenta en el flanco ascendente de la
puerta de activación, tal y como se explica en el siguiente
cronograma:
Temporizador con retardo a la activación TON
Este temporizador activará su salida si es excitada su entrada (IN) y
pasa el tiempo programado; aunque, si la entrada es igual a cero, la
salida también lo será.
Ejemplo
El pulsador S1 activa el temporizador con retardo a la activación. Lo
que pasará a los 10 segundos de activar la entrada del citado
temporizador es la excitación de la lámpara E.
Temporizador con retardo a la desactivación TOF
Este temporizador activará su salida en el mismo instante que se
excita su entrada (IN). Una vez la entrada no está activa, comienza a
contar el tiempo que resta para la desactivación de la salida. Además,
el temporizador puede contar con una entrada RESET (R), es decir,
puesta a cero de la salida y el tiempo.
Como ejemplo muy común de aplicación, se explican las luminarias
de los garajes o las escaleras, las cuales están gobernadas por
temporizadores llamados "relés de escalera", que en realidad son
temporizadores con retardo a la desactivación. Todos los pulsadores
se disponen en paralelo hacia la entrada de activación del
temporizador.
Para saber más
Normalmente, de este temporizador se usan dos variables:
el bit digital de salida (T), que podrá ser 0/1, y el dato del tiempo
actual, medido, entre otros, en formato de 16 bits (word).
Ejemplo
El pulsador S1 activa el temporizador con retardo a la desactivación
y, en ese mismo instante, se activa la lámpara E. Cuando pasen los
10 segundos asignados después de activar la entrada del
temporizador no pasará nada; pero, al soltar el pulsador, comenzará a
contar el tiempo (10 segundos) y, una vez pasados estos, se
desconectará la luminaria E.
Temporizador TON-TOF
Es una mezcla de los dos anteriores, motivo por el cual necesita
programar dos bases de tiempo (TON y TOF).
Temporizador con salida intermitente parametrizable
Permite un estado on/off a su salida, si la entrada (IN) está activa. Se
contemplan temporizadores de salida síncrona (es decir, el estado 1 y
el 0 de la salida ocupan el mismo espacio de tiempo) y
temporizadores con salida asíncrona, en los que el tiempo de
activación de la salida no tiene por qué coincidir con el de descanso.
Los temporizadores con salida intermitente son muy usados en
señales acústicas y luminosas de advertencia y peligro.
Temporizador con salida intermitente parametrizable
Ejemplo
El pulsador S1 activa el temporizador con salida intermitente síncrona
a 1 segundo, se excitará la lámpara E a intervalos de 1 segundo; es
decir, se mantendrá un segundo encendida, un segundo apagada,
mientras el pulsador esté presionado.
Reloj horario
Activa-desactiva su salida durante un espacio de tiempo
parametrizable; por ejemplo, desde las 08:34 hasta las 23:45 horas.
La programación podrá ser, por tanto semanal, mensual o incluso
anual.
Ejemplo
Según el cronograma anterior, la salida del reloj y, por lo tanto, lo que
hubiera conectado a ella se activará de la siguiente manera:
EJEMPLO: MÁQUINA EMPAQUETADORA .
La máquina que se pretende automatizar realiza la agrupación de
elementos por empaquetar y su posterior introducción en una caja.
Un operador se encargará de preparar la caja y de situarla en la
máquina, mientras que el resto de operaciones se harán de forma
automática.
Las siguientes imágenes muestran el detalle de la máquina
empaquetadora. El proceso que lleva a cabo es el siguiente: el
producto va llegando y se sitúa en línea, formando grupos de tres
productos sobre el cilindro B. Mediante este cilindro, se eleva el grupo
de tres productos a la altura del cilindro A.
Puesto que esto se realiza a través de una parte elástica que permite
el ascenso pero no el descenso del producto, se puede retirar el
cilindro B dejando el grupo de productos a la altura del A.
Una vez se disponga de un grupo de nuevos productos (tres filas)
situados delante del cilindro A, este los ha de introducir dentro de la
caja.
El pistón D mantiene la caja en posición horizontal, de manera que,
llenada la caja, ha de liberarla y soltarla sobre la cinta transportadora.
Los sensores y actuadores disponibles son los siguientes:
t1: permite detectar un producto y sirve para indicar que se ha
formado una hilera de tres productos.
t2: permite detectar un producto.
t3: es un sensor de presión.
a2: es un sensor que marca el fin de recorrido del cilindro A.
a0: es un sensor que marca el inicio de recorrido del cilindro A.
b0: es un sensor que marca el fin de recorrido del cilindro B.
b1: es un sensor que marca el inicio de recorrido del cilindro B.
d1: indica la posición del cilindro D (caja en posición horizontal).
Para los actuadores, se utiliza el nombre del cilindro seguido del signo
"+" o "–", según proceda.
Se dispone también de un pulsador M para poner en marcha la
máquina.
El GRAFCET para la máquina empaquetadora será, por tanto, el
siguiente; según Ponsa Asensio, P. y Vilanova Arbós, R. (2005):
Ejemplo de GRAFCET
EJEMPLO: MÁQUINA MEZCLADORA.
El proceso a automatizar es una estación mezcladora. Está formada
por una primera parte en la que diferentes dispensadores de producto
permiten realizar la mezcla deseada. Una vez las cantidades de
materia prima están seleccionadas, se trituran todas juntas para
obtener el producto final (mezcla deseada). Finalmente, el producto
se envía a la estación siguiente:
Máquina mezcladora.
Como hay siete tipos de productos diferentes, se tienen siete
dispensadores, situados sobre una base circular. Para escoger
unidades de producto de un dispensador, se debe situar el
correspondiente dispensador en la posición apropiada. Las unidades
de producto, o pastillas, son empujadas una a una al recipiente en el
que la mezcla será realizada. Esta base circular se puede hacer girar
(hacia la izquierda y hacia la derecha), dependiendo del dispensador
que se quiera posicionar.
Un sensor de fin de carrera permite ir localizando los dispensadores y,
de este modo, gobernar el motor que hace girar la base circular.
El producto final a obtener viene determinado por una tabla, en la
que se especifican, para cada tipo de producto básico (identificado
por el número de dispensador), las unidades o pastillas que se deben
mezclar. Cuando en la tabla se encuentre un dispensador con
identificador cero, será el indicador de que la composición está
completa y que se puede proceder a activar la trituradora y realizar la
mezcla.
La trituradora será activada durante 5 segundos y, seguidamente, se
abrirá la válvula para el vaciado de la mezcladora, también durante 5
segundos.
El sensor s_infra permitirá la detección de si hay pastillas en el
dispensador. En caso de falta de estas, se podrá considerar la
interacción apropiada con el usuario para poder solucionar la
situación y que el proceso pueda continuar.
A partir de esta descripción, se realiza el GRAFCET de producción
correspondiente a la automatización del proceso descrito; sin entrar
en el detalle de los sensores y las señales utilizados.
Así pues, el GRAFCET para la producción será el aquí presente:
RECUERDA
Contactos.
- Es importante saber que es ilimitado el numero de
contactos que se pueden poner en un bloque, desde el
comienzo de la línea principal hasta la salida.
Operaciones combinacionales.
- Los programas con operaciones combinacionales son
aquellos en lo que las respuestas dependen solo del valor
actual de las entradas a través de las funciones lógicas: Y,
O, NO.
Contadores.
- Existen contadores ascendentes, descendentes y
ascendentes-descendentes. En el ultimo caso, con un
mismo bloque puede contar o descontar.
Temporizadores.
- Existen varios temporizadores, en función de si tienen
retardo a la conexión o desactivación.