DE
T A PA
P LC
C URSO D E A UTMATA S P ROGRAMABLES
L ECCIN N1: A UTMATA S Y A UTOMATISMOS
l autmata programable (PLC) es el equipo que en un sistema automtico nos permite elaborar y modificar las funciones que tradicionalmente se han realizado con rels, contactores, temporizadores, etc. Hay en el mercado autmatas que se adaptan a casi todas las necesidades, con entradas/salidas digitales y/o analgicas, pequeos y grandes. La programacin suele ser sencilla, dependiendo bsicamente de lo que se pretenda conseguir. A pesar de poder utilizar en cada uno de los distintos lenguajes de programacin la misma simbologa (esquema de contactos) no es fcil, aprendiendo uno de ellos, saber manejar el de cualquier otro fabricante ya que es aqu donde radica el gran inconveniente, cada
fabricante tiene su propio lenguaje de programacin. Lo importante es conocer las posibilidades de un autmata y saber como llevarlas a la prctica con cualquiera de los autmatas que existen en el mercado. Con este curso pretendemos ensearle qu es un PLC, cmo puede construir autmatas, cmo se programan estos elementos, cules son las normas internacionales que versan sobre el tema, qu es la programacin LADDER, cmo se solucionan conflictos producidos por ruidos e interferencias, cmo se realiza el cableado externo, qu tipos de entradas y salidas se emplean, etc. Tambin daremos proyectos con PLCs de distinta ndole. Al finalizar cada captulo encontrar un cuestionario correspondiente a cada leccin. Ud. Podr realizar consultas por Internet, ingresando a nuestra pgina WEB.
Curso de P LC s
INTRODUCCIN AL PLC La sigla PLC significa Programable Logic Controler (en ingls: Controlador Lgico Programable). Es un equipo electrnico, utilizado para controlar automticamente, a travs de secuencias lgicas, mquinas y equipos. Basan su funcionamiento en las tcnicas digitales con microprocesadores, empleando una estructura similar a la de una computadora hogarea. En principio, el PLC debera sustituir a un conjunto de rels cableados adecuadamente para que cumplan una funcin determinada. En forma general, podemos decir que un rel es un electroimn que al ser alimentado en los extremos a y b empuja a travs de la armadura, a un contacto inversor; y lo fuerza a cambiar de estado: es decir, el contacto Normal Abierto (NA) pasa a cer cerrado y el Normal Cerrado (NC), pasa a ser abierto; cumple de esta forma la funcin de inversin lgica de estado (funcin NOT) y de multiplicacin de cantidad de contactos, para tener suficientes contactos libres para armar las combinaciones Lgicas: AND (serie), OR (paralelo), etctera. En muchas ocasiones es preciso que el PLC aguarde determinados momentos para que se ejecute un proceso, es decir, se requier un temporizador. En procesos industriales anteriores a la dcada del 70 un temporizador era un elemento electromecnico que cambiaba el estado de un contacto libre de conexin interna despus de un tiempo de ser alimentado elctricamente; con el fin de proveer una seal de un retardo o aguardar un tiempo en medio de un proceso. Generalmente se implementaba mediante un motor, un electroimn de activacin embrague y un resorte que lo retornaba al origen al ser desexcitado; produciendo de esta forma el reset. El disco giraba lentamente llegando a dar casi una vuelta en el mximo tiempo del rango, una leva promontorio en el camino, empujaba a un contacto inversor. Note que para obtener un retardo se necesitaba un esquema electromecncio complejo que era fcil de sustituir con la electrnica del estado slido. de ardilla) son controlados econmicamente por contactores (que son rels ms grandes y especializados para operar con mayor corriente y tensin). Normalmente los electricistas entienden el funcionamieto de un contactor pero no se meten con dispositivos electrnicos. Ahora bien, el avance tecnolgico no se detiene, la revolucin industrial en 1780 comenz con el aumento de la produccin a travs del automatismo de los procesos de fabricacin, tratando de depender cada vez menos de la mano humana porque en realidad somos ms aptos para tareas inteligentes, como la investigacin, desarrollo y bsqueda de fallas para la creacin; ms que para la monotona; que es la que produce una fatiga muy grande, que a veces lleva a la muerte en forma directa como el stress, esta fatiga produce a su vez fallas humanas (las cuales producen cuantiosas prdidas materiales). La AUTOMATIZACION o AUTOMACION se bas inicialmente en lgicas mecnicas, luego en electromecnicas (como rels timers a motor sincrnico y contadores electromecnicos) e incluso se presentaron comercialmente lgicas neumticas (AND, OR, NOT) que competan en velocidad con los rels. Pero paulatinamente se impusieron los rels, luego los timers, los contadores, los programadores electrnicos y hoy se utilizan microcontroladores lgicos pro-
Sin embargo era necesario crear un dispositivo que pudiera parecerse a una lgica a rel. Y esto era as porque al ser la opcin de reemplazo de lgicas a rel deba ser comprendido y manejado por electricistas, ya que ellos entendan muy bien las lgicas electromecnicas existentes. An hoy este problema de la transicin de tecnologa sigue siendo un tema candente, ya que los accionamienos de Fuerza Motriz como motores trifsicos comunes (asincrnicos o de jaula
Figura 1
incorporacin del dispositivo, denominado genricamente automatismo, es capaz de reaccionar ante las situaciones que se presentan, ejerciendo la funcin de control para la que ha sido concebido. Vea en la figura 1 el esquema en bloques que representa a un sistema automtico. Existe una unidad de control encargada de realizar todas las operaciones relacionadas con el proceso que debe realizarse en forma automtica; dicha UC recibe las informaciones procedentes de sensores o captores que informan cambios fsicos que tienen lugar como consecuencia de la funcin para la que se dise el sistema automtico. En funcin de la informacin recibida, la UC genera una serie de rdenes que se transmiten al equipo o proceso a travs de accionadores que transforman las rdenes recibidas en magnitudes o cambios fsicos en el sistema. Esto quiere decir que la automatizacin consiste en un sistema de lazo cerrado, en el que existe un continuo flujo de informacin, desde el equipo o proceso a la Unidad de Control, y desde sta a aqul. La informacin recibida en la UC se procesa segn el programa que contenga el sistema (denominado algoritmo), del que se obtienen las rdenes que fijarn el funcionamiento del equipo o proceso industrial. Por otra parte, la Unidad de Control es capaz de proporcionar informacin ya elaborada sobre el estado y evolucin del sistema, al operador mediante un sistema de monitoreo. Por otra parte el operador puede intervenir en el desarrollo del control mediante las consignas que modifican los parmetros del algoritmo de control, o puede tomar el mando total pasando el sistema a control manual, con lo cual dejar de operar automticamente (esto significa que el sistema automtico tambin puede operar en forma manual).
LA AUTOMATIZACIN La automatizacin de un equipo o proceso industrial consiste en la incorporacin de un dispositivo tecnolgico que se encarga de controlar su funcionamento en base a una serie de elementos definidos con anterioridad El sistema que se crea con la
Curso de P LC s
Todo sistema automtico persigue lo siguiente: - Tener un buen sistema de calidad y confiabilidad. - Interpretar cambios que se produzcan, los que deben ocasionar acciones que debe realizar el proceso. - Mejorar la productividad y dismimuir los costos. - Adaptarse con facilidad y en breve tiempo a las cambios del mercado (nuevos productos). La evolucin tecnolgica ha permitido la realizacin de automatismos cada vez ms complejos. El nivel de automatizacin no ha dejado de elevarse, recuerdo por ejemplo, que en 1978 trabajaba en una compaa telefnica en la que realizaba el mantenimiento de una central electromecnica totalmente automtica; a dicha central se incorpor una nueva con tecnologa totalmente electrnica, de programa almacenado, que cost menos de la mitad que la primera, ocupaba la quinta parte del espacio que la primera y tena 4 veces las prestaciones de la electromecnica. En aquella poca desconoca los alcances de un autmata programable, un PLC y ni que hablar de una computadora personal. Sin embargo, aprend rpidamente que estaba en las puertas de un cambio importante, las tecnologas cableadas (que eran el corazn de la central electromecnica) ya estaban siendo reemplazadas por programas almacenados. Esto nos lleva a decir que las tecnologas empleadas en la automatizacin pueden clasificarse en dos grandes grupos: tecnolo-
Figura 2
gas cableadas y tecnologas programadas o programables, tal como puede apreciar en la figura 2. Los automatismos cableados se realizan en base a uniones fsicas de los elementos que constituyen la Unidad de Control. Tanto los sensores como los actuadores pueden ser neumticos, hidrulicos o electrnicos, ya sean mediante rels o elementos electrnicos pasivos. De lo dicho hasta ahora, y tomando como base el ejemplo dado con una central electromecnica, podemos decir que un automatismo cableado posee las siguientes desventas: - Ocupa mucho espacio. - Es muy difcil realizar modificaciones o ampliaciones. - Es difcil la identificacin y resolucin de problemas. - Es casi imposible realizar funciones complejas con moderada cantidad de elementos. Con el advenimiento de la
tecnologa programada, gran parte de estos problemas fueron rpidamente superados. Los miniordenadores se aplicaron all donde la cantidad de informacin y la complejidad del algoritmo de control hacan extremadamente complicado el empleo de equipos cableados; un campo particularmente propicio fue el de la industria de proceso (qumica, petroqumica, etc.). Cabe aclarar que la tecnologa programada se hizo factible gracias a la aparicin de los Autmatas Programables entre los que se encuentran los PLC (Controladores Lgicos Programables). El autmata fue una alternativa a la aplicacin de los equipos informticos en la industria ya que stos, si bien paliaban los inconvenientes de las tcnicas cableadas, aportaban una nueva problemtica para su empleo generalizado en el control industrial debido a que se adaptaban poco a las condiciones del medio
EVOLUCIN DE LOS CONTROLADORES LGICOS PROGRAMABLES industrial, requeran personal especializado para la programacin, tenan un costo elevado del equipo, etc. Los autmatas aportaron una disminucin del costo del equipo haciendo posible la aplicacin de un equipo informtico en aplicaciones relativamente pequeas, pero todava adoleca de la problemtica de adaptacin al medio industrial y la necesidad de especialistas para su aplicacin y mantenimiento. Electrnica N 166). El primer Autmata trabajaba con una memoria de ferritas, fcilmente reprogramable, y superaba las exigencias de la General Motors. No tard en extenderse su empleo a otras industrias. El Autmata se mostr particularmente adaptado al control en las cadenas de montaje, es decir, en los procesos secuenciales. Para facilitar su programacin y mantenimiento por parte del personal de planta, el lenguaje empleado era el de las ecuaciones de Boole y posteriormente el esquema de contactos. El Autmata Programable de uso industrial es un equipo electrnico, programable en lenguaje no informtico, diseado para controlar, en tiempo real y en ambiente industrial, procesos secuenciales. Hoy esta definicin ha quedaLos primeros equipos aparecen en 1968, emplean memoria de ferritas y un procesador cableado a base de circuitos integrados para construir la Unidad Central. Su aplicacin se centra en la sustitucin de maniobras de rels que controlan mquinas o procesos secuenciales (lneas de montaje, cadenas de transporte, almacenamiento de material, etc.). A principios de los 70 se incorpora la tecnologa del microprocesador lo que permite aumentar sus prestaciones. As se logra mayor interaccin entre el hombre y la mquina, aumentando los niveles de seguridad, se comienzan a manipular datos y con ello es ms fcil controlar procesos, se hizo posible realizar operaciones aritmticas. La aplicacin de los primeros autmatas aument las prestaciones de la mquina ya que con la
ANTECEDENTES DE LOS PLCS A mediados de la dcada de los 60 la empresa General Motors, preocupada por los costos elevados que implicaban los sistemas de control a base de rels decidi investigar en nuevas tecnologas que se adaptara fcilmente a la tecnologa reinante en aquella poca (vea Saber
Curso de P LC s
Tabla 1 Clasificacin de los PLCs comerciales Factores cuantitativos - Equipos pequeos: hasta 128 E/S; memoria de 1 a 4kB. - Equipos medianos: 128<E/S<500; memoria hasta 32kB. - Equipos grandes: ms de 500 E/S; memoria hasta 128kB. Factores cualitativos - Nivel 1: Control de variables discretas y numricas, operaciones aritmticas, y comunicaciones a nivel elemental. - Nivel 2: Control de variables discretas y numricas, operaciones matemticas y manipulacin de gran cantidad de datos. Empleo de E/S inteligentes y comunicaciones transparentes procesador-procesador o en red. capacidad de tratamiento numrico el autmata pudo desarrollar acciones correctivas sin detener el funcionamiento del proceso. En la segunda mitad de la dcada de los 70 se mejoran considerablemente las prestaciones y el desarrollo de elementos especializados. Se consiguen diferentes prestaciones gracias al aumento de la capacidad de memoria. Los sistemas de transmisin inalmbrico posibilitaron el manejo de entrada/salidas (E/S) remotas, tanto analgicas como numricas, se consiguieron mejoras en el lenguaje de programacin (instrucciones potentes), etc. Sus aplicaciones se extienden al control de procesos, al poder efectuar lazos de regulacin trabajando con dispositivos de instrumentacin. En esta etapa, el autmata desarrolla el control adaptativo sin intervencin del operador. Otros campos de aplicacin son el posicionamiento mediante entradas lectoras para codificadores y salidas de control de motores paso a paso, la generacin de informes de produccin, el empleo de redes de comunicacin, etc. En los 80 aparecen los microprocesadores comerciales a bajo costo, el 6800 de Motorola o el Z80 de Intel (valuartes de la dcada del 70) fueron rpidamente superados por prototipos industriales, as aparecen los PICs, los COP, etc. Con el empleo de microcontroladores de estas caractersticas se consiguieron PLCs (autmatas) con las siguientes caractersticas: - Alta velocidad de respuesta. - Reduccin de las dimensiones. - Entradas y salidas inteligentes. - Mayor capacidad de diagnsticos de funcionamiento. - Mayor capacidad de almacenamiento de datos. - Mejoras en el lenguaje: instrucciones de bloque, instrucciones de clculo matemtica con datos en notacin de coma flotante. - Lenguajes alternativos: Lenguaje de bloques funcionales, lenguajes de diagrama de fases (GRAFCET), y lenguajes de alto nivel (tipo BASIC). As han aparecido equipos pequeos y compactos que, junto con la reduccin de los precios, ha hecho que la aplicacin se extienda a todos los sectores industriales. Los fabricanes han desarrollado familias de productos que comprenden equipos desde 10 entradas/salidas, hasta grandes controladores capaces de gobernar hasta 10.000 E/S y memorias de 128kB. El campo de aplicacin cubre desde el mnimo nivel de automatizacin de una secuencia de enclavamientos, hasta el control completo de un proceso de produccin continua. En la tabla 1 encontramos datos tiles que podemos tener en cuenta cuando hablamos de la clasificacin de los PLCs o autmatas industriales.
CONSTITUCIN BSICA DEL PLC El Autmata Programable Industrial es una mquina electrnica digital programable que est constituida por dos elementos bsicos: - La unidad Central de Proceso (CPU). - El sistema de Entradas y Salidas (E/S). Con estos dos elementos, se puede accionar sobre la mquina o proceso a controlar, pero existen otros componentes que aunque no forman parte del controlador como equipo, son necesarios para su aplicacin. Estos
Figura 4
quina de potencia). - Se proyectan los equipos para condiciones extremas de trabajo: pruebas de interferencias, pruebas de acoplamiento electrosttico, verificacin de funcionamiento bajo condiciones lmites de temperatura y humedad, etc. - Se comprueban los componentes con simuladores virtuales y computadoras. - Se emplean mtodos de montaje automatizados. - Se realiza la prueba controlada por computadora de todos los subconjuntos funcionales y de los mdulos. - Se proyectan operaciones de autodiagnstico. - Una vez en funcionamiento, se debe realizar una comprobacin constante del sistema de entrada-salida de datos. Dijimos que en los sistemas con tecnologa cableada, las ecuaciones de control (circuitos
Curso de P LC s
lgicos), se realizan mediante uniones fsicas entre los componentes, contactos de rel, resistencia-transistor, etc. En esta tecnologa, el tratamiento de la informacin se realiza en paralelo de modo que todas las variables ingresadas se procesan de acuerdo a una lgica establecida por el programa con el objeto de tener un resultado que definir el funcionamiento del sistema (figura 5). Los controladores lgicos programables emplean un procesador binario que es capaz de interpretar una serie de cdigos o instrucciones que especifican las acciones a realizar en funcin del estado de las variables del sistema. El procesador puede interpretar una sla instruccin en cada instante, aunque lo hace a gran velocidad (microsegundos); esta forma de actuar introduce el concepto de tratamiento secuencial de la informacin, que se ilustra en la figura 6. En el PLC las instrucciones se almacenan en una memoria, que recibe el nombre de memoria de programa y que, generalmente, es una EEPROM. El procesador recoge los estados de las seales de entrada y los almacena en otra memoria denominada tabla de E/S. Las instrucciones ingresa una a continuacin de la otra para ejecutar operaciones de acuerdo con las sentencias grabadas en la EEPROM, arrojando resultados que tambin sern volcados en posiciones de memoria de datos para formar la tabla de E/S. Una vez finalizada la lectura del programa, tiene lugar la actualizacin de estados de E/S para lo que se transfieren a las salidas los
Figura 5
Figura 6
resultados obtenidos y se vuelven a almacenar los estados de las entradas. En un Autmata Programable existe un tiempo de respuesta, cuya magnitud es funcin de la cantidad y complejidad de las instrucciones que forman el programa y de la velocidad con que se ejecutan; durante la resolucin del programa el equipo ignora la evolucin externa de la mquina o proceso. En ciertas aplicaciones de evolucin muy rpida esto puede llegar a ser un problema ya que llegar a perderse alguna informacin, y en consecuencia puede darse un funcionamiento errneo.
PROYECTO DE UN PLC CON PIC En el marco de este curso, estamos preparando distintos proyectos para controlar tanto eventos sencillos como procesos industriales, empleando lenguajes de programacin estndar y
10
Figura 7
- Deba contemplar la posibilidad del volcado de los programas desde un PC o poder ser en un entorno windows. - Los componentes del hardware deberan ser baratos y fciles de localizar. - El nmero de entradas y salidas, en un principio sera de 8 E/S, ampliable en el futuro. - La alimentacin se hara a partir de la red elctrica de 220V ac o 12V DC de una batera. En la figura 7 se da el diagrama circuital correspondiente a la CPU de dicho proyecto. Cabe aclarar que an no contamos con la autorizacin del autor para la publicacin del autmata de su autora, razn por la cual no podemos realizar la descripcin del mismo. Sin embargo, quienes deseen conocer ms sobre el tema, pueden dirigirse a nuestra pgina WEB, donde encontrar un link
para el sitio del autor. En la prxima edicin publicaremos la leccin N 2 de este curso de PLCs, en la que se vern ejemplos sencillos de autmatas con rels, veremos sistemas lgicos y analizaremos el estndar IEC 1131-3 que define caractersticas que Ud. debe conocer acerca de los PLCs.
CUESTIONARIO DE LA LECCIN N1 1) Defina qu es un PLC 2) Cul es la diferencia entre un PLC y un microcontrolador. 3) Un PLC siempre debe tener entradas y salidas?, justifique la respuesta. 4) A qu se denomina autmata? 5) Qu tipo de programacin se emplea en los PLCs comerciales? 6) D 5 ejemplos en los que utilizara un PLC.
11
C U R S O D E A U T M ATA S P ROGRAMABLES
P LC
L ECCIN N2:
uego de haber ledo la primera entrega ya tendr una idea clara de lo que es un PLC, es decir, no caben dudas que un autmata o un PLC es un dispositivo que realiza determinadas funciones en base a instrucciones que estn almacenadas en algn lado. Tambin sabemos que hoy es comn encontrar a microprocesadores que cumplen la funcin de guardar datos, recibir otros desde las entradas, procesar estas seales en funcin del programa (datos guardados) y arrojar
un resultado conforme con todo el proceso y todo esto en forma automtica. En esta nota veremos cmo es la lgica de funcionamiento de un PLC realizando una analoga con sistemas a rels y qu elementos deben ser tenidos en cuenta para que el autmata cumpla con especificaciones estandarizadas. Por Horacio D. Vallejo e-mail:hvquark@internet.siscotel.com
QU ES UN AUTMATA? Hemos visto que los PLCs nacieron con la necesidad de emular a dispositivos construidos con rels. El PLC ms elemental es quiz una compuerta AND como la de la figura 1. En este caso se tienen dos contactos que al accionarlos en forma simultnea harn que se accione el rel de salida que comanda a algn sistema. Aqu la condicin es que los dos contactos de entrada deban estar presionados en forma
simultnea, el programa dice que solo se activar el sistema si presiono los contactos A y B simultneamente. Aunque parezca muy elemental, es un caso tpico en que la salida responde a una determinada condicin. Es decir, si se presiona uno o el otro, entonces no pasa nada, precisamos que se activen ambos contactos para hacer accionar el sistema. En la figura 2 tenemos un nuevo PLC elemental. Se trata de un circuito con memoria que posee dos entradas y una salida.
En este caso, basta con que se active al menos una entrada para que la salida ponga en marcha al sistema y, una vez que el sistema se ha activado, por ms que deje de presionar el pulsador de entrada, la salida no cambiar de estado gracias a la accin del contacto del rel de salida que lo mantiene activado. Se trata de una compuerta OR con memoria. Ahora bien, hasta ahora esto parece muy fcil e incluso, debera ser entendible por cualquier electricista, sin embargo, nor-
99
Curso de P LC s
x 5 centmetros contiene el equivalente a 16 "rels" de entrada, 8 rels reales de salida, ms de 100 rels ficticios internos (1 bit cada uno), 20 temporizadores timers, o contadores , programadores de tambor de 16 bits, etc. Los contactos de cada rel ficticio pueden utilizarse indefinidamente, por ejemplo hasta completar la memoria de programa, (ms de 500 veces). En cuanto a la confiabilidad, como los PLC se fabrican en series, se puede depurar la calidad del diseo colocando gabinetes adecuados, borneras y conectores adaptados a la necesidad industrial, etc. Por otra parte, existen muchsimos equipos similares comerciales, que con slo cargar el mismo programa guardado en un "disquette", funciona exactamente igual que el original. Tambin, como son equipos normalizados internacionalmente, se asegura continuidad en el tiempo y en cualquier parte del planeta.
Figura 1
6) Fcil monitoreo de seales, malmente esto no es as ya que los tcnicos poseen en una exce- tanto de entrada como de salida 7) Mantenimiento reducido siva especializacin que les impi8) Mnimo tiempo muerto de abordar temas multidisciplinarios del control automtico (mecnica hidrulica, neumtica, QU SE CONSIGUE CON electromecnica, electrnica, ESTAS VENTAJAS? matemticas superiores, conocimientos sobre el proceso en parA los fines de dar un ejemplo, ticular a controlar papel, tratamiento de efluentes, etc.), a me- digamos que un PLC de 10 x 7 nos que reciban una formacin especial. Adems, el PLC requiere algunos conocimientos bsicos en electrnica y el lenguaje requiere habilidad para la lectura de lgica de contactos con el cual estn programados; y no poseen en general una formacin para manejo de conceptos abstractos. Las ventajas de los PLC respecto de los rels son las siguientes: 1) Tamao reducido 2) Confiabilidad 3) Fcil de reemplazar 4) Fcil de programar 5) Costo reducido
Figura 2
100
EL ESTNDAR IEC 1131-3 La complejidad cada vez mayor en la programacin de los autmatas programables requiere ms que nunca de la estandarizacin de la misma. El IEC defini el estndar 1131-3 (IEC 65) para la programacin de PLC's que ha alcanzado el estado de Estndar Internacional en Agosto de 1992. Los lenguajes grficos y textuales definidos en el estndar constituyen una base para entornos de programacin potentes en PLC's. Con la idea de hacer el estndar adecuado para un gran nmero de aplicaciones, se normalizaron cinco tipos lenguajes: Diagrama de contactos. Diagrama de flujo. Grfico secuencial de funciones (grafcet). Lista de instrucciones (LDI o AWL). Texto estructurado. En cuanto a la estructura de los lenguajes, tenemos las siguientes posibilidades: Diagrama de contactos (LD) El diagrama de contactos (ladder diagram LD) es un len-
DESVENTAJA DEL PLC RESPECTO DE LA LGICA A RELS Aqu tengo un gran problema Siendo poco catedrtico, dira que la nica desventaja que le veo al PLC respecto de un sistema automtico con rel es que a los primeros debo saber repararlos cuando fallan, precisando personal especializado, mientras que cuando hay problemas con un rel un buen electricista puede solucionarlo (en la jerga tcnica, muchas veces decimos lo
101
Curso de P LC s
tured text o ST) es un lenguaje de alto nivel estructurado por bloques que posee una sintaxis parecida al PASCAL. Puede ser empleado para realizar sentencias complejas que manejen variables con un amplio rango de datos, incluyendo valores analgicos y digitales. Tambin se especifican los tipos de datos para el manejo de horas, fechas y temporizaciones. es permitida por lnea (ej. almacenar un valor en un registro). Este lenguaje es adecuado para pequeas aplicaciones y para optimizar partes de una aplicacin.
ORGANIZACIN DE TAREAS
El estndar tambin define una nueva arquitectura para la organizacin e interaccin de tareas con PLC's. Una tarea controla la ejecucin de un prograSe compone de: ma ejecutndolo peridicamente 1 Video de Electrnica General 1 Video de Smbolos Electrnicos o en respuesta a un evento espeTodo 1 Video sobre Transistores por slo cfico. Para optimizar los recur1 Video sobre Circuitos Integrados 4 Manuales del Mundo de la Electrnica $50 sos del controlador, se puede 1 Manual Multimedia de 150 Circuitos Prcticos en fragmentar una aplicacin en peDisquete Grfico secuencial de queos programas concretos. funciones (SFC) Cada programa est bajo el conIdeal para Estudiantes y Hobbistas El grfico secuencial trol de una tarea que se ejecuta a 4 Videos + 4 Manuales a todo color + 150 Circuitos por slo: $50 de funciones (SFC o la velocidad que requiera la E/S Grafcet) es un lenasociada. Pdalos en Editorial Quark, Herrera 761, Capital o enve un giro postal (cmprelo en el correo) o bancario a nombre de Editorial Quark SRL guaje que proporciopor el valor de su pedido; agregue $5 por gastos de envo. No se olvina una representade de detallar todos sus datos para que podamos remitirle el pedido. cin en forma de BLOQUES DE FUNCIONES diagrama de las seguaje que utiliza un juego estan- cuencias del programa. Soporta Los bloques de funciones darizado de smbolos de progra- selecciones alternativas de se(FB's) son bloques estndar que macin. El estndar prevee un ejecutan algoritmos como regucuencias y secuencias paralelas. nmero reducido de smbolos. ladores PID. El estndar IEC Los elementos bsicos del lenasegura que los FB's son definiguaje son pasos y transiciones. Diagrama de funciones Los pasos consisten de piezas de dos empleando una metodologa (FBD) programa que son inhibidas has- estndar. Hay controles emEl diagrama de funciones pleando parmetros externos, ta que se conoce una condicin (function block diagram o FBD) especificada por las transiciones. mientras que los algoritmos ines un lenguaje grfico que perternos permanecen ocultos emComo consecuencia de que las mite programar elementos que pleando Programacin Orientaaplicaciones industriales funcioaparecen como bloques para ser nan en forma de pasos, el SFC es da a Objetos. cableados entre s de forma an- la forma lgica de especificar y Lo dado hasta aqu es slo loga al esquema de un circuito. una gua para que Ud. comprogramar el ms alto nivel de FBD es adecuado para muchas prenda que un PLC comercial un programa para PLC. aplicaciones que involucren el debe reunir ciertos requisitos y flujo de informacin o datos enque a la hora de disear un auLista de instrucciones (IL) tre componentes de control. La lista de instrucciones (IL o tmata, si ser para uso indusAWL) es un lenguaje de bajo ni- trial, tendr que preveer las esTexto estructurado (ST) vel, similar al lenguaje ensambla- pecificaciones enmarcadas en el El texto estructurado (strucdor. Con IL solo una operacin estndar IEC1131-3.
102
C U R S O D E A U T M ATA S P ROGRAMABLES
P LC
L ECCIN N3:
n la leccin anterior comenzamos a describir las ventajas y desventajas de un autmata programable, comparndolo con otras tecnologas, sin embargo, no evaluamos las diferencias conceptuales con lgica CMOS o con los clsicos microcon-
troladores, por ello, veremos a continuacin algunos de estos aspectos para poder describir los elementos componentes de un PLC. Por Horacio D. Vallejo e-mail:hvquark@internet.siscotel.com
PLC VERSUS CMOS Cuando se disea un sistema CMOS, normalmente se lo hace para una determinada aplicacin, es decir, no podemos tener un componente a medida. Esto muchas veces obliga a no utilizar componentes demasiado especficos, ya que stos pueden quedar en desuso y cuando se los debe reemplazar porque existe algn problema, nos encontramos con una tarea demasiado difcil. Por otra parte, si bien un sistema con lgica a CMOS se puede desarrollar sobre cualquier elemento (placa
de circuito impreso, protoboard, montaje araa, etc.) los cambios "no siempre" se completan al 100%; y los cambios finales, por ley de Murphy, aparecen despus de terminado el circuito impreso. El costo del rediseo y el tiempo necesario para la reconstruccin son los dos puntos "graves" que tiene en contra la tecnologa CMOS, respecto de un PLC. Ahora bien, cualquier sistema CMOS es rpido, mucho ms rpido que el ms rpido de los PLC. La respuesta de un PLC puede ser a veces de 1s (los PLCs modernos trabajan en
el modo "interrupcin" lo que permite acelerar la respuesta), en cambio con la lgica con CMOS an la ms lenta se logran tiempos de solo 0,1S; y la ms rpida: lnea 74HC, emplea solo 0,02S.
PLC VERSUS MICROCONTROLADOR En realidad, como ya hemos dicho en otras oportunidades, con un microcontrolador puedo construir un PLC, pero de por s slo, un micro dista mucho de ser un autmata.
89
Curso de P LC s
En general, un autmata construido en base a estndares internacionales, se puede reemplazar en el tiempo, mientras que se debe conocer muy bien al micro para reemplazarlo por otro de una familia distinta. Por otra parte si el equipo con microcomputador no est predesarrollado o no se amortiza en gran cantidad, el costo de desarrollo es alto. Otra desventaja es que el programa en lenguaje ensamblador no es comprensible por los electricistas de planta, y no puede ser discutido o analizado por ellos en caso de falla. La dependencia del experto progamador en lenguaje ensamblador es muy grande. Sin embargo, hay que reconocer que es mucho ms fcil programar un micro que un autmata porque a estos ltimos se los debe programar en lenguaje de contactos. Pero hay ciertas aplicaciones en las que los micro especficos superan a los PLC: En el caso de ascensores, con equipos programables con microprocesador en "macroasFigura 1 sembler", para aplicaciones en edificios cuyos pasillos poseen dos o ms equipos (elevadores), que deben trabajar coordinadamente, para optimizar el servicio, reduciendo el tiempo de espera y el viaje intil del pasajero, debido a un programa muy bien elaborado. Otro caso particular son los controles numricos computados en los que se emplea un mixer entre una interface industrial y programas similares al "AutoCAD". En estos casos, el equipo tiene suficiente inteligencia como para hacer el mecanizado a mitad de camino, pedir al operador que verifique una determinada magnitud, y a partir de ese dato evaluar el desgaste de la herramienta para corregir su maniobra y as obtener la pieza con la medida exacta. En casos como stos, los equipos muy especficos se imponen sobre el PLC. componentes: la Unidad Central de Proceso (CPU), y el Sistema de Entradas/Salidas (E/S). Estos elementos se complementan con el conjunto de equipos de programacin y perifricos. La Unidad Central de Proceso de un Autmata se compone de dos componentes principales que son el microprocesador y la memoria. La forma constructiva con que se presentan las CPU vara desde un mdulo nico (incluye procesador y memoria), pasando por un mdulo procesador y un mdulo de memoria, hasta un formato de rack o armario. En algunos modelos la unidad incorpora la fuente de alimentacin, y en los ms pequeos se incluye tambin parte del sistema de E/S. La Unidad Central de Proceso es el corazn del PLC, pues realiza todas las tareas de control, tanto en lo que se refiere a adquisicin de informacin y control de los accionadores del proceso a controlar, como en lo que se refiere a funciones internas de vigilancia del adecuado funcionamiento de los compo-
Componentes de un PLC Los equipos que responden al concepto de Autmata Programabe Industrial, se presentan en diversas formas de construccin fsica y organizacin interna, pero en todas ellas se distinguen dos grandes grupos de
90
Figura 2
91
C U R S O D E A U T M ATA S P ROGRAMABLES
P LC
L ECCIN N4:
E L P ROCESADOR Y LA M EMORIA
del Autmata
n la leccin N 3 de este curso co- las tareas en orden, es decir, el procemenzamos a describir los compo- sador. Veremos entonces estos dos nentes de un autmata progra- elementos. mable. De ellos, los ms importantes son los encargados de guardar la informacin tanto de datos como de Por Horacio D. Vallejo programas y el encargado de llevar e-mail:hvquark@internet.siscotel.com
EL PROCESADOR Ya hemos dicho que la Unidad Central de Proceso es el corazn del PLC y hemos descripto las tareas que debe realizar este componente. Si bien ya mencionamos cules son las funciones principales de este bloque, diremos que el procesador se comunica con los distintos componentes de la Unidad Central mediante el bus, o barra de datos, direcciones y seales de control. Debe leer las instrucciones del programa ya sea las correspondientes al usuario o las de
aplicacin y luego debe ejecutar el programa mediante el empleo de los estados de las entradas y salidas del sistema hasta obtener los datos de la resolucin. Esta tarea se efecta cclicamente ya que el tratamiento de la informacin se realiza de forma secuencial, es decir, instruccin por instruccin. Cada operacin se realiza en ciclo de
ejecucin del programa (scan) que queda definido por un conjunto de operaciones y un tiempo de ejecucin o tiempo de ciclo (scan time). Las operaciones que definen el ciclo de ejecucin de un autmata programable se pueden llevar a cabo de distintas formas. En la figura 1 vemos una forma sencilla en la que se describe
Figura 1
95
Curso de P LC s
Cada vez que se realiza una puesta en marcha o una parada del sistema, el procesador debe ejecutar una serie de secuencias, conforme con el programa cargado en su memoria. Algunas de estas secuencias son las siguientes: - Primero se energiza al PLC, con lo cual se efectan una serie de comprobaciones internas, tales como comprobaciones de la memoria, comunicaciones correctas entre los componentes, etc. - Luego se verifica que est correcto el programa de aplicacin. - Se efecta una comprobacin de los elementos de E/S para detectar posibles fallas. - Tambin se chequea que exista comunicacin entre el PLC y los perifricos. - Se debe comprobar que todas las salidas estn desactivadas. Una vez que se realizan estas
Figura 2 Figura 3
que, en funcin del estado inicial de una entrada se realiza el tratamiento de la informacin y se enva una orden a una salida. Ahora bien, para la ejecucin del prximo ciclo, se tiene en cuenta el estado que ha adoptado cada salida para definir el nuevo estado de las entradas. En las figuras 2 y 3 vemos otras sntesis de ejecucin de operaciones. Cabe aclarar entonces, que cuando debamos programar un autmata, encontraremos instrucciones que nos permitirn
alterar el ciclo de operacin. Son las instrucciones de "salto condicional, salto a subrutinas o subprogramas, interrupciones, o actualizacin inmediata de estados de E/S". Tenga en cuenta que al finalizar cada ciclo, el procesador debe actualizar el estado de las entradas y salidas y debe atender las tareas de diagnstico interno y a las comunicaciones con perifricos (con el exterior). En la figura 4 se ilustra el desarollo de un ciclo de ejecucin tpico de un PLC.
Figura 3
96
LA MEMORIA Todo PLC pose una memoria organizada en reas de trabajo especficas, tal como se muestra el esquema de la figura 5. Dicha figura indica la organizacin tpica de la memoria de un autmata. La memoria del sistema generalmente no es accesible por el usuario y es en donde se almacenan los programas ejecutivos o "firmware". Scratch-Pad es una porcin de memoria donde la informacin se almacena en forma
Figura 5
97
Curso de P LC s
temporal y es empleado por los programas ejecutivos (memoria intermedia). En la memoria de datos se almacena informacin del estado de las entradas y salidas (variables de E/S), los estados internos intermedios originados por la ejecucin del programa (variables internas), y los datos o nmeros a ser considerados para realizar una operacin (variables numricas). En la memoria de usuario residen las instrucciones que definen el algoritmo de control. La memoria est organizada en palabras y registros, constituidos por palabras de determinada cantidad de bits (8, 12, 16 o 32), dependiendo del tipo de procesador que se emplee. Cada una de las palabras, denominadas registros, constituye una informacin completa que define una instruccin o un dato numrico, en funcin del rea de memoria a la que pertenezca. La cantidad de palabras de que dispone la memoria se expresa en kilobytes (1kilobyte = 1kB = 1024 posiciones de memoria). En las caractersticas del PLC debe quedar claramente especificada la cantidad de memoria disponible para el programa de usuario. El rea correspondiente a la Memoria Ejecutiva son de slo Lectura, ROM (Read Only Memory). Para las reas de Memoria "scratch-pad", tablas de variables de entradas y salidas, variables internas y registro de datos, se emplean unidades de Memoria de Acceso Aleatorio - RAM (Random Access Memory), por su facilidad de escritura y borrado. Cabe aclarar que muchos PLCs emplean otro tipo de memoria (EEPROM, por ejemplo) para que la informacin contenida en ella no se pierda cuando se quita la alimentacin al equipo. La Memoria de Usuario normalmente est constituida por memorias permanentes del tipo EPROM (tambin llamadas UVPROMUltraviolet Reprogramable Read Only Memory) con borrado por radiacin ultravioleta o del tipo EEPROM (Electrically Erasable Read Only Memory) reprogramables elctricamente, que tiene la ventaja de no precisar batera para conservar el programa pero adolecen de la falta de flexibilidad de las memorias RAM. Cabe aclarar que las instrucciones que forman parte del programa que debe ejecutar el autmata (el procesador), normalmente tienen que ver con operaciones que deben tener en cuenta los estados tanto de las entradas como de las salidas y como estos datos normalmente se asocian a variables internas o a datos que se encuentran en registros, adems del cdigo de operacin correspondiente a esa instruccin deben llevar asociadas las direcciones de esas variables. En la prxima leccin veremos la correspondencia entre las direcciones de la tabla de entradas y salidas (en la memoria) y los bornes del equipo para su conexin, esto nos permitir el estudio del sistema E/S en sus diferentes variantes.
98
C U R S O D E A U T M ATA S P ROGRAMABLES
P LC
L ECCIN N5:
del Autmata
al como hemos definido al comienzo de esta serie, un autmata programable es un sistema que basa su funcionamiento en el uso de controladores lgicos programables que realizan tareas de acuerdo con un programa interno, en funcin de determinados estados que se encuentran en las entradas, sin descuidar la informacin de dichas salidas.
De esta manera, la forma en que estn definidas tanto las entradas como las salidas es fundamental para definir el funcionamiento del equipo. En este captulo nos ocuparemos del sistema E/S (entradas y salidas).
as entradas y las salidas de un PLC son los vnculos con que se comunican los registros de datos y las variables definidas en la memoria de un PLC. Las instrucciones que debe ejecutar la CPU, que se refieren a operaciones con estados tanto de las entradas como de las salidas, mediante el uso de registros de datos y variables internas, adems del cdigo que define la operacin a efectuar llevan asociada la direccin de una variable.
Existe una correspondencia directa entre las direcciones de la tabla de E/S grabada en el interior del autmata y los bornes de los mdulos o tarjetas de entradas y salidas, tal como se ilustra en la figura 1. Los fabricantes de PLCs comerciales indican cul es la relacin, sealando qu zonas corresponden a entradas y cules a salidas. Es muy importante tener presente esta correspondencia entre la tabla de datos de E/S y los circuitos fsicos del sistema
de E/S, ya que segn como est definida ser el tipo de instrucciones que deberemos emplear para la programacin; ya que al leer las instrucciones, el procesador acude a las direcciones de la tabla de E/S para tomar el estado de las variables asociadas al cdigo de operacin (operandos). El estado de las variables se almacena en la memoria de datos como "1" (activado/ON) cuando existe un nivel de tensin en el borne del circuito de
95
Curso de P LC s
Figura 1
que al especificar la funcin inversa, el procesador examina el estado desactivado de la variable asociada a la funcin (X1) que se cumple en dicha situacin de reposo. Cuando se accione el interruptor S1, se activar el circuito de entrada (ON) tomando el valor 1 la variable X1 con lo que dejar de cumplirse la condicin de examen programada (NO X1) y en consecuencia se desactiva la salida al tomar Y el valor 0. El lector puede deducir entonces, que el control de un proceso manejado por un autmata se basa en un continuo intercambio de informacin entre el equipo de control y dicho
entrada, y como "0" (desactivado/OFF) cuando no hay tensin. Vea en la figura 1 que en las entradas asignadas al registro n, el valor del bit 12 corresponder a 1 cuando se cierre el contacto del contacto conectado al borne 12 del mdulo de entradas (tambin llamado dispositivo de campo en distintos pases del continente), y por tanto se aplique tensin al mismo, del mismo modo, para las salidas asignadas al registro m, cuando el valor del bit 5 sea 1 se activar el circuito correspondiente al borne 5 del mdulo de salidas y por tanto se energizar el dispositivo de salida asociado a ese terminal. Normalmente se establece que el procesador vigila el estado activado (ON) de las variables. Si se especifica la funcin inversa o como elemento de la variable, el procesador examina-
r el estado desactivado (OFF) de la variable. Para entender lo que estamos diciendo, vea el dibujo de la figura 2. Sea el estado de una salida Y que corresponde a la ecuacin lgica: Y = X1 (negado) La salida Y est activada, ya
Figura 2
96
las siguientes funciones: 1) Preparar los datos suministrados por los diferentes sensores de entrada (seales de entrada) a los elementos electrnicos del PLC. 2) Actuar con una debida separacin (buffer) elctrica entre los circuitos lgicos y los circuitos de potencia. 3) Identificar, mediante el soporte fsico del "direccionamiento" la identificacin de los dispositivos de E/S para la correcta ejecucin de
las secuencias de control programadas. Los bastidores , o racks, proporcionan un soporte mecnico a los mdulos donde se encuentra la denominada "placa base" en la que se encuentran los conectores del bus de datos. En las figuras 3, 4 y 5 se pueden observar diferentes modelos de autmatas comerciales en los que se puede apreciar el bastidor o rack de E/S. Note que se pueden ver
Fig. 5
proceso. La informacin que se recoge del entorno recibe el nombre genrico de Entrada y llega al PLC por medio del sistema de ENTRADAS, mientras que las acciones de control sobre el proceso se denominan Salida y se acciona mediante las SALIDAS. Los dispositivos de entrada corresponden a un amplio conjunto de elementos como, interruptores comunes o tipo final de carrera, pulsadores, reostatos, pirmetros, detectores de humo, detectores de posicin, sensores, etc., mientras que los dispositivos de salida se encargan de energizar a los dispositivos constituyentes del sistema de control y corresponden a rels, triacs, optoacopladores, electrovlvulas, etc. El Sistema de E/S de un Autmata Programable comercial o industrial est formado por un conjunto de mdulos (rack) que tiene
Fig. 6
97
Curso de P LC s
puede tratarse de un conjunto de bits que representan una palabra de informacin. Esta es una nica oportunidad: Los sistemas discretos de E/S son aquellos en los que, tanto las entradas como las salidas, pueden tener nicaCONTIENE: 1) Enciclopedia de Electrnica a Color en 3 Tomos immente dos niveles, es presos en papel ilustracin a todo color. decir presencia o au2) Video Kit de Electrnica con el que aprende esta materia fcilmente sin cansarse. sencia de un nivel de 3) Video Kit de Computacin con el que aprende tensin, ya sea en cc o computadoras y puede armar sus propios equipos. 4) CD Manual de Electrnica 2001 con ms de 1000 ca. pginas de informacin y 300 Montajes de Electrnica. Los mdulos de entradas son tarjetas elecNo lo piense m s, hasta agotar stock (300 unidades), compre este paquete por s lo $25 si es socio del Club Saber Electr nica trnicas enchufables ($40 si no es socio). En venta nicamente en nuestras oficinas. en un rack de E/S que Tambi n se lo enviamos a su domicilio, pag ndolo cuando recibe esta obra (por contrarreembolso). Para adquirirlo llame al (011) en su parte frontal dis4301-8804 o env e una carta a Herrera 761 (1295), Capital ponen de una regleta Federal o escriba un e-mail a: ateclien@vianetworks.net.ar de bornes para el coequipos compactos y equipos en nexionado de los dispositivos de el que el bastidor est separado entrada, tal como se muestra en del resto del sistema. la figura 6, y un conjunto de Generalmente, los autmatas Leds que indican la presencia de pequeos poseen una configura- seal de entrada. cin compacta que incluye la En la figura 7 se muestra el Unidad Central de Proceso y esquema circuital tpico de los parte del Sistema de E/S en un circuitos de entrada de un mslo gabinete, que a su vez son dulo, en el que se puede obserexpandibles mediante unidades var el acoplador ptico que procompactas o mdulos de E/S. porciona la separacin elctrica entre el circuito lgico y el de campo. SISTEMAS E/S DISCRETOS Los mdulos de entrada pue-
den ser de 8, 16, o 32 circuitos, y pueden trabajar con distintos niveles de tensin de trabajo, tales como: TTL, 24Vca/cc, 48Vca/cc, 110Vca/cc, y 220Vca, etc. Los mdulos de salidas son tarjetas electrnicas que al igual que las de entrada disponen de una regleta de bornes enchufables y de indicadores LED para la visualizacin del estado de la salida. Normalmente incorporan algn tipo de proteccin de la etapa de potencia, que puede ser un circuito de deteccin de sobrecarga o simplemente un fusible. El estado del fusible normalmente es indicado por el encendido de un Led mediante la conexin de un borne del mdulo con un punto comn de las cargas. Los mdulos de salida pueden ser de 8, 16, o 32 circuitos, y pueden trabajar con distintos niveles de tensin de trabajo, tales como: TTL, 24Vca/cc, 48Vca/cc, 110Vca/cc, y 220Vca, etc. Tambin puede ser la activacin de un rel o un triac. La corriente mxima de salida es variable en funcin del modelo del autmata, pudiendo ser desde 0,5A hasta 10A o ms.
La seal de entrada de un PLC puede ser la que suministra un interruptor On-Off o diferentes niveles de tensin suministrados por un sensor de temperatura, por ejemplo. Lo mismo ocurre con las salidas, es decir, una seal procedente del PLC puede ser simplemente un estado 1 o 0, pero tambin
Fig. 7
98
Curso de P LC s
C U R S O D E A U T M ATA S P ROGRAMABLES
P LC
L ECCIN N6:
del Autmata
s bien sabido que un autmata va a realizar una accin (mecnica, neumtica, hidrulica, etc.) a partir de determinadas seales encontradas en su entrada y de acuerdo con un programa interno. Ya hemos analizado una correspondencia entre las tablas internas que definen el comportamiento de las entradas/salidas del PLC y comenzamos a analizar los mdulos discretos. En esta leccin
veremos brevemente qu dicen las dos normas internacionales que regulan el comportamiento de los autmatas y daremos las caractersticas de los principales sistemas E/S que suelen emplearse.
EL CABLEADO EXTERNO DIN Muchos problemas en instalaciones industrials se producen en el diseo. Es imprescindible prestar atencin a la confiabilidad y facilidad de reparacin, ante eventuales fallas, del cableado de un autmata. Por ejemplo, segn sea la norma empleada para el cableado externo del PLC, se deben tener en cuenta las posibles puesta a
masa de los contactos de un rel o de cualquier elemento de control, dado que esta es la falla ms comn que suele presentarse en una instalacin, especialmente cuando se trabaja en ambientes hmedos o de calor excesivo. Si no se siguen determinadas reglas bsicas, la incertidumbre que puede generarse a
partir de una falla puede ser tan grande que a veces es hasta im-
Fig. 1
100
Curso de P LC s
nueva situacin en la que se ha definido una masa como conexin de uno de los bornes del generador pero existe un error de criterio al conectar los contactos del lado de masa. En este caso, si se produce la puesta a masa de S1, el rel se activa aunque ninguno de los dos contactos se haya cerrado, lo que puede producir infinidad de inconvenientes y hasta accidentes lamentables, dado que alguno de los interruptores podra haber sido de seguridad y, al no actuar correctamente, un motor se podra poner en marcha aunque un operario est trabajando en el sistema. Por lo tanto, SIEMPRE, del lado de masa debe ir la bobina del rel, segn lo establece la norma DIN. En la figura 4 vemos la representacin de un sistema de cableado E/S segn la norma DIN. Tenemos un rel de supervisin de fuente que se encuentra siempre activado mientras la fuente no tenga proble-
Figura 2
Fig. 3
posible reparar el sistema. Por ejemplo, en la figura 1 se muestra un circuito tpico a rels en el cual no est definida ninguna masa (cableado aceptado por normas ISO), es decir se tiene un circuito de masa flotante. Si por cualquier motivo se pusieran a masa los contactos del interruptor S4 (figura 2), con el cierre de S3 se activara el rel K2, situacin no deseada ya que dicho rel solo se debera cerrar en el caso en que ambos contactos (S3 y S4 se cerraran). Al intentar verificar la falla, slo la encontraramos cuando midiramos cada interruptor hasta encontrar uno en corto y si esto se produce en un sistema de mltiples contactos, podramos demorar das en encontrar la falla. En la figura 3 se muestra una
mas; cuando el circuito posee inconvenientes, salta el fusible y se corta el suministro. Un rel de seguridad dejar activar al sistema de salida siempre que se cumplan las condiciones de seguridad que en nuestro esquema estn representadas por un interruptor de tal forma que en estas condiciones, cada vez que se acciona el interruptor de puesta en marcha (el autmata automticamente puede realizar esta funcin) se permitir, por ejemplo, el encendido de un motor. Segn esta norma, si se pone a masa la bobina del rel de marcha, cuando ste se excite saltar el fusible (figura 5). Si se abre el cable del rel de supervisin, no habr tensin y la falla ser fcil de localizar. Si hay problemas con los sensores de alarma tambin podremos detectar la falla sin problemas, por ejemplo, si se pone un contacto a masa, saltar el fusible y, midiendo con el tster encontraremos rpido el desperfecto. En definitiva, un anlisis pormenorizado nos permitir comprender que cualquier falla ser fcil de localizar. Esto significa que al realizar el cableado de un sistema E/S, siempre las bobinas
Figura 4
101
de rel deber tener un contacto de referencia a masa y que todos los circuitos de seguridad debern tener corriente en condiciones normales de funcionamiento para que el sistema haga saltar el fusible en caso de alguna puesta a masa involuntaria. Ahora bien, analizando el circuito de la figura 4, vemos que sera posible detectar dnde se produjo falla a masa, realizando un reestablecimiento gradual del sistema (es decir, una vez apagado el autmata, se pueden colocar las fusibles y se realiza una puesta en marcha gradual; hasta que vuelva a saltar y as aislar el circuito que presenta inconvenientes). Cuando se realiza el cableado de un sistema, normalmente se deben poder abrir todos los interruptores de seguridad de modo que al energizar el sistema se puedan ir cerrando uno a uno hasta detectar la falla. Se deduce entonces que es aconsejable agrupar contactos por elementos de proteccin (5 elementos por fusible, por ejemplo) para minimizar el tiempo de
Fig. 6
102
Curso de P LC s
En general la conversin se hace a un cdigo binario de 11 a 12 bits, al que corresponde un valor numrico, o bien desde el Esta es una nica oportunidad: valor numrico al cdigo binario. En un mdulo de entradas analgicas normalmente hay un slo conversor analgico/digital CONTIENE: 1) Enciclopedia de Electrnica a Color en 3 Tomos im(A/D), y las magnitudes de enpresos en papel ilustracin a todo color. trada son multiplexadas para su 2) Video Kit de Electrnica con el que aprende esta materia fcilmente sin cansarse. conversin. 3) Video Kit de Computacin con el que aprende comLos mdulos suelen estar putadoras y puede armar sus propios equipos. 4) CD Manual de Electrnica 2001 con ms de 1000 controlados por su propio miENTRADAS/SALIDAS pginas de informacin y 300 Montajes de Electrnica. ANALGICAS croprocesador, tal como podeSon mdulos destina- mos ver en la figura 7. No lo piense m s, hasta agotar stock (300 unidades), compre este paquete por s lo $25 si es socio del Club Saber Electr nica ($40 Los fabricantes ofrecen disdos a la conversin de si no es socio). En venta nicamente en nuestras oficinas. Tambi n tintas ejecuciones de los mduuna tensin o cose lo enviamos a su domicilio, pag ndolo cuando recibe esta obra (por contrarreembolso). Para adquirirlo llame al (011) 4301-8804 o rriente corresponlos, pero las ms empleadas env e una carta a Herrera 761 (1295), Capital Federal o escriba un diente a la medida de corresponden a 4, 8, o 16 canae-mail a: ateclien@vianetworks.net.ar una temperatura o de les analgicos para las entradas, cuando en lugar de tener sistey cuatro canales para las salidas una presin, que vara en el mas DISCRETOS (interrupto(que incorporan un conversor tiempo (convierten en electricires), nuestro autmata maneja dad variaciones de otro tipo de digital/analgico por cada canal). otros tipos de seales. magnitud). Las bandas de trabajo que
ENTRADAS/SALIDAS NUMRICAS Las E/S numricas son un conjunto de mdulos que permiten adquirir o generar informacin en formato de datos, es decir, que emplean un registro completo de la Memoria de Datos del Autmata.
Fig. 7
103
permiten estos sistemas son los usuales en instrumentacin. ENTRADAS/SALIDAS DE CDIGOS NUMRICOS Para la adquisicin de datos proporcionados a travs de codificadores rotativos (Thumbwheel Switches) o instrumentos electrnicos digitales, y para generar informacin numrica a dispositivos visualizadores (display de 7 segmentos) y otros equipos electrnicos, los fabricantes ofrecen mdulos de E/S numrica generalmente para el cdigo BCD (tambin Gray o complemento a 9). Estos mdulos son multiplexados (figura 8). El mdulo adquiere la informacin de cada uno de los datos y la transfiere a los registros de la memoria de datos del procesador en forma secuencial a una frecuencia que puede ser de 100Hz. Ahora bien, las E/S discretas y numricas permiten el empleo del PLC en un amplio campo de aplicaciones, pero algunas de s-
tas requieren ciertas funciones especiales, que si bien podran realizarse con los elementos comentados, exigiran un empleo excesivo, tanto de material como de instrucciones de programa.
Figura 9
104
Curso de P LC s
C U R S O D E A U T M ATA S P ROGRAMABLES
P LC
L ECCIN N7:
n lecciones anteriores vimos cmo es el sistema de entradas/salidas de un autmata clsico y dimos detalles de la forma en que se debe realizar el cableado. Sin embargo, el lector debe tener en cuenta que muchas veces el PLC debe controlar mdulos especiales como servos, motores paso a paso, controles proporcionales, etc.
En este captulo describiremos algunos de estos sistemas y veremos algunos aspectos a tener en cuenta sobre las entradas en funcin de la tecnologa empleada.
Mdulos Especiales El control de un motor paso a paso, el gobierno de un servo o el control de un proceso requiere del uso de mdulos especficos que en la industria suelen venderse para su uso en autmatas. El mdulo de control de un motor paso a paso genera los trenes de impulsos necesarios para el control del motor, a tra-
vs de un amplificador (driver). Este tipo de mdulo acepta datos desde el programa de control que especifican la posicin, el sentido, la aceleracin y la desaceleracin del movimiento del equipo. En la figura 1 se muestra un diagrama en bloques de este sistema de control en forma simplificada. Generalmente disponen de entradas de control manual del movimiento para efectuar el po-
sicionado en las condiciones iniciales. Un mdulo de servo control permite el control de posicionamiento en un eje (o de varios ejes), proporcionando tiempos cortos de posicionado, alta precisin, buena fiabilidad y alta repetibilidad. Resultan una alternativa econmica al empleo del control numrico en pequeas aplicaciones que no requieren gran precisin, como m-
97
Curso de P LC s
Figura 1
de la variable de proceso respecto del punto de consigna, pueden producir una reduccin de la calidad del producto obtenido adems de provocar la prdida de control del sistema. En la figura 2 se puede ver el diagrama en bloques de un mdulo de control proporcional integral y derivativo donde la variable que pone en marcha el proceso se obtiene a travs de una entrada analgica y despus de ser tratada se compara con el valor de referencia. La seal de error resultante (desviacin respecto al punto de consigna), se procesa a travs de las componentes del mdulo, y los resultados se suman para obtener la variable de control, que se aplica sobre el sistema para anular el error. Como hemos supuesto una variable analgica, note la forma
quinas, herramientas, sistemas de embalaje, etc. Los fabricantes de estos mdulos suelen dar detalles de conexionado que, en general, siguen lineamientos bsicos. Por otra parte, en aplicaciones de control de proceso en las que se requiere una alta precisin en el control de una funcin de regulacin, se hace necesario la aplicacin de un Control Proporcional, Integral y Derivativo, de forma que la variable de proceso se mantenga lo ms ajustada posible al punto de consigna, o a los distintos puntos de consigna que se establezcan a lo largo de la evolucin del proceso. Las desviaciones
Figura 2
98
99
Curso de P LC s
Fig. 3
parte del micro y si no lo recibe enva un pulso de "reset" sobre el micro indicando que algo no anda bien. Pero este proceso slo cubre el descarrilamiento del programa y no la alteracin de las variables, por ello debemos saber cmo se realiza la programacin de un PLC, para luego explicar cmo se resuelve el problema. Como el sistema menos ruidoso es aquel que emplea lgica CMOS, en la figura 3 vemos un circuito con entrada directa a la compuerta de un PLC que emplea un conductor comn conectado a masa. Podramos decir que es el sistema menos ruidoso. Ahora bien, si a la entrada del equipo se conecta el sensor por medio de un atenuador que lleve la tensin del senFig. 5 sor a los 24V requeridos por el PLC y un filtro para evitar seales espreas, como se muestra en la figura 4, el sistema es algo ms vulnerable al ruido. Note que continuamos teniendo un conductor comn de tierra. La figura 5 muestra una alternativa conocida como aislacin galvnica que emMuchas veces esta alteracin plea un optoacoplador para coen el programa, puede interpre- nectar al sensor con la compuertarse errneamente como el co- ta de entrada del PLC. mienzo de una instruccin, denEste circuito posee mayor tro de una instruccin real de susceptibilidad al ruido que los dos o ms bytes; y puede ser, anteriores. que no llegue a "encarrilarse" jaEn la prxima edicin verems; a no ser por la accin del mos detalles de cmo el ruido "watch dog" (perro guardin), puede interferir con el funcionaste espera un "estmulo" de miento del autmata.
Fig. 4
En un PLC con microprocesador, la forma en que ste va a operar depende del estado de las entradas y del paso de programa que est ejecutando, luego si en una memoria guard un dato errneo como consecuencia de un ruido indeseado, entonces todo el proceso que sigue estar equivocado.
100
Curso de PLCs
PLC
LECCIN N8:
al como hemos visto en lecciones anteriores, los PLC comerciales pueden operar con entradas y salidas tanto analgicas como digitales, empleando diferentes tecnologas; sin embargo, existen configuraciones tpicas a las que el tcnico puede recurrir
en ms de una oportunidad. En esta seccin veremos circuitos para corriente continua y corriente alterna.
Por Horacio D. Vallejo e-mail: hvquark@ar.inter.net www.webelectronica.com.ar
INTRODUCCIN Un PLC precisa de sensores que determinen estados en sus entradas para que pueda procesar la informacin y activar las salidas correspondientes. Ahora bien, entre las entradas propiamente dichas del PLC y los sensores, pueden haber circuitos que acten de interfases, de modo que un problema en una entrada no ponga en riesgo la vida del autmata. Estas interfases
pueden alimentarse con tensiones de corriente continua o corriente alterna, por lo cual daremos sugerencias para ambos casos.
en las entradas podemos tener diferentes circuitos, una buena solucin para esquemas de corriente continua con una alimentacin de 24V es la mostrada en la figura 1. En todos los autmatas sencillos la fuente conmutada general que opera desde la lnea de 220V entrega una salida de 24V para "auto-alimentar" los circuitos de entrada; de modo que no es necesario armar una fuente
Saber Electrnica N 175
CIRCUITO DE ENTRADA PARA CORRIENTE CONTINUA Vimos que los autmatas generalmente disponen de tensiones de 5V, 12V y 24V para alimentar a sus perifricos. Si bien
Curso de PLCs
Figura 1
por tal motivo siempre el optoacoplador se debe colocar sobre el lado positivo de la tensin de alimentacin y el resistor limitador de corriente (R IN) debe conectarse del lado de emisor. Esto adquiere relevada importancia cuando trabajamos con autmatas cuyas entradas poseen niveles TTL, es decir, si el nivel de transicin es el que maneja un microcomputador 8751 (lgica TTL), la colocacin del optoacoplador del lado de masa superara los 0,8V necesarios como mximo para que un 0 lgico sea considerado como tal. Para que se entienda mejor, si el optoacoplador debe dar una seal correspondiente a un 0 lgico, en la familia TTL, el valor de tensin mximo debera ser 0,8V. En lgica CMOS no hay problema dado que el 0 es considerado como tal hasta el 40% de la tensin de alimentacin, lo que significa que con una tensin de alimentacin de 5V, una tensin de 1V es considerada un 0 lgico (hasta 2V es considerado como 0 lgico).
externa, de ah que el sistema se simplifica. En el esquema, la resistencia R EXT es generalmente de 2200 (2k2), lo que por ley de Ohm nos da una corriente de unos 10mA (descontando aproximadamente 1V de cada en el opto-acoplador y 1V en bornes del Led indicador de encendido). Esta corriente es el 50% del valor mximo que puede circular por un opto-acoplador clsico y tambin por el LED, coincidiendo con el criterio recomendado por IEEE. (Comit Internacional de Ingenieros Electrnicos y Elctricos) para lograr mxima confiabilidad en el diseo del aparato. R EXT junto con el capacitor C EXT forman un filtro pasabajos con una frecuencia de corte de 1kHz que se encarga de eliminar la posibilidad de disparo por seales espurias. Tenga en cuenta que si vamos a considerar eventos muy rpidos, no podremos utilizar este filtro, debiendo colocar un esquema conforme a las circunstancias. Volviendo al esquema de la figura 1, el circuito representa el dispositivo que se colocar en una entrada cuando el sensor a tomar en cuenta se alimenta con una tensin continua de 24V. El sensor puede ser un simple inte-
rruptor (como el mostrado en la figura) o un circuito que en definitiva comandar a un interruptor. El empleo de un optoacoplador cualquiera de usos generales y econmico, permite aislar al sensor de la entrada del PLC y, debido a la configuracin circuital, se puede conectar tanto a una entrada analgica como digital, ya sea TTL o CMOS. El diodo conectado en antiparalelo protege al opto-acoplador de tensiones inversas, ya que la especificaciones de los fabricantes las fijan en 3V. En algunos PLC comerciales, D1 aparece luego del capacitor (D1 protege al circuito de conexiones inversas). La corriente en el opto-transistor es del orden de los 5 mA. Cuando el opto-transistor se satura , entre colector y emisor de dicho transistor habr una tensin (de saturacin) del orden de 1V, de modo tal que al conectar una resistencia de 820 y alimentando al optoacoplador con 5V, se tiene una corriente de emisor de saturacin del orden de 5mA, lo que resulta un margen adecuado de saturacin. Como sabemos, cuando el transistor del opto-acoplador est saturado, entre colector y emisor hay una tensin de 1V,
CIRCUITO DE ENTRADA PARA CORRIENTE ALTERNA Muchos PLCs utilizan sensores que se alimentan directamente con la tensin de red de 220V e, incluso, la falta de suministro de energa es una seal a tener en cuenta. Tambin hay que considerar el caso en que no
Para evitar o disminuir la insidencia de ruidos e interferencias, se deben tomar precauciones tales Figura 2 como proteccin por medios de circuitos, como aislacin galvnica, filtros pasabajos, tomas de tierra en toda la instalacin y cables bifilar retorcidos y mallados, en casos extremos. Tomando las debidas Figura 3 precuaciones y teniendo en cuenta que el microprocesador del autmata est tomando slo muestras de lo que sucede con un sensor, es muy poco probable que se reconozca una perSaber Electrnica N 175
Curso de PLCs
Fig. 4
A08, que an no fue excitado. En la segunda lnea estn completas las condiciones S1 y A07, y se produce la excitacin de A08. En la tercera se ratifica lo del scan anterior. De esta forma las bobinas A07 y A08 quedan excitadas durante la segunda vuelta escaneo y al recorrer la primera lnea del programa por tercera vez, las condiciones S1, A07, A08, se cumplen y as se excita la bobina A09; que producir la accin final despus de tres scan consecude arriba hacia abajo y de iztivos con presencia del evento quierda a derecha (vea el circuito S1. de la figura 4). Si durante este proceso en En nuestro primer scan a algn momento desaparece S1, considerar la seal S1 de una en- cae toda la secuencia en ese estrada est en cero, se comienza a caneo y no se produce el resultarecorrer la lnea pero falla la pri- do deseado. mera condicin por lo que la boEsto es slo un ejemplo de bina A09 y el bit imagen corres- cmo se puede evitar una accin pondiente no son excitados. indeseada mediante un escaneo En la segunda lnea sucede lo mltiple. Dicho de otra forma, mismo con A08 y luego con las seales espurias, los ruidos o A07. Por lo tanto los tres rels las condiciones inestables hacen auxiliares estn desexcitados. que los errores se minimicen si Pero si se cierra el contacto se toman los recaudos necesarios externo que excita la entrada y mediante la adecuada prograproduce a travs del sistema macin. operativo la excitacin del bit imagen correspondiente, al empezar a recorrer la primera lnea est la condicin inicial S1, pero falta A07 y A08, y la bobina A09 no se excita. Lo mismo sucede con la bobina A08. Pero en la tercera lnea las condiciones del programa son suficientes para excitar la bobina A07. Al volver a recorrer el programa, en el segundo scan, esta bobina est excitada pero no es suficiente junto a la presencia de S1 para excitar a A09, pues falta
turbacin. Por ejemplo, si estamos tomando 3.000.0000 de muestras por minuto y una perturbacin dura menos de 1ns, casi seguro que sta no va a aparecer. Sin embargo, esta posibilidad no es nula y cuando la decisin que debe tomar el micro del PLC es en base a una seal memorizada, es posible que una perturbacin modifique las decisiones a tomar, brindando una respuesta errnea. Se puede aumentar el rechazo de una perturbacin mediante un diseo adecuado del programa. Recordando el concepto de "scan" y el de memoria imagen en donde se registran los estados anteriores de las seales, es posible detectar que algo no anda bien. Por ejemplo, durante la ejecucin del programa una seal es muestreada durante tres escaneos sucesivos (pueden ser ms si se desea aumentar la seguridad) para verificar que todos poseen el nivel esperado. Durante el "barrido" del programa, las sentencias, son ledas
Curso de PLCs
PLC
LECCIN N9:
n este curso hemos dado los les son las caractersticas que los aspectos generales que ha- fabricantes brindan sobre sus equicen a los autmatas progra- pos. mables. A partir de este momento nos dedicaremos a explicar cmo se programa un PLC, para ello, en Por Horacio D. Vallejo esta leccin veremos qu equipos e-mail: hvquark@ar.inter.net se precisan para esta tarea y cuwww.webelectronica.com.ar
n las primeras lecciones de este curso hemos dado aspectos generales que hacen a los autmatas programables. Sabemos, por ejemplo, que estos equipos poseen una unidad de control central y sistemas de entradas y salidas para comunicarse con el exterior. Tambin hemos dicho que tanto las entradas como las salidas pueden manejar diferentes tecnologas con el objeto de realizar un determinado proceso.
Vimos que existen Autmatas comerciales para ser aplicados directamente a la industria pero tambin publicamos el esquema completo de un PLC de 8 entradas y 8 salidas. Ahora debemos encarar la difcil tarea de programacin pero para ello, primero veremos qu equipos son necesarios para programar un PLC comercial y cules son las caractersticas que nos brindan los fabricantes de estos equipos.
A partiur de la prxima leccin veremos entonces cmo son los pasos a seguir para desarrollar diagramas de flujo con el objeto de aprender a programar un PLC.
EQUIPOS DE PROGRAMACIN El equipo de programacin de un PLC debe proporcionar el medio para que puedan grabarse en la memoria las instrucciones que definen las secuencias de con-
Saber Electrnica
Curso de PLCs
trol del equipo, en un lenguaje explcito (esquemas de contactos, bloques funcionales, ecuaciones de Boole, etc.), que no es directamente interpretable por el procesador. A diferencia de lo que ocurre en una computadora, el trabajo de produccin del programa se realiza en un procesador y la ejecucin del mismo es tarea de otro P. Precisamente, la programacin se realiza en la Unidad de Programacin y la ejecucin del programa se lleva a cabo en la Unidad de Proceso Central del autmata. El equipo de programacin puede producir cdigos de instrucciones directamente ejecutables por el procesador central o bien un cdigo intermedio, que ser interpretado por un programa residente en el procesdor central. Este es el caso de los fabricantes que ofrecen procesadores con distintas capacidades, basados en diferentes microprocesadores, pero que emplean el mismo equipo de programacin para todos ellos. Un equipo de programacin debe realizar las siguientes tareas: 1) La programacin del autmata mediante la introduccin de las instrucciones, ya sea en la memoria del procesador o en una memoria especfica del equipo de programacin. Luego debe visualizacin del programa en memoria, realizar la modificacin y edicin del programa y hasta detectar los errores de sintaxis o formato. 2) Realizar un back-up de todo el proceso que lleva a cabo el autmata. 3) Visualizar y verificar la dinmica del programa. 4) Visualizar los cdigos de error en el sistema. 5) Realizar tareas de mantenimiento tendientes a corregir posibles averas. Para realizar la programacin se suelen emplear consolas especficas que no son ms que computadoras tipo PC con teclado y pantalla, construidas de forma robusta para poder ser empleadas en el lugar de trabajo. En general disponen de un dispositivo de archivo de los programas, en cinta o disco, y de salida a impresora para poder obtener listados del programa. Las ms modernas poseen la capacidad de realizar determinadas funciones como las operaciones de edicin, anlisis de secuencias de E/S, acceso a la memoria de datos, etc. Cabe aclarar que existen terminales de programacin que mediante tcnicas de CAD permiten la programacin directa de circuitos elctricos en formato DIN. Con el objeto de reducir costos, los diseadores han desarrollado componentes de interconexin y paquetes de programas que permiten que se emplee una computadora PC cualquiera como terminal de programacin. Los autmatas comerciales pueden trabajar en forma autnoma, es decir, sin estar conectados al procesador; as la programacin y edicin pueden desarrollarse en reas de oficina, y posteriormente se puede realizar una transferencia de informacin a la memoria del Autmata en la fbrica. La conexin de la Unidad de
Figura 1
programacin a la Unidad Central se hace mediante un enlace serie (RS-232C o RS-422). Otra alternativa es el uso de pequeos terminales tipo calculadora de sobremesa, que ofrecen la mayora de operaciones de programacin, edicin, visualizacin y acceso a datos del programa. La figura 1 muestra un microautmata con su terminal para conexin con la Unidad de Programacin mientras que en la figura 2 se puede ver un PLC de mejores prestaciones que tambin posee su unidad de programacin y visualizacin. Un programador tipo calculadora (como puede ver en la figura 3), dispone de un teclado de instrucciones y un numrico y un pequeo display en el que se visualiza el programa, instruccin por instruccin, o en otros ms capaces se visualiza un grupo de instrucciones o un circuito lgico.
CARACTERSTICAS DE PLCS COMERCIALES Son muchos los faricantes de autmatas, entre los que podemos nombrar Omron, Dadac, Honeywell, Square, etc. Todos ellos suelen dar caracte-
Saber Electrnica
rsticas de sus equipos, por ejemplo, el autmata de la figura 1 posee las siguientes caractersticas: Micro PLC de altas prestaciones y conforme a las directivas CE. Funciones: contadores de alta velocidad, control de sincronismo, control anlogico, etc. Comunicaciones Host Link con ordenador personal va RS232C y RS-422. Enlaces punto a punto con otros PLCs. Juego de Instrucciones: 79 instrucciones.
Capacidad de Programacin: 2.048 palabras. N max. de puntos de E/S: 100 puntos. Velocidad de proceso: 0.72 a 16.2 s instruccin. Los equipos de la figura 2, modelos CPM1, poseen las siguientes caractersticas: Micro PLC de altas prestaciones y conforme a las directivas CE. Funciones: contadores de alta velocidad, control de sincronismo, control analgico, etc. Comunicaciones Host Link
con ordenador personal va RS232C y RS-422. Enlaces punto a punto con otros PLCs. Juego de Instrucciones: 79 instrucciones. Capacidad de Programacin: 2, 048 palabras. N mx. de puntos de E/S: 100 puntos. Velocidad de proceso: 0.72 a 16,2s instruccin. En la tabla 1 se dan los valores nominales correspondientes a las caractersticas generales de algu-
Tabla 1
Saber Electrnica
Curso de PLCs
Tabla 2
Tabla 3
nos modelos de Omron. Cabe aclarar que el fabricante aclara que los componentes internos pueden sufrir desperfectos si se repiten varias veces los ensayos de resistencia de aislamiento con los terminales LG y GR conectados. En la tabla 2 se dan las dimensiones de los bastidores y en la tabla 3 las caractersticas que hacen al area de programacin. Las unidades de E/S de alta densidad disponen de 32 puntos de entrada o de salida, mientras que las unidades de E/S mixtas disponen de 16 puntos de entrada y 16 de salida ms una serie de funciones especiales descritas a continuacin (vea la tabla 4). Entradas rpidas La funcin de entrada de res-
puesta rpida permite leer con total seguridad seales de impulsos de corta duracin, tales como las procedentes de fotomicrosensores. Operacin y diagrama de tiempos Con unidades de E/S estndar, una entrada debe estar en ON durante el periodo de refresco de E/S para que pueda ser leda por el PLC. Las seales de entrada de menor duracin pueden perderse a no ser que se produzcan durante el refresco de E/S. Con las unidades de E/S de alta densidad listadas anteriormente, se utiliza un buffer de entrada rpida para retener seales de entrada de duracin 1 ms 4 ms (seleccionable) para que puedan ser ledas en el rea de IR en el siguiente refresco de E/S. Cualquier impulso que sea igual o
superior que el tiempo mnimo seleccionado puede afectar al programa durante la siguiente ejecucin. Entradas dinmicas Las unidades de E/S mixtas lis-
Saber Electrnica
Tabla 5
tadas en la tabla 5 se pueden utilizar para entrada dinmica de 128 puntos. Cablear seales de entrada de hasta 36 dgitos, significa que se pueden introducir al PLC entradas de teclado, dcadas de seleccin, etc. Operacin en modo de entrada dinmico Con entradas dinmicas, las seales de datos DATA0 a DATA15 se combinan con seales de strobe STB0 a STB15 para reducir el cableado y aumentar considerable-
mente la capacidad de entrada. Por ejemplo, cuando STB0 est en ON, como se muestra a continuacin, los datos deberan leerse de DATA0 a DATA7 y el estado de los interruptores A a D deberan reflejarse en bits 00 a 03 del canal 1n0, donde n es el nmero de la unidad de E/S especial. Salidas dinmicas Las unidades de E/S de alta densidad listadas a continuacin se pueden utilizar para salida dinmica de 128 puntos, reduciendo con-
siderablemente las necesidades de cableado para dispositivos de salida de mltiples dgitos. Con salidas dinmicas, las seales de datos DATA0 a DATA15 se combinan con seales de strobe STB0 a STB15 para reducir cableado y aumentar considerablemente la capacidad de salida. El dispositivo de salida debe ser capaz de recibir seales dinmicas. Por ltimo, en la tabla 6 el fabricante indica la tecnologa empleada para el sistema E/S para cada modelo.
Tabla 6
Saber Electrnica
Curso de PLCs
PLC
LECCIN N10:
EL LENGUAJE DE PROGRAMACIN
n los artculos publicados hasta la fecha ha quedado establecido que en un PLC se realiza el intercambio permanente de informacin entre el proceso y el sistema de control (magnitudes y acciones fsicas), que tienen lugar a nivel del sistema de entradas/salidas. A su vez existe una interaccin entre el operador y el sistema de control para el establecimiento de pasos a seguir, para modificar sentencias de control manual, para la obtencin de in-
formacin de las variables del proceso, etc. Todo intercambio de informacin precisa de una codificacin del mensaje que sea comprensible, tanto para quien da la orden como para quien la recibe; esta codificacin constituye un "lenguaje" y de este tema nos ocuparemos en adelante.
e denomina lenguaje de programacin, a todo intercambio de informacin codificada que implique un mensaje que sea comprensible, tanto para quien da la orden como para quien la recibe y establece un medio sencillo, pero suficientemente preciso, para que el programador pueda especificar la secuencia de tratamiento de la
informacin que se requiere del sistema de control. El lenguaje de programacin no asegura la ejecucin de las secuencias especificadas por el programador ya que puede crearse un lenguaje muy claro pero que sirve de muy poco si no es coherente con las necesidades del autmata, es decir, si no es capaz de explotar
los recursos de la Unidad de Control con la que se establece el dilogo. El lenguaje de programacin que vayamos a utilizar en un PLC se debe caracterizar por responder en forma clara a los problemas de automatizacin para los que se dise la CPU (Unidad Central de Proceso), y debe ser coherente con
Saber Electrnica
Curso de PLCs
las capacidades de sta. Se denomina programa a un conjunto de sentencias definidas por el lenguaje de programacin, que son convenientemente ordenadas para definir una tarea a efectuar por la Unidad Central de Proceso. Para que un PLC comercial trabaje normalmente, generalmente posee un conjunto de programas residentes (firmware), que se suministran con el propio dispositivo. Estos programas deben establecer las condiciones de trabajo de los componentes de entrada y salida del sistema, ejerciendo funciones de vigilancia sobre stos para lograr el correcto funcionamiento del equipo. Tambin tiene que seguir las secuencia de proceso y ejecutar las directivas especificadas en el programa de aplicacin. Para ello se debe definir el programa llevando a cabo una metodologa de programacin generalmente con el empleo de los denominados diagramas de flujo (tema del que nos ocuparemos ms adelante). Una vez definido el programa, el programador las transcribir en forma de instrucciones de acuerdo con el lenguaje de programacin, asociando a cada tarea (instruccin o sentencia) la correspondiente identificacin de las variables de entrada y salida, las variables internas y los registros de trabajo correspondientes. Dicho de otra forma, primero tenemos que saber qu es lo que debe hacer el autmata, luego definir un diagrama coherente que explique justamente lo que debe hacer y luego se deber escribir el programa en un lenguaje de usuario utilizando cualquier sistema de programacin, acorde con el PLC con que estamos trabajando. Una vez escrito el programa. Se lo debe grabar en la memoria del Autmata para lo cual se precisa un equipo de programacin. En la memoria del Autmata se almacenan las instrucciones en forma de cdigos binarios, o lenguaje de mquina, que es el nico capaz de ser interpretado por el procesador de la Unidad Central. Es decir que el Equipo de Programacin debe traducir o compilar las instrucciones del programa escrito por el programador en un lenguaje de cdigo binario o lenguaje de mquina. Esto quiere decir que el Equipo de Programacin debe realizar dos tareas a saber: 1) Debe traducir las instrucciones del lenguaje de programacin a lenguaje de mquina (cdigos binarios). 2) Debe grabar el lenguaje de mquina en la memoria del PLC. Para llevar a cabo la primer tarea primero realiza un anlisis de la sintaxis o formato del programa para poder generar un cdigo intermedio. El cdigo intermedio es un programa intrprete que est almacenado previamente en la memoria, para interpretar esos cdigos y traducirlos al cdigo mquina. En conclusin, podemos decir lo siguiente: El lenguaje de programacin de un autmata es un lenguaje especializado para resolver determinados problemas, dado que el PLC es un dispositivo programable orientado a entradas y salidas. Para programar un PLC hace falta un conjunto de instrucciones nico, aunque la forma de esas instrucciones pueda variar en funcin del origen del equipo y del tipo de lenguaje que se emplee. Ahora bien, cuando el programador realice su trabajo, puede que no sepa en qu autmata se va a utilizar, incluso hasta es posible que no sepa nada de control de sistemas y, por otra parte, el tcinco encargado del rea de control es posible que no sepa nada de programacin, sin embargo, es posible ensamblar lo hecho por el programador con el circuito establecido por el tcnico. Dependiendo de la capacidad de la CPU, el autmata podr interpretar las instrucciones y traducirlas a un lenguaje propio. Adems, en funcin de la tecnologa disponible y de las nuevas aplicaciones de los PLC, el conjunto de instrucciones se va ampliando con nuevas sentencias, especficas de esas nuevas reas de control, denominados lazos de regulacin PID. Cuando se va a realizar un programa el programador tiene en cuenta que existen distintos tipos de instrucciones ya que no es lo mismo ejecutar una sentencia de temporizacin que una manipulacin de datos con el objeto de tomar una decisin. En el conjunto de instrucciones del PLC se pueden considerar los siguientes grupos: - Instrucciones que hacen referencia a funciones lgicas. - Instrucciones de temporizacin. - Instrucciones aritmticas. - Instrucciones que permiten el manejo y la transferencia de datos. - Instrucciones de control del ciclo de ejecucin. - Instrucciones de comunicacin.
Saber Electrnica
Una instruccin es una sentencia que debe llevar a cabo la CPU de acuerdo a determinadas variables, asi tenemos los siguientes tipos de variables: - Variables de entrada y salida discretas (todo-nada). - Variables de entrada y salida numricas. - Variables internas o auxiliares (que son siempre binarias, dado que es el lenguaje que entiende el procesador). - Variables internas numricas (que a su vez sern compiladas dentro del procesador). A cada variable, la instruccin le debe asociar la correspondiente "direccin" de una E/S (entrada/salida) o de un registro. Las instrucciones que hacen referencia a funciones lgicas definen, en el lenguaje empleado, los operadores lgicos booleanos: Y (AND), O (OR) e inversin (NO). Algunos PLC permiten otras operaciones lgicas como la O-Exclu-
siva. Estas instrucciones permiten la resolucin de los tratamienos de informacin correspondientes a procesos lgicos secuenciales, mediante la implementacin de las funciones lgicas o ecuaciones de Boole. Las instrucciones de temporizacin hacen uso de una variable temporizada, que adquiere el estado de una variable de control (estado 0 o 1) transcurrido un tiempo t preestablecido. Por ejemplo, cuando una variable temporizada adquiere el estado lgico 1 de la variable de control, luego de un retardo t, se trata de un temporizador con retardo en la activacin lo que significa que una vez recibida la orden se deber esperar un tiempo t definida por la variable para que la misma tome un estado lgico 1. Ahora, si partimos del estado 1 la variable temporizada alcanza el estado 0 de la variable de control con un retardo t, tenemos un temporizador que se desactivar luego de un tiempo t de re-
Saber Electrnica
Curso de PLCs
Figura 2
donde se encuentre el nmero A, otro donde se encuentre el B y un tercero donde se almacenar el resultado (que puede ser alguno de los dos anteriores, en cuyo caso se perder el nmero anterior). En el programa, la instruccin se completa con una seal de control u orden de ejecucin; algunos equipos permiten programar instrucciones con operaciones mltiples, es decir, la variable destino adquiere el valor resultante de operaciones aritmticas distintas entre ms de dos operandos. En equipos de prestaciones superiores hay instrucciones de clculo, como la extraccin de la "raz cuadrada", operaciones matemticas complejas, y el empleo de notacin en coma flotante, para aumentar la precisin de los clculos. Las instrucciones que permiten el manejo y la transferencia de datos trabajan con variables numricas o contenidos de los registros de datos. Entre ellas hay que considerar las funciones de comparacin
y divisin (/). En estas instruccioriables, X de conteo y X' de descuento. Esto es muy til en un sis- nes, se especifica una variable nutema de control de existencia en la mrica de destino de la operacin que es preciso que se d una alerta que tiene lugar entre otras dos vacuando un determinado suministro riables numricas llamadas regisse est por acabar, pero que es po- tros. As, si desea sumar un nmero sible que un operador cargue di- A con otro B habr un registro cho suministro antes de que se d dicha alarma (y por supuesto el sistema debe contabilizar la nueva existencia). En la figura 3 se muestra lo explicado, aqu hemos supuesto que la variable Up/Down cuenta o descuenta pulsos mientras existe una variable X pero sta puede no existir y la variable X siempre estar o bien contando o bien descontando hasta que llegue a la cuenta que le permita cambiar de estado su salida. Las instrucciones arimticas involucran las operaciones bsicas: suma (+), Figura 3 resta (-), multiplicacin (X)
Saber Electrnica
A slo
$25
CONTIENE:
1) Enciclopedia de Electrnica a Color en 3 Tomos impresos en papel ilustracin a todo color. 2) Video Kit de Electrnica con el que aprende esta materia fcilmente sin cansarse. 3) Video Kit de Computacin con el que aprende computadoras y puede armar sus propios equipos. 4) CD Manual de Electrnica 2001 con ms de 1000 pginas de informacin y 300 Montajes de Electrnica.
El CD es AUTORUN y muy fcil de explorar. Cuenta con un video explicativo y apoyo interactivo a travs de Internet.
Oportunidad nica para tener una enciclopedia de consulta constante con informacin a todo color, ms de 400 proyectos para armar y una gua en videos sobre los temas de mayor inters. Compre los 6 productos por slo $25 si es socio del Club Saber Electrnica
Pdalo en nuestras oficinas o por telfono al (011)4301-8804 (gastos de envo certificado: $10) o por Internet a: ateclien@webelectronica.com.ar. Tambin pdalos por pago contrarreembolso
Curso de PLCs
PLC
LECCIN N11:
E
C
tos;
s indudable que cada diseador emplear una forma personal para programar el autmata que est creando, incluso cada fabricante de equipos comerciales establece un lenguaje de programacin propio. Sin embargo, se puede considerar que
existen dos formas definidas para definir un proyecto (lenguaje). En esta nota nos encargaremos del tema.
Por Horacio D. Vallejo e-mail: hvquark@ar.inter.net www.webelectronica.com.ar
uando un proyectista debe dejar por escrito las funciones y caractersticas que posee el PLC que ha creado, bsicamente emplea uno de los dos siguientes lenguajes: 1) lenguaje de circuitos de contac2) lenguajes literales. Veamos entonces en qu se diferencian unos de otros para luego establecer ejemplos con circuitos
LENGUAJE DE ESQUEMA DE CONTACTOS Un proyecto expresado en este lenguaje constituye el denominado Ladder diagram o circuito maestro. Se trata de un lenguaje grfico que emplea smbolos para representar contactos, rels, registros, etc.
Cada smbolo est identificado con la direccin de una variable de entrada o salida de modo que se los puede combinar convenientemente para definir una condicin que fije el estado de una variable de salida. Dicho de otra forma, dadas una o ms variables, mediante smbolos se establecen condiciones que definen el estado de una salida. Los smbolos empleados deben seguir normas internacionales de forma que un plano pueda ser in-
Saber Electrnica
Curso de PLCs
Tabla 1 -] [-] \ [-( )-(+)-] CMP< [-] GET [-( JSB )-( TON )Contacto NA Contacto NC Salida (variable discreta de salida) Operacin suma de contenido de registros Comparacin (menor que) Lectura del valor (dato) de un registro Salto a subrutina Temporizador se realiza la suma del contenido de los registros B y W, almacenando el resultado en el registro H. Si se activa el contacto C, se verifica el valor de los registros C y X, de forma tal que si stos son iguales se acciona la salida F. Por ltimo, si el contacto D est cerrado, se compara el valor del registro D con el del registro Z de manera que si D<Z se accionar la salida G. Esto quiere decir que el esquema de la figura 1 representa una operacin de comparacin que desencadena una accin de control sobre una o varias variables discretas de salida. El esquema de contactos permite la programacin de secuencias de una cierta complejidad, pero muchas veces el grfico se complica, especialmente cuando se deben realizar muchas operaciones, para simplificar el esquema se introducen instrucciones que manejan datos y registros; pero en todos los casos, las variables discretas de control de estas funciones (expresadas en bloque) continan graficndose en smbolos de contactos. En la figura 2 podemos apreciar cmo se representa una instruccin
terpretado por cualquier especialista. Se puede utilizar la convencin americana segn normas NEMA para la representacin de esquemas elctricos. Esta norma establece un lenguaje que expresa las secuencias de control de forma grfica similar a la empleada en la tecnologa cableada de rels. Las funciones bsicas se expresan mediante combinaciones de smbolos como los mostrados en la tabla 1. Note el empleo de smbolos que poseen operaciones literales que describen una funcin (suma, lectura de un valor, temporizacin, etc.). En la figura 1 hemos reproducido el esquema de un autmata en base a un lenguaje de contactos. A, B, C y D representan contactos normal abiertos (NA), es decir, variables discretas que pondrn en marcha la operacin que se desencadena en la lnea de la que forman parte. Por ejemplo, si se activa el contacto A, entonces se compara el valor almacenado en el registro A con el del registro V, luego si A>V, entonces se activa la salida B. Cada una de las cuatro lneas del diagrama de la figura 1 pertenecen al mismo autmata, de forma tal que si ahora se activa el contacto o variable B (segunda lnea)
Figura 2
Figura 1
Saber Electrnica
Figura 4
en formato de bloque. Dos variables discretas pueden incidir sobre una misma salida ya que con la activacin de cualquiera de ellas se procede a sumar las cantidades almacenadas en dos registros para guardar el resultado en un tercer registro. Hasta se puede indicar el estado de desborde. Se confirma que el formato de bloques permite agrupar en una sola instruccin varias opciones funcionales, tal como queda representado en el smbolo de la figura 3; en este caso en el bloque funcio-
nal se especifican una serie de variables. Por ejemplo, si la lnea de RESET est en 0 (bloque habilitado) y hay una validacin en la lnea de Inicio/Parada, entonces comienza a funcionar un temporizador interno. En el registro DESTINO est el valor del tiempo transcurrido o acumulado, mientras que en el registro de REFERENCIA est almacenado el valor que debe alcanzar la base de tiempo para activar la salida de HABILITACION. El bloque temporizador" graficado permite seleccionar la base de
tiempos TB, es decir, el rango y precisin del temporizador; de hecho el temporizador no es otra cosa que un contador que cuenta los impulsos de un generador o reloj interno del PLC y la base de tiempos permite seleccionar la frecuencia de ese generador. El bloque proporciona dos salidas de forma que una est activada cuando se alcanza el tiempo preseleccionado (HABILITACION), desactivndose la otra que est activada mientras el temporizador temporiza y no se ha alcanzado el valor de referencia.
Saber Electrnica
Curso de PLCs
Tabla 3 Lenguaje booleano tpico Instruccin (Nemnico) ADD AND AND NOT AND LD BCD BIN CMP CNT JME JMP LD LD NOT MOV OUT SUB END Descripcin Suma Funcin lgica Y Funcin lgica NO Y Funcin lgica Y condicionada Convertidor binario a BCD Convertidor BCD a binario Comparacin de variables numricas Contador Retorno o fin de salto Salto condicional Variable de funcin lgica Variable de funcin lgica negada Transferir datos entre registros Variable de salida Resta Fin de un programa dio literal para la transcripcin directa de las ecuaciones de Boole o funciones lgicas que definen una secuencia de control. Para aquellos que estn acostumbrados a realizar tareas de programacin, este tipo de lenguajes representa la transcripcin de sentencias acordes con el set de instrucciones que va a manejar el autmata que describen funciones de suma, carga de registros, operaciones lgicas AND, OR, etc. Es por esto que el lenguaje boolenao o literal se denomina tambin de lista de instrucciones o de nemnicos. Por ejemplo, En la tabla 2 se representa un conjunto de instrucciones con las que se construye el programa de un microcontrolador PIC, mientras que en la tabla 3 podemos ver algunas instrucciones de un lenguaje booleano empleado en autmatas. Por ejemplo, una variable de salida cuyo estado responde a la ecuacin de Boole: Z1= Y1 + (X1 . X2) Esta ecuacin se transcribir en lenguaje nemnico de la forma mostrada en la tabla 4. En general podemos decir que habr tantos lenguajes como equipos e, incluso, diferentes versiones para distintos desarrollos tecnolgicos de un PLC. Los lenguajes basados en el esquema de contactos (ladder diagram) se hallan preferentemente en los equipos de fabricacin americana, mientras que los europeos han desarrollado los lenguajes literales, como evolucin de las ecuaciones de Boole y los lenguajes de bloques funcionales. Podemos decir entonces que lo que se define con cada lenguaje particular es una ecuacin booleana que expresa la condicin de estado de una variable de salida del sistema.
Como puede apreciar, el esquema de contactos es un lenguaje que facilita una tarea de programacin, dado que en l se expresa claramente qu es lo que se quiere lograr. En la figura 4 se muestra el bloque que representa una transferencia de datos, en este caso, en una sola instruccin o smbolo se establece que cuando llega la instruccin de transferencia a travs de una lnea de control, se produce el traspaso de informacin desde un registro ORIGEN a un registro DESTINO.
LENGUAJES LITERALES Estos lenguajes describen directamente o en forma literal las ecuaciones que permiten que se lleve a cabo una operacin y reciben el nombre de lenguajes booleanos ya que proporcionan un me-
Tabla 4 Ejemplo de aplicacin del lenguaje Booleano. Instrucciones LD X1 AND X2 OR Y1 OUT Y1 Descripcin Cargo X1 Hago Operacin AND con X2 Al resultado hago operacin lgica OR con Y1 El resultado lo envo a la variable Z1
Saber Electrnica
Curso de PLCs
PLC
LECCIN N12:
EL LENGUAJE LADDER
PRIMERA PARTE
os controladores lgicos programables son controladores electrnicos digitales aparecidos a comienzos de los 70 para reemplazar a los circuitos de rels electromecnicos, interruptores y otros componentes utilizados para el control de los sistemas de lgica combinacional. El uso de un lenguaje de programacin con una estructura o representacin similar a la de los arreglos de relevadores en escalera (diagramas de escalera), fue una buena eleccin para construir programas que manejen a estos dispositivos, ya que facilit el entrenamiento de los operadores que ya conocan estos diagramas. As, el
primer lenguaje de programacin para PLC's, considerado de bajo nivel, fue el "Lenguaje LADDER o de Escalera". An hoy se utiliza este lenguaje, as como el "lenguaje Booleano" que se basa en los mismos principios del lgebra booleana. Este ltimo utiliza nemnicos (AND, OR, NOT, NAND, etc.) enteramente equivalentes al Lenguaje de Escalera. En este captulo hablaremos de los principios de programacin LADDER.
INTRODUCCIN En todo proceso industrial existe una secuencia de operaciones en las que las variables del proceso (temperatura, humedad, nivel de unlquido, tiempos, etc.) estn definidos para obtener resultados esperados. Los procesos industriales requieren algn tipo de programa de coordinacin, supervisin o control, lo
cual hace necesario un proceso de automatizacin de estas funciones que se pueden llevar a cabo de muchas formas. Hace slo un par de dcadas este proceso requera una secuencia de operacin en base a rels que comandaban mdulos de control de variables continuas y tableros indicadores, estos indicadores le decan al operador lo que deba hacer, es decir, el sistema era semiautomtico. Si se deba modifi-
car el proceso de control por algn motivo, normalmente esto requera un desembolso importante de dinero y realizar el cambio podra demorarse bastante. Para atender a los sistemas que precisaban cambios constantes, se pens en un sistema donde las variables pudieran ser gobernadas mediante el accionamiento de rels, levas, o algn otro mecanismo. Es evidente que con el avance
Saber Electrnica
Curso de PLCs
de la tecnologa, es posible realizar modificaciones con el simple comando a travs del teclado de una computadora, con lo cual es posible realizar el sensado de contactos, actuacin de rels y contactores, conteo de variables, temporizacin, procesamiento de seales continuas, etc. El uso de una computadora permite cambiar la funcionalidad del control del proceso si ms que cambiar el programa, pues los elementos clsicos de control del sistema tales como rels, temporizadores, etc., se definen dentro del programa interno de la computadora que ahora realiza el control del proceso industrial. Es ms, muchas veces las modificaciones son tantas que es preciso aumentar la capacidad del sistema y en ese caso slo se puede expandir el hardware para cumplir con las nuevas exigencias. La computadora o mejor dicho: el sistema de control computarizado debe ser programable con facilidad por los tcnicos que suelen operar el sistema y, adems, se debe poder disponer de todos los componentes de control sin demoras y con bajo costo. En los sistemas de lgica combinacional, el estado de una salida queda determinado por el estado de una cierta combinacin de entradas sin importar la historia de stas. Los PLC's resultaron muy prcticos ya que, a diferencia de los antiguos circuitos pueden ser reprogramados en proceso, ocupan muy poco espacio, consumen poca potencia, poseen sistemas de auto-diagnstico y tienen un reducido en funcin de las prestaciones que ofrecen. Los PLC's pueden realizar operaciones aritmticas, tratamientos complejos de datos, poseen mayor capacidad de almacenamiento y pueden comunicarse ms eficientemente con el programador y con otros controladores y computadoras en redes de rea local (LAN). Adems, ahora muchos PLC's incorporan instrucciones y mdulos para manejar seales anlogas y para realizar estrategias de control, ms sofisticados que el simple ONOFF, tales como el control PID, inclusive con mltiples procesadores. Precisamente, un PLC es una computadora fcilmente programable para realizar tareas de control, pensada para ser utilizada en un ambiente industrial Dicho de otra manera, un controlador lgico programable (PLC) es toda mquina electrnica diseada para controlar en tiempo real y en medio industrial procesos secuenciales. Sin embargo, esta definicin est quedando obsoleta, ya que han aparecido los micro-plc's, destinados a pequeas necesidades y al alcance de cualquier persona. Tal como comentamos, un PLC suele emplearse en procesos industriales que tengan una o varias de las siguientes necesidades: Espacio reducido. Procesos de produccin variables. Procesos de produccin secuenciales. Instalaciones de procesos complejos. Necesidades de chequeo de programacin centralizada de las partes del proceso. De esta manera, son ampliamente utilizados en el control de maniobras de mquinas, maniobra de instalaciones y en aplicaciones de sealizacin y control. No podemos dejar de lado los pequeos PLCs para uso ms personal (que se pueden emplear, incluso, para automatizar procesos en el hogar, como la puerta de un cochera o las luces de la casa). Cabe aclarar que, si bien uno de los inconvenientes de utilizar estos dispositivos radica en la capacitacin del personal que los va a utilizar, en la mayora de las universidades de la especialidad se ensea tanto el funcionamiento como su empleo por lo cual es un tema superado. En cuanto al costo tampoco hay problema, ya que hay PLCs para todas las necesidades y a precios bajos. Los PLC poseen una CPU, memoria, perifricos, etc. La CPU, es la encargada de ejecutar el programa almacenado en la memoria por el operador. La CPU toma, una a una, las instrucciones cargadas por el usuario y las va ejecutando. Cuando termina la secuencia de instrucciones programadas, el contador de programa de la CPU retorna al principio y sigue ejecutndolas de manera cclica. La memoria almacena el programa de aplicacin o de usuario y guarda el estado de las variables internas del programa como por ejemplo el haber alcanzado una temperatura determinada o haber procesado un nmero de piezas estndar. Los perifricos constituyen la interfaz entre el PLC y el sistema controlado. Constituyen entradas y salidas lgicas y pueden tambin, dependiendo de la complejidad de cada PLC, incluirse entradas y salidas analgicas (o sea, capaces de tomar cualquier valor entre determinados mximo y mnimo) o entradas especiales para pulsos de alta frecuencia como los producidos por codificadores, o salidas para lazos de 4 a 20mA. El tipo ms comn de entrada lgica es la dada por un interuptor o la optoacoplada, en la que la corriente de entrada acta sobre un LED, que a su vez ilumina un fototransistor que da el dato a la CPU sobre el estado de dicha variable (entrada). La salida ms comn es el rel, que permite el manejo de corrientes aceptables, tanto continuas como alternas. Su principal desventaja es el tiempo de respuesta, que puede resultar alto para algunas aplicaciones; en dicho caso se emplean rels electrnicos (tiristores o triacs), transistores, etc. El triac es una llave de estado s-
Saber Electrnica
lido para manejo de tensiones alternas. Al igual que el transistor es rpido y menos robusto que el rel que puede manejar corriente alterna. Las salidas del PLC deben protegerse contra las sobretensiones que pueden aparecer sobre ellas, por infinidad de causas, como ser seales interferentes, tensiones inducidas, etc. Un PLC fijo consiste en un solo gabinete en el que se integran la CPU, la fuente de alimentacin (para el propio PLC y con capacidad de reserva que le permite tambin alimentar algunos sensores), y una determinada cantidad de entradas y salidas. Un PLC fijo es creado con un propsito determinado y no se puede expandir. Los PLC modulares son una alternativa que permite la expansin del sistema. En ellos, la CPU, la fuente de alimentacin, las entradas, las salidas, etc., son cada una un mdulo que se elige en funcin de la aplicacin y se montan sobre un rack para conseguir la capacidad de procesamiento adecuada, con entradas y salidas acordes con las necesidades del sistema. En funcin de lo dado en este curso, el lector puede dedcir que un
sistema bsico de control con PLC posee una arquitectura como la mostrada en la figura 1. El proceso posee N variables, con una determinada cantidad de entradas (correspondiendo cada una a un sensor de alguna de las variables del proceso) y otras tantas salidas que comandan los diferentes actuadores. Por ejemplo, cuando la temperatura de un horno est baja, un sensor dar la informacin al PLC por medio de una entrada, el programa interno del procesador ejecutar las instrucciones apropiadas y dar una orden a una salida para que se ponga en marcha el mecanismo que acciona el mechero del horno para que levante la temperatura. Los actuadores son dispositivos de diferente tipo que permiten modificar el estado del sistema tal como lo define el conjunto de sus variables caractersticas . Con la estructura mostrada en el esquema de la figura 1, la operacin de nuestro control de temperatura con PLC sera la siguiente: El PLC lee permanentemente la entrada correspondiente al sensor de temperatura, cuando encuentra que la temperatura es menor a la deseada, conecta el calefactor y lo des-
Lenguajes de Programacin de un PLC Como dijimos al comienzo de esta nota, el uso de un lenguaje de programacin con una estructura o representacin similar a la de los arreglos de relevadores en escalera (diagramas de escalera), fue una buena eleccin para construir programas que manejen a estos dispositivos, ya que facilit el entrenamiento de los operadores que ya conocan estos diagramas. As, el primer lenguaje de programacin para PLC's, considerado de bajo nivel, fue el "Lenguaje LADDER o de Escalera". An hoy se utiliza este lenguaje, as como el "lenguaje Booleano" que se basa en los mismos principios del lgebra booleana. Este ltimo utiliza nemnicos (AND, OR, NOT, NAND, etc.) enteramente equivalentes al Lenguaje de Escalera. Luego aparecieron los lenguajes de alto nivel como el "lenguaje de escalera" pero, con la adicin de funciones especiales complejas, que en el diagrama de escalera aparecen
Saber Electrnica
Curso de PLCs
en el lugar de las salidas. En base a esta tcnica se desarrollaron los Lenguajes Especiales de Computadora, tambin de alto nivel, que son muy similares a los lenguajes de programacin de computadoras como el Basic y el C, para hacer cada vez ms amigable la programacin. Los lenguajes de lgica de relevadores en escalera, utilizan un marco de programacin que obliga al programador a centrarse en cada salida individualmente, en lugar de hacerlo en el flujo y operacin del proceso o sistema que se controla. La programacin con un mtodo escalera requiere el uso de soluciones de casos especiales, eliminando la posibilidad de una programacin sencilla. Sin embargo, los programas resultantes son difciles de modificar por no tener una estructura modular. Para disminuir este inconveniente, se realizan programas a medida basados en reglas que, muchas veces, obedecen a una lgica de estado. La lgica de estado hace referencia a lenguajes de alto nivel o lenguajes de mquina. Con estos lenguajes, el desarrollo y modificacin del sistema es mucho ms fcil y rpida que con lenguajes de nivel ms bajo. El programador puede olvidarse de los cdigos concentrndose simplemente en conocer a fondo el sistema de control. Si se emplea esta lgica de programacin, el proceso en un sistema real, atraviesa una secuencia de estados y cada mquina o proceso es un conjunto de dispositivos o componentes fsicos. Adems la operacin de cualquiera de estos dispositivos, puede ser descrita como una secuencia de pasos con respecto al tiempo. Inclusive los procesos continuos pasan por estados (arranquemanual o automtico, operacin normal y parada). Las condiciones de prueba o eventos que causan que un dispositivo cambien de estado tambin son fciles de programar, por ejemplo: "si la temperatura est por debajo de T1, arranque el calefactor 1 y encienda la luz indicadora". As, todas las actividades fsicas pueden ser explicitadas en esta forma. Aqu se utiliza un modelo jerrquico, en el cual existen tareas (tasks), subdivididas en estados (states), los cuales son enunciados (statements) por comandos. Los TASKS o Tareas son el elemento primario del modelo de lgica de estado. Una tarea es una descripcin de una actividad del proceso, expresada secuencialmete y en relacin al tiempo. Si estuvisemos describiendo el proceso de horneado de pan tendramos, la tareas de carga del horno, la tarea de control de temperatura, la tarea de encendido de los calefactores, la tarea de apagado del horno, etc. Los STATES o Estados describen el valor de una salida. Cada estado implica un conjunto de "tiempos" por los cuales pasa la tarea. Cada estado contiene tambin las reglas de transicin de estados. Los SATEMENTS o Enunciados describen la actividad relacionada con la salida de cada estado. Es el conjunto de comandos que describen los estados. Con el fin de simplificar la tarea de programacin, y de hacerla accesible a quienes no han tenido experiencia previa con computadoras, se han concebido distintos mtodos ms o menos estndard de programacin de PLC. Uno de estos mtodos, es la utilizacin de cdigos de operacin en la forma de listado que le indica al PLC la secuencia exacta de operaciones a realizar. Estas operaciones son del tipo MNEMONICOS, es decir, cdigos que indican sentencias: GOTO (vaya a), LOAD (cargue), etc. Otro mtodo consiste en la utilizacin de smbolos grficos que representan determinadas operaciones bsicas del PLC. Este sistema est estandarizado y no depende de la marca de PLC que se est programando. Por otra parte, existen programas para computadora que permiten construir los programas de PLC de forma grfica, por manipulacin de estos smbolos. Dicho de otra manera, se puede tener en la pantalla de una computadora una grfica o dibujo que represente el sistema que se est controlando y, por ejemplo, clicar sobre un smbolo que representa a una canilla para controlar la apertura de una vlvula. Pero, como venimos diciendo en este curso, el mtodo de programacin ms usado es quiz el LADDER, por poder asemejarlo a diagramas elctricos (en la leccin anterior definimos al lenguaje escalera como un lenguaje de contactos, vea la figura 1 de dicha leccin - Saber Electrnica N 178 -). En la prxima edicin daremos la segunda parte de esta leccin, en la que describiremos la estructura del lenguaje LADDER, para que estemos en condiciones de dar ejemplos
Arquitectura de un PIC Manejo de las Instrucciones Aprendiendo a Programar con Sistemas Prcticos Reales
Ya se encuentra en los mejores puestos de venta de revistas: Argentina: $15 - Otros Pases: U$S 9
Saber Electrnica
Curso de PLCs
PLC
LECCIN N12:
EL LENGUAJE LADDER
SEGUNDA PARTE
n la edicin anterior dijimos que an hoy se sigue utilizando la programacin tipo escalera o Ladder, por ser un lenguaje comprensible por electricistas y tcnicos en electrnica que realizan el mantenimiento de empresas que han incorporado automatismos electrnicos en sus procesos de produccin. Es por este motivo
que decidimos introducirnos al mundo de la programacin a travs de este mtodo. A continuacin veremos qu es el lenguaje Ladder y cul es la sintaxis de la programacin. Por Horacio D. Vallejo e-mail: hvquark@ar.inter.net www.webelectronica.com.ar
INTRODUCCIN Cuando decid escribir artculos sobre PLC, al principio cre conveniente hablar sobre equipos comerciales pero las primeras consultas realizadas por los lectores me hizo caer en la cuenta que la gran mayora de las personas que trabajan con autmatas desconocen la capacidad de estos equipos. Es por eso que a lo largo de las 12 primeras lecciones de este curso he intentado definir qu es un automatismo, cmo son las entradas y salidas, de qu forma debe conectarse un PLC con el mundo exterior y cmo pue-
den ser los equipos comerciales. Sin embargo, en la leccin N 10 comenzamos a describir los lenguajes de programacin, introduciendo los conceptos de seal y variable, entre otras cosas; luego estudiamos el lenguaje de contactos, tal como se conoce a la forma grfica de describir la programacin escalera (ladder). En este captulo volveremos a redefinir los elementos de esta programacin, tratando de emplear el lxico comprendido internacionalmente, dando ejemplos que le permitan al lector comprender fcilmente su sintaxis. El nombre del mtodo de progra-
macin ladder (que significa escalera en ingls) proviene de su semejanza con el diagrama del mismo nombre que se utiliza para la documentacin de circuitos elctricos de mquinas, etc. (que nosostros hemos llamado lenguaje de contactos). En estos diagramas se emplean smbolos cuyo significado fue estudiado en la leccin N 10 y que sintetizamos en la figura 1. Un diagrama que explica un ejemplo de programacin ladder se muestra en la figura 2. Para entender la estructura debemos considerarlo como un circuito elctrico. La lnea vertical izquierda represen-
Saber Electrnica
Curso de PLCs
Figura 2
binas de rel). Con esta simbologa, la salida 1 (carga 1), Figura 1 en el primer rengln, lnea escaneada o RUNG, est conectada cuando se activa la bobina del rel 12 (no est presente en el grfico) cuyos contactos normal abiertos estn en serie con dicha carga. En el segundo rung, la carga 2 se activar slo cuando el contacto 10 est cerrado, ya que slo as podr circular corriente. En el tercer rung, las cargas 3 y 4 (conectadas en paralelo) se activarn cuando el contacto 20 no est actuado (20 es un contacto normalmente cerrado, por lo cual no debe estar actuado si queremos que por l circule corriente). El cuarto rung representa la conexin en serie de dos contactos (denominados 10 y 30) para que slo se conecte la carga 5 cuando ambos estn cerrados. En el quinto y ltimo rung, la carga 6 se activar si el contacto 40 no est actuado (vea que es un contacto normal cerrado) y si adems estn cerrados los contactos 30 50 ambos. Recuerde que, cuando las cargas son bobinas de rels, sus contactos reciben el nombre de la carga. Para entender esto, vea el grfico de la figura 3. Segn la programacin ladder, la carga 1 se activar cuando no est actuado el contacto 5 y se active la bobina del rel 4 (no presente en el circuito) para que se cierren sus contactos. Una vez que se activa la carga 1, se cierran las contactos 1 y ya no hace falta que est activado 4 para mantener la carga activada. Es decir, supongamos que la carga no se encuentra activada, por lo que el contacto 1 est abierto y el contacto 5 est cerrado. En estas
ta un conductor que posee una tensin aplicada respecto de masa, y la lnea vertical derecha representa precisamente el conductor de tierra o masa. El smbolo l l representa un contacto normalmente abierto y el smbolo l/l representa un contacto normalmente cerrado. El smbolo ( ) representa una carga, por lo general bobinas de rels, lmparas indicadoras, etc. Las lneas horizontales representan ramas de circuitos que suelen denominarse lneas de escaneo o rungs. Muchas veces, la carga conectada en un rung puede ser la bobina de un rel cuyos contactos asociados estn en el mismo rung o en otro y en ese caso, la denominacin de la bobina y sus contactos suele ser la misma para que el operador pueda asociarla con facilidad. En el ejemplo de la figura 2 no hay ningn contacto asociado a las cargas (bo-
Figura 3
Saber Electrnica
condiciones si se acta momentneamente el contacto 4, la carga 1 queda energizada y el contacto auxiliar 1 se cierra. Ahora, si se libera el contacto 4, sigue existiendo un camino para la corriente, por lo que una vez conectada la carga slo se la puede desconectar actuando el contacto 5. Por lo dicho, este esquema elctrico representa un sistema de encendido y apagado de una carga con un pulsador de arranque y otro de parada. Antes de continuar con la explicacin de nuestra forma de programacin, observe atentamente el circuito elctrico representado en la figura 4 e intente explicar su funcionamiento Bien, veamos si lo que ha deducido es lo correcto. Suponemos que inicialmente ninguna de las salidas est activada, ya que acabamos de alimentar al sistema, por lo que el contacto 10 permite el paso de corriente y se activa la carga 20. Esto permite que se cierren los contactos 20 del segundo rung con lo cual se activa la carga 10, haciendo que se abran los contactos del primer rung. Al suceder esto, se interrumpe la alimentacin de la bobina 20, con la consecuente liberacin de su contacto auxiliar y la desconexin posterior de la bobina 10. A partir de este momento el ciclo se repite indefinidamente por lo cual hemos construi-
DEL
No quedan dudas que hasta ahora, el sistema de programacin ladder tiene una gran similitud con un circuito elctrico. De esta manera se simplifica muchsimo el aprendizaje por parte de personas que tengan una mnima familiaridad con sistemas elctricos y electromecnicos. Por otra parte, todos los lenguajes, sean naturales como el castellano o el ingls; o artificiales, como lo
Saber Electrnica
Curso de PLCs
Figura 7
Figura 6
son todos los lenguajes de programacin, tienen un vocabulario y un conjunto de reglas para combinar las palabras en sentencias comprensibles. No pretendo que aprenda a programar un PLC pero si quiere manejarlo es preciso que conozca cules son los elementos disponibles por el programador para expresar lo que la mquina debe hacer y la sintaxis del lenguaje que ha de utilizar o sea, las formas permitidas de conectar los elementos para poder expresar acciones que no resulten redundantes o ambiguas. Cada rung del programa ladder, tiene en el margen izquierdo un conjunto de condiciones que deben cumplirse para activar las salidas que se encuentran en el margen derecho. Por lo tanto, la primera regla consiste en saber que todas las entradas deben escribirse sobre el margen izquierdo y todas las salidas sobre el margen derecho. Tambin dijimos que los elementos a evaluar para decidir si se debe activar o no las salidas en determinado rung, son variables lgicas o binarias, que pueden tomar slo dos estados: abierto o cerrado (1 0), y que provienen de entradas asociadas al autmata o de rels internos del PLC. En la programacin ladder, estas variables se representan por contactos, que pueden estar en solo dos estados: abierto o cerrado. La combinacin de las variables de entrada se realiza a travs de las llamadas "Funciones Lgicas", que suelen representarse por cuadros conocidos como "Tablas de Verdad". Existe una equivalencia entre las tablas de verdad, la lgica de contactos y la forma en que expresamos verbalmente la operacin de una funcin lgica. En la figura 6 se observa la equivalencia entre la funcin negacin y la lgica de contactos empleada por ladder, vea que esta funcin representa un contacto normal cerrado de modo que la salida est activada slo si la entrada est desactivada. En la figura 7 se observa la funcin lgica AND que se representa por medio de dos contactos en serie con la carga de modo que hace falta
Arquitectura de un PIC Manejo de las Instrucciones Aprendiendo a Programar con Sistemas Prcticos Reales
Ya se encuentra en los mejores puestos de venta de revistas: Argentina: $15 - Otros Pases: U$S 9
Saber Electrnica
que ambos contactos (entradas) estn activados para que se active la salida. En la figura 8 se observa la funcin lgica OR que se representa por medio de dos contactos en paralelo que estn en serie con la carga de modo que hace falta que slo un contacto (entradas) est activado para que se active la salida. Para construir el diagrama de lgica de contactos debemos fijarnos en los renglones de la tabla de verdad Si Ud. es suscriptor de la obra, reclmelo GRATIS!!! en los que la salida debe esC ONTIENE : tar activada. En la figura 8 Fascculos 1 a 4 de la Enciclopedia resultan ser el primero, el seTomo 1 de Electrnica en Accin (que trata temas tales como: gundo y el cuarto. Cmo evaluar las caractersticas de un equipo de audio, Memorias, Sintetizador para Msica Electrnica, Tecnologa de fabricacin de componentes, Como existe ms de una Montajes, etc.). situacin en la que la salida Tomo 1 de Circuitos Integrados con la explicacin, caractersticas y montajes con los integrados ms utilizados en electrnica. debe activarse, vemos que Video Presentacin: a travs del cual el Ing. Vallejo lo gua paso a pala salida se activar cuando so para el estudio de la obra. Video de Electrnica Bsica: para que Ud. aprenda electrnica mediante un se cumpla la condicin del mtodo audiovisual sencillo y fcil de comprender. primer rengln de la tabla de Programas: 1) Laboratorio Virtual con la posibilidad de disear circuitos verdad, O (OR) la condicin impresos. 2) DEMO clsico del laboratorio explicado en Saber Electrnica. 3) Programa para crear el circuito imprede los proyectos creados en el Workbench. 4) Compresor-descompresor de archivos+parche para espaol+videl segundo rengln, O (OR) so deo demostrativo. 5) Programador de microcontroladores y memorias. 6) Lector de Tarjetas: carpeta que contiene la condicin del cuarto ren- diferentes archivos sobre tarjetas telefnicas, incluyendo varios programas lectores. gln. Comparando esto con la tabla de verdad de la funcin OR, vemos que tendremos que poner circuitos en paraValor del CD: Argentina: $15, Mxico: $10 M.N., Otros Pases: U$S15. Si es suscriptor, reclmelo GRATIS. lelo. Cada una de las ramas Si an no est suscripto a esta enciclopedia, hgalo llamando ahora al 4301-8804 y reciba sin cargo los 6 CDs de la obra.
Saber Electrnica
PLC
Leccin N 13
INTRODUCCIN En las mquinas controladas por sistemas informticos, el lenguaje es el medio que utiliza el hombre para gobernar su funcionamiento, por lo que su correcta adaptacin con la tarea a realizar y la sencillez de manejo, son factores determinantes del rendimiento obtenido en los robots industriales. Hay varias maneras de comunicarse con un robot, y tres soluciones generales para lograrlo, que son reconocimiento de palabras separadas, enseanza y repeticin y lenguajes de programacin de alto nivel. Los sistemas de reconocimiento de la voz en la tecnologa moderna son bastante primitivos y suelen depender de quien habla. Estos sistemas pueden reconocer un conjunto de palabras concretas de un vocabulario muy limitado y en general exigen al usuario una pausa entre las palabras, aunque en la actualidad es posible reconocer las palabras separadas en tiempo real debido a los cada vez ms rpidos componentes de las computadoras y algoritmos de procesamiento ms eficientes, la utilidad del reconocimiento de palabras separadas para describir la tarea de un robot es
bastante limitada. La enseanza y repeticin, tambin conocido como guiado, es la solucin ms comn utilizada en el presente para los robots industriales. Este mtodo implica ensear al robot dirigindole los movimientos que el usuario desea que realice. La enseanza y repeticin se lleva a cabo normalmente con los siguientes pasos: 1) dirigiendo al robot con un movimiento lento utilizando el control manual para realizar la tarea completa y grabando los ngulos del movimiento del robot en los lugares adecuados para que vuelva a repetir el movimiento; 2) reproduciendo y repitiendo el movimiento enseado; 3) si el movimiento enseado es correcto, entonces se hace funcionar al robot a la velocidad correcta en el modo repetitivo. Guiar al robot en movimiento lento, puede ser en general llevado a cabo de varias maneras: usando un joystick, un conjunto de botones (uno para cada movimiento) o un sistema de manipulacin maestro-esclavo. Los lenguajes de programacin de alto nivel suministran una solucin ms general para resolver el problema de co-
municacin hombre-robot. En la dcada anterior, los robots fueron utilizados con xito en reas tales como soldadura por arco voltaico o pintura con spray utilizando el guiado (Engelberger [1980]). Estas tareas no requieren interaccin entre el robot y su entorno y pueden ser programadas fcilmente por guiado. Sin embargo, la utilizacin de robots para llevar a cabo las tareas requieren tcnicas de programacin en lenguajes de alto nivel ya que el robot de la lnea de produccin suele confiar en la realimentacin de los sensores y este tipo de interaccin slo puede solo puede ser mantenida por mtodos de programacin que contengan condiciones. Los lenguajes clsicos empleados en informtica, como el FORTRAN, BASIC, PASCAL, etc., no disponen de las instrucciones y comandos especficos que necesitan los robots, para aproximarse a su configuracin y a los trabajos que han de realizar. Esta circunstancia, ha obligado a los constructores de robots e investigadores a disear lenguajes propios de la Robtica. Sin embargo, los lenguajes desarrollados hasta el momento, se han dirigido a un determinado modelo de manipulador y a una tarea concreta, lo que ha impedido la
Saber Electrnica
PLC
Leccin N 13 - Conclusin
PROGRAMACIN TEXTUAL EXPLCITA El programa queda constituido por un texto de instrucciones o sentencias, cuya confeccin no requiere de la intervencin del robot; es decir, se efectan "off-line". Con este tipo de programacin, el operador no define, prcticamente, las acciones del brazo manipulado, sino que se calculan en el programa, mediante el empleo de las instrucciones textuales adecuadas. En una aplicacin tal como el ensamblaje de piezas, en la que se requiere una gran precisin, los posicionamientos seleccionados mediante la programacin gestual no son suficientes, debiendo ser sustituidos por clculos ms perfectos y por una comunicacin con el entorno que rodea al sistema. En la programacin textual, la posibilidad de edicin es total. El robot debe intervenir, slo, en la puesta a punto final. Segn las caractersticas del lenguaje, pueden confeccionarse programas de trabajo complejos, con inclusin de saltos condicionales, empleo de bases de datos, posibilidad de creacin de
mdulos operativos intercambiables, capacidad de adaptacin a las condiciones del mundo exterior, etc. Dentro de la programacin textual, existen dos grandes grupos, de caractersticas netamente diferentes: 1. Programacin textual explcita. 2. Programacin textual especificativa. En la programacin textual explcita, el programa consta de una secuencia de rdenes o instrucciones concretas, que van definiendo con rigor las operaciones necesarias para llevar a cabo la aplicacin. Se puede decir que la programacin explcita engloba a los lenguajes que definen los movimientos punto por punto, similares a los de la programacin gestual, pero bajo la forma de un lenguaje formal. Con este tipo de programacin, la labor del tratamiento de las situaciones anormales, colisiones, etc, queda a cargo del programador. Dentro de la programacin explcita, hay dos niveles: 1. Nivel de movimiento elemental Comprende los lenguajes dirigidos a controlar los movimientos del brazo ma-
nipulador. Existen dos tipos de movimientos: a. Articular, cuando el lenguaje se dirige al control de los movimientos de las diversas articulaciones del brazo. b. Cartesiano, cuando el lenguaje define los movimientos relacionados con el sistema de manufactura, es decir, los del punto final del trabajo (TCP). Los lenguajes del tipo cartesiano utilizan transformaciones homogneas. Este hecho confiere "popularidad" al programa, independizando a la programacin del modelo particular del robot, puesto que un programa confeccionado para uno, en coordenadas cartesianas, puede utilizarse en otro, con diferentes coordenadas, mediante el sistema de transformacin correspondiente. Son lenguajes que se parecen al BASIC, sin poseer una unidad formal y careciendo de estructuras a nivel de datos y de control. Por el contrario, los lenguajes del tipo articular indican los incrementos angulares de las articulaciones. Aunque esta accin es bastante simple para motores de paso a paso y corriente continua, al no tener una referencia general
Saber Electrnica
PLC
de la posicin de las articulaciones con relacin al entorno, es difcil relacionar al sistema con piezas mviles, obstculos, cmaras de TV, etc. Los lenguajes correspondientes al nivel de movimientos elementales aventaja, principalmente, a los de punto a punto, en la posibilidad de realizar bifurcaciones simples y saltos a subrutinas, as como de tratar informaciones sensoriales. 2. Nivel estructurado Intenta introducir relaciones entre el objeto y el sistema del robot, para que los lenguajes se desarrollen sobre una estructura formal. Se puede decir que los lenguajes correspondientes a este tipo de programacin adoptan la filosofa del PASCAL. Describen objetos y transformaciones con objetos, disponiendo, muchos de ellos, de una estructura de datos arborescente. El uso de lenguajes con programacin explcita estructurada aumenta la comprensin del programa, reduce el tiempo de edicin y simplifica las acciones encaminadas a la consecucin de tareas determinadas. En los lenguajes estructurados, es tpico el empleo de las transformaciones de coordenadas, que exigen un cierto nivel de conocimientos. Por este motivo dichos lenguajes no son populares hoy en da. relaciones entre ellos. La programacin se realiza "off-line" y la conexin CAM es posible. Dada la inevitable imprecisin de los clculos del ordenador y de las medidas de las piezas, se precisa de una ejecucin previa, para ajustar el programa al entorno del robot. Los lenguajes con un modelo del universo orientado a los objetos son de alto nivel, permitiendo expresar las sentencias en un lenguaje similar al usado comnmente. Por otra parte, cuando el modelo se orienta hacia los objetivos, se define el producto final. La creacin de lenguajes de muy alto nivel transferir una gran parte del trabajo de programacin, desde el usuario hasta el sistema informtico; ste resolver la mayora de los problemas, combinando la Automtica y la Inteligencia Artificial.
PROGRAMACIN TEXTUAL ESPECIFICATIVA Se trata de una programacin del tipo no procesal, en la que el usuario describe las especificaciones de los productos mediante una modelizacin, al igual que las tareas que hay que realizar sobre ellos. El sistema informtico para la programacin textual especificativa ha de disponer del modelo del universo, o mundo donde se encuentra el robot. Este modelo ser, normalmente, una base de datos ms o menos compleja, segn la clase de aplicacin, pero que requiere, siempre , computadoras potentes para el procesado de una abundante informacin.
LENGUAJE DE PROGRAMACIN GESTUAL PUNTO A PUNTO Se aplican con el robot "in situ", recordando a las normas de funcionamiento de un magnetofn domstico, ya que disponen de unas instrucciones similares: PLAY (reproducir), RECORD (grabar), FF (adelantar), FR (atrasar), PAUSE, STOP, etc. Adems, puede disponer de instrucciones auxiliares, como INSERT (insertar un punto o una operacin de trabajo) y DELETE (borrar). Conceptualmente, al estar el manipulador en lnea funciona como un digitalizador de posiciones. Los lenguajes ms conocidos en programacin gestual punto a punto son el FUNKY, creado por IBM para uno de sus robots, y el T3, original de CINCINNATI MILACROM para su robot T3. En el lenguaje FUNKY se usa un mando del tipo "joystick" para el control de los movimientos, mientras que el T3 dispone de un dispositivo de enseanza ("teach pendant"). Como en un grabador de cassettes, y en los dos lenguajes mencionados, los movimientos pueden tener lugar en sis-
El trabajo de la programacin consistir, simplemenen la descripcin ...LANZAMIENTO..EXTRAORDINARIO... te, de las tareas a realizar, lo que supone poder llevar a cabo trabajos complicaKIT CONSISTENTE EN: dos. AMPLIFICADOR DE AUDIO
DE 60W SOBRE 8 OHM; QUE INCLUYE: PLANOS DE ARMADO Y LISTA DE MATERIALES TEXTO CON LA TEORIA DE FUNCIONAMIENTO ARCHIVOS DE SIMULACIN COMPUTADA, INDICACIONES DE PRUEBA Y AJUSTE, MANUAL DE REPARACIONES, PLACA DE CIRCUITO IMPRESO Y COMPONENTES. Adquiera el curso de amplificadores con el kit completo por slo $100 FORMA PARTE DE UN FUTURO PROYECTO COMPLETO QUE INCLUYE:
PREAMPLIFICADOR SIN POTENCIOMETROS, CONTROLADO DIGITALMENTE CON TONO DE GRAVES Y AGUDOS. EN DIFERENTES MODELOS PARA EL HOGAR, ESTUDIOS DE GRABACION, GUITARRA, RADIOS DE FM DE BAJA POTENCIA, ETC.
EN VENTA EN EDITORIAL QUARK Y LOCALES AUTORIZADOS. CONSULTE PRECIOS PARA SOCIOS DEL CLUB SABER ELECTRONICA. TAMBIEN DISPONIBLE LA PLAQUETA ARMADA (su costo es de $125).
Actualmente, los modelos del universo son del tipo geomtrico, no fsico. Dentro de la programacin textual especificativa, hay dos clases, segn que la orientacin del modelo se refiera a los objetos a los objetivos. Si el modelo se orienta al nivel de los objetos, el lenguaje trabaja con ellos y establece las
Saber Electrnica
Figura 2
LISPT PROGRAM PICKUP 1. APRO PART, 25.0 2. MOVES PART 3. CLOSE, 0.0.0 4. APRO PART, -50.0 5. APRO DROP, 100.0 6. MOVES DROP 7. OPEN, 0.0.0 8. APRO DROP, -100.0 .END RPL.- Dotado con un LSI-II como procesador central, y aplicado a los robots PUMA, ha sido diseado por SRI INTERNATIONAL. EMILY.- Es un lenguaje creado por IBM para el control de uno de sus robots. Usa el procesador IBM 370/145 SYSTEM 7 y est escrito en Ensamblador. SIGLA.- Desarrollado por OLIVETTI para su robot SUPER SIGMA, emplea un mini-ordenador con 8 K de memoria. Escrito en Ensamblador, es del tipo intrprete. MAL.- Se ha creado en el Politcnico de Miln para el robot SIGMA, con un Mini-multiprocesador. Es un lenguaje del tipo intrprete, escrito en FORTRAN. RCL.- Aplicado al robot PACS y desarrollado por RPI, emplea, como CPU, un PDP 11/03. Es del tipo intrprete y est escrito en Ensamblador.
LENGUAJES DE PROGRAMACIN
A NIVEL DE MOVIMIENTOS ELEMENTALES
Como ya se mencion, se tratan los movimientos de punto a punto, expresados en forma de lenguaje. Se citan, entre los ms importantes: ANORAD EMILY RCL RPL SIGLA VAL MAL
Figura 1
LENGUAJES ESTRUCTURADOS DE PROGRAMACIN EXPLCITA Teniendo en cuenta las importantsimas caractersticas que presenta este ti-
Saber Electrnica
PLC
Figura 3
HELP.- Creado por GENERAL ELECTRIC para su robot ALLEGRO y escrito en PASCAL/FORTRAN, permite el movimiento simultneo de varios brazos. Dispone, asimismo, de un conjunto especial de subrutinas para la ejecucin de cualquier tarea. Utilizando como CPU, a un PDP 11. MAPLE.- Escrito, como intrprete, en lenguaje PL-1, por IBM para el robot de la misma empresa, tiene capacidad para soportar informaciones de sensores externos. Utiliza, como CPU a un IBM 370/145 SYSTEM 7. po de programacin, merecen destacarse los siguientes lenguajes: AL HELP MAPLE PAL MCL MAL EXTENDIDO Un sencillo ejemplo, de carcter didctico, utilizando el lenguaje AL, puede mostrar el inters del control estructurado. Partiendo de la definicin de unos objetos, se puede lograr una estructura superior que los relacione. Supongamos que se dispone de los objetos 01 y 02, y se intenta colocar al primero encima del segundo. En la figura 3 se muestra la configuracin del sistema de este ejemplo. 01T y 01B sealan, respectivamente, la parte superior e inferior del objeto 01, mientras que 01AS indica su posicin de asimiento. Las partes del objeto 02 se denominan de la misma forma. Un programa "orientativo", en AL, que coloque 01 sobre 02, podra ser: MOVE ARM TO 01AS El brazo se desplaza hasta la posicin de asimiento de 01. GRASP agarra a 01. AFFIX 01B TO ARM Fija el sistema de coordenadas de 01 con el de la pinza del brazo. MOVE 01B TO 02T Mueve la parte inferior de 01 hasta la parte superior de 02. RELEASE Suelta 01 sobre 02. UNIFIX 01 Destruye la relacin entre el sistema de coordenadas del brazo y 01. Con excepcin de HELP, todos los lenguajes de este grupo estn provistos de estructuras de datos del tipo complejo. As, el AL utiliza vectores, posiciones y transformaciones; el PAL usa, fundamentalmente, transformaciones y el MAPLE permite la definicin de puntos, lneas, planos y posiciones. Slo el PAL, y el HELP carecen de capacidad de adaptacin sensorial. Los lenguajes AL, MAPLE y MCL, tienen comandos para el control de la sensibilidad del tacto de los dedos (fuerza, movimiento, proximidad, etc.). Adems, el MCL posee comandos de visin para identificar e inspeccionar objetos. A continuacin, se exponen las caractersticas ms representativas de los lenguajes dedicados a la programacin estructurada. AL.- Trata de proporcionar definiciones acerca de los movimientos relacionados con los elementos sobre los que el brazo trabaja. Fue diseado por el laboratorio de Inteligencia Artificial de la Universidad de Stanford, con estructuras de bloques y de control similares al ALGOL, lenguaje en el que se escribi. Est dedicado al manipulador de Stanford, utilizando como procesadores centrales, a un PDP 11/45 y un PDP KL-10. PAL.- Desarrollado por la Universidad de Purdure para el manipulador de Stanford, es un intrprete escrito en FORTRAN y Ensamblador, capaz de aceptar sensores de fuerza y de visin. Cada una de sus instrucciones, para mover el brazo del robot en coordenadas cartesianas, es procesada para que satisfaga la ecuacin del procesamiento. Como CPU, usan un PDP 11/70. MCL.- Lo cre la compaa MC DONALL DOUGLAS, como ampliacin de su lenguaje de control numrico APT. Es un lenguaje compilable que se puede considerar apto para la programacin de robots "off-line". MAL EXTENDIDO.- Procede del Politcnico de Miln, al igual que el MAL, al que incorpora elementos de programacin estructurada que lo potencian notablemente. Se aplica, tambin, al robot SIGMA. LENGUAJES DE PROGRAMACIN ESPECIFICATIVA A NIVEL OBJETO En este grupo se encuentran tres lenguajes interesantes: RAPT AUTOPASS LAMA RAPT.- Su filosofa se basa en definir una serie de planos, cilindros y esferas, que dan lugar a otros cuerpos deri-
Saber Electrnica
CARACTERSTICAS DE UN LENGUAJE IDEAL PARA ROBTICA Las seis caractersticas bsicas de un lenguaje ideal, expuestas por Pratt, son: 1. Claridad y sencillez. 2. Claridad de la estructura del programa. 3. Sencillez de aplicacin. 4. Facilidad de ampliacin. 5. Facilidad de correccin y mantenimiento. 6. Eficacia. Estas caractersticas son insuficientes para la creacin de un lenguaje "universal" de programacin en la robtica, por lo que es preciso aadir las siguientes: - Transportabilidad sobre cualquier equipo mecnico o informtico. - Adaptabilidad a sensores (tacto, visin, etc.). - Posibilidad de descripcin de todo tipo de herramientas acoplables al manipulador. - Interaccin con otros sistemas.
LENGUAJES DE PROGRAMACIN EN FUNCIN DE LOS OBJETVOS La filosofa de estos lenguajes consiste en definir la situacin final del producto a fabricar, a partir de la cual se generan los planes de accin tendentes a conseguirla, obtenindose, finalmente, el programa de trabajo. Estos lenguajes, de tipo natural, suponiendo una potenciacin extraordinaria de la Inteligencia Artificial, para descargar al usuario de las labores de programacin. Prevn, incluso, la comunicacin hombre-mquina a travs de la voz.
Saber Electrnica
PLC
En el aspecto de claridad y sencillez, la programacin gestual es la ms eficaz, pero impide la confeccin de programas propiamente dichos. Los lenguajes a nivel de movimientos elementales, como el VAL, disponen de bastantes comandos para definir acciones muy parecidas que fueron surgiendo segn las necesidades y que, en gran medida, oscurecen su comprensin y conocimiento. Aunque, inicialmente, las tcnicas de programacin estructurada son ms difciles de dominar, facilitan, extraordinariamente, la comprensin y correccin de los programas. Respecto a la sencillez de aplicacin, hay algunos lenguajes (como el MCL) dedicados a las mquinas herramienta (APT), que pueden ser valorados, positivamente, por los usuarios conocedores de este campo. El PAL, estructurado sobre la matemtica matricial, slo es adecuado para quienes estn familiarizados con el empleo de este tipo de transformaciones. Uno de los lenguajes ms fciles de utilizar es el AUTOPASS, que posee un juego de comandos con una sintaxis similar a la del ingls corriente. Es imprescindible que los lenguajes para los robots sean fcilmente ampliables, por lo que se les debe dotar de una estructura modular, con inclusin de subrutinas definidas por el mismo usuario. La adaptabilidad a sensores externos implica la posibilidad de una toma de decisiones, algo muy interesante en las labores de ensamblaje. Esta facultad precisa de un modelo dinmico del entorno, as como de una buena dosis de Inteligencia Artificial, como es el caso del AUTOPASS. Aunque los intrpretes son ms lentos que los compiladores, a la hora de la ejecucin de un programa, resultan ms adecuados para las aplicaciones de la robtica. Las razones son las siguientes: 1) El intrprete ejecuta el cdigo como lo encuentra, mientras que el compilador recorre el programa varias veces, antes de generar el cdigo ejecutable. 2) Los intrpretes permiten una ejecucin parcial del programa. 3) La modificacin de alguna instruccin es ms rpida con intrpretes, ya que un cambio en una de ellas no supone la compilacin de las dems. 4) Finalmente, el camino para la superacin de los problemas propios de los lenguajes actuales ha de pesar, necesariamente, por la potenciacin de los modelos dinmicos del entorno que rodea al robot, acompaado de un aumento sustancial de la Inteligencia Artificial.
Saber Electrnica
PLC
aparicin de lenguajes transportables entre mquinas y por lo tanto de carcter universal. La estructura del sistema informtico del robot vara notablemente, segn el nivel y complejidad del lenguaje y de la base de datos que requiera. 3. Lenguajes orientados hacia el objeto sobre el que opera el sistema. 4. Lenguajes enfocados a la tarea que realiza el robot. La programacin por aprendizaje directo tiene pocas posibilidades de edicin, ya que, para generar una trayectoria continua, es preciso almacenar o definir una gran cantidad de puntos, cuya reduccin origina discontinuidades. El "software" se organiza, aqu, en forma de intrprete. La programacin, usando un dispositivo de enseanza, consiste en determinar las acciones y movimientos del brazo manipulador, a travs de un elemento especial para este cometido. En este caso, las operaciones ordenadas se sincronizan para conformar el programa de trabajo. El dispositivo de enseanza suele estar constituido por botones, teclas, pulsadores, luces indicadoras, ejes giratorios o "joystick". Dependiendo del algoritmo de control que se utilice, el robot pasa por los puntos finales de la trayectoria enseada. Hay que tener en cuenta que los dispositivos de enseanza modernos no slo permiten controlar los movimientos de las articulaciones del manipulador, sino que pueden, tambin, generar funciones auxiliares, como:
PROGRAMACIN GESTUAL O DIRECTA En este tipo de programacin, el propio brazo interviene en el trazado del camino y en las acciones a desarrollar en la tarea de la aplicacin. Esta caracterstica determina, inexcusablemente, la programacin "on-line". La programacin gestual se subdivide en dos clases: * Programacin por aprendizaje directo. * Programacin mediante un dispositivo de enseanza.
CLASIFICACIN DE LA PROGRAMACIN USADA EN ROBTICA La programacin empleada en Robtica puede tener un carcter explcito, en el que el operador es el responsable de las acciones de control y de las instrucciones adecuadas que las implementan, o estar basada en la modelacin del mundo exterior, cuando se describe la tarea y el entorno y el propio sistema toma las decisiones. La programacin explcita es la utilizada en las aplicaciones industriales y consta de dos tcnicas fundamentales: A. Programacin Gestual. B. Programacin Textual. La programacin gestual consiste en guiar el brazo del robot directamente a lo largo de la trayectoria que debe seguir. Los puntos del camino se graban en memoria y luego se repiten. Este tipo de programacin, exige el empleo del manipulador en la fase de enseanza, o sea, trabaja "on-line". En la programacin textual, las acciones que ha de realizar el brazo se especifican mediante las instrucciones de un lenguaje. En esta labor no participa la mquina (off-line). Las trayectorias del manipulador se calculan matemticamente con gran precisin y se evita el posicionamiento a ojo, muy corriente en la programacin gestual. Los lenguajes de programacin textual se encuadran en varios niveles, segn se realice la descripcin del trabajo del robot. Se relacionan a continuacin, en orden creciente de complejidad: 1. Lenguajes elementales, que controlan directamente el movimiento de las articulaciones del manipulador. 2. Lenguajes dirigidos a posicionar el elemento terminal del manipulador.
En el aprendizaje directo, el punto final del brazo se traslada con ayuda de un dispositivo especial colocado en su mueca, o utilizando un brazo maestro o maniqu, sobre el que se efectan los desplazamientos que, tras ser memorizados, sern repetidos por el manipulador. La tcnica de ...LANZAMIENTO..EXTRAORDINARIO... aprendizaje directo se utiliza, extensamente, en labores de pintura. El opeKIT CONSISTENTE EN: rario conduce la AMPLIFICADOR DE AUDIO DE 60W SOBRE 8 OHM; mueca del maniQUE INCLUYE: PLANOS DE pulador o del brazo ARMADO Y LISTA DE MAmaestro, determiTERIALES nando los tramos a TEXTO CON LA TEORIA DE FUNCIONAMIENTO recorrer y aquellos ARCHIVOS DE SIMULAen los que la pistola CIN COMPUTADA, INDIdebe expulsar una CACIONES DE PRUEBA Y AJUSTE, MANUAL DE REPARACIONES, cierta cantidad de PLACA DE CIRCUITO IMPRESO Y COMPONENTES. Adquiera el pintura. Con esta curso de amplificadores con el kit completo por slo $100 programacin, los FORMA PARTE DE UN FUTURO operarios sin conoPROYECTO COMPLETO QUE INCLUYE: cimientos de "softPREAMPLIFICADOR SIN POTENCIOMETROS, CONTROLADO DIGITALMENTE CON ware", pero con exTONO DE GRAVES Y AGUDOS. EN DIFERENTES MODELOS PARA EL HOGAR, ESTUDIOS DE GRABACION, GUITARRA, RADIOS DE FM DE BAJA POTENCIA, ETC. periencia en el trabajo a desarrollar, EN VENTA EN EDITORIAL QUARK Y LOCALES AUTORIZADOS. pueden preparar CONSULTE PRECIOS PARA SOCIOS DEL CLUB SABER ELEClos programas efiTRONICA. TAMBIEN DISPONIBLE LA PLAQUETA ARMADA (su costo es de $125). cazmente.
Saber Electrnica
PROGRAMACIN TEXTUAL EXPLCITA El programa queda constituido por un texto de instrucciones o sentencias, cuya confeccin no requiere de la intervencin del robot; es decir, se efectan "off-line". Con este tipo de programacin, el operador no define, prcticamente, las acciones del brazo manipulado, sino que se calculan, en el programa, mediante el empleo de las instrucciones textuales adecuadas. En una aplicacin tal como el ensamblaje de piezas, en la que se requiere una gran precisin, los posicionamientos seleccionados mediante la programacin gestual no son suficientes, debiendo ser sustituidos por clculos ms perfectos y por una comunicacin con el entorno que rodea al sistema. En la programacin textual, la posibilidad de edicin es total. El robot debe
Saber Electrnica