Está en la página 1de 20

UNIVERSIDAD DE LAS FUERZAS ARMADAS

ESPE EXTENSIN LATACUNGA

AUTOMATIZACIN INDUSTRIAL MECATRNICA

DOCENTE: PATRICIA CONSTANTE

NRC: 1508

TEMA: CONTROLADOR FUSSY CON MATLAB

INTEGRANTES:

Poma lvaro

Pusd Karla

Rocha Steeven

2017-2018
Contenido
Objetivos:................................................................................................................................ 4
Introduccin: .......................................................................................................................... 4
Materiales: .............................................................................................................................. 4
Marco terico ......................................................................................................................... 5
Conjunto Borroso ................................................................................................................ 5
Funcin de Pertenencia ...................................................................................................... 6
Reglas IF-THEN .................................................................................................................... 7
Fuzzy Logic Designer de Matlab .......................................................................................... 7
Procedimiento ........................................................................................................................ 9
Anlisis de resultados ........................................................................................................... 16
Conclusiones ......................................................................................................................... 20
Recomendaciones................................................................................................................. 20
Bibliografa ............................................................................................................................ 20
Anexos ..................................................................................... Error! Bookmark not defined.

ndice de figuras
Figura 1 Conjuntos borrosos .................................................................................................. 5
Figura 2 Funcin de pertenencia ............................................................................................ 6
Figura 3 Tipos de funciones de pertenencia .......................................................................... 6
Figura 4 Entorno del Fuzzy Logic Designer ............................................................................. 8
Figura 5 Ingreso de la palabra ''fuzzy'' en la ventana de comandos ...................................... 9
Figura 6 Pantalla emergente del Fuzzy Logic Designer ........................................................ 10
Figura 7 Opcin para agregar variables. ............................................................................... 10
Figura 8 Asignacin de etiquetas a variables ....................................................................... 11
Figura 9 Definicin de conjuntos y funciones de pertenencia ............................................. 11
Figura 10 Definicin de conjuntos y funciones de pertenencia de las variables de salida .. 12
Figura 11 Opcin Rules ......................................................................................................... 12
Figura 12 Ingreso de reglas del controlador ......................................................................... 13
Figura 13 Opcin Rules del visualizador ............................................................................... 13
Figura 14 Pantalla del visualizador de reglas........................................................................ 14
Figura 15 Opcin Surface del visualizador............................................................................ 14
Figura 16 Pantalla del Surface Viewer .................................................................................. 15
Figura 17 Prueba 1en Rules Viewer ..................................................................................... 16
Figura 18 Prueba 2 en Rules Viewer ..................................................................................... 17
Figura 19 Prueba 3 en Rules Viewer ................................................................................... 18
Figura 20 Prueba 4 en Rules Viewer ..................................................................................... 19
Objetivos:
Conocer el entorno de la aplicacin Fuzzy Logic Designer de Matlab
Realizar el control borroso para un carro evasor de obstculos en Matlab.

Introduccin:
La Lgica Difusa proporciona un mecanismo de inferencia que permite simular los
procedimientos de razonamiento humano en sistemas basados en el conocimiento, esto
permite implementarse a travs de controladores borrosos, a continuacin, se pretende
realizar el control difuso para un carro evasor de obstculos por medio del Fuzzy Logic
Designer de Matlab.

Materiales:
Equipos:

Computadora con programa MATLAB.


Marco terico

Conjunto Borroso
El concepto de conjunto borrosos fue introducido por primera vez por Lofti A. Zadeh,
profesor de la Universidad de California Berkeley, en el ao 1964, en un intento de
representar y manipular datos que no eran precisos. Dicho concepto dio paso a la
denominada Teora de los Subconjuntos Borrosos, ya que ciertas magnitudes pueden tomar
valores que difcilmente se pueden clasificar en un conjunto determinado. La Teora de
Subconjuntos Borrosos permite la definicin adecuada de conjuntos que modelan las
situaciones de imprecisin antes expuestas.

Figura 1 Conjuntos borrosos

En la teora clsica de conjuntos, un subconjunto A de un conjunto X puede ser definido por


una funcin caracterstica A que puede tomar dos valores: 0 y 1 A : X {0,1}. La verdad
o falsedad de la expresin x est en A viene dada por el par ordenado (x, A(x)), de forma
que ser cierta si el segundo elemento del par es 1 y falsa cuando sea 0. De forma similar
se puede definir un subconjunto borroso A de un conjunto X, denominado universo de
discurso, como el conjunto de pares ordenados (x, A(x)), siendo A la funcin de
pertenencia al conjunto borroso A, definida como A : X [0,1]. Dicha funcin puede
tomar todos los valores del intervalo entre 0 y 1. El valor 0 representa la no-pertenencia al
conjunto A y el valor 1 representa la pertenencia total a dicho conjunto.
Funcin de Pertenencia

Una funcin de pertenencia de un conjunto borroso A sobre un universo de discurso X es


de la forma A:X [0,1], donde a cada elemento de X le corresponde un valor entre 0 y 1.
Este valor, llamado valor de pertenencia o grado de pertenencia, representa el grado en el
que el elemento de X pertenece al conjunto borroso A.

Figura 2 Funcin de pertenencia

Las funciones de pertenencia nos permiten representar grficamente un conjunto borroso.


En el eje x (abscisas) se representa el universo de discurso, mientras que en el eje y
(ordenadas) se sitan los grados de pertenencia en el intervalo [0,1].

Para construir funciones de pertenencia se suelen utilizar funciones sencillas, ya que al estar
definiendo conceptos borrosos el uso de funciones complejas no aporta mayor precisin.
(Krishnankutty, 2016)

Figura 3 Tipos de funciones de pertenencia


Reglas IF-THEN

En su forma ms simple, una regla borrosa if-then es de la forma:

Si x es A entonces y es B"

A y B son valores lingsticos definidos por conjuntos borrosos en los universos de


discurso (rangos) X e Y.
x es la variable de entrada e y es la variable de salida.
El significado de es difiere en el antecedente y en el consecuente, ya que el
antecedente es una interpretacin que devuelve un nmero entre 0 y 1, y en el
consecuente se asigna un conjunto borroso B a la variable y
La entrada de la regla es un valor numrico (conjunto crisp) que se le da a la variable
de entrada x del antecedente (este valor pertenece al universo de discurso de A).
La salida de la regla es un conjunto borroso que se asigna a la variable de salida y del
consecuente.
La ejecucin de la regla se realizar aplicando un operador borroso de implicacin
cuyos argumentos son el valor del antecedente y los valores del conjunto borroso
del consecuente. La salida de cada regla ser el conjunto borroso resultante de la
implicacin. (Krishnankutty, 2016)

Fuzzy Logic Designer de Matlab

La aplicacin Fuzzy Logic Designer le permite disear y probar sistemas de inferencia


difusos para modelar comportamientos complejos del sistema.

En Matlab existen multitud de utilidades, toolboxes de control especficas. Entre ellas se


encuentra la toolbox fuzzy, que permite definir un controlador difuso. Se accede al editor
desde lnea de comando escribiendo la palabra reservada fuzzy o bien desde el men de
inicio Start de Matlab. A travs de este editor, se pueden modificar los mtodos de los
operadores lgicos and y or, los mtodos de implicacin, de agregacin y de
defuzzificacin. Permite elegir el modelo a usar Sugeno o Mamdani, a travs de las distintas
opciones de la barra de mens. Se pueden agregar variables de entrada y de salida, as como
definir sus conjuntos borrosos, eligiendo rango, forma y parmetros. Las reglas de control
del modelo, se editan a travs de un editor especfico, en el que se van seleccionando los
distintos valores de las variables de entrada y de salida. Para poder implementar el
controlador es necesario guardarlo, para poder importar el archivo al workspace, para que
luego Matlab lo pueda reconocer y pueda ser usado por cualquier aplicacin que lo
necesite, o por Simulink. Si se desea trabajar con un modelo ya guardado se debe importar
desde el men fuzzy primero y luego exportarlo al workspace.

Figura 4 Entorno del Fuzzy Logic Designer

Usando esta aplicacin, es posible:

Disea los sistemas de inferencia borrosa Mamdani y Sugeno.


Agregue o elimine variables de entrada y salida.
Especifique las funciones de membresa de entrada y salida.
Defina reglas fuzzy if-then.
Seleccione funciones de inferencia difusa para operaciones AND, OR, implicacin,
agregacin.
Defuzzificacin
Ajuste los valores de entrada y vea los diagramas de inferencias difusas asociados.
Ver mapas de superficie de salida para sistemas de inferencia difusos.
Exporte sistemas de inferencia difusos al espacio de trabajo de MATLAB. (Mathworks,
2017)

Procedimiento

1. Ejecutar el programa Matlab, en la ventana de comandos escriba la palabra fuzzy y


presione la tecla Enter. Como se observa en la Figura 5.

Figura 5 Ingreso de la palabra ''fuzzy'' en la ventana de comandos

2. A continuacin, aparece la pantalla emergente del Fuzzy Logic Designer, mostrada


en la Figura 6.
Figura 6 Pantalla emergente del Fuzzy Logic Designer

3. Dirjase a la pestaa de Edit en la parte superior derecha, en la opcin Add Variable


seleccione Input, esto permite agregar variables de entrada segn lo que requiera
nuestro controlador. Figura 7.

Figura 7 Opcin para agregar variables.

4. Para el control borroso de un carro evasor de obstculos se requiere tres entradas


y dos salidas como se muestra en la Figura 8 , las entradas fueron etiquetadas como
left sensor, center sensor y right sensor. Las salidas corresponden a motor left y
motor right.
Figura 8 Asignacin de etiquetas a variables

5. Dar doble click sobre el cuadro amarillo de la primera entrada, la pantalla que
emerge permite la creacin y edicin de conjuntos y funciones de pertenencia. En
la opcin Type se puede elegir entre funciones triangulares, trapezoiales, campana,
gauss, sigmoidal como se observa en la Figura9 y Figura 10.

Figura 9 Definicin de conjuntos y funciones de pertenencia


Figura 10 Definicin de conjuntos y funciones de pertenencia de las variables de salida

6. Una vez haya definido las funciones y conjuntos de todas las entradas y salidas,
dirjase a la pestaa Edit y seleccione la opcin Rules. Figura 11.

Figura 11 Opcin Rules

7. En la pantalla emergente de Rules Editor, se ingresa las reglas para el control,


tomando en cuenta que se est usando el mtodo de Mamdani, las reglas deben
tener un antecedente y un consecuente mediante la estructura Si Entonces o If
Then. La Figura 12 muestra la forma en que permite el editor relacionar las variables,
al presionar Add Rule, una vez haya ingresado las reglas presione Close.
Figura 12 Ingreso de reglas del controlador

8. Para visualizar como funciona nuestro control borroso al ingresar diferentes valores,
dirjase a View y seleccione Rules. Figura 13.

Figura 13 Opcin Rules del visualizador


9. En la pantalla emergente de Rule Viewer, ingresando diferentes valores en la
opcin Input es posible visualizar la activacin de los conjuntos de salida y los
valores de salida como se observa en la Figura 14, para salir presione Close.

Figura 14 Pantalla del visualizador de reglas

10. Seleccione la pestaa View , en la opcin Surface como se muestra en la Figura 15.

Figura 15 Opcin Surface del visualizador


11. La pantalla emergente de Surface Viewer, permite observa las variaciones que
presenta el control en relacin con las otras variables como se muestra en la Figura
16, esto permite verificar el funcionamiento del control.

Figura 16 Pantalla del Surface Viewer


Anlisis de resultados

Una vez implementado el control, se us el visualizador de reglas para verificar que los
conjuntos activados dependiendo de las entradas que ingresemos sean acorde a la lgica
usada.

Prueba 1:

Los valores ingresados como entrada fueron:

Sensor Izquierda: 50

Sensor Centro: 50

Sensor Derecha: 10

Lo cual implica que se encuentra un obstculo en el lado derecho, segn la Figura 17, los
conjuntos activos a la salida son de velocidad, Medium para el motor izquierdo y Fast para
el motor derecho, lo cual provocara que el carro gire a la Izquierda lo cual es correcto.

Figura 17 Prueba 1en Rules Viewer


Prueba 2:

Los valores ingresados como entrada fueron:

Sensor Izquierda: 10

Sensor Centro: 50

Sensor Derecha: 50

Lo cual implica que se encuentra un obstculo cerca en el lado izquierdo, segn la Figura
18, los conjuntos activos a la salida son de velocidad, Medium para el motor derecho y Fast
para el motor izquierdo, lo cual provocara que el carro gire a la derecha lo cual es correcto.

Figura 18 Prueba 2 en Rules Viewer

Prueba 3:

Los valores ingresados como entrada fueron:

Sensor Izquierda: 50
Sensor Centro: 50

Sensor Derecha: 50

Lo cual implica que se encuentra un obstculo lejos en las tres direcciones, segn la Figura
19, los conjuntos activos a la salida son de velocidad, Fast para el motor derecho y Fast para
el motor izquierdo, lo que provocara que el carro avance en la misma direccin, lo cual es
correcto.

Figura 19 Prueba 3 en Rules Viewer

Prueba 4:

Los valores ingresados como entrada fueron:

Sensor Izquierda: 10

Sensor Centro: 10

Sensor Derecha: 60

Lo cual implica que se encuentra un obstculo cerca a la izquierda y centro, segn la Figura
20, los conjuntos activos a la salida son de velocidad, Fast para el motor derecho y Medium
para el motor izquierdo, lo que provocara que el carro avance hacia la derecha, lo cual es
correcto.

Figura 20 Prueba 4 en Rules Viewer


Conclusiones

La toolbox fuzzy de Matlab es una herramienta til para el aprendizaje y la


implementacin de sistemas de control inteligente borrosos.
La direccin en la que se dirija un carro evasor de obstculos puede ser decidida con
inferencia borrosa y razonamiento aproximado con xito en base a caractersticas
poco ntidas, como la distancia a la que se encuentra el objeto basando en la seal
de sensores.
Se utiliz el mtodo de inferencia de Mamdani y el mtodo de defuzzyficacin del
centroide ha dado resultados satisfactorios para controlar el carro evasor de
obstculos.
Un error de lgica al realizar las reglas ocasiona una falla en el funcionamiento.

Recomendaciones
Ser cuidadoso en la configuracin al momento de implementar el control ya que un
error puede provocar un funcionamiento incorrecto.

Bibliografa

Krishnankutty, S. (2016). Obtenido de


http://www.dma.fi.upm.es/recursos/aplicaciones/logica_borrosa/web/fuzzy_infer
encia/introfis.htm

Mathworks. (2017). Obtenido de


https://www.mathworks.com/help/fuzzy/fuzzylogicdesigner-app.html

También podría gustarte