Vous êtes sur la page 1sur 8

Control Fuzzy de Iluminacin mediante MATLAB

Jcome Fernando/ Reyes Daniel fher_jacome@hotmail.com / darefrog@hotmail.com ESPE 17 de abril de 2012

Resumen: En la presente publicacin, abarcamos el tema del control difuso (fuzzy control), para lo cual, primeramente hacemos una evaluacin de la importancia de este tipo de control y su auge en los tiempos actuales. Adems plasmamos una explicacin general de la lgica fuzzy, como funciona, sus elementos importantes y la ventaja que tiene sobre los controles clsicos. Es importante destacar los pasos que llevamos a cabo en el diseo de este tipo de controladores, por lo que indicamos cada uno de estas etapas mostrando los resultados que nosotros obtuvimos en la fuzzificacion, evaluacin de reglas, y la desfuzzificacion. MATLAB es una herramienta que nos facilita el diseo de la lgica fuzzy, por lo que en el presente documento se explica cmo utilizar los comandos de la herramienta fuzzy para utilizarla en el diseo de los controladores. Es importante determinar el funcionamiento de nuestro controlador, si cumple con los requerimientos y con nuestras expectativas. Por ello realizamos un anlisis para determinar su trabajo. Abstract: In this paper, we cover the topic of fuzzy control, to do so we first make an evaluation of the importance of this type of control and its development in modern times. Also we give a general explanation of the fuzzy logic, how it works, their main elements and the advantages it has over classic control. It is important to go over the steps we took in the design of this type of controller, so we cover each one of these steps showing the results that we got in the processes of fuzzyfication, rule evaluation, and defuzzyfication. MATLAB is a tool that helps us with the design of the fuzzy logic, which is why in this paper we explain how to use the commands of the fuzzy toolbox for designing fuzzy controllers.

Control Fuzzy de Iluminacin

mediante MATLAB

Control Fuzzy de Iluminacin mediante MATLAB


Control Fuzzy mediante MATLAB
INTRODUCCIN En los ltimos tiempos, el control fuzzy est tomando una alta aceptacin en el desarrollo de equipo: cmaras de video fuzzy, lavadoras que emplean fuzzy logic para determinar las condiciones de lavado, frenos ABS con fuzzy logic para vehculos, sistemas de aire acondicionado, entre otros. El pionero que utiliza este tipo de sistemas, son las empresas japonesas. Generalidades El funcionamiento general de un controlador fuzzy es igual que otros controladores, toman los valores de las variables de entrada del sistema, y segn ciertas reglas, o condiciones, que nosotros imponemos, deciden como modificar las variables de salida, afectando el comportamiento de la planta. Este sistema basado en reglas en el control fuzzy, es de la siguiente manera:

El problema de utilizar la lgica difusa, es la complejidad de representar el conocimiento en estas reglas, muchas veces esbozamos reglas con calificativos no demasiado precisos. Con respecto a la lgica, se crea nuevas alternativas a la lgica tradicional, tal y como la conocemos. Una proposicin no siempre es verdadera, o falsa; sino que la misma puede tener un grado de veracidad. Observemos que lo descrito anteriormente se basa ms en el comportamiento natural de las personas, y deja de aferrarse a un cierto nmero de ecuaciones y condiciones que usualmente se utilizan en el control 'clsico'. Al utilizar el control fuzzy, observamos que ya no procesamos ecuaciones, nmeros o tablas, sino reglas. De esta manera se puede realizar operaciones entre palabras como, ms bajo, subir un poquito, bajar un poquito, o este tipo de acciones que realizamos los humanos naturalmente para realizar un control. Variable Iluminacin N de personas Potencia de foco E/S Entrada Entrada Salida

Tabla 1. Variables del sistema Ciclos utilizados en el control fuzzy. El proceso cclico puede ser dividido en tres grupos, de la siguiente manera.

Pgina 2

Control Fuzzy de Iluminacin

mediante MATLAB

Fuzzification

Media Alta Extrema

38-88 85-95 92-100

Tabla 2. Rango de valores de las funciones de membreca de iluminacin.


Defuzzification Evaluacin de Reglas

En este punto, es importante destacar el uso de trapezoides y tringulos para formar nuestros conjuntos difusos, usamos trapezoides para los

Fuzzification Esta es la primera parte del proceso, se procede a determinar el grado de pertenencia de las variables de entrada estos son los denominados fuzzy inputs. En nuestro caso, nuestras entradas (inputs) son la cantidad de luminosidad del ambiente, y el nmero de personas que se encuentran en la habitacin. Teniendo lo siguiente:

extremos y tringulos para las funciones del medio. Observando la figura, podemos decir que los trapezoides abarcan ms puntos de pertenencia, el triangulo en cambio, abarca un intervalo de puntos de pertenencia y se establece su punto medio.

Figura 2. Funciones de membreca de la entrada N de personas Con Figura 1. Funciones de membreca de la entrada Iluminacin. En esta figura, de podemos nuestro observar porcentaje que de respecto al nmero de personas

establecimos cinco grupos: vaco, poca gente, medio lleno, lleno, repleto. Nombre de la funcin de membreca Vacio Poca gente Medio lleno Lleno Repleto Rango de valores (N de personas) 0-3 2-7 6-12 11-16 15-20

dependiendo

iluminacin, hemos determinado cinco grupos de pertenencia. escasa, baja, media, alta, extrema. Los rangos para cada funcin de membreca se obtuvieron experimentalmente variando la iluminacin y observando la respuesta de los sensores LDR. Nombre de la funcin de membreca Escasa Baja Rango de valores (%) 0-20 18-40

Tabla 3. Rango de valores de las funciones de membreca de N de personas. Se consider un mximo de 20 personas para nuestra entrada.

Pgina 3

Control Fuzzy de Iluminacin

mediante MATLAB

Evaluacin de reglas Una vez realizada la fuzzificacion, se est en condiciones de evaluar en qu condicin se encuentra nuestro sistema, se obtiene el grado de verdad o peso para estas condiciones. El peso de la regla estar dado, entonces, por la veracidad de sus antecedentes. As como las variables de entrada tambin existen las de salida, estas son las fuzzy outputs. A cada una de estas se le asigna como valor, o grado de aplicabilidad, el mximo valor entre todas las reglas que la mencionan, de manera que al finalizar toda la evaluacin, queda cada fuzzy output con su valor. Las salidas que nos propusimos son:

Los rangos de valores para la salida se obtuvieron experimentalmente considerando la respuesta de iluminacin del foco dependiendo del ciclo de trabajo enviado. Las reglas que nosotros propusimos son las siguientes:

Figura 4. Reglas de operacin Defuzzificacion A cada fuzzy output, se le asign el mximo valor de verdad o peso de las reglas que la mencionan como consecuente. Ahora quedan varias fuzzy outputs para cada variable de salida, cada una con un grado de aplicabilidad,

Figura 3. Funciones de membreca de la variable de salida Potencia del foco

pero; ?Cual sera el valor de la salida?. Entonces, internamente, se realiza un promedio ponderado entre todas las salidas que le corresponden a una variable de salida, considerando las superficies de estas, tomando

Nombre de la funcin de membreca Muy baja Baja Media Alta Muy alta

Rango de valores (%Ciclo de trabajo) 20 - 40 37 - 51 48 - 64 60 - 78 75 - 100

el centro de gravedad de las mismas como el nuevo valor de la variable de salida en consideracin.

Tabla 4. Rango de valores de las funciones de membreca de potencia de foco

Pgina 4

Control Fuzzy de Iluminacin

mediante MATLAB

Figura 6. Men Principal del Fuzzy Toolbox, FIS Editor

Al hacer doble click sobre el grfico de inputs, agregamos entradas a nuestro controlador fuzzy, de igual manera lo realizamos con las salidas. Figura 5. Salida del controlador fuzzy en funcin de la iluminacin y el N de personas En este cuadro, en podemos resumen observar de el Para agregar las reglas, hacemos doble click en el cuadro central. Ahora, en nuestro cdigo, usamos los

comportamiento entreguemos.

nuestro

sistema, dependiendo de las entradas que le

siguientes comandos.

fs=readfis('Modelocuatro');

Control Fuzzy en MATLAB El manejo del control fuzzy utilizando matlab es verdaderamente sencillo. Para determinar las entradas, salidas, reglas y verificar la superficie. Colocamos el cdigo fuzzy en la pantalla de matlab, y se abre la siguiente pantalla:

Este comando, me ayuda a 'cargar' el modelo creado con la herramienta fuzzy, en este caso nuestro modelo se llama Modelocuatro. A este lo almacenamos en una variable denominada fs.

pwm=evalfis([ldrt setp],fs)

Este comando enva las entradas hacia el controlador fuzzy, en este caso enviamos el valor que leemos en los sensores y el nmero de personas. En este comando, tambin se especifica el nombre del objeto que creamos anteriormente, en este caso fs. La salida de este comando, es el valor de mi fuzzy output, en nuestro caso lo almacenamos en una variable llamada pwm para trabajarlo y controlar el valor del PWM mediante nuestro microcontrolador.

Pgina 5

Control Fuzzy de Iluminacin

mediante MATLAB

Anlisis de Resultados Nuestra prioridad en la implementacin de nuestro controlador fuzzy, es el nmero de personas. Ya que si observamos el grfico de las superficies, podemos ver que la altura (valor de potencia del foco) se basa sobre todo en los rangos del nmero de personas.

Figura 7. Grfica LDR vs Tiempo para una entrada de 7 personas En la figura anterior, podemos observar que el comportamiento de la planta es muy bueno, siendo que el controlador satisface claramente con nuestras expectativas. Posee un tiempo de estabilizacin muy bajo, el sobre impulso generado es imperceptible a la vista.

Como debe ser normalmente, a mayor nmero de personas, el nivel de iluminacin debe ser mayor. Adems si observamos. El nivel de iluminacin se mantiene en un nivel medio segn el nmero de personas, lo que implementando en un sistema real puede impactar en el ahorro energtico. Una de las metas principales que actualmente la domtica persigue. Figura 8. Grfica PWM vs Tiempo para una entrada de 7 personas

No existen oscilaciones en el valor de PWM, lo que nos entrega una iluminacin constante.

Pgina 6

Control Fuzzy de Iluminacin

mediante MATLAB

rpidamente y se adapta al valor necesario que cumple con las condiciones dadas. Podemos concluir, que el control difuso es de fcil implementacin, gran rapidez de respuesta, sistema inteligente y con un error muy bajo. Conclusiones La implementacin de un sistema fuzzy es muy sencillo, ya que no es necesario realizar un modelo exacto, sino que basta con entender en esencia el comportamiento de la planta. Esto Figura 9. Grfica LDR vs Tiempo para una entrada de 11 personas con perturbaciones externas ayuda sobre todo cuando tenemos un comportamiento no lineal facilitando el proceso de modelado. El control difuso se asemeja en al lo

comportamiento

humano,

referente con la toma de decisiones, esto ha dado paso al estudio de la inteligencia artificial. La herramienta de MATLAB para crear el controlador difuso es simple y fcil de usar, nos permite plantear rpidamente un controlador y probarlo en el entorno. En comparacin con el controlador PID tiene una mejor rapidez y un reducido error en estado estable. Figura 10. Grfica PWM vs Tiempo para una entrada de 11 personas con perturbaciones externas En la grfica anterior podemos observar que al existir una perturbacin, (mayor o menor iluminacin externa) el valor de PWM cambia Bibliografa La ventaja del control difuso, es que el sistema reacciona rpidamente a los cambios, se adapta con facilidad. Esto dado que tiene control sobre un rango mayor de condiciones de operacin.

Pgina 7

Control Fuzzy de Iluminacin

mediante MATLAB

[1] REZNIK, L. Fuzzy Controllers. 1997 [2] PASSINO, K. and YURKOVICH, S. Fuzzy Control 1998, Ed. Addison Wesley Longman [3] http://www.edutecne.utn.edu.ar/fuzzy_c ontrol/UTN-FCONTR.pdf [4] http://www.galeon.com/hamd/pdf/1libr o1.pdf

Pgina 8

Vous aimerez peut-être aussi