Análisis comparativo de métodos de control inteligente
Texto completo
(2) ANALISIS COMPARATIVO DE MÉTODOS DE CONTROL INTELIGENTE.. ANSELMO ANDRÉS MARTÍNEZ ROJAS. Proyecto de grado para optar al título de Ingeniero Electrónico Asesor Alaín Gauthier PHD. Ingeniería electrónica Coasesor Andrés Escobar Ingeniero Electrónico UNIVERSIDAD DE LOS ANDES FACULTAD DE INGENIERÍA DEPARTAMENTO DE INGENIERÍA ELÉCTRICA Y ELECTRÓNICA BOGOTÁ D.C. 2005 1.
(3) RESUMEN. El objetivo de este documento es analizar el comportamiento de un controlador difuso cuando su base de conocimiento es sintonizada a través de un proceso evolutivo o algoritmo genético y también cuando es sintonizada utilizando un proceso adaptativo conocido como FMRLC por sus siglas en inglés (Fuzzy Model Reference Learning Controller). Estos procesos, llamados sistemas inteligentes, en contraste con los procesos heurísticos que normalmente se llevan a cabo para sintonizar la base de conocimiento, demuestran un paso de diseño más rápido e intuitivo ya que se logra sintonizar adecuadamente la base de conocimiento a través de procesos autónomos cuyos parámetros son relativamente sencillos de determinar (en comparación con sintonizar toda una base de conocimiento). Durante el análisis, se realizan simulaciones del controlador aplicado en diferentes tipos de sistemas lineales y no lineales tomando datos relacionados con el error, estabilidad, energía gastada por el controlador, capacidad computacional exigida, etc. El proceso evolutivo realiza un entrenamiento “offline” el cual requiere un modelo del sistema, aunque al terminarlo, su implementación requiere un tiempo de simulación 50% menor que el proceso adaptativo y logra obtener resultados de buen desempeño. El proceso adaptativo es implementado “online”, por lo que no requiere un modelo del sistema, aunque si requiere un conocimiento básico de las características de este para lograr sintonizar los parámetros de adaptación que utiliza. Al final se realiza una comparación del desempeño logrado por estos sistemas y controladores lineales buscando determinar las ventajas de utilizar un controlador inteligente sobre un controlador lineal.. 2.
(4) GLOSARIO. ALGORITMO GENÉTICO: Algoritmo que utiliza la teoría de la evolución de Darwin y otros aspectos como la mutación para buscar soluciones óptimas a problemas de maximización o minimización. CONTROL: Actividad de monitorear los resultados de una acción y tomar medidas para hacer correcciones inmediatas y medidas preventivas para evitar eventos indeseables en el futuro. CONTROLADOR DIFUSO: Es un controlador donde el sistema que calcula y efectúa la acción de control es un sistema difuso. LÓGICA DIFUSA: En la lógica clásica una proposición sólo admite dos valores: puede ser verdadera o falsa. Por eso se dice que la lógica usual es binaria. Pero existen otras lógicas que admiten además un tercer valor: posible.La lógica difusa (o borrosa) es una de ellas, que se caracteriza por querer cuantificar esta incertidumbre: Si P es una proposición, se le puede asociar un número v(P) en el intervalo [0 ; 1] tal que: Salta a la vista la semejanza con la teoría de las probabilidades. SISTEMA: Conjunto de elementos interrelacionados y regidos por normas propias, de modo tal que pueden ser vistos y analizados como una totalidad. El sistema se organiza para producir determinados efectos, o para cumplir una o varias funciones.. 3.
(5) CONTENIDO. pág. INTRODUCCIÓN ...................................................................................9 1. CONTROLADOR ADAPTA TIVO CON MODELO DE REFERENCIA 10 1.1 ESTRUCTURA ............................................................................ 11 1.1.1 Controlador difuso................................................................... 11 1.1.2 Modelo de referencia.............................................................. 17 1.1.3 Tiempo de muestreo............................................................... 17 1.1.4 Ganancia de salida del controlador difuso................................. 17 1.1.5 Ganancias de entrada del controlador difuso ............................ 18 1.1.6 Ganancias de entrada del mecanismo de aprendizaje ............... 19 1.1.7 Reglas del mecanismo de aprendizaje. .................................... 19 1.1.8 Ganancia de aprendizaje ........................................................ 22 1.2 ¿APRENDE EL CONTROLA DOR ADAPTA TIVO? ......................... 22 1.3 EJEMPLO DE IMPLEMENTACIÓN EN EL CONTROL DE POSICIÓN DE UN MOTOR DC ........................................................................... 24 2. CONTROLADOR EVOLUTIVO CON ALGORITMOS GENÉTICOS .. 28 2.1 MACRO ALGORITMO. ................................................................. 28 2.2 ESTRUCTURA Y PARÁMETROS DEL ALGORITMO. .................... 30 2.3 EJEMPLO DE IMPLEMENTACIÓN EN EL CONTROL DE POSICIÓN DE UN MOTOR DC: .......................................................................... 32 3. RESULTADOS ........................................................................... 35 3.1 SIMULACIONES ......................................................................... 35 3.1.1 Método de simulación............................................................. 35 3.1.2 Control de velocidad de un motor DC. ..................................... 36 3.1.3 Control del ángulo de un péndulo invertido. ............................. 42 3.1.4 Control de altura en levitación magnética................................. 49 3.2 IMPLEMENTACIÓN: ................................................................... 56 4. CONCLUS IONES ............................................................................. 60 BIBLIOGRAFÍA .................................................................................... 61. 4.
(6) LISTA DE TABLAS. pág. Tabla 1. Comparación de los controladores inteligentes y el controlador lineal en el motor DC………………………………………………………….…34 Tabla 2. Comparación de los controladores inteligentes y el controlador lineal en el péndulo invertido……………………………………………………41 Tabla 3. Comparación de los controladores inteligentes y el controlador lineal en el sistema de levitación magnética…………………………………..48. 5.
(7) LISTA DE FIGURAS. pág. Figura 1: Estructura del FMRLC………………………………………………….2 Figura 2. Desplazamiento de reglas causado por el mecanismo de adaptación………………………………………………………………………….3 Figura 3. Respuesta de un sistema estable con un controlador PI…………..4 Figura 4. Respuesta de un sistema estable con un controlador PD…………4 Figura 5. Funciones de pertenencia para las entradas del controlador difuso………………………………………………………………………….........5 Figura 6. Simulación de un controlador difuso utilizando un motor de inferencia mínimo………………………………………………………………….6 Figura 7. Simulación de un controlador difuso utilizando un motor de inferencia producto………………………………………………………………...6 Figura 8. Simulación de un controlador difuso utilizando un motor de inferencia zadeh……………………………………………………………………7 Figura 9. Simulación de un controlador difuso utilizando un defusificador centro de gravedad……………………………………………………………..…8 Figura 10. Simulación de un controlador difuso utilizando un defusificador centro promedio……………………………………………………………………8 Figura 11. Cambio en el error acumulado como consecuencia del cambio en las ganancias de entrada………………………………………………………..10 Figura 12. Cambio en el desempeño del sistema al cambiar el universo de discurso de las funciones de pertenencia de entrada……………….............11 Figura 13. Reglas de aprendizaje base………………………………………..12 Figura 14. Reglas de aprendizaje con acciones fuertes para errores pequeños………………………………………………………………………….12 Figura 15. Reglas de aprendizaje con acciones leves para errores pequeños………………………………………………………………………….12 Figura 16. Reglas de aprendizaje con pendientes altas……………………..13 Figura 17. Cambio en el desempeño del sistema cuando varían las reglas del mecanismo de aprendizaje………………………………………………….13 6.
(8) Figura 18. Cambio en la respuesta cuando se aumenta la ganancia de aprendizaje en un sistema lineal………………………………………………..14 Figura 19. Aprendizaje del controlador PD en un motor DC………………...15 Figura 20. Aprendizaje del controlador PI en un motor DC………………….15 Figura 21. Aprendizaje del controlador PI en sistema no lineal……………..16 Figura 22. Implementación del motor DC……………………………………...16 Figura 23. Modelo de referencia para la implementación de un controlador para un motor DC………………………………………………………………...17 Figura 24. Reglas del sistema de aprendizaje para el motor DC…………...18 Figura 25. Resultados de la implementación del controlador adaptativo para la posición de un motor DC……………………………………………………..18 Figura 26. Resultados de la implementación del controlador adaptativo para la posición de un motor DC……………………………………………………..19 Figura 27. Desplazamiento de reglas causado por el mecanismo evolutivo…………………………………………………………………………...22 Figura 28. Estructura del controlador difuso evolutivo……………………….23 Figura 29. Reglas activas durante un tiempo de muestreo………………….24 Figura 30. Implementación del motor DC……………………………………...24 Figura 31. Señal de entrenamiento para el controlador difuso sobre el motor DC………………………………………………………………………………….25 Figura 32. Reglas iniciales utilizadas para sintonizar el controlador difuso………………………………………………………………………….......25 Figura 33. Reglas sintonizadas del controlador difuso……………………….26 Figura 34. Resultados de la implementación del controlador evolutivo para la posición de un motor DC………………………………………………………...26 Figura 35. Motor DC……………………………………………………………..28 Figura 36. Dinámica del motor DC……………………………………………..29 Figura 37. Reglas de aprendizaje del motor DC……………………………...30 Figura 38. Reglas iniciales del motor DC……………………………………...31 Figura 39. Señal de entrenamiento para el control de velocidad del motor DC………………………………………………………………………………….31 Figura 40. Reglas sintonizadas para el control de velocidad del motor DC………………………………………………………………………………….32 Figura 41. Respuesta del motor DC ante una señal de pulsos cuadrados usando el controlador adaptativo……………………………………………….32 Figura 42. Reglas sintonizadas del motor DC para una señal de pulsos cuadrados usando el controlador adaptativo………………………………….33 Figura 43. Respuesta del motor DC ante una señal de pulsos cuadrados usando el controlador evolutivo…………………………………………………33 Figura 44. Controlador lineal del motor DC……………………………………34 Figura 45. Péndulo invertido…………………………………………………….35 Figura 46. Dinámica del péndulo invertido…………………………………….36 7.
(9) Figura 47. Reglas de aprendizaje del péndulo invertido……………………..37 Figura 48. Reglas iniciales del péndulo invertido……………………………..38 Figura 49. Reglas sintonizadas para el control del ángulo de un péndulo invertido…………………………………………………………….....................39 Figura 50. Respuesta del péndulo invertido ante una perturbación de pulsos cuadrados usando el controlador adaptativo……………………...................39 Figura 51. Reglas sintonizadas del péndulo invertido para una señal de pulsos cuadrados usando el controlador adaptativo……………………........40 Figura 52. Respuesta del péndulo invertido ante una señal de pulsos cuadrados usando el controlador evolutivo……………………………………40 Figura 53. Controlador lineal del péndulo invertido…………………………..41 Figura 54. Sistema de levitación magnética…………………………………..42 Figura 55. Dinámica del péndulo invertido…………………………………….43 Figura 56. Reglas de aprendizaje del sistema de levitación magnética……………………………………………………………………........44 Figura 57. Reglas iniciales del sistema de levitación magnética……………44 Figura 58. Reglas sintonizadas para el control del sistema de levitación magnética……………………………………………………………………........45 Figura 59. Respuesta del sistema de levitación magnética para la primera señal de pulsos cuadrados usando el controlador adaptativo……………....46 Figura 60. Respuesta del sistema de levitación magnética para la segunda señal de pulsos cuadrados usando el controlador adaptativo......................46 Figura 61. Respuesta del sistema de levitación magnética ante una señal de pulsos cuadrados usando el controlador evolutivo…………………………...47 Figura 62. Controlador lineal del sistema de levitación magnética…….......47 Figura 63. Sistema de tanques de agua……………………………………….48 Figura 64. Interfaz utilizada para controlar el sistema de tanques de agua………………………………………………………………………………..49 Figura 65. Dinámica del sistema de tanques de agua……………………….49 Figura 66. Respuesta del controlador adaptativo para el sistema de control de nivel de agua……………………………………………………...................50 Figura 67. Respuesta del controlador adaptativo para el sistema de control de nivel de agua……………………………………………………...................50 Figura 68. Respuesta del controlador evolutivo para el sistema de control de nivel de agua……………………………………………………........................51 Figura 69. Reglas optimizadas por el proceso de entrenamiento para el sistema de control de nivel de agua……………………………………….......51. 8.
(10) INTRODUCCIÓN. El estudio de los controladores inteligentes ha ganado importancia en los últimos años; esto se ha debido a que los resultados que se pueden lograr con este tipo de controladores son lo suficientemente buenos y además evidencian que pueden reemplazar y mejorar el desempeño obtenido por métodos de control “clásicos” o “lineales”, sobre todo, cuando se deben controlar sistemas con altos grados de no linealidad o modelos demasiado difíciles de obtener. La investigación que se realiza en este documento obedece a la necesidad de conocer las bondades y falencias de estos sistemas inteligentes, también saber cual de ellos presenta mejores características de control y en que circunstancias. Con el análisis que se lleva a cabo, se logra determinar que tanto se mejora o empeora el control de un sistema luego de reemplazar un controlador lineal por uno difuso y también de que forma se logra sintonizar mejor a este sistema. Primero se dan a conocer las estructuras de control utilizadas estudiando las características de los mismos y como seleccionar sus parámetros. Y por último, se comparan los resultados de las simulaciones e implementaciones en distintos tipos de sistemas lineales, no lineales y/o inestables.. 9.
(11) 1. CONTROLADOR ADAPTATIVO CON MODELO DE REFERENCIA. Este sistema inteligente es basado en su gran mayoría en los estudios realizados 1 por J. Layne y K. Passino . La ideología del sistema es implementar un controlador que adapta su base de conocimiento, online (o en tiempo real), a las características del sistema que controla. De esta forma obtiene información de cómo se desea que el sistema se comporte (a partir de un modelo de referencia) y desplaza las reglas dentro del universo de discurso para lograr este objetivo. En la figura 1 se puede observar la estructura de este sistema:. Figura 1: Estructura del FMRLC. Para tener una mejor idea de la acción que realiza el mecanismo de aprendizaje sobre el controlador difuso, la figura 2 demuestra como el centro de las reglas de este controlador se van desplazando desde la posición inicial (0 en este caso) a una posición donde mejoran el desempeño del sistema:. 1. J. Layne, K. Passino; ”Fuzzy Model Reference Learning Control for Cargo Ship Steering”; IEEE Control Systems Magazine, Vol. 13, No. 6, pp. 23-34, Dec. 1993. 10.
(12) FMR LC-mapa de reglas s intoniz adoras. FMR LC -mapa de reglas s intoniz adoras. 0.5 0. -0.5. -1 4. 5 Sali da del Modelo Inv ers o. 5 Sali da del Modelo Inv ers o. Sali da del Modelo Inv ers o. 1. 4 3 2 1 0 4. 2. 0.5 0 -4. Cambio en error. -0.5. -4. Cambio en error. 2. -0.5. 2 1 0 4. Cambio en error. -4. -0.5. Error. -4. Cambio en error. Error. -0.5. Error. FMR LC -mapa de reglas s intoniz adoras. 5. 4 3 2 1 0 4. 0.5. 0. -2. Salida del Modelo Inv erso. Salida del Modelo Inv erso. 3. 0. 0.5 0. 5. 4. -2. 1. FMR LC -mapa de reglas s intoniz adoras. 5. 0. 2. 0. -2. FMR LC -mapa de reglas s intoniz adoras. 2. 3. 0.5 0. Error. 4. 0 4 2. 0. -2. Salida del Modelo Inv erso. FMR LC -mapa de reglas s intoniz adoras. 4 3 2 1 0 4. 2. 0.5 0. 0. -2 Cambio en error. -4. -0.5. Error. 2. 0.5 0. 0. -2 Cambio en error. -4. -0.5. Error. Figura 2. Desplazamiento de reglas causado por el mecanismo de adaptación.. 1.1 ESTRUCTURA El sistema FMRLC cuenta con los siguientes subsistemas: Controlador difuso (sistema que es sintonizado por el mecanismo adaptativo), modelo de referencia (sistema utilizado como medida del desempeño del controlador), mecanismo de aprendizaje (sistema difuso utilizado para modificar la base de conocimiento del controlador difuso a partir de la información recibida por el modelo de referencia y el comportamiento del sistema). Cada subsistema contiene una serie de parámetros que deben ser seleccionados para determinar el funcionamiento del sistema en general. Estos parámetros pueden ser seleccionados siguiendo los siguientes pasos:. 1.1.1 Controlador difuso. El controlador difuso se escogió como el controlador a ser sintonizado por los dos sistemas inteligentes, ya que este tipo de controladores evidencia tener buenas características de respuesta para sistemas no lineales. Sin embargo, escoger las reglas que determinan su desempeño (su base de 2 conocimiento ) puede ser una tarea complicada y que requiere mucho tiempo de diseño ya que normalmente la selección de parámetros es realizada heurísticamente. Además de la base de conocimiento, hay que tener en cuenta otros aspectos intrínsecos del controlador: 2. Li-Xin Wang “A Course in Fuzzy Systems and Control”; Prentice Hall, Upper Saddle River, NJ, 2005. 11.
(13) • Tipos de controladores difusos. Los tipos que se tienen en cuenta son proporcional integral (PI) y proporcional derivativo (PD). No se tomaron en cuenta aquellos que tuvieran más de dos entradas por la cantidad de reglas que esto implica. Los dos tipos son utilizados en todos los sistemas a lo largo del análisis ya que cada uno presenta ciertas características favorables para diferentes sistemas. Luego de observar los resultados, se escoge aquel tipo que logre mejor desempeño para cada sistema. Por lo general, sistemas estables obtuvieron respuestas mejores con controladores de tipo PI y sistemas inestables las obtuvieron con controladores PD: modelo de referencia, referencia y respuesta del sistema. 0.5 0.45 0.4 0.35 ) s/ d a(r d ut i pl m A. 0.3 0.25 0.2 0.15 0.1 0.05 0. 0. 50. 100 150 Tiempo (segundos). 200. 250. Figura 3. Respuesta de un sistema estable con un controlador PI. modelo de referencia, referencia y respuesta del sistema. 0.6. 0.5. 0.4 ) s/ d ar ( d uit pl m A. 0.3. 0.2. 0.1. 0. -0.1. 0. 50. 100 150 Tiempo (segundos). 200. 250. Figura 4. Respuesta de un sistema estable con un controlador PD. 12.
(14) • Funciones de pertenencia. Las funciones de pertenencia tienen tres características básicas: el número, la forma y el universo de discurso. El número de funciones de pertenencia se elige siguiendo los estudios realizados por Kevin Passino donde hay 11 funciones de pertenencia por cada una de las entradas y 121 funciones de pertenencia de salida (que constituyen la base de conocimiento). 3 Estas funciones han dado buenos resultados siendo suficientes para la mayoría de los sistemas. La forma de estas funciones de pertenencia es triangular. Esta forma se selecciona ya que es eficiente a nivel computacional y así se garantiza la posibilidad de implementar este controlador en la mayoría de sistemas. El universo de discurso es inherente del sistema que se va a controlar ya que no todos los sistemas manejan el mismo rango de valores. Para hacer el controlador más versátil, se diseña un controlador normalizado para que su universo de discurso se encuentre entre 1 y -1 (o 0) para todos los casos. Luego se utilizan ganancias en la salida y la entrada para que de esta forma el controlador y el sistema se encuentren en el mismo universo de discurso. En la figura 5 están graficadas las funciones de pertenencia para las entradas del controlador difuso.. Figura 5. Funciones de pertenencia para las entradas del controlador difuso.. • Motores de inferencia difusos. Son los encargados de aplicar el conocimiento (el conjunto de reglas) a las entradas del sistema para generar una inferencia difusa que luego será defusificada para generar la salida del sistema. Los más utilizados son mínimo, producto y zadeh. La ecuación 1 muestra el método utilizado para implementar el motor de inferencia mínimo: prem = min(µA1(x1), µA2(x2)). 3. (1). K. Passino; “Fuzzy Control”; Addison Wesley Longman, Menlo Park, CA. 13.
(15) er ror ac um ul ado i gual a 559.0145 para i nfer enc ia m ini m o 1 m odel o de referenc i a. 0. 9. referenc i a res pues ta. 0. 8 0. 7 0. 6 0. 5 0. 4 0. 3 0. 2 0. 1 0. 0. 50. 100. 150. 200. Figura 6. Simulación de un controlador difuso utilizando un motor de inferencia mínimo. La ecuación 2 muestra el método utilizado para implementar el motor de inferencia producto: prem = µA1(x1)*µA2(x2). (2) error ac umulado de 587.6469 para premis a pr oduc to. 1 0.9 0.8 0.7 0.6 0.5 0.4 0.3 0.2 0.1 0 0. 50. 100. 150. 200. Figura 7. Simulación de un controlador difuso utilizando un motor de inferencia producto. La ecuación 3 muestra el método utilizado para implementar el motor de inferencia zadeh: prem = max[min(µA1(x1), µA2(x2)), 1-min(µA1(x1), µA2(x2))]. 14. (3).
(16) error ac umulado de 717.1909 para inferen cia zadeh 1 0.9 0.8 0.7 0.6 0.5 0.4 0.3 0.2 0.1 0 0. 20. 40. 60. 80. 100. 12 0. 140. 160. 180. 200. Figura 8. Simulación de un controlador difuso utilizando un motor de inferencia zadeh. Aunque el motor de inferencia mínimo evidencia mejores resultados, los otros motores no pueden ser descartados ya que cada sistema presenta características que pueden favorecer el uso de cualquier motor. Para el proceso de diseño se recomienda empezar con mínimo y luego de haber realizado la sintonización de los demás parámetros, y si los resultados no son del todo satisfactorios, probar con los otros motores.. • Defusificadores. Los defusificadores se encargan de transformar un dato del universo difuso al universo formal o concreto. Los más utilizados son centro de gravedad y centro promedio. la ecuación 4 muestra el método utilizado para implementar el defusificador centro de gravedad donde el resultado es el centro del área cubierto por las funciones de pertenencia de salida: num=num+rules(k,l)*base*(prem-(prem)^2/2); den=den+base*(prem-(prem)^2/2); OUT=num/den;. 15. (4).
(17) e r ro r a c u m u l a d o d e 5 5 9 .2 3 0 0 m o d e l o d e re fe re n c i a. 1. re fe re n c i a 0. 9. re s p u e s t a. 0. 8 0. 7 0. 6 0. 5 0. 4 0. 3 0. 2 0. 1 0 0. 20. 40. 60. 80. 100. 120. 140. 160. 180. 200. Figura 9. Simulación de un controlador difuso utilizando un defusificador centro de gravedad. De igual forma, la ecuación 5 muestra el método utilizado para implementar el defusificador centro promedio donde el resultado es el promedio de los centros de las funciones de pertenencia. num=num+rules(k,l)*prem; den=den+prem; OUT=num/den;. (5). error ac um ulado de 583. 2129 1. m odel o de referenc ia referenc ia res pues ta. 0.9 0.8 0.7 0.6 0.5 0.4 0.3 0.2 0.1 0 0. 20. 40. 60. 80. 100. 120. 140. 160. 180. 200. Figura 10. Simulación de un controlador difuso utilizando un defusificador centro promedio. El defusificador centro de gravedad demuestra tener mejores resultados (con menor oscilación). Aún así, se recomienda no descartar el uso del defusificador centro promedio ya que puede mejorar la respuesta en comparación con el centro de gravedad para sistemas con dinámicas distintas. 16.
(18) • Base de conocimiento. Se han seleccionado las reglas como parámetros a ser sintonizados por los sistemas inteligentes. Específicamente, la variable que se tiene en cuenta en el proceso de sintonización (adaptativo y evolutivo) es el centro de cada regla. Existen otras variables que se pueden tener en cuenta en un proceso de sintonización; la mayoría de estos son factores relacionados con la forma. Sin embargo, tener en cuenta estos factores de forma, significa sacrificar tiempo de cómputo. Por esta razón, se decide que todas las funciones de pertenencia de las reglas sean triangulares similares a la que tienen las funciones de pertenencia de entrada. Y se sintoniza el centro ya que el centro de la regla especifica su posición en el universo de discurso y determina la acción que realiza el controlador al ser activada esta regla.. 1.1.2 Modelo de referencia. El modelo de referencia se escoge a partir de los requerimientos de diseño, ya que si el controlador ha sido bien sintonizado, el sistema se comportará como el modelo de referencia. Este debe ser lo suficientemente amplio para que el sistema logre una buena respuesta sin sobrepasar los límites de respuesta del sistema, como por ejemplo la rapidez con la que puede responder el sistema para los niveles máximos de entrada, ya que de esta forma se está aumentando la ganancia del sistema y seguramente esto causará respuestas oscilatorias. Al seleccionar el modelo se deben tener presentes las especificaciones del diseño como error en estado estacionario, tiempo de establecimiento, sobrepaso.. 1.1.3 Tiempo de muestreo. El tiempo de muestreo se elige como la décima parte del tiempo de respuesta (Tao τ) del modelo de referencia. Si este modelo de referencia es mas lento que el sistema, entonces se escoge como la décima parte del tiempo de respuesta de este. Como para todos los controladores discretos, es muy importante que no sea demasiado pequeño ni demasiado grande ya que de esta forma el aprendizaje es demasiado rápido o demasiado lento y la respuesta resultante podría no ser aceptable. También se debe tener presente la velocidad del procesador sobre el cual se piensa implementar el sistema. 1.1.4 Ganancia de salida del controlador difuso. Esta ganancia está limitada por la entrada que tolera el sistema. Por ejemplo, si el sistema es un motor DC de 10V la ganancia de salida no puede superar 10. Se recomienda utilizar el mayor valor posible, mientras este sea limitado, ya que el sistema adaptativo se encarga de localizar los centros en el valor indicado. De no ser limitado, se recomienda hacer el universo de discurso tan grande como requiera el sistema para alcanzar la 17.
(19) amplitud sin exagerar los valores, ya que al no ser así se aumenta innecesariamente el consumo de energía por parte del controlador.. 1.1.5 Ganancias de entrada del controlador difuso. Es muy importante saber escoger estos valores, ya que si es muy grande, el universo de discurso también lo es y se pueden estar desperdiciando muchas reglas, y si es muy pequeña estarían faltando reglas. Para seleccionarlos se recomienda en primera instancia utilizar los valores máximos; es decir, determinar cual es el error máximo que entra al controlador y utilizar este valor como ganancia para la entrada proporcional del controlador. En el caso proporcional integral, la ganancia para la entrada integral máxima es la sumatoria del error máximo durante el tiempo de respuesta del sistema. En el caso proporcional diferencial, la ganancia para la entrada diferencial máxima es el error máximo dividido por el tiempo de muestreo. Esto se decide así ya que valores más grandes son innecesarios en la práctica. Luego de seleccionar estas variables, se realizan varias simulaciones y se determinar las ganancias finales como los valores “reales” máximos que se alcanzan y disminuyendo la ganancia teniendo en cuenta que las reglas deben abarcar la mayoría de los valores posibles (si no todos). Estas ganancias deben ir dividiendo las entradas y multiplicando la salida para normalizar los valores. En la figura 11 se puede observar como va disminuyendo el error acumulado cuando el universo de discurso es disminuido en magnitud:. Figura 11. Cambio en el error acumulado como consecuencia del cambio en las ganancias de entrada. En la figura 12 se puede visualizar como mejora la respuesta de un sistema cuando el universo de discurso es disminuido de tal forma que se desperdicia la menor cantidad de reglas. 18.
(20) mapa de reglas sintoniz adas del contr olador. FMRLC -mapa de r eglas sintoniz adas del contr olador. 100 S alida del cont rolador difuso. 1 so ufi d r o d al o rt n o cl e d a dli a S. 0. 5. 0. -0. 5. -1 10 5. 0. -50. - 100 -4. 1. - 10. 2. - 0. 5 -1. 4. Er ror. 0.3. 0.3. 0.25. 0.25 Amplitud (r ad/s ). 0.35. 0.2. 0.15. 0.15. 0.1. 0.05. 0.05. 10 15 Tiempo (s egundos). 20. Er ror. 0.2. 0.1. 5. 0. modelo de refer encia, r eferenc ia y res pues ta del sis tema. modelo de refer encia, r eferenc ia y res pues ta del sis tema. 0. 0. 2 0.4. Cambio en error. 0.35. 0. -0.2. 0. 0. -5. ) s/ d a (r d ut pli m A. - 0.4. -2. 0.5. 0. Cambio en err or. 50. 0. 25. 0. 5. 10 15 Tiempo (s egundos). 20. 25. Figura 12. Cambio en el desempeño del sistema al cambiar el universo de discurso de las funciones de pertenencia de entrada.. 1.1.6 Ganancias de entrada del mecanismo de aprendizaje. Para estas ganancias, se sigue un método similar al utilizado para determinar las ganancias de entrada del controlador. Estas ganancias son generalmente mucho más pequeñas que aquellas obtenidas para el controlador. Es normal ya que el modelo de referencia es por definición menos exigente que la referencia.. 1.1.7 Reglas del mecanismo de aprendizaje. Para seleccionar que reglas es mejor utilizar, se empieza utilizando un conjunto de reglas que sean similares a aquellas de la figura 13. Con estas reglas se estará generando un cambio en la base de conocimiento del sistema difuso proporcional a la diferencia que existe entre la salida del sistema y el modelo de referencia.. 19.
(21) FMRLC-t uned fuz zy inverse model mapping betw een inputs and out put. FMRLC-t uned fuzz y inverse model mapping bet ween input s and output 150. 100. 100. Fuz zy invers e model out put. Fuz zy i nv erse model out put. 150. 50 0 -50 -100 -150 200. 0. -50. 1. 0. 0 -100. Change in error (yc ). -150. -1 -200. -2. 2. Error (ye). 1. 0. -1. 200 -2. 100. -100. 0. -200. E rror (y e). Figura 13. Reglas de aprendizaje base.. Change in error (y c). -100. 2. 100. 50. Sin embargo, aunque son intuitivamente adecuadas, no funcionan para todos los sistemas. Pueden existir casos donde errores pequeños requieran acciones más fuertes como en la figura 14: FMR LC-tuned fuzz y inverse model mapping bet ween input s and output. FMR LC-tuned fuzz y invers e model mapping betw een input s and output 150. 100. 100. Fuz zy invers e model output. Fuz zy inv erse model output. 150. 50 0 -50 -100 -150 200. 0. -50. -100. 2 1. 0 -100 Change in error (y c). 0. -1 -200. -2. -150 2. Error (ye). 1. 0. -1. 200 -2. 0. 100. -100. -200. Error (y e). Change i n error (yc ). 100. 50. Figura 14. Reglas de aprendizaje con acciones fuertes para errores pequeños. Causando mayor impacto cuando el error es todavía pequeño. También puede existir el caso contrario, donde errores pequeños requieren acciones muy pequeñas como en la figura 15: FMR LC -t uned f uz zy i nvers e model mapping bet ween input s and out put. FMRLC-t uned fuz zy inverse model mapping betw een inputs and out put 150. 150. Fuz zy invers e model out put. Fuz zy inv erse model out put. 100. 100 50 0 -50 -100. 50. 0. -50. -100. 100. 0. Change in error (y c). -100. -200. -2. -1. 0. 1. 2 -150 2. Error (y e). 0 Error (ye). 200 -2. 100. 0. -100. -200. C hange in error (y c). -150 200. Figura 15. Reglas de aprendizaje con acciones leves para errores pequeños.. 20.
(22) Para estas reglas, cuando los errores son pequeños, el mecanismo de aprendizaje tiende a mantenerse realizando acciones pequeñas, pasando a acciones muy grandes cuando el error crece lo suficiente. En la figura 16 se observa el último caso. Este es utilizado ampliamente por Kevin Passino en su trabajo y realiza una acción similar a la que realiza el conjunto de reglas del primer caso; sin embargo la pendiente es mayor por lo cual el cambio producido por el mecanismo de aprendizaje es más fuerte. FMRL C-map a d e r egla s s into niz ado ras. FMRLC- ma pa de re glas sin ton iza dor as 4 3. 4 2 o rs e v n I lo e d o M le d a d lia S. o sr e vn I ol e d o M l e d a dli a S. 2. 0. -2. -4 4 2. 0.5. -4. Cambio en er ror. -2. -4. 0. -2. 0 -1. -3. 0 .5 0. 1. -0. 5. 0. 0 2 Cambio en er ror. - 0.5 4. Erro r Erro r. -4. -2. Figura 16. Reglas de aprendizaje con pendientes altas. Con este estilo de reglas se logran pendientes tan pronunciadas como se desee sin tener que modificar el universo de discurso. Para observar como puede variar la respuesta de un sistema a partir de las reglas del mecanismo de aprendizaje, en la figura 17 se muestra el cambio del desempeño de un mismo sistema para diferentes reglas. FMR LC -mapa de reglas sintonizadoras. FMR LC-mapa de reglas sintonizadoras. 3. 1 0 -1 -2 -3 -4. -0.4. 0. 0 2. -2 -0.5. 0. 0.4. 2. E rror. 4. 0.5. 2 1 0 -1 -2. -0.4. -3 -4. 0. -2. 0.2 4. Cambio enerror. -0.2 0. 2. Error. 0.2 4. 0.4. E rror. Cambio en error modelode referencia, referenciay respuesta del sistema. modelode referencia, referenciay respuesta del sistema. 0.35. 0. -2. Cambio en error. modelode referencia, referenciay respuesta del sistema. 0.25. 0. -4 -4. -0.2. -2. 2. Salida del Modelo Inverso. 4. 2. Sali da del Modelo Inverso. Sali da del Modelo Inverso. 3. FMR LC-mapa de reglas sintonizadoras. 0.35. 0.3. 0.3. 0.25. 0.25. 0.1. Amplitud (rad/ s). 0.15. Amplitud (rad/s). Amplitud (rad/s). 0.2. 0.2. 0.15. 0.1. 0.1 0.05. 0.05. 0.05. 0. 0. 5. 10 15 Tiempo (segundos). 20. 25. 0. 0.2. 0.15. 0. 0. 5. 10 15 Tiempo (segundos). 20. 25. 0. 5. 10 15 Tiempo (segundos). 20. 25. Figura 17. Cambio en el desempeño del sistema cuando varían las reglas del mecanismo de aprendizaje. 21.
(23) Claramente, este sistema requiere un conjunto de reglas que realice acciones más fuertes cuando el error todavía es pequeño para poder disminuir las oscilaciones.. 1.1.8 Ganancia de aprendizaje. Esta ganancia determina la rapidez con la cual el sistema se adapta. Si es muy pequeña, el sistema se adaptará muy lentamente y no cumplirá con los requerimientos; si es muy grande lo hará demasiado rápido y la respuesta tenderá a ser oscilatoria. Para determinar un buen valor de esta ganancia se puede empezar con valores muy pequeños e irlos aumentando hasta que la respuesta sea oscilatoria. Esto funciona bastante bien para sistemas estables como se observa en la figura 18: Para una ganancia de 0.1:. Para una ganancia de 1.5:. modelo de referenc ia, refer encia y respuest a del sis tema. m odelo de referenc ia, ref erenc ia y res pues t a del s is t em a 1.2. 1. 1. 0.8. 0.8. 0.6. 0.6. 0.4. Amplitud. 1.2. 0.4. 0.2. 0.2. 0. 0. -0.2. -0.2. 0. 50. 100. 150 200 Ti empo (s egundos ). 250. 300. 350. Figura 18. Cambio en la respuesta cuando se aumenta la ganancia de aprendizaje en un sistema lineal. En este ejemplo, cuando la ganancia es 1.5, la respuesta tiende a oscilar un poco, y por ende ganancias mayores resultarían en oscilaciones mayores. La ganancia adecuada se encuentra entre 0.1 y 0.9. Para sistemas inestables esto no funciona de la misma forma ya que si la adaptación es muy lenta, el sistema oscila; y si la adaptación es muy rápida, también. Sin embargo se puede hacer un procedimiento parecido ya que de todas formas existe un rango donde la respuesta no es oscilatoria y este rango se puede encontrar de igual forma que para un sistema estable.. 1.2 ¿APRENDE EL CONTROLADOR ADAPTATIVO? Como ya se había establecido anteriormente, este controlador está basado en los estudios realizados sobre la estructura de control Fuzzy Model Reference Learning Control (FMRLC). Por su nombre, se intuye que esta estructura aprende con el 22.
(24) tiempo y que si el mecanismo de aprendizaje es apagado, la estructura deberá comportarse adecuadamente a partir de los conocimientos que ya había adquirido. Para poder corroborar este comportamiento, se realizaron diferentes pruebas sobre un conjunto de sistemas y utilizando diferente señales de referencia. En la figura 19 se observa el comportamiento para un motor DC con un controlador PD y entradas cuadradas y triangulares. En ambos casos se detiene el aprendizaje para los últimos tres periodos de la señal: modelo de r efer encia, referencia y r espuesta del sistema. modelo de referencia, r efer encia y respuesta del sistema. 0.45. 0. 6. 0.4. 0. 5. 0.35 0. 4. 0.3 0. 3. 0.25. 0.2. 0. 2. 0.15. 0. 1. 0.1 0. 0.05 -0. 1 0. 100. 200. 300. 400. 500. 600. 700. 800. 0 0. 900. 100. 200. 300. 400. 500. 600. 700. 800. 900. Figura 19. Aprendizaje del controlador PD en un motor DC. Como se puede observar, al ser apagado el mecanismo de aprendizaje, el sistema no funciona de forma adecuada y no logra seguir a la referencia. En la figura 20 se muestra el resultado de realizar la misma prueba, sobre el mismo motor DC pero utilizando un controlador PI: modelo de referencia, referenci a y respuesta del si stem a 0.5 0.45 0.4 0.35 0.3 0.25 0.2 0.15 0.1 0.05 0. 0. 100. 200. 300. 400. 500. 600. 700. 800. 900. Figura 20. Aprendizaje del controlador PI en un motor DC. En este caso se logró un aprendizaje ya que aunque el mecanismo de aprendizaje fue apagado, el controlador logra seguir a la señal de referencia. Aún así esto no ocurre en todos los casos (o para todos los sistemas); el motor DC es un sistema lineal y su comportamiento es relativamente simple de controlar. En la figura 21 se muestra el resultado de la misma prueba anterior pero realizada sobre un sistema no lineal (sistema de levitación magnética): 23.
(25) mo de lo d e r efe ren cia , r efer enc ia y r esp ue sta de l s iste ma 0. 6. 0. 5. 0. 4. 0. 3. 0. 2. 0. 1. 0. -0. 1 0. 10 0. 200. 30 0. 4 00. 50 0. 6 00. 70 0. 8 00. 90 0. Figura 21. Aprendizaje del controlador PI en sistema no lineal. En este caso, el controlador se adapta al punto de operación del sistema; pero, cuando se apaga el mecanismo de aprendizaje, no recuerda como controlar todos los puntos de operación y de esta forma no logra seguir a la referencia. Diferentes pruebas fueron realizadas sobre otros sistemas, obteniendo resultados similares. Por esta razón se concluye que el FMRLC es un mecanismo de adaptación donde las reglas que sintoniza funcionan para un punto de operación pero difícilmente logran funcionar para todos.. 1.3 EJEMPLO DE IMPLEMENTACIÓN EN EL CONTROL DE POSICIÓN DE UN MOTOR DC:. Figura 22. Implementación del motor DC. Para controlar la posición de un motor DC, se implementó el controlador en código de Matlab con interfaz a una tarjeta de adquisición de datos en Labview sobre un computador con procesador Pentium IV de 1.4Ghz. En este computador, el tiempo de cómputo del código es de 20ms. Debido a las características del sistema, se selecciona un tiempo de muestreo de 40ms. 24.
(26) El controlador difuso utilizado es de tipo PI, con motor de inferencia mínimo y defusificador centro de gravedad. Para seleccionar las ganancias de salida se siguió el siguiente procedimiento: Como el motor es DC de 5V, la ganancia de salida del controlador es de 5. Como el sensor de la tarjeta de adquisición de datos entrega valores entre 0 y 5V, la ganancia de entrada proporcional es 5 y la ganancia de la entrada integral es 50 = 5*10 siguiendo las recomendaciones establecidas anteriormente. Para el mecanismo de aprendizaje difuso, la ganancia de entrada proporcional es igual a la del controlador y la de la entrada diferencial es 5/0.04=125 pero luego de realizar la primera prueba es reducido ya que se observa que se están desperdiciando reglas. La ganancia de aprendizaje seleccionada es 0.5. La dinámica del modelo de referencia que se utilizó puede observarse en la figura 23. Junto a el se grafica la dinámica del sistema. Como se puede apreciar, el sistema corresponde a un integrador. Step Response. 2 1.8. modelo de refer encia sistema motor DC. 1.6. Amplitude. 1.4 1.2 1 0.8 0.6 0.4 0.2 0 0. 0.5. 1. 1.5. 2. Time (sec). Figura 23. Modelo de referencia para la implementación de un controlador para un motor DC. La base de conocimiento del sistema de aprendizaje se puede observar en la Figura 24.. 25.
(27) FMRLC-mapa de reglas sintonizadoras. Salida del Modelo Inver so. 0.5. 0. 50 -0.5 -5 0 0 -50 5 Error. Cambio en error. Figura 24. Reglas del sistema de aprendizaje para el motor DC. Los resultados de la implementación son altamente satisfactorios ya que demuestran que sin tener un conocimiento matemático de la dinámica del motor DC, el controlador adaptativo pudo controlarlo. La integral del error obtenida durante la duración del experimento fue 26.1944, la integral de la energía utilizada por el controlar durante la duración del experimento fue 81.1540. 5 4.5 4 3.5 3 2.5 2 1.5 1 0.5 0. 0. 500. 1000. 1500. 2000. Figura 25. Resultados de la implementación del controlador adaptativo para la posición de un motor DC.. 26.
(28) FMRLC-mapa de reglas sintonizadas del controlador. Salida del controlador difuso. 5. 0. -5 50 5 0. Cambio en error. 0 -50. -5. E rror. Figura 26. Resultados de la implementación del controlador adaptativo para la posición de un motor DC.. 27.
(29) 2. CONTROLADOR EVOLUTIVO CON ALGORITMOS GENÉTICOS. Este controlador se encarga de sintonizar la base de conocimiento de un controlador difuso. En concreto la acción que realiza es situar el centro de las reglas en una posición indicada dentro del universo de discurso tal que minimice la integral de error durante un tiempo de entrenamiento.. 2.1 MACRO ALGORITMO. El algoritmo que se ha diseñado para optimizar la posición de los centros tiene 4 como base la filosofía del FMRLC y el GMRAC . Esta base resulta de buscar una forma de optimizar las reglas observando el desempeño local de estas. Es decir, cuando se calcula el desempeño general de un controlador difuso, una buena respuesta depende de muchas reglas y se torna muy difícil para un algoritmo genético determinar que reglas están mejorando el desempeño y cuales no. De esta forma, el algoritmo diseñado, aunque es orientado a un entrenamiento offline se basa en el FMRLC en la medida que en cada tiempo de muestreo busca modificar solo las reglas activas. Y se basa en el GMR AC en la medida que evalúa un cierto número de generaciones por tiempo de muestreo para determinar como se modifican estas reglas. Resumiendo, el algoritmo busca el conjunto de reglas activas por tiempo de muestreo que minimizan la integral del error en ese periodo y luego de encontrar ese conjunto de reglas evalúa si efectivamente estas nuevas reglas están mejorando el desempeño general del sistema. De no ser así, las reglas son descartadas y se pasa al siguiente periodo de muestreo. A continuación se muestran los pasos que sigue este algoritmo: i.. 4. Inicialización de variables de entrenamiento: En esta etapa se especifica el conjunto de reglas que se utiliza inicialmente, así como otros parámetros del sistema genético como son: cantidad de generaciones, tamaño de la población, señal de entrenamiento, probabilidad de mutación, cantidad de individuos élite, cantidad de hijos, etc.. W. Lennon, K. Passino; “Genetic Adaptive Identifi cation and Control”; The Ohio State University. 28.
(30) ii.. Durante un tiempo de muestreo se evalúa el desempeño de los individuos de cada generación, teniendo en cuenta que el individuo con mejor desempeño es aquel que logra disminuir la integral del error durante ese tiempo de muestreo.. iii.. Para generar cada generación se seleccionan los individuos élite los cuales son clonados en la siguiente generación y además son los padres de los individuos seleccionados como hijos utilizando el criterio de la ruleta para generarlos. La probabilidad de mutación será definida al principio del algoritmo. Los demás individuos de la nueva población serán generados al azar.. iv.. Se sigue realizando el proceso de optimización hasta cumplir con el número máximo de generaciones o hasta cumplir con el mínimo porcentaje de error requerido para cada tiempo de muestreo.. v.. Se determina si las reglas del individuo con mejor desempeño mejoran el comportamiento del sistema. Para esto se calcula la integral del error para todas las reglas anteriores durante un tiempo de entrenamiento. Luego se calcula la integral del error durante el mismo tiempo de entrenamiento pero utilizando las reglas anteriores e incluyendo una a una (por separado) las reglas que fueron sintonizadas en el individuo con mejor desempeño. Al final, aquellas reglas que al ser integradas al conjunto de reglas anteriores hallan logrado disminuir la integral del error, serán incluidas en el nuevo conjunto de reglas. Las demás reglas serán descartadas.. vi.. Con las nuevas reglas, se determina el estado inicial del siguiente tiempo de muestreo.. vii.. Se sigue con el proceso de optimización hasta estar satisfecho con la respuesta o cumplir con un tiempo de entrenamiento.. viii.. Las reglas que hallan sido sintonizadas serán utilizadas para controlar el sistema en la fase de implementación.. En la figura 27 se puede observar como van desplazándose los centros de las reglas al ir pasando el tiempo de entrenamiento.. 29.
(31) mapa de reglas sintonizadas del controlador. mapa de reglas sintoniz adas del controlador. mapa de reglas sintonizadas del controlador. 5. 3 2 1. 0 100 50. 1. 4 3 2 1. 0 100. 0.5. 0. Cambio en error. -1. 3 2 1. 50. 1. 1. 0.5. 0. -0. 5 -100. 4. 0 100. 50. 0. -50. 5 S ali da del controlador difuso. 4. Salida del controlador difuso. Salida del contr olador difuso. 5. Error. -1. 0. -50. -0.5 -100. Cambio enerror. 0.5. 0. 0. -50. -100. Cambioen error. Error. -0.5 -1. Er ror. mapa de reglas sintonizadas del controlador mapa de reglas sintonizadas del controlador. mapa de reglas sintoniz adas del controlador. 5. 3 2 1. 0 100 50. 1 0.5. 0. 0. -50 Cambioen error. -0.5 -100. -1. 5. 4. S alida del controlador difuso. 4. Salidadel contr olador difuso. S ali da del controlador difuso. 5. 3 2 1. 0 100 50. 1. 2 1. 0 100. 0. -50 Cambio en error. 3. 0.5. 0. Er ror. 4. -0. 5 -100. -1. 50. 1 0.5. 0 0. -50. Error. C ambio en error. -0. 5 -100. -1. E rror. Figura 27. Desplazamiento de reglas causado por el mecanismo evolutivo.. 2.2 ESTRUCTURA Y PAR ÁMETROS DEL ALGORITMO. La estructura de este sistema es graficada en la figura 28. Esta incluye el controlador difuso que es optimizado, un modelo de referencia y el sistema genético que se encarga de fijar la posición de los centros.. 30.
(32) Figura 28. Estructura del controlador difuso evolutivo. El algoritmo genético debe ser capaz de optimizar la base de conocimiento de un controlador difuso cualquiera. La estructura de este controlador difuso es escogida de igual forma que en el caso del mecanismo adaptativo. Los demás parámetros que incluyen los algoritmos genéticos como número de generaciones, tamaño de la población, probabilidad de mutación, etc. Deben tener en cuenta que por cada tiempo de muestreo la población va a ser de solo máximo 4 reglas a la vez y no las 121 reglas totales del controlador difuso, como se puede observar en la figura 29, donde se muestran los tres casos posibles de activación de reglas y en azul las reglas que se activan para cada caso. Para los ejemplos realizados, se utilizaron 12 individuos por generación con máximo 36 generaciones por tiempo de muestreo. La probabilidad de mutación de cada hijo es de 1/3%; se eligen los tres mejores de cada generación para ser clonados en la siguiente y 3 individuos totalmente nuevos por cada generación. También se utiliza un modelo de referencia para que la ganancia del controlador no sea tan alta y la respuesta final sea lo menos oscilatoria posible. El parámetro a minimizar es la integral del error.. 31.
(33) Figura 29. Reglas activas durante un tiempo de muestreo. Como todo algoritmo genético, el resultado depende en parte de las condiciones iniciales. En varias ocasiones se hicieron pruebas con un conocimiento nulo, es decir sin reglas iniciales, el efecto producido es que el algoritmo necesita mucho más tiempo de entrenamiento. Sin embargo no se requiere un conocimiento profundo del sistema para seleccionar un conjunto de reglas iniciales. Se pueden usar cualquiera de los tipos de reglas utilizados en el mecanismo de aprendizaje ya que la mayoría de los sistemas requieren un controlador difuso con reglas que en cierta medida se asemejan a estas. Además estas son simplemente usadas como inicialización ya que el mecanismo evolutivo se encargará de sintonizar adecuadamente la base de conocimiento.. 2.3 EJEMPLO DE IMPLEMENTACIÓN EN EL CONTROL DE POSICIÓN DE UN MOTOR DC:. Figura 30. Implementación del motor DC. Las características del controlador difuso utilizado son iguales a las utilizadas en el método adaptativo. Para sintonizar el controlador difuso, se utiliza una señal de entrenamiento. Esta se puede observar en la figura 31.. 32.
(34) 5 4 .5 4 3 .5 3 2 .5 2 1 .5 1 0 .5 0. 0. 2 0 0. 4 0 0. 6 0 0. 8 0 0. 1 0 0 0. 1 2 0 0. Figura 31. Señal de entrenamiento para el controlador difuso sobre el motor DC. Las reglas iniciales utilizadas para el proceso de sintonización son las mismas que utilizó el método adaptativo en el sistema de aprendizaje: FMRLC-mapa de reglas sintonizadoras. Salida del Modelo Inver so. 0.5. 0. 50 -0.5 -5 0 0 -50 5 Error. Cambio en error. Figura 32. Reglas iniciales utilizadas para sintonizar el controlador difuso. Luego de someterlas al proceso de sintonización, las reglas resultantes son graficadas en la figura 33.. 33.
(35) mapa de reglas sintonizadas del controlador. 100. 0. 50 0 -5. Cambio e n error. Salida del cont rolador dif uso. 5. -50 -5. 0. -100 5. Error. Figura 33. Reglas sintonizadas del controlador difuso. Los resultados de la implementación son altamente satisfactorios, aunque en este caso no pudieron superar a los resultados obtenidos por el método adaptativo. Aún así, la forma de la señal de respuesta es bastante mejor que la obtenida por el método adaptativo ya que no presenta oscilaciones ni sobrepicos. La integral del error obtenida durante la duración del experimento fue 36.4976, la integral de la energía utilizada por el controlar durante la duración del experimento fue 89.9400. 4 .5 4 3 .5 3 2 .5 2 1 .5 1 0 .5 0. 0. 5 00. 1 00 0. 15 00. 20 00. Figura 34. Resultados de la implementación del controlador evolutivo para la posición de un motor DC. 34.
(36) 3. RESULTADOS. Los resultados se dividen en tres partes, la comparación realizada a partir de las simulaciones y la comparación que se llevó a cabo a partir de las implementaciones:. 3.1 SIMULACIONES Las simulaciones son realizadas para validar el comportamiento de los controladores y también para diseñar el sistema de comparación entre los controladores inteligentes y el controlador lineal.. 3.1.1 Método de simulación. Debido a que se desea hacer la simulación de los esquemas de control en un código que pueda ser migrado a varios lenguajes de programación, el sistema de control es implementado en código de MATL AB V6.5.1 Release 13. De esta forma es claro que se necesita implementar un proceso de simulación que permita emular el comportamiento del sistema en 5 tiempo real. Para este efecto se ha utilizado a Runge Kuta de cuarto orden como se ve en la ecuación 6: dx(t)/dt = f(x(t),r(t),t) y = g(x(t),r(t),t). (6). k1 = hf(x(kh),r(kh),kh) k2 = hf(x(kh)+k1/2,r(kh+h/2),kh+h/2) k3 = hf(x(kh)+k2/2,r(kh+h/2),kh+h/2) k4 = hf(x(kh)+k3,r(kh+h),kh+h) x(kh+h) = x(kh)+(k1+2k2+2k3+k4)/6. 5. K. Passino; “Biomimicry for Optimization, Control and Automation”; Springer-Verlag, London, UK, 2005, pp. 118-119. 35.
(37) Este método es preferido por encima del método de Euler ya que logra una mejor precisión en la simulación sin aumentar la complejidad.. 3.1.2 Control de velocidad de un motor DC. •. Modelo. El modelo del motor DC seleccionado fue tomado de:. http://www.engin.umich.edu/group/ctm/examples/motor/motor.html. 6 Figura 35. Motor DC .. Para las siguientes ecuaciones se utilizará esta nomenclatura: kg ⋅ m2 s2 J: momento de inercia del motor = 0.01 b: radio de amortiguación del sistema mecánico = 0.1 Nms N ⋅m Amp k : Constante Electromotriz = 0.01 R: Resistencia eléctrica = 1 Ω L: Inductancia eléctrica = 0.5 H La entrada al sistema (V) es un valor de voltaje DC en Voltios. La salida del sistema (θ) es el valor de la velocidad del rotor. La ecuación 7 corresponde a la dinámica en el espacio de estados del sistema:. 6. tomado de http://www.engin.umich.edu/group/ctm/examples/motor/motor.html 36.
(38) ⎡− b k ⎤ & & ⎤ ⎡0 ⎤⎥ ∂ ⎡ Θ⎤ ⎢ J J ⎥ ⎡ Θ =⎢ ⎥ + ⎢1 V ∂t ⎢⎣ i& ⎥⎦ ⎢ − k − R ⎥ ⎢⎣i& ⎥⎦ ⎢ ⎥ ⎢⎣ L ⎥⎦ ⎢⎣ L L ⎥⎦ Θ& & = [1 0]⎡⎢ ⎤⎥ Θ ⎣ i& ⎦. (7). Para la figura 36 se simula la dinámica del motor, la amplitud está dada en rad/s. En azul se muestra el resultado de realizar la simulación a través de matlab, en rojo el resultado de realizar la simulación con el método de Runge Kuta mencionado.. Figura 36. Dinámica del motor DC. Se observa que la diferencia entre la simulación realizada por la herramienta de matalab y la realizada con runge ruta de cuarto orden es mínima. • Requerimientos de diseño del controlador. En los requerimientos del controlador están: Error en estado estacionario menor a 1%, tiempo de establecimiento de 2s y sobrepaso menor al 5%. • Selección de parámetros para el FMRLC. Primero se establece el tipo de controlador difuso. Para el motor DC se ha utilizado el controlador difuso PI, ya que los resultados alcanzados con este controlador son mejores. Luego se realiza el procedimiento explicado en 2.2, derivando los siguientes parámetros utilizados para controlar el sistema: o Modelo de referencia. El modelo de referencia que se elige para el control del sistema es un sistema de primer orden con ganancia unitaria 37.
(39) y tiempo de respuesta de 0.4s lo cual es suficiente para obtener un tiempo de establecimiento de 2s como se indica en los requerimientos. o Tiempo de muestreo. El tiempo de muestreo del controlador se escoge como la décima parte del tiempo de respuesta del modelo de referencia (ya que el modelo de referencia es más rápido que el sistema). Esto nos da un tiempo de muestreo de 0.04s. o Ganancias del controlador difuso. Primero se siguen las recomendaciones con lo cual obtenemos ganancias de 1 (ya que la entrada máxima es 1) para la entrada proporcional y ganancias de 100 para la entrada integral. Con estas ganancias se observan los valores máximos que toman las entradas (mientras el sistema no se convierta en inestable). Estos valores máximos fueron 0.8 y 80. Para la ganancia de salida se tomó 5 ya que el motor que se simula es de 5v. o Reglas de aprendizaje. Las reglas de aprendizaje que produjeron los mejores resultados se observan en la figura 37. Estas reglas corresponden a aquellas que requieren una pendiente mas pronunciada. De esta forma el aprendizaje es más pronunciado en los extremos y su acción disminuye rápidamente al acercarse el error a 0. FMRLC-mapa de reg las sintoni zadoras. 4 3. o s r e v In ol e d o M l e d a di l a S. 2 1 0 -1 -2 -3 0.5 -4 3. 0 2. 1. 0. -1. -2. -3. -0.5. Ca mbi o en error. Error. Figura 37. Reglas de aprendizaje del motor DC. o Ganancias del sistema difuso de aprendizaje. Siguiendo los pasos anteriores, las ganancias de entrada son 0.5 para el error y 2.5 para el cambio del error. Aumentando la ganancia hasta que la respuesta sea satisfactoria sin ser oscilatoria, el mejor resultado se obtiene con 3.5. •. Selección de parámetros para el Algoritmo Genético. 38.
(40) o Reglas Iniciales. Las reglas que se eligieron como valores iniciales son mostradas en la figura 38: FMRLC-mapa de reg las sintoni zadoras. 4 3. o s r e v n I ol e d o M l e d a di l a S. 2 1 0 -1 -2 -3 0.5 -4 3. 0 2. 1. 0. -1. Ca mbi o en error. -2. -3. -0.5 Error. Figura 38. Reglas iniciales del motor DC. o Señal de entrenamiento. La señal usada como entrenamiento y la respuesta obtenida por el conjunto de reglas sintonizado se encuentra en la figura 39, seguido en la figura 40 por el conjunto de reglas sintonizadas.. Figura 39. Señal de entrenamiento para el control de velocidad del motor DC.. 39.
(41) Figura 40. Reglas sintonizadas para el control de velocidad del motor DC. •. Respuesta ante una señal de pulsos cuadrados para el controlador adaptativo: En la figura 41 se muestra la respuesta del sistema ante una señal de pulsos cuadrados, junto a la acción del controlador que genera esta respuesta. En la figura 42 se muestran las reglas sintonizadas junto a la señal de salida del sistema de aprendizaje que se encargó de sintonizarla. modelo de referencia, referenci a y respuest a del sistema. 0.5. señal de cont rol. 6. 0.45 5. 0.4 0.35 ) s/ d (ra d u it pl m A. 4. 0.3. ) st l o (V ej at ol V. 0.25 0.2 0.15 0.1. 3. 2. 1. 0.05 0. 0. 50. 100 150 Tiempo (segundos). 200. 0. 250. 0. 50. 100 150 Tiempo (segundos). 200. 250. Figura 41. Respuesta del motor DC ante una señal de pulsos cuadrados usando el controlador adaptativo.. 40.
(42) FMRLC-mapa de reglas sint oni zadas del cont rolador. señal que cambia el centro de las regl as. 3 2.5 5 o s uf di or d al or nt o c el d a dli a S. 2. 4. 1.5. 3. 1. 2. 0.5 0. 1. -0.5. 0 100. -1 50. 0.5 -1.5. 0. 0. -50 Cambio en error. -100. -0. 5. -2 E rror. 0. 50. 100. 150. 200. 250. Figura 42. Reglas sintonizadas del motor DC para una señal de pulsos cuadrados usando el controlador adaptativo. •. Respuesta ante una señal de pulsos cuadrados para el controlador evolutivo: En la figura 43 se muestra la respuesta del sistema ante una señal de pulsos cuadrados, junto a la acción del controlador que genera esta respuesta. model o de referencia, referencia y respuesta del sist ema. 0.5. señal de cont rol. 6. 0. 45 5. 0.4 0. 35 ) s/ d a (r d ut i pl m A. 4. 0.3. ) st l o (V ej at ol V. 0. 25 0.2 0. 15 0.1. 3. 2. 1. 0. 05 0. 0. 50. 100 150 Tiempo (segundos). 200. 0. 250. 0. 50. 100 150 Tiempo (segundos). 200. 250. Figura 43. Respuesta del motor DC ante una señal de pulsos cuadrados usando el controlador evolutivo. • Comparación con un controlador lineal: El controlador lineal diseñado para este sistema es un PID con constantes Kp = 100, Ki = 1 y Kd = 20. La figura 44 muestra la respuesta del sistema al ser controlada por este PID.. 41.
(43) Figura 44. Controlador lineal del motor DC. Como método de comparación se realizaron simulaciones de 60 segundos sobre el sistema y se calculó la integral del error y la integral de la energía utilizada por el controlador. En la tabla 1 se encuentran los resultados para los tres controladores. Tabla 1. Comparación de los controladores inteligentes y el controlador lineal en el motor DC. SISTEMA. Parámetros. Integral de la energía Velocidad de un consumida motor DC Integral del error. FMRLC. GENETICO. LINEAL. 4.2971e+004. 5.8096e+004. 1.7715e+005. 46.2601. 60.2887. 55.8552. Se observa que los controladores difusos logran tener un error comparable con el del PID. El controlador adaptativo FMRLC incluso disminuye el error en comparación al PID y el evolutivo alcanza un error no tan distante del lineal. Esto es conseguido por los dos controladores con un consumo de energía de menos de la mitad que aquel consumido por el PID. En conclusión los controladores difusos lograron un buen desempeño con un consumo de energía considerablemente menor.. 3.1.3 Control del ángulo de un péndulo invertido. •. Modelo. El modelo del péndulo invertido seleccionado fue tomado de:. http://www.engin.umich.edu/group/ctm/examples/pend/invpen.html 42.
(44) Figura 45. Péndulo invertido7. Para las siguientes ecuaciones se utilizará esta nomenclatura: M: Masa del carro = 0.5 kg. m: Masa del péndulo = 0.5 kg. b: Fricción del carro = 0.1 Nm/s. L: Longitud al centro de masa del péndulo = 0.3 m. 2 I: Inercia del péndulo = 0.006 kgm .. F: Fuerza aplicada al carro en Newtons (N) (Entrada). x: posición del carro. Θ: Angulo del péndulo desde la vertical en radianes (rad) (salida). Para nuestro caso, no tendremos en cuenta la posición del carro. Sin embargo el ángulo del péndulo cambia debido a la acción de una fuerza aplicada al carro. La ecuación 8 que caracteriza el movimiento del sistema carro-péndulo está linealizado para un ángulo del péndulo cercano a 0º desde la posición vertical de equilibrio.. 7. tomado de http://www.engin.umich.edu/group/ctm/examples/pend/invpen.html 43.
(45) 1 ⎡0 ⎢ ⎡ x& ⎤ ⎢ − (I + mI 2 )b ⎢ &x& ⎥ ⎢ 0 2 ⎢ ⎥ = ⎢ I ( M + m ) + MmI ⎢Θ& ⎥ 0 0 ⎢ ⎥ ⎢ && ⎦⎥ ⎢ − mlb ⎣⎢Θ ⎢0 2 ⎢⎣ I ( M + m ) + MmI ⎡x ⎤ ⎢& ⎥ x y = [0 0 1 0]⎢ ⎥ + [0]u ⎢Θ ⎥ ⎢& ⎥ ⎢⎣Θ ⎥⎦. 0 2. m gl. 2 2. I (M + m ) + MmI 0 mgl ( M + m ) I (M + m ) + MmI 2. 0⎤ 0 ⎤ ⎡ ⎥ ⎢ ⎥ 2 ⎡x ⎤ ⎢ I + mI ⎥ ⎥ 0 ⎢ ⎥ ⎢ I (M + m) + MmI 2 ⎥ ⎥ x& ⎥F ⎥⎢ ⎥ + ⎢ 1⎥ ⎢ Θ⎥ ⎢ 0 ⎥ ⎥ ⎥ ⎢⎢ Θ & ⎥⎥ ⎢ mI 0 ⎥⎣ ⎦ ⎢ ⎥ 2 ⎢⎣ I (M + m) + MmI ⎥⎦ ⎥⎦. (8). En la figura 46 se observa la simulación asumiendo una fuerza constante aplicada sobre el carro de 0.2 N. La amplitud está dada en radianes y la longitud está dada en segundos. También se realiza una comparación entre la simulación realizada por matlab y la realizada con el método de Runge Kuta de 4º orden.. Figura 46. Dinámica del péndulo invertido. Se observa que la diferencia entre la simulación realizada por la herramienta de matalab y la realizada con runge ruta de cuarto orden es mínima. • Requerimientos de diseño del controlador. En los requerimientos del controlador están: Error en estado estacionario menor a 2%, tiempo de establecimiento de 5s y sobrepaso menor al 0.35 rads de la vertical. La referencia del sistema estará fijada en 0º y el controlador deberá ser capaz de mantener al sistema lo más cercano posible de la vertical como le sea posible sin importar las perturbaciones a las cuales será sometido.. 44.
(46) • Selección de parámetros para el FMRLC. Primero se establece el tipo de controlador difuso. Para el péndulo invertido se ha utilizado el controlador difuso PD, ya que los resultados alcanzados con este controlador son mejores. Luego se realiza el procedimiento explicado en 2.2, derivando los siguientes parámetros utilizados para controlar el sistema: o Modelo de referencia. En este caso se podría utilizar un modelo de referencia en forma de un controlador lineal que responda a perturbaciones, pero se elije no utilizar modelo de referencia ya que se trata de mantener el sistema lo más cercano posible a 0º en cualquier momento de operación. o Tiempo de muestreo. El tiempo de muestreo del controlador se escoge como la décima parte del tiempo de respuesta del sistema. Esto nos da un tiempo de muestreo de 0.05s. o Ganancias del controlador difuso. Primero se siguen las recomendaciones con lo cual obtenemos ganancias de 0.35 (ya que el valor máximo de error permitido es 0.35 rads) para la entrada proporcional. Para la entrada derivativa, se establece como la ganancia de entrada error dividida por el tiempo de muestreo. Sin embargo, luego de realizar las primeras pruebas con esta ganancia se observa que el cambio en el error toma valores inferiores a 4. Por este motivo el valor de la ganancia que se estableció finalmente es 4. Para el sistema del péndulo invertido no hay un límite establecido en la cantidad de fuerza que se le puede aplicar al sistema. Aún así no se desea que la fuerza que aplique el controlador supere 1N. o Reglas de aprendizaje. Las reglas de aprendizaje que produjeron los mejores resultados se observan en la figura 47. Estas reglas corresponden a aquellas que requieren acciones más fuertes cuando el error todavía es pequeño. FM RLC-mapa de reglas del modelo inverso. 6 o sr e v nI ol e d o M l e d a dli a S. 4 2 0 -2 -4 -6 1 0. 5. 0.4 0. 2. 0. 0. -0.5 Cambi o en error. -0.2 -1. -0. 4. E rror. Figura 47. Reglas de aprendizaje del péndulo invertido. 45.
Documento similar
Para recibir todos los números de referencia en un solo correo electrónico, es necesario que las solicitudes estén cumplimentadas y sean todos los datos válidos, incluido el
Para ello, trabajaremos con una colección de cartas redactadas desde allí, impresa en Évora en 1598 y otros documentos jesuitas: el Sumario de las cosas de Japón (1583),
Habiendo organizado un movimiento revolucionario en Valencia a principios de 1929 y persistido en las reuniones conspirativo-constitucionalistas desde entonces —cierto que a aquellas
Ciaurriz quien, durante su primer arlo de estancia en Loyola 40 , catalogó sus fondos siguiendo la división previa a la que nos hemos referido; y si esta labor fue de
En este sentido, puede defenderse que, si la Administración está habilitada normativamente para actuar en una determinada materia mediante actuaciones formales, ejerciendo
En la parte central de la línea, entre los planes de gobierno o dirección política, en el extremo izquierdo, y los planes reguladores del uso del suelo (urbanísticos y
Por lo que se presenta una propuesta de controlador inteligente para la posición angular de un panel solar, en donde la señal de referencia del controlador se obtiene de la salida
Secondary. The target possesses a receiver and transmitter system, which is able to answer to the request of the radar. This type of