You are on page 1of 23

Notas en Control Difuso

Gilberto Reynoso Meza


ITESM Campus Monterrey
Departamento de Mecatr
onica y Automatizaci
on
greynosom@exatec.itesm.mx
Junio 2005

Indice general
1. Fundamentos del control difuso
1.1. Introducci
on . . . . . . . . . . . . . . .
1.2. Preliminares . . . . . . . . . . . . . . .
1.2.1. Conjuntos difusos . . . . . . . .
1.2.2. L
ogica difusa . . . . . . . . . .
1.3. Control difuso . . . . . . . . . . . . . .
1.3.1. Proceso de Fuzzificaci
on . . . .
1.3.2. Mecanismo de Inferencia Difusa
1.3.3. Proceso de Defuzzificaci
on . . .
1.4. Conclusiones . . . . . . . . . . . . . .

.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.

3
3
3
3
4
4
4
7
9
11

2. Identificaci
on de sistemas difusos
12
2.1. Introducci
on . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
2.2. Identificaci
on de Sistemas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
2.3. Sistemas Difusos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
2.4. Identificaci
on de Sistemas Difusos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
2.4.1. Retropropagaci
on . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
2.4.2. Identificaci
on de modelo TS por medio de Agrupacion (Clustering) y Transformada de
Hough . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
2.4.3. Proceso de Identificaci
on Difuso Genetico de Modelos Tipo Mamdani . . . . . . . . . 15
2.4.4. Identificaci
on de Modelos Difusos basados en aprendizaje . . . . . . . . . . . . . . . . 15
2.5. Conclusiones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
3. Desarrollo de aplicaci
on
3.1. Introducci
on . . . . . . . . . . . . . . . . . . . .
3.2. Descripci
on del Proceso a Controlar . . . . . .
3.3. Descripci
on del Controlador Difuso . . . . . . .
3.3.1. Proceso de Fuzzificaci
on . . . . . . . . .
3.3.2. Mecanismo de Inferencia Difusa . . . . .
3.3.3. Proceso de Defuzzificaci
on . . . . . . . .
3.4. Desarrollo de Interfaz M
aquina-Usuario (HMI)
3.5. Pruebas de Desempe
no . . . . . . . . . . . . . .
3.5.1. Simulaci
on: Sistema 1 . . . . . . . . . .
3.5.2. Simulaci
on: Sistema 2 . . . . . . . . . .
3.5.3. Proceso Real: Sistema 1 . . . . . . . . .
3.5.4. Proceso Real: Sistema 2 . . . . . . . . .
3.6. Conclusiones . . . . . . . . . . . . . . . . . . .

.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.

16
16
16
16
16
17
17
17
18
19
21
21
21
22

Fundamentos del control difuso


1.1.

Introducci
on

La solucion com
unmente empleada y difundida en el control de procesos industriales de variable continua
es el controlador PID. Dicho controlador sigue gozando de popularidad como solucion en las acciones de
control pese a haber sido desarrollado hace mas de 60 a
nos. Se le conoce como controlador PID debido a
las tres acciones de manipulaci
on que lleva a cabo sobre el error generado entre la Referencia y la variable a
controlar. Dichas acciones son Proporcional, Integral y Derivativa.
Cuando los procesos demandan acciones mas complejas de control, la PC ha brindado soluciones diversas.
En primera instancia, da la oportunidad de generar un controlador PID discretizado, sin embargo, es posible
programar algoritmos de mayor complejidad en busca de una accion de control mas eficiente y robusta. En
tal caso, se habla de control no-convencional, donde destacan estrategias como son el dise
no de controladores
en espacio de estado y el control difuso.
El control difuso es una estrategia de control basada en conceptos de la logica difusa, la cual procesa informacion de forma cualitativa en lugar de hacerlo cuantitativamente. Lo anterior permite emular y reproducir
la experiencia y el conocimiento de expertos en un sistema. Tales caractersticas han permitido que dicho
esquema de control, en ciertas aplicaciones, brinde mejores resultados que las estrategias convencionales.
El presente captulo busca brindar una introduccion al control difuso, de manera que expone los conceptos
requeridos para su comprensi
on. Se encuentra distribuido como sigue: primeramente la seccion 1.2 da una
breve explicaci
on de lo que se entiende por conjuntos difusos y logica difusa, la seccion 1.3 explica los pasos
que deben seguirse para la implementaci
on de un controlador difuso a la vez que desarrolla un caso de
estudio. Finalmente, se exponen las conclusiones de este captulo.

1.2.
1.2.1.

Preliminares
Conjuntos difusos

En la Teora de Conjuntos Cl
asica se tiene que, dado un Conjunto bien definido, un elemento pertenece
o no pertenece al mismo, de forma que es posible asignar a cualquier elemento un valor entre {0, 1} para
poder indicar si pertenece a determinado conjunto o no. En el caso de Conjuntos Difusos, el valor que se le
asigna a un elemento se encuentra entre [0, 1], es decir, un intervalo en < (N
umeros Reales), de manera que
ahora se habla de la posibilidad de pertenencia de un elemento en un conjunto determinado.
Dado lo anterior, mientras que un conjunto en la teora clasica se representaba con la simple enumeracion
o caracterizaci
on de sus elementos, un conjunto en la teora difusa se representa como el conjunto de pares
ordenados de elementos con su correspondiente valor de posibilidad de pertenencia al conjunto, es decir,
siendo F un conjunto difuso, este se define como F = {(u, F (u))|uU }. El valor de posibilidad de pertenencia
a un conjunto se conoce como grado de membresa i (j), la cual es una funcion que asigna a un elemento
3

j un real en el intervalo [0, 1] que define la posibilidad de pertenencia al conjunto i. En otras palabras,
F : U [0, 1].

1.2.2.

L
ogica difusa

La logica cl
asica (formal) se encarga del estudio de un lenguaje simbolico, de manera que es capaz de
abstraer del mismo sus contenidos. De tal manera a cualquier proposicion se le es posible asignar un valor
de verdad (falso o verdadero). Usualmente, se conviene asignar un 1 a la proposicion si es verdadera y un 0
si es falsa. La l
ogica formal define tambien operadores de manera que es capaz de relacionar proposiciones
entre s. Cuando esto sucede, las proposiciones se conoceran como antecedentes que generan como resultado
un consecuente con un valor de verdad. Una de las aportaciones directas de la misma es el algebra booleana,
ampliamente utilizada en el desarrollo de ordenadores y maquinas de estado finito.
En el contexto de la l
ogica difusa, proposiciones, antecedentes y consecuentes ahora toman valores en el
intervalo [0, 1], de manera que ya no se habla del valor de verdad, sino de la posibilidad de ser verdadero o
de la posibilidad de ser falso. Los operadores son similares a los de la logica formal y seran expuestos en la
seccion 1.3.2.

1.3.

Control difuso

Por control difuso no debe entenderse un control en el que la(s) variables de manipulacion son desconocidas
o que se cuente con incertidumbre en las mismas. Por control difuso debe entenderse un control en el
que las variables de entrada y de salida dejan de manejarse de forma cuantitativa para ser procesadas
en forma cualitativa. De tal forma, una accion de control que recibe como retroalimentacion un nivel de
temperatura, deja de procesarla cuantitativamente (ya fuese en terminos de o C,o F o K) para procesarla
cualitativamente, por ejemplo, normal, caliente, muy caliente, extremadamente caliente. Lo mismo sucede
con la variable de control, flujo de gas por ejemplo, que tomara valores como pueden ser mucho f lujo,
pocoF lujo, masomenosmuchof lujo, por mencionar algunos. Un controlador como este, se observa entonces,
puede ser dise
nado de manera que se logre emigrar la experiencia emprica de un operador a un sistema que
lo emule de forma autom
atica.
Se dicen tres los pasos para poder llevar a implementacion un controlador difuso: la fuzzificacion, el
mecanismo de inferencia y la defuzzificacion. El primero de ellos consiste en la traduccion de variables
medibles en elementos difusos (cualitativos). El Mecanismo de inferencia desprende conclusiones a partir de
las variables fuzzificadas en el paso anterior. Dichas conclusiones no son cuantificables a
un, y deben pasar
por un proceso de defuzzificaci
on para poder ser empleadas como acciones de control de forma automatica.
A lo largo de esta secci
on ser
an expuestos los pasos anteriores para la implementacion del controlador
difuso. Con objeto de clarificarlos, se considerara un caso de estudio, que describe una situacion (sistema) el
cual se desea controlar. Dicho caso se expone a continuacion:
Caso de Estudio: Una abuelita, experta en el cuidado de rosales, comenta que vierte agua en los mismos
dependiendo del calor que hace en el da y que tan seca esta la tierra por el tiempo que se ha tenido en
la semana. Se desea tener un controlador que emule este trabajo, dado que sus rosales son los mejores
y son los que entregan las mejores rosas.

1.3.1.

Proceso de Fuzzificaci
on

Para poder llevar a cabo el proceso de Fuzzificacion, es necesario definir los conjuntos difusos que seran
empleados, de forma que puedan ser catalogadas las variables de entrada. As mismo, es necesario definir
los grados de membresa para las variables de control. Si fuera el caso se tratase de una variable discreta,
basta con definir los grados de membresa de cada uno de los valores de la variable. En el caso de tratarse
de una variable continua, es necesario definir entonces una funcion de membresa que asigne la posibilidad
de pertenencia a cualquier valor.
4

Funciones de Pertenencia
Las funciones de pertenencia empleadas con mayor frecuencia se exponen a continuacion. Es posible
emplear funciones de membresa mas complejas, sin embargo, las siguientes son facilmente implementables
y entregan buenos resultados en el control.
Funcion : U [0, 1]: Es una funcion seccionada definida por dos parametros (, ). El primero de
ellos define el valor m
aximo de la variable a fuzzificar con grado de membresa 0. El segundo, define el
valor a partir del cual el grado de membresa de la variable es 1 (figura 1.1).

u<
0
(u )/( ) u
(u; , ) =
(1.1)

1
u>

Figura 1.1: Funcion Gamma


Funcion L : U [0, 1]: Es una funcion seccionada definida por dos parametros (, ). El primero de
ellos define el valor m
aximo de la variable a fuzzificar con grado de membresa 1. El segundo, define el
valor a partir del cual el grado de membresa de la variable es 0 (figura 1.2).

u<
1
( u)/( ) u
L(u; , ) =
(1.2)

0
u>

Figura 1.2: Funcion L


Funcion : U [0, 1]: Es una funci
on seccionada definida por tres parametros (, , ) que describen
un triangulo (figura 1.3). El primer y tercer parametros determinan la base del triangulo, mientras que
el segundo par
ametro determina el valor u
nico de la variable con grado de membresa 1.

0
u<

(u )/( ) u
(u; , , ) =
(1.3)
( u)/( ) u

0
u>

Figura 1.3: Funcion Triangular ()


Funcion : U [0, 1]: Es una funcion seccionada definida por cuatro parametros (, , , ) que
describen un trapecio(figura 1.4).El primer y cuarto parametros definen la base del trapecio, mientras
que el segundo y tercer par
ametro definen la region donde la variable posee grado de membresa de
1. Mediante una correcta selecci
on de los parametros, la funcion trapezoidal puede emular las tres
anteriores:
Si = , se logra la funci
on .
Si = , se logra la funci
on L.
Si = , se logra la funci
on .

(u )/( )
1
(u; , , , ) =

( u)/( )

u<
u<
u
<u
u>

(1.4)

Figura 1.4: Funcion Trapezoidal ()

Fuzzificaci
on del Caso de Estudio
Acorde con el ejemplo propuesto, se procede a determinar tantos los conjuntos difusos de entrada como
los de salida. Lo anterior solo se puede lograr en virtud de un alto conocimiento del sistema, que solo el
experto puede brindar. Por lo anterior, tras varias platicas con la abuelita experta, se determinan valores
cuantificables con sus funciones de membresa para poder asignar a las variables de entrada y salida valores
cualitativos.
En la figura 1.5 se muestran las funciones de pertenencia para el caso de estudio. Primeramente se definen
los tres conjuntos difusos para definir lo caluroso del da: Fro (F ), Templado (T ), Caluroso(C). La variable
cuantitativa de entrada es la temperatura, de manera que cada valor de temperatura en grados centgrados
recibira un grado de membresa en cada conjunto. Posteriormente, se establece la funcion de membresa que
asigna la variaci
on en el porcentaje de humedad de la tierra del rosal a los conjuntos difusos Tierra H
umeda
(H), Tierra Normal (N ), Tierra Seca (S). Finalmente se encuentra la variable de manipulacion, tazas de
agua que se vierten en el rosal. Se definen cinco conjuntos difusos: Casi nada de agua (- -), Poca agua (-),
Lo normal (0), Mucha agua (+) y Bastante Agua (++).
6

Figura 1.5: Funciones de membresa del caso de estudio: temperatura (superior izquierda), humedad (superior
derecha) y tazas de agua (inferior).
Supongamos se desea fuzzificar la dos situaciones diferentes para determinar dos diferentes acciones de
control:
1. Sea el clima en el da de 28.5o C y el cambio en porcentaje de humedad de -2.5 %. Con esas condiciones,
se observa que el grado de membresa de la temperatura en el conjunto F es 0.0, en el conjunto T es
de 0.75 y en el conjunto C de 0.25. A su vez, el cambio en humedad lograra un grado de membresa
en el conjunto N de 0.5, en el S de 0.5 y de 0.0 en H.
2. Sea el clima en el da de 21.5o C y el cambio en porcentaje de humedad de 0.0 %. Con esas condiciones,
se observa que el grado de membresa de la temperatura en el conjunto F es 0.5, en el conjunto T es
de 0.5 y en el conjunto C de 0.0. A su vez, el cambio en humedad lograra un grado de membresa en
el conjunto N de 1.0, en el S de 0.0 al igual que en H.

1.3.2.

Mecanismo de Inferencia Difusa

En el mecanismo de inferencia difusa, se emplean las variables que han sido fuzzificadas (conociendose
ahora como antecedentes) para desprender conclusiones (consecuentes). El mecanismo es similar al de la
logica formal, que usa la conjunci
on, la disyuncion, el complemento y la implicacion. Sin embargo, deben
ser tomados en cuenta de alguna forma en este mecanismo los grados de membresa que logran las variables
de entrada. Ser
a necesario definir entonces la forma en que trabajan dichos operadores en el contexto de la
logica difuso y la forma en que los implicantes son generados.
Operadores Difusos
Los tres operadores son sencillos de manejar. En el caso de los dos u
ltimos, se hace referencia a Zadeh
debido a que el defini
o de tal forma a los dos operadores. Se dice esto, pues es posible definir de alguna otra
forma a los mismos y seguir siendo consistentes en el terreno de la logica difusa. Las propiedades que deben
cumplir los operadores para garantizar la consistencia se conocen como normas T en el caso de la conjuncion
y normas S en el de la disyunci
on. Ambas se exponen a continuacion:
Normas T: Las Normas T son identificadas con el operador Conjuncion. Las propiedades con las que
debe cumplir un operador conjunci
on son las siguientes:
T1 : a b = b a
T2 : (a b) c = a (b c)
T3 : a c b d a b c d
7

T4 : a 1 = a
Normas S: Hacen referencia al operador disyuncion. Un operador disyuncion debe cumplir con las
siguientes porpiedades:
S1 : a b = b a
S2 : (a b) c = a (b c)
S3 : a c b d a b c d
S4 : a 0 = a
Complemento: Un operador complemento C(x)debe cumplir con las siguientes propiedades:
C1 : C(0) = 1
C2 : a < b C(a) > C(b)
C3 : C(C(a)) = a
Respetando las condiciones anteriores, Zadeh define los operadores difusos de la siguiente forma:
Operador Complemento:
A0 (u) = 1 A (u)

(1.5)

AB (u) = mn(A (u), B (u))

(1.6)

AB (u) = max(A (u), B (u))

(1.7)

Operador Conjunci
on:

Operador Disyunci
on:

Implicaciones Difusas
La forma en que se relacionan antecedentes y consecuentes es por medio de implicaciones difusas. Como
sucedio con los operadores difusos, es posible definir de formas diferentes a la implicacion difusa. Las mas
relevantes se muestran a continuaci
on:
Implicaci
on de Zadeh
Rc (x, y) = max(min(A (x), B (y)), 1 A (x))

(1.8)

Rm (x, y) = mn(A (x), B (y))

(1.9)

Implicaci
on de Mamdani

Implicaci
on de G
odel

Rg (x, y) =

1
si (x) (y)
(y) de otra f orma

(1.10)

Figura 1.6: Relacion de implicaciones del Caso de Estudio


Mecanismo de Inferencia del Caso de Estudio
Se le pide a la abuelita ahora comente, dada su experiencia, la cantidad de agua que vertira en el rosal
dadas las condiciones que detecta en el mismo. De acuerdo a las dos condiciones de entrada (temperatura y
humedad en la tierra) ella toma las decisiones seg
un la figura 1.6.
Dados los grados de membresa del paso anterior, corresponde ahora determinar el grado de membresa
en los implicantes. Es claro que las reglas que se disparan en las dos situaciones propuestas con anterioridad
son:
1.

a) Da templado con tierra normal, por lo que se debe verter lo normal de agua.
b) Da templado con tierra seca, por lo que se debe verter bastante agua.
c) Da caluroso con tierra normal, por lo que se debe verter bastante agua.
d ) Da caluroso con tierra seca, por lo que se debe verter bastante agua.

2.

a) Da fro con tierra normal, por lo que se debe verter poca agua.
b) Da templado con tierra normal, por lo que se debe verter lo normal de agua.

En cada caso es necesario primero determinar el antecedente, que debera emplear el operador conjuncion
en cada caso. Aplicando el operador conjuncion de Zadeh se logran los respectivos antecedentes 0.5, 0.5,
0.25, 0.25 para el primer caso, y 0.5, 0.5 para el segundo.
Ahora, toca el turno de generar los consecuentes. Aplicando el implicante de Mamdani se logra lo anterior.
En la figura 1.7 se expone, por ejemplo, el conjunto de salida para la primer situacion propuesta en el caso
definido.

1.3.3.

Proceso de Defuzzificaci
on

Una vez que el proceso de inferencia difusa define un grado de membresa para los consecuentes, estos
deben ser traducidos en variables cuantificables, para poder ser usados como acciones de control. Los mas
empleados son: Singletons, Centroide, Promedio de areas, Centroide area maxima, Primer maximo, entre
otros. Se describir
an a continuaci
on los empleados frecuentemente para el control:
Singletons

Este
metodo busca sustituir el
area que abarca el conjunto difuso y concentrarlo en un solo punto,
de manera que el proceso de defuzzificacion se convierte ahora en el calculo de una media ponderada,
9

Figura 1.7: Implicantes generados por los antecedentes en la situacion 1: regla 1(superior izquierda), regla
2(superior derecha), reglas 3 y 4 (inferior izquierda) y la implicacion final (inferior derecha).
determinando as la manipulaci
on a llevar a cabo a partir del grado de membresa del implicante generado
en el proceso de inferencia.
PK
i ui
u = Pi=1
K
i=1 i

(1.11)

Centroide
Consiste en determinar el centro de gravedad de todas las areas generadas por el mecanismo de inferencia
difusa, y con ello, la manipulaci
on en forma cuantitativa que debe ser llevada a cabo de acuerdo al mecanismo
de inferencia difusa.
R
u U (u)du
u = UR
(1.12)
(u)du
U U
Promedio del centro de
areas
Se trata de un metodo de defuzzificaci
on similar al del centroide, pero es mucho mas rapido de computar.
En este algoritmo, se c
alcula la contribuci
on de cada area en los conjuntos de salida, sin importar los traslapes
que pudieran existir entre conjuntos adyacentes.
R
Pn
u
U (u)du

u = UR Pn k=1
(1.13)
k=1 U (u)du
U
Centroide del
area m
axima
Este algoritmo se utiliza cuando el conjunto de salida representa una region no convexa. El mismo calcula
el area maxima de entre todos los conjuntos de salida, y lo utiliza para determinar el valor cuantitativo de
la variable a defuzzificar.
Primer m
aximo
Similar al anterior, este algoritmo determina el valor de area maxima en los conjuntos de salida, y en vez
de utilizar su centroide para cuantificar la variable, lo hace con el valor que representa su primer maximo en
la dimension de la membresa.
10

Defuzzificaci
on del Caso de Estudio
Aplicando el metodo de fuzzificaci
on del centroide y definiendo una saturacion de diez tazas de agua para
verter al rosal, se logran las siguientes
areas:
Situacion 1:
area del Conjunto N= 0.75, area del Conjunto ++= 3.25.
Singletons: asumiendo que los mismos se encuentran en los valores 0.5, 1.0, 2.0, 3.0 y 5.0, se
logra que se deben verter 3.25 tazas de agua (se observa que de esta manera, al colocar el u
ltimo
singleton no en el centro de masa del trapecio, sino en un valor menor, se puede lograr una
manipulaci
on m
as conservadora).
Centroide: el centro de masa se encuentra en seis tazas de agua, que corresponde al punto que
divide el
area activada por el mecanismo de inferencia.
Promedio de
areas: el centro de masa se encuentra en seis tazas de agua, que corresponde al punto
que divide el
area activada por el mecanismo de inferencia. El mismo corresponde con el anterior,
debido a que no se traslaparon areas en el conjunto de salida.
Centro del
area m
axima: El
area maxima la corresponde el u
ltimo conjunto de salida, cuyo centro
de masa se encuentra en 7.250 tazas de agua.
Situacion 2:
area del Conjunto (-)= 0.5625, area del Conjunto (N)= 0.75, traslape en [1, 2] de 0.25.
Singletons: asumiendo la posici
on de los mismos como en el caso anterior, se logra una manipulaci
on de 1.5 tazas de agua.
Centroide: el centro de masa se encuentra en 1.75 tazas de agua, que corresponde al punto que
divide el
area activada por el mecanismo de inferencia.
Promedio de
areas: el centro de masa se encuentra en 1.95 tazas de agua, que corresponde al
punto que divide el
area activada por el mecanismo de inferencia.
Centro del
area m
axima: el
area maxima corresponde al conjunto N, por lo que el valor cuantitativo
se valora en 2.0 tazas de agua.

1.4.

Conclusiones

Se han expuesto los fundamentos b


asicos de la teora de conjuntos difusos, la logica difusa y su aplicacion
en el control autom
atico de sistemas, de manera que se cuenta ahora con una plataforma que permitira el
desarrollo de aplicaciones de controladores difusos, tal y como se desarrollara en el captulo 3 de este documento.

11

Identificaci
on de sistemas difusos
2.1.

Introducci
on

Para que un sistema de control trabaje adecuadamente la arquitectura del mismo debio haberse dise
nado
con un buen modelo del sistema para poder garantizar as su correcto desempe
no.
Dicho modelo puede obtenerse por metodos analticos, que requieren de un profundo conocimiento teorico
de los procesos involucrados en el sistema y deben cuidar el tipo de simplificaciones que llevan a cabo, con
la finalidad de no sacrificar la exactitud del modelo.
Es difcil que el ingeniero en control sea un experto en el conocimientos de todas las leyes fsicas involucradas en todos los sistemas que se pretenda automatizar. Por ello, la identificacion de sistemas es una
herramienta que, con base en datos provenientes del mismo sistema, busca el modelo que mejor lo represente,
permitiendo as elaborar el dise
no de la arquitectura de control.
Uno de los esquemas de control que ha mostrado buenos resultados es el Control Difuso, que modela
al sistema con base en reglas ling
usticas y procesa la accion de control de la misma forma. El esquema
de identificaci
on requerido para este tipo de control difiere de los conocidos, por lo que es necesario tomar
en cuenta herramientas de otros campos como redes neuronales, inteligencia artificial, algoritmos geneticos,
entre otros, para lograr la identificaci
on en terminos que el control difuso pueda procesar.
Este apartado expone los conceptos necesarios para llevar a cabo una identificacion de un sistema en
el contexto del control difuso. Las secciones 2.2 y 2.3 presentan introducen los conceptos de identificacion
y de sistemas difusos respectivamente. La seccion 2.4 expone la manera en que debe llevarse a cabo la
identificacion difusa.

2.2.

Identificaci
on de Sistemas

Con objeto de lograr una exitosa acci


on de control sobre un sistema cualquiera, es necesario contar con
un buen modelo din
amico del mismo. Dicho modelo dinamico puede ser obtenido ya sea analticamente
o por identificaci
on directa. El primero de ellos, el modelo dinamico Analtico del sistema requiere de un
conocimiento extenso y basto de las relaciones fsicas, qumicas, biologicas que tienen lugar en el sistema.
La identificaci
on consiste en obtener un modelo dinamico del sistema que se desea controlar. Metodos
ampliamente utilizados los constituyen el algoritmo de Mnimos Cuadrados, Algoritmo de Mnimos cuadrados
recursivos, Variable Instrumental entre otros. Estos algoritmos no son objeto de discusion en este documento
y pueden ser consultados en [4].
Para llevar a cabo una identificaci
on, el sistema debe ser sometido a una prueba, de manera que puedan
documentarse y registrarse las entradas al sistema y sus correspondientes salidas. Con estos datos se alimentan
al algoritmo de identificaci
on, que buscar
a el modelo que mejor se adapte a los datos. Tras la identificacion,
siempre es necesario llevar a cabo una validacion del modelo con nuevos datos.
12

2.3.

Sistemas Difusos

Los Sistemas Difusos son sistemas que se modelan y procesan en base a reglas ling
usticas, donde variables
de entrada y salida adquieren un valor cualitativo en lugar de uno cuantitativo. Usualmente, estos sistemas
se modelan por medio de reglas de implicacion SI EN T ON CES (IF T HEN ), donde los elementos de
la izquierda son conocidos como antecedentes y los de la derecha como consecuentes. Puede consultarse la
seccion 1.3 para una introducci
on a los sistemas y al control difuso.
Dado que los anteriores modelos trabajan en la identificacion de modelos cuantitativos, es necesario
hacer adecuaciones y modificaciones que permitan llevar a cabo la identificacion cualitativa que caracteriza
al Control Difuso.

2.4.

Identificaci
on de Sistemas Difusos

Como se ha comentado, la identificaci


on de un sistema difuso requiere se logre definir a las variables de
entrada y de salida como variables cualitativas. Para ello, la identificacion debe ser capaz de computar los
conjuntos difusos que participar
an en la etapa de fuzzificacion y defuzzificacion.

2.4.1.

Retropropagaci
on

El algoritmo de retropropagaci
on es un algoritmo que fue implementado primeramente en la identificacion
de sistemas no lineales en el contexto de redes neuronales. Sin embargo, es posible emplear este algoritmo
para la identificaci
on de sistemas no lineales como sistemas difusos ([6],[5]). Este algoritmo se basa en la
existencia de un modelo difuso de la forma descrita en las ecuaciones (2.1) y (2.2), que describen un sistema
difuso con defuzzificador de promedio central, regla del producto para la inferencia y funciones de membresa
tipo S (modelos difusos conocidos como Takani-Sugeno, TS).
PM
f (x) =

Qn
l
t
i=1 y [ i=1 i (xi )]
PM Qn
t
i=1 [ i=1 i (xi )]

(2.1)

1


x xl
1 + exp il 2 i

(2.2)

li (xi ) = il

Dicha funci
on puede ser representadas con una red neural de 3 capas (fig.2.1), donde representa una
funcion de membresa y los tri
angulos ganancias en la red. Se define ahora el algoritmo de entrenamiento de
retropropagaci
on:
Sea el par de entradas y salida (xp , dp ) donde xp <n y dp <. Se define como criterio de minimizacion
del mismo con la siguiente estructura: E = 12 |f (xp ) dp |2 . Para lograr la minimizacion de este error, los
parametros del sistema difuso son variados de acuerdo a las siguientes reglas de retropropagacion:
f d l
z
b

(2.3)

f d l
2(xpi xli (k))
(y f )z l
b
il2 (k)

(2.4)

f d l
2(xpi xli (k))2
(y f )z l
b
il3 (k)

(2.5)

y l (k + 1) = y l (k)
xli (k + 1) = xli (k)
il (k + 1) = il (k)

Dichas reglas de retropropagaci


on trabajan de la siguiente
normalizado f d
es
enviado
hacia
atr
as a la capa I; despues y l
b
l
entrada para y . Para lograr entrenar a xli y a il , el producto
enviado a la unidad de procesamiento de la capa I cuya salida
(2.4) y (2.5).
13

forma: Para lograr entrenar a y l el error


es actualizada usando (2.3) donde z l es la
del error normalizado con (y l f ) y z l es
es z l ; despues ambas son actualizadas con

Figura 2.1: Arquitectura Neural para la Identificacion del Sistema Difuso[6]


Existen dos ventajas principales de utilizar estos identificadores difusos en vez de utilizar un identificador
neural [6]:
Los par
ametros de los identificadores difusos se asocian facilmente con parametros fsicos:
Cada y l es el centro de un Consecuente en el conjunto difuso de las reglas IF-THEN.
El termino xli se asocia al centro del Antecedente.
El componente il representa los anchos de los Antecedentes.
Los identificadores difusos ofrecen un esquema natural y directo para incorporar la descripcion ling
ustica de los expertos.
Aplicaci
on Documentada: Robot Serial articulado
El algoritmo de retropropagaci
on puede ser empleado para la identificacion del modelo dinamico inverso
de un manipulador serial. En [5] se presentan los resultados de la implementacion de este algoritmo en un
manipulador MAMROB/Er15 de 6 gdl. para la identificacion de los primeros 3 grados de libertad.

2.4.2.

Identificaci
on de modelo TS por medio de Agrupaci
on (Clustering) y
Transformada de Hough

Para lograr la identificaci


on de Modelos Difusos del tipo TS, Min-Kee en [3, pp.93-108] propone un
algoritmo que puede ser condensado en cinco pasos:
1. Determinar las variables de entrada.
2. Identificaci
on de los consecuentes por medio de alguna de las siguientes estrategias:
a) HPC-MEANS (HyperPlan-Based C-MEANS).
b) Transformaci
on de Hough
3. Determinaci
on del n
umero de agrupadores (clusters).
4. Construcci
on de los Antecedentes del Sistema Difuso TS.
5. Optimizaci
on, donde los antecedentes y consecuentes son afinados usando el metodo de la gradiente.
.
14

2.4.3.

Proceso de Identificaci
on Difuso Gen
etico de Modelos Tipo Mamdani

En [3, pp. 216-250] se trata el problema de identificar sistemas difusos del tipo Mamdani con m
ultiples
entradas y m
ultiples salidas. Este proceso se compone de tres partes:
1. La construcci
on de reglas difusas geneticas basadas en algoritmos evolutivos y un metodo que sea capaz
de cubrir el conjunto entradas-salidas que se usa para identificar al modelo.
2. Una simplificaci
on genetica de las reglas difusas basados en algoritmos geneticos.
3. La refinaci
on de los par
ametros difusos basado en RCGA (real-code genetic algorithms).

2.4.4.

Identificaci
on de Modelos Difusos basados en aprendizaje

En [3, pp. 281-319] se expone la metodologa a seguir para implementar un algoritmo de identificacion
de modelos difusos del tipo Mamdani por medio del concepto de aprendizaje. El procedimiento para ello es
el siguiente:
1. Condicionamiento de los datos de entrenamiento.
2. Construcci
on un modelo inicial.
3. Evaluaci
on del modelo, donde el modelo actual es puesto a prueba con todo el conjunto de entrenamiento, determinando cu
al es el dato que induce el maximo error, el cual se convierte en el candidato para
el proceso de aprendizaje. Si el error es menor a la cota determinada, el algoritmo termina (paso 7).
4. Modificaci
on de la estructura del modelo.
5. Determinar los par
ametros que se adicionaran al modelo. Despues de este paso, el candidato de aprendizaje del paso 3 ha sido asimilado.
6. Ir al paso 3.
7. Validaci
on del modelo.

2.5.

Conclusiones

Se han presentado cuatro estrategias para la identificacion de diferentes sistemas difusos, lo cual facilita
el dise
no de esquemas de fuzzificaci
on y defuzzificacion. Lo anterior facilita as mismo el dise
no de esquemas
apropiados de control.

15

Desarrollo de aplicaci
on
3.1.

Introducci
on

El control difuso es una de la tecnicas de control conocidas como no convencionales. Dicho esquema
ha mostrado buenos resultados en procesos industriales donde se ha buscado traducir la experiencia y
conocimiento de los operadores de forma que se puedan emular las mismas de forma automatica. Dicho
esquema, como se
nala Driankov en su texto [2], ha sido capaz de minimizar el tiempo de dise
no en algunos
procesos industriales.
El siguiente captulo expone la implementacion de un controlador difuso con objeto de monitorear y
controlar un proceso de temperatura. Primeramente describira el proceso a controlar y el esquema del
controlador difuso a implementar. Posteriormente presenta el desarrollo de la HMI y las pruebas llevadas a
cabo. Finalmente, se exponen las conclusiones de esta seccion.

3.2.

Descripci
on del Proceso a Controlar

En la figura 3.1 se muestra la estaci


on de temperatura que se desea controlar. Dicha estacion fue dise
nada y
construida por personal academico del Departamento de Mecatronica y Automatizacion del ITESM Campus
Monterrey.
La comunicaci
on por PC se realiza a traves del puerto serial RS232, en el cual se tiene una resolucion de
ocho bits, permitiendo relacionar valores de la se
nal de manipulacion entre 0 y 100 % en valores del puerto
entre 0 y 255.
La estacion trabaja con una alimentacion de 127VCA. Utiliza un sensor/transductor de temperatura
LM36, el cual entrega una salida de 10mV/C. El mismo toma el nivel de temperatura en la salida de la
pistola y la transmite hacia los convertidores de voltaje (0-10V) o corriente (4-20mA) del transductor.

3.3.

Descripci
on del Controlador Difuso

Para la implementaci
on del Controlador Difuso, se ha desarrollado la librera Dif uso.h en lenguaje
C. La misma contiene declaraciones de diversas funciones para los procesos de fuzzificacion, inferencia y
defuzzificacion.

3.3.1.

Proceso de Fuzzificaci
on

Para el proceso de Fuzzificaci


on, se ha desarrollado la funcion f uzzif ica contenida en la librera Dif uso.h
desarrollada para la aplicaci
on.
El dise
no de esta funci
on contempla siete funciones de membresa para cada variable de entrada, as como
para la manipulaci
on. Cada funci
on de membresa debe definirse como una funcion trapezoidal de cuatro
16

Figura 3.1: Estacion de Control de Temperatura


parametros , , , . Se emplea este tipo de funcion, pues mediante una correcta seleccion de parametros
puede comportarse como una funci
on triangular.

3.3.2.

Mecanismo de Inferencia Difusa

La librera Dif uso.h contiene la funci


on inf iere que desarrolla el mecanismo de inferencia dentro del
controlador difuso.
Actualmente, la funci
on trabaja con la operacion conjuntiva definida por Zadeh y la regla implicante
desarrollada por Mamdani. La librera permite, con modificaciones menores, incluir otro tipo de reglas para
la conjuncion y la implicaci
on difusa.

3.3.3.

Proceso de Defuzzificaci
on

El proceso de Defuzzificaci
on hace uso de la funcion def uzzif ica para determinar el cambio en porcentaje
de manipulaci
on que debe ser aplicado. Emplea uno de dos mecanismos de inferencia posibles: Singleton y
Gravicentro.
Para el primero de ellos, es necesario definir un maximo de 7 singletons distribuidos en el rango de -100 a
100 % en el cambio de manipulaci
on. En el caso del gravicentro, la funcion determina el area en los conjuntos
de salida por medio de una discretizaci
on, de modo que se calcula el area de 200 segmentos rectangulares
de base la unidad, para determinar as el
area total. Finalmente, se contabiliza la ubicacion del valor de la
manipulacion donde se encuentra el centro de masa.

3.4.

Desarrollo de Interfaz M
aquina-Usuario (HMI)

El Desarrollo de la HMI se llev


o a cabo en LabWindows CVI para ser implementada en una computadora
Compaq Presario 1277 con 60MB en memoria RAM corriendo sobre la plataforma Windows 98.
En la figura 3.2 se muestra la ventana principal de la aplicacion. Como puede observarse, la aplicacion
permite efectuar pruebas en simulaci
on y proceso real. Cuenta con dos paneles de graficado: el primero
para mostrar Referencia y Variable de Control mientras que la segunda para mostrar el porcentaje de la
manipulacion empleada y el error generado al trabajar en modo automatico.
En la esquina superior derecha, puede observarse la seleccion de la estrategia de control. Por defecto, se
emplea el controlador PID discreto.
Al seleccionar la estrategia de control difuso, aparace la ventana referida en la figura 3.3. En la misma, es necesario definir tanto las funciones de membresa de las variables de entrada y del cambio en la
17

Figura 3.2: Sistema de Monitoreo y Control Sistemas POCTM: Ventana Principal de la Aplicacion
manipulacion (fase de fuzzificaci
on), las reglas que disparan las diversas combinaciones en las variables de
entrada (mecanismo de inferencia) y la forma en que se determinara el cambio en la manipulacion (fase de
defuzzificacion).
En la secci
on de fuzzificaci
on, es necesario determinar 28 parametros para cada variable. Los mismos
determinan las 7 funciones de membresa para cada una de ellas. Las primeras cuatro variables definen
la primer funci
on trapezoidal de membresa, las variables 5,6,7,8 definen la segunda funcion de membresa
trapezoidal y as sucesivamente.
El mecanismo de inferencia requiere se llene la tabla para poder indicar que reglas disparan las 49
combinaciones de las variables de entrada. En cada celda debe definirse un n
umero entre 0 y 6 que definen
el maximo de 7 reglas que pueden ser disparadas por el controlador. Los codigos que aparecen en la tabla
son los siguientes:
BN : Bastante negativo.
MN : Muy Negativo.
N : Negativo.
0 : Nada.
P : Positivo.
MP : Muy Positivo.
BP : Bastante Positivo.
Finalmente, el controlador requiere se defina el mecanismo de defuzzificacion. De ser seleccionado Singleton
es necesario definir la ubicaci
on de los mismos (un maximo de siete).
Al seleccionar OK, la HMI regresa a la pantalla principal mostrando la ventana que aparece en la figura
3.4. Se aprecia que aparece el arreglo rectangular definido en el mecanismo de inferencia difusa. Este recuadro
solo es expositivo, y muestra las reglas difusas que son disparadas durante el funcionamiento del esquema de
control.

3.5.

Pruebas de Desempe
no

Se comprob
o el desempe
no del controlador difuso en 4 sistemas: dos es simulacion y dos en tiempo real.
Se definieron las funciones de membresa que expone la figura 3.5 y las reglas de inferencia que propone
Driankov en su libro [2] para emular a un controlador PI (figura 3.6).
18

Figura 3.3: Especificaciones del Controlador Difuso

Figura 3.4: Monitoreo del Desempe


no del Controlador Difuso

Los 4 procesos fueron sometidos al mismo cambio en referencia (40 - 60) con el mismo tiempo de muestreo
(1 segundo). Los sistemas simulados corresponden a un POCTM. El primero de ellos tiene una relacion /
de 0.1 mientras que el segundo una relaci
on de 0.2. Los dos experimentos en tiempo real se hicieron en la
misma estacion. La diferencia entre ambos experimentos ha sido la velocidad de la pistola de aire (posicion 1
a 2). El metodo de defuzzificaci
on por medio del calculo del centro de masa no entrego buenos resultados, por
lo que solamente se exponen los resultados utilizando singletons como metodo de defuzzificacion (lo anterior
solo indica que no fueron seleccionados adecuadamente los conjuntos difusos de salida). Los resultados se
exponen a continuaci
on:

3.5.1.

Simulaci
on: Sistema 1

El primer sistema para pruebas es un primer orden con parametros K = 1,25 , = 15,0 y = 1,5
con tiempo de muestreo de 1 segundo. Su tiempo de estabilizacion fue de 77 segundos y su porcentaje de
sobretiro de 50 % (figura 3.7).
19

Figura 3.5: Funciones de membresa implementadas para el control de temperatura

Figura 3.6: Reglas de inferencia difusas para emular un controlador PI

Figura 3.7: Respuesta del Proceso a un cambio en referencia de 40C a 60C. K = 1,25, = 15,0, = 1,5,
muestreo de 1.0 segundos.

20

3.5.2.

Simulaci
on: Sistema 2

El segundo sistema para pruebas es un primer orden con parametros K = 1,25 , = 15,0 y = 3,0
con tiempo de muestreo de 1 segundo. Su tiempo de estabilizacion fue de 148 segundos y su porcentaje de
sobretiro de 70 % (figura 3.8).

Figura 3.8: Respuesta del Proceso a un cambio en referencia de 40C a 60C. K = 1,25, = 15,0, = 3,0,
muestreo de 1.0 segundos.

3.5.3.

Proceso Real: Sistema 1

En tiempo real, para la perilla de velocidad en su nivel mas bajo, se logro un tiempo de estabilizacion de
195 segundos y su porcentaje de sobretiro de 65 % (figura 3.9).

Figura 3.9: Respuesta del Proceso Real a un cambio en referencia de 40C a 60C. Muestreo de 1.0 segundos.

3.5.4.

Proceso Real: Sistema 2

En tiempo real, para la perilla de velocidad en su nivel mas alto, se logro un tiempo de estabilizacion de
155 segundos y su porcentaje de sobretiro de 19.5 % (figura 3.10).
21

Figura 3.10: Respuesta del Proceso Real a un cambio en referencia de 40C a 60C. Muestreo de 1.0 segundos.

3.6.

Conclusiones

En el anterior captulo se presenta la implementacion de un controlador en plataforma LabWindows CVI


para el monitoreo y control de un proceso de temperatura. El sistema mostro ser capaz de controlar los
procesos descritos en la secci
on anterior. Dicho controlador difuso a
un presenta areas de oportunidad para
lograr un mejor desempe
no en el control.
La implementaci
on se logr
o por medio de la programacion de una librera en plataforma C, la cual es
posible utilizar en proyectos o programas posteriores que involucren el desarrollo de controladores difusos.
As mismo, dicha librera cuenta con el grado de flexibilidad necesario para dar de alta nuevas reglas de
conjuncion, implicaci
on y de defuzzificaci
on.
En el desarrollo de la HMI fueron contempladas herramientas para asistir al dise
no del controlador difuso,
como lo es el gr
afico de reglas que muestra las inferencias que son activadas en cada tiempo de muestreo.
Se tienen contemplados as mismo gr
aficos que aporten una visualizacion de los conjuntos difusos que son
definidos para cada una de las variables.
Como trabajo posterior, se recomienda lograr la optimizacion del controlador mediante otras selecciones
de los conjuntos difusos y evaluar el desempe
no del mismo con un controlador PID sintonizado por medio de
alguno de los criterios integrales. As mismo, comparar su desempe
no contra arquitecturas de control mas
sofisticadas como son predictores Smith, lazos cascada y de antealimentacion.

22

Bibliografa
[1] Robert Babuska. Fuzzy Modeling for Control. International Series in intelligent Technologies. KAP, 1998.
[2] M. Reinfrank D. Driankov, H.Hellendoorn. An introduction to Fuzzy Control. Springer, 1993.
[3] D Driankov H. Hellendoorn, editor. Fuzzy Model Identification, Selected Approaches. Springer, 1997.
[4] Landau I.D. System Identification and Control Design. Prentice Hall, 1990.
[5] Imre Rudas Kermalettin Erbatur, Okyay Kaynak. Fuzzy identifier based inverse dynamics control for a
3-dof articulated manipulator. 1997.
[6] Li-Xin-Wang. Adaptive Fuzzy Systems and Control: Design and Stability Analisys. Prentice Hall, 1994.
[7] Dimiter Driankov Rainer Palm. Fuzzy switched hybrid systems - modeling and identification. Proceedings
of the IEEE.

[8] Max Suell Dutra Salvador M.C.Netto,


Alexandre Evsukoff. Fuzzy systems to solve inverse kinematics
problem in robots control: Application to an hexapod robotsleg. Proceedings of the IEEE.

23

You might also like