Automatización de una planta de almacenaje y distribución de mercancías usando Factory I/O y Codesys
Abstract
Con este trabajo de fin de grado se busca abordar un problema de automatización de un almacén de mercancías lo suficientemente complejo para poder llegar a comprender y gestionar los aspectos más importantes y críticos de grandes plantas de almacenaje y distribución. La planta se ha diseñado y construido en un simulador de la empresa Real Games, llamado Factory IO debido a su evidente sencillez en comparación con lo que supondría el montaje de la planta real.
Full text
Equation Chapter 1 Section 1 Trabajo de Fin de Grado de Ingeniería en Tecnologías Industriales Automatización de una planta de almacenaje y distribución de mercancías usando Factory I/O y Codesys Dpto. de Ingeniería de Sistemas y Automática Escuela Técnica Superior de Ingeniería Universidad de Sevilla Autor: Joaquín Romero Prada Tutor: Francisco Salas Gómez Sevilla, 2018
iii Trabajo de Fin de Grado de Ingeniería en Tecnologías Industriales Automatización de una planta de almacenaje y distribución de mercancías usando Factory I/O y Codesys Autor: Joaquín Romero Prada Tutor: Francisco Salas Gómez Profesor titular Dpto. de Ingeniería de Sistemas y Automática Escuela Técnica Superior de Ingeniería Universidad de Sevilla Sevilla, 2018
v Trabajo de Fin de Grado: Automatización de una planta de almacenaje y distribución de mercancías usando Factory I/O y Codesys Autor: Joaquín Romero Prada Tutor: Francisco Salas Gómez El tribunal nombrado para juzgar el Proyecto arriba indicado, compuesto por los siguientes miembros: Presidente: Vocales: Secretario: Acuerdan otorgarle la calificación de: Sevilla, 2018 El Secretario del Tribunal
vii Introducción Diseño del objetivo Con este trabajo de fin de grado se busca abordar un problema de automatización de un almacén de mercancías lo suficientemente complejo para poder llegar a comprender y gestionar los aspectos más importantes y críticos de grandes plantas de almacenaje y distribución. La planta se ha diseñado y construido en un simulador de la empresa Real Games, llamado Factory IO debido a su evidente sencillez en comparación con lo que supondría el montaje de la planta real. Además, se han incorporado aspectos técnicos antes no vistos en el grado sobre comunicación OPC y sobre la programación y comunicación de SCADA. Por ello, se ha propuesto una planta que incorpore una amplia variedad de componentes, acercándose así lo máximo posible a una planta de almacenaje y distribución real donde conviven numerosas de estas funcionalidades y sus consecuentes tomas de decisiones: desde el software HMI (del inglés, Human Machine Interfaces o interfaz humano-máquina) hasta el posicionamiento de sensores y maquinaria de transporte de mercancía, por ejemplo. A su vez, se ha abordado la resolución del problema desde un punto de vista realista y general, de manera que se cumplan los objetivos finales de un proceso de automatización de sistemas: diseño y organización de una planta, su control y su supervisión. A grandes rasgos, el proyecto comienza con el diseño de un problema cuyas limitaciones no están impuestas a priori, que cumpla unos requisitos de complejidad y novedad acorde con el desarrollo de un trabajo de fin de grado y continúa con su resolución abordando las diferentes características antes mencionadas. Esto equivale al diseño de una planta de almacenaje, con todos sus componentes de transporte de mercancías, almacenaje y distribución, junto con sensores que proporcionan información de la misma y el establecimiento de limitaciones de esta. El control de la planta se ha realizado en paralelo al diseño ya que pequeños errores producidos al comienzo del diseño pueden desembocar en grandes distorsiones al final. Se ha requerido ejecutar un control multiproceso en el que trabajen varios procesos en paralelo (funcionamiento de la planta en el simulador, control de cada componente de esta y ejecución en tiempo de real de un HMI que facilite información a un operario), seguir un orden de actuación lógico a la hora de abordar el proceso de diseño y resolución del problema e incorporar funcionalidades ampliamente utilizadas por la industria como son los modos de operación de un sistema. Comunicación OPC Una característica común en cualquier industria digitalizada es la necesidad de establecer comunicaciones entre dispositivos, no solo entre varios del mismo tipo o fabricante, sino entre varios de tipologías y características completamente diferentes. Por esta razón, se ha buscado la incorporación de varios componentes de distintos fabricantes que se comunican entre sí mediante un servidor OPC de la marca CODESYS. El servidor OPC hace las veces de enlace entre la planta real con el PLC que la controla y con el SCADA para la recopilación de datos y actuación sobre la misma. Más adelante se explicará las ventajas e inconvenientes de este servidor, además de dificultades que han aparecido al tener que utilizar una versión comercial gratuita.
Diseño de un SCADA Es vital para una fábrica, almacén o cualquier otro tipo de industria tener un sistema mediante el cual no sea necesario la intervención constante de un ingeniero especialista a la hora de resolver incidencias en el proceso de trabajo. Por ello, se introducen las HMI mediante las cuales, sin tener un conocimiento profundo del sistema, el operario que esté supervisando el sistema, pueda actuar sobre el mismo y obtener información útil. Se ha propuesto el uso del SCADA de la empresa InduSoft (versión educativa de 180 días), que incorpora comunicaciones a través de servidor OPC, pantallas de explotación con gráficos con los que interaccionar para trabajar sobre el sistema real y la posibilidad de generación de informes entre otras características. Ilustración 0.1: Ejemplo SCADA [1] Ilustración 0.2: SCADA creado para este proyecto
ix Índice Introducción ................................................................................................................................................. vii Diseño del objetivo ................................................................................................................................................ vii Comunicación OPC ................................................................................................................................................ vii Diseño de un SCADA ............................................................................................................................................. viii Índice ............................................................................................................................................................ ix Índice de Figuras ........................................................................................................................................... xi 1 Antecedentes ....................................................................................................................................... 11 1.1 CODESYS ..................................................................................................................................................... 11 1.1.1 Servidor OPC ...................................................................................................................................... 11 1.1.2 PLC ...................................................................................................................................................... 12 1.2 SCADA ......................................................................................................................................................... 12 1.3 Factory IO ................................................................................................................................................... 12 2 Objetivo ............................................................................................................................................... 13 3 Diseño de la planta .............................................................................................................................. 15 3.1 Características ............................................................................................................................................ 15 3.2 Proceso de creación ................................................................................................................................... 20 3.3 Componentes ............................................................................................................................................. 21 3.4 Limitaciones, problemas enfrentados y soluciones tomadas ................................................................. 22 3.5 Posibles mejoras ........................................................................................................................................ 23 4 Diseño del control ................................................................................................................................ 25 4.1 Estrategia elegida ...................................................................................................................................... 25 4.2 Modo Automático (principal) .................................................................................................................... 25 4.3 Modos de funcionamiento ........................................................................................................................ 26 4.4 Descripción detallada de la solución al control ....................................................................................... 27 4.5 Configuración del PLC ................................................................................................................................ 29 4.6 Limitaciones, problemas enfrentados y soluciones tomadas ................................................................. 32 4.7 Posibles mejoras ........................................................................................................................................ 33 5 Comunicaciones ................................................................................................................................... 35 5.1 Configuración del servidor OPC ................................................................................................................ 36 6 SCADA .................................................................................................................................................. 37 6.1 Características ............................................................................................................................................ 37 6.2 Configuración y diseño .............................................................................................................................. 37 6.2.1 Comunicaciones establecidas ........................................................................................................... 37 6.2.2 Guía de uso Comunicaciones InduSoft Web Studio ........................................................................ 37 6.2.3 Pantalla gráfica creada ...................................................................................................................... 40 6.2.4 Guía de uso pantalla gráfica InduSoft Web Studio.......................................................................... 42 6.2.5 Generación de informes del sistema ............................................................................................... 49
2. Objetivo 14
3. Diseño de la planta 15 3 DISEÑO DE LA PLANTA 3.1 Características Se ha diseñado una planta de distribución de cuatro tipos de mercancías y almacenaje en dos almacenes o “racks”, de manera que, mediante la realización de pedidos, se organicen en pallets de un determinado número de cajas en cada uno. Se busca que la planta no requiera de ningún operario para su correcto funcionamiento ya que el proceso de almacenaje y distribución es completamente automático. Para ello, se propone el control remoto a través de las herramientas anteriormente mencionadas, desde las cuáles se puede actuar sobre la planta. Además, se han tomado ciertas consideraciones que afectan al desarrollo del diseño de la planta: - Límites de trabajo: se considera que el alcance de este proyecto afecta solo a esta planta, desde las entradas de mercancías hasta las salidas. No se tienen en cuenta aspectos más allá de la misma tales como objetivo del stock o contenido de la mercancía, operaciones previas a las entradas de mercancías, defectos en mercancías, operadores y su seguridad, fallos en el funcionamiento de maquinaria, demanda de electricidad, aislamiento de ruido o ventilación, - Entradas: se ha supuesto que todos los tipos de mercancías entran desde una posición inicial prestablecida, ofreciendo el simulador la posibilidad de que sea aleatoria. Por ejemplo, una caja entra a la planta desde una posición paralela a la cinta sobre la que está y apoyada sobre su lado mayor. - Salidas: los pedidos salientes no se les aplica ningún tipo de embalaje por limitaciones del software y una vez alcanzan su posición de destino, desaparecen visualmente (en el simulador desaparecen completamente, pero es meramente simbólico). A continuación, se muestra una foto en perspectiva de la planta y sus respectivas vistas en alzado, planta (esquemático ya que desde el simulador no es posible debido a las medidas de la nave en la que se encuentra, ver en el apartado 3.1.3. Limitaciones, problemas enfrentados y soluciones tomadas) y perfil: Ilustración 3.1: Vista en perspectiva de la planta
3. Disen o de la planta 16 Ilustración 3.2: Vista en alzado de la planta Ilustración 3.3: Esquema de vista en planta de la planta
3. Diseño de la planta 17 Ilustración 3.4: Vista en perfil de la planta En la planta se pueden observar tres zonas diferenciadas, pero unidas entre sí, que realizan las tres tareas principales: entrada de mercancías, almacenaje y salida de mercancías desde almacén. La entrada de mercancías se ha diseñado de tal forma que por la cinta transportadora 1 entren los materiales crudos de forma aleatoria y se introduzcan individualmente mediante un “pick & place” en cajas apilables. Las cajas apilables entran por la cinta de rodillos 2 y tras pasar por la cinta de transferencia 2 y la cinta de rodillos 3, se une al flujo de cajas sobre pallets mediante la cinta de transferencia 1. Las cajas sobre pallets entran por la cinta de rodillos 1, de nuevo aleatoriamente, hasta llegar a la cinta de transferencia 1 donde se da por finalizada la zona de entrada de mercancías. Ilustración 3.5: Vista en planta de la zona de entrada de mercancías
3. Disen o de la planta 18 Ilustración 3.6: Esquema de vista en planta de la zona de entrada de mercancías Se indican en los esquemas con flechas verdes las entradas de mercancías y en rojas las posibles salidas, incluyendo las salidas establecidas para los pedidos y las salidas en caso de rearme de la planta. La zona de almacenaje viene tras la de entrada, para unirse al flujo de materiales en cajas apilables con el de cajas sobre pallets. Aquí, hay que tener en cuenta una serie de aspectos: - Las mercancías entran al primer almacén hasta que este sea llenado. - El segundo almacén y las cintas que transportan mercancías entran en funcionamiento una vez se ha llenado el primer almacén. - Está disponible la carga y descarga del primer almacén, pero solamente la carga del segundo. Con todo lo anterior, el flujo de mercancías va llenando el primer almacén a través de la cinta de carga 1 hasta que se alcanza su máxima capacidad. Al llegar a su máxima capacidad, se deriva el flujo desde la cinta de transferencia 3 hasta la cinta de carga 3, pasando por un conjunto de cintas, hasta ser cargado en el segundo almacén. La derivación del flujo de mercancías se realiza de manera dinámica debido a la descarga del primer almacén al realizar pedidos.
3. Diseño de la planta 19 Ilustración 3.7: Esquema de vista en planta de la zona de almacenaje La zona de salida de mercancías conlleva una distribución ordenada de mercancías según sus características, existiendo una salida individual para los cinco tipos de mercaancías que se manejan en esta planta. Para el apilamiento correcto de cajas se han utilizado los dispositivos “pick & place” para las cajas pequeñas y grandes y “two-axis pick & place” para las cajas medianas, facilitando así tanto el posicionamiento preciso, como el salvar las diferentes alturas de las cintas. Además, han sido necesarias unas guías sobre las cintas transportadoras para el correcto posicionamiento de las cajas sobre las zonas de recogida de cajas de los dispositivos. Se han subido todas las cintas de rodillos sobre plataformas para aumentar la altura de estas debido a limitaciones de longitud de los dispositivos “pick & place” y ”two-axis pick & place”. Ilustración 3.8: Vista en planta de la zona de salida de mercancías
3. Disen o de la planta 20 Ilustración 3.9: Esquema de vista en planta de salida de mercancías 3.2 Proceso de creación El simulador propociona como condiciones iniciales un espacio en el que trabajar, en un entorno industrial dentro de una nave, con la iluminación y espacio predefinidos y no modificables. Los dispositivos se muestran en un menú lateral ordenados por tipología del que se pueden coger clicando y arrastrando hacia la posición deseada. En primer lugar, se realizó un esquema sobre papel del layout que tendría la planta, teniendo en cosideración aspectos como el espacio de acceso de personal o la posible extensión con más dispositivos. Al mismo tiempo, del simulador se obtenía información de dimensiones. Tras esto, se comenzó a utilizar el simulador para montar zona por zona la planta completa. Se siguió el orden mencionado anteriormente de zona de entrada de mercancías, zona de almacenaje y zona de salida. En cada zona se situaban primero los dispositivos de grandes dimensiones tales como las grúas o los “pick & place” y posteriormente los sensores sobre las cintas. Se requirió de numerosos cambios debido a la imprecisión de las físicas del simulador, editando en la mayoría de los casos los rangos de acción y orientación de los sensores. Esto fue así porque a medida que se aumentaba el número de componentes móviles, se reducía el rendimiento del programa, introduciendo irregularidades en el movimiento de cajas y palets.
3. Diseño de la planta 21 3.3 Componentes Se detalla a continuación una tabla con todos los componentes y dispositivos utilizados, proporcionados por el simulador Factory IO: Denominación en Factory IO Denominación en el proyecto Cantidad (Ud.) Descripción Emitter Emisor 6 Emite un objeto para ser usado en la escena Remover Salida 14 Retira un objeto de la escena Palletizing box Caja pequeña - 3 kg Box (S) Caja mediana - 8 Kg Box (L) Caja grande - 15 kg Pallet Pallet - 20 kg Blue raw material Material crudo azul - Material para ser tratado color azul, 8 Kg Green raw material Material crudo verde - Material para ser tratado color verde, 8 Kg Stackable box Caja apilable - 15 kg, puede almacenar material Chain transfer Cinta de transferencia 8 Cinta para desplazar carga a cintas adyacentes Loading conveyor Cinta de carga 5 Cinta para cargar la grúa Chute conveyor low Rampa 10 Rampa para desechar carga Roller conveyor (2m) Cinta de rodillos 7 Cinta transportadora de pallets y cajas sobre pallets Roller conveyor (4m) Cinta de rodillos 2 Roller conveyor (6m) Cinta de rodillos 4 Belt conveyor (2m) Cinta transportadora 2 Cinta transportadora de material Belt conveyor (4m) 4 Aligner 2 Guía 21 Estructura de metal para guiar y alinear objetos sobre cintas Aligner 3 Wheel aligner Rueda guía 6 Rueda para guiar objetos Metal corner Esquina metálica 7 Usada para situar sensores Pusher Empujador 8 Empujador neumático de objetos Bracket Arco 1 Estructura metálica para situar sensores Diffuse sensor Sensor 29 Puede detectar cualquier sólido Vision sensor Cámara 1 Reconoce las características de materiales Light array emitter Sensor de altura 1 Conjunto de láseres paralelos para detectar diferentes alturas Light array receiver Pick & place Pick & place 2 Puente grúa de 3 ejes para mover cajas o material Stacker crane Grúa 3 Grúa situada sobre raíles para almacenar pallets y cajas sobre pallets
3. Disen o de la planta 22 Rack Almacén 6 Almacén de pallets y cajas sobre pallets Two-axis Pick & place Two-axis pick & place 3 Brazo de 2 ejes para mover cajas o material Platform (S) Plataforma - Estructuras de metal utilizadas para elevar dispositivos Platform (M) Platform (L) Platform (XL) Tabla 3.1: Componentes Factory IO Ilustración 3.10: Distribución de componentes en la planta 3.4 Limitaciones, problemas enfrentados y soluciones tomadas El software utilizado tiene ciertas limitaciones que afectan al desarrollo del proyecto en la medida que se detalla a continuación: - Entradas y salidas: el simulador proporciona una configuración de conexión a servidor OPC estableciendo un límite de 128 entradas y salidas (I/O). Esto ha supuesto una reducción en la planta final respecto a las perspectivas iniciales ya que se ha utilizado toda la capacidad que se proporciona. El planteamiento inicial fue usar tres almacenes de carga y descarga para acercarse lo máximo a un almacén automático, pero no hubo suficientes I/O.
3. Diseño de la planta 23 - Soporte online: los desarrolladores del simulador proporcionan soporte a través de email y poniendo a disposición guías en su página web [9], sin embargo, estas guías se basan en la explicación de los dispositivos, no del funcionamiento del propio simulador. - Físicas: se utilizó, al comienzo, la versión descargable del simulador cuyas animaciones no eran precisas, provocando giros indeseados en los pallets al pasar sobre las cintas de rodillos y siendo necesarios cambios en los parámetros de tiempos de muestreo y en la precisión con la que opera el programa. Además, los fps (frames per second) caían de manera brusca al trabajar con numerosos objetos móviles simultáneamente. Más adelante, se trabajó con la versión beta 2.3.0 (proporcionada por los desarrolladores) de una actualización que mejoraba el rendimiento al trabajar con grandes plantas. - Flexibilidad: el simulador utiliza un movimiento por cuadrículas de los objetos en el modo “Creación de escenas”, definiendo un movimiento mínimo que limita el posicionamiento de los objetos. - Espacio de trabajo: la zona sobre la que se comienza a crear la planta está delimitado por el interior de una nave industrial, siendo las paredes y el techo de la misma los límites de trabajo. Esta nave es lo suficientemente extensa como para no haber supuesto ningún problema, pero la altura ha supuesto una gran limitación debido a que la cámara no puede situarse más allá de este, reduciendo la visibilidad y la posibilidad de hacer capturas en planta. 3.5 Posibles mejoras El diseño y distribución de la planta ha sido totalmente libre, por lo que hablar de posibles mejoras es un tanto subjetivo, siendo estas equivalentes a modificar la idea inicial del proyecto como se indica a continuación: - Podrían utilizarse una variedad más amplia de dispositivos ofrecidos por el simulador Factory IO. Sin embargo, el realismo de la planta podría verse reducido por el hecho de que habría que eliminar algunos dispositivos usados y cambiar la funcionalidad del conjunto. - Redistribuir la planta de manera óptima. Respetando el mismo fin, sería recomendable un estudio de optimización de dispositivos de manera que el resultado sea el mismo utilizando menos maquinaria. Esto se podría abordar intentando modificar el recorrido de la mercancía, de manera que se pudiesen utilizar dispositivos más sencillos o incluso reutilizar alguno para varias funciones. Esto implicaría una reducción del coste de montaje, de operación (electricidad y mantenimiento) y utillaje ya que hay dispositivos, como por ejemplo el “pick & place”, que deben ser más caros que otros tales como el “two axis pick & place”. - Reducción de salidas del simulador. De nuevo, se debería intentar optimizar el número de sensores necesarios para el correcto funcionamiento de la planta, aunque es muy probable que una reducción de sensores implique un aumento de control por temporización (introducirían errores no detectables equivalentes a un control menos robusto). De nuevo, la reducción de sensore implica una reducción en el coste de montaje y operación.
4. Disen o del control 30 2) Se crean las variables que se vayan a utilizar el proyecto, tanto internas como aquellas que van a ser compartidas con los clientes.
4. Diseño del control 31 3) Se crean las POUs que se consideren para la realización del proyecto. 4) Iniciar la aplicación CODESYS Control Win V3 que simula un PLC. 5) Volver al proyecto de CODESYS y hacer doble clic sobre Device y hacer clic en Scan Network dentro de la pestaña de Communication Settings. Pulsar Scan Network y seleccionar el PLC que aparezca (se aconseja cambiar el nombre de este por uno propio).
4. Disen o del control 32 6) Tras pulsar OK, hacer doble clic sobre Application y seleccionar Add Object → Symbol Configuration y pulsar Add. 7) Por último, pulsar Build → Rebuild para cargar las variables en el PLC. De esta manera, las variables creadas en la lista de variables globales deben aparecer en la lista de símbolos. Se deben seleccionar en esta lista de símbolos únicamente las variables que vayan a ser enviadas a los clientes, ya que es aquí donde deben estar únicamente la información que vaya a ser compartida con los clientes que se conecten al servidor OPC. 4.6 Limitaciones, problemas enfrentados y soluciones tomadas El PLC simulado de CODESYS ofrece un comportamiento similar a un PLC real, sin embargo, en la versión gratuita del programa se permite su uso durante intervalos de dos horas, teniendo que ser reiniciado al final de cada intervalo. Esto conlleva a una pérdida de continuidad del proceso ya que se cortan las comunicaciones
4. Diseño del control 33 entre las diferentes partes del sistema. La única solución posible fue reiniciar la aplicación. Un gran condicionante para el control ha sido la limitación de 128 entradas/salidas de Factory IO. Esto es así porque en CODESYS hubo que definir numerosas variables teniendo en cuenta esta limitación, siendo necesario modificar la idea inicial en cuanto a nomenclatura de variables en CODESYS se refiere. Se detallará esta cuestión más adelante en el apartado de “Comunicaciones”. Un problema al que no se ha encontrado solución ha sido a la imposibilidad de implementar el modo manual, debido a un cierre abrupto de la aplicación que simula el PLC. Esto ocurrió al diseñar el SCADA e intentar programar la botonera para actuar sobre cada dispositivo individualmente, por lo que se rediseñó la interfaz para no incluir este modo. 4.7 Posibles mejoras En el Proyecto se han añadido los modos de funcionamiento más comunes, siendo posible una ampliación añadiendo otros que de alguna manera añadan funcionalidad a la planta. Se recomienda seguir la guía GEMMA. Ilustración 4.2: Diagrama de la guía GEMMA Se han utilizado unas cuatrocientas variables globales en el control de la planta que sirven para comunicar cada dispositivo y para enviar y recibir información del simulador y los clientes. Estas variables han sido declaradas a medida que avanzaba el diseño de la solución propuesta del control, siendo en muchas ocasiones, innecesarias. Se podría mejorar la velocidad de respuesta de CODESYS reduciendo el número de variables de manera que se usen aquellas que son indispensables. La dificultad de este cambio es considerablemente alta, pues haría falta un intenso estudio del comportamiento de la planta. Podría implementarse un llenado de los almacenes de otra manera más ordenada, de manera que cada tipo de mercancía se derivase a una zona dentro del almacén. De hecho, si se estuviese trabajando con mercancías con diferentes grados de prioridad, el tiempo mínimo que pasasen en la planta antes de llegar a destino podría ser más corto para las diferentes prioridades.
4. Disen o del control 34
5. Comunicaciones 35 5 COMUNICACIONES Se ha propuesto el uso del software propio de CODESYS para establecer las comunicaciones entre el simulador, el control y la supervisión mediante SCADA. Dicho software consiste en un servidor OPC sobre el que se cargan desde el software de programación utilizado, CODESYS, una lista de símbolos que serán transferidas a los clientes que se conecten al servidor. Dependiendo de la configuración, dicha lista puede ser transferida implícitamente con la aplicación o como una aplicación hijo separada. Además, un archivo con extensión XML es guardado en la ruta del proyecto. La comunicación entre el servidor OPC y CODESYS se realiza siempre a través de CODESYS Gateway V3. Solicitudes de información, valor o estado de los símbolos son manejadas por el PLC. [10] Ilustración 5.1: Diagrama de la jerarquía de las comunicaciones [10] Los clientes en el caso de este proyecto son el simulador Factory IO y el SCADA, teniendo la posibilidad de modificar las variables que han sido cargadas en la lista de símbolos desde el PLC.
5. Comunicaciones 36 5.1 Configuración del servidor OPC 1) Ejecutar la aplicación OPC Configurator 2) Cambiar el parámetro ratio de actualización, Update Rate, a 10 ms. 3) Seleccionar el PLC con el nombre que se haya definido haciendo doble clic en Connection. 4) Guardar esta configuración desde el menú File -> Save y cerrar la aplicación.
6. SCADA 37 6 SCADA 6.1 Características Se ha utilizado la versión gratuita de InduSoft Web Studio [11] que permite un uso ilimitado durante 180 días con uso exclusivamente educativo. El objetivo final de la interfaz HMI es el de proporcionar una herramienta de supervisión con la información relevante para los operarios encargados de controlar el correcto funcionamiento de la planta. Para ello se incorporan funciones que se preveén útiles para el seguimiento de cada proceso que componen el completo funcionamiento del sistema. 6.2 Configuración y diseño Se procede a explicar en cada apartado las características de lo incorporado en el proyecto, además de indicar mediante ejemplos, el método para el correcto uso del software elegido. Todo el proceso de aprendizaje del software se ha realizado de manera autodidacta gracias a, en gran medida, la documentación incluida con el programa [11] y, para cosas específicas, tutoriales que proporcionan en Youtube [12]. El proceso para la creación de una aplicación funcional sigue el orden siguiente: - Se establecen las comunicaciones con el servidor OPC (previamente configurado). - Se crean variables que vayan a ser utilizadas a medida que se edita una pantalla gráfica. - Se configura la generación de informes. 6.2.1 Comunicaciones establecidas Se constituyen comunicaciones bidireccionales con el servidor OPC de manera que se posibilita la escritura y lectura de las variables compartidas. De esta forma, desde el SCADA se recibe información para poder utilizar animaciones visuales y se envía información para, por ejemplo, la realización de pedidos o los modos de funcionamientos. La comunicación se ha hecho de manera local, es decir, tanto el PLC, como el servidor OPC y el SCADA están en el mismo equipo, pero este software ofrece la posibilidad de establecer comunicaciones en LAN o mediante una IP remota. Según se indicó en el apartado 3.2.4 Configuración del PLC, es necesaria una lista de símbolos de la que realizar la lectura y escritura antes nombrada. Se necesita definir un “tag” o etiqueta para cada variable compartida con el servidor y establecer la conexión con la ruta del símbolo en cuestión. 6.2.2 Guía de uso Comunicaciones InduSoft Web Studio Se procede a explicar los pasos a seguir para establecer comunicaciones con el servidor OPC además de la definición de las variables necesarias. 1) Abrir la aplicación Wonderware Indusoft Web Studio Educational y desde el menú superior hacer clic en Nuevo para comenzar un proyecto nuevo. Introducir a continuación el nombre del proyecto y la
6. SCADA 38 carpeta de destino y pulsar Aceptar. 2) Aparecerá una ventana en la que debemos introducir la resolución de la pantalla gráfica (1366x768 por defecto) y pulsar Aceptar. 3) Irse a la ventana de Comunicaciones en el menú Explorador de proyectos y ahí, hacer clic derecho en OPC UA y clic en Insertar. 4) Aparecerá una nueva ventana en la zona de trabajo en la que se debe introducir un nombre en los apartados Descripción y Conexión. Clic derecho a continuación en el nombre de la pestaña y Guardar. 5) Abrir la aplicación CODESYS Control Win V3 para tener activo el PLC y poder establecer una conexión con el servidor OPC.
6. SCADA 39 6) Ir al menú Explorador de proyectos, hacer doble clic sobre OPC UA, clic derecho sobre Conexiones e Insertar. 7) En la ventana emergente, introducir en el campo Nombre Conexión el nombre introducido en el punto 4) en el campo Conexión y pulsar sobre el icono con los puntos suspensivos tras el campo End point. 8) Aparecerá una nueva ventana en la que debe estar el servidor OPC previamente configurado tal que:
6. SCADA 46 8) Cerra la ventana y guardar la pantalla haciendo clic derecho sobre el nombre de la pestaña de la venta gráfica y Guardar. Figura con cambio de color: se va a crear un rectángulo de color base rojo que cambia a verde al cambiar la variable asociada a este (continuación de la creación de un botón). 1) Seleccionar del manú Formas un rectángulo. Dibujar al gusto sobre la pantalla gráfica. 2) Hacer doble clic sobre el objeto creado y cambiar en el apartado Fondo → Color el color base a rojo. Eliminar o dejar el borde a decisión propia. En el apartado Leyenda se puede introducir texto. 3) Cerra esta ventana y dirigirse, con el rectángulo seleccionado, al menú superior a Gráficos → Animaciones → Color.
6. SCADA 47 4) Hacer doble clic sobre el rectángulo de nuevo viendo que el menú ha cambiado. Aquí, escribir el nombre de la variable asociada al botón en el campo Límite de y establecer los colores para los valores booleanos en cada campo de Cambiar límit (se puede añadir un parpadeo con el cambio del color). 5) Cerrar la ventana y guardar. Cuadro de texto: se creará un cuadro de texto sobre el que aparecerá el valor que tiene la variable asociada al botón y al rectángulo anteriores. Se parte en una situación en la que se han creado dos botones, uno para poner a 1 la variable booleana y otro para ponerla a 0, además del rectángulo que cambia de color. 1) Acceder al menú superior a Gráficos → Objetos activos → Cuadro de texto y crear uno sobre la pantalla gráfica.
6. SCADA 48 2) Doble clic sobre el cuadro de texto e introducir el nombre de la variable a mostrar en el campo Tag/Expresión. Cerrar la ventana y guardar. El resultado de la animación se puede ver haciendo clic en la parte superior sobre el botón de Correr o pulsar F5. Se recomienda dedicar algún tiempo a explorar en el apartado Proyecto → Visor las opciones de visualización de la pantalla gráfica tales como pantalla completa.
6. SCADA 49 6.2.5 Generación de informes del sistema Es de vital importancia en un sistema controlado que se pueda obtener información, no solo visual, sino de forma documental para poder detectar posibles errores y poder mantener un histórico del proceso. Se ha introducido la posibilidad de generar reportes del estado del sistema en el momento actual en el que se incluyen la fecha y la hora actual, la información del modo de operación en el que se encuentra el sistema, los pedidos que hay y el estado de algunos actuadores. Ilustración 6.4: Ejemplo de informe del proceso
6. SCADA 50 6.2.6 Guía de generación de informe InduSoft Web Studio Partiendo de lo explicado en los apartados 5.2.2. y 5.2.4., se detalla a continuación un método de generación de informes. 1) Acceder desde el Explorador de proyectos a la pestaña inferior Tareas y hacer clic derecho sobre Reportes e Insertar. 2) Desde la ventana que aparece, introducir una descripción en Descripción e introducir en Arch.salida la cadena {ReportName}.txt (seleccionar tipo cadena cuando se vaya a crear una variable nueva). Esto creará un informe en formato .TXT con el nombre que se introduzca por teclado desde la ejecución del SCADA. 3) Guardar esta pantalla y acceder a la pantalla gráfica. Aquí pulsar en Gráficos → Texto con la variable asociada ReportName (importante seleccionar la casilla Habilitar entrada). En el apartado leyenda se deben introducir tantos caractéres # como caracteres se deseen para el nombre del archivo.
6. SCADA 51 4) Crear ahora un botón en el que se asociará la variable del sistema Report(“Disk:Report1.rep”) en el campo Expresión en la pestaña Al hacer clic, por ejemplo, seleccionando Tipo → Construido en lenguaje. Esto hará que al pulsar este botón se genere un informe en la carpeta donde se encuentre el archivo de guardado.
6. SCADA 52 5) Crear un nuevo botón, pero esta vez se accederá al menú superior con este seleccionado en Gráficos → Animaciones → Hipervínculo. Hacer doble clic sobre el botón e introducir en el campo URL la cadena {GetAppPath()}\{ReportName}.txt. En el menú desplegable Hipervínculo elegir (otro). De esta manera se podrá visualizar el informe generado desde la pantalla de ejecución del SCADA. 6) Guardar y acceder de nuevo a la pantalla de reportes. En la parte baja se permite la escritura. Es aquí donde se diseñará el formato de lo reportes. Se muestra a continuación un ejemplo que muestra la fecha, la hora y el valor de la variable asociada. 6.2.7 Limitaciones, problemas enfrentados y soluciones tomadas Pantalla gráfica: - Es un tanto tedioso establecer la configuración de cada elemento ya que es necesario hacerlo individualmente y no se puede seguir un método minimamente automatizado para ello. - Los objetos por defecto que ofrece el programa son demasiado limitados ya que no se pueden cambiar algunas características críticas como el tamaño. Para tener menos problemas, se utilizan objetos básicos que pueden ser modificados con mayor flexibilidad. - El tamaño mínimo de objetos y figuras viene definido por la cuadrícula de la pantalla lo que limita su número. No obstante, para este proyecto no ha supuesto una gran limitación puediendose incluir tantos objetos como han sido necesarios. Comunicaciones: - El número de variables utilizadas ha venido limitado por un error que aparece en el que el PLC simulado se cierra abruptamente. Se observó que, al sobrepasar cierto número de variables, ocurría esto por lo que no se ha podido hacer un SCADA más complejo. - La interfaz de configuración, a pesar de ser sencilla e intuitiva, ralentiza la programación de las comunicaciones ya que hay que definir individualmente cada elemento. Generación de informes:
6. SCADA 53 - Solo se permiten guardar los formatos en pdf y en txt de los informes. - Debido al cierre abrupto del PLC antes mencionado no ha sido posible generar informes más detallados o con otras funciones. Hubiese sido posible el seguimiento de estados anteriores de la planta si se pudiesen utilizar más varibles de comunicación con el servidor OPC. 6.2.8 Posibles mejoras Se recomiendo ahondar en las funciones que ofrece el software tales como: - Grandes medidas de seguridad de gran utilizadad para procesos reales. - Creación de alarmas - Generación de informes de manera automatizada. - Utilización de gráficos más complejos tales como gráficas. - Amplias interfaces para bases de datos. Para una planta real se requerirían numerosos dispositivos trabajando conjuntamente, por lo que el método planteado de trabajar offline en un mismo equipo no es viable a una mayor escala. Por ello, se podría ampliar este proyecto abordando las comunicaciones a través de la red, comunicando varios SCADAS y/o PLCs. Los informes generados muestran una idea del estado actualizado de la planta, sin embargo, no se guarda un histórico de estados anteriores para poder realizar un seguimiento de la misma. Es por esto por lo que sería indicado añadir otras funciones de generación de reportes como la automatización o incluso la generación en otro formato que pueda ser tratado por bases de datos.
6. SCADA 54
0. Referencias 55 REFERENCIAS [1] InduSoft, «InduSoft Web Studio,» 3 10 2011. [En línea]. Available: http://www.indusoft.com/blog/2011/10/03/finding-the-best-scada-software-solution-for-awaterwastewater-scada-project/. [Último acceso: 18 06 2018]. [2] 3.-S. S. S. GmbH, «CODESYS,» [En línea]. Available: https://www.codesys.com/the-system.html. [Último acceso: 18 06 2018]. [3] Wikipedia, «Wikipedia,» [En línea]. Available: https://es.wikipedia.org/wiki/CoDeSys. [Último acceso: 18 06 2018]. [4] CODESYS, «CODESYS,» [En línea]. Available: https://www.codesys.com/products/codesysruntime/opc-server.html. [Último acceso: 18 06 2018]. [5] Matrikon, «Matrikon,» [En línea]. Available: https://www.matrikonopc.es/opc-servidor/index.aspx. [Último acceso: 18 06 2018]. [6] Aenor, UNE-EN 61131-1:2004, Autómatas programables. Parte 1: Información general.. [7] Indusoft, «Indusoft,» 31 05 2013. [En línea]. Available: http://www.indusoft.com/blog/2013/05/31/cuales-la-diferencia-entre-scada-y-hmi/. [Último acceso: 18 06 2018]. [8] RealGames, «FactoryIO,» [En línea]. Available: https://factoryio.com/es/. [Último acceso: 18 06 2018]. [9] RealGames, «factoryio,» [En línea]. Available: https://factoryio.com/docs/. [10] 3.-S. S. S. GmbH, «CODESYS OPC Server V3: Installation and Usage,» 2016. [11] Indusoft, «Indusoft,» 4 4 2018. [En línea]. Available: http://download.indusoft.com/81.1.0/IWS+v8.1%2BSP1+Technical+Reference+(A4).pdf. [Último acceso: 2018]. [12] Indusoft, «Youtube,» [En línea]. Available: https://www.youtube.com/user/InduSoftVideo. [Último acceso: 2018].