Controlador Difuso Mamdani
Transcript of Controlador Difuso Mamdani
-
7/26/2019 Controlador Difuso Mamdani
1/21
TECNOLGICO NACIONAL DE MXICO
CAMPUS QUERTARO
Ingeniera Mecatrnica
Reporte de Practica
Tpicos de Control Avanzado
Controlador Difuso
3 Entradas, 2 Salidas.
Presentan:Robles Robles Mario
Prez Hernandez Xochitl Citlali
Profesora:Mota Valtierra Georgina
Junio de 2016
-
7/26/2019 Controlador Difuso Mamdani
2/21
1. GENERALIDADES
La lgica difusa fue creada para emular la lgica humana y tomar decisiones acertadas
a pesar de la informacin. Debido a las limitaciones que tenemos para percibir el
mundo y comprenderlo de manera profunda, nos confrontamos con la incertidumbre,
la cual es resultado de la falta de informacin, particularmente de medicionesimprecisas. La lgica difusa es una herramienta flexible que se basa en reglas
lingsticas dictadas por expertos. Por ejemplo, la velocidad de un automvil es una
variable que puede tomar distintos valores lingsticos, como alta, media o baja.
Estas variables lingsticas dictan la salida del sistema.
Un sistema difuso consta de un conjunto de principios matemticos basados en grados
de membresa o pertenencia, cuya funcin es modelar la informacin. Este modelado
se hace con base en reglas lingsticas que aproximan una funcin mediante la
relacin de entradas y salidas del sistema (composicin). Esta lgica presenta rangosde membresa dentro de un intervalo entre 0 y 1, a diferencia de la lgica
convencional, en la que el rango se limita a dos valores: el cero o el uno.
Otra ventaja del sistema de control basado en lgica difusa es que no es necesarioconocer un modelo matemtico del sistema real, pues se puede ver como una caja
negra a la cual se le proporcionan entradas, y a travs del sistema esta planta generar
la salida deseada. En el control clsico si es necesario conocer la planta del sistema.
Para desarrollar un control con estas caractersticas, es necesario un experto, quien
tomar un registro de las situaciones que se le presentan, as como de la solucin que
el les da. Esta experiencia se traduce en reglas que usan variables lingsticas.
Con estas variables se forman reglas, las cuales regirn la accin de control, que ser la
salida del sistema.
LA ESENCIA DEL CONTROL DIFUSO ES QUE CONVIERTE LA ESTRATEGIA DE
CONTROL LINGSTICO, LA CUAL SE BASA EN EL CONOCIMIENTO DE UN
EXPERTO, EN UNA ESTRATEGIA DE CONTROL AUTOMATICO.
-
7/26/2019 Controlador Difuso Mamdani
3/21
2. TEORIADECONTROLADORDIFUSODEMAMDANI
Para la representacin de los grados de pertenencia de cada uno de los elementos que
conforman el conjunto difuso, lo mas natural es extraer los datos de los fenmenos
que se va a representar y con ellos definir la forma de la funcin de membresa.
Existen funciones de membresa convencionales y no convencionales que permiten
realizar un mapeo de un universo ntido a un universo difuso (grados de membresa
entre 0 y 1). Entre las funciones de membresa convencionales se tienen las siguientes.
Funcin de Saturacin.
Funcin Hombro.
Funcin Triangular.
Funcin Trapecio.
Funcin Sigmoidal.
2.1.PRODUCTOCARTESIANODIFUSO
Es una operacin entre conjuntos difusos para formar relaciones difusas. Sirve para
relacionar causas y efectos. Zadeh propuso que el valor de membresa del producto
cartesiano entre el conjunto A y el B sea el mnimo entre el valor de membresa de A y
el de B.
El valor de membresa del producto cartesiano se calcula para cada par. Se construye
una matriz de relaciones, donde las filas corresponden al conjunto A y las columnas al
conjunto B.
Segn la definicin de producto cartesiano difuso, para cada par de A y B se debe
asignar un valor de membresa, lo cual se hace tomando el valor mas pequeo de los
valores de membresa entre A y B.
Ntese que en la matriz, conforme aumenta la velocidad, aumenta la intensidad de la
relacin, por lo tanto se infiere: es mas frecuente que ocurran accidentes de tipo
choque lateral o frontal a altas velocidades, y es menos frecuente que ocurran
volcaduras a bajas velocidades.
-
7/26/2019 Controlador Difuso Mamdani
4/21
2.2. VARIABLESLINGSTICAS.
Una variable lingstica adopta valores con palabras que permiten describir el estadode un objeto o fenmeno; estas palabras se pueden representar mediante conjuntosdifusos. Una variable numrica toma valores numricos, por ejemplo edad = 75,
mientras que una variable lingstica toma valores lingsticos: edad es viejo.Las variables lingsticas estn caracterizadas por:
(x, X, T(x), G, M) donde:
x: Nombre de la variable.
Ejemplo: Velocidad.
X: Universo de discurso o dominio fsico en el cual la variable esta definida,
Ejemplo: [0 km/h - Vmax]
T(x): Conjuntos de valores lingsticos o trminos que acepta la variable.
Ejemplo: Bajo, Medio, Alto.
G: Regla sintctica que genera los valores lingsticos.
G: Regla semntica que asocia cada valor lingstico T(x) con su significado ocon un conjunto difuso en X.
Ejemplo: Baja[0,55], Media[35,80], Alta[55,Vmax].
2.3.REGLADIFUSA
Es un esquema de representacin de conocimiento para capturar el conocimientoimpreciso e inexacto por naturaleza, utilizando variables lingsticas para describircondiciones elsticas. Su principal caracterstica es su capacidad para ejecutarinferencia (evaluacin entre dos o mas propuestas) bajo una combinacin parcial.
Esto es: se calcula el grado de combinacin entre una entrada difusa A y unacondicin difusa A. Las reglas difusas son el ncleo de los controladores difusos y
tienen una estructura de la forma:
Si x es A, entonces y es B.
-
7/26/2019 Controlador Difuso Mamdani
5/21
2.4. MODUSPONENSDIFUSO
El modus ponens difuso se constituye por dos premisas, la primera que es un hecho, yla segunda que es una regla difusa si-entonces. Donde x e y son variables lingsticas,A, A y B son trminos lingsticos representados por conjuntos difusos con funciones
de membresa. En general con estas dos premisas se puede obtener una conclusin yes B. El Modus ponens difuso es un procedimiento matemtico que sirve para concluirrazonamientos difusos usando el procesamiento numrico de computadora.
La premisa, o el hecho esta representada por un conjunto A, mientras que la regladifusa esta representada por un producto cartesiano. Para obtener la conclusin se
computa el conjunto difuso B por medio de la composicin de la relacin difusa(producto cartesiano) con el hecho A
4. CONTROLDIFUSO
Un controlador difuso esta compuesto de cuatro partes principales: interfaz de
difusificacion, base de conocimiento, lgica de desiciones e interfaz de
desdifusificacion.
-
7/26/2019 Controlador Difuso Mamdani
6/21
5. PROCESODEDISEODECONTROLADOR.
La generalizacin del mtodo de inferencia de Mamdani permite disear
controladores para sistemas MIMO, Mltiple Input - Mltiple Output.
1.- Identificar variables de entrada y salida del controlador.
En un momento dado, al controlador llegan las variables de entrada X0 y Y0 y Z0. De
acuerdo con la formulacin matemtica de Mamdani, se deben fusificar los valores de
X0 Y0 y Z0 en los conjuntos difusos de los antecedentes, A1, A2 B1, B2 C1, C2.
2.- Definir variables lingsticas.
3.- Definir reglas de control.
A continuacin, se considera el mnimo entre el valor de membresa de A1 y el valor
de membresa de B1, el mnimo entre el valor de membresa de A2 y el valor demembresa de B2. Se repite el proceso para todas las reglas.
4.- Mtodo de inferencia. (Modus Ponens Difuso).
Se cortan las funciones de los conjuntos consecuentes a la altura del valor mas
pequeo de los valores de fusificacin. Pasa el valor de membresa mas pequeo de
cada regla y corta el conjunto C1 y el conjunto C2.
Una vez que se tienen los conjuntos cortados C1 y C2, stos deben unirse para
calcular C, que es la funcin de membresa del conjunto conclusin de todo el modusponens difuso con todas las reglas difusas del controlador.
5 - Defusificacin.
Finalmente solo resta la defusificacin del conjunto solucin C, para encontrar un
valor escalar Z0 que pueda ser inyectado por el controlador como variable de accin de
control.
-
7/26/2019 Controlador Difuso Mamdani
7/21
5.1.VARIABLESDEENTRADAYSALIDA.
El sistema diseado para esta practica considera 3 sensores ultrasnicos como
dispositivos de entrada, mismos que tienen un rango de medicin de distancia de 0 a
50 cm, por lo cual se define el universo de discurso distancia entre 0 y 50 cm para las
tres variables de entrada.
Para las variables de salida, se ha establecido que se quieren controlar dos motores
mediante las 3 entradas ya especificadas, por lo tanto, para ambos motores se
establece una variable de salida asociada con un Dutty Cycle de una seal PWM,
misma que tiene un universo de discurso que va de 0 a 100, indicando un porcentaje
correspondiente a TON de la seal modulada por pulsos.
5.2.VARIABLESLINGSTICAS.Para las variables de entrada, correspondientes a distancia, se han establecido 3
rangos que pueden tomar las variables difusas. Cerca, Considerable y lejos, con
funciones de membresa trapezoidal izquierda de 0 a 25cm para cerca, triangular de 10
a 40cm para considerable, y trapezoidal derecha de 25 a 50cm para lejos.
Configuracin que se aprecia en la siguiente captura de plot del controlador en
MATLAB:
-
7/26/2019 Controlador Difuso Mamdani
8/21
De manera similar, se definieron las funciones de membresa para las variables
lingsticas de salida, definidas de la siguiente forma:
El primer motor tiene definidas las funciones DuttyCycle Bajo por un trapezoide de 0 a
2, DuttyCycle Medio con un tringulo de 1 a 25, y DuttyCycle Alto mediante un
trapezoide derecho de 20 a 100.
El segundo motor tiene una configuracin de funciones de membresa simetricas, un
trapezoide para bajo de 0 a 50, un tringulo para medio de 25 a 75 y un trapezoide de
50 a 100.
5.3.REGLASDECONTROL
Las reglas de control fueron definidas de acuerdo al comportamiento deseado de
ambos motores, considerando que la salida 2 controla un motor de direccionamientode un triciclo, y la salida 1, controla el avance, teniendo un comportamiento de
evasin de obstculos al combinarse con los sensores de deteccin de distancia, se
trata de un sistema de control sencillo basado en lgica difusa para la navegacin
autnoma.
-
7/26/2019 Controlador Difuso Mamdani
9/21
!"#$%$&$"#$ ( !"#$%$&$"#$ ) !"#$%$&$"#$ * +,"-$%.$"#$ ( +,"-$%.$"#$ )
!"#$%&'"%
)*+,"-./%
!"#$%&'"%
0.1&$%2
!"#$%&'"%
!-.-'3%
41$1. 56%&'- 41$1. 7".1
!"#$% !"#$% !"#$% &%'( )"*+(
!"#$% !"#$% ,$"-.%/0" &%'( &%'(
!"#$% !"#$% 1"'(2 )"*+( &%'(
!"#$% ,$"-.%/0" !"#$% &%'( )"*+(
!"#$% ,$"-.%/0" ,$"-.%/0" )"*+( )"*+(
!"#$% ,$"-.%/0" 1"'(2 ,0.( &%'(
!"#$% 1"'(2 !"#$% )"*+( )"*+(
!"#$% 1"'(2 ,$"-.%/0" ,0.( )"*+(
!"#$% 1"'(2 1"'(2 ,0.( )"*+(
,$"-.%/0" !"#$% !"#$% &%'( ,0.(
,$"-.%/0" !"#$% ,$"-.%/0" )"*+( &%'(
,$"-.%/0" !"#$% 1"'(2 ,0.( &%'(
,$"-.%/0" ,$"-.%/0" !"#$% )"*+( )"*+(
,$"-.%/0" ,$"-.%/0" ,$"-.%/0" ,0.( )"*+(
,$"-.%/0" ,$"-.%/0" 1"'(2 ,0.( &%'(
,$"-.%/0" 1"'(2 !"#$% ,0.( )"*+(
,$"-.%/0" 1"'(2 ,$"-.%/0" ,0.( )"*+(
,$"-.%/0" 1"'(2 1"'(2 ,0.( )"*+(
1"'(2 !"#$% !"#$% ,0.( ,0.(
1"'(2 !"#$% ,$"-.%/0" ,0.( ,0.(
1"'(2 !"#$% 1"'(2 ,0.( ,0.(
1"'(2 ,$"-.%/0" !"#$% ,0.( ,0.(
1"'(2 ,$"-.%/0" ,$"-.%/0" ,0.( ,0.(
1"'(2 ,$"-.%/0" 1"'(2 ,0.( ,0.(
1"'(2 1"'(2 !"#$% ,0.( )"*+(
1"'(2 1"'(2 ,$"-.%/0" ,0.( )"*+(
1"'(2 1"'(2 1"'(2 ,0.( )"*+(
-
7/26/2019 Controlador Difuso Mamdani
10/21
6. CDIGOFUENTEDECONTROLADOR!"!# !"%&' &""# !"()% &""#
*(+,-.&" / 01*2+34.&'0&5"% , / 467 8 9"%:&;& ;%
-
7/26/2019 Controlador Difuso Mamdani
11/21
8 P21!0(1 ;% L%L5'%)0& +'&*%@(0;&" N&A(0B3 *(+=306 Q ,I 6
M'&*=N&A(306 / ,7%1;0B3 *(+=306 R/ ,I SS *(+=306 Q =H 6
M'&*=N&A(306 / 3 3=HT*(+=3066U,H 678 ;% "& %!2&!0(1 ;% "& '%!+& %1+'% "() *21+() 3VW ,6 3,=W I6
%1;0B3 *(+=306 R/ =H 6
M'&*=N&A(306 / I7%1;
8 P21!0(1 ;% L%L5'%)0& +'0&1:2"&' O%;0(0B3 *(+=306 Q ,I 6
M'0&1:=O%;0(306 / I7%1;0B3 *(+=306 R/ ,I SS *(+=306 Q =H 6
M'0&1:=O%;0(306 / 3 3,IT*(+=3066UT,H 678 ;% "& %!2&!0(1 ;% "& '%!+& %1+'% "() *21+() 3VW I6 3,=W ,6
%1;0B3 *(+=306 R/ =H SS *(+=306 Q XI 6
M'0&1:=O%;0(306 / 3 3XIT*(+=3066U,H 678 ;% "& %!2&!0(1 ;% "& '%!+& %1+'% "() *21+() 3YI#,6 3,II#I6
%1;0B3 *(+=306 R XI 6
M'0&1:=O%;0(306 / I7%1;
8 P21!0(1 ;% L%L5'%)0& +'&*%@(0;&" E"+(0B3 *(+=306 R/ XI 6
M'&*=E"+(306 / ,7%1;0B3 *(+=306 R/ =H SS *(+=306 Q XI 6
M'&*=E"+(306 / 3 3T=HZ*(+=3066U,H 678 ;% "& %!2&!0(1 ;% "& '%!+& %1+'% "() *21+() 3HI#,6 3YI#I6
%1;0B3 *(+=306 Q =H 6
M'&*=E"+(306 / I7%1;
%1;88 J%B010!0(1# B21!0(1%) ;% L%L5'%)0& N&A( / @%'()3,#HI67M'0&1:>O%;0( / @%'()3,#HI67M'&*>E"+( / @%'()3,#HI67
B('0/,GHI8 P21!0(1 ;% L%L5'%)0& +'&*%@(0;&" N&A(
0B3 *(+>306 Q ,I 6M'&*>N&A(306 / ,7
%1;0B3 *(+>306 R/ ,I SS *(+>306 Q =H 6
M'&*>N&A(306 / 3 3=HT*(+>3066U,H 678 ;% "& %!2&!0(1 ;% "& '%!+& %1+'% "() *21+() 3VW ,6 3,=W I6
%1;0B3 *(+>306 R/ =H 6
M'&*>N&A(306 / I7%1;
8 P21!0(1 ;% L%L5'%)0& +'0&1:2"&' O%;0(0B3 *(+>306 Q ,I 6
M'0&1:>O%;0(306 / I7%1;0B3 *(+>306 R/ ,I SS *(+>306 Q =H 6
M'0&1:>O%;0(306 / 3 3,IT*(+>3066UT,H 678 ;% "& %!2&!0(1 ;% "& '%!+& %1+'% "() *21+() 3VW I6 3,=W ,6
%1;0B3 *(+>306 R/ =H SS *(+>306 Q XI 6
M'0&1:>O%;0(306 / 3 3XIT*(+>3066U,H 678 ;% "& %!2&!0(1 ;% "& '%!+& %1+'% "() *21+() 3YI#,6 3,II#I6
%1;0B3 *(+>306 R XI 6
M'0&1:>O%;0(306 / I7%1;
8 P21!0(1 ;% L%L5'%)0& +'&*%@(0;&" E"+(0B3 *(+>306 R/ XI 6
-
7/26/2019 Controlador Difuso Mamdani
12/21
M'&*>E"+(306 / ,7%1;0B3 *(+>306 R/ =H SS *(+>306 Q XI 6
M'&*>E"+(306 / 3 3T=HZ*(+>3066U,H 678 ;% "& %!2&!0(1 ;% "& '%!+& %1+'% "() *21+() 3HI#,6 3YI#I6
%1;0B3 *(+>306 Q =H 6
M'&*>E"+(306 / I7%1;
%1;88 J%!"&'&!0(1 ;% "&) &!!0(1%) ;% !(1+'(" *&'& "& )&"0;& ,M'&*,.("+&A%N&A( / @%'()3,#,II67M'0&1:,.("+&A%O%;0( / @%'()3,#,II67M'&*,.("+&A%E"+( / @%'()3,#,II67
B('0/,G,II8 P21!0(1 ;% L%L5'%)0& +'&*%@(0;&" .("+&A% N&A(
0B3
-
7/26/2019 Controlador Difuso Mamdani
13/21
0B3 &1:2"(K&"0;&306 Q =H 6M'0&1:=&1:2"(O%;306 / I7
%1;0B3 &1:2"(K&"0;&306 R/ =H SS &1:2"(K&"0;&306 Q HI 6
M'0&1:=&1:2"(O%;306 / 3 3T=H Z &1:2"(K&"0;&3066U=H 678 ;% "& %!2&!0(1 ;% "& '%!+& %1+'% "() *21+() 3[I#I6 3YI#,6
%1;0B3 &1:2"(K&"0;&306 R/ HI SS &1:2"(K&"0;&306 Q WH 6
M'0&1:=&1:2"(O%;306 / 3 3WH T &1:2"(K&"0;&3066U=H 67
8 ;% "& %!2&!0(1 ;% "& '%!+& %1+'% "() *21+() 3YI#,6 3,II#I6%1;0B3 &1:2"(K&"0;&306 R/ WH 6
M'0&1:=&1:2"(O%;306 / I7%1;
8 P21!0(1 ;% L%L5'%)0& E1:2"( :'&1;%0B3 &1:2"(K&"0;&306 Q HI 6
M'&*=&1:2"(]'&1306 / I7%1;0B3 &1:2"(K&"0;&306 R/ HI SS &1:2"(K&"0;&306 Q WH 6
M'&*=&1:2"(]'&1306 / 3 3THI Z &1:2"(K&"0;&306 6U=H 678 ;% "& %!2&!0(1 ;% "& '%!+& %1+'% "() *21+() 3,=#,6 3I#I6
%1;0B3 &1:2"(K&"0;&306 R/ WH 6
M'&*=&1:2"(]'&1306 / ,7%1;
%1;
88 .0)2&"0@&!0^1 ;% "&) B21!0(1%) ;% L%L5'%)0& ;% "&
8 D'%*&'&!0(1 ;% :'&B0!&B / B0:2'%34`&L%4#4.Ea?EN9bK Jb b`MaEJE467
)25*"(+3>#,#,6# *"(+ 3*(+,#M'&*,N&A(# *(+,#M'0&1:,O%;0(# *(+,#M'&*,E"+(# 4901%c0;+d4#>6
d("; (1# *"(+3*(+,-.&"e(1%)3,#>6#fI ICH ,g#4:4#4901%c0;+d4#H6)%+3:! 4P(1+K0@%4#,=6# "%:%1;34h%'!&4#4h(1)0;%'&5"%4#49%A()46i"&5%"3f4Kb`KFa ?jkl?baJFC .&'0&5"% , / 412L=)+'3*(+,-.&"6 4!LC4g#4P(1+K0@%4#,=6#
_"&5%"34mL23 n, 646&i0)3fI HI I ,g6:'0; (1
)25*"(+3>#,#=6# *"(+ 3*(+=#M'&*=N&A(# *(+=#M'0&1:=O%;0(# *(+=#M'&*=E"+(# 4901%c0;+d4#>6
d("; (1# *"(+3*(+=-.&"e(1%)3,#>6#fI ICH ,g#4L4#4901%c0;+d4#H6
)%+3:! 4P(1+K0@%4#,=6# "%:%1;34h%'!&4#4h(1)0;%'&5"%4#49%A()46i"&5%"3f4Kb`KFa PaF`ME9C .&'0&5"% = / 412L=)+'3*(+=-.&"6 4!LC4g#4P(1+K0@%4#,=6#
_"&5%"34mL23 n= 646&i0)3fI HI I ,g6:'0; (1
)25*"(+3>#,#>6# *"(+ 3*(+>#M'&*>N&A(# *(+>#M'0&1:>O%;0(# *(+>#M'&*>E"+(# 4901%c0;+d4#>6
d("; (1# *"(+3*(+>-.&"e(1%)3,#>6#fI ICH ,g#4_4#4901%c0;+d4#H6)%+3:! 4P(1+K0@%4#,=6# "%:%1;34h%'!&4#4h(1)0;%'&5"%4#49%A()46i"&5%"3f4Kb`KFa JbabhoFC .&'0&5"% > / 412L=)+'3*(+>-.&"6 4!LC4g#4P(1+K0@%4#,=6#
_"&5%"34mL23 n> 646&i0)3fI HI I ,g6:'0; (1
d("; (188 ?`Pbab`h?E J?PlKE
8 h&"!2"( ;%
-
7/26/2019 Controlador Difuso Mamdani
14/21
%1;
2E1+%!E / @%'() 3,#=W672E1+%!N / @%'() 3,#=W672E1+%!h / @%'() 3,#=W67
8 P2)0B0!&!0(1 ;% "() 6 / M'&*,N&A(3iI3>6672E1+%!E3X6 / M'&*,N&A(3iI3X6672E1+%!E3H6 / M'&*,N&A(3iI3H6672E1+%!E3V6 / M'&*,N&A(3iI3V6672E1+%!E3W6 / M'&*,N&A(3iI3W6672E1+%!E3[6 / M'&*,N&A(3iI3[6672E1+%!E3Y6 / M'&*,N&A(3iI3Y667
8 P2)0B0!&!0(1 ;% "() 6672E1+%!E3,X6 / M'0&1:,O%;0(3iI3,X6672E1+%!E3,H6 / M'0&1:,O%;0(3iI3,H6672E1+%!E3,V6 / M'0&1:,O%;0(3iI3,V6672E1+%!E3,W6 / M'0&1:,O%;0(3iI3,W667
2E1+%!E3,[6 / M'0&1:,O%;0(3iI3,[667
8 P2)0B0!&!0(1 ;% "() 6 / M'&*,E"+(3iI3=>6672E1+%!E3=X6 / M'&*,E"+(3iI3=X6672E1+%!E3=H6 / M'&*,E"+(3iI3=H6672E1+%!E3=V6 / M'&*,E"+(3iI3=V6672E1+%!E3=W6 / M'&*,E"+(3iI3=W667
8 P2)0B0!&!0(1 ;% "() 6 / M'&*=N&A(3_I3>667
2E1+%!N3X6 / M'0&1:=O%;0(3_I3X6672E1+%!N3H6 / M'0&1:=O%;0(3_I3H6672E1+%!N3V6 / M'0&1:=O%;0(3_I3V6672E1+%!N3W6 / M'&*=E"+(3_I3W6672E1+%!N3[6 / M'&*=E"+(3_I3[6672E1+%!N3Y6 / M'&*=E"+(3_I3Y667
8 P2)0B0!&!0(1 ;% "() 6672E1+%!N3,X6 / M'0&1:=O%;0(3_I3,X6672E1+%!N3,H6 / M'0&1:=O%;0(3_I3,H6672E1+%!N3,V6 / M'&*=E"+(3_I3,V6672E1+%!N3,W6 / M'&*=E"+(3_I3,W6672E1+%!N3,[6 / M'&*=E"+(3_I3,[667
8 P2)0B0!&!0(1 ;% "()
-
7/26/2019 Controlador Difuso Mamdani
15/21
8 P2)0B0!&!0(1 ;% "() O%;0(3@I3=6672E1+%!h3>6 / M'&*>E"+(3@I3>6672E1+%!h3X6 / M'&*>N&A(3@I3X6672E1+%!h3H6 / M'0&1:>O%;0(3@I3H6672E1+%!h3V6 / M'&*>E"+(3@I3V6672E1+%!h3W6 / M'&*>N&A(3@I3W6672E1+%!h3[6 / M'0&1:>O%;0(3@I3[667
2E1+%!h3Y6 / M'&*>E"+(3@I3Y667
8 P2)0B0!&!0(1 ;% "() O%;0(3@I3,,6672E1+%!h3,=6 / M'&*>E"+(3@I3,=6672E1+%!h3,>6 / M'&*>N&A(3@I3,>6672E1+%!h3,X6 / M'0&1:>O%;0(3@I3,X6672E1+%!h3,H6 / M'&*>E"+(3@I3,H6672E1+%!h3,V6 / M'&*>N&A(3@I3,V6672E1+%!h3,W6 / M'0&1:>O%;0(3@I3,W6672E1+%!h3,[6 / M'&*>E"+(3@I3,[667
8 P2)0B0!&!0(1 ;% "() O%;0(3@I3=>6672E1+%!h3=X6 / M'&*>E"+(3@I3=X6672E1+%!h3=H6 / M'&*>N&A(3@I3=H6672E1+%!h3=V6 / M'0&1:>O%;0(3@I3=V6672E1+%!h3=W6 / M'&*>E"+(3@I3=W667
8.&"('%) ;% B2)0B0!&!0(1 3OEp ( L016 *&'& !('+&' %" !(1A21+( !(1)%!2%1+%L01-2E2N2h / L&i32E1+%!E#2E1+%!N67L01-2E2N2h / L&i3L01-2E2N2h#2E1+%!h67
8 h('+% ;% !(1A21+() L%;0&1+% D(1%1) J0B2)( 3L016# & &"+2'& ;% 667hX / L013M'&*,.("+&A%N&A(#L01-2E2N2h3X667hH / L013M'0&1:,.("+&A%O%;0(#L01-2E2N2h3H667hV / L013M'&*,.("+&A%E"+(#L01-2E2N2h3V667hW / L013M'0&1:,.("+&A%O%;0(#L01-2E2N2h3W667h[ / L013M'&*,.("+&A%E"+(#L01-2E2N2h3[667hY / L013M'&*,.("+&A%E"+(#L01-2E2N2h3Y667
h,I / L013M'&*,.("+&A%N&A(#L01-2E2N2h3,I667h,, / L013M'0&1:,.("+&A%O%;0(#L01-2E2N2h3,,667h,= / L013M'&*,.("+&A%E"+(#L01-2E2N2h3,=667h,> / L013M'0&1:,.("+&A%O%;0(#L01-2E2N2h3,>667h,X / L013M'&*,.("+&A%E"+(#L01-2E2N2h3,X667h,H / L013M'&*,.("+&A%E"+(#L01-2E2N2h3,H667h,V / L013M'&*,.("+&A%E"+(#L01-2E2N2h3,V667h,W / L013M'&*,.("+&A%E"+(#L01-2E2N2h3,W667
h,[ / L013M'&*,.("+&A%E"+(#L01-2E2N2h3,[667
h,Y / L013M'&*,.("+&A%E"+(#L01-2E2N2h3,Y667h=I / L013M'&*,.("+&A%E"+(#L01-2E2N2h3=I667h=, / L013M'&*,.("+&A%E"+(#L01-2E2N2h3=,667h== / L013M'&*,.("+&A%E"+(#L01-2E2N2h3==667h=> / L013M'&*,.("+&A%E"+(#L01-2E2N2h3=>667h=X / L013M'&*,.("+&A%E"+(#L01-2E2N2h3=X667h=H / L013M'&*,.("+&A%E"+(#L01-2E2N2h3=H667h=V / L013M'&*,.("+&A%E"+(#L01-2E2N2h3=V667h=W / L013M'&*,.("+&A%E"+(#L01-2E2N2h3=W667
-
7/26/2019 Controlador Difuso Mamdani
16/21
8K&"0;&=J, / L013M'0&1:=&1:2"(O%;#L01-2E2N2h3,667J= / L013M'&*=&1:2"(D%\#L01-2E2N2h3=667J> / L013M'&*=&1:2"(D%\#L01-2E2N2h3>667JX / L013M'0&1:=&1:2"(O%;#L01-2E2N2h3X667JH / L013M'0&1:=&1:2"(O%;#L01-2E2N2h3H667JV / L013M'&*=&1:2"(D%\#L01-2E2N2h3V667JW / L013M'0&1:=&1:2"(O%;#L01-2E2N2h3W667J[ / L013M'0&1:=&1:2"(O%;#L01-2E2N2h3[667
JY / L013M'0&1:=&1:2"(O%;#L01-2E2N2h3Y667
J,I / L013M'&*=&1:2"(]'&1#L01-2E2N2h3,I667J,, / L013M'&*=&1:2"(D%\#L01-2E2N2h3,,667J,= / L013M'&*=&1:2"(D%\#L01-2E2N2h3,=667J,> / L013M'0&1:=&1:2"(O%;#L01-2E2N2h3,>667J,X / L013M'0&1:=&1:2"(O%;#L01-2E2N2h3,X667J,H / L013M'&*=&1:2"(D%\#L01-2E2N2h3,H667J,V / L013M'0&1:=&1:2"(O%;#L01-2E2N2h3,V667J,W / L013M'0&1:=&1:2"(O%;#L01-2E2N2h3,W667J,[ / L013M'0&1:=&1:2"(O%;#L01-2E2N2h3,[667
J,Y / L013M'&*=&1:2"(]'&1#L01-2E2N2h3,Y667J=I / L013M'&*=&1:2"(]'&1#L01-2E2N2h3=I667J=, / L013M'&*=&1:2"(]'&1#L01-2E2N2h3=,667J== / L013M'&*=&1:2"(]'&1#L01-2E2N2h3==667J=> / L013M'&*=&1:2"(]'&1#L01-2E2N2h3=>667
J=X / L013M'&*=&1:2"(]'&1#L01-2E2N2h3=X667J=H / L013M'0&1:=&1:2"(O%;#L01-2E2N2h3=H667J=V / L013M'0&1:=&1:2"(O%;#L01-2E2N2h3=V667J=W / L013M'0&1:=&1:2"(O%;#L01-2E2N2h3=W667
8 l10(1 ;% "() !(1A21+() L%;0&1+% O&i 3l10^1 &10;&;& 21( & 21(6h-01B%'0;( /L&i3h,#L&i3h=#L&i3h>#L&i3hX#L&i3hH#L&i3hV#L&i3hW#L&i3h[#L&i3hY#L&i3h,I#L&i3h,,#L&i3h,=#L&i3h,>#L&i3h,X#L&i3h,H#L&i3h,V#L&i3h,W#L&i3h,[#L&i3h,Y#L&i3h=I#L&i3h=,#L&i3h==#L&i3h=>#L&i3h=X#L&i3h=H#L&i3h=V#h=W666666666666666666666666667
J-01B%'0;( /L&i3J,#L&i3J=#L&i3J>#L&i3JX#L&i3JH#L&i3JV#L&i3JW#L&i3J[#L&i3JY#L&i3J,I#L&i3J,,#L&i3J,=#L&i3J,>#L&i3J,X#L&i3J,H#L&i3J,V#L&i3J,W#L&i3J,[#L&i3J,Y#L&i3J=I#L&i3J=,#L&i3J==#L&i3J=>#L&i3J=X#L&i3J=H#L&i3J=V#J=W666666666666666666666666667
88 .0)2&"0@&!0^1 ;% "&) &!!0(1%) ;% !(1+'(" F )&"0;& ;%" !(1+'("&;('
8 D'%*&'&!0(1 ;% :'&B0!&B / B0:2'%34`&L%4#4Ehh?F`bK Jb hF`MaF9 n KE9?JE467
8 ]'&B0!&!0(1 ;% B21!0(1%) ;% L%L5'%)0& &!!0(1%) ;% !(1+'(" .Ea?EN9b JlMn hnh9b)25*"(+3=#=#,6# *"(+ 3
-
7/26/2019 Controlador Difuso Mamdani
17/21
B('0/,G,II*'(;2!+(KE9?JE, / 3
-
7/26/2019 Controlador Difuso Mamdani
18/21
7. VALIDACIN
A continuacin se muestra un caso particular, para verificar que las salidas del
controlador programado en MATLAB son correctas de acuerdo al ToolBox integrado en
el laboratorio de matrices. Se verifican tanto los valores numricos para las dos
salidas, como la forma en la que se hacen los cortes en los conjuntos inferidos. En estecaso particular, los valores de las variables de entrada son 15, 48 y 2.
Las salidas obtenidas para estas entradas son las siguientes:
-
7/26/2019 Controlador Difuso Mamdani
19/21
-
7/26/2019 Controlador Difuso Mamdani
20/21
8. CONCLUSIONES
Mario Robles Robles
Los controladores difusos son una gran alternativa al control clsico, cuando se
requiere controlar un sistema MIMO (Mltiples entradas y salidas), y tienen la granventaja de no requerir complejos sistemas de instrumentacin para obtener las
ecuaciones diferenciales de la planta, por lo cual es posible mediante opiniones de
expertos controlar sistemas no lineales y de elevado orden sin mayor complejidad que
la computacin de operaciones matriciales.
Personalmente, el desarrollar este controlador fue un reto, debido a que hubo
complicaciones en la comprensin de la teora para poder programar la primera
versin requerida (dos entradas y una salida). Posteriormente, despus de analizar a
detalle los fundamentos del proceso de inferencia Mamdani, fue cuestin de seguir elprocedimiento matemtico para poder extender el controlador a tres variables de
entrada y dos de salida, lo cual fue gratificante pues pudimos observar la concordancia
que hubo entre nuestros resultados y los arrojados por el ToolBox de lgica difusa de
Matlab, no solo numricamente, sino tambin en lo que respecta al mtodo de corte
de conjuntos inferidos.
Xochitl Prez Hernndez
Para la creacin del difuso primero empezamos a tratarlo solo como un dato, pero
descubrimos que esto no iba a funcionar al hacer todo el proceso de fusificacin y
defusificacin, por lo tanto, es mejor integrar los datos de entrada a vectores, ya que
en nuestro caso con las posiciones de los vectores se pudo realizar la pertenencia del
conjunto difuso, realizar las reglas difusas y el cortar los conjuntos de salida.
Incluso otro problema que se tuvo fue el tamao de los vectores, todos los vectores
deben de ser del mismo tamao sino se va a tener problemas. Otra cuestin que se nos
presento fue que no pudimos hacer la integracin de las reglas por medio de OR, ya
que no se lograron hacer bien los cortes en el programa si utilizbamos AND.
Otro punto importante es el orden en el momento de fusificar las entradas, en nuestro
caso esto se hace 27 veces por variable y en orden de cmo se dise el sistema, este
mismo orden tambin se tiene que mantener al momento de hacer los cortes en las
salidas, sino presentara otro sistema difuso.
-
7/26/2019 Controlador Difuso Mamdani
21/21
REFERENCIAS BIBLIOGRAFICAS
1. Ross J. Timothy. Fuzzy Logic with Engineering Applications. Ed. Wiley, 2004.ISBN: 0-07-114711-X.
2. Jang, J.-S.R., Sun, C.-T., Mizutani, E. Neuro-Fuzzy and Soft Computing: AComputational Approach to Learning andMachine Intelligence. Prentice Hall, 1997. ISBN: 0-13-261066-3.
3. Jan Jantzen. Foundations of fuzzy control. John Wiley & Sons. 2007. ISBN:978-0-470-02963-3.