Ejerccicios Msj

Embed Size (px)

DESCRIPTION

crear mensajes controllogix

Citation preview

Comunicacin entre controladores Logix5000: Mensajes En esta entrada voy a resumir mis pruebas con la instruccin MSG de Logix. Usar la misma configuracin de la entrada anterior: dos mquinas virtuales con un SoftLogix en cada una que se comunicarn entre s. El control de la mensajera la har el primer controlador (SoftLogix A). En la segunda mquina virtual (SoftLogix B) simplemente voy a crear dos tags; en el primero, MENSAJE_DATOS_RECIBIDOS, estarn los datos que se escribirn desde el SoftLogix A. En el segundo, MENSAJE_DATOS_A_ENVIAR, pondr los datos que sern ledos desde el SoftLogix A. Y nada ms, en el SoftLogix B no voy a hacer ninguna programacin, simplemente voy a monitorizar los valores de ese par de tags.

Mis pruebas, por tanto, consistirn en, desde el SoftLogix A, leer y escribir a travs de mensajes en los tags del SoftLogix B.

En el proyecto del SoftLogix A deber especificar la existencia en la red Ethernet del SoftLogix B. Para ello, en el rbol de proyecto, en el apartado I/O Configuration, bajo la tarjeta Ethernet hay que incluir los mdulos correspondientes para que quede como sigue:

Para cada comunicacin por mensajes deberemos definir un tag de tipo MESSAGE. Como voy a usar en mensaje para escribir y otro para leer, creo los tags MENSAJE_ESCRITURA_SLB y MENSAJE_LECTURA_SLB respectivamente. Tambin necesitar tags que tengan el mismo formato que los tags del SoftLogix B en los que voy a leer y escribir, as que creo DATOS_A_ESCRIBIR_SLB y DATOS_LEIDOS_SLB. Finalmente creo un par de booleanos para dar las rdenes de escritura y lectura: ORDEN_ESCRITURA_SLB y ORDEN_LECTURA_SLB.

Ahora voy con la programacin. Simplemente consiste en lanzar la instruccin MSG con la orden de lectura o escritura y si no est el mensaje activo. Cuando finaliza la comunicacin se borra la orden respectiva.

En cada instruccin MSG deberemos asignarle el tag de tipo MESSAGE correspondiente. Para configurar el mensaje pulsaremos sobre el botn de los tres puntos que aparece en la instruccin.

Voy a empezar con el mensaje de lectura. En la pestaa Configuration lo primero es determinar el tipo de mensaje. Para la lectura de otro controlador Logix debo seleccionar CIP Data Table Read. A continuacin, en Source Element debo escribir el nombre de la variable del SoftLogix B que voy a leer, decirle cuantos datos de la tabla se transmitirn en Number of Elements y en Destination Element poner el tag del SoftLogix A donde se recogeran los datos.

En la pestaa Communication hay que especificar el controlador de donde se leeran los datos. Para ello pulsamos sobre el botn Browse y seleccionamos el controlador remoto.

En la instruccin MSG de escritura deberemos hacer una configuracin similar, deberemos configurar como tipo de mensaje CIP Data Table Write, especificar el tag donde estn los datos a transmitir, en nmero de dato y el nombre de la variable en el controlador remoto donde se almacenarn.

En la pestaa Communication deberemos asmismo seleccionar el controlador remoto.

Ya tenemos todo listo para comprobar que nuestra mensajera funciona. Cargamos nuestros proyectos en los dos SoftLogix y nos ponemos on line. En los tags DATOS_A_ESCRIBIR_SLB del SoftLogix A y MENSAJE_DATOS_A_ENVIAR del SoftLogix B asigno valores al azar y activando los bits de rdenes de lectura y escritura en el SoftLogix A compruebo que los datos se transmiten correctamente.

Datos en el SoftLogix A

Datos en el SoftLogix B

Y hasta aqu esta sencilla prueba de la mensajera en Logix. Los mensajes se utilizan para realizar comunicaciones controladas por la lgica de programacin. Por ejemplo, yo he tenido que usarlos recientemente para transmitir seales de alarma a un servidor, pero solo cuando se detectaba un cambio en las alarmas. De esta manera se evita saturar las comunicaciones. Adems hay una serie de limitaciones como que no puede haber ms de 16 mensajes simultneos, en el manual (PDF) viene todo esto muy bien explicado.