MANUAL
Programcion PLC Allen Bradley MicroLogix 1200 Software RSLogix 500
Enero 2008
Indice
Informacion del equipo PLC Micrologix 1200 CAT 1762-L24BWA
Ser C
Rev H
Entradas 14 24 Vcc Salidas 10 Rele Equipo adicional del PLC MicroLogix 1200: Simulador de entradas para Micrologix 1200
Interface de comunicación PC- PLC
Panel para PLC, con canaleta y riel DIN
Software
RSLogix 50 500 0
A continuación veremos como utilizar el software RSLogix 500, el cual nos permitirá crear los programas de control en lenguaje Ladder del controlador lógico programable MicroLogix 1200. Modo de accesar al programa:
Inicio, Todos los programas, Rockwell software, RSLogix 500 English. Y llegamos a la pantalla de inicio del software.
En esta pantalla damos click en File, New o en el icono, para poder crear un nuevo proyecto
Nos muestra una ventana donde tenemos que seleccionar el PLC con el cual vamos a trabajar, en este caso seleccionaremos el modelo Bul. 1762 MicroLogix 1200 Series Series C (1 or 2 Comm Ports) Y aceptamos.
Y llegamos a la pantalla principal, en la cual vamos a editar nuestros programas en lenguaje de contactos o Ladder. En la siguiente imagen vemos las partes principales de esta ventana:
Existen diferentes menus de trabajo, a continuación se hace una breve explicación de los mismos: Barra de menú: Permite realizar diferentes funciones como recuperar o guardar programas, opciones de ayuda, etc. Aquí encontramos las funciones elementales como las de cualquier otro software. Barra de iconos: Engloba las funciones de uso mas repetido en el desarrollo de los programas. Barra de estado del procesador: Nos permite visualizar y modificar el modo de trabajo del procesador (online, offline, program, remote), cargar y/o descargar programas, asi como visualizar el controlador utilizado. Arbol del proyecto: Contiene todas las carpetas y archivos generados en el proyecto, estos se organizan en carpetas, las mas importantes son las siguientes: -Controller
y
Controller Properties: Contiene las prestaciones del procesador que se esta utilizando, las opciones de seguridad que se quieren establecer en el proyecto y las comunicaciones.
y
Processor Status: se accede al archivo de estado del procesador.
y
IO Configuration: Se podrán establecer y/o leer las tarjetas que conforman el sistema.
y
Channel Configuration: Permite configurar los canales de comunicación del procesador.
-Program files
Contiene las rutinas Ladder creadas en el proyecto. -Data Files
Da acceso a los datos del programa que se va utilizar asi como las referencias cruzadas. Podemos configurar y consultar salidas (output), entradas (input), variables binarias (binary), temporizadores (timer), contadores (counter), etc. Si seleccionamos alguna opción se despliega un cuadro de dialogo, en el que se pueden configurar varios parámetros según el tipo de elemento.
Panel de resultados: Aparecen los errores de programación que surgen al verificar la correcion del programa realizado (situados en la barra de iconos)
Efectuando doble click sobre el error, automáticamente el cursor se situara sobre la ventana de programa Ladder en la posición donde se ha producido el error. Barra de instrucciones: Nos permite a través de pestañas y botones, acceder de forma rápida a las instrucciones mas habituales de lenguaje Ladder.
Ventana del programa Ladder: Contiene todos los programas y bubrutinas Ladder relacionados con el proyecto que sse este realizando. Se puede interaccionar sobre esta ventana escribiendo el programa directamente desde el teclado o ayudándose con el raton ( ya sea arrastrando objetos procedentes de otras ventanas o seleccionando opciones con el botón derecho del raton). Modos de trabajo: los modos de trabajo mas usuales son -
OffLine: Consiste en relizar el programa en la PC, sin necesidad alguna de acceder al PLC para posteriormente una vez acabado y verificado el programa descargarlo en el procesador.
-
OnLine: La programación se realiza directamente sobre la memoria del PLC, de manera que cualquier cambio que se relice sobre el programa afectara directamente al procesador, este método nos permite hacer modificaciones en tiempo real.
Edicion de un programa en ladder Ahora, despues de las descripciones de menus que vimos anteriormente, veremos como editar un promgrama en Ladder para el PLC, para ello debemos de ubicarnos en la pantalla principal, seleccionando el modelo correcto de PLC que estamos utilizando. Como mencionamos, las diferentes instrucciones del lenguaje Ladder se encuantran en la barra de instrucciones siguiente:
Dentro de este menu se encutran las instrucciones que usaremos para crear nuestros programas, las cuales se describen a continuacion, por ahora solo se describiran las instrucciones, con la finalidad de hubicar en que menu estan contenidas, posteriormente haremos ejemplos usando estas instrucciones. Añadir un nuevo Rung o escalon.
Crear una rama en paralelo a la que ya esta creada. Contacto Normalmente Abierto ( XIC Examine If Closed) Examina si la variable binaria esta activa (valor=1) , y si lo esta permite el paso de la señal al siguiente elemento de la rama. La variable binaria puede ser tantao una variable interna de memoria, una entrada binaria, una salida binaria, la variable de un temporizador, entre ontras.
Contacto Normalmente Cerrado ( XIO Examine If Open) Examina si la variable binaria esta inactiva (valor=0), y si lo esta permite al paso de la señal al siguiente elemnto de la rama. Activacion de la variable (OTE Output Energize) Si las condiciones previas de la rama son ciertas, se activa la variable, si dejan de ser ciertas las condiciones o en una rama posterior se vuelve a utilizar la instrucción y la condicion es falsa, la variable se desactiva. Activacion de la variable de manera retentiva (OTL Output Latch) Si las condiciones previas a la rama son ciertas, se activa la variable y continua activada aunque las condiciones dejen de ser ciertas. Una vez establecida esta instrucción solo se desactivara la variable usando la isntruccion complementaria que aparece acontinuacion.
Desactivacion de la variable (OTU Output Unlatch) Normalmente esta instrucción se utiliza para anular el efecto de la anterior. Si las condiciones previas de la rama son ciertas, se desactivara la variable y continua desactivada aunque las condiciones dejen de ser ceirtas. Cambiando de pestaña a BIT
Flanco Ascendente (ONS One Shot) Esta instrucción combinada con el contacto normalmente abierto hace que se active la variable de salida unicamnete cuando la variable del contacto haga transicion de 0 a 1 (flanco ascendente). De esta manera se puede simular al comportamiento de un pulsador. Cambiando de pestaña a Timer/Counter
Temporizador (TON Timer On Delay) Instrucción que sirve para retardar una salida, empieza a contar intervalos de tiempo cuando las condiciones del renglon se hacen verdaderas, el temporizador incrementa su acumulador hasta llegar al valor preeseleccionado. El acumulador se restablece (0) cuando las condiciones del renglon se hacen falsas.
Contador (CTU Count up) Se usa para incrementar un contador en cada transicion de renglon de falso a verdadero.
Resetear (RES Reset) La istruccion RES restablece temporizadores, contadores y elemntos de control.
Ejercios 1.- Activar una salida por medio de una entrada, pasos para cargar el programa al PLC.
Para comenzar, debemos abrir el programa RSLogix 500 y seleccionar el modelo de nuestro PLC, y crear un nuevo proyecto, vamos a iniciar a programar en modo offline. Ya en la pantalla principal, verificamos que en la barra de instrucciones este seleccionada la pestaña USER.
El primer paso sera añadir un nuevo rung, solo tenemos que dar click en el icono
y se
añadira un nuevo rung en nuestro programa.
Para añadir elementos, debemos de seguir las reglas basicas de la programacion Ladder, salidas solo en el extremo derecho y entradas en la parte izquierda del diagrama Ladder. El primer elemento que añadiremos sera nuesttra entrada, solo la seleccionamos con el icono , y la arrastramos hasta donde deseamos colocarla, sin soltar el boton del raton.
Vemos que al seleccionar el elemento y arrastrarlo, el mismo software nos indica, medianta un cuadro verde, donde podemos colocar el elemento de manera correcta. Para aceptar y colocar el elemnto solo soltamos el boton del taron y este queda en su lugar.
Por ahora nuestra entrada nos muestra un signo de interrogacion, esto porque no hemos hecho aun el direccionamiento de esta entrada. A continuacion continuacio n ponemos nuestra salida, salida , seleccionamos con el icono
y la arrastramos arrastra mos
hacia dode queremos colocarla.
Ya tenemos los elementos necesarios para este ejercicio, ahora solo nos falata hecer el direccionamiento, o sea, indicar que numero de entrada y salida estamos utilizando. Primero direccionaremos la entrada, en el arbol del proyecto buscamos la carpeta DATA FILES y damos doble click sobre I1-INPUT , y se abrira el siguiente recuadro:
Aquí podemos ver las entradas con las que disponemos, en este caso I:0.0 del 0 al 13, para el ejemplo usaremos la numero 0, seleccionamos 0 y lo arrastramos hasta donde esta nuestra entrada.
Para la salida, hacemos el mismo procedimiento dero ahora, abrimos O0-OUTPUT, y en 0:0.0 seleccionamos la 0 y la arrastramos hacia donde esta nuestra salida.
Ya tenemos listo el programa, ahora antes de cargarlo en el PLC, debemos configurar la comunicación entre la PC y el PLC, ya que si queremos cargarlo asi, el software nos mandara la siguiente señal, donde nos indica que la comunicación no esta configurada.
Para configurar la comunicacio, vamos a INICIO, TODOS LOS PROGRAMAS, ROCKWELL SOFTWARE, RS LINK y damos click en RS LINK CLASSIC, y aparecera la siguiente ventana:
Damos click en
y nos aparece:
Damos click en
Damos click en
y nos aparece la siguiente ventana:
, y cerramos todas estas ventanas.
Regresamos a RSLogix 500 en nuestra pantalla principal, y buscamos la barra de estado del procesador:
Y seleccionamos:
Apareceran los suguientes recuadros en todos daremos aceptar:
Al aceptar todos, llegamos a la siguiente ventana:
Aquí ya hemos cargado con éxito nuestro programa, y nos encontramos en modo ON LINE, por lo que estamos monitorenado en que partes de nuestro programa hay señal. Si activamos la entrada, se activara la salida y nuestro elementos se pondran en color verde, en el PLC, cada salida y entrada tienen un led que nos indican su estado.
2.- Contacto Normalmente Abierto ( XIC Examine If Closed) en serie con el Contacto Normalmente Cerrado ( XIO Examine If If Open) , añadir descripciones a los elementos. Para iniciar este ejemplo, agregaremos un Contacto Normalmente Cerrado ( XIO Examine If Open) en serie con el contacto que ya teniamos y lo direccionaremos con una salida diferente a la del contacto normalmente abierto.
Ahora para poder identificar mas facil cada entrada o salida le añadiremos un comentario, en este caso al contacto normalmente abierto le pondremos START, al contacto normalmente abierto STOP y a la salida FOCO. Para poner la descripcion seleccionamos el elemnto y damos click con el boton derecho del raton, y seleccionamos la opcion EDIT DESCRIPTION. Y llegamos a la ventana donde escribiremos la descripcion del elemento, en el primer caso pondremos START y damos OK.
Hacemos el mismo procedimiento, hasta tener nuestro diagrama de la siguiente forma
Esta herramienta sera de gran utilidad para identificar facil y rapido elementos en programas extensos o complejos, donde tengamos varias entradas o salidas, o en programas donde usemos una misma entrada o salida en varios rungs. 3.-
Contactos y salidas virtuales, Circuito de Memoria o Enclavamiento.
En este ejemplo, ejemplo, realizaremos un circuito basico en programacion de PLC͛ s, el circuito de enclavamiento. Para esto necesitamos utilizar contactos y bobinas virtuales, es decir, contactos y bobinas que no existen fisicamente, no cuentan con ninguna conexión o bornefisico donde cablear, sin embargo en nuestro programa hacemos la conexión como si estos existieran, estos elementos son simulados por el PLC. Para este circuito usaremos dos entradas entradas del PLC una para un boton normalmente abierto sin enclavamiento (START) y la otra para un boton normalmente cerrado sin enclavamiento (STOP), una bobina y su contacto normalmente abierto virtuales, y una salida real del PLC (MOTOR), en donde podemos tener conectado un contactor, un motor, una luz indicadora, etc., en este caso la llamaremos simplemente MOTOR. Como primer paso, ponemos nuestros botones de START, STOP y la salida del MOTOR, notese que todos los elemntos los arrastramos de la pestaña USER.
Ahora para poder usar las salida y entradas virtuales cambiamos a la pestaña bit y vemos que tenemos tambien en este menu contactos y bobinas.
De este menu seleccionamos los elementos que usaremos como contacto y bobina auxiliar, tambien debemos colocar el lazo en paralelo con el boton de START que nos hara la memoria memoria del c ircuito.
Ya tenemos los elementos que usaresmos ahora solo tenemos que direccionarlos, para esto en el el arbol del del programa damos damos click en DATA FILES B3 -BINARY y nos aparece la siguiente ventana:
De esta ventanana ventanana arrastraremos arrastraremos B3:0 en la bobi bobina na y el contacto auxiliar, auxiliar, como el contacto auxiliar corresponde a la bobina auxiliar su direccionamiento es el mismo, mas adelante veremos como agregar mas elementos auxiliares.
Al direccionar todos los elemntos elemntos auxiliares auxiliares nuestro nuestro programa programa quedar quedara a de la la siguiente siguiente manera:
Notese que el direccionamiento de los elemntos auxilares es diferente del de las salidas y entradas reales. Ahora cargamos cargamos el programa programa al al plc, y al activar activar la salida salida I:00 I:00 (START), (START), en el el simulador simulador de entradas del PLC, solo damos un p ulso y lo regresamos a la posicion de apagado, apagado, y vemos como se hace la memoria en el circuito, para desacrtivar, cortamos la memoria con la entrada I:01. 4.- Timers.
La principal finalidad de utilizar timers en automatizacion, es controlar el tiempo que dura activado un elemento o desactivarlo cuando a transcurrido un cierto tiempo. El primer ejemplo que veremos para aprender a usar los timers para el PLC Micrologix, sera el caso mas sencillo, prolongar prolongar la a ctivacion de una salida un tiempo determinado, con un solo pulso de entrada. Para iniciar comenzamos con el problema anterior solo que eliminamos la salida real.
Y nos vamos al menu TIMER/COUNTER , selccionamos el icono
y lo
arrastramos a lugar donde estaba nuestra salida, quedando de la siguiente manera:
Hasta este punto, solo tenemos puesto puesto el temporizador, falta poner su contacto de salida que se activar a despues de que pase el tiem po programado, antes definiremos cuales son los datos que tenemos que poner en el temporizador para que est e funcione.
El numero de temporizador, nos define define cual temporizador estamos utilizando, utilizando, el software cuando creamos un programa nuevo nos c rea un temporizador por defaul, que es T4-TIMER, si queremos u tilizar tilizar mas temporizadores tenemos que crearlos, pero por ahora solo trabajaremos con este temporizador. Base de tiempo especificada, en esta parte definimos cual unidad unidad de tiempo utilizaremos, utilizaremos, es es te caso 1.0, est amos utilizando utilizando 1 segundo como base tiempo. Valor seleccionado, seleccionado, aquí definimos el tiempo que tardara el temporizador en a ctivar la salida, por por ejemplo, si ponemos 50, al energizarse el temporizador, este esperara 5 0 s para activar su contacto. Acumulador, Acumulador, al energizarse el temporizador, aquí visualizaremos visualizaremos cuantos segundos han trascurrido.
Para completar nuestro programa añadimos el contacto del temporizador y una salida real.
Ahora definiremos definiremos el temporizador,y pondremos un valor PRESET de 10 s , para definir el temporizador temporizador y su contacto abrimos T4 - TIMER en el arbol del programa en la carpeta DATA FILES, y tenmos la siguiente ventana:
Definiremos Definiremos el timer seleccionando seleccionando Offset T4:0, y arrastramos hacia el temporizador, para definir el contacto, seleccionamos DN 0 y lo arrastramos al contacto del temporizador.
Ya definido ponemos ponemos el valor de PR ESET, definimos la salida real del PLC que activaremos y cargam os en el PLC.
Ya definido ponemos ponemos el valor de PR ESET, definimos la salida real del PLC que activaremos y cargam os en el PLC. Cuando pasa el tiempo de de 10 seg, el contacto del temporizador temporizador estara activado mientras el temporizador este energizado, para desactivarlo dejamos de mandarle señal al timer, es decir, con el boton STOP cortamos la memoria y se abre el contacto auxiliar, por lo que el temporizador deja de recibir señal y su contacto se abre, por lo que la salida se desactiva. Existe otro temporizador, similar similar a TON, solo en este temporizador su contacto no se desactiva al dejar de recibir señal, si no para poder desac tivarlo necesitamos asociarle una funcion funcion de RESET, este temporizador temporizador es RTO Retentive On Delay. Para relizar un ejemplo con este temporizador utilizamos utilizamos el progarama anterior, solamente cambiamos el temporizador TON por un RTO, y ponemos el mismo de 10 s, y lo cargamos en el PLC. Nos dbe quedar de la siguiente forma:
Al correr el programa, vemos que r ealiza la funcion de la misma manera que un temporizador temporizador TON, solo que al activar el boton STOP, la s alida no se desactiva, para poder desactivarla necesitamos poner en nuestro programa un RESET para dicho temporizador, temporizador, este est e se encuentra en el mismo menu del temporizador , y funciona funciona como una bobina, por lo que para activarla nesesitaremos el uso de una entrada, el programa completo queda como se muestra:
Al probar el progarama, vemso que la unica manera de desactiva r nuestra salida O:0 es mediante el boton de Restablecer, otra manera seria en lugar de activarlo con una entrada adicional, programar programar el mismo boton STOP como restablecedor del temporizador, temporizador, como se muestra a continuacion: continuacion:
5.- Contadores.
Definidos Definidos como posiciones de memoria que almacenan un valor numérico, mismo que se incrementa o decrementa según la configuración configuración dada a dicho contador. Como los temporizadores, temporizadores, un contador contador debe tener un un valor prefijado como meta o PRESET, el cual es un número que el usuario programa para que dicho contador sea activo o inactivo según el valor alcanzado. Por ejemplo, si el contador tiene un preset de 15 y el valor del conteo va en 14, se dice que el contador se encuentra inactivo, inactivo, sin que por ello se quiera decir decir que no esté contando. Pero al siguiente pulso, cuando el valor llegue a 15, se dice que el contador es activo porque ha llegado al v alor de preset. La finalidad mas basica de un contador, es perimitir el pa so de señal a un elemento pero solo un derteminad derteminad o numero de veces,al contar estos pulsos y llegar al valor preset el contacto asociado a este contador se activara, este contador corresponde al tipo COUNT UP
, y se encuentra en el menu de Timer/Counter.
El ejemplo siguiente siguiente consiste en ac tivar una salid a, programando un valor preset al contador de 3, al correr el programa, damos tres pulsos pulsos al contador, o sea, activamos las entarada asignada (START) tres veces para activar el contacto del temporizador y este activara nuestra salida.
Al activar y desactivar nuestro boton START, vemos que el contador va incrementan do su acumulador, según las veces que hemos mandado señal al contador. Cuando el numero en el acumulado se iguala con el valor de preset, el contacto del temporizador temporizador se a ctiva, por lo que la señal puede llegar hasta nuestra salida.
Observese que no hay manera de desabilitar el contacto del temporizador, por lo que la salida estara siempre a ctiva, esto resulta algo impra ctico, por lo que debemos añadir un RESET al contador, esto para poder desabilitar desabilitar su contacto, y restablecer el acumulador del contador a cero.
Conjunto de instrucciones La siguiente tabla muestra las instrucciones de programación del MicroLogix 1200 Grupo
de funciones Descripción Página
Contador de alta velocidad HSL, RAC ± Las instrucciones de contador de alta velocidad (junto con el archivo de función HSC) permiten controlar y monitorear las salidas físicas de alta velocidad. Generalmente se usan con entradas de CC. 5-1 Salidas de alta velocidad PTO, PWM ± Las instrucciones de salida de alta velocidad (junto con los archivos de función PTO y PWM), permiten monitorear y controlar las salidas físicas de alta velocidad. Generalmente se usan con salidas FET (unidades BXB) 6-1 Tipo relé (bit) XIC, XIO, OTE, OTE, OTL, OTU, OSR, ONS, OSF OSF ± Las instrucciones tipo relé (bit ) monitorean y controlan el estado de los bits. 7-1 Temporizador y contador TON, TOF, RTO, CTU, CTD, RES ± Las instrucciones de temporizador y contador controlan operaciones basadas en el tiempo o el número de eventos. 8-1 Comparación EQU, NEQ, LES, LEQ, GRT, GEQ, MEQ, MEQ, LIM ± Las instrucciones de comparación comparan valores mediante una operación de comparación específica. específica. 9-1 Matemáticas ADD, SUB, MUL, DIV, N EG, CLR, ABS, SQR, SCL, SCP, SWP ± Las instrucciones matemáticas realizan operaciones aritméticas. 10-1 Conversión DCD, ENC, TOD, FRD, GCD ± Las instrucciones de conversión realizan el multiplexado y desmultiplexado de datos y realizan conversiones entre valores binarios y decimales. 11-1
Lógicas AND, OR, XOR, NOT ± Las instrucciones lógicas realizan operaciones lógicas bit a bit en las palabras. 12-1 Transferencia MOV, MVM ± Las instrucciones de transferencia modifican y mueven palabras. 13-1 Archivo CPW, COP, FLL, BSL, BSR, FFL, FFU, LFL, LFU ± Las instruccion es de archivo realizan operaciones en datos de archivo. 14-1 Secuenciador SQC, SQO, SQL ± Las instrucciones de secuenciador se usan para controlar máquinas o procesos de ensamblaje automático que tienen operaciones constantes y repetibles. 15-1 Control de pro grama JMP, LBL, JSR, SBR, RET, RET, SUS, TND, TND, MCR, END ± Las instruccione s de flujo de programa cambian el flujo de la ejecución del programa de lógica de escalera. 16-1 Entrada y Salida IIM, IOM, REF ± Las instrucciones de entrada y salida permiten actualizar datos selectivamente sin esperar los escanes de la entrada y salida. 17-1 Interrupción de usuario STS, INT, UID, UIE, UIF ± Las instrucciones de interrupción de usuario permiten interrumpir el programa según los eventos definidos. 18-1 Control de proceso PID ± La instrucción de control de proceso proporciona control de lazo cerrado. 19-1 ASCII ABL, ACB, ACI, ACL, ACL, ACN, AEX, AHL, AIC, ARD, ARD, ARL, ASC, ASR, AWA, AWT ± Las instrucciones ASCII convierten y escriben cadenas ASCII. No pueden usarse con el MicroLogix 1500, procesadores 1764-LSP Serie A. 20-1 Comunicaciones MSG, SVC ± Las instrucciones de comunicación leen o escriben datos en otra estación. 21-1