en un post anterior les contaba de la visita a una planta de producción en el interior de la provincia. bueno, esa visita era para dar el kick off de un proyecto de implementación de rfid en la gestión de almacenes. hoy unas semanas adelante estoy muy contento por los resultados que estamos obteniendo y por eso voy a dedicarle esta entrada…
rfid representa radio frecuency identification y hoy en día es una de las tecnologías mas novedosas aplicada a problemas de logística y manejo de almacenes [http://en.wikipedia.org/wiki/RFID].
mas alla de detalles puntuales de esta implementación que vamos a dejar de lado por pactos de confidencialidad, lo bueno de este proyecto es que nos permite conocer nuevas herramientas y tecnologías no tan habituales en los desarrollos que realizamos y que hasta cierto punto representan un desafío para cualquiera.
para generar la etiqueta que posee la identificación de rfid o tag, tenemos que interactuar con una infoprint 6700 [http://www.printers.ibm.com/internet/wwsites.nsf/vwwebpublished/6700home_ww], una impresora de ibm que nos permite generar las etiquetas y grabarles la información rfid. para realizar esto no solo utilizamos las apis que nos brinda java para interactuar con impresoras, sino que también tuvimos que aprender a programar en pgl (printronix graphic language), un lenguaje interpretado que es con el que se programan estas impresoras y le permiten a uno evitar soluciones cerradas del estilo bartender [http://www.seagullscientific.com/aspx/products.aspx].
como segunda pata de este proyecto está la integración con las lectoras, el equipo que recolecta la información de los tags que atraviesan un portón del almacén. En este caso y siguiendo con las soluciones ofrecidas por un canal de ventas de ibm, el lector es el infinity 510 de sirit [http://www.sirit.com/index.php?option=com_content&task=view&id=157&Itemid=92]. la verdad que todavía no tenía el placer de trabajar con un equipo así, pero aparentemente y por las pruebas que estuvimos haciendo, es un equipo bastante interesante. para empezar con los aspectos técnicos, este equipo es una computadora que corre un linux y oculta en un gabinete casi indestructible y que hace las veces de disipador para el procesador. la configuración de este equipo es mediante una interfaz web y la integración es mediante un protocolo propietario montado sobre una conexión ssh. fuera de lo que utilizamos, este equipo viene con algunos chiches, como ser la capacidad de correr aplicaciones java y scripts python en forma natural. para establecer el vinculo utilizamos la librería de jsch y desarrollamos un esquema de comunicación a prueba de fallas (desconexiones, timeouts y otros problemitas). por encima de esto, utilizamos el protocolo de sirit, implementando solo algunos de los comandos posibles.
finalmente como tercera pata de nuestra solución, tenemos que integrarnos con el sistema de gestión de la empresa, intercambiando cierta información critica para el circuito de despacho de producto. hoy en día, este sistema es un desarrollo inhouse montado en un iseries de ibm –si, son fanáticos de ibm-, pero dentro de unos meses pasaran a utilizar sap –increíble como ganan terreno!!!-, por eso el desarrollo de las interfaces y la política de integración con el erp de turno tiene que ser lo suficientemente flexible para minimizar los cambios a la hora de cambiar de interlocutor.
para mencionar un poquito de la mecánica de la solución, utilizamos struts, hibernate, spring, quartz, tomcat y mysql –si bien son fanáticos de ibm, hay cosas que pudimos evitar, como ser el websphere!-.
No comments:
Post a Comment