Programación Básica RSLogix 5000 - Participante

69

description

x

Transcript of Programación Básica RSLogix 5000 - Participante

Programacin Bsica de PLC RSLogix 5000

Programacin Bsica de PLC RSLogix 50002013

2013Programacin Bsica de PLC RSLogix 5000Manual del ParticipanteJess E. Castillo TrevioMetalsa S.A. de C.V. Mantenimiento VL Latinoamrica

Objetivo general

Al finalizar el curso el participante identificar los conceptos e instrucciones bsicas de programacin de PLC utilizando la plataforma RSLogix 5000 para su aplicacin en la automatizacin y control de equipos industriales.

ndice

Introduccin

Hoy en da la tendencia de la industria a nivel mundial es incrementar produccin de calidad mientras se disminuye tiempo y costos. Para lograr esto es necesario apoyarse con las nuevas tecnologa de automatizacin con el fin simplificar el control de equipos y mejorar el desempeo de los mismos.Considerando lo anterior, las diferentes lneas de ensamble y formado de Metalsa han estado migrando o naciendo con la tecnologa Control Logix, una familia de PLC que permite automatizar procesos completos con reduccin de costos en infraestructura de control y puntos de falla. Esto se logra mediante la centralizacin del control en un solo equipo, el cual toma decisiones en base a las seales de entrada al sistema y a la programacin establecida. Con el fin de responder de forma rpida y eficaz a las necesidades de automatizacin de Metalsa, se ha diseado este curso y manual del participante para todo el personal de mantenimiento. Estamos convencidos que la capacitacin es la mejor va para el desarrollo integral de todo el personal y es por esto que te invitamos a que saques el mayor provecho de este material.Esperamos que estos conocimientos los puedas llevar a la prctica y te sirvan para lograr los objetivos personales y comunes dentro de Metalsa.

Disfruta el viaje.

1.- El PLC

Introduccin

El PLC o Controlador Lgico Programable (por sus siglas en ingls) es una computadora industrial dedicada a la automatizacin de equipos y herramentales. Esta tecnologa viene a sustituir al control por relevacin, disminuyendo significativamente los costos de instalacin de componentes y cableado, as como reduccin de puntos de falla y tiempos de correccin.Podemos considerar al PLC como una caja negra que, una vez bien programada, slo nos debe de preocupar las entradas al mismo, para tener la salida o resultado deseado. Como cualquier computadora, el PLC debe ser alimentado con energa elctrica y configurado adecuadamente con sus perifricos correspondientes para que su funcionamiento sea el deseado. Un PLC es completamente intil si no tiene salidas resultado del cmputo de entradas que provengan del entorno. Debemos pensar que el PLC es un cerebro que toma decisiones en base a las seales de entrada y que las salidas correspondientes sern resultado de la programacin que hayamos efectuado.Al final del tema, el participante habr obtenido las bases del funcionamiento de un PLC Control Logix requeridas para establecer comunicacin con el equipo.

1.1.- Descripcin, funciones y partes de un PLC Logix 5000

Los PLC realizan funciones lgicas en base a seales recibidas por distintos dispositivos como relevadores, switches, sensores, etc. Estas seales son procesadas y el PLC genera seales de salida para llevar a cabo alguna funcin en especfico. El uso del PLC facilita la automatizacin en procesos industriales. Como se mencionaba anteriormente, una vez bien programado, podemos considerar al PLC como una caja negra donde slo importa la entrada y la salida, como se muestra en el siguiente diagrama:

Las salidas del PLC pueden ser luces indicadoras, la activacin de relevadores o contactores, el cambio de estado de vlvulas o la transferencia de datos hacia un robot. Por ejemplo, si queremos encender una luz amarilla cuando un operador presiona el botn de arranque, el sistema se comportara de la siguiente manera:

Para poder realizar esta simple operacin, el PLC debe contar con 4 componentes bsicos:A. Fuente de poder: Es la fuente de alimentacin de todo el rack de tarjetas del PLCB. Procesador: Es el cerebro del PLC, quien guarda la configuracin y programacin.C. Mdulos de entradas y salidas [I/O]: Tarjetas electrnicas con las cuales el PLC interactua con el entorno, recibiendo o emitiendo seales elctricas.D. Mdulos de comunicacin [Ethernet, Devicenet u otra red industrial]: Tarjetas electrnicas que permiten comunicar al PLC con otros perifricos mediante redes industriales de control.

ABCD

1.2.- Mdulos de entradas, salidas y comunicacin Mdulos de EntradasSe llama modulo de entradas a aquella tarjeta en el rack que permite que el PLC lea las variables del proceso, convirtiendo seales elctricas en datos que se almacenan en la memoria del procesador.

Tipos de Mdulos de entrada: Digitales : si la entrada recibe la seal, sta nos dar un BIT en la memoria del PLC 110 VAC: Aceptan seales de corriente alterna a 110V para generar un BIT. 1756 IB16 (PNP): Acepta seales de 24VCD para generar un BIT. 1756 IV16 (NPN): Acepta seales de 0VDC para generar un BIT. Anlogas: recibe seales que varan en voltaje, por ejemplo, de 0 a 10VDC.

Mdulos de SalidasSe llama modulo de salidas a aquella tarjeta electrnica que permite que el PLC transmita datos a travs de seales elctricas hacia el proceso. Es decir que el modulo genera una seal que ser utilizada por algn otro dispositivo, por ejemplo la bobina de un relevador.

Tipos de Mdulos de salida: Digitales: generan una seal de voltaje que recibir el dispositivo. Relevador 1756 OW16: funciona como un relevador ordinario, en el cual se alimenta un lado del contacto con el voltaje deseado y el otro lado del contacto al dispositivo. El PLC controla cundo se abren y se cierran estos contactos. Transistor: Este tipo de modulo se alimenta con 24VDC en su contacto de alimentacin, y luego tenemos una serie de contactos de salidas, los cuales nos generarn una seal de 24VDC cuando sean activados por el PLC. Triac: Funcionan igual que los de transistor pero estos manejan un voltaje de 110VAC. Anlogas: genera una seal anloga variable que ser recibida por el dispositivo.

A continuacin se muestra un ejemplo de conexin de mdulos de I/O. Considere que las entradas al mdulo 1756IB16 pudiera ser un sensor inductivo o un botn de arranque, mientras que en la tarjeta 1756OW16 pudiera estar cableado un relevador o el contactor de un motor.

Mdulos de Comunicacin

Modulo Ethernet/IP.-Nos sirve para comunicar dispositivos ethernet con el PLC, cada dispositivo puede generar seales que sern ledas por el modulo ethernet del PLC para luego ser procesadas tal y como lo hace un mdulo de entradas y salidas.

La distancia mxima permitida para un cableado de comunicacin ethernet es de 100mts.

Los dispositivos ethernet que ms utilizados son: Controladores de Robots Mdulos de entradas y salidas remotas Point I/O Pantallas HMI Switches Ethernet PC de escritorio

Mdulo DeviceNet.-Este mdulo comunica dispositivos de red industrial DeviceNet con el PLC, al igual que en el mdulo Ethernet los dispositivos generan y reciben seales del PLC.

Algunos dispositivos DeviceNet son: Nodos de sensores Turk Blocks de vlvulas SMC Variadores de PowerFlex

1.3.- Estableciendo comunicacin con el PLCEl mdulo ethernet nos permite comunicar nuestra PC con el PLC mediante 2 software del fabricante Rockwell Software/Allen Bradley: RSLinx y RSLogix 5000. Por lo tanto, para comunicarnos con el PLC necesitamos lo siguiente:1) Una computadora con RSLinx y RSLogix instalado, con tarjeta de red ethernet con su respectivo cable.2) Tener acceso a la red ethernet del PLC3) Tener el archivo ms reciente del programa a monitorear en el PLC.

Una vez cumpliendo con los requisitos anteriores, procedemos a comunicar nuestra PC con el PLC mediante RSLinx.

El RSLinx es un servidor de comunicaciones que provee conectividad con los dispositivos de piso a una gran variedad de software como RSLogix5, RSLogix5000, RsView, RsNetworx, etc., as como a terceros.

Estableceremos conexin con el PLC siguiendo estos pasos:

Paso 1.- Asegurarnos de tener lo necesario para poder conectarnos al PLC, computadora, software, cable.

Paso 2.- Conectamos nuestro cable ethernet de la computadora a la red de nuestro PLC (al switch o a un puerto asignado en el gabinete, (NO DESCONECTAR EL CABLE ETHERNET DEL MODULO EN EL PLC)

Paso 3.- Encender la computadora, abrimos el RSLinx.

Paso 4.- Dar de alta el PLC en el RSLinx:1. Hacer click en el cono configurar modulo.2. Desplegamos las lista de drivers disponibles y seleccionamos Ethernet Devices 3. Click en add new, tecleamos el nombre del PLC, damos clic en OK.4. En el espacio donde dice hostname tecleamos la direccin IP del PLC [previamente conocida]. Damos clic en OK y en close. 5. Verificamos que tengamos comunicacin observando la lista de dispositivos.

Configurar Modulo

Reflexin:Mencione los componentes bsicos de un PLC y una breve funcin de cada uno: .

ConclusinEl PLC es un sistema completamente autnomo que no requiere ser supervisado para operar, pero depende de entradas provenientes del proceso para poder computar salidas que controlen equipos y herramentales. Una ventaja importante es la integracin de las redes industriales al ambiente de programacin del PLC ya que permite la comunicacin entre dispositivos y el intercambio de datos.Aprovechando la red industrial Ethernet I/P, somos capaces de establecer comunicacin con el PLC desde nuestra computadora usando el software RSLinx y la direccin IP del dispositivo. Una vez establecida la comunicacin PC-PLC podemos monitorear las rutinas del programa en tiempo real as como entradas y salidas, procedimiento que veremos ms adelante en este curso.

2.- RSLogix 5000

Introduccin

El software RSLogix 5000 es la interfaz que nos permite observar el contenido lgico de un PLC. Programas, variables y alertas son algunos de los elementos que podemos monitorear para comprender el funcionamiento de una estacin. As mismo el RSLogix es la herramienta con la que programamos la operacin de una mquina mediante el control de seales de salida y el procesamiento de entradas.Este tema se enfocar en familiarizar al participante en el ambiente de programacin y darle a conocer las distintas herramientas que tiene a su disposicin para el monitoreo de fallas.

2.1.- Interfaz de usuarioPrimero que nada es preciso ejecutar la aplicacin RSLogix 5000 haciendo doble click en el cono del escritorio o buscando el archivo ejecutable en la carpeta de programas de Windows.

cono del escritorioArchivo ejecutable en carpeta de programas

Una vez abierto, el participante se percatar que el RSLogix 5000, al igual que cualquier otro software para el sistema operativo Windows, se muestra visualmente como una ventana con diferentes mens e conos con funciones especficas.

Barras de men:

Men Bsico.- Es la barra de men bsica de cualquier aplicacin base Windows. Contiene los mens file, edit, view, search, logic, entre otros. Standard Men.- Es la barra de men que combina algunos componentes del men file y edit. Aqu podemos crear un archivo nuevo, abrir uno existente, as como copiar y pegar componentes.

Online Men.- Nos muestra el estado del PLC.

Path bar.- Es el men en el cual seleccionamos la direccin del PLC al que nos vamos a comunicar. Se abre una ventana Who ActiveI del RSLinx. Language element.- Contiene las instrucciones de programacin escalera.

Bookmark Toolbar.- Esta barra de herramienta nos permite poner un indicador o bookmark en cualquier subrutina del PLC que estemos monitoreando. Es una herramienta muy til cuando se navega entre subrutinas extensas.

2.2.- Organizador de controladorEl organizador del controlador es una estructura tipo rbol donde se aloja todos los elementos que conforman la memoria interna del PLC. Toda la configuracin de tarjetas en el rack del PLC, los programas, instrucciones, memorias (tags[footnoteRef:1]) los podemos localizar en el organizador del controlador, por lo cual se convertir en una herramienta imprescindible. [1: Tags.- Localidades de memoria del PLC. Vase tema 3.]

Generalmente, al abrir un archivo .ACD[footnoteRef:2], localizaremos el organizador de lado izquierdo de la pantalla. De no ser as, se puede abrir haciendo click en el cono Toggle Controller Organizer Window en la barra de men estndar. [2: .ACD.- Es la extensin del archivo RSLogix 5000 que contiene el programa completo de un PLC.]

2.2.1.- Tareas, programas y rutinasEn orden de aparicin, el organizador tiene los siguientes elementos:Carpeta Controller:Controller Tags: Contiene los tags de alcance controlador. Se revisa a detalle en el tema 3.Controller Fault Handler: Aloja el programa de emergencia en caso de falla en el PLC. El uso de este programa es opcional.Power-Up Handler: Es el programa de arranque del PLC y slo se ejecuta una vez al energizarse el equipo. El uso de este programa es opcional.

Carpeta Task: Contiene las instrucciones que el PLC ejecuta para el control de mquinas.Los Programas estn contenidos en Tasks o tareas. Cuando un Task est activo, ejecuta cada uno de sus Programas en el orden definido por el usuario: Continuous: La tarea se ejecuta continuamente de principio a fin de forma permanente. Es la forma de ejecucin estndar y ms utilizada. Periodic: La tarea se ejecuta de forma peridica, en un punto especfico en el tiempo, configurado por el usuario. Event: La tarea se ejecuta cuando se cumplen un conjunto de condiciones configuradas por el usuario.Main Task: Es la tarea principal del PLC y es generalmente de ejecucin continua.Programa: Vase como una carpeta que contiene un grupo de rutinas. Rutinas: Es el elemento que contiene las instrucciones de programacin. La rutina principal se ejecuta por default en el PLC. Pueden existir otras subrutinas, pero estas sern ignoradas por el PLC a menos se programe su ejecucin mediante una instruccin.

2.2.2.- Configuracin de I/O

En esta carpeta se observa la configuracin de tarjetas en el rack del PLC, siempre y cuando el equipo ya est configurado. Podemos ver las tarjetas de entradas y salidas instaladas, as como las de comunicacin.La imagen de la derecha muestra un PLC ya configurado, pero cuando se trabaja con un PLC nuevo, slo est dado de alta el procesador. En este caso el usuario debe de configurar cada tarjeta instalada fsicamente en el rack.Para dar de alta mdulos nuevos se deben seguir las siguientes instrucciones:1. Click derecho en la carpeta I/O Configuration y seleccionar la opcin New Module.

2. Se abre la ventana Select Module, donde nos permite seleccionar entre distintos tipos de mdulos (o tarjetas de rack).

3. Se selecciona la tarjeta deseada entra todas las opciones y se presiona OK. Nos aparecer la ventana Select Major Revision donde debemos indicar la versin del firmware[footnoteRef:3] que viene impresa en la etiqueta del mdulo que estamos dando de alta. [3: Firmware.- Software del fabricante dentro del mdulo de I/O, comunicacin o motion.]

4. Una vez hecho esto, se abrir la ventana New Module donde debemos nombrar nuestro nuevo mdulo y configurarlo segn la necesidad. Se presiona OK.

5. Por ltimo aparecer la ventana de propiedades del mdulo, donde podemos revisar o modificar algunos parmetros de nuestra nueva tarjeta. Vase cmo aparece en el rbol de I/O Configuration.

2.3.- Ir en lnea

Programar en RSLogix 5000 se vuelve intil si no interactuamos con el PLC instalado fsicamente en piso. Ir en lnea o Go Online es el trmino utilizado para referirse a establecer comunicacin con el PLC y ver en tiempo real la ejecucin de las tareas. Cuando RSLogix se va a lnea, compara el contenido del archivo .ACD que tenemos abierto en nuestra ventana con el contenido dentro de la memoria del PLC en piso. RSLogix modifica nuestro archivo .ACD para que su contenido sea exactamente igual al PLC al que nos comunicamos. En caso de que las diferencias sean mayores, nos pedir hacer Upload o Download, lo cual veremos ms adelante en este tema.Una vez abierto el archivo .ACD, hacemos click en cono Who Active de la Path Bar para desplegar la ventana Who Active del RSLinx. Seleccionamos la direccin del PLC, previamente dado de alta en RSLinx, y presionamos Go Online.

Inmediatamente RSLogix se comunicar con el PLC de piso y comparar contenido. En caso de haber diferencias se realiza una correlacin automtica para que el contenido del archivo .ACD sea igual al contenido del controlador. Siempre se le da prioridad al controlador en piso.

Una vez que RSLogix se va a lnea los indicadores de la barra Online se habilitan y muestran el estado del PLC.

2.3.1.- Estados del PLC Run mode: Modo de operacin del controlador donde la lgica es ejecutada, el I/O es escaneado y los cambios/ediciones son permitidos con limitaciones. Program mode: Modo de operacin del controlador donde la lgica no es ejecutada y el I/O no es escaneado. Los cambios / ediciones son permitidas. Remote mode: Modo de operacin del controlador donde remotamente se puede ejecutar REM RUN o REM PROGRAM. En este estado podemos usar el RSLogix para controlar los modos del PLC.

Para salir del modo en lnea hacemos click en el men Communications en la barra de men bsico y seleccionamos la opcin Go Offline. De esta manera RSLogix 5000 rompe la comunicacin en tiempo real con el PLC de piso y pasamos al modo fuera de lnea.

2.3.2.- Upload & Download

Upload: Subir o cargar a la computadora el programa del PLC.Download: Bajar o descargar de la computadora al PLC un programa.Cuando se hacen modificaciones grandes en la configuracin del PLC o en las subrutinas dentro del archivo .ACD e intentamos ir en lnea, al hacer la comparacin con el controlador en piso el RSLogix se percatar que los cambios son mayores y nos pedir 2 opciones: Upload o Download.Al seleccionar Upload, RSLogix ignora el contenido del archivo .ACD y lo sustituye por completo con el contenido del PLC de piso al que nos estamos conectando.Al seleccionar Download, RSLogix descarga al PLC de piso todo el contenido del archivo .ACD. Esta operacin implica un riesgo de seguridad, ya que el PLC se detiene por completo y copia el estado de las variables del archivo .ACD. Por lo tanto se estar deteniendo la operacin de todas las estaciones controladas por el PLC descargado y al momento de reanudar estos equipos puede realizar acciones inesperadas.

Reflexin:Mencione las implicaciones que pudiera tener un Download a un PLC desconocido: .

ConclusinEl RSLogix 5000 cuenta con una interfaz sencilla y que no le exige al usuario mucho expertise para poder navegar en l. Como se mencion anteriormente, el organizador del controlador se volver una herramienta indispensable para localizar las rutinas que ejecutan la lgica del PLC, as como la distribucin y configuracin de tarjetas de I/O o comunicacin en el rack.Est claro que para poder comunicarnos con el PLC y monitorear su comportamiento o para realizar Upload o Download requerimos previamente haber dado de alta dicho controlador en el RSLinx. Una vez realizado esto y verificar que exista comunicacin, hacemos Go Online en RSLogix y estaremos observando en tiempo real la ejecucin de la lgica.Teniendo claro los mens bsicos para revisar el estado del PLC y su contenido, procederemos a estudiar la estructura de informacin del PLC Logix.

3.- Tipos y estructura de datos bsicos

Introduccin

El PLC, como cualquier otra computadora, procesa informacin digital almacenndola en su memoria. Toda informacin proveniente del mundo exterior ingresa al PLC a travs de los mdulos de entrada y comunicacin, almacenndose en la memoria fsica del procesador. Esta informacin ser posteriormente procesada por el programa y se emitir una salida resultante de una operacin lgica.En este tema se revisarn los distintos tipos de dato que maneja la memoria del PLC, as como su estructura.

3.1.- El TAG Por definicin, el TAG es una localidad en la memoria del PLC a la cual se le asigna un nombre propio. Es el mecanismo bsico de locacin de memoria. Mediante el nombre asignado podemos monitorear el estado del TAG. En pocas palabras, el TAG es una variable que creamos para almacenar informacin desde un nmero, hasta una cadena de caracteres. Para asignar un nombre al TAG, debemos de respetar las siguientes reglas de nombramiento: Mximo 40 caracteres Debe iniciar con letra o guin bajo (_), los siguientes caracteres pueden ser letras, nmeros o guin bajo. No puede contener dos guin bajo continuos No puede terminar en guin bajo Maysculas o minsculas tienen el mismo significado

Se manejan 2 tipos de tags: Tags de alcance controlador (Controller Scope): Es memoria accesible desde cualquier parte del controlador. Cualquier programa pueda hacer uso de esa localidad de memoria. Un tag de controlador no se puede repetir. Tags de alcance programa (Program Scope): Es memoria accesible slo desde el programa en el cual fue creado. Un tag de programa puede repetir nombre siempre y cuando sea en programas diferentes, no se puede repetir en el mismo programa.Los mdulos de entrada y salida tambin tienen asociados tags de controlador que hacen referencia a la localidad de memoria donde se estar alojando la informacin leda por el mdulo. Estos tags se nombran automticamente una vez que se da de alta el mdulo en el programa del PLC y llevan la siguiente sintaxis:Local:#: .DataDonde:#.- Refiere a la posicin del mdulo I/O o comunicacin en el rack del PLC..- Refiere a tipo de seal, ya sea entrada (I) o salida (O).

3.2.- El bit o BOOLEANEste tipo de dato es la unidad ms pequea de informacin procesada por cualquier equipo de cmputo. Dicho bit o BOOLEAN slo tiene 2 valores: 1 o 0, SI o NO. Cuando activamos un relevador, aplicamos 24 VCD o 120 VAC a la bobina del mismo, resultando en la abertura o cerrado de los contactos. Estos 2 estados de abierto o cerrado, activado o desactivado son el comportamiento de un BOOLEAN o BOOL como se conocen en el ambiente de programacin RSLogix.La siguiente ventana muestra la propiedades de un TAG llamado contacto, el cual tiene alcance controlador y fue dado de alta en el PLC como BOOL.

Ntese cmo el programa marca un error cuando se intenta ingresar un valor diferente a 0 o 1 a un TAG tipo BOOL:

3.3.- Enteros, dobles enteros y realesENTEROS [INT].-El BOOL es la base de todos los dems tipos de dato de un PLC pero no slo 0 y 1 podremos hacer secuencias de control complejas. Para esto tenemos los valores Enteros, Dobles Enteros y reales.El Entero o INT es un arreglo de 16 bits que puede tener valores desde -32768 hasta 32767. Los 16 BOOL que integran el entero slo pueden valer 0 o 1, pero en conjunto forman valores superiores a 1 en formato decimal, tal y como se muestra en las siguientes figuras:

Observe cmo el programa despliega una falla cuando se intenta desbordar la memoria del entero al ingresar un valor superior a 32767. Esto se debe a que los 16 BOOL que conforman el INT ya no tienen espacio suficiente para un valor mayor al mencionado.

DOBLES ENTEROS [DINT].-En casos donde el entero no es suficiente podemos hacer uso del Data Type Doble entero o DINT, formado de 32 BOOL. Por lo tanto un tag del tipo DINT puede contener valores desde 2147483647 hasta -2147483648

Ntese cmo el programa despliega una falla cuando se intenta desbordar la memoria del entero al ingresar un valor superior a 2147483647. Esto se debe a que los 32 BOOL que conforman el DINT ya no tienen espacio suficiente para un valor mayor al mencionado.

Reales [REAL].-Para valores con punto decimal usamos el Data Type REAL el cual usualmente se asocia a valores anlogos como temperatura, presin, velocidad, etc., donde el valor no siempre es entero. Ocupa un espacio en memoria de 32 bits.

3.4.- ArreglosUn arreglo es una secuencia indexada de elementos del mismo tipo de dato. En Control Logix, un arreglo comienza desde el elemento cero y puede tener hasta 3 dimensiones. Por ejemple, un INT es un arreglo de 16 elementos BOOL. Podemos hacer arreglos de cualquier tipo de dato como se muestra en la siguiente imagen, donde se observa un arreglo de 5 elementos tipo DINT:

El TAG de nombre arreglo es de una sola dimensin. Las siguientes figuras hacen referencia a arregles de 2 y 3 dimensiones:

CRTICO: Si se llega hacer referencia a un elemento inexistente dentro de un arreglo, el PLC entrar en falla y dejar de operar por encontrarse con una inconsistencia lgica. Por ejemplo si depositamos un valor en el tag Arreglo[5], el cual no existe segn las capturas de pantalla anteriores.

Reflexin:Mencione algunos ejemplos de informacin que podemos asociar con Tags del tipo BOOL, INT, DINT, REAL: .

ConclusinEl PLC es una computadora y como tal tiene memoria y capacidad de procesamiento limitados. El controlador requiere reservar en su memoria un espacio para la informacin que se requiere procesar, a este espacio se le llama TAG y tiene un nombre propio asignado por el programador. La cantidad de memoria a reservar por el PLC depende del data type del TAG creado. Se puede reservar memoria posible desde un BOOL, hasta inmensos espacios con arreglos de DINT o REAL. Es preciso tomar en cuenta de las limitaciones en recursos que tienen los equipos y siempre aprovecharlos al mximo para no generar sobrecostos en los proceso ya que de un PLC de 4 megas de memoria a uno de 8 hay miles de dlares de diferencia.Una vez que se reserva la memoria en el PLC para las variables (TAGs) ya podemos procesar la informacin contenida utilizando instrucciones bsicas.

4.- Instrucciones bsicas en RSLogix 5000

Introduccin

El lenguaje de programacin del PLC Logix tiene una estructura o sintaxis definida que el usuario debe de respetar para que las instrucciones se ejecuten correctamente. Existen 2 tipos de errores de programacin: Errores de Sintaxis y Errores de Escaneo. El error por sintaxis es aquel en el cual el usuario no programa correctamente una instruccin en especfico, resultando en un impedimento por parte del RSLogix para ejecutar la instruccin.En este tema se abarcarn las instrucciones ms bsicas para comenzar a programar, haciendo nfasis en la sintaxis de las mismas para evitar este tipo de errores. As mismo se mencionarn algunos errores tpicos con el fin de evitarlos durante la programacin.

4.1.- Continuidad Lgica y EscaneoLa siguiente imagen corresponde a la ventana de navegacin de una rutina. Cada rengln o Rung[footnoteRef:4] es una instruccin la cual tiene una serie de condiciones que se deben de cumplir para poder ejecutar una accin. [4: Rung.- Es un escaln en el diagrama escalera. Una lgica ladder est compuesta por varios rungs.]

Un rung est compuesto por:A. Nmero de rung: Numeracin secuencial ascendente de 0 a n. B. Cable de rung: Considere el rung como un cable elctrico. Es donde se colocan las instrucciones de programacin.C. Lneas de alimentacin izquierda y derecha: Considrese como terminales positivo y negativo de una fuente de poder que alimenta al cable de rung.D. Comentario: Texto que agrega el usuario para fines de referencia.

Imagine que el rung #1 de la imagen anterior alimenta la bobina de un relevador. Se requiere de 2 contactos normalmente abiertos (NO) y uno normalmente cerrado (NC) para que la energa circule de lado izquierdo hacia el derecho y active la bobina. Se vuelve mucho ms sencillo si se considera como un circuito elctrico.

Cuando los contactos NO se cierran y el NC permanece cerrado, circular corriente a travs de la bobina. En otras palabras, si instruccin.0, instruccin.1 e instruccin.2 son verdaderos, instruccin.3 tambin se vuelve verdadero. A esto se le llama continuidad lgica y existe cuando todas las condiciones de un rung son verdaderas.La lgica se ejecutar en el orden que marque el nmero de rung de manera ascendente, comenzando desde 0 hasta el ltimo escaln dentro de la rutina. Por lo tanto se podra decir que el PLC hace un barrido del programa de arriba a abajo tanto en programas como en subrutinas. Observe la siguiente imagen: Corresponde a un fragmento del organizador del controlador. Por la forma en que estn acomodadas las carpetas de programas dentro del Main Task, el PLC comenzar con el barrido del contenido de Programa_1, siendo Rutina_Principal la primera en ser ejecutada. Posteriormente pasar a barrer Programa_2, comenzando por Rutina_Principal_2.

Lectura del PLCEn el caso anterior se omitieron las rutinas Rutina_secundaria y Rutina_secundaria_2 ya que el PLC ignorar cualquier rutina que no sea la principal. Para poder ejecutar rutinas adicionales, se debe hacer uso de instrucciones de control de programa, siendo JSR[footnoteRef:5] la ms utilizada para esta tarea. Considerando lo anterior, el PLC ejecuta la lgica de la siguiente forma: [5: JSR.- Jump to subroutine o saltar a subrutina, es una instruccin de control de programa con la que se le indica al PLC que ejecute una rutina distinta a la principal. Una vez que termina de ejecutar la subrutina el PLC vuelve al punto donde se qued en la rutina principal.]

A este barrido entre programas, subrutinas y rungs se le conoce como escaneo y se ejecuta de la siguiente forma:

1. Ejecuta lgica.2. Actualiza entradas y salidas.3. Ejecuta lgica4. Actualiza entradas y salidas5. .

El PLC sigue este mismo flujo una y otra vez mientras permanezca encendido.

4.2.- Instrucciones de base BOOL

Como se haba mencionado en el tema anterior, los tags tipo bool tienen slo 2 valores posibles: 0 o 1, abierto o cerrado, si o no. Las instrucciones base bool tambin siguen este comportamiento y podemos relacionarlos como un relevador y sus contactos. Observe la siguiente figura:

Considerando este rung como un circuito elctrico, para poder encender la bobina del tag A3 es preciso que los contactos A1 y A2 se cierren para que la corriente fluya. Por lo tanto A1, A2 y A3 son tags tipo bool debido a que slo tienen 2 estados: abierto o cerrado (prendido o apagado, en el caso de la bobina). Las instrucciones tipo Bool las podemos encontrar en el men language element dentro de la pestaa Bit: XIC: Examine if closed, es un contacto normalmente abierto que es verdadero cuando el valor del tag es 1.

XIO: Examine if open, es un contacto normalmente cerrado que es verdadero cuando el tag es 0.

OTE: Output energize, cuando el rung es verdadero (existe continuidad lgica), el valor del tag se vuelve 1. Si el run el falso el tag se vuelve 0.

OTL: Output Latch, es un enclave. Cuando el rung es verdadero, el tag se vuelve 1 y este valor se mantiene aunque el rung se vuelva falso.

OTU: Output Unlatch, es un desenclave. Cuando el rung es verdadero, el tag se vuelve 0 y se mantiene aunque el rung se vuelva falso.

4.3.- Temporizadores

Son instrucciones basadas en el tiempo. Existen 3 tipos de timers: TON: Timer On Delay, temporizador no retentivo que acumula tiempo cuando el rung es verdadero. TOF: Timer Off Delay, temporizador no retentivo que acumula tiempo cuando el rung es falso. RTO: Retentive Timer ON, temporizador retentivo que acumula tiempo cuando el rungo es verdadero.Para poder hacer uso de los temporizadores se requiere crear un tag del tipo timer. Este tag se crea igual que cualquier otro y sigue las mismas reglas de nomenclatura.

TONEs el timer ms utilizado debido a su simplicidad y a la posibilidad de cubrir la mayora de las necesidades de automatizacin que requieran una base de tiempo. La instruccin es la siguiente:

Tiene 5 parmetros principales: Timer: Es el nombre del tag tipo timer que ejecutar el conteo del tiempo. Preset: Es un doble entero que contiene un valor preestablecido por el usuario. Accum: Es un doble entero donde se almacena el tiempo acumulado por el timer en milisegundos. EN: Es un bool que indica que el timer est habilitado (rung verdadero). DN: Es un bool que indica cuando el valor del Accum es mayor o igual al Preset.

TOFEs el temporizador menos utilizado ya que su lgica de funcionamiento es confusa y la mayora de las aplicaciones para el TOF pueden ser resueltas con el TON. La instruccin es la siguiente:

Tiene 5 parmetros principales: Timer: Es el nombre del tag tipo timer que ejecutar el conteo del tiempo. Preset: Es un doble entero que contiene un valor preestablecido por el usuario. Accum: Es un doble entero donde se almacena el tiempo acumulado por el timer en milisegundos. EN: Es un bool que indica que el timer est habilitado (rung verdadero). DN: Es un bool que indica cuando el valor del Accum es menor o igual al Preset.

RTOEs el temporizador bastante til cuando se trata de acumular tiempo aunque la condicin del rung se vuelva falsa. Este timer comienza a contar una vez que la condicin es verdadera, pero no pierde informacin cuando se vuelve falsa como en el caso del TON (o TOF al volverse verdadera). Se requiere de una instruccin de reset para limpiar el contenido del timer. La instruccin es la siguiente:

Tiene 5 parmetros principales: Timer: Es el nombre del tag tipo timer que ejecutar el conteo del tiempo. Preset: Es un doble entero que contiene un valor preestablecido por el usuario. Accum: Es un doble entero donde se almacena el tiempo acumulado por el timer en milisegundos. EN: Es un bool que indica que el timer est habilitado (rung verdadero). DN: Es un bool que indica cuando el valor del Accum es mayor o igual al Preset.

CRTICO: Si se asigna un valor negativo (ejemplo: -1200) al elemento .pre de cualquier temporizador, el PLC entrar a estado de falla debido a que es una operacin imposible. No existe el tiempo negativo.

4.4.- Contadores

El Counter es un tipo de tag o datatype[footnoteRef:6] especializado para el conteo de eventos. Existen 2 tipos de contadores: Ascendente y Descendente. Ambos contadores requieren de un reset para limpiar el contenido de los mismos. [6: Datatype: Es la definicin del tamao y estructura de la memoria que ser localizada cuando se crea un tag. Ejemplo: BOOL, DINT, COUNTER, TIMER, REAL.]

CTU: Counter Up, contador ascendente que cuenta cada vez que el rung en el que est colocado es verdadero. CTD: Counter Down, contador descendente que resta un elemento cada vez que el rung es verdadero.

CTU

Tiene 5 parmetros principales: Counter: Es el nombre del tag tipo counter que contiene todos los componentes de memoria que conforman el contador. Preset: Es un doble entero que contiene un valor preestablecido por el usuario. Accum: Es un doble entero donde se almacena el conteo de eventos. CU: Es un bool que indica que el conteror est contando (rung verdadero). DN: Es un bool que indica cuando el valor del Accum es mayor o igual al Preset.

CTD

Tiene 5 parmetros principales: Counter: Es el nombre del tag tipo counter que contiene todos los componentes de memoria que conforman el contador. Preset: Es un doble entero que contiene un valor preestablecido por el usuario. Accum: Es un doble entero donde se almacena el conteo de eventos. CU: Es un bool que indica que el conteror est contando (rung verdadero). DN: Es un bool que permanece encendido mientras que ACC sea mayor al preset.

RESEs la instruccin de reset que limpia todo el contenido de los contadores y temporizadores que estn asignados. La siguiente imagen muestra la instruccin reset para el counter Contador_1.

Cabe mencionar que el reset slo se ejecuta cuando la condicin del run es verdadera. Vase la siguiente imagen: Cada segundo estar contando Contador_1 y cuando el acumulado sea igual o mayor al preset, el XIC Contador_1.DN se volver verdadero y se efectuar reset en Contador_1.

Reflexin:Cmo programara un foco que permanezca encendido un segundo y apagado otro segundo?ConclusinEl lenguaje de programacin escalera del PLC RSLogix 5000 es mucho ms fcil de comprender si se hace analoga con un circuito elctrico por relevacin, donde el rung es un cable conductor entre componentes (instrucciones). Las instrucciones tipo bool se pueden considerar como contactos de relevadores y bobinas. En el caso de las instrucciones tipo timer y counter, la analoga no aplica al 100%, pero slo es cuestin de considerar que su funcin depende de la condicin verdadera o falsa del rung. Si el rung energiza[footnoteRef:7] el timer/contador, ste entrar en funcionamiento. [7: Que exista continuidad lgica.]

5.- Instrucciones comparativas y aritmticas

Introduccin

El RSLogix 5000 cuenta con una muy amplia gama de instrucciones lgicas para programacin, desde las vistas anteriormente como contadores y temporizadores, hasta conversiones aritmticas complejas. En este tema se abordarn los elementos comparativos y aritmticos ms bsicos para enriquecer el abanico de opciones que tiene el usuario para programar.Es un hecho que el PLC se convierte en el dispositivo que toma decisiones de accin en funcin de las entradas que recibe. Las instrucciones comparativas y aritmticas le permiten al usuario programar de forma sencilla una serie de condiciones que se deben de cumplir para que se ejecute una accin determinada.

5.1.- Comparaciones y lmitesEstas instrucciones se localizan en la pestaa Compare del men Language element:

Tenemos un total de 9 opciones, siendo 7 las ms utilizadas y que se describen a continuacin: LIM: Limit, instruccin que examina un valor entre un lmite superior e inferior. Se usa generalmente con tags INT, DINT o REAL. En el ejemplo: el OTE del tag light_1 se activa cuando el tag value dentro de la instruccin tiene un valor entre 0 y 100, incluyendo el 0 y el 100.

EQU: Equal, instruccin comparativa que es verdadera cuando el tag en la casilla A tiene el mismo valor que el tag en la casilla B. Tambin se usa con INT, DINT o REAL. En el ejemplo: el tag light_a debe de tener un valor de 1 ya que su instruccin OTE es verdadera debido a que value_1 y value_2 tienen el mismo valor.

NEQ: Not equal instruccin opuesta a EQU, donde la instruccin es verdadera cuando los tags en las casillas A y B tienen valores diferentes entre s. En el ejemplo el tag light_4 debe de tener un valor de 0 debido a que la condicin NEQ no se cumple.

LES: Less Than, examina si A es menor que B. En el ejemplo el tag light_3 es 1 debido a que A es menor que B.

GRT: Greater than, examina si A es mayor que B. En el ejemplo light_1 tiene valor de 1 ya que se cumple A>B.

LEQ: Less or Equal, examina si A es menor o igual a B.

GEQ: Greater or Equal, examina si A es mayor o igual a B.

5.2.- Aritmtica

Son instrucciones de cmputo matemtico. stas, a diferencia de las instrucciones comparativas, no se consideran condicionantes para la continuidad lgica de un rung. En otras palabras, no son empleadas para tomar decisiones.Las instrucciones aritmticas ejecutan un clculo matemtico y modifican un tag especfico, asignndole el valor resultante [se usan tags IND, DINT o REAL]. Las podemos encontrar en la pestaa Compute/Math en el men de Language element. En total tenemos 9 instrucciones a nuestra disposicin, siendo las ms utilizadas las siguientes: CPT: Compute, ejecuta una operacin aritmtica definida por el usuario mediante una expresin. En el ejemplo de la izquierda, si Valor_2 tiene un valor de 4, al ejecutarse la instruccin CPT con la expresin definida, el valor de Valor_1 sera de 16.

Ejemplo de expresionesInstruccin

ADD: Add, suma el valor del tag de la casilla A con el de la casilla B y lo deposita en Dest.

SUB: Subtract efecta A B y el valor lo deposita en Dest .

MUL: Multiply, efecta A*B y el resultado se deposita en Dest.

DIV: Division, ejecuta A/B y el resultado es depositado en Dest.

Reflexin:Considerando lo aprendido en este tema: Cmo evitara que una falla de PLC por mal indexado en un arreglo?. .. .. .. .. .. .

ConclusinLas instrucciones de comparacin y aritmticas tambin son componentes bsicos de programacin que nos permite ampliar el abanico de posibilidades para la solucin de problemas de automatizacin. Las comparativas simplifican muchas de las tomas de decisin o condiciones que mediante instrucciones XIO, XIC u otros bool sera muy complicado o imposible.En cambio las aritmticas nos permiten manipular informacin en base a la necesidad que tenga el usuario. Es posible modificar tags de otras instrucciones, como el Pre de un contador o un temporizador. Es preciso considerar que las instrucciones vistas en este tema trabajan con datatypes INT, DINT y REAL, donde se debe de emplear el mismo tipo de tag dentro de la misma instruccin. No es adecuado comparar un INT con un DINT o sumar 2 DINT y depositarlo en un REAL. Es posible, pero se pierde informacin debido a la conversin.Con este tema cubierto el participante ya est preparado para programar algunas secuencias bsicas que pueden resolver la mayora de las necesidades de automatizacin. Ms sin embargo, antes de iniciar a programar, se sugiere analizar y entender los procesos de secuencia ya existentes en las lneas.

6.- Estrategias de monitoreo y navegacin

Introduccin

Observe la siguiente imagen de un programa real de una estacin robtica. Tiene un gran nmero de rutinas, cada una con al menos 20 rungs con todo tipo de instrucciones. Ahora imagine que requiere encontrar la instruccin que activa un determinado OTE entre todas estas subrutinas.

En este tema se abordarn algunas de las herramientas ms tiles para navegar entre rungs y tags con el fin de simplificar el monitoreo de rutinas.

6.1.- Referencia cruzada y monitoreo de TagsLa referencia cruzada[footnoteRef:8] o Cross Reference es una funcin que permite buscar en todo el proyecto[footnoteRef:9] y encontrar cada ocurrencia del tag o subrutina seleccionada. La siguiente imagen muestra la ventana de referencia cruzada: [8: Cross reference: Ctrl + E] [9: Proyecto: Se refiere al archivo .ACD.]

La referencia cruzada se vuelve una herramienta extremadamente til e indispensable cuando se trabaja con programas extensos y con un gran nmero de tags ya que permite visualizar todas las intervenciones de dicho tag o rutina en todo el programa. Observe el siguiente ejemplo: Tenemos en el rung un XIC del tag Seq.Active y nos interesa ver la instruccin OTE que lo vuelve verdadero.

Hacemos click derecho sobre el nombre del tag y seleccionamos Go to Cross Reference.

Inmediatamente aparecer la ventana de referencia cruzada donde visualizaremos todas las ocurrencias del tag, en las diferentes instrucciones. La instruccin OTE para dicho tag se encuentra en el programa TCM102, en la rutina C00_Sequence, en el rung 2. Haciendo doble click en el elemento nos abrir la subrutina y el rung donde se encuentra la OTE.

Otro instrumento de monitoreo es el Monitor de tags, donde podemos observar el valor de los tags en tiempo real. As mismo se visualiza toda la estructura del tag, como en el caso de los contadores o temporizadores formados por diferentes elementos de distinto tipo de dato. Para poder acceder al monitor de tags se hace click derecho sobre el tag en la instruccin y se selecciona Monitor.

6.2.- Trend

Es una herramienta que nos permite visualizar un muestreo de los valores de un tag sobre un periodo de tiempo. Bsicamente es como un osciloscopio que slo puede graficar elementos BOOL, INT, DINT y REAL. Igual que con la referencia cruzada y el monitor, hacemos click derecho sobre el tag y seleccionamos Trend.

El trend nos permite monitorear seales en intervalos de 10 milisegundos, siendo mucho ms detallado que el monitor de tags.

Reflexin:Bajo qu situacin considera usted que el Trend es la mejor opcin para detectar una falla?. .. .. .

ConclusinLas herramientas de monitoreo y navegacin simplifican en gran medida el uso del RSLogix 5000. Cuando los programas se vuelven muy extensos y existe una gran cantidad y variedad de tags, el usuario fcilmente se puede confundir y equivocar, dificultando la deteccin y correccin de fallas de secuencia.El uso de las herramientas cross reference, trend y monitor debe de volverse de costumbre para el usuario debido a la alta complejidad de procesos automatizados que se tienen en Metalsa y a la urgencia constante de corregir fallas inmediatamente.

Conclusin del manual

Metalsa S.A. de C.V. Mantenimiento VL LatinoamricaPage 2