You are on page 1of 10

DISEO CONTROLADORES PID/FUZZY/PID-FUZZY PARA UNA PLANTA DE LUZ

EDGAR SALAS CARLOS ALOMOTO

DISEO E IMPLEMENTACIN DE CONTROLADORES PID, FUZZY Y PIDFUZZY PARA UNA PLANTA DE LUZ
ESCUELA POLITCNICA DEL EJRCITO FACULTAD DE INGENIERA MECATRNICA AUTOMATIZACIN INDUSTRIAL MECATRNICA ABRIL 2013

Abstract.- En este documento se realiza un anlisis completo de lo que es el diseo e implementacin de dos tipos de controladores existentes y muy utilizados a nivel industrial como son el PID y el control con lgica Difusa. Aplicndolos al control del porcentaje de iluminacin, por lo que tambin se ha incluido una breve descripcin de la construccin de una planta de luz didctica en la cual se ha implementado los dos tipos de controladores anteriormente mencionados. En el documento se realiza una breve explicacin de las caractersticas y parmetros que se deben tomar en cuenta para el desarrollo de cada uno de los controladores, relacionndolos con los aspectos propios del tipo de planta, para despus describir el procedimiento realizado en la implementacin de los mismos. Por ltimo se ha proporcionado una lista de consideraciones y recomendaciones que se han redactado por efecto de la experiencia que se ha obtenido despus del desarrollo de este trabajo mediante el anlisis de los resultados obtenidos. I. INTRODUCCION Si bien existen muchos tipos de control basados en este principio, el control proporcional, derivativo e integral (PID), es el que mayor implantacin tiene en la industria de procesos. Dicho control consiste esencialmente en obtener la accin de control como la suma de tres trminos: trmino proporcional, trmino derivativo y trmino integral. Se pueden obtener variaciones a este esquema consistentes en la no introduccin de los

Controlador PID.- El control automtico asienta sus bases esencialmente en el concepto de realimentacin. Este concepto se concreta en una estructura de control en la cual el controlador se puede entender como un operador, que en funcin de la salida deseada de la planta, y la salida real medida, proporciona la accin de control a aplicar sobre el sistema.

DISEO CONTROLADORES PID/FUZZY/PID-FUZZY PARA UNA PLANTA DE LUZ trminos derivativo e integral; en dicho caso el control coincide con el llamado control proporcional. Si solamente se prescinde de la accin integral, el control se denomina control proporcional derivativo (PD). Si, por el contrario, el nico trmino que desaparece es el derivativo, el control se denomina proporcional integral (PI). Segn estudios realizados en 95% de los bucles de control en la industria son del tipo PID, y fundamentalmente PI. Controlador FUZZY.- El desarrollo del control Fuzzy tiene, su origen en los sistemas basados en reglas para la toma de decisiones y en la lgica difusa para evaluacin de aquellas. Los controladores fuzzy, al igual que otros, toman los valores de las variables de entrada, realizan algn procedimiento con ellas, deciden como modificar las variables de salida y lo realizan, afectando estas ltimas en la planta. La diferencia esencial es que no procesan ecuaciones ni tablas, procesan reglas para decidir cmo cambiar las salidas. Esto lo hace una tecnologa muy accesible, ya que las reglas estn ms cerca del sentido comn que las ecuaciones y los modelos. Este mtodo de procesamiento de reglas est vinculado con los sistemas expertos, uno de los frutos tangibles de la Inteligencia Artificial (IA). Estos sistemas nacieron como consecuencia natural del desarrollo de esta disciplina, ya que era necesario agregar a los programas ese conocimiento y experiencia, que el experto humano tiene para resolver un determinado problema.

EDGAR SALAS CARLOS ALOMOTO agricultura y la ganadera hasta la inferencia en procesos industriales en el aspecto de realizar un eficiente consumo de energa y de esta manera optimizar recursos. Es por esto que el estudio de esta rama de la automatizacin es tan importante, ya que con los conocimientos necesarios en el comportamiento que tienen este tipo de plantas mediante la implementacin de los diferentes controladores, se podr adquirir la experiencia necesaria para en un futuro tomar en cuenta consideraciones fundamentales y as obtener los resultados deseados en la manipulacin de estos sistemas, reflejndose este hecho en el correcto desarrollo de cualquier proceso industrial. II. CONSTRUCCIN DE LA PLANTA DE LUZ

Para la construccin de la planta didctica de luz se utiliz un diseo simple y conciso que fue una caja cubica de madera (tabla triplex) a la cual se le fue confeccionando para adherir los diferentes accesorios y dispositivos electrnicos y as obtener los resultados que se muestran en la figura 1.

Figura 1. Planta de Luz didctica

Control de Iluminacin.- el control de iluminacin es un tema que tiene un sin fin de aplicaciones que van desde el campo de la

Materiales y acondicionamientos:

DISEO CONTROLADORES PID/FUZZY/PID-FUZZY PARA UNA PLANTA DE LUZ Dentro de los materiales electrnicos que se utilizaron para la conformacin de la planta estn los siguientes: Foco de 12V / 3A 2 LDRs de 1 M 2 potencimetros de precisin de 1 M 1 conversor DC-DC 1 transistor TIP 41 1 transistor 2N3904 Una regleta de espadines Baquelita Microprocesador utilizado:

EDGAR SALAS CARLOS ALOMOTO

Para la transmisin y recepcin de datos desde la PC a la planta y viceversa se opt por el uso de un microprocesador que ha tenido mucha acogida en los ltimos tiempos, este es el ARDUINO. Para nuestro proyecto especficamente se utiliz la versin MEGA 2560. Bsicamente esta tecnologa se basa en el uso de AVR que consta tambin de una placa de circuitera que se puede tomar a manera de un entrenador como se puede observar en la figura 3.

Estos dispositivos fueron utilizados para la implementacin de una placa de circuito impreso (figura 2), la cual consta de las siguientes aplicaciones: Un circuito de potencia en el que se realiza la amplificacin respectiva de corriente para alimentar al foco de 12V/3A. Dos divisores de voltaje con potencimetros de precisin para regular las lecturas de las LDRs. Un circuito regulador de voltaje DC para alimentar toda la placa que consta de un conversor DC-DC para evitar el uso de fuentes externas y as acreditar a la presentacin del proyecto.

Figura 3. Microprocesador ARDUINO MEGA 2560

Se consider este micro debido a su facilidad tanto en la programacin como al momento de transferir dicho programa al dispositivo, puesto que no necesita de un implemento extra como lo es el quemador en el caso de los PICs. III. TRATAMIENTO DE LA MICROPROCESADOR SEAL EN EL

En este paso del proyecto se realiz la configuracin del micro, es decir la programacin del mismo la cual debe considerar los siguientes aspectos: Configuracin de la comunicacin serial e inicializacin del pin anlogo 2 como salida, para lo cual se utiliza las siguientes lneas de cdigo en el void setup:
Figura 2. Placa de circuito para planta de luz

void setup() {

DISEO CONTROLADORES PID/FUZZY/PID-FUZZY PARA UNA PLANTA DE LUZ Serial.begin(9600); analogWrite(2,255); } Para la lectura e impresin de los LDRs se configura el pin A0 del arduino como entrada con su respectiva comunicacin con las siguientes lneas de cdigo: canal0 = analogRead(0); Serial.println(canal0); Es importante recalcar que en este tipo de procesador no es necesario configurar el TIMER 2 para la salida PWM. IV. CONFIGURACIN DE LA COMUNICACIN SERIAL EN MATLAB Y LABVIEW Uno de los pasos fundamentales para la implementacin de un control mediante cualquier software es la correcta configuracin de su comunicacin serial. Comunicacin Serial en Matlab: Para realizar la configuracin de la comunicacin en Matlab se deben considerar los siguientes parmetros: Velocidad de transmisin de datos Longitud del frame Bit de parada Bit de paridad Control de flujo Terminador (\n o enter)

EDGAR SALAS CARLOS ALOMOTO set(s,'StopBits',1); set(s,'Parity','none'); set(s,'FlowControl','none'); set(s,'Terminator','LF')

Sin embargo el software nos da la ventaja de realizar la comunicacin automticamente digitando nicamente las siguientes lneas de cdigo: arduino=serial('COM3','Baud Rate', 9600); set(arduino,'Timeout',1);

Pero de todas formas es muy importante tener el conocimiento del procedimiento real. Una vez que se ha realizado dicha configuracin es importante conocer algunas de las instrucciones que Matlab posee para realizar la transmisin y recepcin de datos entre la PC y el micro, las cuales se incluirn en las lneas de cdigo del programa total. fopen(comluz) fclose(comluz) Este par de instrucciones son las que abren y cierran el puerto respectivamente para de esta manera poder iniciar o finalizar la comunicacin serial. fprintf(comluz,'%s\n',pwm); Mediante el uso de la lnea anterior realizamos el envo de datos al microprocesador, en esta instruccin se toman en cuenta 3 parmetros que son: Nombre de la comunicacin. Tipo de dato de envo (en este caso es un string) con su respectivo terminador, previamente configurado. Y el nombre de la variable que contiene el valor que se desea enviar al micro.

Para la configuracin de dichos parmetros existen las respectivas lneas de cdigo, que son las siguientes: comluz=serial('COM3'); set(s,'BaudRate',9600); set(s,'DataBits',8);

DISEO CONTROLADORES PID/FUZZY/PID-FUZZY PARA UNA PLANTA DE LUZ

EDGAR SALAS CARLOS ALOMOTO intervienen en la transmisin y recepcin de datos. Para realizar la escritura desde la PC al micro se utiliza el bloque VISA Write, el cual considera los parmetros que se indican en la figura 5:

fscanf(comluz,'%d'); Para la lectura de informacin del micro se utiliza la anterior instruccin, la cual considera los siguientes parmetros: El nombre de la comunicacin. El tipo de dato a ser ledo Comunicacin Serial en LABVIEW: Para la configuracin de la comunicacin serial en este software los pasos son mucho ms sencillos debido que se trata de una programacin grfica. Por lo tanto especificaremos el procedimiento mediante el uso de imgenes. Bsicamente la configuracin del puerto se realiza mediante el uso de un solo bloque llamado VISA SERIAL, en el cual constan todos y cada uno de los parmetros mencionados anteriormente como se indica en la figura 4.

Figura 5. Configuracin de envo de datos en Labview

Mientras que para la proporciona el micro llamado VISA Read, tomando en cuenta muestran en la figura 6.

lectura de datos que se utiliza el bloque el cual se configura parmetros que se

Figura 6. Configuracin de lectura de datos en Labview

Figura 4. Configuracin del puerto serial en Labview

A diferencia de Matlab en este software solo se realiza la instruccin de cerrado del puerto serial ya que la apertura del mismo se genera en el bloque VISA SERIAL. Para esto el software se basa en el uso del bloque VISA Close considerando los aspectos que se muestran en la figura 7.

Sin embargo es prudente recalcar que el nico paso que se debe realizar estrictamente, es el de designar el puerto COM que se va ha utilizar ya que el resto de parmetros el software los designa por default como se muestra en la figura 4. Al igual que en el software Matlab, existen instrucciones o en este caso bloques que
Figura 7. Cierre del puerto serial en Labview

DISEO CONTROLADORES PID/FUZZY/PID-FUZZY PARA UNA PLANTA DE LUZ V. OBTENCIN DEL MODELO MATEMTICO DE LA PLANTA

EDGAR SALAS CARLOS ALOMOTO un vector de 4 muestras de las cuales se saca un promedio, del cual su respuesta es el dato que se tomar en cuenta para los clculos del modelo matemtico. Una vez hecho esto y tomando en cuenta el retardo que genera cada lnea de cdigo y las pausas que se impusieron para cada bucle tanto del micro como de la PC, se lleg a la conclusin que el tiempo de muestreo ptimo para el modelado de la planta es de 0.07 segundos.

Para la obtencin del modelo matemtico de la planta se ha utilizado el software Matlab, ya que este posee una herramienta muy amplia y til que se llama ident. Previo a esto se debe realizar primero un anlisis de un parmetro muy importante dentro de ste tema que es el TIEMPO DE MUESTREO. Pese a que el comportamiento de la planta de luz es de carcter anlogo, para poder realizar los respectivos controladores la PC digitaliza la seal proveniente del micro para lo cual se debe hacer una consideracin muy importante basada en el teorema de Nyquist, que dice si se realiza un nmero mnimo de 8 muestras en la primera oscilacin del sistema, este se encuentra muestreado correctamente y evitaremos aliasing, y que si el tiempo de muestreo de los datos es mucho menor a 8 muestras en la primera oscilacin se podr trabajar al controlador de manera anloga. Tomando en cuenta esta afirmacin se realiz e siguiente procedimiento: Primero se realiz un anlisis de la capacidad de envo y recepcin de datos del microprocesador (ARDUINO), mediante la creacin de un bucle que aumente la salida de pwm gradualmente desde el mnimo hasta el mximo y realizando una lectura mediante los LDRs al mismo tiempo, se cronometr dicho proceso para de esta manera poder calcular casi exactamente la velocidad de muestreo mxima del micro. Se obtuvo como resultado 0.015 seg. Posteriormente y a manera de un filtro mediante software (Matlab) se realiz un bucle que enva y recibe datos generando

Como ya se dijo anteriormente se realiz una toma de datos tanto de los valores de cambio en las resistencias (LDRs / Entrada) como los del PWM (Salida) generando de esta manera un comportamiento de la planta mostrado en la figura 8.

Figura 8. Comportamiento de la Planta de Luz (PWM vs LDR)

Ahora si se realizar entonces el modelado de la planta mediante el uso de la herramienta ident.

DISEO CONTROLADORES PID/FUZZY/PID-FUZZY PARA UNA PLANTA DE LUZ

EDGAR SALAS CARLOS ALOMOTO acciones que comprende este tipo de controlador. Controlador PID: El controlador PID bsico combina las acciones proporcional, derivativa e integral mediante el siguiente algoritmo de control: ( ) ( ( )
Ec. [1.1]

( )

( ) )

Figura 9. Panel de la herramienta IDENT de Matlab

En esta herramienta, se especifican aspectos como: Entradas Salidas Tipo de funcin de transferencia Nmero de polos Nmero de ceros

Por lo que tenemos que:


Ec. [1.2]

y observando que modelo se adapta al comportamiento de la planta se genera el modelo matemtico de la misma.

( )

A partir de la ecuacin [1.1] se realizara el algoritmo para la programacin de cada una de las acciones de control, tomando en cuenta que el controlador es simplemente la acumulacin de error. Por tal razn existirn dos variables para manipular el error y realizar la comparacin por realimentacin. Despus de esta consideracin se puede crear el siguiente cdigo para las acciones de control proporcional, integral y derivativo:
e1 = setpoint-porcentaje(2) %Proporcional P=Kp*e1 %Integral I=Ki*((e1+e0)/2*Ts + Intprev) Intprev = Intprev + Ki*((e1+e0)/2*Ts); %Derivativo D=Kd*(e1-e0)/Ts; u = P + I + D + u e0 = e1;

)(

VI.

DISEO DEL CONTROLADOR PID MEDIANTE EL SOFTWARE MATLAB

Para el diseo del controlador PID mediante el uso de Matlab comprende o depende bsicamente de la habilidad para programar del diseador, ya que los aspectos ms importantes que rigen la correcta implementacin de dicho controlador son: El ptimo manejo de la seal que proviene del microcontrolador. La correcta aplicacin de los algoritmos correspondientes a cada una de las

Esta parte del cdigo se encontrar dentro del bucle que realiza la transmisin y recepcin de datos al y desde el microprocesador. Por esta razn con la lnea e0 = e1; se podr

DISEO CONTROLADORES PID/FUZZY/PID-FUZZY PARA UNA PLANTA DE LUZ acumular la variacin de error y as poder realizar el control respectivo de la seal. Como se puede observar en el cdigo que se adjunt, la variable de control u es la que contiene la informacin o el valor que se desea enviar al microprocesador a manera de PWM. Posterior a esto se debe limitar la seal de control, ya que el micro utilizado tiene una resolucin de 0 a 255 (8 bits) mientras que Matlab posee una resolucin de 1024, pero que al momento del modelado de esta planta en particular se pudo observar que el rango de iluminacin de fue de 0 a 900. Es decir que a partir de 900, ya no exista variacin en la LDR. Para esto se genera las siguientes lneas de cdigo:
%Para controlar la saturacin de u if(u>=255) u=255; end if(u<=0) u=0; end

EDGAR SALAS CARLOS ALOMOTO En ciertos tipos de procesos es posible trabajar con una ganancia elevada sin tener ningn problema de estabilidad en el controlador. Una alta ganancia en un controlador P significa que el error en estado estacionario ser pequeo y no se necesitar incluir la accin integral. Controlador PD: Este tipo de control puede ser apropiado cuando el proceso a controlar incorpore ya un integrador. Por ejemplo un proceso trmico con un buen aislamiento opera de forma anloga a un integrador. La accin derivada es sensible al ruido ya que a altas frecuencias tiene una ganancia relativamente elevada, por lo tanto, en presencia de altos niveles de ruido se debe limitar dicha ganancia, o prescindir de la accin derivativa. Controlador PI: Esta es la estructura ms usual del controlador. La introduccin de la accin integral es la forma ms simple de eliminar el error en rgimen permanente. Otro caso en el que es comn utilizar la estructura PI es cuando el desfase que introduce el proceso es moderado (procesos con una constante de tiempo dominante o incluso integradores puros). Controlador PID: Se emplea para mejorar el comportamiento de procesos que no poseen grandes retardos pero que si presentan grandes desfases. Este es el caso tpico de procesos constantes de tiempo. con mltiples

Al realizar esta limitacin en la seal de control de la planta, se regula que no exista saturacin de ningn tipo (negativa/positiva). Una vez hecho esto se realiza entonces el envo de la seal al microprocesador mediante las siguientes lneas de cdigo:
pwm = uint16(u) pwmenvio = num2str(pwm);

Anteriormente se explic el programa que servir para un controlador PID, pero sin embargo existen plantas en las que no es necesario implementar este controlador como tal, sino solamente una de sus variaciones P, PI o PD. Tomando en cuenta las siguientes consideraciones: Controlador P:

Una vez que se ha determinado el tipo de controlador que se va a implementar, se debe efectuar el ajuste de los parmetros (sintona) para que la respuesta del sistema en lazo cerrado tenga unas caractersticas determinadas.

DISEO CONTROLADORES PID/FUZZY/PID-FUZZY PARA UNA PLANTA DE LUZ Para esto primero hemos realizado un anlisis bsico mediante el Matlab, tomando el modelo matemtico de la planta, analizndolo en lazo cerrado y probndolo con un escaln. Hecho esto observamos sus grficas de Bode para de esta manera saber si el sistema es estable. Anlisis de Resultados:

EDGAR SALAS CARLOS ALOMOTO para de esta manera poder determinar un correcto tiempo de muestreo. Es prudente recalcar que el correcto dimensionamiento de dispositivos electrnicos dentro de los circuitos utilizados para la implementacin de la planta, influye de sobremanera en la obtencin de una planta estable y sin mucho ruido, la cual generar una respuesta muy satisfactoria al momento de realizar su control. Un controlador PID genera una muy buena respuesta en la planta y su implementacin resulta de un proceso que, si se tienen los conocimientos adecuados acerca de los comportamientos que genera cada accin de control, no conlleva mayor dificultad puesto que se basa en clculos matemticos y simplemente se tomar tiempo al momento de sintonizar los parmetros que lo rigen. Por otro lado un controlador fuzzy se puede considerar que se da a partir de un anlisis de las entradas y salidas que se desea obtener, para de esta manera generar reglas que rigen el comportamiento de la planta lo que lo vuelve un procedimiento un poco ms engorroso. Pero sin duda con una mayor utilidad ya que dichas estas reglas se encuentran ms relacionadas con el sentido comn que cualquier clculo matemtico. Es por sta razn que los controladores que se realizaron bajo esta lgica resultaron ms precisos y con un plus que es el de generar una entrada extra que nos permita incluir parmetros ambientales.

Figura 10. Respuesta de la planta de luz mediante un control PID con un setpoint del 50%

Para nuestra planta se ha elegido un control PID, puesto que es el controlador que mejor respuesta del sistema proporcionaba. Es importante recalcar que el controlador suficiente para una planta de luz es el PI, que genera una buena respuesta del sistema, pero sin embargo al aumentarle la accin derivativa se consigui un tiempo de estabilizacin muy bajo y un error entre el -0.15 y 0.3 por ciento. VII. CONCLUSIONES Uno de los aspectos que influyen mucho para la implementacin de un controlador es sin duda la eleccin correcta del microprocesador, ya que ste es el que realiza la transmisin y recepcin de datos (interfaz) entre el computador y la planta. Dentro de ste aspecto hay que prestar mucha atencin a la resolucin del mismo,

VIII.

BIBLIOGRAFA

[1] Teodoro lamo Cantarero. Diseo del Controlador PID. Departamento de Ingeniera

DISEO CONTROLADORES PID/FUZZY/PID-FUZZY PARA UNA PLANTA DE LUZ de Sistemas y Automtica Universidad de Sevilla. [2] Juan Carlos Gmez. FUZZY CONTROL. Grupo de inteligencia Artificial y Robtica. Secretara de Ciencia y Tecnologa. Universidad Tecnolgica Nacional FRBA. [3] Virginia Mazzone. Controladores PID. Automatizacin y Control Industrial. Universidad Nacional de Quilmes. Marzo 2002.

EDGAR SALAS CARLOS ALOMOTO

10