Está en la página 1de 57

COMO PROGRAMAR UN PLC ALLEN BRADLEY RSLOGIX 5000

El software RSLogix 5000 est diseado para programar controladores de la familia Logix 5000 y para la
plataforma logix de Rockwell Automation. Utiliza varias tipos de lenguaje de programacin como Escalera
(Ladder), Bloques de funciones (Functions blocks), texto estructurado (structured text) y esquemas de
funciones secuenciales (Sequential Function Chart).

Al abrir cualquier proyecto es necesario reconocer todas las caractersticas que se muestran en la ventana del
RSLogix 5000.

La barra de herramientas Creacin de componentes - Esta barra de herramientas es para crear


nuevos componentes del proyecto (por ejemplo, las etiquetas, las rutinas, programas, etc.)
La barra en lnea - Este barra de herramientas muestra el estado del programa y del controlador.
Tambin indica el modo de funcionamiento y si existen cambios pendientes
La barra de herramientas de la lgica comn - Esta barra de herramientas contiene todos los
elementos de lgica ladder que no son instrucciones (por ejemplo, rungs, ramas), as como las
instrucciones ms utilizadas.
La barra de herramientas Estndar - Esta barra de herramientas contiene las funciones (por ejemplo,
Cut Copy, paste) que va a utilizar varias veces a medida que desarrolle y pruebe su programa.
Barra de herramientas Editar Ladder - Esta barra de herramientas contiene toda la edicin en lnea
de las funciones, as como algunas funciones comunes de edicin
La barra de herramientas con pestaas Instruccin. Esta barra de herramientas muestra las
categoras de instrucciones en pestaas. Al hacer clic en una pestaa, la barra de herramientas
muestra las instrucciones de esa categora si hace clic sobre alguna instruccin aparecer en el
programa ladder
La barra de estado - barra de estado para informacin de estado en curso del programa. El
organizador del controlador - El organizador del controlador es una grfica y representacin de los
contenidos de su proyecto.
El panel de vistas - La ventana principal del software RSLogix 5000 le ofrece con un marco en el que
se pueden ver varios editores (por ejemplo, editor de ladder, editor de bloques de funciones, etc.,.)
La ventana de resultados - La ventana de resultados en la parte inferior de la ventana principal del
RSLogix 5000 muestra despus de haber realizado una operacin los resultados o errores. Esta
ventana le proporciona la informacin del estado y de los errores de la operacin que est
ejecutando
La pestaa Error - Si se realiza una operacin que resulta en un error, el error se destaca en la
ventana de resultados.

CREAR UN PROYECTO CON RSLOGIX 5000.

Convenciones de nombres
A lo largo de un proyecto Logix5000, usted define nombres para los distintos elementos del proyecto, como
son el controlador, las direcciones de datos (tags), las rutinas, los mdulos de E/S, etc. Cuando introduzca los
nombres, siga estas reglas:

Slo letras, nmeros y caracteres de subrayado (_)


Deben empezar con una letra o un carcter de subrayado
40 caracteres
No utilice caracteres de subrayado consecutivo
No se distingue entre maysculas y minsculas

AGREGAR MODULOS DE ENTRADA Y SALIDA

Para establecer comunicacin con los mdulos de E/S en el sistema, debe aadir los mdulos a la carpeta I/O
Configuration del controlador. Las propiedades que usted seleccione para cada mdulo definen cmo se
comporta el mdulo.
Al crear el proyecto, configurando el controlador y agregando los mdulos de entrada y salida que vamos a
utilizar, el organizador del controlador se vera algo as:
RSL

INTRODUCCION DE LA LOGICA LADDER EN RSLOGIX 5000

Para un controlador Logix5000, usted puede introducir la lgica en forma de rutinas.


Cuando usted crea un proyecto, el software automticamente crea una rutina principal que utiliza el lenguaje
de programacin de diagrama de lgica de escalera.

Cada rutina en el proyecto utiliza un lenguaje de programacin especfico. Para programar en un lenguaje
distinto, como un diagrama de bloque de funciones, para crear una rutina siga los siguientes pasos.

Una vez creada la rutina de lenguaje de programacin ladder, por ejemplo, se introduce la lgica:
Para asignarle tags a la lgica se debe tener en cuenta:
Aunque puede usar los tags de entrada y salida de un mdulo directamente en la lgica, es mucho ms fcil
usar los tags de alias. Veamos cmo se hace:

Una vez terminada la lgica con la asignacin de tags, se debe llamar a la rutina creada desde la rutina
principal, ya que esta es la que se ejecuta en todo momento.As que en la rutina principal se deben seguir los
siguientes pasos:
Por qu cuando Configuras el Drive en RS Linx escoges Ethernet devices y no Ethernet/IP Driver?

Diferencias.
Ethernet Devices: RSLinx consulta una direccin IP predefinida y pasa a la siguiente direccin IP.
En cambio Ethernet / IP, RSLinx usar broadcast / multicast de enrutamiento para encontrar el
equipo basado en Ethernet / IP en la red, pero esto puede ser bloquedo por politicas de red, firewall,
antivirus, VPN, etc.
Por tal motivo Rockwell Automation, recomienda para la adquisicin de datos usar Ethernet Device.
Este es un resumen que extraje del Knowledge Base Articulo 42077.

Cuando tienes en el chasis un mdulo ethernet y un control net y profibus cul sera la funcin de cada
uno?, se encuentran conectados el ethernet con un mdulo profibus por medio de un cable de red pero no
comprendo la configuracin

El modulo es profibus o profinet?, ahora que modulo es este el prosoft o otra marca. Normalmente se usa la
red ethernetIP para conectarnos al ControlLogix con rslogix5000 (program, diagnostic), ControlNet es para
I/O Remotos ya que es mas robusto que ethernet, el Profibus o profinet seria para comunicarse con equipos
siemens o que hablen ese protocolo. Dame mas detalle al correo servidoropcgmail

Que diferencia hay entre RSLOGIX 5000 y RSLOGIX 500

El RSlogix 5000 se utiliza para programar la familia de controladores logix (ControlLogix, CompactLogix,
Flexlogix, Etc). Es una intefase muchisimo mas amigable y en la cual puedes crear tags con nombres
descriptivos como Motor_Bomba en lugar de I0:1....Tambien le permite progrmar en diferentes lenguajes de
programacion como Ladder, Function Blocks, Sequential Function Charts y Texto.

La Main Routine, es uns subrutina que el programa predetermina para que sea la primera que se ejecuta. En
esta, normalmente se encuentran los JSR (jump to subroutine) hacia las otras subrutinas. Uno tambien puede
cambiar cual es la subrutina que se ejecuta primero selecionandola como Main en las propiedades del
programa

Configurar un transmisor analogico en rslogix 5000 como puedo hacer y como escalarlo

En el IO Configuration entras a propiedades del modulo analogo y en configuration seleccionas en input


Range si lo quieres en Voltaje o en corriente y luego en scaling le das los rangos a escalizar
En el rticulo de hoy vamos a ver como comunicar Intouch con Microsoft Excel, para realizar el
enlace utilizaremos el protocolo DDE.

El primer paso ser crear un nuevo AccessName con los siguientes parametros: Access, le
asignamos el nombre que nos interese, en Node name: Si se esta ejecutando en la misma
mquina, no hace falta especificar nada, ya que por defecto es localhost. Application Name:
debemos especificar EXCEL y por ltimo Topic Name: Aqu debemos decir el nombre del libro
excel, existen varias posibilidades para nombrarlo [nombre libro excel.xls]nombre de la hoja, o
bien podemos nombrar solamente el nombre del libro excel con su extensin xls, aunque en
algunas ocasiones sin el .xls tambien funciona
Lo siguiente que vamos ha hacer es configurar los tags, dependiendo del idioma de instalacin
del Excel, nos dirigiremos a las diferentes celdas, para el idioma espaol utilizaremos "Fila
nmero Columna nmero" (F1C1) pertenece a A1 y si lo tenemos en Ingles seria "Row
number Column number" (R1C1)

Creamos unos campos de texto vinculados con los tags creados anteriormente, para la
visualizacin y unos cuadrados como objeto para modificar su valor, aunque tambien lo
podremos hacer directamente desde la hoja Excel
A la hora de ejecutar el Runtime hay que tener presente que el libro Excel tenemos que
tenerlo abierto, si esta cerrado, nos mostrara un aviso y nos dira que no se encuentra el
Tpico que hemos configurado, con lo cual ejecuto el Runtime y se puede observar su
funcionamiento
Un cambio de valor en la hoja Excel se visualiza su actualizacion en Intouch y en la grfica
Pero si solamente nos interesa leer en excel y no escribir, para no gastar tags, lo que
podemos hacer es leer el tag que nos interese aplicando la siguiente formula:
VIEW|TAGNAME!'Nombre del Tag' y aqui su funcionamiento
Que es una PDO y SDO en la comunicacin
EtherCAT

Cuando trabajamos con dispositivos EtherCAT es muy comn que el acrnimos PDO (Process
Data Objects) o SDO (Service Data Objects) salgan a relucir, ya que con estos elementos
podemos configurar la comunicacin entre los dispositivos, por ejemplo para gestionar que
parmetros queremos que intercambien en la comunicacin entre un controlador (maestro) y
por ejemplo un variador de velocidad (esclavo). Existen dos mtodos de leer y escribir datos
en la comuncacin

PDO

Las PDO se utilizan para transferir datos durante la comunicacin cclica en tiempo real. Datos
con tiempo de ciclo critico. Un PDO consta de 1 o ms mensajes no confirmados

La transmisin PDO se produce slo cuando EtherCAT est en estado operativo. Los
mensajes PDO intercambio de informacin entre el host y los nodos sin la sobrecarga
de mensajes SDO

Existen dos tipos de PDO: PDO de recepcin (RxPDOs) que reciben datos desde el
controlador y

- RxPDOs - Que reciben los datos desde que envia el controlador (maestro)

- TxPDOs - Que enva los datos desde el variador (esclavo) hacia el controlador (maestro)
La capa de aplicacin EtherCAT puede contener varios objetos para permitir la transferencia
de los datos

Con PDO se transfieren mensaje crticos poco por ejemplo el marcha de un variador o sy
velocidad

SDO

Una SDO consiste en un mensaje de salida de un maestro a un esclavo y un mensaje de


respuesta desde el nodo, lo que se conoce como mensajera confirmado.

Mensajes SDO puede ser utilizado en cualquier momento despus de la inicializacin pero se
utilizan con menos frecuencia durante el funcionamiento real de la unidad.

Con SDO se transfieren mensajes no crticos para la aplicacin como por ejemplo
configuraciones o datos como pueden ser histricos de alarmas etc
Comunicacin RSLinx con Excel DDE
Aprovechando la consulta de un miembro del foro para visualizar las variables de un PLC en
una hoja Excel voy a explicar el procedimento.

Lo primero que tenemos que hacer es configurar un nuevo Tpico que haga referencia a
nuestro PLC, es aplicable a cualquiera de ellos, MicroLogix,SLC 50x,
ControlLogix,CompacLogix lo nico que tenemos que tener en cuenta es la versin del
RSLinx, ya que la version Lite no es funcional la comunicacin OPC/DDE
Si queremos utilizar los simbolos creados para referenciarlos es importante especificar en
Data Collection, el proyecto al que hemos hecho referencia en el Tpico

Vamos ha realizar el ejemplo con los siguientes simbolos que pertenecen a los Tags creados
en Controller Tags.
Una vez que estamos Online, abrimos un nuevo Libro Excel y para visualizar el Tag
escribimos la siguiente formula: =RSLINX|Topico!Tag
Y si nos interese hacer referencia a un Array, hay que utilizar las comillas tal y como se
observa
Ya podemos observar que al variar los Tags en nuestro programa automaticamente se
actualizan en nuestra hoja Excel. Este ejemplo solo sirve para visualizar los tags en Excel,
pero no podemos escribir desde la hoja Excel a nuestro Proyecto, es posible realizarlo pero
para ello hay que hacer uso de VBA
Filtado de una seal analgica mediante
una FB ( Function Block )
27 Diciembre 2012

o inCompartir
Siemens
Software & Programacion
Ledo 1200 veces

En este artculo vamos a dar una posible solucin al ejercicio planteado por un miembro del
foro, ya que hemos considerado que puede ser interesante. El ejercicio consistia en lo
siguiente:

Se trata de realizar un FB que filtre una seal de entrada analgica de tipo WORD de la
siguiente manera:

-Se activar el byte de marcas cclicas por hardware y se elegir el bit de marcas que permita
un muestreo de la seal analgica de 1s

-El FB deber tener una entrada de tipo BOOL (que ser el bit de ciclo mencionado en el
punto anterior) y una entrada de tipo WORD
(correspondiente a la seal analgica que se pretende muestrear)

-El FB tendr una salida (de tipo REAL) que corresponder, en cada instante de muestreo, a
la media de la muestra actual capturada de la seal analgica junto con sus tres muestras
anteriores. Todas ellas debern irse almacenando en el DB de instancia asociado al FB. Por
otro lado, se utilizarn las variables
temporales necesarias.

-El resultado que proporciona el FB (la media indicada) podr declararse como salida o como
variable esttica.
El primer paso ser configurar una marca de ciclo, ello lo hacemos en la configuracin del
hardware de nuestro proyecto, propiedades, Marca de ciclo. Hemos seleccionado que ser la
M100.0 .. 7

Dentro de este Byte, tenemos varias posibilidades de la Frecuencia / Periodo de la seal, para
ello consultamos la ayuda, ya de deberemos seleccionar 1 segundo. El bit que nos interesara
es el M100.5
Agregamos un nuevo bloque, para crear nuestro FB, le damos el nombre que nos interese y el
lenguaje que utilizaremos, en este ejemplo se utilizara SCL
Al crear una nueva Funcin, debemos especificar los datos de Entrada, Salida, Temporales,
Estaticos, etc... para la resolucin de est hemos utilizado los siguientes, aunque seguro que
pueden variar , ya que dentro de la programacin muchos caminos llevan a la misma solucin.
Una vez declarado los datos, ya podemos implementar el cdigo, aunque segn vayamos
necesitando podemos ir agregando o eliminando. El cdigo es el siguiente, para una mejor
visualizacion, pulsa sobre la imagen.
Con esto ya podemos utilizar y llamar a nuestra funcion desde el Bloque de Organizacin o en
su defecto, donde nos interese, ya que una segunda parte era implementarlo en el OB35.

En la siguiente imagen hay dos llamadas, la primera de ella para comprobar su


funcionamiento en el PLCSIM, ya que como marca tiene la entrada I0.0, le ponemos un Flanco
positivo para que solamente se ejecute una vez por ciclo, de lo contrario se podria ejecutar
mas de una vez y no cumpliria con lo estipulado.

En la segunda llamada a la funcin, ya se ha implementado la marca de ciclo, con ello


ciclicamente cada segundo se iran registrando los datos dados por la seal de entrada y
calculando la media con los anteriores registrados.
Y si nos interesa, podemos hacer la llamada en el OB32 que se ejecuta cada segundo o en el
OB35 modificando el tiempo, ya que por defecto es de 100ms.
Simulacion RSLogix Emulate y FluidSim
22 Diciembre 2012

o inCompartir
Rockwell Automation
Software & Programacin
Ledo 2203 veces

En el artculo de hoy vamos a seguir trabajando con la simulacin de nuestro proyecto, sobre
todo cuando se trata de una Mquina y sus movimientos/actuaciones son mediante cilindros
neumticos, pero en esta ocasin vamos a realizarlo con un PLC Rockwell, cualquiera de su
familia, ya que lo haremos a traves del Servidor OPC RSLinx y es posible realizarlo con todos
ellos.

Los requisitos para poder realizarlo en mi caso son los siguientes, RSLogix 5000, RSLogix
Emulate 5000, RSLinx, que no sea su versin Lite, ya que no soporta la configuracion
OPC/DDE y el FluidSim.

Partiremos de la base que tenemos creado nuestro proyecto y ejecutandose en el RSLogix


Emulate, aqui no lo veremos, ya que aqui esta el enlace donde esta explicado, y a su vez
como se realiza la configuracin del Servidor OPC RSLinx con nuestro proyecto. Pues aqu
nuestro proyecto en Online
La siguiente imagen muestra la configuracin de nuestro Tpico, que apunta a nuestro
RSLogix Emulador. El candado significa que se esta ejecutando, con lo cual no se pueden
hacer modificaciones.
Para probarlo antes de seguir, hacemos uso del OPC Client y comprobamos que hay
comunicacin y se actualizan nuestros tags.
Creamos en el FluidSim un nuevo proyecto para la simulacin de nuestra Maquina/instalacin
es decir los equemas neumticos. Insertamos el Mdulo de entradas de FluidSim y el de
Salidas, que respectivamente estaran enlazados con el Servidor OPC RSLinx. Para realizar la
configuracin seleccionamos el mdulo, botn derecho y propiedades.

Seleccionamos el Servidor OPC, en este ejemplo el RSLix, pero como se puede observar en
la imagen, podriamos utilizar cualquier Servidor OPC, con lo cual este mismo procedimiento
se puede aplicar para simular cualquier PLC que tengamos enlazado a un Servidor OPC. Lo
he probado con otros y el funcionamiento es perfecto.

Lo prximo que tenemos que configurar es el item/Tag al que hara referencia, al tratarse de un
modulo de 8 bits un BYTE, tenemos que tenerlo presente, ya que al simular con el RSLogix
Emulate el modulo de simulacin es de 2 WORDS para las entradas y 2 WORDS para las
salidas
Una vez configurado los mdulos, ya podemos ponerlo en RUN y probar su funcionamiento,
una Advertencia, las entradas no se reflejan en el mdulo ya que en este, es donde se fuerzan
las entradas cuando trabajamos con el RSLogix Emulate, pero si que podemos seguir
simulando o bien por el FluidSim o por el mdulo de entradas del Emulador.
Al pulsar el pulsador, activamos su entrada correspondiente, y siguiento el programa activa
su salida que corresponde al selenoide de nuestra electovvula.
Un Saludo y espero que os sea de utilidad... Y si te ha gustado, compartelo
En el artculo anterior se intento dar una posible solucin del siguiente ejercicio considerando
que la programacin la estabamos realizando en un S7-300/400/1200, hoy veremos como
resolverlo utilizando el RSLogix 5000.

Ejercicio:

Se trata de realizar un FB (Add-On en Rockwell) que filtre una seal de entrada analgica de
tipo WORD de la siguiente manera:

-Se activar el byte de marcas cclicas por hardware y se elegir el bit de marcas que permita
un muestreo de la seal analgica de 1s (Con el RSLogix 5000 no tenemos esta opcin con lo
cual nosotros generaremos la seal cada segundo)

-El FB deber tener una entrada de tipo BOOL (que ser el bit de ciclo mencionado en el
punto anterior) y una entrada de tipo WORD
(correspondiente a la seal analgica que se pretende muestrear)

-El FB tendr una salida (de tipo REAL) que corresponder, en cada instante de muestreo, a
la media de la muestra actual capturada de la seal analgica junto con sus tres muestras
anteriores. Todas ellas debern irse almacenando en el DB de instancia asociado al FB. Por
otro lado, se utilizarn las variables
temporales necesarias.

-El resultado que proporciona el FB (la media indicada) podr declararse como salida o como
variable esttica.

Con el RSLogix 5000 tenemos la opcin de crear nuestras propias funciones y reutilizarlas,
para la creacin de una nueva, en el directorio Add-On -> New Add-On Instruction
Introducimos el nombre que va a tener, un comentario, lenguaje de programacin y por
defecto aparece seleccionado el combo Box Open Definition, que nos abrira una nueva
ventana donde definir las variables que vamos a utilizar.
Se nos ha abierto el siguiente asistente, donde navegando por los diferentes menus, haremos
la configuracin.
Lo primero que vamos a definir, sern las variables de entrada y salida, especificando el tipo
de dato a utilizar en el menu de Parameters
En el menu Local Tags, definiremos las variables que utilizaremos en la programacin de
nuestra funcin y que no son variables de entrada ni salida, haciendo una comparacin con
Siemens, seria equivalente a los datos estticos. Una vez definidos si pulsamos sobre el botn
Logic, se nos abrira una nueva ventana donde insertar nuestro cdigo (El tipo de datos de
sumatorio es REAL, para que en el resultado se aprecien correctamente los decimales)
Como estoy reutilizando el cdigo del ejercicio anterior, hay que hacer unas pequeas
modificacines, pero el cdigo en si, es el mismo, incluso un poco mas simplificadado, ya que
no hace falta las funciones que utilizabamos para las conversion de datos, para una mejor
visualizacin pulsa en la imagen.
Ya podemos utilizar nuestra funcin, pero antes de ello, definimos una nueva variable en
nuestro Program Tags, y especificamos que sea del tipo de nuestra funcin.
La variable que se nos crea, es del tipo estructura con los datos definidos, accedemos a sus
diferentes campos con el nombre de la variable (Estructura) "." seguido del campo que nos
interese.
Para la utilizacin de la funcin creamos una subrutina, donde le pasamos los valores de
entrada a nuestra funcion, seguido de la funcin y obtenemos los resultados al final
Y por ltimo hacemos la llamada desde el programa principal a las diferentes subrutinas y
comprobamos su funcionamiento que es correcto.
Un Saludo
Cambiar versin de un Prograrma
RSLogix5000
12 Diciembre 2012

o inCompartir
Rockwell Automation
Software & Programacin
Ledo 1130 veces

En este artculo vamos a ver como podemos abrir, editar y cargar un programa realizado con una
versin superior a la que nos interesa, es decir hemos realizado un programa con el RSLogix5000
V.17 y por necesidades nos interesa abrirlo y cargarlo a nuestro PLC con la versin V.16, vamos a
ver el siguiente ejemplo, voy a tratar de abrir el programa Tes_01 que se ha realizado con la
version V.17 con la V.16
Al tratar de hacer esto, nos muestra el siguiente mensaje como se puede observar en la imagen
Para poder solventar esto, lo primero que tenemos que hacer es, una vez que tenemos nuestro
proyecto abierto en el RSLogix 5000 V.17 guardar una copia pero con el formato *.L5K, ya que
posteriormente tendremos que hacer una pequea modificacin en este.
Una vez realizado esto, abrimos el archivo generado con el notepad o cualquier editor de texto
plano y observamos que en su contenido hay una referencia a la versin con la que se ha creado y
el IE_VER := x.x , que es el parametro que tendremos que modificar.
Simplemente tenemos que cambiar a la version 2.6, este ejemplo esta basado con las versiones
V.17 y V.16, para versiones superiores seguir la misma metodologia
Guardamos los cambios realizados, y procedemos ha abrir este nuevo archivo en nuestro RSLogix
Acto seguido nos aparece la siguiente ventana, donde seleccionamos segn nuestras necesidades
Y aqui nuestro proyecto abierto con la versin V.16
IMPORTANTE: Esto solo es posible realizarlo si en el proyecto no se han incluido funciones
nuevas de la versin o alguna nueva actualizacin, ante cualquier situacin de estas o alguna no
mencionada no se producira la importacin correctamente y generara errores.

Escrito por Jose Manuel Luque

También podría gustarte