jueves, 19 de junio de 2014

AUTÓMATAS PROGRAMABLES


CONTROLADORES LÓGICOS PROGRAMABLES
P.L.C.

INTRODUCCIÓN:

¿Qué es un PCL?

Genéricamente, un Controlador Lógico Programable, es un dispositivo que puede ser programado para cumplir determinadas tareas de control en sistemas automáticos.
Existen variados tamaños de PLC; para pequeñas aplicaciones, pueden ser como un paquete de cigarrillos, pero los hay del tamaño de un acondicionador de aire, o más grandes, teniendo en cuenta que a esta escala son modulares, es decir que se les pueden agregar tantos módulos como sea necesario de acuerdo a las necesidades. Estos módulos pueden ser de entrada, de salida, o unidades de proceso.
Los PLC son muy utilizados para controlar aquellas máquinas que deben seguir procesos secuenciales a nivel industrial, tales como empaque de productos, control de motores, monitoreo de sensores, monitoreo o control de armado de partes, otros. Su elección depende del tipo de proceso a automatizar, así como de la cantidad de entradas y salidas necesarias para atender todos los sensores y actuadores del sistema.
Un PLC, como cualquier sistema de control, entrega determinados estados en sus salidas dependiendo del estado de sus entradas y de un proceso de corrección, que en este caso sería el programa que tenga cargado en su memoria, que debió ser diseñado para la aplicación en especial.


Figura 1

Por ser un dispositivo programable, el proceso que se desea automatizar debe ser estudiado para generar el programa con sus rutinas, que por medio de una serie de instrucciones, y basado en las señales de entrada, tomen la decisión sobre la acción que se debe ejecutar en los actuadores automáticos del proceso. Este programa se carga al PLC a través de algún tipo de software diseñado para tal fin, ya sea por medio de una computadora convencional, o mediante una unidad programadora “manual”, que son pequeñas computadoras diseñadas especialmente por los fabricantes de los PLC, para la programación de éstos. (Ver Figura 1. Tamaño aproximado similar al de un multímetro).
Cualquier proceso que involucre encendido o apagado de ciertas máquinas con una secuencia lógica, o bien la lectura de variables análogas o el control de determinados sistemas análogos, puede ser llevado a un PLC como una solución para que tal proceso se ejecute en forma automática.
Los PLC tienen entre sus componentes internos, esencialmente, los mismos constituyentes que los microcontroladores; es lícito preguntarse entonces porque se aborda como un dispositivo diferente, y no como si fuese un microcontrolador. Las razones fundamentales que crean una gran diferencia con éstos, son las siguientes:

-Los PLC vienen diseñados para trabajar en ambientes industriales, con blindajes especiales, con el objeto de no dejarse afectar por las perturbaciones eléctricas que ocurren constantemente debido a los transitorios generados por motores y en general todas las máquinas que forman parte de la red eléctrica y de control de una planta fabril.

-El diseño de los PLC, como se verá más adelante, está orientado fundamentalmente al reemplazo de relés o relevos, que es una pieza fundamental en el control de procesos industriales, y las operaciones estrechamente vinculadas a éstos, tales como el conteo de operaciones y el eventual retardo de tiempo para producir cada operación, entre otras.

El primer punto se refiere en particular a los aspectos constructivos, o de hardware; el segundo plantea una diferencia fundamental en cuanto al análisis de su funcionamiento.

El PLC nació como un reemplazo de los Controles de Lógica Cableada (WLC); estos son los tableros de mando eléctricos en base a relés.  Como su nombre lo indica PLC; es el acrónimo de "Programmable Logic Controller" (en sus siglas en Ingles). El "Controlador Lógico Programable", nació como un dispositivo digital de memoria programable para almacenar instrucciones de programa de lógica secuencial.


Actualmente los PLC  no sólo controlan la lógica de funcionamiento de máquinas, plantas y procesos industriales, sino que también pueden realizar operaciones aritméticas, manejar señales analógicas para realizar estrategias de control, tales como los controladores proporcional integral derivativo (PID).  Son realmente una pequeña computadora industrial que pueden alojarse en el mismo equipo de planta y que pueden conectarse a paneles de operador para entregar y recibir datos u órdenes del proceso que automatiza y que pueden asimismo enlazarse a otros dispositivos en redes y a las computadores que centralizan la automatización a un nivel superior; como para toda una planta industrial.


HISTORIA DE LOS PLC:

Hacia fines de la década del 60 la creciente industrialización de los países desarrollados planteó la necesidad de reemplazar los complejos sistemas elaborados con numerosos relés y el consecuente cableado. Este requerimiento en particular se presentó en la industria automotriz, en los EEUU. Por ese entonces, la empresa Bedford Associates propuso al mayor fabricante de automóviles de EEUU, algo llamado Modular Digital Controller (MODICON). Simultáneamente otras compañías hicieron propuestas parecidas, pero se considera al MODICON 084 como el primer PLC producido comercialmente en el mundo.
Estos primeros PLC´s tenían el inconveniente de no poder usarse modularmente (comunicándose entre sí), como tampoco servían en caso de cambiar los requerimientos de la cadena de producción para la que fueron diseñados.
Hacia 1973 aparecen los primeros PLC con posibilidad de comunicarse con otros dispositivos (Modbus, de Modicon). Fue entonces posible conectar varios PLC entre sí, permitiendo que cualquiera de ellos conociera el estado de operación de los demás. También comenzaron a permitir su reprogramación, con lo que se podían reutilizar en caso de producirse cambios en la cadena o proceso de producción.
En la década de los 80, con el surgimiento de las computadoras personales, fue posible la programación de los PLC de una manera más sencilla, gracias a la fácil comunicación e interfase más amigable entre usuario y máquinas.
Para la década de los 90, la estandarización de los protocolos de comunicación  y de los lenguajes de programación, ha hecho que prácticamente cualquier PLC pueda integrarse a determinada red sin importar su fabricante. En la actualidad existe una Recomendación Internacional, la IEC 1131-3 (http://www.plcopen.org/iecdocs.htm), muy útil por cuanto normaliza no solo el aspecto hardware sino también los lenguajes de programación de los PLC. Gracias a la IEC 1131-3 en la actualidad se ha logrado independizar del fabricante la utilización de los PLC en la automatización industrial.


Historia del PLC

En 1968, la General Motors (Cía. automotriz norteamericana) pensando en sus necesidades de automatizar los procesos del ensamblaje del automóvil, invirtió dinero en el desarrollo de un controlador, y con la dirección de Dick Morley, considerado el Padre del PLC, crearon el MODICON que significa MOdular DIgital CONtroller (Controlador Digital Modular), que se convirtió en la primera marca de PLC que existió.
La marca Modicon fue vendida en 1977 a Gould Electronics, y posteriormente adquirida por la compañía Alemana AEG y más tarde por Schneider Electric; el actual dueño.
Uno de los primeros modelos "MODICON 084" se encuentra en exhibición en el corporativo de Modicon en el Norte de Andover, Masachusets. Fue regalado a Modicon por GM, cuando la unidad fue retirada tras casi veinte años de servicio ininterrumpido. La industria automotriz es todavía una de las más grandes usuarias de PLCs, y Modicon todavía numera algunos de sus modelos de controladores con la terminación ochenta y cuatro.


Algunas marcas con alto prestigio son ABB Ltd., Koyo, Honeywell, Siemens, Schneider Electric, Omron, Rockwell (Allen-Bradley), General Electric, Tesco Controls, Panasonic (Matsushita), Mitsubishi e Isi Matrix machines.



En los 60´s

  • El MODICON 084 fue el primer PLC producido comercialmente.

En los 70´s


  • Se incorpora el microprocesador al PLC: Ell AMD 2901 y AMD 2903 eran comunes en los Modicon.
  • Se incrementa la capacidad de memoria, la posibilidad de E/S remotas, analógicas y numéricas.
    Lenguajes con mayor número de instrucciones.
  • Desarrollo de las comunicaciones con periféricos y computadoras.
  •  Primer bus de comunicaciones, 1973:  el bus de Modicon (Modbus).

En los 80´s

  • Protocolo de comunicación abierto "MAP" de General Motors.
  • Mayor reducción de tamaño.
  • Programación a través de computadoras personales.
  • Módulos PID

En los 90´s

  • Modernización de las capas físicas de los protocolos sobrevivientes.
  • Estándar Internacional IEC 1131-3 para unificar el sistema de programación de los PLC.
  • Las PC´s comienzan a reemplazar al PLC.


Actual Tendencia


  • Funciones específicas de control.
  • Canales de comunicación entre si y computadoras en red.

Estructura Básica

Así como una computadora, la estructura básica del hardware esta propiamente constituida por:

  • Fuente de alimentación.
  • Unidad de procesamiento central (CPU)
  • Módulos de entrada/salida (E/S)
  • Módulos de memoria.
  • Unidad de Programación.

Clasificación de los PLC

Según su configuración de hardware:

  • Compactos
  • Modulares

Configuración Compacta:

Estos reúnen en una sola construcción o equipo:


  • La fuente de alimentación (incluido en su mayoría)
  • La CPU
  • La memoria
  • Las interfases de E/S (entrada/Salida)

Ventajas:
  • Económicos
  • Construcción compacta
  • Programación bastante sencilla
  • Fácil instalación.
  • Son rentables desde que reemplazan a 5 relés.

Aplicaciones simples pero distribuidas en numerosos sectores:


  • Mando de arranque de motores
  • Mando de bombas
  • Puertas automáticas,
  • Máquinas de llenado o embolsado,
  • Calefacción, climatización y ventilación
  • Fajas o bandas transportadoras
  • Sistemas automáticos de equipos, otros…



 




        Ej. Micrologix 1000 de Allen Bradley. Con diversas configuraciones de E/S






Configuración Modular:


Estos se caracterizan en que se arman de acuerdo a las necesidades, logrando
así mayor flexibilidad.

Configuración Compacta Modular


Ejemplos: Logo! de Siemens.  Aunque estos aceptan módulos de expansión
como de entradas y salidas digítales o analógicas. Sin embargo el número
de módulos que pueden acoplarse y sus prestaciones son bastante limitados.














Clasificación por su Capacidad

  • Gama Alta.
  • Gama Baja.
  • Gama Media.


ESTRUCTURA DE UN  PLC:

Un PLC consiste principalmente de una CPU, áreas de memoria externa, y circuitos adecuados para comunicarse con las entradas y salidas del PLC. Veamos esto en el diagrama presentado en la Figura 2:




Observamos con mucha frecuencia la palabra “relé”. Efectivamente, como ya se ha mencionado, los PLC están estrechamente vinculados con los relés o “relays”, puesto que fueron creados para reemplazarlos cumpliendo con las mismas funciones, aunque no sean parecidos físicamente. Antes de seguir adelante, veamos como está construido un relé tradicional, y un ejemplo de su posible aplicación.
El ejemplo más sencillo de relé lo constituye una bobina y un contacto, como se observa en la figura 3.

Un típico relé puede pensarse como una llave o interruptor electromagnético. Aplicando una tensión continua a la bobina de la Figura 3, mediante el accionamiento de un pulsador, se genera un campo magnético. Este campo succiona o “chupa” el contacto cerrando el circuito de corriente alterna, por ejemplo, permitiendo que suene la campanilla “BELL”. En este sencillo ejemplo, tenemos tres com­ponentes reales: el pulsador, el relé y la campani­lla. Además tenemos dos circuitos separados: el inferior, de corriente continua, y el superior, de corriente alter­na. En este caso hemos usado un relé de corriente continua, para controlar un circuito de corriente alterna.
Sabiendo como es un relé real, continuemos ahora analizando ahora los componentes de un PLC (Figura 2), que sin ser físicamente parecidos (insistimos) a un relé del mundo real, debe cumplir con funciones idénticas.


RELES  DE  ENTRADA (contactos)

Estos contactos están conectados con el “mundo exterior” del PLC. Físicamente existen, y reciben señales de interruptores, sensores, etc., y en realidad no son relés, sino que tienen componentes del tipo o similares a los mostrados en la Figura 4.
Se observa aquí que este “relé de entrada” no es muy parecido al visto antes, pero esta es una típica entrada a un PLC. Las entradas pueden ser analógicas o digitales, aunque las más utilizadas son las digitales, que por medio de optoacopladores toman el voltaje entrante y permiten la activación de la variable respectiva dentro del programa del PLC. Las tensiones de entrada pueden ser de alterna o continua y de cualquier valor. El optoacoplador puede ofre­cer una protección de hasta 6000 Volts en la entrada sin producir daño alguna en la circuitería interna del PLC. Se aprecia también en la Figura 4, el símbolo utilizado dentro del programa del PLC para representar una entrada, que se denomina “contacto”.
Un módulo típico de PLC puede constar de 8 ó 16 entradas, ofreciendo externamente la cantidad de terminales correspondientes a los contactos de cada uno de los optoacopladores.


RELES  DE  SALIDA (bobinas)


Son salidas físicas a las cuales se conecta el cableado que llevará la señal a los actuadores de la máquina o proceso que se está controlando. Cada salida corresponde a una variable dentro del programa  en ejecución. En general, los módulos de salida están basados en relés (también “relevos”), como se observa en la configuración de la Figura 5, por ser dispositivos que soportan corrientes de cierta importancia a través de sus terminales de contacto, y porque además ofrecen alto aislamiento para el PLC con respecto a los circuitos externos. Estos relés son salidas del tipo “On/Off”, o sea conectan o no un actuador, que puede ser un motor, un timbre, otros. También hay salidas a través de optoacopladores, transistores, TRIACs, etc., pero las de relés son las más usadas. En la Figura 5 se muestra un circuito típico de salida de un PLC por medio de relé, con el correspondiente símbolo para representarlo en el programa de control (que veremos más adelante). Al igual que las entradas, un módulo de salida puede estar compuesto de 8 ó 16 juegos de contactos, en la mayoría de los casos.


RELES UTILITARIOS INTERNOS (SIMULADOS) (contactos)
Continuando con el análisis de los componentes detallados en la Figura 2, diremos que estos relés no reciben señales desde el mundo exterior al PLC, ni tampoco existen físicamente como relés. Son relés simulados dentro del PLC, y su importancia radica en que permite al PLC eliminar relés externos.


CONTADORES (SIMULADOS)
Tampoco existen físicamente; son variables que simulan a los contadores reales. Pueden hacer conteo de entradas y salidas físicas o lógicas, como también, como también pueden hacerlo en forma ascendente o descendente, activando otras variables luego de comparar el valor del conteo en que se encuentren, con un valor que se haya programado previamente.


TEMPORIZADORES (SIMULADOS)
Los temporizadores o timers, que tampoco existen físicamente, son variables que simulan un temporizador físico al cual se le puede programar el tiempo deseado para la activación o desactivación de otra variable dentro del programa o de entradas y salidas físicas externas.


ALMACENAMIENTO  DE  DATOS
No es otra cosa que la memoria de datos vista para los microcontroladores. Es decir hay registros asignados para simple almacenamiento de datos, que generalmente se usan también como memoria de almacenamiento temporario de cálculo.


MODO DE OPERACIÓN DE UN PLC:





PROCESO:
Una vez que se han leído las entradas, el PLC ejecuta las órdenes de acuerdo al programa que se tenga en la memoria. Durante este paso se ejecutan operaciones matemáticas, se verifica el estado de los temporizadores al igual que el de los contadores, y se toman decisiones que finalmente han de llegar a los módulos de salida.

ACTUALIZACIÓN DE LAS SALIDAS:
Una vez concluido el procesamiento del programa cargado en memoria, la CPU ordena la actualización de los valores que deben tener las salidas, o sea la activación (ON) o desactivación (OFF) si se trata de salidas digitales, o un voltaje proporcional si se trata de salidas analógicas.

TIEMPO DE ESCANEO:
El tiempo de escaneo (scan time), también llamado tiempo de respuesta, es determinado por el lapso que hay entre la ejecución por parte del PLC del primer paso, ir hasta el tercero y de nuevo llegar al primero (ver diagrama anterior) o sea realizar un ciclo completo. Cuanto más pequeño sea el tiempo de escaneo, mayor será la velocidad de respuesta del PLC.

PROGRAMACIÓN DE UN PLC:
En la Recomendación IEC 1131-3 citada precedentemente, se definen cuatro lenguajes de programación, en los que ha sido definida tanto su sintaxis como la semántica, por lo que no caben los “dialectos”. Estos idiomas o lenguajes consisten en dos expresados en forma textual y dos versiones gráficas:

Los dos textuales son:

-Lista de instrucciones (IL)
-Texto estructurado (ST)

Las dos versiones gráficas:

-Diagrama de Escalera (Ladder Diagram = LD)
-Diagrama de bloques de funciones (Function Block Diagram = FBD)

En el siguiente cuadro se dan como ejemplo las mismas instrucciones en los cuatro idiomas:



La elección del lenguaje de programación depende, entre otras cosas, de la experiencia de los programadores, del problema que se deba resolver, del grado de detalle que requiera la descripción del problema, y de la eventual comunicación que se deba mantener con otros programadores o departamentos (esto en grandes fábricas, por supuesto).
Los cuatro lenguajes permiten programar las mismas acciones, teniendo algunos ventajas sobre otros dependiendo de las aplicaciones.
En todos los casos, para programar finalmente el PLC, o para transmitir al mismo el programa realizado en el lenguaje elegido, es necesario una computadora y un software especial como se citó en la introducción. La comunicación física se hace por medio de un cable desde la CPU del PLC hasta algún puerto serial de la PC.


INSTRUCCIONES BÁSICAS DE PROGRAMACIÓN:
Nos referiremos con exclusividad al lenguaje LD (Diagrama de Escalera), por ser uno de los más utilizados, por su claridad para facilitar la comprensión de las diferentes aplicaciones, y porque la mayoría de los PLC tienen el software necesario para transformar un LD en “lenguaje de máquina”. veremos sólo las instrucciones necesarias para comprender un ejemplo sencillo. Éstas, no obstante, constituyen una buena base para quien desee profundizar el tema.
Para entender como funciona un diagrama de escalera y con este propósito, reemplazaremos el pulsador, la batería y la bobina del relé de la Figura 3 por sus correspondientes en un LD. Para ello deberemos considerar los símbolos que el PLC “comprende”, y no las designaciones habituales que damos nosotros cotidianamente:
-La batería se reemplaza con algo común a todos los LD, llamadas “bus bars” o barras “bus”, que  son  simplemente  dos  barras verticales, una a cada lado del diagrama. (Serían los laterales o largueros de la escalera) Debe tenerse presente que siempre en la barra de la  izquierda  es  la  de  tensión positiva, y la de la derecha, tierra. También se debe tener presente,  consecuentemente, que  la corriente circula por los “peldaños” de la escalera, de izquierda a derecha.
-Una instrucción de entrada se representa así:  (No confun­dir con los capacito­res). Puede ser un pulsador, un interruptor, o simplemente un contacto de un relé (real o simulado interna­mente en el PLC). Para el PLC no importa verdaderamente del dispositivo de que se trate. Simplemente es una entrada lógica equivalente a un contacto “normalmente abierto”, y se utiliza cuando se necesita que una señal de entrada esté presente para conectar. Esa conexión se asume como un estado lógico 1. Analicemos un poco más este tema para evitar malas interpretaciones o confusiones: La instrucción “en reposo” es un contacto abierto, y como tal, es un 0 lógico. Cuando se acciona el contacto, o, lo que es lo mismo, cuando hacemos el análisis de su funcionamiento, es cuando hacemos la conexión y en consecuencia tenemos el estado lógico 1 o verdadero. En consecuencia, cuando el estado lógico bajo análisis sea un “0”, reposo o inactivo, esta entrada es “falsa” o “0”. Contrariamente, si el estado bajo análisis es “1”, o activo, esta entrada debe considerarse como “verdadera”. Esta entrada se usa como entrada externa o interna (de relés internos; recordar que son simulados por el software del PLC) y también para contactos de salida externa. Veamos ahora el caso opuesto:
-La entrada puede ser también entrada negada, o contacto normalmente cerrado. Se utiliza cuando se necesita que el contacto esté conectado (“1”), con el circuito en reposo. Esta entrada negada puede usarse en los mismos casos citados para la entrada descripta en el párrafo anterior.
Importante: En la mayoría de los PLC, las instrucciones  entrada o entrada negada, deben ser el primer símbolo a la izquierda  del correspondiente peldaño de la escalera.
-Antes de completar nuestro primer diagrama de escalera para reemplazar un relé, nos queda ver la instrucción salida, que se asocia a la bobina del relé de la  Figura 3. La salida, cuando está colocada en un peldaño de escalera, precedida de entrada/s verdadera/s (1), será también verdadera. O sea que cuando en el peldaño sea todo verdadero, la salida está “conectada”. Puede pensarse esta salida como normalmente abierta o falsa, cuando el circuito está inactivo, o es falso.
Esta  instrucción  se usa para bobinas internas del PLC (simuladas), y para salidas externas.
-La opuesta, es la salida negada, que funciona en forma exactamente opuesta a la vista precedentemente. Se asimila a una bobina de relé normalmente cerrada, y tiene las mismas aplicaciones que la anterior.

Resumamos lo anterior en un cuadro:

Designación
Símbolo
Estado Lógico “0”
(Reposo o inactivo)
Estado Lógico “1”
(Con tensión o activo)
Entrada
(falso)
1 (verdadero)
Entrada Negada
1 (verdadero)
(falso)
Salida
(falso)
1 (verdadero)
Salida Negada
1 (verdadero)
(falso)

En función de lo anterior, el circuito del relé de la Figura 3 representado en un LD, sería sencillamente lo siguiente:



En este esquema simple, que tiene el aspecto de una escalera, observamos que la entrada 0000 está en el mismo peldaño que la salida 0500, de manera que, cuando la entrada 0000 esté en “1”, también lo estará la salida 0500 y consecuentemente se habrá accionado la bobina del relé. Debe destacarse aquí que la fuente de alterna de la Figura 3, es externa al relé (y al PLC), por lo que no se coloca en el LD. En realidad, el PLC acciona la salida 0500 (o bobina), sin importar que se está comandando con ello, por lo que la fuente de alterna es irrelevante para el PLC.
También debe notarse que tanto la entrada como la salida llevan un número, que más que una identificación se refiere a la dirección del registro de memoria que las identifica. Esto es importante, pues debemos decirle al PLC donde está cada cosa, o, en otras palabras, debemos dar una dirección a cada uno y a todos los dispositivos del PLC. Ampliaremos un poco este tema más adelante.

Ejemplo sencillo de programación mediante LD utilizando los registros


 Vamos a analizar como sería el funcionamiento de un LD correspondiente a un circuito sencillo, para comparar las diferencias:
El circuito de la Figura 7 energizará la bobina cuando, sin abrir la SW2, cierre la SW1 pues de esta forma quedará aplicado a la bobina el potencial de la batería.


Veamos en la Figura 8 como sería este mismo circuito, representado en un LD, incluyendo los números de registros. Recordemos que cada peldaño de la escalera debe contener una o más entradas y una o más salidas. También, la primer instrucción de cada peldaño debe ser siempre una entrada, y la última, una salida o su equivalente.
Obsérvese que con un peldaño de escalera solamente, se reemplazan todos los compo­nen­tes del circuito de la Figura 7, utilizándose una entrada, una entrada negada, y una salida. Por supuesto que, cuanto más complejo es el circuito, mayor es la conveniencia de utili­zación del LD. También se advierte la sentencia “END”, utilizada por la mayoría de los fabricantes de PLC, y que indica que termina el programa y/o la secuencia de los peldaños. Veamos ahora como se utilizan las direcciones. Estas direcciones se vinculan con una cierta área de almacenamiento (archivos de datos) del PLC, de manera que se puede guardar el “estado” de la instruc­ción, o sea si es verdadera falsa. En general, los PLC utilizan direcciones de almacenamiento de 16 bits, que se analizan de esta manera, teniendo en cuenta que en este ejemplo estamos usando dos registros o direcciones de almacenamiento diferentes :


registro
00
bit
15
14
13
12
11
10
09
08
07
06
05
04
03
02
01
00
estado














1
0
registro
 05
bit
15
14
13
12
11
10
09
08
07
06
05
04
03
02
01
00
estado















0


En esta tabla vemos que el registro 00, bit 00 (o sea la entrada 0000) tiene un 0 lógico; mientras que el registro 00, bit 01 (o sea la entrada 0001) tiene un 1 lógico. El registro 05, bit 00 (o sea la salida 0500), tiene un 0 lógico. Como es sabido, el ó 1 lógico, indica si la instrucción es falsa o verdadera.

Nota: En realidad todos los registros vacíos consignados en la tabla, debieron tener un “0”, pero se han dejado en blanco para enfatizar las direcciones que nos interesaban.
El PLC sólo energizará  la bobina o la salida (la hará verdadera), cuando todas las condiciones (entradas) en el peldaño sean verdaderas. Es decir que la tabla de verdad para este ejemplo, sería:


ENTRADAS
SALIDA
ESTADO LÓGICO DEL BIT DE REGISTRO
SW1
SW2
BOBINA
SW1
SW2
BOBINA
Falso
Verdadero
Falso
0
1
0
Falso
Falso
Falso
0
0
0
Verdadero
Verdadero
Verdadero
1
1
1
Verdadero
Falso
Falso
1
0
0


Como siempre, la tabla de verdad muestra todas las posibles combinaciones de estados lógicos de las dos entradas.

Ejemplo de aplicación: Control de nivel en un tanque para líquidos
Este es el ejemplo clásico en el cual se debe ejercer control sobre un actuador que regula el abastecimiento de líquido para un tanque.



El caso más sencillo, aunque no efectivo, consiste en un contacto único (sensor de nivel alto) el cual, al activarse apaga el motor y al desactivarse lo enciende. Pero este sistema tiene el inconveniente que el motor se conmutará muchas veces en poco tiempo, disminuyendo así su vida útil.
La verdadera solución requiere la utilización de dos sensores, que forman una “ventana” del nivel del líquido, donde se tendrá un nivel alto que servirá de guía para apagar el motor, y un nivel bajo con el que se encenderá. (Ver Figura 9)
En este ejemplo, se pretende que el motor de la bomba de llenado fun­cione cuando el líquido esté entre los dos niveles, deteniéndose cuando supere el nivel alto y arrancando cuando alcance el nivel bajo. En este caso necesitaremos dos entradas (los sensores de nivel) y una salida (la bobina de comando del motor). Tengamos presente que:
Cuando los sensores  NO están sumergidos en líquido, están on (verdadero).
Cuando los sensores   SI  están sumergidos en líquido, están off (falso).
Debe darse a cada dispositivo (de entrada o salida) una dirección. Esto le permite al PLC, saber donde están físicamente conectados cada uno de estos dispositivos. Asignemos las siguientes direcciones:


Dispositivo
Nivel bajo
Nivel Alto
Bobina Motor
Relé utilitario interno
Dirección
0000
0001
0500
1000






En la figura 10 se observa lo que sería el diagrama de escalera (LD) para la programación del PLC de este ejemplo. Nótese que se está usando el relé utilitario interno (ver página 4), designado como 1000, en este caso con una bobina (salida) y dos contactos (entradas). Al ser simulado internamente en el PLC, (no existe físicamente) puede tener tantos contactos como se requiera (o como lo permita la capacidad de memoria del PLC).



Debe recordarse siempre que la razón más frecuente para usar PLC en distintas aplicaciones, es el reemplazo de relés físicamente reales. Los relés utilitarios internos hacen posible este reemplazo. La cantidad de relés utilitarios internos es variable dependiendo de la marca, y por supuesto, del tamaño del PLC, pero es común que un PLC pequeño tenga cientos de ellos, y en los más grandes, cientos de miles. Por lo general, los PLC traen muchos más de los necesarios. Esto es lógico, si pensamos que con unos pocos bits de memoria se simula un relé utilitario interno.
Pero veamos como funciona el PLC que hemos programado para el control del nivel de líquidos. Con referencia a la figura 11, partimos del caso en que el tanque está completamente vacío, de manera que los sensores no están sumergidos; están en un lógico, y en consecuencia ambas entradas, la 0000 y la 0001 están en verdadero y se desprende del LD que la salida 1000 (relé utilitario interno) está igualmente en verdadero, y consecuentemente tam­bién lo están los contactos o entradas 1000 y la sa­li­­da 0500. Si la salida 0500 en verdadero, esto sig­ni­fica que el motor de la bomba está funcionando y gra­dualmente se va llenando el tanque de la figura 9.
Cuando el líquido alcanza el nivel bajo del tanque, el correspondiente sensor pasa a un lógico, o sea falso, es decir que la entrada 0000 del LD se volvió  falso, como se observa en la figura 12. Sin embargo, en esta condición, el relé utilitario interno 1000 se mantiene verdadero pues está conectado a través de su propio contacto 1000 y de la entrada 0001 correspondiente al sensor de nivel alto, y bajo estas condiciones la bomba sigue llenando el tanque. Esto es posible gracias al relé interno 1000 (aquí vemos su utilidad), cuya función en este caso es producir un enclavamiento para mantener en verdadero la salida 0500.
Continuando con el análisis, cuando el nivel de líquido alcanza el sensor de nivel alto, éste transforma la entrada 0001 en falso, y se produce entonces la situación mostrada en la figura 13 y por lo tanto la bomba se detiene dejando de llenar el tanque.





A medida que se va utilizando el líquido, se va vaciando el tanque; cuando el nivel está por debajo del sensor de nivel alto, se da la situación de la figura 14, de la que se comprende que tampoco funciona el motor de la bomba en estas condiciones. Finalmente, cuando el tanque se vacía completamente, volvemos a la situación analizada en la figura 11, completándose el ciclo.
Con este sencillo ejemplo alcanzamos a comprender la gran utilidad y economía que representa la utilización del PLC a nivel de control de procesos industriales. Sin embargo, el PLC no solo es conveniente desde el punto de vista del reemplazo de relés, sino que es posible, a nivel de software, agregar herramientas valiosísimas para el control de procesos. Veremos las más importantes en los temas siguientes.

INSTRUCCIONES LATCH O DE ENCLAVAMIENTO



Con lo visto hasta el momento, comprendemos perfectamente como podemos hacer para reemplazar el relé de la figura 3 por un PLC, para accionar la campanilla. Pero (siempre hay peros) esto tiene un inconveniente. Si se trata de una campanilla que debe sonar mucho tiempo, hay que tener el dedo sobre el pulsa­dor todo el tiempo que deseamos que suene la cam­panilla. Esto se resuelve mediante la instrucción latch, utilizada para la retención del valor de una posición de memoria en el PLC. Son de uso frecuente en enclavamientos por medio de pulsa­dores, es decir, con solo activar una entrada por un instante, el PLC captura la señal y la deja perma­nente dentro del programa aunque dicha señal haya desaparecido. Un latch puede activarse con un pulso a través de su entrada set, y desactivarse por medio de su entrada reset. Cada una de estas entradas al latch se activan a través de contactos, que pueden ser posiciones de memoria, o entradas físicas. El LD de la figura 15 muestra como se usa el latch en un programa: Al pulsar 0000 se activa la entrada SET del latch, que a su vez activa y mantiene en verdadero la entrada L500, energizando la salida 0501, manteniéndose en este estado si no hay otra entrada. Cuando se pulsa 0001, se activa la entrada RESET del latch, que a su vez desactiva y mantiene en falso la entrada L500.
Aquí puede plantearse una pregunta interesante: ¿Qué pasa si se pulsan las entradas 0000 y 0001 simultáneamente? ¿La salida 0500 quedará enclavada en un verdadero o en un falso?
Para respondernos esta pregunta debemos pensar en cómo se realiza la secuencia de escaneo en el LD. La escalera siempre se escanea desde arriba hacia abajo y de izquierda a derecha. Teniendo esto presente, podemos dar respuesta a las preguntas anteriores.


TEMPORIZADORES O TIMERS
Esta es una herramienta utilizada para activar y desactivar una variable dentro del programa de acuerdo al tiempo que se haya especificado. Así es posible programar una salida, para que en un determinado tiempos encienda o se apague un dispositivo externo, por medio de un temporizador que solo existe a nivel lógico. Los temporizadores de un PLC se pueden pensar como un cronómetro regresivo, en el cual se debe indicar el tiempo que durará el conteo, se debe dar inicio a dicho conteo, y cuando éste finalice o llegue a cero, da una señal que para el PLC será la activación o desactivación de una variable del programa.

Existen varios tipos de temporizadores; los más comunes son:

-On Delay Timer (TON) o temporizador de retardo de conexión, y
-Off Delay Timer (TOF) o temporizador de retardo de desconexión


Veamos por ejemplo como funciona el timer TON. El tiempo del timer se cuenta en función de los “tics” del reloj del PLC, y cada tic puede ser de 1 ms, 10 ms, 100 ms, otros. Además el timer se programa  con una determinada cantidad de tics transcurridos los cuales, es accionado el contacto comandado por ese timer. Además la cantidad de tics puede variar de 0 a 9999 para un PLC de 16 bits trabajando en BCD (decimal codificado en binario)  o de 0 a 65535 para el binario de 16 bits. Entonces el temporizador tiene: una entrada “enable” que inicia el conteo de tiempo, y un contacto comandado por el timer, que se activa cuando el conteo ha alcanzado la cantidad de tics programados para ese timer.
Por ejemplo, el temporizador de la Figura 16 comenzará el conteo de tiempo cuando la entrada 0001 se vuelva activa, y cuando alcance los 100 tics, hará activa entrada T000, por él comandada, que a su vez accionará la bobina de salida 0500. Si el temporizador tiene un incremento de 100 ms (tiem­po de cada tic), entonces 0500 será accionada 100 x 100 = 10.000 ms = 10 s después de haber accionado la entrada 0001. En este tipo de temporizador, se cumple este funcionamiento siempre que 0001 se mantenga en verdadero luego de haber sido accionada; es decir, en el momento en que 0001 vuelve a falso, se resetea el contador, volviendo a cero, y por lo tanto desconecta 0500. Es de destacar que no pueden haber en el mismo PLC, dos temporizadores con la misma denominación, pues utilizarían los mismos registros de memoria, lo que no es posible.
Hay otros tipos de temporizadores con funciones un tanto más complejas, pero siempre su principio de funcionamiento es similar al expuesto precedentemente.


CONTADORES
Un contador funciona de forma parecida a un temporizador, solo que en lugar de que la base de conteo sea el tiempo, en este caso es la activación de una entrada, una salida, o de una posición de memoria.
Un ejemplo de aplicación de este sistema, es el de conteo de productos a ser empacados en una caja. Si un sensor se activa cada vez que un producto pasa frente a él, y en la caja caben solamente 30 de ellos, en el PLC puede programarse un contador que lleve la secuencia de la cantidad de veces que se activa dicho sensor, y cuando llegue a 30 emita una señal que comande el cambio de caja.
Como en el caso de los temporizadores, hay también varios tipos de contadores:
-Contadores “Count up” (CTU), que cuentan 1,2,3,…
-Contadores “Count down” (CTD), que cuentan 9,8,7,…
-Contadores “Count up-down” (UCD), que cuentan 1,2,3,4,3,2,3,4,5,…
Un contador sencillo tipo CTU o CTD, requiere tres cosas para su funcionamiento:
1. Una entrada por donde ingresan los pulsos que deseamos contar.
2. La posibilidad de programar la cantidad de pulsos que deseamos contar hasta que el contador reaccione.
3. Una entrada que al activarse, resetea el contador.


El contador UCD requiere una entrada adicional, ya que una cuenta en forma ascendente, y otra descendente.
Por motivos similares a los expuestos para los temporizadores, los contadores cuentan típicamente: de 0 a 9999; - 32.768 a + 32.767; o 0 a 65.535.


En la figura 17 se observa el LD de un contador CTU, denominado C000. Este contador está progra­mado para contar 100 pulsos por la entrada 0001, antes de accionar el contacto C000 y conse­cuentemente la salida 0500. El sensor o entrada 0002, resetea el contador. Es importante destacar que estos contadores cuentan pulsos cuando la entrada pasa de falso a verdadero o de off a on, pero no a la inversa.
En la figura 18 se observa el LD de un UDC, con una entrada adicional respecto del contador de la figura 17. En este caso además, el contador deberá contar hasta 1000 antes de accionar la entrada UDC000. La entrada 0002 se utiliza siempre para resetear; la entrada 0001 cuenta hacia arriba cuando se hace verdadera, y la 0003 hacia abajo (descuenta) en idénticas condiciones. En este conteo, la salida 0500 se haráverdadera, cuando se llegue a 1000.
De nuevo se hace notar que el contador acumula valores solo en transiciones de off a on de los sensores de entrada, pero no a la inversa.

http://www.profesormolina.com.ar/tecnologia/plc/introd.htm
http://www.profesormolina.com.ar/tecnologia/plc/auto.htm
http://www.profesormolina.com.ar/tecnologia/plc/plc.htmb



MONTAJE Y DESMONTAJE DE LAS PARTES PRINCIPALES DE UN LOGO! SIEMENS


PRESENTACIÓN DE LOGO!

















DESMONTAJE DE LOGO!























































MONTAJE DE LOGO!






















FIN DE MONTAJE DE LAS PARTES DEL LOGO!






PLC-1: PROGRAMACIÓN DE PLC

INTRODUCCIÓN A LA PROGRAMACIÓN

En este circuito de mando; Cuanto vale el estado de la lámpara (Q1) en términos de PLC?



Si su respuesta es que la lámpara esta apagada o su estado es CERO (0), es que esta pensando solo  en términos de un circuito eléctrico. .
En términos de PLC para dar la respuesta hay que ver el "programa", así por ejemplo si aplicamos los siguientes programas:


Programa A:

 Programa A: No ejecuta el proceso Q1 (Sin señal en I1, no prende la lámpara)



Programa B:

Programa B: Ejecuta el proceso Q1 (Sin señal en I1, se prende la lámpara)




Aquí:



Es el símbolo de contacto normalmente abierto: Se consulta si hay señal.  Si hay señal en el contacto es un  "Si lógico".


 
Es el símbolo de contacto normalmente cerrado: Se consulta si no hay señal. Si no hay señal en el contacto es un "Si lógico". Ej. Si fuera los contactos de un relé o un pulsador normalmente cerrado, cuando se abra el relé o el interruptor (es decir ya no hay señal) entonces "se prende Q1".


Es el símbolo del proceso de salida, aquí corresponderá físicamente a una salida de "relé" que tiene el PLC, lo que hará el cierre del circuito eléctrico para que prenda el foco.


Entonces ya hemos escrito el primer programa ladder, o de contactos o en escalera.  Otras alternativas de escritura son el "Plano de Funciones" o conocido como "Bloques Lógicos", una alternativa es utilizar el juego de instrucciones propias para cada PLC (esto es muy particulares de cada PLC al menos en su neumónica).
En este portal se resolverán aplicaciones en PLC; y en muchos casos primero se resuelven en diagramas eléctricos para las aplicaciones comunes (con cableados, interruptores, contactos, relés, temporizadores, p.ej.) y luego serán desarrollados sus equivalentes en ladder y en plano de funciones. Si el caso se presenta con un diagrama eléctrico, entonces el lenguaje ladder será primero empleado por la facilidad de construcción de los diagramas lógicos por su similitud con los circuitos eléctricos.

Entorno de Programación Empleados para las Aplicaciones Básicas

Para la práctica del logo la iniciaré con el desarrollo de aplicaciones "aisladas" que pueden resolverse en pequeños PLC compactos.  Utilizaré el Micrologix 1100 de Allen Bradley y el Logo! de Siemens. 

En general para el manejo de un PLC se requieren de 2 programas:

  • Programa de Interface PC-PLC (o conexión)
  • Programa de Programación




Para el desarrollo de lo mostrado estoy utilizando el PLC Micrologix 1100 de Allen-Bradley (Producto de Rockwell Automation).

El software de interface es el RSLinx Classic, se requiere de un puerto serial en la PC.
Y para su programación estoy utilizando el programa  "RS Logix 500"; este otorga el entorno de programación ladder.






PLC Micrologix 1100

Entradas digitales: 10. Entadas analógicas: 2. Salidas digitales: 6
Capacidad de expansión hasta 4 módulos de señales digitales, analógicas, RTD, termocuplas... Ver especificaciones. Conexión RS-232.
Programación con jugo de instrucciones o utilizando el software RSLogix 500 basado en programación ladder, no incluye simulador. Incorpora funciones PID.

También se utilizará el PLC Logo de Siemens



Logo! y Logo TD (HMI)
Entradas digitales: 8; expandible hasta 24.
Entradas analógicas:4  expandible hasta 8 (0 a 10 V o 0 a 20 mA o PT100)
Salidas digitales: 4; expandible hasta 16; con relays de 5A o transistores
Salidas analógicas:0; Expandible a 2. Conexión USB
Programacion con Logo!comfort, mediante diagramas ladder y diagramas de funciones.
Logo!comfort también es un simulador fuera de linea y tambien hace la conexión con el micro PLC Logo!
Incorpora funciones PI, rampa, amplificador, entre otras

Documentación Recomendada:

Allen Bradley - Micrologix y RSLogix 500:
Documentación de Micrologix 1100: http://ab.rockwellautomation.com/Programmable-Controllers/MicroLogix-1100#/tab5
Descargar de este sitio el Micrologix_1100_programable_controlers.pdf
Descargar de este sitio el manual RSLogix 500 getting results guide
En este otro portal se encuentran varios documentos y ejemplos útiles http://www.infoplc.net/Descargas/Descargas.htm
    De este portal se ha extraído:
    Micrologix 100. Timing, Contring, Data-Handling Instruction
Este otro documento le ofrece una vision rápida de la programación con RSLogix 500: Micrologix with Rs Logix Tutorial.pdf.


Siemens - Logo! y Logo! Soft Comfort:

Soporte: http://support.automation.siemens.com/WW/llisapi.dll?func=cslib.csinfo2&aktprim=99&lang=es
Tutorial en linea de Logo!: https://infonet.siemens.es/Apli_Industry/formacion/Logo/auswahl.html
encontrará la explicación interactiva de las diferencias entre WLC, PLC y Modulo Lógico Logo, ejemplos de aplicación



Descargar de este sitio:Manual de programación con Logo! Soft Comfort
Descargar de este sitio: Manual de usuario de Logo!

Logo!
Se puede trabajar tanto diagramas ladder (escalera o de contactos) o en diagrama de bloques, y en su editor "Logo! Soft Comfort" permite transformar de una forma a otra, la que se crea en otra hoja de edición, pero la transformación no siempre me parece optima y ordenada.  Internamente el Logo! trabaja como un programa de bloques; y aunque suba los programas desde un programa en Ladder siempre al descargarlos se devolverán en forma de bloques.  Internamente Logo! genera miles de pulsos por ciclo de programa (un ciclo de programa es como un barrido que hace a todas las instrucciones del programa); y cualquiera de sus entradas digitales pueden aplicarse hasta 4HZ (4000 pulsos por segundo) y sus entradas especiales I3, I4, I5, I6 cuentan más rápido de 5Hz.

Programación en Ladder y Bloques. Aplicación: Arranque Directo

El arranque directo es una aplicación muy sencilla para ser hecha con un PLC, sin embargo es útil para la explicación de las funciones básicas para la comprensión rápida de la programación; y el encender un motor puede ser pensado como dar inicio a una acción.



Diagrama Eléctrico:




Lista de Ordenamiento:

Designación
Descripción
Operando (*)
F2F
Relé térmico (NC)
I:0/1
S0Q
Pulsador de parada (NC)
I:0/2
S1Q
Pulsador de marcha (NA)
I:0/3

Salidas


Designación
Descripción
Operando (*)
K1M
Contactor principal
O:0/1
(*) Operando de Micrologix 1100: I: Entrada digital, O: Relé de salida. I: 0/n; n es el número de la salida o entrada.


Diagrama Ladder (Escalera) o de Contactos:

Versión en Logo!






El relé térmico F1F y el pulsador de parada S0Q con contactos eléctricos físicamente  NC, por lo que su resultado es "1" a la entrada de S1Q o del contacto auxiliar K1M.
Aquí es necesario aplicar una función de memoria (para enclavar la alimentación a K1M por I3), una forma común es la autoalimentación, como se muestra en el circuito con Logo!. Se consigue colocando un contacto auxiliar NA del relé principal (K1M) paralelo al pulsador de marcha (S1Q). 
Si F1F o S0Q se abren se cae K1M
Una forma más simple es utlizando las bobinas Set (para la conexión)  y Reset (para la desconexión), en Micrologix se conocen como Latch y Unlach, aquí la solución:





Plano de Funciones o Diagrama de Bloques:

Una solución con Logo!:





Esta otra alternativa, me parece más clara:






(Es recomendable marcar en la ficha de Simulación que los bloques F1F y S0Q son pulsadores normalmente cerrados)




Es la función lógica "AND", la salida es verdadera (estado 1) si todas las cuatro entradas son verdaderas (estado 1), es decir los contactos están cerrados.



Es la función lógica "OR", la salida es "1" si por lo menos una de las cuatro entradas tiene el estado "1"



 Es la función lógica "NOT", La salida es "1" si la entrada es "0"; la salida es "0" si la entrada es "1", es decir se invierte el estado de la entrada.



Es la función lógica "NOR", la salida es "1" si todas las cuatro entradas tienen el estado "0", Un  bloque "NOR" es igual al bloque "OR" aplicando un bloque "NOT" a su salida.



Es la función lógica "NAND", la salida es "0" solamente si todas las entradas tienen el estado "1".  Este bloque es la negación del bloque "AND"



Bloque de entrada digital. Representa una de los bornes de entrada del PLC.




Bloque de salida digital. Representa los bornes de salida de un relé del PLC.
Otra solución es con el relé autoenclavador como se desarrolla más abajo.






Diagrama de Conexiones:




Función SET Y RESET.

En micrologix se conoce como Latch y Unlach,  En Logo! está disponible el Bloque Set/Reset o Relé autoenclavador.
En Micrologix como vimos arriba para el ejemplo de arranque directo.




Una señal de entrada de S1Q enclava (Latch) a K1M y una señal de salida (de S0Q o F1F) desenclava (unlach) a K1M.




LOGO!: Relé autoenclavador:

 En Logo! se tiene un bloque de Relé autoenclavador:  Una señal de entrada en el Pin 1 activa la señal de salida y esta cesa hasta que se dé una señal de entrada en el Pin 2.  Para el ejemplo de arranque directo se puede escribir:


En logo es mi forma preferida.  


Ya que el relé térmico F1F y el pulsador de parada S0Q con contactos eléctricos físicamente  NC (En los diagramas de bloques no hay entrada NA, y NC como en el diagrama ladder), por lo que se debe 
negar la entrada utilizando el bloque  que es el "bloque de negación (NOT)". En vez de utilizar este bloque se tiene en Logo la alternativa de marcar la negación en el pin de entrada al Relé (se hace un golpe con el botón izquierdo en el pin de entrada y este queda con la marca de negación "de un punto"):





(Es recomendable marcar en la ficha de Simulación de los bloques F1F y S0Q que son pulsadores normalmente cerrados, o bien al momento de la simulación cerrarlos.)

En los diagramas de contactos, el "relé autoenclavador" no se muestra con salida, por lo que debe insertar un "contacto" con el valor del "relé autoenclavado", como se muestra:






Aquí el contacto SF002 contiene el valor del rele SF002. Adicionalmente obsérvese que no hay bloque o función de negación, ya que las entradas F1F y S0Q son contactos NC. Un bloque de contacto NC se comporta como una negación de un contacto abierto; es decir no hay señal dan un si lógico (se ejecuta el proceso y dan un pulso o señal al pin Reset que desactiva al Relé autoenclavador).
En los diagramas ladder, se utiliza esta técnica de "contactos" para "llevar" los valores de salida de los bloques de funciones especiales (contadores, temporizadores, y otros).

Memorias con Logo! : MARCA

La memorias son utilizadas para guardar los valores de salida; en Logo! se conocen como "marca" y se tiene 2 tipos:
Marcas Internas: IM. Solo se utilizan en los diagramas de contactos y aunque aparentemente se está guardando el valor de estado, lo que se está haciendo es ordenar la conexiones por lo que no existen en los diagramas de flujo.  No consumen recursos del sistema.
Marca, M: Almacenan valores digitales o analógicos (valores de entrada) y lo devuelven a su salida. En Logo! las marcas digitales van de M1 a M27 y las marcas analógicas de AM1 a AM6. Hay algunas marcas reservadas por el Sistema, estas son: M8 (marca de arranque), M25 (retroiluminación del display de Logo), M26 (retroiluminación de la pantalla TD del logo), M27 (marca para juego de caracteres de aviso)


Ejemplo





Aquí, tanto F1F y F0Q son contactos NC, entonces la salida IM1 es "1", se utiliza luego esta marca con un contacto cerrado "1M1" para negar este resultado y dar una señal de desactivación al Relé autoenclavador. SF002.
Tal vez la versión preferida es utilizando  los estados de las funciones F1F y F0Q con igual correspondencia a sus estados físicos, como en el siguiente el diagrama:








Temporizadores: Función Time On Delay (TON). Retardo a la conexión.

Aplicación: Arranque Directo con encendido temporizado:

Diagrama eléctrico:




Según este diagrama, después de la conexión un tiempo indicado en el temporizador K1T se desconecta K1M.
K1T es un temporizador TON o Time on Delay (o temporizado en la conexión), después de la señal (encendido de K1M), se realiza la cuenta de un tiempo indicado y luego da señal de salida (como K1T es un contacto NC, con la señal de salida se abre apagando K1M).


Diagrama de contactos en Logix Pro




y el diagrama de bloques desarrollado para Logo!:



El bloque TON (Time On Delay o Retardo a la Conexión: Cuando se da la señal de entrada al bloque TON, el bloque genera una salida después de un tiempo programado). Si la señal de entrada al bloque TON se interrumpe entonces el temporizador se detiene y se restablece a cero.
Lo mismo en diagrama ladder (escalera): 




y en versión con el relé autoenclavador:


En este caso se produce lo llamado como recursividad: el Relé autoenclavador da el pulso para el TON el mismo que también debe dar la señal al pin 2 del mismo relé autoenclavador; para hacer esto se debe emplear una marca (M1), como se muestra en el diagrama. Otros casos de recursividad se mostraran más adelante.
Temporizadores: Función Time OFF Delay (TOF). Retardo a la desconexión.

Aplicación: Arranque Directo con encendido temporizado:

Arriba se resolvió el arranque encendido temporizado utilizando una función TON (Time On Delay o Retardo a la Conexión: Cuando se da la señal de entrada al bloque TON, el bloque genera una salida después de un tiempo programado). Si la señal de entrada al bloque TON se interrumpe entonces el temporizador se detiene y se restablece a cero.
Ahora utilizando la función TOF (Time Off Delay o Retardo a la desconexión: después de cesar una señal de entrada al bloque TOF, el bloque genera una salida y la desconecta después de un tiempo programado). Una nueva señal de entrada detiene al bloque TON.  Al inicial el programa si no hay pulso de entrada el bloque TOF no genera salida.


Aquí los diagramas:





y en versión con el relé autoenclavador:


Aquí las soluciones con TOF, el tiempo se inicia cuando se libera el pulsador de marcha S1Q, pudiendo ocasionar un retardo adicional que pudiera depender del operario en liberar al pulsador; en este caso prefiero las soluciones con TON. (Ver el diagrama)






Temporizadores (continuación):  

Aplicación: Arranque Directo con encendido retardado:

En este caso se dará el encendido después de un tiempo de accionar al pulsador de arranque. La solución TON:
 Solución TON:




La solución con TOF:



Aquí las soluciones con TOF, el tiempo se inicia cuando se libera el pulsador de marcha S1Q, pudiendo ocasionar un retardo adicional que pudiera depender del operario en liberar al pulsador; en este caso prefiero las soluciones con TON.


CONTADORES
En logo el bloque contador tiene por símbolo:
,según como se parametrice, una señal en el pin1 incrementa o decrementa un valor de contaje interno.  Se puede parametrizar para que se active la salida si se alcanza un valor indicado y para que se desactive la salida si se alcanza un valor indicado. Una señal en el pin2 inicializa a cero el contador. Una señal en el pin 3 hace que la cuenta sea regresiva..





Para el programa:






Es el bloque de conector abierto. Se debe colocar "Contactos Abiertos", (X)  en todos los contactos de salida que no se utilicen, también pueden utilizarse "Marcas", pero esto no es preferido ya que el número de "Marcas" es limitado. Como en el bloque de "textos de aviso" de este ejemplo o en otros bloques operadores, su uso no es requerido en los bloques de salida Q.
 


Nota: El simulador en Logo! Soft Comfort no advierte ningún problema si se dejan contactos de salida sin uso, pero al momento de transferir el programa al PLC se indicará que el programa ha sido transferido con errores y puede no funcionar correctamente.

 Configuramos:




Cuando el contador alcance 5 se mostrara el resultado en el Logo-TD, y cuando alcance el valor de 10 se dejará de mostrar el resultado en el Logo-TD, la cuenta seguirá internamente.
La versión en diagrama ladder:



Es importante colocar el contacto de salida no utilizado del logo TD a una marca (en este caso "M1")
Remanencia
En la ventana de configuración anterior se ha marcado la casilla "Remanencia" esto significa que los valores se mantendrán almacenados en el PLC después que se apague o se corte la electricidad. Cuando se vuelva a encender el sistema se continuará con los valores almacenados; esto es útil para llevar una cuenta total de operación. Muchas otros bloques cuentan con una casilla para remanencia de valores.

Protección de los Parámetros
Si en los parámetros de un bloque hay una casilla de verificación Protección (como en la ventana del bloque contador mostrado arriba), esta puede activarse para proteger los parámetros.  Con esto se especifica si los parámetros deben poderse visualizar y modificar en el LOGO! en el modo de configuración..

LOGO  TD Display

Logo tiene una pantalla que nos permite la entrada y visualización de datos: Logo TD display.,que cuenta con 4 filas de 12 caracteres.. Su uso es simple ya que no requiere configuración y se lo usa directamente desde el software Logo! SoftComfort con el bloque de "Texto de Aviso". Lo malo es que no tiene bloques para la entrada de datos.  Así si desea hacer una entrada de datos tendrá que programarlo todo.
Veamos uso en la  aplicación con 2 contadores:



Es importante colocar el contacto de salida no utilizado del logo TD a una marca "X1"
La pantalla  de configuración del Logo TD:



Para colocar el contador basta arrastrar con el puntero del mouse el parámetro que se quiera mostrar sobre la cuadricula que representa la ventana. En una aplicación también puede negar el pin 1 en el bloque de "texto de aviso" para que se muestre siempre el Logo TD., haciendo esto en la aplicación anterior, tenemos:





Otra alternativa, para dar permanentemente la señal "1"  en la entrada del bloque de "texto de aviso" es utilizar el bloque de "Estado 1" , así sería:




Es importante colocar "Contactos Abiertos", (X)  en todos los contactos de salida que no se utilicen, también pueden utilizarse "Marcas", pero esto no es preferido ya que el número de "Marcas" es limitado.

Nota: El simulador en Logo! Soft Comfort no advierte ningún problema si se dejan contactos de salida sin uso (como se indica aquí que se utilicen Marcas o contactos abiertos), pero al momento de transferir el programa al PLC se indicará que el programa ha sido transferido con errores y puede no funcionar correctamente.

Operador de Aritmética Analógica

Logo! tiene un bloque de "Aritmética analógica" 
este calcula un valor de resultado "AQ" de una ecuación formada por operandos y operadores definidos por el usuario, Tiene las cuatro operaciones básicas (+ - / * ), por ejemplo aplicado en el ejemplo de un contador vamos a mostrar en la pantalla de salida la cantidad de pares contados.



Lo que queremos es que se indique: en la pantalla  del Loto TD la cantidad de pares que se tienen:

La operación seria dividir la cuenta en el contador entre 2. Con Logo! si la división tiene un resultado decimales más de  0.5 el resultado es redondeado al entero superior. Para     evitar esto (truncamos los decimales)  hacemos la siguiente operación: ((contador x 1'0) - 5) / 20, esto se configura en la pantalla del operador de Aritmética Analógica de la siguiente forma:



Aquí PRI: indica la prioridad de la ejecución del operador: H: es primero seguido de M y luego L.

Recursividad - Aplicación en un Contador de 0 a 10
Vamos a utilizar como entrada y salida el Logo! TD display. : Cuando uno oprime la flecha derecha se incrementa en uno la cuenta, cuando uno oprime la flecha izquierda se decrementa en uno la cuenta. La cuenta va de 0 a 10 en pasos de uno.  El resultado se muestra en el Display en una barra que avanza.

Aquí el diagrama:



El display muestra un gráfico de barra que avanza según el contador (desde 0 a 10):





Voy aplicar el programa de arriba para manejar una salida análoga de 0 a 10 V.


TRATAMIENTO DE SEÑALES ANALÓGICAS

Principios básicos

Analógico y digital

Una señal analógica es un valor que representa a una magnitud física, estas pueden adoptar un valor cualquiera dentro de un rango definido. Lo contrario de analógico es digital. Una señal digital sólo puede tener dos estados, a saber: 0 y 1, es decir "off" y "on", respectivamente.De la señal eléctrica al valor analógico.

Proceso básico

Entrada Analógica: "Magnitud Real" a Magnitud eléctrica
Una "magnitud real" o la magnitud física (Ejemplos: temperatura, presión, velocidad, otros..) debe convertirse a una magnitud eléctrica. Un sensor externo realiza esta conversión, y esta debe ser con una relación lineal.
Es común que una magnitud física se convierta por el sensor (valores manejados):

Tensiones o Voltaje:

    0 a 10 V

    -10V a +10V

Intensidades o Corriente:

    0 a 20 mA

    4 a 20 mA
Nota: LOGO! puede leer en una entrada analógica tensiones entre 0 V y 10 V, o bien intensidades entre 0 mA y 20 mA.
Normalización:
Un PLC convierte a la señal electrica que toma en su entrada analógica en un "valor normalizado". El valor normalizado es un número para su procesamiento en el programa.
En LOGO! la magnitud eléctrica se convierte en un valor comprendido entre 0 y 1000; y es un valor analógico normalizado.
Para poder adaptar el valor normalizado a la aplicación, LOGO! calcula el valor analógico a partir del valor normalizado en una función especial analógica, considerando la ganancia (Gain) y el decalaje de origen (Offset).
Escalamiento:

Para adaptar el "valor normalizado" a un "Valor Real" en una salida, por ejemplo mostrar el valor de la magnitud física en un display, hacemos el siguiente calculo, lo explicamos con un ejemplo:

Tenemos una Magnitud Real de Temperatura de -50 C a 100 C que será capturada y procesada en el PLC Logo! Señal eléctrica del sensor:  0 ---- 10V ( y corresponde igual al rango de la entrada analógica, en este ejemplo):

Magnitud Real, temperatura C:
-50 ..... 100 
Señal eléctrica del sensor (entrada analógica), V
0 ..... 10
Rango de la entrada analógica, V
0 ..... 10
Valor normalizado:
0 ...... 1000

Gráficamente:




La normalización es una función lineal, aquí tenemos 2 puntos de la función de normalización: para una entrada analógica de 0 V le corresponde un valor normalizado de 0 y para una entrada análogica de 10 V le corresponde un valor normalizado de 1000.

Esto obedece a la ecuación de una recta:  Y = m X + b
Y : es el valor real
X : es un valor normalizado
m : Gain o Ganancia
b :  Offset
Tenemos:



y en el ejemplo, la ganancia es:




y el Offset o desplazamiento es:


Otro ejemplo, suponiendo que el sensor nos da otro rango de señal:

Magnitud Real, temperatura C:
-50 ..... 100 
Señal eléctrica del sensor (entrada analógica), V
2 ..... 10
Rango de la entrada analógica, V
0 ..... 10
Valor normalizado:
200 ...... 1000


Observe que en este caso para una entrada analógica de 2 V le corresponde un valor normalizado de 200 y para una entrada anlogica de 10 V le corresponde un valor normalizado de 1000, estos son 2 puntos de la funcion lineal de escalamiento.

Calculando:

Gain = ( (100 - (-50) ) / (1000-200) A
Gain = 0.1875
Offset = -87.5



Puede comprobar que se cumpla: Valor real = (valor normalizado) * Gain + Offset.


Entradas Analógicas
En Logo las entradas son numeradas consecutivamente.  El modulo Logo! 12/24, se configura para tener dos o cuatro entradas analógicas. Por omisión Logo! esta configurado para 2 entradas analógicas propias. Con un módulo de expansión de entradas analógicas AM2: A1 y A2 corresponden a las entradas I7 y I8 del Logo!, y la A3, A4 corresponderán al módulo de expansión AM2. Con dos módulos AM2: A1 y A2 corresponden a las entradas I7 y I8 del Logo!, y la A3, A4 corresponderán al primer módulo de expansión AM2 y A5, A6 al segundo módulo AM2.
Logo! soporta hasta 8 entradas analógicas o 4 módulos de expansión AM2, en ese caso A1, A2 corresponderá al primer módulo AM2 y sucesivamente.
Si Logo! se configura para tener cuatro entradas analógicas A1, A2, A3 y A4 corresponden a las entradas I7, I8, I1 y I2 respectivamente.  A5, A6 y sucesivamente corresponderán a los módulos de expansión AM2.


Programa:
Para el primer ejemplo, tenemos:




El valor de temperatura va de -50 a 100 C. El sensor entrega una señal de salida de 0 a 10 V
La entrada analógica de Logo! convierte esa señal analógica en un valor digital desde 0 a 1000 (valor que se procesa internamente)

Esa misma entrada, ya digital; de 0 a 1000 se entrega a la salida analógica AQ1 del módulo de expansión AM2 (no olvidar que una salida analógica en Logo! debe tener como entrada un número entre 0 a 1000). La señal de salida será de 0 a 10V o de 4 a 20 mA.
Un amplificador analógico es útil para visualizar en el display el valor real de la VP (Variable de 
Proceso).
. Este bloque toma la señal analógica de entrada y hace el escalamiento de valor de entrada de 0 a 1000 a valores reales. En la pantalla de configuración de este bloque:




Aquí, seleccionamos el sensor, el rango de medida de la variable real y Logo! calcula Gain y Offset. Este bloque también se emplea para normalizar el resultado de operaciones analógicas que se conectan, por ejm., a una salida análogica (ya estas solo procesan valores dentro del rango de 0 a 1000).

En el TD-Display solo estoy mostrando la salida del Amplificador Analógico.
El "conmutador analógico de valor de umbral" lo estoy utilizando para prender la salida Q1 cuando el valor de temperatura este entre 20  y 50, la configuración del bloque es:


Su configuración es similar al "amplificador analógico" y en el "Valor de umbral" indicamos el rango donde se activa y desactiva la salida.

Aplicación: Generador de salida de voltaje variable.

Para la prueba de una aplicación requiero tener una salida variable de voltaje (y corriente) a fin de utilizarla para simular la entrada de un transmisor y también para controlar dispositivos como un variador de frecuencia.
Utilizaré la aplicación del contador de 0 a 10 que se controla con las teclas de función y presenta la cuenta en una barra gráfica, que se desarrolló arriba; para tener una salida de 0 a 10 voltios en paso de 1V. Aquí el programa:



Solamente he añadido un operador analógico y una salida analógica.
El operador analógico multiplica el resultado del contador por 100 y lo entrega a la salida analógica, esto se configura así:






APLICACIÓN: Máquina llenadora de líquidos de un cabezal.

Descripción:


Es un equipo para el llenado de envases cilíndricos o cónicos de metal o plástico con líquidos o pastas de baja y mediana viscosidad.
Los baldes vacíos se colocan al inicio de una faja transportadora.  Al otro extremo de la faja transportadora salen los baldes llenos.  El equipo se complementa principalmente con un alimentador de baldes, colocadora de tapas, cerradora de tapas que pueden ser resueltos con operaciones manuales, con equipos mecánicos o automatizados.
Aquí se resuelve la automatización del llenado..

Descripción Tecnológica:

Se resuelve con una llenadora volumétrica electroneumática: con mandos eléctricos y actuadores neumáticos. Los baldes son trasladados por una faja transportadora; y sensores y frenos lo detienen debajo de un cabezal de llenado.  El volumen del llenado es "medido" por el desplazamiento de un pistón que recorre el cilindro de la "bomba" de llenado; entonces se regula el volumen variando la posición del límite de carrera "S6" en el diagrama de abajo.  

Funcionamiento:

Al inicio, los posición de los pistones es tal como se muestra en el diagrama de abajo. No debe haber ningún balde bajo el cabezal.
Con la marcha, se arranca la faja transportadora que transporta la fila de baldes vacíos hacia debajo del cabezal de llenado (y esto no se detiene hasta que se oprima el botón de parada S2).
El primer balde presiona S4 y se lanza el freno que lo detiene y se inicia el llenado (se levanta el pistón de la bomba, desde la posición S5 hasta S6). S6 tiene una posición deslizante que el operario regula, así regula el volumen de llenado.
Cuando se alcanza el S6 se termina el llenado y el pistón de la bomba desciende, y solo cuando se alcance S5 se libera el freno, y se reinicia el ciclo.
El modo de lavado es utilizado para lavar el equipo con solvente; para esto se coloca un lavatorio bajo el cabezal y el pistón de la bomba funciona sin detenerse y sin activarse la faja y el freno..

Esquema Tecnológico:





Aquí el diagrama para el PLC Logo!:





S4 debe colocarse para actuar un solo un pulso; es decir el balde cierra S4 y avanza unos centímetros adelante, liberando S4.  Como los baldes son cilíndricos no hay problema para que S4 se ubique entre 2 baldes.   El balde luego de presionar S4 avanzará unos pocos centímetros, esto también da el tiempo para que el pistón de freno salga y se encuentre extendido a la llegada del balde y se evita que este golpee directamente al balde. Cuando el balde topa con el freno, se encuentra bien posicionado bajo el cabezal y se inicia el llenado.
Para este desplazamiento del balde, entre el contacto de S4 y su posición contra el freno, se está dando con T005 un tiempo de demora de 0.5 segundos antes de iniciar el llenado.
(Disponible para otras versiones; con más cabezales y accesorios.)





SUGERENCIAS DE APLICACIONES PARA EL PLC      

Aplicación
BOMBEO DE TANQUE
Se requería que un motor bomba encendiera al detectar un nivel alto en depósito, y se quedara encendido por un tiempo calculado para darle oportunidad a bomba vaciar este tanque en forma considerable y así evitar muy continuos arranques de la bomba, ya que flotador manejaba un rango de nivel muy limitado.

Enlaces de Interés

Rockwell Automation : http://www.rockwellautomation.com/
Allen-Bradley-Rockweel Automation product: http://ab.rockwellautomation.com/
En esta página de Allen Bradley pueden descargarse versiones light libres de RSLogix 500 y de RSLin Classic Lite :

http://www.ab.com/linked/programmablecontrol/plc/micrologix/downloads.html


Se recomienda descargar:
Micro_Lite_830.zip : RSLogix Micro Starter Lite (v8.30) without RSLinx — for offline programming (English) 30MB. Es la versión Light que reemplaza al RS Logix 500.

--------------------------------
RSLinxClassicLitev2.57.exe: RSLinx Lite software - needed for online programming  [365MB EXE].
Es el software para la conexión con el PLC. si no tiene el PLC, debe descargar el simulador del PLC, a continuación;
--------------------------------
Free Emulation Software for MicroLogix 1000, 1100, 1200, 1400 and 1500 :
rsemulate500.zip:

•RSLogix Emulate 500 [9MB] ; Es el simulador del PLC Micrologix 500,.
--------------------------------
Una alternativa es descargar el simulador de TheLeargingPit, lo malo es que no utiliza el mismo formato que el RS Logis 500.:

Software de simulación de PLC de Allen Bradley (Micrologix y otros): http://www.thelearningpit.com/

Portal de automatización industrial: http://www.infoplc.net

http://www.jorgeleon.terradeleon.com/automatizacion/PLC_1/index.html