scieee AI-readable full text Open interactive document viewer

Laboratorio virtual remoto para el control de la planta multiprocesos

Gracia Villegas, Víctor Manuel

Abstract

La planta multiprocesos, como su propio nombre indica, es un sistema en el cual se pueden llevar a cabo varios procesos a la vez, tales como el control de temperatura mediante resistencias térmicas e intercambiadores de calor, o el control de nivel. Se trata de un sistema muy atractivo desde el punto de vista académico, pues pone de manifiesto comportamientos propios de sistemas de control presentes en la industria actualmente, además de dar la posibilidad a los alumnos de poner en práctica técnicas de control multivariable, y trabajar con un sistema que presenta retardo en ciertos procesos. El proyecto que aquí se describe pretende continuar el Trabajo de Fin de Grado “Laboratorio Virtual para el Control de la Planta Multiprocesos Basado en LabView”. En él, se consiguió controlar el sistema presentado mediante el Software LabView, y se realizó la creación de una interfaz gráfica tanto para identificación como para el control del sistema. En este trabajo, el objetivo es poder controlar el sistema de una forma similar mediante el navegador web de forma remota. Para ello, se hará uso de la herramienta Easy JavaScript Simulations (EJSS), un software desarrollado específicamente para la implementación de laboratorios remotos. De forma previa a la conexión con LabView, y también al trabajo en EJSS, se ha desarrollado un modelo de parámetros distribuidos en Matlab para modelar el comportamiento del sistema. Este modelo consiste en un conjunto de ecuaciones diferenciales que son capaces de modelar el fenómeno de transporte de masa asociado a la medida de temperatura, así como su comportamiento dinámico. Por otro lado, también modela el nivel del depósito ante los cambios en la válvula que determina el caudal de agua que circula por la planta. Uno de los objetivos del trabajo es que los usuarios finales puedan trabajar de una forma totalmente local, es decir, que puedan simular y controlar el sistema solamente con EJSS, sin necesidad de LabView ni de la planta real. Por ello, una vez ajustados los parámetros del modelo en Matlab, éste se ha implementado en EJSS. Para validar su correcto funcionamiento, se han comparado los resultados obtenidos tanto en EJSS como en Matlab para comprobar que coinciden. Una de las ventajas principales de EJSS es que permite conectarse de una forma relativamente sencilla con LabView mediante un protocolo de comunicación también desarrollado con el mismo fin. El protocolo “Remote Interoperability Protocol” permite comunicar variables de lectura y escritura entre LabView y EJSS. Los programas desarrollados en el anterior proyecto en LabView serán configurados para ejercer como servidores en la conexión, mientras que EJSS será el cliente que se conecte al servidor para leer y escribir variables del mismo. En un primer momento, EJSS se ha conectado con el LabView basado en modelos, para comprobar que funciona de la forma esperada. Después, se realizará la conexión del EJSS con el LabView corriendo en la planta, completando así el objetivo de controlar la planta mediante EJSS de forma remota.

Full text

1 Equation Chapter 1 Section 1 Trabajo Fin de Máster Máster en Ingenería Electrónica, Robótica y Automática Laboratorio Virtual Remoto para el Control de la Planta Multiprocesos Dpto. Ingeniería de Sistemas y Automática Escuela Técnica Superior de Ingeniería Universidad de Sevilla Autor: Víctor Manuel Gracia Villegas Tutor: Daniel Limón Marruedo Cotutor: David Muñoz de la Peña Sequedo Sevilla, 2021 iii Trabajo Fin de Máster Máster en Ingeniería Electrónica, Robótica y Automática Laboratorio Virtual Remoto para el Control de la Planta Multiprocesos Autor: Víctor Manuel Gracia Villegas Tutor: Daniel Limón Marruedo Catedrático Cotutor: David Muñoz de la Peña Sequedo Catedrático Dpto. de Ingeniería de Sistemas y Automática Escuela Técnica Superior de Ingeniería Universidad de Sevilla Sevilla, 2021 v Trabajo Fin de Máster: Laboratorio Virtual Remoto para el Control de la Planta Multiprocesos Autor: Víctor Manuel Gracia Villegas Tutor: Daniel Limón Marruedo Cotutor: David Muñoz de la Peña Sequedo El tribunal nombrado para juzgar el Trabajo arriba indicado, compuesto por los siguientes miembros: Presidente: Vocales: Secretario: Acuerdan otorgarle la calificación de: Sevilla, 2021 El Secretario del Tribunal vii A mi familia A mi María A mis maestros ix Agradecimientos Me gustaría dar las gracias a todas aquellas personas que han estado apoyándome durante esta etapa, sin las cuales este proyecto no habría sido posible. Especialmente a Daniel Limón, por estar siempre dispuesto a prestarme su ayuda amablemente sin importar las circunstancias ni el momento, así como demostrarme que con paciencia todo es posible. También a David Muñoz, por interesarse tanto por el proyecto y por su apoyo en el desarrollo del mismo. Debo agradecer el apoyo a mi familia, en especial a María, por ser mi confidente y creer en mí. A mi madre, por ser la que siempre me ha impulsado a seguir adelante y considerarla además de mi madre, mi amiga. Tampoco puedo olvidarme de quien ya no está, espero que sigas mi camino desde donde quiera que me estés viendo, y que estés orgulloso de mí. Víctor Manuel Gracia Villegas Sevilla, 2021 3.3.2 Panel de Configuración. .................................................................................................................... 32 4 Modo Local: Ejecución sobre el modelo en EJSS .................................................................................. 33 4.1 Validación de resultados con Matlab....................................................................................................... 33 4.2 Pruebas sobre EJSS. ................................................................................................................................... 34 4.2.1 Pestaña Identificación. ...................................................................................................................... 34 4.2.2 Pestaña Control. ................................................................................................................................ 37 5 Modo Remoto sobre Modelos en LabView: Conexión de EJSS con LabView ........................................ 40 5.1 Remote Interoperability Protocol (RIP). ................................................................................................... 41 5.1.1 Servidor EJSS: Configuración de LabView. ....................................................................................... 41 5.1.2 Cliente EJSS: Elemento RIP. .............................................................................................................. 44 5.2 Adaptación de LabView basado en modelos para la conexión con EJSS. .............................................. 47 5.3 Pruebas sobre EJSS con conexión a modelos en LabView. ..................................................................... 48 6 Modo Remoto sobre Planta Real: Conexión de EJSS con LabView de la Planta Real ............................ 51 6.1 Adaptación de LabView de la planta para la conexión con EJSS. .......................................................... 51 6.2 Pruebas sobre EJSS con conexión a LabView de la planta real. ............................................................. 52 7 Guía de uso de los programas .............................................................................................................. 53 7.1 Descarga y configuración de EJSS. ........................................................................................................... 53 7.2 Operación en EJSS: Modo local y modo remoto. ..................................................................................... 56 7.2.1 Configuración del modo local. .......................................................................................................... 56 7.2.2 Configuración y conexión en modo remoto. ................................................................................... 57 7.3 Uso de la Interfaz Gráfica. ........................................................................................................................ 60 7.3.1 Panel de Visualización. ...................................................................................................................... 61 7.3.2 Panel de Configuración. .................................................................................................................... 64 7.4 Obtención y representación de los datos experimentales. ..................................................................... 65 Referencias.................................................................................................................................................. 68 xvii ÍNDICE DE TABLAS Tabla 1.1 - Relación de instrumentos instalados en la planta y nomenclatura. 4 Tabla 2.1 - Parámetros físicos del modelo y sus valores. 15-16 xix ÍNDICE DE FIGURAS Figura 1.1 – Fotografía de la planta multiprocesos 2 Figura 1.2 – Esquema de la planta multiprocesos y su instrumentación. 3 Figura 1.3 – Esquema de jerarquía de conexiones. 6 Figura 1.4 – Interfaz gráfica en LabView: Control Simulado en modo identificación. 7 Figura 1.5 – Interfaz gráfica en LabView: Control Simulado en modo control. 8 Figura 1.6 – Interfaz gráfica en LabView: Control sobre Planta Real en modo identificación. 9 Figura 1.7 – Interfaz gráfica en LabView: Control sobre Planta Real en modo control. 10 Figura 2.1 – Esquema del modelo de resistencia térmica. 13 Figura 2.2 – Característica estática de la válvula VR1. 14 Figura 2.3 – Característica instalada de la válvula VR1. 15 Figura 2.4 – Comparación entre nivel del sistema real y modelo de parámetros distribuidos. 16 Figura 2.5 – Comparación entre temperatura del sistema real y modelo de parámetros distribuidos con escalones en R, manteniendo VR1=Cte. 17 Figura 2.6 – Comparación entre temperatura del sistema real y modelo de parámetros distribuidos con R=55% Cte, y escalones en VR1. 18 Figura 3.1 – Versión y lenguaje de programación en EJSS. 19 Figura 3.2 – Página de Descripción en EJSS. 20 Figura 3.3 – Pestaña de Modelo en EJSS, subpestaña de Evolución. 21 Figura 3.4 – Página ODE en EJSS. 21 Figura 3.5 – Página HTMLView en EJSS. 22 Figura 3.6 – Esquema: Tipos de variables según su función. 23 Figura 3.7 – Página de código de evolución: Señal Chirp para la entrada VR1. 24 Figura 3.8 – Página de código de evolución: Señal Chirp para la entrada R. 24 Figura 3.9 – Página de código de evolución: PID para control de altura mediante VR1 (Parte 1). 25 Figura 3.10 – Página de código de evolución: PID para control de altura mediante VR1 (Parte 2). 25 Figura 3.11 – Página de código de evolución: PID para control de altura mediante VR1 (Parte 3). 26 Figura 3.12 – Página de código de evolución: Página de impresión de datos. 26 Figura 3.13 – Página ODE: Ecuaciones diferenciales implementadas en EJSS (Parte 1). 27 Figura 3.14 – Página ODE: Ecuaciones diferenciales implementadas en EJSS (Parte 2). 27 Figura 3.15 – Página ODE de relaciones fijas. 28 Figura 3.16 – Relación Caudal-VR1. 29 Figura 3.17 – Relación Caudal-VR1 con ajuste por mínimos cuadrados en tres tramos. 29 Figura 3.18 – A la izquierda: Panel de Visualización. A la derecha: Panel de Configuración. 30 Figura 3.19 – A la izquierda: Pestaña de Salidas. A la derecha: Pestaña de Entradas. 31 Figura 3.20 – Pestaña de Representación 2D. 31 Figura 3.21 – A la izquierda: Pestaña de Identificación. A la derecha: Pestaña de Control PID. 32 Figura 4.1 – Validación del modelo en EJSS. Evolución del nivel. 33 Figura 4.2 – Validación del modelo en EJSS. Evolución de la temperature. 34 Figura 4.3 – Prueba de señal chirp en EJSS sobre entrada VR1. 35 Figura 4.4 – Prueba de señal chirp en EJSS sobre entrada R. 35 Figura 4.5 – Prueba de botón chirp en EJSS sobre entrada VR1. 36 Figura 4.6 – Prueba de botón chirp en EJSS sobre entrada R. 36 Figura 4.7 – Prueba de controlador de nivel en EJSS y cambio de manual a automático. 37 Figura 4.8 – Prueba de controlador de temperatura en EJSS y cambio de manual a automático. 38 Figura 4.9 – Prueba de controlador de temperatura en EJSS sin anti-WindUp. 39 Figura 4.10 – Prueba de controlador de temperatura en EJSS con anti-WindUp. 39 Figura 5.1 – Esquema jerárquico de conexiones, incluyendo EJSS. 40 Figura 5.2 – Carpeta rip-labview-server-master. 41 Figura 5.3 – Directorio Private, dentro de rip-labview-server-master. 42 Figura 5.4 – Directorio Configuration, dentro de rip-labview-server-master. 42 Figura 5.5 – Programa Global_Configurations.vi. 42 Figura 5.6 – RIPWebService. 43 Figura 5.7 – Mensaje de inicio del servidor en LabView. 43 Figura 5.8 – Software Links de EJSS, en Modelo/Elementos. 44 Figura 5.9 – Elemento RIP de EJSS, en Modelo/Elementos/Software Links. 44 Figura 5.10 – Creación de Elemento RIP en EJSS. 45 Figura 5.11 – Configuración del elemento RIP: Pestaña Server Configuration. 45 Figura 5.12 – Configuración del elemento RIP: Server Configuration tras pulsar Get Experiences. 45 Figura 5.13 – Configuración del elemento RIP: Pestaña Experience. 46 Figura 5.14 – Configuración del elemento RIP: Pestaña Auto Update. 46 Figura 5.15 – Configuración del elemento RIP: Conexión de variables (1) 47 Figura 5.16 – Configuración del elemento RIP: Conexión de variables (2). 47 Figura 5.17 – Adaptación del programa en LabView basado en modelos. 48 Figura 5.18 – EJSS conectado con LabView. Prueba de señal chirp sobre VR1. 49 Figura 5.19 – EJSS conectado con LabView. Prueba señal en escalón sobre R 49 Figura 5.20 – EJSS conectado con LabView. Prueba de control de nivel. 50 Figura 5.21 – EJSS conectado con LabView. Prueba de control de temperatura 50 Figura 6.1 – Adaptación del programa en LabView de la planta. 51 Figura 7.1 – Obtención del cliente de EJSS. 53 Figura 7.2 – Contenido de la carpeta tool-master. 54 Figura 7.3 – Contenido de la carpeta distribution, en toolmaster > Ejs. 54 xxi Figura 7.4 – Configuración de la consola de EJSS. 55 Figura 7.5 – Barra de lateral: Opciones de EJSS. 55 Figura 7.6 – Opciones de EJSS. 56 Figura 7.7 – Establecimiento de la ruta del navegador. 56 Figura 7.8 – Barra de lateral: En rojo: Abrir una simulación del espacio de trabajo. En azul: Ejecutar la simulación. 57 Figura 7.9 – Selección de archivo de simulación a abrir. 57 Figura 7.10 – Programa Global_Configurations.vi. 58 Figura 7.11 – Mensaje de inicio del servidor en LabView. 58 Figura 7.12 – Configuración del elemento RIP: Pestaña Server Configuration. 59 Figura 7.13 – Configuración del elemento RIP: Server Configuration tras pulsar Get Experiences. 59 Figura 7.14 – Configuración del elemento RIP: Conexión de variables (1). 60 Figura 7.15 – Configuración del elemento RIP: Conexión de variables (2). 60 Figura 7.16 – A la izquierda: Panel de Visualización. A la derecha: Panel de Configuración. 61 Figura 7.17 – Pestaña de Salidas: Funcionalidad. 62 Figura 7.18 – Pestaña de Entradas: Funcionalidad. 63 Figura 7.19 – Pestaña de Representación 2D: Funcionalidad. 64 Figura 7.20 – Pestaña de Identificación: Funcionalidad. 64 Figura 7.21 – Pestaña de Control PID: Funcionalidad. 65 Figura 7.22 – Impresión de datos (caso local) en consola mediante EJSS. 65 Figura 7.23 – Impresión de datos (caso remoto) en consola mediante EJSS. 66 Figura 7.24 – Consola del navegador, guardar datos como archivo .log. 66 Figura 7.25 – Mensaje de elección de experimento en Matlab. 66 1 1 INTRODUCCIÓN Este proyecto ha sido realizado sobre la planta de control multiprocesos, disponible en el Laboratorio de Control, que pertenece al Departamento de Ingeniería de Sistemas y Automática de la Universidad de Sevilla. Se recomienda que, para una mejor comprensión, se lea el Trabajo de Fin de Grado “Laboratorio Virtual para el control de la Planta Multiprocesos basado en LabView”, el cual es el trabajo previo al aquí expuesto. No obstante, cierta información será redundante entre ambos documentos, ya que se pretende que este proyecto sea autocontenido. 1.1. Motivación para la realización del proyecto. La planta multiprocesos es un sistema muy interesante para poner en práctica los conocimientos adquiridos sobre el control automático, pues posee características propias de sistemas implementados en la industria actualmente. La principal motivación para la realización de este proyecto es la creación de un laboratorio remoto integrado en un programa de laboratorios remotos promovido por la CEA-IFAC. Esto permitirá la realización de prácticas remotas de plantas experimentales para el aprendizaje sobre sistemas de control. De este modo, mejorará la accesibilidad de la planta al hacer posible que los alumnos del Departamento que necesiten realizar práticas en la misma prescindan de estar físicamente en el laboratorio. 1.2. Objetivos y alcance del proyecto. Los objetivos de este trabajo son los siguientes: • Desarrollar un modelo de parámetros distribuidos de la planta en Matlab, ajustando los parámetros de forma óptima para que sea fiel al sistema real. • Implementar el modelo en el software Easy JavaScript Simulations (EJSS), y validar los resultados comparándolos con los obtenidos en Matlab. • Crear una interfaz gráfica con vista en formato HTML (navegador web) que permita el manejo de los modelos y del sistema real de forma sencilla e intuitiva, además de la visualización y obtención de datos experimentales. • Diseñar un programa con funcionamiento totalmente local en EJSS. Esto supone una gran ventaja para los alumnos al poder utilizar un programa idéntico al que manejarán en el laboratorio. Ello implica que los alumnos podrán familiarizarse con la interfaz gráfica, además de realizar los mismos ensayos que se podrán realizar sobre la planta, pero en este caso, sobre los modelos. Serán preferiblemente de forma previa a su asistencia al laboratorio, de modo que se agilizará la adaptación de los usuarios al sistema real. Además, su uso será tan sencillo como instalar y ejecutar el programa de EJSS en el ordenador. No será necesario LabView, ni la planta, ni ningún conocimiento previo. Introducción 2 • Modificar los programas en LabView creados en el Trabajo de Fin de Grado (TFG) para adaptarlos a la conexión con EJSS. • Conectar el programa en LabView basado en modelos a EJSS mediante el protocolo de comunicación Remote Interoperability Protocol (RIP), donde LabView será el servidor y EJSS el cliente. • Validar el correcto funcionamiento del programa en EJSS cuando está conectado a LabView. • Conectar el programa en LabView basado en la planta real a EJSS mediante RIP, validando que la planta se controla correctamente desde el navegador web (EJSS). 1.3. Descripción de la planta. La planta multiprocesos es un equipo de laboratorio orientado a la enseñanza de sistemas de control de procesos de variables fundamentales como nivel, caudal, temperatura o presión. Está basada en una planta desarrollada por la empresa GUNT, pero ampliada y modificada en el Departamento para mejorar su funcionalidad (véase la Figura 1.1). La instrumentación de la planta en de tipo industrial y el sistema de control está basado en un PLC Schneider M340 emulando un sistema de control realista. Además, cuenta con una pantalla HMI Magelis para su operación local, y permite su control remoto desde un PC. Figura 1.1 – Fotografía de la planta multiprocesos. 1.3.1. Esquema, variables y configuraciones. El esquema de la planta se muestra en la Figura 1.2 en la configuración que se va a operar la planta. En este 3 esquema también se muestra la instrumentación instalada en la misma. Figura 1.2 – Esquema de la planta multiprocesos y su instrumentación. Introducción 10 Figura 1.7 – Interfaz gráfica en LabView: Control sobre Planta Real en modo control. Con el programa Control sobre Planta Real se consiguió realizar ensayos de identificación y control sobre la planta real a través del cliente LabView. Como veremos más adelante, LabView será el servidor para la conexión con EJSS mediante el protocolo RIP. De este modo se pretende, en última instancia, controlar la planta real mediante EJSS. 1.6. Especificaciones del Laboratorio Virtual. En este apartado nos centraremos en los objetivos del trabajo de cara a su implementación como práticas de laboratorio para el alumnado. Las posibilidades que ofrecerá se mencionan a continuación: - Manejar la interfaz de forma sencilla desde el navegador Web, ya sea con el programa local basado en modelos en EJSS, o conectados a la planta real mediante las conexiones oportunas. - Realizar ensayos de identificación: ➢ Ensayo en escalón: El usuario podrá introducir escalones cuando lo desee en cualquiera de las dos entradas (VR1 y R). ➢ Ensayo con señal Chirp a la entrada: Se podrán especificar las características de la señal Chirp a introducir en cualquiera de las dos entradas. Estas características son: Amplitud, frecuencias mínima y máxima (en radianes por segundo), y duración (en segundos). - Realizar ensayos de control mediante controlador PID con Anti-Windup opcional: 11 ➢ De forma predeterminada, se podrá controlar de forma descentralizada la temperatura mediante R, y el nivel mediante VR1 al ser un sistema triangular. ➢ El usuario podrá elegir el modo en el que trabajarán los controladores, ya sea en modo manual o en modo automático. En modo manual, se puede introducir la entrada según se desee. En modo automático, los controladores deberán estar parametrizados previamente para poder realizar el control. ➢ Los parámetros del controlador a introducir serán: • Ganancia del controlador (Kc). • Tiempo integral (Ti). • Tiempo derivativo (Td). • Término b del filtro de referencias. • Término c del filtro de referencias. • Anti-Windup o no. ➢ Se dará la opción de guardar los datos para que puedan ser mostrados y procesados en Matlab, por ejemplo. Como se ha comentado previamente, la idea es que los usuarios dispongan de un programa local en EJSS, que no necesite de LabView ni de otro programa que no sea EJSS. Éste permitirá al usuario conocer la interfaz gráfica y un comportamiento aproximado del sistema real antes de acudir al laboratorio. Además, permite que todos los alumnos puedan trabajar con los modelos de forma independiente, teniendo que turnarse solamente para el sistema real. De este modo, se busca agilizar el proceso del uso de la planta y disminuir el tiempo de espera entre alumnos Modelado de la planta: Modelo de parámetros distribuidos 12 2 MODELADO DE LA PLANTA: MODELO DE PARÁMETROS DISTRIBUIDOS 2.1. Análisis del modelo propuesto. 2.1.1 Parte del sistema a modelar. Como se ha comentado anteriormente, el usuario no tendrá que preocuparse del lazo auxiliar de control, pues es transparente a quien usa el programa. Por ello, nos limitaremos a implementar en EJSS los siguientes modelos: • Modelo de nivel antes cambios en VR1. • Modelo de salto de temperatura ante cambios en el Duty Cycle de R1 y R2. Puesto que el usuario final trabajará con los modelos implementados en EJSS y no sobre los de primer orden de LabView, se han desarrollado unos modelos más sofisticados de parámetros distribuidos que se implementarán en Matlab, y, una vez ajustados, en EJSS. 2.1.2 Elección y justificación de ecuaciones diferenciales. Al ser un modelo de parámetros distribuidos, es sencillo modelar fenómenos físicos como el transporte de masa, el cual induce el retardo observable en la temperatura. El modelo tendrá tantas ecuaciones diferenciales como secciones tenga la resistencia térmica, más una ecuación diferencial asociada al nivel del tanque. 2.1.2.1 Ecuación diferencial del modelo de nivel. La ecuación diferencial asociada al nivel tiene la siguiente forma: 𝑑ℎ 𝑑𝑡 =1000 𝐴·(𝑞 − 𝐾 · ℎ𝛼) (2.1) , donde: - h: Nivel del tanque [cm]. - q: Caudal a la apertura dada [l/h]. - A: Área transversal del tanque de nivel [cm2]. - K y 𝛼: Coeficientes de descarga a ajustar. Se han introducido dos coeficientes, K y 𝛼, puesto que introducen más grados de libertad que permiten un mejor ajuste del modelo de nivel. 2.1.2.2 Ecuación diferencial del modelo de temperatura. La transferencia de calor en la resistencia se describe mediante ecuaciones de parámetros distribuidos. Sin embargo, será modelada como una cantidad de N volúmenes de control finitos en serie, cada uno de los cuales está descrito por la ecuación diferencial de parámetros concentrados que se detalla a continuación. 13 La ecuación diferencial asociada a cada volumen de control, y, por ende, al modelo de temperatura, tiene la siguiente forma: 𝑑𝑥(𝑗)=𝑄𝑗 𝐶𝑝· 𝑉 𝑗 − 𝑞 · 𝑥(𝑗)− 𝑥(𝑗 − 1) 𝑉 𝑗 − 𝐾𝑝·𝑥(𝑗)− 𝑇𝑎 𝐶𝑝· 𝑉 𝑗 (2.2) , donde: - x(j): Temperatura en la sección j [ºC]. - Qj: Potencia de la resistencia entre nº de volúmenes de control [KW]. - q: Caudal de agua a la apertura dada [l/h]. - Vj: Volumen en la sección j [l]. - Kp: Coeficiente de pérdidas asociadas a la temperatura ambiente. - Cp: Calor específico del agua (4,19J/(g·ºC)). El índice “j” representa a qué sección se hace referencia, de las N secciones totales. Se deben integrar las N ecuaciones, sin embargo, sólo ciertas secciones poseen potencia eléctrica. El fundamento sobre el que se basa el modelo es la transferencia de calor desde una sección a la siguiente. Cada sección (excepto la primera) tiene la temperatura de la sección anterior como entrada, por lo que, al estar sometida a cierta potencia calorífica, sufre un aumento de temperatura sobre la temperatura que proviene de la sección anterior. Sin embargo, también sufren pérdidas por la temperatura ambiente que es, en general, menor. Así, el modelo en conjunto está formado por N sistemas de primer orden en serie, donde la entrada de la sección j es la temperatura de la sección j-1, y la salida de la sección j es la entrada de la sección j+1. Esto, además, permite modelar el retardo. Si analizamos los sumandos de la ecuación diferencial, el primer sumando del segundo término de la ecuación diferencial hace referencia a la temperatura aportada por la resistencia térmica. El segundo sumando, hace referencia a la temperatura que proviene de la sección anterior, es decir, en j-1. El tercer sumando está asociado a las pérdidas de temperatura debidas a la temperatura ambiente. Para comprender mejor el fenómeno que induce el retardo, se ilustra un esquema a continuación: Figura 2.1 – Esquema del modelo de resistencia térmica. En la figura 2.1, LR es la longitud total de la resistencia, y LRe es la longitud donde se concentran secciones Agua procedente del depósito, a temperatura TT1 Agua a temperatura TT2 Ta: Temperatura ambiente Sensor Modelado de la planta: Modelo de parámetros distribuidos 14 con potencia eléctrica de la resistencia. Evidentemente, LR-LRe está compuesto por secciones sin potencia eléctrica. Gracias a esta configuración, se consigue modelar el retardo inducido en la temperatura. 2.1.3 Modelado de la válvula VR1. Como se puede observar en las ecuaciones (2.1) y (2.2), y en la figura 2.1, nos resulta de interés conocer el caudal asociado a la apertura de la válvula dada. Éste fue representado mediante la variable “q”. Para obtener la relación entre q y VR1, se analizó la característica estática de la válvula, midiendo el caudal para distintos porcentajes de apertura de VR1. Dicha característica estática se muestra en la figura 2.2. Figura 2.2 – Característica estática de la válvula VR1. Analizando los valores del caudal para cada apertura, se han escogido los valores más relevantes. Si los representamos en una gráfica podemos observar cuán lineal es esta relación (figura 2.3). 15 Figura 2.3 – Característica instalada de la válvula VR1. A partir de la figura 2.3 se deduce que existe una relación caudal-apertura no demasiado lineal. Para obtener el caudal que representa la variable q se ha creado una función que realiza la interpolación lineal entre los puntos para obtener los valores del caudal valores de apertura intermedios. Además, ya que el caudal q se requiere en litros/segundo para las ecuaciones, los valores obenidos de la interpolación se dividen entre 3600. Por otro lado, para simular el modelo, se han programado en Matlab varios scripts que contienen los parámetros y ecuaciones necesarios para la integración. El comportamiento dinámico del modelo depende de los parámetros seleccionados, por lo que se deben ajustar para que el comportamiento del modelo sea lo más parecido posible al de la planta real. Por otro lado, se debe tener en cuenta que es sumamente importante que el número de secciones en el que se divide la resistencia sea lo más pequeño posible, pues de ello depende el número de ecuaciones diferenciales a implementar. Sin embargo, esto no debe sacrificar que el modelo se parezca a la planta, por lo que habrá que encontrar un compromiso. Los parámetros seleccionados se muestran en la siguiente tabla: Parámetro Valor Sección de la resistencia térmica 136 cm2 Potencia de la resistencia 5.3 KW Longitud total del volumen de la resistencia 195 cm Longitud total de la resistencia térmica 95 cm Coeficiente global de pérdidas en la resistencia 0.002 Caudal máximo aportado por la bomba 940 l/h Altura máxima del tanque 44 cm Modelado de la planta: Modelo de parámetros distribuidos 16 Temperatura del depósito 19.5 ºC Temperatura ambiente 22 ºC Número de secciones de la resistencia 10 Coeficiente lineal de descarga de la válvula (K) 0.0211 Coeficiente exponencial de descarga de la válvula (𝛼) 0.1682 Tabla 2.1 – Parámetros físicos del modelo y sus valores. 2.1.1. Análisis del comportamiento dinámico del modelo. Con los parámetros de la tabla 2.1, se analizará la respuesta del modelo para los casos que se indican a continuación: - Nivel ante cambios en VR1. - Temperatura ante cambios en R con VR1 constante. - Temperatura ante cambios en VR1 con R constante. 2.1.1.1. Modelo de nivel. Comenzado por el primero de los tres casos, tenemos los siguientes resultados: Figura 2.4 – Comparación entre nivel del sistema real y modelo de parámetros distribuidos. 17 La figura 2.4 muestra que el modelo se comporta de forma muy similar al sistema real en términos de nivel. Recordamos con este experimento que el nivel presenta la respuesta típica de un sistema de primer orden. Se consideran correctamente ajustadas tanto la ganancia estática como la constante de tiempo. 2.1.1.2. Modelo de temperatura ante cambios en R, con VR1=Cte. Para el segundo caso, en el que se mantiene VR1 al 30% constante y se modifica R, se obtienen los resultados que muestran la siguiente figura: Figura 2.5 – Comparación entre temperatura del sistema real y modelo de parámetros distribuidos con escalones en R, manteniendo VR1=Cte. La figura 2.5 muestra que la respuesta de la temperatura ante cambios en R con VR1 constante es típica de un sistema de primer orden con retardo. Ajustando los parámetros del modelo se ha conseguido un comportamiento del modelo similar al sistema real en términos de retardo, constante de tiempo y ganancia estática, tanto en escalones positivos como negativos. Modelado de la planta: Modelo de parámetros distribuidos 18 2.1.1.3. Modelo de temperatura ante cambios en VR1, con R=Cte. Para el tercer y último caso, en el que R es constante al 55% y se aplican escalones a la apertura de VR1, se analiza la respuesta de la temperatura: Figura 2.6 – Comparación entre temperatura del sistema real y modelo de parámetros distribuidos con R=55% Cte, y escalones en VR1. En la figura 2.6 se aprecia que la respuesta del sistema real ante cambios en VR1 con R constante es también propia de un modelo de primer orden con retardo. En este caso, la constante de tiempo y la ganancia son aceptables, sin embargo, el ajuste del retardo no resulta tan satisfactorio. Esto es debido a que, si se intenta mejorar el ajuste del retardo en esta parte del sistema, el retardo de la temperatura ante cambios en R se ve afectado. Por este motivo, no ha sido posible ajustar perfectamente todo el modelo, pero, en cualquier caso, se ha considerado prioritario el ajuste de los comportamientos mostrados en las figuras 2.4 y 2.5. 19 3 IMPLEMENTACIÓN EN EASY JAVASCRIPT SIMULATIONS (EJSS) 3.1 Introducción a EJSS. Easy JavaScript Simulations es un software de código abierto basado en Java o JavaScript (dependiendo del lenguaje elegido) creado con el propósito de proporcionar al usuario una forma sencilla de crear simulaciones interactivas sin necesidad de tener un conocimiento especializado en programación. Permite implementar modelos de forma muy intuitiva, y simularlos a partir de la integración ecuaciones diferenciales en las que estos se basan. Otra de sus principales características es que su ejecución requiere de una vista en formato HTML que permite al usuario trabajar con el navegador web. De este modo, resulta adecuado para la implementación de proyectos de control con conexión remota como es el caso del Laboratorio Virtual, en el que se pretende trabajar con la planta de forma remota en Moodle. Para este proyecto, la versión de EJSS elegida ha sido la 5.3, ya que es una versión estable en la que los desarrolladores han verificado su correcto funcionamiento al trabajar con el protocolo de comunicación RIP. Por otro lado, el lenguaje de programación en el que se basa es JavaScript, también por motivos de compatibilidad. Figura 3.1 – Versión y lenguaje de programación en EJSS. 3.1.1 Pestaña Descripción. En la pagina de descripción el usuario puede crear una portada y una descripción del proyecto creado. Tal y Implementación en Easy JavaScript Simulations (EJSS) 26 Figura 3.11 – Página de código de evolución: PID para control de altura mediante VR1 (Parte 3). Se omitirá el código del controlador de temperatura mediante R, ya que es análogo al visto en las figuras 3.9 a 3.11, con la única diferencia de que la salida 2 (TT2-TT1) no tiene límites de saturación al no tener una limitación física como sí lo es la altura del tanque de nivel. Por último, se muestra la página de impresión de datos, que se encargará de imprimir los datos de los experimentos por la consola del navegador web. Ésta se muestra en la figura 3.11. Figura 3.12 – Página de código de evolución: Página de impresión de datos. El código propuesto en la figura 3.12 implica la necesidad de comentar una de las dos líneas de impresión en función de si nos encontramos en un experimento de identificación (no es necesario imprimir la referencia) o de control (referencias necesarias). 3.2.2.2 Páginas ODE. Como se ha comentado, sólo se ha creado una página de ecuaciones diferenciales. En ella se han implementado tanto las ecuaciones de la resistencia, como la del modelo de nivel. Esto se puede apreciar en las figuras 3.13 y 3.14. 27 Figura 3.13 – Página ODE: Ecuaciones diferenciales implementadas en EJSS (Parte 1). Figura 3.14 – Página ODE: Ecuaciones diferenciales implementadas en EJSS (Parte 2). Se puede comprobar a partir de las dos figuras anteriores, que existen 10 ecuaciones diferenciales asociadas a la temperatura, es decir, tantas como número de secciones elegimos en Matlab. Por otro lado, también se puede apreciar en la figura 3.14 la ecuación diferencial que modela el nivel. Se debe destacar que el método de integración utilizado ha sido Runge-Kutta de orden 4. 3.2.3 Subpestaña de Relaciones fijas. En este caso, se han creado dos páginas de relaciones fijas. La primera de ellas (figura 3.15), está dedicada a algunas relaciones fijas necesarias para el modelo, tales como parámetros a partir de otros parámetros. También se ha creado una ecuación para calcular el color del líquido según la temperatura que se utiliza para la animación del tanque de nivel. Ésta hace que el color pase de azul oscuro a rojo de forma gradual según la temperatura TT2-TT1. Implementación en Easy JavaScript Simulations (EJSS) 28 Figura 3.15 – Página ODE de relaciones fijas. 3.2.3.1 Relación Caudal-VR1. Ya se comentó en el apartado 2.1.3 cómo se lleva cabo la obtención del caudal q en el modelo implementado en Matlab, ya que ésta presentaba cierta no linealidad. En la figura 3.16 se puede apreciar qué tan no lineal es ayudándonos de la inserción de una recta en la gráfica para comprobarlo. Sin embargo, por simplicidad se ha decido en EJSS elegir una función obtenida del ajuste por mínimos cuadrados en tres tramos distintos, por lo que la relación implementada sigue tres tramos lineales, como se muestra en la figura 3.17. El ajuste que siguen es el siguiente: Tramo 1: 𝑞 = 12.5643 ·𝑉𝑅1 + 0.9286 Tramo 2: 𝑞 = 9.4960 ·𝑉𝑅1 + 95.8 Tramo 3: 𝑞 = 6.2667 ·𝑉𝑅1 + 318 Hay que destacar que lo que se obtiene de estas ecuaciones es el caudal en litros/hora. Si se quiere pasar a litros/segundo (el modelo requiere esta unidad) se debe dividir entre 3600, como se puede observar en la figura 3.15. 29 Figura 3.16 – Relación Caudal-VR1. Figura 3.17 – Relación Caudal-VR1 con ajuste por mínimos cuadrados en tres tramos. Implementación en Easy JavaScript Simulations (EJSS) 30 En la figura 3.17 se puede apreciar que los resultados obtenidos por la aproximación son aceptables. Por otro lado, se ha creado otra página de evolución para la conexión de las variables, como se mostraba en la figura 3.6. 3.3 Vista HTML. Este apartado está dedicado a la creación de la vista HTML del Laboratorio Virtual. Ésta se ha dividido en dos paneles: Panel de Visualización y Panel de Configuración. Para una mejor gestión del espacio, ambos paneles hacen uso de pestañas, de forma que permiten alternar entre vistas de forma sencilla. Todo lo comentado se puede apreciar en la figura 3.18. Figura 3.18 – A la izquierda: Panel de Visualización. A la derecha: Panel de Configuración. 3.3.1 Panel de Visualización. Este panel tiene como objetivo representar entradas y salidas del sistema. Está compuesto por tres pestañas: - Salidas: Muestra las salidas del sistema (nivel LT y temperatura TT2-TT1). 31 - Entradas: Muestra las entradas del sistema (apertura de la válvula VR1 y duty cycle de las resistencias R). - Representación 2D: Muestra un esquema sencillo del sistema, con altura variable en el depósito, y tuberías y contenido del depósito que cambian de color con la temperatura. Figura 3.19 – A la izquierda: Pestaña de Salidas. A la derecha: Pestaña de Entradas. Figura 3.20 – Pestaña de Representación 2D. Implementación en Easy JavaScript Simulations (EJSS) 32 3.3.2 Panel de Configuración. Este panel permite al usuario visualizar los valores numéricos de entradas, salidas y tiempo. Además, da la posibilidad de elegir el tipo de entradas que quiere introducir al modelo, parametrizar las señales y controladores, entre otras cosas. Las pestañas que componen este panel son dos: - Identificación: Permite parametrizar las entradas y elegir entre entrada en escalón y Chirp. - Control PID: Da la posibilidad de alternar entre los modos manual y automático de los controladores, parametrizarlos, y elegir si se desea que los controladores tengan anti-Windup o no. Figura 3.21 – A la izquierda: Pestaña de Identificación. A la derecha: Pestaña de Control PID. 33 4 MODO LOCAL: EJECUCIÓN SOBRE EL MODELO EN EJSS Se ha llamado “Modo Local” a la ejecución del programa exclusivamente sobre EJSS. Es decir, este programa será completamente funcional sin necesidad de programas adicionales que no sean Java Environment, y Matlab para la representación de gráficas. 4.1 Validación de resultados con Matlab. Para validar los resultados, se realizará el mismo experimento en ambos programas para corroborar que la respuesta del modelo es la misma en ambos casos. Se ha elegido dar un escalón a cada entrada en momentos distintos para validar el modelo completo. Si la implementación en EJSS es correcta, se debe obtener un resultado idéntico al de Matlab. Figura 4.1 – Validación del modelo en EJSS. Evolución del nivel. Modo Local: Ejecución sobre el modelo en EJSS 34 Figura 4.2 – Validación del modelo en EJSS. Evolución de la temperature. Se puede comprobar a partir de las figuras 4.1 y 4.2 que los modelos se comportan de la misma forma en ambos softwares. Se puede apreciar una leve diferencia entre ambos debido a ciertas aproximaciones en algunos decimales, y a que en Matlab solo se puede insertar escalones en valores enteros del tiempo por cuestiones de la implementación, a diferencia de EJSS. 4.2 Pruebas sobre EJSS. Una vez comprobada la correcta implementación del modelo en EJSS, comprobaremos si el resto de la implementación (señales Chirp, botones, controladores PID y sus opciones) funciona adecuadamente. 4.2.1 Pestaña Identificación. En este apartado verificaremos la funcionalidad de la pestaña de identificación del panel Configuración. Por simplicidad, se dará por validado el funcionamiento de las entradas en forma de escalón, ya que en las figuras 4.1 y 4.2 éstas han sido utilizadas. Solo falta, por tanto, comprobar la funcionalidad de las señales Chirp y de los botones de activación de las mismas. En la siguiente figura se puede comprobar un experimento donde ambas entradas, en momentos distintos, tienen una señal chirp de 200 segundos de duración, con frecuencias entre 0.001 y 0.1 rad/s. 35 Figura 4.3 – Prueba de señal chirp en EJSS sobre entrada VR1. Figura 4.4 – Prueba de señal chirp en EJSS sobre entrada R. Modo Remoto sobre Modelos en LabView: Conexión de EJSS con LabView 42 Figura 5.3 – Directorio Private, dentro de rip-labview-server-master. 5.1.1.2 Directorio Configuration. Dentro de este directorio se puede encontrar un archivo en LabView llamado “Global_Configurations”. Figura 5.4 – Directorio Configuration, dentro de rip-labview-server-master. Si lo abrimos, se obsevamos que su función es configurar cada uno de los .vi incluidos en el directorio Private. Para este proyecto, el programa ha sido modificado tal y como se muestra en la figura 5.5. Figura 5.5 – Programa Global_Configurations.vi. 43 Por último, es necesario ejecutar el servidor. Para ello, abrimos la aplicación RIPWebService. Figura 5.6 – RIPWebService. En la figura 5.6 se aprecian todas las carpetas que se veían en la figura 5.2, incluidos los directorios Private y Configuration. Para poner en marcha el servidor, basta con hacer click derecho sobre RIP, y hacer click sobre Start. Una vez hecho esto, nos debe aparecer un mensaje como el de la figura 5.7. Éste nos indica que el servidor se está ejecuntado sobre el puerto 8001, por lo que al conectarnos desde el cliente debemos tenerlo en cuenta. Figura 5.7 – Mensaje de inicio del servidor en LabView. Una vez realizados estos pasos, el servidor está en funcionamiento y disponible para su conexión con clientes. Modo Remoto sobre Modelos en LabView: Conexión de EJSS con LabView 44 5.1.2 Cliente EJSS: Elemento RIP. Para la conexión del cliente es necesario crear en EJSS lo que se conoce como “Elemento RIP”. Para crearlo, nos debemos dirigirnos a la pestaña Modelo, y a la subpestaña Elementos. Dentro de ésta ser debe hacer doble click sobre “Software Links”. Esto se muestra en la figura 5.8. Figura 5.8 – Software Links de EJSS, en Modelo/Elementos. Como se puede apreciar en la figura 5.9, dentro de Software Links se encuentra el Elemento RIP. Debemos arrastrarlo hacia la lista de elementos que se observa a la izquierda de la figura. Figura 5.9 – Elemento RIP de EJSS, en Modelo/Elementos/Software Links. Lo primero que debemos hacer es darle un nombre, como se muestra en la figura 5.10. Es recomendable usar el nombre “rip”, por simplicidad. 45 Figura 5.10 – Creación de Elemento RIP en EJSS. Una vez creado, es necesario configurarlo para establecer la conexión. Hay que tener en cuenta que, para establecerla, el servidor debe estar corriendo previamente. En nuestro caso, el servidor siempre se halla en el puerto 8001. La configuración se abre haciendo doble click sobre el elemento ya creado. Ésta se muestra en la figura 5.11. Figura 5.11 – Configuración del elemento RIP: Pestaña Server Configuration. Tras colocar la url del servidor indicando el puerto 8001, se debe pulsar el botón “Get Experiences”. Si el servidor ha sido iniciado y configurado correctamente, debe aperecer algo similar a lo que se puede apreciar en la figura 5.12. Figura 5.12 – Configuración del elemento RIP: Server Configuration tras pulsar Get Experiences. Modo Remoto sobre Modelos en LabView: Conexión de EJSS con LabView 46 Figura 5.13 – Configuración del elemento RIP: Pestaña Experience. Como se observa en la figura 5.13, EJSS ha detectado la experiencia “TabControl” (y también “Global2”). Además, se puede ver la descripción que se introdujo en la configuración (figura 5.5). Figura 5.14 – Configuración del elemento RIP: Pestaña Auto Update. En la figura 5.14 se observan todas las variables del .vi seleccionado en la experiencia. A la izquierda se aprecian las variables de escritura, mientras que a la derecha se observan las de lectura. Haciendo click derecho sobre cada una de las variables, se muestra la opción de conectarlas con variables de EJSS. En las figuras 5.15 y 5.16 se muestran todas las conexiones realizadas. 47 Figura 5.15 – Configuración del elemento RIP: Conexión de variables (1). Figura 5.16 – Configuración del elemento RIP: Conexión de variables (2). 5.2 Adaptación de LabView basado en modelos para la conexión con EJSS. Como se puede comprobar en el apartado 1.5 de este documento, el programa en LabView que implementaba modelos del sistema presenta una iterfaz gráfica que puede ser utilizada por el usuario. Sin embargo, en este capítulo pretendemos utilizar y controlar los modelos allí implementados desde el navegador web a partir de EJSS. Debido a esto, no son necesarias las pantallas de explotación en LabView, ni una interfaz gráfica utilizable por el usuario puesto que LabView será transparente al usuario final. Debemos destacar que esta implementación (control de modelos de LabView) ha sido realizada con la mera función de comprobar la conexión de EJSS con Labview. Por otro lado, también facilita la conexión con la planta real al darnos una idea de cómo adaptar el LabView basado en la planta real. En conclusión, el usuario dispondrá de un archivo en EJSS autónomo y funcional basado en los modelos de parámetros distribuidos, y otro archivo en EJSS que se conectará con el LabView de la planta real, pero no dispondrá del archivo en EJSS para conectarse con el LabView basado en modelos, ya que se trata de una prueba de desarrollo. Modo Remoto sobre Modelos en LabView: Conexión de EJSS con LabView 48 En la figura 5.17 se muestra el programa adapatado. Como vemos, el nombre de las variables ha sido modificado para que sea el mismo que el de las variables en EJSS. Se ha realizado de esta forma para evitar confusiones. Por otro lado, también se puede apreciar que se han eliminado las pestañas, puesto que impiden que sean reconocidas por el cliente en EJSS. Además, se han eliminado las gráficas para evitar una carga computacional innecesaria. Otra de las diferencias es que se ha adaptado el anti-WindUp para que sea opcional, ya que en el proyecto anterior no lo era. Tambíen se ha acondicionado el programa para que existan dos señales Chirp independientes, pues antes solo había una señal que se compartía con ambas entradas. Figura 5.17 – Adaptación del programa en LabView basado en modelos. 5.3 Pruebas sobre EJSS con conexión a modelos en LabView. En este apartado se realizarán pruebas sobre EJSS conectado a LabView. En las siguientes figuras se verifica el correcto funcionamiento de la conexión. A partir de las figuras 5.18-5.21 se puede verificar que la funcionalidad de las señales en escalón, Chirp, y de ambos controladores es correcta. Además, se ha comprobado que el paso de manual a automático en ambos controladores es de la forma esperada. Por otro lado, también se ha comprobado la funcionalidad de la opción de anti-Widup, aunque debido a la duración de las pruebas las cuales son en tiempo real, éstas han sido omitidas. Por último, es conveniente remarcar que todos los datos que se muestran en las figuras mencionadas han sido generados en LabView, aunque estos se recogen desde EJSS el cual cumple la mera función de interfaz HMI (SCADA). 49 Figura 5.18 – EJSS conectado con LabView. Prueba de señal chirp sobre VR1. Figura 5.19 – EJSS conectado con LabView. Prueba señal en escalón sobre R. Modo Remoto sobre Modelos en LabView: Conexión de EJSS con LabView 50 Figura 5.20 – EJSS conectado con LabView. Prueba de control de nivel. Figura 5.21 – EJSS conectado con LabView. Prueba de control de temperatura. 51 6 MODO REMOTO SOBRE PLANTA REAL: CONEXIÓN DE EJSS CON LABVIEW DE LA PLANTA REAL 6.1 Adaptación de LabView de la planta para la conexión con EJSS. Al igual que en el apartado 5.2, el programa en LabView ha sido modificado para ser conectado con EJSS. A diferencia de lo que en dicho apartado se comentaba, éste programa sí que será dispuesto al usuario para que pueda conectar EJSS con la planta del laboratorio. En primer lugar, se han eliminado las gráficas de LabView y las pestañas para que puedan detectarse todas las variables en EJSS. También se ha incluido el anti-Windup opcional y se han creado dos señales Chirp independientes para las entradas. La diferencia con el programa del apartado 5.2 es que las entradas y salidas tienen conexión con la planta real, y la existencia de la secuencia de puesta en marcha (indicador “Ready” en la figura 6.1) que se creó para el programa conectado a la planta en el proyecto anterior. Figura 6.1 – Adaptación del programa en LabView de la planta. Guía de uso de los programas 58 Figura 7.10 – Programa Global_Configurations.vi. Figura 7.11 – Mensaje de inicio del servidor en LabView. Por otro lado, se debe abrir el archivo Conectado.ejss para dirigirnos a Modelo > Elementos. En la lista de elementos, debemos hacer doble click sobre el elemento rip creado, el cual se llamará “rip”. En la url del servidor (figura 7.12) escribimos lo siguiente: http://localhost:8001/RIP. Después, pulsamos en “Get Experiences”, y nos debe aparecer una nueva fila (figura 7.13). Si no ocurre nada, 59 es probablemente porque hay algo que no está correctamente configurado, o el servidor no está iniciado. Si todo está correcto, nos dirigimos a la pestaña “Experiences” y nos aseguramos de tener marcada la opción Planta_Real_Tab_Control. Figura 7.12 – Configuración del elemento RIP: Pestaña Server Configuration. Por último, en la pestaña “Auto Update” deben estar asociadas las variables de lectura y escritura entre EJSS y LabView (figura 7.14 y 7.15) (es conveniente que las variables de ambos programas se llamen igual) que nos interesen para que el funcionamiento de la planta sea correcto. Con todo lo comentado, bastará con iniciar la simulación para controlar la planta desde EJSS. Nota: En caso de no estar ejecutando en el mismo ordenador el EJSS y el LabView, es necesario modificar la dirección url en el elemento RIP. Se debe colocar la dirección IP del ordenador que ejecuta el LabView de la planta en lugar de localhost (http://direcciónIP:8001/RIP). Figura 7.13 – Configuración del elemento RIP: Server Configuration tras pulsar Get Experiences. Guía de uso de los programas 60 Figura 7.14 – Configuración del elemento RIP: Conexión de variables (1). Figura 7.15 – Configuración del elemento RIP: Conexión de variables (2). 7.3 Uso de la Interfaz Gráfica. Como se comentó, la interfaz gráfica está organizada en dos paneles: Visualización y Configuración. Cada panel, a su vez, se organiza en pestañas. Esto se puede apreciar en la figura 7.16. 61 Figura 7.16 – A la izquierda: Panel de Visualización. A la derecha: Panel de Configuración. 7.3.1 Panel de Visualización. Comenzando por el panel de visualización, se puede observar que hay tres pestañas distintas: - Salidas. - Entradas. - Representación 2D. 7.3.1.1 Pestaña de Salidas. En esta pestaña vemos dos gráficas, una sobre la otra. En la figura 7.17 se indica la funcionalidad. Guía de uso de los programas 62 Figura 7.17 – Pestaña de Salidas: Funcionalidad. Nota: En las gráficas de salida también se muestra el valor de la referencia. Ignorarla en modo manual o identificación. 7.3.1.2 Pestaña de Entradas. En la pestaña de entradas también se aprecian dos gráficas, pero con los valores de las entradas. Límite superior eje vertical de gráfica de nivel Límite inferior eje vertical gráfica de nivel Límite superior eje vertical de gráfica de temperatura Spam temporal de ambas gráficas, en segundos Límite inferior eje vertical gráfica de temperatura Límite superior del eje horizontal es el tiempo actual 63 Figura 7.18 – Pestaña de Entradas: Funcionalidad. 7.3.1.3 Pestaña de Representación 2D. La pestaña con el esquema 2D tiene una función meramente representativa. Muestra, mediante una animación, el nivel del tanque y la temperatura del agua que viaja por la tubería. Límite superior eje vertical de gráfica de VR1 Límite inferior eje vertical gráfica de VR1 Límite superior eje vertical de gráfica de R Límite inferior eje vertical gráfica de R Spam temporal de ambas gráficas, en segundos (comparatido entre pestañas de entrada y salida) Guía de uso de los programas 64 Figura 7.19 – Pestaña de Representación 2D: Funcionalidad. 7.3.2 Panel de Configuración. En el panel de configuración podremos parametrizar tanto las señales de entrada, como los controladores PID, así como elegir el modo de funcionamiento del sistema. Está formado por las pestañas de Identificación y Control PID. 7.3.2.1 Pestaña de Identificación. Figura 7.20 – Pestaña de Identificación: Funcionalidad. Nivel cambia según el valor de la salida de nivel Posición de la aguja cambia con la apertura de VR1 Regla para medida del nivel Color de la tubería cambia entre azul y rojo según el valor de TT2-TT1 Valores actuales de entradas, salidas y tiempo Permite elegir entre una entrada en VR1 de tipo Chirp, parametrizada por los campos inferiores, o un valor fijo dado por el campo Step Introduce valores constantes en VR1 Duración de la señal Chirp de VR1 en segundos Frecuencias máxima y mínima de la señal Chirp de VR1, en radianes/segundo Amplitud de la señal Chirp en VR1 Mismos campos, pero para la entrada R 65 7.3.2.2 Pestaña de Control PID. Figura 7.21 – Pestaña de Control PID: Funcionalidad. 7.4 Obtención y representación de los datos experimentales. Como se puede observar en la figura 7.16, en la parte superior de la interfaz gráfica, fuera de los paneles de Identificación y Control PID, hay una opción que puede marcarse o no, llamada “Guardando datos”. Esta opción se encarga de imprimir los datos más relevantes de EJSS en la consola (del navegador si ejecutamos EJSS en el navegador, o de EJSS en caso negativo). Para abrir la consola del navegador debemos pulsar la tecla F12, y nos vamos a la zona donde ésta imprime los mensajes. Dependiendo de si se quiere imprimir las referencias (caso de experimento de control PID) o si no (caso de experimento de identificación), se debe elegir una línea en la página de impresión de la figura 7.22 y comentar la otra. Figura 7.22 – Impresión de datos (caso local) en consola mediante EJSS. Para introducir valores constantes de forma manual en VR1 Permite elegir entre los modos manual y automático para el controlador de nivel Referencia para el controlador de nivel Términos del filtro de referencia Términos proporcional, integral y derivativo del controlador PID Mismos campos, pero para el controlador de temperatura y la entrada R Permite activar o desactivar el anti- Windup del controlador de nivel Guía de uso de los programas 66 La página de impresión varía ligeramente para el caso remoto, ya que se introduce una variable de tiempo anterior para que no se impriman los valores varias veces en el mismo instante de tiempo. Esto se muestra en la figura 7.23. Figura 7.23 – Impresión de datos (caso remoto) en consola mediante EJSS. Los datos se imprimen en forma de columna. Si se hace click derecho sobre los datos en la consola, aparece la opción “Guardar como” (figura 7.24). Esto nos generará un archivo de texto .log que se puede cargar en Matlab. Figura 7.24 – Consola del navegador, guardar datos como archivo .log. Podemos ponerle cualquier nombre. En nuestro caso se le ha llamado data, pero se quiere poner otro nombre, se debe modificar el archivo .m para que cargue el archivo con el nombre elegido. Tanto el archivo de datos .log como el .m para la carga y representación de datos deben estar en el mismo directorio. Si ejecutamos el archivo “read_data.m” nos pedirá que marquemos 1 si el ensayo es de identificación, y 2 si el ensayo es de control. Esto se muestra en la figura 7.25. Figura 7.25 – Mensaje de elección de experimento en Matlab. Una vez se seleccione un número, el programa procesará los datos y los representará en dos gráficas, una para 67 cada par entrada-salida.