CONTROLWEB: UNA HERRAMIENTA PARA EL ANÁLISIS Y SIMULACIÓN DE SISTEMAS DE CONTROL EN INTERNET

Texto completo

(1)

CONTROLWEB: UNA HERRAMIENTA PARA EL ANÁLISIS Y

SIMULACIÓN DE SISTEMAS DE CONTROL EN INTERNET

J. Albino Méndez Pérez, César Lorenzo Rodríguez, Leopoldo Acosta Sánchez, Santiago Torres Álvarez, Alberto F. Hamilton Castro, Héctor Reboso Morales

Grupo de Computadoras y Control Departamento de Física, Electrónica y Sistemas

Universidad de La Laguna jamendez@ull.es

Resumen

En este trabajo se presenta una herramienta que permite analizar y simular sistemas lineales de control con una variable de entrada y una de salida (SISO). La idea es disponer de una herramienta a través de internet que este disponible libremente para los usuarios. Esta aplicación está pensada para ser utilizada principalmente para la docencia en asignaturas relacionadas con la automática. El alumno podrá acceder cuando lo desee a este sistema para consolidar los conceptos estudiados en las clases teóricas y antes de pasar a la puesta en práctica en el laboratorio con una planta real. La aplicación ha sido desarrollada en Java y ha sido diseñada con la idea de crear una interfaz versátil y de fácil manejo.

Palabras Clave: Ingeniería de control, Teoría de sistemas, Docencia, Java, Diseño Web.

1

INTRODUCCIÓN

La ingeniería de control es sin duda una disciplina en la que los alumnos encuentran problemas para asimilar los conceptos teóricos explicados en clase. En parte, esta situación está motivada por la necesidad de introducir un número elevado de conceptos (muchos de ellos matemáticos) antes de poder abordar el diseño de sistemas de control sencillos. Esto hace que en ocasiones la motivación del alumno descienda. En esta situación se hace muy importante el disponer de una herramienta de fácil manejo que permita al estudiante ejercitar los conceptos teóricos vistos en clase.

Una de las herramientas comerciales de mayor difusión en el campo de la ingeniería de control es MATLAB®. Además de esta herramienta podemos encontrar otros paquetes como VISSIM,

MATHCAD, MatrixX, etc. En muchos centros, sin embargo, se recurre a paquetes de cálculo numérico y de simulación de libre uso como son OCTAVE (junto con la Octave Control System Toolbox), o SCILAB. Todos estos paquetes son sin duda buenas herramientas de cálculo numérico y, en particular, disponen de funciones para resolver problemas de control. Debido a ello es necesario que el estudiante invierta un tiempo determinado para conocer el funcionamiento del paquete y, posteriormente, para conocer las funciones de utilidad en la asignatura.

El objetivo de este proyecto es crear una aplicación visual para el análisis y simulación de sistemas de control, centrada en los sistemas lineales de entrada y salida únicas (SISO). Una de las motivaciones de la herramienta propuesta es la de dar al estudiante una herramienta libre, en la que aparezcan implementadas la mayoría de las funciones relacionadas con la materia vista en clase, y con una curva de aprendizaje mínima. Para ello se ha diseñado una interfaz gráfica en la que el alumno no debe aprender ninguna sentencia o comando. Tradicionalmente, las herramientas de simulación se han distribuido como paquetes independientes que deben estar instaladas en la máquina en la que se trabaja. La necesidad de adaptar el campo de la simulación a las nuevas tecnologías, hace que surja la necesidad de herramientas de simulación basadas en Web. Sin duda, esta alternativa ofrece una serie de ventajas al estudiante:

- La herramienta está disponible desde cualquier navegador.

- Se permite una actualización de la herramienta de forma más dinámica. - Se puede establecer un mecanismo de

(2)

Para lograr esto, la aplicación se ha implementado mediante páginas Web y applets Java, que la hacen accesible a través de Internet. El resultado es una herramienta gráfica para que los usuarios puedan realizar las operaciones de análisis y control, accesible desde cualquier parte del mundo donde haya acceso a Internet, y sin la necesidad de recordar ningún comando ni sentencia para realizar las operaciones de análisis o control que incorpora. Existen otras herramientas en Internet similares a la que se ha desarrollado para este proyecto, sin embargo no suelen implementar un rango tan amplio y variado de operaciones. La mayoría son herramientas muy flexibles sobre las operaciones que implementan, aunque estas operaciones son reducidas. Es posible encontrar otras herramientas para el diseño de controladores en Internet como por ejemplo LSLNR [2], ICtools [3] o CSSDEMO [1], [9], pero todas ellas son herramientas desarrolladas sobre Matlab.

La estructura de este artículo comienza presentando las ideas básicas para el empleo de esta herramienta en un curso de control. A continuación se hace una descripción más detallada de la aplicación. En la siguiente sección se presentan algunos detalles sobre la implementación de la aplicación. El artículo concluye con algunas conclusiones sobre el proyecto presentado y comentarios sobre posible líneas de continuación.

2

DOCENCIA DE INGENIERÍA

DE

CONTROL

CON

CONTROLWEB

2.1 IMPORTANCIA DE LA SIMULACIÓN EN EL APRENDIZAJE

Como es bien conocido la simulación constituye uno de los pilares en el proceso de aprendizaje de la ingeniería de control. Mediante la simulación se persigue que el alumno ponga en práctica los conceptos teóricos estudiados en clase. El objetivo es que el estudiante pueda plantear diferentes experiencias y obtener resultados de forma rápida para poder contrastarlos con lo que predice la teoría. ControlWeb pretende ser una herramienta que cubra esta parte de la docencia.

Para entender más profundamente cómo incorporar la herramienta ControlWeb en la docencia de una asignatura, consideremos la Figura 1. En ella se

muestra la estructura propuesta para la docencia de las asignaturas de ingeniería de control. Como se observa, el aprendizaje del alumno, se basa en la aportación de una seria de fuentes:

- Clases teóricas y de problemas: el alumno asiste a las clases impartidas por el profesor y toma apuntes de los conceptos estudiados. Además se resuelven problemas relacionados con la materia impartida.

- Libros: el alumno recurre a libros de la materia para complementar las clases teóricas.

- Tutorías: Aquellas dudas que el estudiante es incapaz de resolver, son consultadas directamente al profesor en tutorías y de forma individualizada.

- Ejercicios prácticos de simulación: se proponen al estudiante un conjunto de ejercicios prácticos de cada tema de la asignatura. Para la resolución de estos ejercicios el alumno debe emplear herramientas que le permitan llevar a cabo las operaciones de análisis y simulación de forma sencilla.

- Laboratorios: Una vez el alumno ha asimilado los conceptos teóricos y ha resuelto con éxito los problemas de simulación, debe enfrentarse a un problema real en el laboratorio.

- Otros recursos: existen otros recursos que también resultan interesantes para alcanzar los objetivos planteados en la asignatura. En concreto, el alumno puede recurrir a Internet, seminarios especializados, visitas a plantas de control en la industria, etc.

Figura 1: Recursos disponibles para el aprendizaje del alumno.

(3)

ello es importante dotar al estudiante de una herramienta de simulación adecuada y de fácil manejo.

Con esta idea se ha creado ControlWeb. El objetivo es dotar el estudiante de una herramienta de acceso libre, que incorpore todas las funciones necesarias para un curso básico de ingeniería de control y que tenga un entorno amigable. Otro de los objetivos es que el estudiante pueda utilizar la herramienta invirtiendo un tiempo para el aprendizaje casi nulo. Para ello se ha diseñado un entorno visual que permite ejecutar las distintas operaciones de forma muy sencilla.

2.2 MATERIAS QUE CUBRE LA APLICACIÓN

En general, las asignaturas de introducción al control de sistemas involucran dos bloques de contenidos con orientaciones diferentes [5],[6]. Un primer bloque aborda una introducción a la teoría de sistemas. Normalmente, estos temas se centran en la descripción y análisis de sistemas lineales con una entrada y una salida (SISO). Los tópicos que se cubren en esta parte suelen ser:

- Representación de sistemas: función de transferencia y variables de estado. - Análisis de la respuesta temporal.

- Respuesta frecuencial: diagramas de Bode, Nyquist y otras representaciones. - Estabilidad: absoluta y relativa.

La herramienta ControlWeb provee funciones para que el alumno pueda realizar ejercicios de cada una de estos tópicos. Estas funciones aparecen en la sección de “análisis” de la herramienta. Es importante remarcar que, de todas las experiencias realizadas con la aplicación, se puede obtener una copia impresa en papel donde aparecerá además de la gráfica correspondiente, los datos asociados. Esto es interesante para que el alumno pueda realizar informes de las experiencias realizadas. El segundo bloque que conforma el programa de una asignatura básica de ingeniería de control corresponde a la parte dedicada al diseño de sistemas de control. En general, se suelen abordar en esta parte diferentes metodologías de diseño como:

- Control PID.

- Diseño de compensadores.

- Diseños básicos de realimentación mediante variables de estado.

Con esta idea se ha diseñado la sección de “control” de la aplicación que permite simular el comportamiento de cada una de estos controladores.

Aunque no se haya hecho mención hasta ahora, es importante destacar que la aplicación permite trabajar no solo con sistemas continuos de control, sino también con sistemas de control digital.

3

DESCRIPCIÓN

DE

LA

APLICACIÓN

Como se comentó la aplicación se presenta como una página Web (http://controlweb.cyc.ull.es). La página de presentación está dividida en dos partes; una de contenido y otra de menú. En la primera es en la que se muestra al usuario toda aquella información que haya solicitado a través de las opciones del menú, incluido los applets para análisis o control. Y en la segunda, en la parte de menú, están los elementos necesarios para poder acceder a todas las operaciones disponibles para el usuario, acceder a los applets, consultar teoría, enviar correo con sugerencias o dudas al encargado de la WEB o regresar a la página de presentación. El menú de las páginas se encuentra formado por varios elementos, botones en su mayoría, además de un enlace para enviar correo al encargado de la WEB. Los distintos elementos son:

• Botón Análisis: Muestra la página Análisis de Sistemas, que incorpora el applet de análisis de plantas, el cual solo es visible si se tiene instalada la versión 1.3 de Java (ver Figura 2).

• Botón Control: Muestra la página Control que incorpora el applet para control de plantas, el cual solo es visible si se tiene instalada la versión 1.3 de Java (ver Figura 3).

• Botón Teoría: Se abre una nueva ventana de navegador donde se muestra información teórica, ejemplos y ejercicios relativos tanto al análisis como al control de plantas. Esta nueva ventana la comentaremos un poco más adelante en este mismo apartado.

(4)

análisis y control, otros proyectos sobre esta materia, etc.

• Icono @: Nos permite enviar un correo electrónico al profesor responsable de la asignatura.

(5)

Figura 2: Aspecto de la interfaz gráfica del applet de análisis.

(6)

3.1 APPLETS

Los applets constituyen programas en java que se incluyen en páginas WEB y que se ejecutan en el cliente independientemente de la plataforma o sistema operativo que éste este utilizando.

La parte más importante de la página Web son precisamente los applets que incorpora, uno para el análisis y otro para el control de plantas. Estos applets permiten al usuario introducir datos y obtener de forma inmediata, gráficas y resultados, como si se tratase de una aplicación instalada en nuestro ordenador.

3.1.1 Applet análisis de planta

Este applet, como su nombre indica, permite al usuario analizar plantas y simular su salida en lazo abierto. La planta a analizar puede ser introducida bien en su representación externa (función de transferencia) o mediante su representación interna (espacio de estados). Si el usuario desea conocer la representación alternativa, solo tiene que pulsar sobre la pestaña y, de forma automática, se calcula y se muestran los valores de dicha representación. La planta a analizar puede ser continua o discreta. Además el usuario puede analizar la planta tras aplicarle la transformación bilineal. Para ello basta con marcar el cuadro de verificación “Transf. Bilineal”. Marcando este cuadro de verificación la planta se transforma de continua a discreta o viceversa para luego proceder a su análisis.

Se dispone de varias herramientas de análisis y simulación:

• Simulación temporal con tres tipos diferentes de señales de entrada: entrada en escalón, entrada en rampa y entrada senoidal.

• Diagrama de Bode. • Diagrama de Nyquist.

• Diagrama del lugar de las raíces.

• Representación gráfica de los polos y ceros tanto en el plano S como en plano Z. La aplicación permite definir ciertos parámetros de simulación como la duración de la misma, el incremento temporal que define la resolución de la simulación y la amplitud de la señal de entrada. En el caso de la entrada senoidal también se puede especificar su frecuencia angular.

3.1.2 Applet control de planta

Este applet de control permite al usuario simular la salida de las plantas en lazo cerrado con diferentes controladores (ver Figura 4). Además permite conocer los polos y los ceros de este nuevo sistema en lazo cerrado. Es posible plantear tanto un control continuo como un controlador digital para una planta continua.

Para poder obtener la simulación es necesario completar dos pasos, cada uno de ellos diferenciado en su respectiva pestaña, Controlador y Planta:

1. Primero se deben introducir todos los datos referentes al controlador. Los opciones disponible son tipo de control (continuo o discreto), periodo de muestreo, y modelo de controlador (PID, compensador o realimentación por variables de estado). Además para cada controlador hay que introducir sus parámetros.

2. A continuación de debe pulsar sobre la pestaña de planta donde se introducirán los datos referentes a la planta que se desea controlar. Completado este paso, ya se puede pulsar el botón de simular para obtener la respuesta del sistema así como los polos y ceros en lazo cerrado del sistema.

4 DETALLES DE IMPLEMENTACION

La aplicación desarrollada aparece compuesta por dos tecnologías: páginas Web y applets Java. Las páginas Web permiten al usuario explorar la aplicación a través de los enlaces creados en las mismas. Dos de estos en laces son los que realmente conforman el núcleo de la aplicación: análisis y control. Al pulsar en estos enlaces se ejecutan los applets correspondientes implementados mediante la extensión de la clase JApplet [4],[7],[8]. La versión de Java utilizada para el desarrollo de esta aplicación es la 1.3. Por ello, para poder ejecutar y visualizar los applets en el navegador, es necesario tener instalado el plugin de la versión de 1.3 de Java o posterior.

(7)
(8)
(9)

Naturalmente para la representación interna de un sistema se emplean matrices para almacenar cada matriz de estado. En la aplicación es necesario implementar una función que convierta la entrada del usuario en modo texto a una representación numérica. Es en esta función donde se comprueba que los datos introducidos por el usuario son correctos.

La simulación temporal de sistemas se ha implementado empleando la aproximación de Euler para discretizar el sistema. Con la elección de un periodo de muestreo para la simulación aceptable, esta aproximación presenta un comportamiento satisfactorio para la mayoría de procesos típicos en la ingeniería de control.

Para la implementación de los applets, teniendo en cuenta que Java es un lenguaje orientado a objetos, se ha creado un conjunto de objetos específicos, implementados como clases. Cada una de las operaciones que realiza la aplicación forma parte de una de estas clases. Así, se han creado clases específicas para las operaciones de análisis, control, representaciones gráficas por pantalla e impresora, y gestión de la interfaz de usuario.

Por la filosofía empleada, caben destacar las clases gestoras de las interfaces de usuario (GestorAnalisis y GestorControl), las cuales toman unos parámetros de la interfaz de usuario, según las opciones seleccionadas o los valores introducidos por el usuario y partir de las cuales se realiza todo el proceso de análisis o control deseado. La particularidad de estas clases se encuentra en el aislamiento que dan al resto de las clases respecto a la interfaz de usuario y en consecuencia, se puede modificar el código fuente de las interfaces de usuario sin riesgo a que se vean afectadas las demás clases de análisis, control o representación gráfica.

5 CONCLUSIONES

En este trabajo se presenta una herramienta para la aplicación de la teoría de control en un entorno gráfico que permite al usuario analizar el comportamiento de sistemas lineales con una entrada y una salida, así como simular su salida tanto en lazo abierto como en lazo cerrado. La herramienta es de valor para la docencia en asignaturas relacionadas con la teoría de sistemas y la automática ya que permite al alumno poner en práctica los conceptos teóricos estudiados de forma fácil y cómoda. Es

importante destacar que la herramienta es de libre acceso para los usuarios y se encuentra en http://controlweb.cyc.ull.es.

La aplicación desarrollada se presta a mejoras y ampliaciones encaminadas a la introducción de interactividad con el usuario, mejora de la interfaz gráfica, implementación de animaciones y aumento de la versatilidad en el diseño de sistemas de control.

6 REFERENCIAS

[1] Åström, K.J. and Wittenmark, B., (1997) Computer-Controlled Systems, Prentice-Hall. [2] García, R. C. and. Heck B. S., (1999)

“Enhancing Classical Controls Education via Interactive GUI Design”, IEEE Control Systems Magazine, June.

[3] Johansson, M., Gäfvert, M. and Åström, K.J. (1998) “Interactive Tools for education in Automatic Control”, IEEE Control Systems Magazine, June.

[4] Morgan M., (1999) Descubre Java 1.2, Prentice-Hall.

[5] Ogata K., (2003) Ingeniería de Control Moderna, Prentice Hall.

[6] Ogata K. (1996), Sistemas de Control en Tiempo Discreto, Prentice Hall.

[7] Sánchez Allende, J., Huecas G., y otros (2001) Java 2, McGraw-Hill.

[8] Schildt, H., (2001) Java 2. Manual de referencia, McGraw-Hill.

Figure

Actualización...

Referencias

Actualización...

Related subjects :