Está en la página 1de 8

Control Fuzzy de Iluminación

mediante MATLAB

Jácome Fernando/ Reyes Daniel ESPE  17 de abril de 2012


fher_jacome@hotmail.com / darefrog@hotmail.com

Resumen:

En la presente publicación, abarcamos el tema del control difuso (fuzzy control), para lo cual,
primeramente hacemos una evaluación de la importancia de este tipo de control y su auge en los
tiempos actuales.

Además plasmamos una explicación general de la lógica fuzzy, como funciona, sus elementos
importantes y la ventaja que tiene sobre los controles clásicos.

Es importante destacar los pasos que llevamos a cabo en el diseño de este tipo de controladores,
por lo que indicamos cada uno de estas etapas mostrando los resultados que nosotros obtuvimos
en la fuzzificacion, evaluación de reglas, y la desfuzzificacion.

MATLAB es una herramienta que nos facilita el diseño de la lógica fuzzy, por lo que en el presente
documento se explica cómo utilizar los comandos de la herramienta fuzzy para utilizarla en el
diseño de los controladores.

Es importante determinar el funcionamiento de nuestro controlador, si cumple con los


requerimientos y con nuestras expectativas. Por ello realizamos un análisis 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 Iluminación mediante MATLAB

El problema de utilizar la lógica difusa, es la


Control Fuzzy complejidad de representar el conocimiento en

de Iluminación
estas reglas, muchas veces esbozamos reglas
con calificativos no demasiado precisos.

mediante Con respecto a la lógica, se crea nuevas


alternativas a la lógica tradicional, tal y como la
MATLAB conocemos. Una proposición no siempre es
verdadera, o falsa; sino que la misma puede
Control Fuzzy mediante MATLAB tener un grado de veracidad.

Observemos que lo descrito anteriormente se


basa más en el comportamiento natural de las
INTRODUCCIÓN
personas, y deja de aferrarse a un cierto
En los últimos tiempos, el control fuzzy está número de ecuaciones y condiciones que
tomando una alta aceptación en el desarrollo usualmente se utilizan en el control 'clásico'.
de equipo: cámaras de video fuzzy, lavadoras
que emplean fuzzy logic para determinar las Al utilizar el control fuzzy, observamos que ya
condiciones de lavado, frenos ABS con fuzzy no procesamos ecuaciones, números o tablas,
logic para vehículos, sistemas de aire sino reglas. De esta manera se puede realizar
acondicionado, entre otros. El pionero que operaciones entre palabras como, más bajo,
utiliza este tipo de sistemas, son las empresas subir un poquito, bajar un poquito, o este tipo
japonesas. de acciones que realizamos los humanos
naturalmente para realizar un control.
Generalidades
Variable E/S
El funcionamiento general de un controlador Iluminación Entrada
fuzzy es igual que otros controladores, toman N° de personas Entrada
los valores de las variables de entrada del Potencia de Salida
sistema, y según ciertas reglas, o condiciones, foco
que nosotros imponemos, deciden como
modificar las variables de salida, afectando el Tabla 1. Variables del sistema

comportamiento de la planta.
Ciclos utilizados en el control fuzzy.
Este sistema basado en reglas en el control El proceso cíclico puede ser dividido en tres
fuzzy, es de la siguiente manera: grupos, de la siguiente manera.

 Página 2
 Control Fuzzy de Iluminación mediante MATLAB

Media 38-88
Fuzzification
Alta 85-95
Extrema 92-100

Tabla 2. Rango de valores de las funciones de


membrecía de iluminación.
Evaluación de
Defuzzification
Reglas
En este punto, es importante destacar el uso de
trapezoides y triángulos para formar nuestros
conjuntos difusos, usamos trapezoides para los
Fuzzification extremos y triángulos para las funciones del
medio. Observando la figura, podemos decir
Esta es la primera parte del proceso, se procede
que los trapezoides abarcan más puntos de
a determinar el grado de pertenencia de las
pertenencia, el triangulo en cambio, abarca un
variables de entrada estos son los denominados
intervalo de puntos de pertenencia y se
fuzzy inputs.
establece su punto medio.
En nuestro caso, nuestras entradas (inputs) son
la cantidad de luminosidad del ambiente, y el
número de personas que se encuentran en la
habitación. Teniendo lo siguiente:

Figura 2. Funciones de membrecía de la


entrada N° de personas

Con respecto al número de personas


establecimos cinco grupos: vacío, poca gente,
Figura 1. Funciones de membrecía de la entrada
medio lleno, lleno, repleto.
Iluminación.

Nombre de la función Rango de valores (N°


En esta figura, podemos observar que
de membrecía de personas)
dependiendo de nuestro porcentaje de
Vacio 0-3
iluminación, hemos determinado cinco grupos
Poca gente 2-7
de pertenencia. escasa, baja, media, alta, Medio lleno 6-12
extrema. Los rangos para cada función de Lleno 11-16
membrecía se obtuvieron experimentalmente Repleto 15-20
variando la iluminación y observando la
respuesta de los sensores LDR. Tabla 3. Rango de valores de las funciones de
membrecía de N° de personas.
Nombre de la función Rango de valores (%)
Se consideró un máximo de 20 personas para
de membrecía
nuestra entrada.
Escasa 0-20
Baja 18-40

 Página 3
 Control Fuzzy de Iluminación mediante MATLAB

Evaluación de reglas Los rangos de valores para la salida se


obtuvieron experimentalmente considerando la
Una vez realizada la fuzzificacion, se está en
respuesta de iluminación del foco dependiendo
condiciones de evaluar en qué condición se
del ciclo de trabajo enviado.
encuentra nuestro sistema, se obtiene el grado
de verdad o peso para estas condiciones. Las reglas que nosotros propusimos son las
siguientes:
El peso de la regla estará dado, entonces, por la
veracidad de sus antecedentes.

Así como las variables de entrada también


existen las de salida, estas son las fuzzy outputs.
A cada una de estas se le asigna como valor, o
grado de aplicabilidad, el máximo valor entre
todas las reglas que la mencionan, de manera
que al finalizar toda la evaluación, queda cada
fuzzy output con su valor.
Figura 4. Reglas de operación
Las salidas que nos propusimos son:

Defuzzificacion

A cada fuzzy output, se le asignó el máximo


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 membrecía de la variable pero; ?Cual sería el valor de la salida?.

de salida Potencia del foco


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
el centro de gravedad de las mismas como el
Nombre de la función Rango de valores
nuevo valor de la variable de salida en
de membrecía (%Ciclo de trabajo)
consideración.
Muy baja 20 - 40
Baja 37 - 51
Media 48 - 64
Alta 60 - 78
Muy alta 75 - 100

Tabla 4. Rango de valores de las funciones de


membrecía de potencia de foco

 Página 4
 Control Fuzzy de Iluminación mediante MATLAB

Figura 6. Menú Principal del Fuzzy Toolbox, FIS


Editor

Al hacer doble click sobre el gráfico de inputs,


agregamos entradas a nuestro controlador
fuzzy, de igual manera lo realizamos con las
salidas.
Figura 5. Salida del controlador fuzzy en función
de la iluminación y el N° de personas Para agregar las reglas, hacemos doble click en
el cuadro central.
En este cuadro, podemos observar el
comportamiento en resumen de nuestro Ahora, en nuestro código, usamos los

sistema, dependiendo de las entradas que le siguientes comandos.


entreguemos.
 fs=readfis('Modelocuatro');

Control Fuzzy en MATLAB Este comando, me ayuda a 'cargar' el


El manejo del control fuzzy utilizando matlab es modelo creado con la herramienta fuzzy,
verdaderamente sencillo. en este caso nuestro modelo se llama
Modelocuatro. A este lo almacenamos en
Para determinar las entradas, salidas, reglas y una variable denominada fs.
verificar la superficie. Colocamos el código
fuzzy en la pantalla de matlab, y se abre la
 pwm=evalfis([ldrt setp],fs)

siguiente pantalla:
Este comando envía las entradas hacia el
controlador fuzzy, en este caso enviamos
el valor que leemos en los sensores y el
número de personas. En este comando,
también 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.

 Página 5
 Control Fuzzy de Iluminación mediante MATLAB

Análisis de Resultados Figura 7. Gráfica LDR vs Tiempo para una


entrada de 7 personas
Nuestra prioridad en la implementación de
nuestro controlador fuzzy, es el número de En la figura anterior, podemos observar que el
personas. Ya que si observamos el gráfico de las comportamiento de la planta es muy bueno,
superficies, podemos ver que la altura (valor de siendo que el controlador satisface claramente
potencia del foco) se basa sobre todo en los con nuestras expectativas. Posee un tiempo de
rangos del número de personas. estabilización muy bajo, el sobre impulso
generado es imperceptible a la vista.

Como debe ser normalmente, a mayor número


de personas, el nivel de iluminación debe ser
mayor. Además si observamos. El nivel de
iluminación se mantiene en un nivel medio
según el número de personas, lo que
implementando en un sistema real puede
impactar en el ahorro energético. Una de las
metas principales que actualmente la domótica
persigue.

Figura 8. Gráfica PWM vs Tiempo para una


entrada de 7 personas

No existen oscilaciones en el valor de PWM, lo


que nos entrega una iluminación constante.

 Página 6
 Control Fuzzy de Iluminación mediante MATLAB

rápidamente y se adapta al valor necesario que


cumple con las condiciones dadas.
Podemos concluir, que el control difuso es de
fácil implementación, gran rapidez de
respuesta, sistema inteligente y con un error
muy bajo.

Conclusiones

 La implementación 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
ayuda sobre todo cuando tenemos un
Figura 9. Gráfica LDR vs Tiempo para una
comportamiento no lineal facilitando el
entrada de 11 personas con perturbaciones
proceso de modelado.
externas

 El control difuso se asemeja al


comportamiento humano, en lo
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 fácil
de usar, nos permite plantear
rápidamente un controlador y probarlo
en el entorno.

 En comparación con el controlador PID


tiene una mejor rapidez y un reducido
error en estado estable.
Figura 10. Gráfica PWM vs Tiempo para una
entrada de 11 personas con perturbaciones  La ventaja del control difuso, es que el
externas sistema reacciona rápidamente a los
cambios, se adapta con facilidad. Esto
En la gráfica anterior podemos observar que al dado que tiene control sobre un rango
existir una perturbación, (mayor o menor mayor de condiciones de operación.
iluminación externa) el valor de PWM cambia
Bibliografía

 Página 7
 Control Fuzzy de Iluminación 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

 Página 8

También podría gustarte