Sunteți pe pagina 1din 5

Revista Colombiana de Fsica, vol. , No.

, Mes 2010

Control de Temperatura Utilizando Lgica Difusa Temperature Controller by Using Fuzzy Logic
C. Palacio-Gmez y J. Garca-Sucerquia*
Escuela de Fsica, Universidad Nacional de Colombia Sede Medelln, A.A. 3840, Medelln, Colombia jigarcia@unal.edu.co Recibido XXXX; Aceptado XXXX; Publicado en lnea XXXX

Resumen
La lgica difusa es una herramienta de toma de decisiones. Inicialmente fue concebida como un concepto matemtico con nica finalidad de involucrar datos numricos y trminos lingsticos para representar la forma de razonamiento comn cualitativo. Esta herramienta se utiliza muy eficientemente para realizar control de variables fsicas que se adaptan al conjunto de reglas de dicha lgica, como por ejemplo la temperatura. En este trabajo presenta el diseo e implementacin de un control de temperatura que utiliza lgica difusa como elemento de toma de decisiones. La temperatura es fijada a un valor preestablecido en el rango de temperaturas de 30 hasta 100 grados centgrados. El corazn del sistema es un microcontrolador PIC 16F877A el cual es conectado a un PC para monitorear y establecer en tiempo real la temperatura del sistema controlado. Palabras claves: Lgica difusa, PIC16F877A, JAVA.

Abstract
Fuzzy logic is a tool for making decisions. At its beginning it was conceived as a mathematical concept with the only aim of using numeric data and oral language terms for representing the regular way of qualitative thinking. This tool is efficiently used for controlling physical variables, like temperature and humidity, which fit the set of rules of this logic. In the work it is presented the design and implementation of a temperature control that uses fuzzy logic as tool for making decisions. The temperature is kept at a preset value in the range of 30 to 100 Celsius degrees. The core of the system is a PIC 16F877A microcontroller which is linked to a personal computer to monitor and establish in real time the temperature of the controlled system. Keywords: fuzzy logic, PIC16F877A, JAVA. 2010 Revista Colombiana de Fsica. Todos los derechos reservados.

1. Introduccin La lgica difusa surge de la necesidad de formalizar en un lenguaje matemtico algunas situaciones de la vida cotidiana imprecisas o sin un valor explcito, no cuantificable numricamente. El pensamiento humano, por ejemplo, se construye a partir de elementos lingsticos, no mediante nmeros; y si la lgica es la ciencia que busca representar el razonamiento, debe tener en cuenta estos factores. La lgica difusa en particular, sirve para representar muy convenien1

temente dichos conocimientos y datos inexactos [1]. En la lgica clsica un elemento pertenece, o no pertenece a un determinado conjunto, pero si a modo de ejemplo supusiramos que se est clasificando la estatura de las personas en conjuntos particulares, sera injusto afirmar que una persona con 1.79 m de estatura perteneciera al grupo Estatura Media, y otra con 1.80 m al de Estatura Alta. En lgica difusa se soluciona este tipo de situaciones, pues all se consideran grados de pertenencia a los conjuntos, esto es, un elemento

Palacio-Gomez et al.: Control de Temperatura Utilizando Lgica Difusa

puede pertenecer a ms de un conjunto en un grado determinado. En muchas aplicaciones tecnolgicas es necesario desarrollar sistemas que tomen decisiones con base en un conjunto de variables de entrada. La lgica difusa aporta soluciones interesantes para estas situaciones, en particular en aquellas donde los valores de variables que determinan la salida pueden ser agrupadas en conjuntos. Un ejemplo de este tipo de aplicaciones es el control de variables fsicas. Controlar variables fsicas como temperatura, humedad, luminosidad entre otras, juega un papel de gran importancia en los sectores de la vida cotidiana y/o del desarrollo tecnolgico y cientfico. Sistemas que cubren desde el control de la temperatura y humedad de una vivienda hasta el control de la transferencia de calor en un sistema de generacin de energa nuclear, pueden ser enmarcados dentro de lo que se denomina sistemas de control [2]. En todos los sistemas de control se establece un valor predeterminado de la variable fsica de inters; este valor se denomina en Ingls setpoint. Se realiza una medicin del valor de la variable en el sistema fsico y se considera diferencia entre esta medicin y el setpoint. Dicha diferencia se denomina el error del sistema e t y la forma como ste se procese determina la clase de control. Dentro de los sistemas clsicos de control el ms difundido es el PropocionalIntegral-Derivativo (PID), e ilustrado en la fig. 1. En ste, la seccin proporcional (P) reacciona de acuerdo al error actual del sistema; el valor integral (I) genera su salida de acuerdo a la suma del error en el tiempo y la accin derivativa (D) determina la accin con base a la rata de cambio temporal del error. El sistema PID es ampliamente utilizado y se emplea en sistemas de control de temperatura, humedad, velocidad de motores, etc.

predecir el comportamiento del sistema en el tiempo y de esa forma obtener un valor aproximado de las constantes. Sin embargo el ajuste final del sistema se realiza por medio del un proceso de ensayo y error, lo que constituye en algunas situaciones limitante del control PID. Una forma ms moderna de control es el control por lgica difusa [3]. La lgica difusa es una forma de lgica multivariada que trata con razonamiento aproximado ms que exacto. En contraste con la lgica digital en la cual las variables tiene nicamente los valores uno o cero, las variables en la lgica difusa puede adoptar cualquier valor entre estos dos valores extremos. Este rango ampliado de valores le brinda a las variables difusas la posibilidad de tener grados de pertenencia, porcentajes de verdad o permite calificar una afirmacin en una escala ms amplia que falsa o verdadera. Por esta caractersticas la lgica difusa se adapta mucho mejor al mundo en el cual vivimos pues permite interpretar expresiones de la vida cotidiana como es muy claro, est muy caliente o hace mucho fro. En este trabajo se presenta la aplicacin de la lgica difusa al diseo de un control de temperatura que opera en el rango de los 30 a los 100 grados centgrados. El control se dise con base en nueve conjuntos difusos. En la siguiente seccin se hace una breve introduccin al control difuso. En la seccin 3 se presentan los resultados y se finaliza con algunas conclusiones. 2. Introduccin al control difuso El control difuso es una forma de control adaptativo en el cual el controlador usa lgica difusa para tomar las decisiones en lo relativa al ajuste del proceso. Esta lgica permite interconectar de una manera directa variables de tipo anlogo que toman valores en un continuo, a sistemas discretos como los de los computadores que manipulan variables con valores definidos en un conjunto discreto. La lgica difusa es una forma de lgica de computacin donde si algo est o no est incluido en un conjunto se soporta en una escala graduada en la cual mltiples factores son considerados y valorados por el computador. La idea esencial del control difuso es crear una clase de inteligencia artificial que tenga en cuenta numerosas variables, formula una teora de como mejorar el sistema, ajusta el proceso y aprende de los resultados. 2.1 Conjuntos difusos

P
Setpoint +

K P e t
+

e t

K I e d
t 0

Proceso

KD

d e t dt

Fig. 1. Esquema general de un control PID

El proceso de optimizacin del sistema de control PID se lleva a cabo por medio del clculo de las constantes del sistema, Kp, KI y KD, ver fig. 1. Este proceso puede ser llevado en su primera aproximacin por medio de la modelacin del sistema a controlar, proceso el cual generalmente tiene un alto costo computacional. Esta modelacin permite 2

La posibilidad que brinda la lgica difusa de proveer sistemas de cmputo discreto con valores que pertenecen a un continuo se debe a la seleccin apropiada de los conjuntos difusos [4] que describen el sistema a controlar. Los conjuntos difusos son aquellos en los cuales sus miembros tienen un grado de pertenencia, de forma tal que el cien por ciento de la pertenencia de un miembro se puede dividir entre los

rev. col. fs.(c), vol. , No. , (2010)

diferentes conjuntos difusos que definen el sistema. En la fig. 2, se muestran como el rango de temperatura de un sistema ha sido divido en cinco conjuntos difusos (ver colores en la versin en lnea). Si en un tiempo dado la temperatura del sistema est ubicada entre T1 y T2, ilustrado por la lnea vertical slida en este intervalo, la variable temperatura actual tendr pertenencia al conjunto desde T0 hasta T2 y al conjunto desde T1 hasta T3. Similarmente para la situacin que se ejemplifica, aprovechando la posibilidad que brinda la lgica difusa de utilizar el lenguaje de la vida cotidiana para describir el sistema, se puede afirmar que para dicho tiempo el sistema esta entre Helado y Frio, segn se puede ver de la fig. 2. El proceso de convertir un valor nico de la variable fsica a controlar en un conjunto de valores de pertenencia a los conjuntos difusos se denomina en Ingls fuzzification.

3. Implementacin de control de temperatura por control difuso. Atendiendo a las posibilidades que brinda el control difuso, se desarroll un sistema de control de temperatura en el rango de 30 hasta 100 grados centgrados, que utiliza algoritmos de lgica difusa. En las secciones a continuacin se presenta: i) la definicin de los conjuntos difusos empleados, ii) los algoritmos de toma de decisiones, el sistema de control de potencia tipo PWM y iii) la interfaz grfica que permite el manejo del sistema de control por parte de un usuario. 3.1 Definicin de los conjuntos difusos del sistema Para esta aplicacin se escogieron ocho conjuntos difusos tal forma que la naturaleza de los elementos pertenecientes a ellos correspondiera a un valor T, que es la diferencia entre el valor de setpoint y el valor actual de la temperatura. Puesto que el control puede tanto aumentar como disminuir la temperatura del ambiente controlado, se tuvieron en cuenta conjuntos con valores positivos y negativos, segn se ilustra en la fig.3 De acuerdo a los valores de pertenencia a l o los conjuntos, el algoritmo de toma de decisiones determina la salida ms adecuada que conlleve a alcanzar la temperatura de setpoint de la manera ms eficiente.

Helado

Fro

Ambiente

Tibio

Caliente

0
T0 T1 T2 T3 T4 T5
setpoint

T
1

Neg Sig/. Alto

Neg Sig/. Medio

Neg. alto

Neg. bajo

Sig/. bajo bajo Medio Alto

Sig/. alto

Fig. 2. Ilustracin de conjuntos difusos para un rango de temperatura arbitrario

Ahora, una vez determinado el porcentaje de pertenencia de de la variable fsica bajo control a los diferente conjuntos difusos, un algoritmo de toma de decisiones estable cual debe ser la salida del sistema de control para lograr alcanzar y/o mantener la variable fsica en el valor determinado por el setpoint. Si como en el ejemplo ilustrado en la fig. 2 el valor actual de la temperatura se encuentra por debajo del valor deseado y establecido en el setpoint (lnea vertical punteada en la fig. 2), el sistema de control difuso debe tomar la decisin de suministrar energa al sistema de forma tal que su temperatura aumente. De igual forma la salida del sistema de control difuso puede ser un ensamble de conjuntos difusos, que determinan como se aplica la salida al sistema que se desea controlar; siguiendo con nuestro ejemplo, estos conjuntos difusos de salida deben determinar la forma como se suministra la energa al sistema. De las pertenencias de la variable resultante a los conjuntos difusos de salida se obtiene un nico valor que se aplica al sistema. Este proceso se denomina en ingls defuzzification y puede ser llevado a cabo por el mtodo del centroide, o el mtodo de la altura, entre otros [3]. 3

0
-70 -35 0 35 70

Fig. 3. Conjuntos difusos de la implementacin

La eleccin del nmero de conjuntos as como su distribucin no sigue algn criterio en particular. Simplemente se encontr que con cuatro y medio para la disminucin y cuatro y medio para el aumento de la temperatura del sistema, se logr un desempeo satisfactorio del algoritmo de toma de decisiones. 3.2 Algoritmo de toma de decisiones De acuerdo al valor setpoint y a la temperatura actual del sistema se calcula el valor T. Segn el valor particular T, una estructura if mltiple determina el conjunto(s) difuso(s) a el(los) cual(es) este T pertenece, y suministra igualmente el valor de pertenencia que oscila entre 0 y 1 para cada uno de ellos, por medio de una funcin de pertenencia. En la fig. 3 se observa que los conjuntos difusos estn formados por lneas rectas que obedecen a una ecuacin particular de acuerdo a su ubicacin en el plano de coordenadas. El valor de la funcin de pertenencia para un determinado conjunto,

Palacio-Gomez et al.: Control de Temperatura Utilizando Lgica Difusa

es el valor en el eje y dado por la ecuacin de la(s) recta(s) que coincida(n) con el intervalo donde se encuentre el T en evaluacin. Si la estructura if determina que T pertenece a un nico conjunto, desde luego su grado de pertenencia ser igual a 1. Despus de determinados los grados de pertenencia a los conjuntos difusos se obtiene la salida del sistema, es decir la defuzzification, por medio del mtodo del centroide [3]. En este mtodo esencialmente evala el centro de masa de las pertenencias a los conjuntos de la variable difusa. A manera de ejemplo en la fig. 3 se ha pintado una lnea slida vertical que seala un valor de T particular. Para ese T la estructura if determina una pertenencia a los conjuntos Medio y Alto, y la funcin de pertenencia establece 36.67% al conjunto Alto y 46.67% al conjunto Medio, respectivamente. Con estos valores el mtodo del centroide arroja un valor de salida de 99.45. Este valor es el que determina el ciclo de utilidad del PWM, como se ilustra en la siguiente seccin. En la fig. 4 se ilustra el mtodo del centroide para la situacin en la cual el valor de T esta representado para la lnea slida y la salida del proceso de defuzzification se ilustra con la lnea punteada. Los porcentajes de pertencia se representan por medio de los polgonos slidos. La salida de este proceso es el valor T defuzzificado.
Lnea del centro de masa

seal que administra el suministro de potencia del controlador fue 244 Hz y el ciclo de utilidad de esta se varo desde 100% hasta 0% tanto para calentar como para enfriar. Si el ciclo de calentamiento es diferente de 0% el de enfriamiento ser 0%, y viceversa. Puesto que el valor del PWM est codificado en 8-bit, el 100% de ciclo de utilidad corresponde a 255, y 0% corresponde lgicamente a 0.

3.4 Interfaz grfica de usuario. Adicionalmente al manejo del PWM del sistema el microcontrolador se encarga de la comunicacin serial entre ste y un computador personal (PC). Esta comunicacin tiene como finalidad la recepcin y envi de los parmetros de operacin del sistema de control. La interfaz grfica se dise haciendo uso de JAVA. sta presenta al usuario la temperatura en tiempo real, una grfica de la evolucin temporal de la misma y una tabla donde se consignan los datos de temperatura y tiempo. Otra funcin de la interfaz es permitir la seleccin del setpoint por medio de un cuadro de texto. En esta entrada de texto el usuario ingresa un valor deseado de temperatura, es decir un setpoint, que se encuentre entre los lmites impuestos en el sistema. Este valor es comunicado va RS-232C al microcontrolador y este ltimo realiza la operacin requeridas para satisfacer el pedido del usuario. La interfaz tiene el aspecto representado en la fig.5.

0
0

Fig. 4. Ilustracin del mtodo del centroide para conjuntos con pertenencia segn figuras slidas.

3.3 Sistema de control de potencia por PWM El valor defuzzificado arrojado por el algoritmo de toma de decisiones, permite ejercer una influencia directa sobre el ambiente controlado, ya sea aumentando o disminuyendo la temperatura. Esta accin sobre el sistema controlado es realizado por medio de un sistema de modulacin de ancho de pulso (PWM) [5]. Con el valor defuzzificado se vara el ciclo de utilidad del PWM acorde con el requerimiento de enfriamiento o calentamiento del ambiente controlado. El sistema de PWM fue implementado en un microcontrolador PIC 16F877A [6] con el uso del mdulo CCP y el timer2 de dicho microcontrolador. La frecuencia a la cual se gener la 4

Fig.5. Interfaz grfica desarrollada en JAVA que muestra el valor actual de la temperatura y su evolucin histrica. De igual forma se muestra el cuadro de ingreso del setpoint.

rev. col. fs.(c), vol. , No. , (2010)

Conclusiones A pesar del amplio desarrollo de los sistemas clsicos de control los PID, el uso del control difuso cobra validez en el desarrollo de sistemas de bajo costo econmico y/o computacional. Estos sistemas permiten su implementacin con el uso de sistemas microntrolados de 4- 8-bit, lo que los hace muy compactos y de reducido precio. En este trabajo nicamente se obtuvo un valor de PWM para el sistema dependiente de la accin especfica que se deseaba realizar. No se realizaron experimentos con actuadores que modificaran el ambiente a conveniencia del usuario. Esta etapa del proyecto determinar las caractersticas de los elementos de potencia para el control realizado. Dichos elementos dependen lgicamente de las dimensiones del ambiente a controlar, por consiguiente la estructura de dicha seccin de potencia ser decidida nicamente por el usuario acorde con sus necesidades. Agradecimientos: Los autores agradecen el apoyo de la Direccin de investigacin y la Faculta de Ciencias de la Universidad Nacional de Colombia Sede Medelln. Referencias
[1] GJ Klir, B Yuan. Fuzzy sets and fuzzy logic: theory and applications. NJ, USA. Prentice-Hall, Inc. Upper Saddle River, 1994. [2] K. Ogata. Modern control engineering. USA. Prentice-Hall, Inc., 1996. [3] Von Altrock, Constantin. Fuzzy logic and NeuroFuzzy applications explained. Upper Saddle River, NJ: Prentice Hall, 1995. [4] L. A. Zadeh. Fuzzy sets: Information and Control. 1965. 8 (3) pg. 338353. [5] DG Holmes, TA Lipo. Pulse width modulation for power

converters: principles and practice. Wiley, 2003.


[6] Microchip Technology Inc. PICmicro. Mid-Range MCU Family Reference Manual. Chandler, AZ, USA. December 1997. DS33023A.

S-ar putea să vă placă și