Un componente habitual de digitalización en el marco de la industria 4.0 es el surgimiento de sistemas MES: Manufacturing Execution system. Este tipo de sistema informático permite conocer en todo momento la eficiencia de las máquinas, obtener estadísticas o conocer el histórico de funcionamiento.
El objetivo de este artículo es documentar la creación de un sistema MES desarrollado íntegramente por AIDIMME. El mayor desafío aquí reside en la integración de las diversas tecnologías, ya que con el fin de hacer la plataforma adaptable a cualquier empresa, se ha utilizado una cantidad de tecnologías considerable. Se puede ver el gráfico de funcionamiento a continuación:
Vamos a desgranar el camino de datos:
- Las máquinas
Las distintas máquinas se monitorizan utilizando sensores IOT controlados por un autómata. Estos envían sus datos utilizando el protocolo OPCUA, es decir, el autómata implementa un servidor OPCUA. - Almacenamiento de datos de sensores
Los datos recibidos en el servidor por un cliente OPCUA son almacenados en un sistema de base de datos, normalmente se trata de SQL Server aunque no es condición imprescindible que se trate de este gestor de bases de datos. - Programa puente.
Un programa en Python denominado “puente”, ya que hace de nexo entre los datos y el sistema central, se ocupa de recolpilar los datos almacenados en el almacenamiento anterior, tratarlos, resumirlos y enviarlos con una periodicidad no superior a 10 segundos al sistema central - Backend
El sistema está basado en el conocido framework de PHP llamado Laravel, este se ocupa de recibir y contestar peticiones HTTP de diversos sistemas a la vez, estas pueden entrar a través del sistema estándar o de la API REST en caso de que no vengan directamente del navegador, como es el caso de la carga de órdenes de fabricación o de la carga de datos de las máquinas. - La base de datos
Una base de datos que utiliza la tecnología de MySQL, se ocupa de guardar los datos resumidos provenientes de las máquinas, las órdenes de fabricación y toda la entrada de datos que reciba de los usuarios. - Carga de órdenes
Para aquellas empresas que lo han requerido, se ha programado un sistema de carga de órdenes de fabricación que utiliza Python para leer de distintas fuentes. - Frontend
El frontend utiliza html 5, css3, javascript, adminlte, chartjs, jquery, bootstrap, y varias biliotecas de javascript más para ofrecer al usuario una experiencia fácil, intuitiva y agradable. Los usuarios pueden acceder a la UI desde cualquier navegador, aunque está especialmente testado en Chrome y Firefox. Esto permite a su vez poder acceder desde cualquier plataforma, ya sea un móvil, una Tablet o un ordenador. Un sistema de usuarios controla qué puede hacer cada uno, los perfiles de supervisor están diseñados para revisar el funcionamiento de la planta, mientras que los operarios tiene habilitada la entrada de datos como el motivo por el que se producen paros en fabricación o que cantidad de piezas no superan el control de calidad y por qué razón.