motor dc mamdani y sugeno

9
Control Difuso Guadarrama Camarena Netzahualcoyotl 10 de diciembre de 2010 1. Motivacin de estudio Para controlar sistemas con dinamicas complicadas. Para contorlar sistemas con menor costo de implementacin. Para modelar de manera difusa o linguistica procesos y sistemas de manera natural. En algunos casos es posible que la respuesta del control sea mÆs rÆpida y adecuada que un PID. Control Difuso propuesto por E.H. Mamdani (1974) En la primera clasicacin : Entrada - Salida como S - Entonces. Esta se puede expandir a sistemas mÆs complejos y tambiØn implica que el nœmero de reglas difusas se incrementen de forma exponencial al nœmero de variables del sistema. En el uso de n variables y m conjuntos denidos por cada variable se necesitan m n reglas difusas para construir un controlador difuso completo. Para evitar esto Raju, Zhou y Kishner propusieron sistemas difusos gerÆriquicos. Donde el nœmero total de reglas difusas se incrementa de forma lineal con el nœmero de variables de entrada. Modelo General Fuzzicacin: consiste en transformar un dato o de un conjunto clÆsico U i a su correspondiente conjunto difuso U i : La transformacin difusa de u i a un conjunto difuso por A fuz i denido en el universo del discurso U i : f : u i ! u i con f (u i )= A fuz i El mÆs comœn es el singleton: Conjunto difuso A fuz i 2 U i con funcin de membresia A fuz i (x)= 1; si x = u i 0, en otro caso Inferencia difusa: Es el nœcleo del controlador difuso y esta caracterizado por un conjunto de reglas difusas de la forma: Si x es A entonces y es B abreviado como A ! B en XxY , Donde A y B son valores lingusticos denidos por un conjunto difuso en un universo XxY respectivamente. El mecansmo de inferencia difusa: con estas reglas se deriva un control para un conjunto de valores de entrada. Los mØtodos de inferencia difusa se pueden formular con los operadores tnorma y snorma para calcular la relacin difusa R = A ! B: MØtodos utilizados 1

Upload: internetza

Post on 03-Aug-2015

50 views

Category:

Documents


3 download

DESCRIPTION

Uso de Mamdani y Sugeno

TRANSCRIPT

Page 1: Motor dc Mamdani y Sugeno

Control Difuso

Guadarrama Camarena Netzahualcoyotl

10 de diciembre de 2010

1. Motivación de estudio

Para controlar sistemas con dinamicas complicadas.

Para contorlar sistemas con menor costo de implementación.

Para modelar de manera difusa o linguistica procesos y sistemas de manera natural.

En algunos casos es posible que la respuesta del control sea más rápida y adecuada que un PID.

Control Difuso propuesto por E.H. Mamdani (1974)En la primera clasi�cación : Entrada - Salida como Sí - Entonces.Esta se puede expandir a sistemas más complejos y también implica que el número de reglas difusas se incrementen

de forma exponencial al número de variables del sistema.En el uso de n variables y m conjuntos de�nidos por cada variable se necesitan mn reglas difusas para construir un

controlador difuso completo.Para evitar esto Raju, Zhou y Kishner propusieron sistemas difusos geráriquicos. Donde el número total de reglas

difusas se incrementa de forma lineal con el número de variables de entrada.

Modelo General

Fuzzi�cación: consiste en transformar un dato o de un conjunto clásico Ui a su correspondiente conjunto difuso U�i :La transformación difusa de ui a un conjunto difuso por A

fuzi de�nido en el universo del discurso Ui : f : ui ! u�i

con f (ui) = Afuzi

El más común es el singleton: Conjunto difusoAfuzi 2 U�i con función de membresia �Afuzi(x) =

�1; si x = ui0, en otro caso

�Inferencia difusa: Es el núcleo del controlador difuso y esta caracterizado por un conjunto de reglas difusas de la

forma:Si x es A entonces y es B abreviado como A ! B en XxY , Donde A y B son valores linguísticos de�nidos por un

conjunto difuso en un universo XxY respectivamente.El mecanísmo de inferencia difusa: con estas reglas se deriva un control para un conjunto de valores de entrada.Los métodos de inferencia difusa se pueden formular con los operadores t�norma y s�norma para calcular la relación

difusa R = A! B:Métodos utilizados

1

Page 2: Motor dc Mamdani y Sugeno

1. Implicación de Dienes-Rescher: �RD(x; y) = m�ax [1� �A (x) ; �B (y)] :

2. Implicación de Lukasiewics: �Ra = Ce��A��� Ce

��B�; �RL

(x; y) = m�{n [1; 1� �A (x) + �B (y)] :3. Implicación de Zadeht: �RL

(x; y) = m�ax [m�{n (�A (x)�B (y) ; 1� �A (x))] :4. Implicación de Mamdani: �RM

(x; y) = m�{n (�A (x) ; �B (x)) ó �RM(x; y) = �A (x)�B (y) :

5. Implicación de Kleene-Dienes: �Rb(x; y) = m�ax (1� �A (x) ; �B (y)) :

Defuzzi�cación: Está de�nida como un mapeo de un conjunto difuso B en V � R que es la salida de inferencia difusaaun elemento de un conjunto clásico

ycrispq = y� � V

Donde q es el índice de la regla q.Técnicas más usadas:Defuzzi�cador Centro de Gravedad (COG) : Especifíca la salida como el centro del área cubierta porla función

de membrasia del conjunto difuso B, y está dada por.

y� = ycrispq =

PRi=1 b

qi

Qyq�Bi

q(yq) dyqPR

i=1

Qyq�Bi

q(yq) dyq

Donde R es el número de reglas difusas y bqi el centro del área de la función de membresia de Bpq asociado con el

conjunto difuso implicado para la i-ésima regla.PRi=1

Qyq�Bi

q(yq) dyq denota el área bajo la función de membresia �Bi

q(yq), y el sistema debe ser de�nido tal quePR

i=1

Qyq�Bi

q(yq) dyq 6= 0:

Defuzzi�cador Centro promedio:Determina la salida clásica ycrispq usando los centros de cada salida de las funcionesde membresia, el valór óptimo o máximo de cada conclusion es representada mendiante el conjunto difuso implicado:

y� = ycrispq =

PRi=1 b

qi supyq

��Bi

q(yq)

�PR

i=1 supyq

��Bi

q(yq)

Medio del Máximo (MOM) : :

Izquierdo del Máximo:

Derecho del Máximo:Para el controlador Mamdani:Tenemos la construcción de las reglas de la siguiente forma:Rq : Si u1 es A

j1 y u2 es A

k2 y...y un es A

ln entonces yq es B

rq :

Cuando éxiste una entrada ui = x�i se puede fusi�car con una función de membresia singleton. y entonces las reglasson.Rq : Si u�1 es A

j1 y u

�2 es A

k2 y...y u

�n es A

ln entonces yq es B

rq :

y la función de membresia en la entrada es esQni �Aj

i(xi) : y entonces el mecanismo de inferencia o de salida esQn

i �Aji(xi)�Bj

(yj) y puesto que se tiene la union de las implicaciones de salida se tiene. �p = m�axRj=1

�Qni �Aj

i(xi)�Bj

(yj)�:

La defusi�cación se puede realizar con el centro promedio que solo usa el valor central de la función de membresia.Qni �Aj

i(xi)�Bj

(yj) , con �Bj(yj) = 1: entonces queda como.

2

Page 3: Motor dc Mamdani y Sugeno

ycrisp =

PRi=1 �yj

Qni �Aj

i(xi)PR

i=1

Qni �Aj

i(xi)

EjemmploControlador PD Mamdani.Cualquier sistema tiene una curba de error la cual podemos generalizar como esta:

Puntos de in�exión del Error

Con el signo (mayor que) denotaremos que es positiva una señal y con el signo (Menor que) denotaremos que la señales negativa y con el signo = que es igual a cero.Con el signo � denotamos que no se efectua ningun cambio. Con el signo L que es pequeña la señal y H que es alta

la señal.Con esto podemos generar las reglas difusas necesarias para formar un PD difuso.Cada una de las reglas se aplica en cada punto de in�ección.Entonces en el primer renglon la primera regla difusa se enunciaria de la siguiente forma:R1 : S i e es igual a cero y _e es igual a cero entonces el voltaje de salida del controlador es � cero o sin acción.2666666666666664

Re glas = Puntos de ��nf lexi�on e _e Y = V a1 = = �2 > > VL3 > = VH4 > < VL5 = < �6 < < �VL7 < = �VH8 < > �VL9 = > �

3777777777777775Que sería nuestra base de reglas. es decir entre más se aleja nuestra señal mas voltaje en sentido contrario se aplica al

sistema.Las funciones de Membresia se escogen de tal forma que los valores que toman estas sean de acuerdo al sistema. En

este caso para nuestro sistema un motor de corriente directa deseamos encontrar variaciones de errores en un rango de�15 voltios y para un error de �50 voltios. Con una salida máxima de �160 voltios.Entonces nuestras funciones de membresia se pueden construir de tal forma que se traslapen las funciones y puedan

activarse las reglas más importantes que es en los cruces por cero.Nombraremos a las funciones de membresia con los signos "<,>,=,-". y usaremos la funcion de membresia triangular,

es decir el valor uno solo lo toma el punto central de tres puntos .

3

Page 4: Motor dc Mamdani y Sugeno

ejemplo [-90 -50 10] el punto -90 tiene un valor de fusi�cacion de cero, el punto -50 tiene un punto de fusi�caci�on deuno y por ultimo el 10 tiene cero.entonces las funciones de pertenencia propuestas son las siguientes.

�e =

24 <=>

35 =24 ���nf �50 10

�1 0 1�10 50 ��nf

35_e =

24 <=>

35 =24 ���nf �15 5�0;1 0 0;1�5 15 ��nf

35

�e =

266664VHVL��VL�VH

377775 =266664���nf �160 �120�80 �40 �1�1 0 11 40 80120 160 ��nf

377775introduciendo estas funciones de membresia en el programa toolbox de Fuzzy de Matlab tenemos los sigiente.

Esquema general Funciones de membresia del error

4

Page 5: Motor dc Mamdani y Sugeno

Funciones de membresia de delta del error Funciones de membresia de salida Va

El sistema utilizado es el modelo de un motor en cd de posición. cuya función de transferencia se puede expresar como

P (s) =60

s (s+ 3)

simulando este sistema en Matlab obtenemos la siguiente grá�ca.

esquematico en simulink

5

Page 6: Motor dc Mamdani y Sugeno

Va Va despues de la ganancia

y contra yd error

2. Otro método es utilizando el controlador de Takagi-Sugeno-kant

Consiste en el mismo procedimiento con exepción de que no tiene funciones de membresia de salida en lugar de elloutiliza una combinación lineal de las fusi�caciones de las entradas.utlizando la misma tabla de reglas de entrada y en lugar de usar las funciones de membresia de salida utlizaremos la

combinación lineal de las funciones de membresia después de realizada la relación de entrada de cada regla.Entonces como estamos utilizando un controlador PD nuestro control tiene una combinación lineal conrespecto al error

y su derivada es decir:

u (k) = kpe (k) + kd _e (k)

Entonces cada una de nuestras reglas tendrá este arreglo de salida en lugar de una función de membresia, es decir.

6

Page 7: Motor dc Mamdani y Sugeno

2666666666666664

Re glas = Puntos de ��nf lexi�on e _e Y = V a1 = = u1 (k) = kp1e (k) + kd1 (k)2 > > u2 (k) = kp2e (k) + kd2 (k)3 > = u3 (k) = kp3e (k) + kd3 (k)4 > < u4 (k) = kp4e (k) + kd4 (k)5 = < u5 (k) = kp5e (k) + kd5 (k)6 < < u6 (k) = kp6e (k) + kd6 (k)7 < = u7 (k) = kp7e (k) + kd7 (k)8 < > u8 (k) = kp8e (k) + kd8 (k)9 = > u9 (k) = kp9e (k) + kd9 (k)

3777777777777775Dando como constantes unas propuestas como

26666666666664

u1 (k)u2 (k)u3 (k)u4 (k)u5 (k)u6 (k)u7 (k)u8 (k)u9 (k)

37777777777775=�1 2 3 4 5 4 3 2 1

�T(0;5) e (k) +

�1 2 3 4 5 4 3 2 1

�T(0;05) e (k � 1)

Construyendo esto en simulink queda de la siguiente manera.

Reglas

como las reglas tienen esta estructura vectorial de nueve salidasentonces podemos reconstruir la salida del controlador como sigue por medio de el centroide, puesto que no son

funciones de membresia.

7

Page 8: Motor dc Mamdani y Sugeno

u� (k) =

P9i=1 u

�i (k)�Ri

(e�;4e�)P9i=1 �Ri

(e�;4e�)entonces nuestra defuzzi�cación queda como

Defuzzi�cador Controlador Sugeno

Gra�cando la salida, para una entrada escalon obtenemos lo siguiente.

Voltaje de armadura en la salida del control Voltaje de Armadura des pues de la ganancia

8

Page 9: Motor dc Mamdani y Sugeno

error Salida contra deseada

9