7
Escuela Politécnica del Ejército Carrera de Ingeniería Mecatrónica SISTEMA DE CONTROL DE UNA PLANTA DE LUZ DISEÑO DE CONTROLADOR PID, FUZZY Y PI-FUZZY PARA UNA PLANTA DE LUZ MEDIANTE SOFTWARE MATLAB Y LABVIEW Xavier Villamar e-mail: [email protected] Santiago Jiménez e-mail: [email protected] RESUMEN: El artículo presenta la fomra detallada de como diseñar de la mejor manera diferentes tipos de controladores para una planta de luz, que fue construida en una caja de madera y utilizando como principal microcontrolador AVR y la placa de diseño ARDUINO, también un shield para poder colocar los leds y el acondicionamiento de los sensores (LDR) que servirán para la emisión y recepción de luz en el interior de la caja, para el control PID se utilizó el software MATLAB para la recepción de los datos, realizar el control, y enviar nuevamente al microcontrolador para su salida posterior PWM y modificar la intensidad de la luz según el valor de referencia. Los otros controladores se los realizó de una manera similar, para el envío y recepción de la señal pero utilizando diferentes criterios para el algoritmo y posterior programación en MATLAB y LABIEW ya que la programación en el microcontrolador es la misma para todos. PALABRAS CLAVE: PID, Fuzzy, Labiew, Matlab, PWM, LDR. 1 INTRODUCCIÓN El artículo presenta las características de cada uno de los controladores, así como el criterio para poder diseñar de una manera lógica distintos tipos de controladores para una planta de luz con sensores LDR y una salida desde le microcontrolador PWM. 1.1 OBJETIVO GENERAL Diseñar e implementar un sistema de control para una planta de luz, utilizando el entorno MATLAB y/o LABVIEW. 1.2 OBJETIVOS ESPECIFICOS Reconocer el tipo de sistema al que nos enfrentamos, las variables que se inbolucran en este tipo de sistema e identificar el mejor controlador que se logre diseñar. Diseñar un programa en el entorno MATLAB para realizar un controlador PID tal que, pueda reducir el error en estado estacionario, tomando en cuenta el valor de referencia o perturbaciones que se presenten en la planta. Estabilizar la planta de tal manera que se llegue a obtener un valor muy cercano a cero, de error en estado estacionario. 1.3 ALCANCE DEL ESTUDIO En el laboratorio se trata de implementar tres tipos tipos distintos de controladores, mediante dos tipos de software como son MATLAB y LABVIEW para el control de una planta de luz, el objetivo final que se pretende es que el error en estado estacionario sea el mínimo posible muy cercano a cero, ya que practicamente es imposible llegar al cero absoluto por el ruido que se filtra en la señal del sensor y por el tipo de sensor que se 1

Paper Controladores

Embed Size (px)

Citation preview

Page 1: Paper Controladores

Escuela Politécnica del Ejército Carrera de Ingeniería Mecatrónica

SISTEMA DE CONTROL DE UNA PLANTA DE LUZ

DISEÑO DE CONTROLADOR PID, FUZZY Y PI-FUZZY PARA UNA PLANTA DE LUZ MEDIANTE SOFTWARE MATLAB Y LABVIEW

Xavier Villamare-mail: [email protected]

Santiago Jiméneze-mail: [email protected]

RESUMEN: El artículo presenta la fomra detallada de como diseñar de la mejor manera diferentes tipos de controladores para una planta de luz, que fue construida en una caja de madera y utilizando como principal microcontrolador AVR y la placa de diseño ARDUINO, también un shield para poder colocar los leds y el acondicionamiento de los sensores (LDR) que servirán para la emisión y recepción de luz en el interior de la caja, para el control PID se utilizó el software MATLAB para la recepción de los datos, realizar el control, y enviar nuevamente al microcontrolador para su salida posterior PWM y modificar la intensidad de la luz según el valor de referencia. Los otros controladores se los realizó de una manera similar, para el envío y recepción de la señal pero utilizando diferentes criterios para el algoritmo y posterior programación en MATLAB y LABIEW ya que la programación en el microcontrolador es la misma para todos.

PALABRAS CLAVE: PID, Fuzzy, Labiew, Matlab, PWM, LDR.

1 INTRODUCCIÓN

El artículo presenta las características de cada uno de los controladores, así como el criterio para poder diseñar de una manera lógica distintos tipos de controladores para una planta de luz con sensores LDR y una salida desde le microcontrolador PWM.

1.1 OBJETIVO GENERAL

Diseñar e implementar un sistema de control para una planta de luz, utilizando el entorno MATLAB y/o LABVIEW.

1.2 OBJETIVOS ESPECIFICOS

Reconocer el tipo de sistema al que nos enfrentamos, las variables que se inbolucran en este tipo de sistema e identificar el mejor controlador que se logre diseñar.

Diseñar un programa en el entorno MATLAB para realizar un controlador PID tal que, pueda reducir el error en estado estacionario, tomando en cuenta el valor de

referencia o perturbaciones que se presenten en la planta.

Estabilizar la planta de tal manera que se llegue a obtener un valor muy cercano a cero, de error en estado estacionario.

1.3 ALCANCE DEL ESTUDIO

En el laboratorio se trata de implementar tres tipos tipos distintos de controladores, mediante dos tipos de software como son MATLAB y LABVIEW para el control de una planta de luz, el objetivo final que se pretende es que el error en estado estacionario sea el mínimo posible muy cercano a cero, ya que practicamente es imposible llegar al cero absoluto por el ruido que se filtra en la señal del sensor y por el tipo de sensor que se utiliza para medir la intensidad de luz, además lo que se intenta es que la velocidad de respuesta del controlador sea rápida y precisa. Como consecuencia de estos parámetros que nos asignamos es que, el sistema sea adecuado para su posterior comercialización y tenga un funcionamiento adecuado, considerando distintas perturbaciones.

El proyecto tambien incluye una placa ARDUINO, la cual tiene un microcontrolador AVR incorporado para su mayor facilidad de programación y asi obtener una velocidad de respuesta mucho mas rápida de la que se obtiendría con otros tipo microcontroladores.

2 GENERALIDADES

2.1 ARDUINO

Arduino es una plataforma de hardware libre, basada en una placa con un microcontrolador y un entorno de desarrollo, diseñada para facilitar el uso de la electrónica en proyectos multidisciplinares.

El hardware consiste en una placa con un microcontrolador Atmel AVR y puertos de entrada/salida. Los microcontroladores más usados son el Atmega168, Atmega328, Atmega1280, ATmega8 por su sencillez y bajo coste que permiten el desarrollo de múltiples diseños. Por otro lado el software consiste en un entorno de desarrollo que implementa el lenguaje de

1

Page 2: Paper Controladores

Escuela Politécnica del Ejército Carrera de Ingeniería Mecatrónica

SISTEMA DE CONTROL DE UNA PLANTA DE LUZ

programación Processing/Wiring y el cargador de arranque (boot loader) que corre en la placa.

2.2 MATLAB

MATLAB (abreviatura de MATrix LABoratory, "laboratorio de matrices") es una herramienta de software matemático que ofrece un entorno de desarrollo integrado (IDE) con un lenguaje de programación propio (lenguaje M).

2.3 LABVIEW

LabVIEW (acrónimo de Laboratory Virtual Instrumentation Engineering Workbench) es una plataforma y entorno de desarrollo para diseñar sistemas, con un lenguaje de programación visual gráfico. Recomendado para sistemas hardware y software de pruebas, control y diseño, simulado o real y embebido, pues acelera la productividad. El lenguaje que usa se llama lenguaje G, donde la G simboliza que es lenguaje Gráfico.

2.4 CONTROLADOR PID

Un PID es un mecanismo de control por realimentación que calcula la desviación o error entre un valor medido y el valor que se quiere obtener o tambien llamado valor de referencia (set point), para aplicar una acción correctora que ajuste el proceso. El algoritmo de cálculo del control PID se da en tres parámetros distintos: el proporcional, el integral, y el derivativo. El valor de una constante Proporcional determina la reacción del error actual en un tiempo relativamente rápido. El Integral genera una corrección proporcional a la integral del error, esto nos asegura que aplicando un esfuerzo de control suficiente, ya que actúa en la etapa de establecimiento, el error de seguimiento se reduce a cero. El Derivativo determina la reacción del tiempo en el que el error se produce, practicamente es la velocidad de cambio de error y se podría decir q actua luego de la parte Integral, ya que ésta constante evalúa el error que se obtiene a partir de la integración y actúa dependiendo de éste.

2.5 CONTROLADOR FUZZY

En nuestros días una alternativa muy útil en la realización de control sobre un sistema es el control difuso. Dicha alternativa permite, mediante el conocimiento experto de una o varias personas, generar una base de conocimientos que dará al sistema la capacidad de tomar decisiones sobre ciertas acciones que se presenten en su funcionamiento.

La denominada lógica difusa permite a los sistemas tratar con información que no es exacta; es decir, dicha información contiene un alto grado de imprecisión, contrario a la lógica tradicional que trabaja con información definida y precisa.

2.6 VARIABLES QUE INTERVIENEN

Existen señales que se deben tomar en cuenta para la implementación de un comtrolador en una planta de luz, a continucación daran detalles de éstas:

Señal de Salida: es la variable que se quiere controlar, para nuestro caso será la intensidad de luz en el interior de la caja.

Valor de Referencia: es el valor al cual se quiere llegar o set point.

Señal de Control: es la señal que produce el controlador para llegar al valor de referencia.

2.7 LDR

Una fotorresistencia o LDR es un componente electrónico cuya resistencia disminuye con el aumento de intensidad de luz incidente.

3 DESARROLLO

3.1 DISEÑO DE LA PLANTA

Para el control se requiere en primer lugar de una planta, la cual fue diseñada con el fin de obtener un cuarto obscuro y a la cual se la pueda añadir en cualquir momento perturbaciones para verificar la velocidad de respuesta que tiene el sistema.

La caja tiene una tapa principal, que es para poder remover los elementos que se coloquen en su interior y dos tapas pequeñas que, como se dijo antes, es para simular perturbaciones.

En la cara superior de la caja se colocó la placa de diseño ARDUINO y en ella se instaló un shield para ubicar en éste los leds, su acondicionamiento y tambien las LDR, éstos sensores fueron colocados en la cara inferior de la caja (frente a los leds) para que la medida de éstos sea mejor.

Además se utilizaron dos LDR con el fin de promediar su valor medido y así obtener una señal mucho mas precisa y minimizar el error que se genera al trabajar con éste tipo de sensores.

Otra de las características que posee ésta planta, es la de tener en su interior una Cámara Web con la cual se puede observar que está sucediendo con los leds y cual es la acción del PWM que está actuando en ellos.

2

Page 3: Paper Controladores

Escuela Politécnica del Ejército Carrera de Ingeniería Mecatrónica

SISTEMA DE CONTROL DE UNA PLANTA DE LUZ

3.2 CONTROLADOR PID UTILIZANDO MATLAB

El controlador PID se lo realizó mediante un algoritmo base de programación. Hay que mencionar que la implementación de éste algoritmo se la realizó exclusivamente para MATLAB, pero se lo podría realizar en otrosoftware con características similares.

La fórmula para calcular la señal de control, se la puede definir, de manera general, de la siguiente manera.

El Algoritmo de control es el siguiente:

1. Determinar Kp, Ki y Kd.2. Determinar valores iniciales: en-1 (error), Int prev

(Integración previa) y Ts (tiempo de muestreo).3. Reestablecimiento del tiempo de muestreo.4. Introduccion del error en.5. Calcular Un6. Actualizar la parte integral, sin la constante Ki

(todo lo que esta en corchetes).7. Actualizar: en-1 - en.8. Esperar tiempo de muestro.9. Ir a 3. Y repetir el ciclo

Con éste algoritmo, utilizando la formula para encontrar el valor de la variable de control se logra un control de una manera rápida y muy precisa.

El procedimiento que se sigue para el envio y recepción de datos se la puede establecer de la siguiente manera: en primer lugar se le da un valor de referencia y damos inicio al sistema, por esta razón se tendrá un valor de error muy elevado, éste dato de información de la cantidad de luz que se tiene, es leido por los sensores de luz e inmediatamente enviado al MATLAB, por medio de comunicación serial. Los datos que ingresan al MATLAB se modifican para que puedan entrar al algoritmo de control, de esta manera actúan al mismo tiempo las tres varibles del controlador, obteniendo así el error que se debe corregir, éste valor es enviado nuevamente hacia el microcontrolador como PWM para que afecte la intensidad lumínica de los leds, y el ciclo se reinicie, pero con un nuevo valor leído por las LDR.

Las constantes que se utilizaron para el control, fueron las siguientes:

Kp = 0.4;Ki = 0.008;Kd = 0;

Con un tiempo de muestreo:

Ts = 0.145;

Los resultados que se obtienen después de varias modificaciones en las constantes fueron:

Figura 1: Controlador PI

Como podemos observar en la Fig 1, el sobrepico que se obtuvo fue muy pequeño y la velocidad a la cual se estabiliza es muy alta.

Figura 2: Perturbaciones

En la Fig 2 se puede observar en los picos elevados, la reaccion que tiene la planta a las perturbaciones que se le dio, dando como resultado un control muy bueno. La intensidad de luz que se observa es muy alta con referencia al set point elegido, esto se debe a que se tapó ligeramente las LDR razon por la cual el controlador intenta dar mayor luz y llegar así al valor de referencia deseado, y como nos podemos dar cuenta no se observan picos y esto nos hace entender que el control es muy rápido.

Figura 3: Respuesta a distintos valores de referencia

La Fig 3 muestra la respuesta que a distintos valores de referencia en toempo real, de la misma manera que la respuesta a las perturbaciones, la velocidad de respuesta es muy alta, y el error es mínimo.

3

Page 4: Paper Controladores

Escuela Politécnica del Ejército Carrera de Ingeniería Mecatrónica

SISTEMA DE CONTROL DE UNA PLANTA DE LUZ

3.3 CONTROLADOR FUZZY LAZO ABIERTO UTILIZANDO MATLAB

Para el controlador Fuzzy, en lazo abierto, se deben tener varias consideraciones, ya que aquí no hay un señal de realimentación con la cual se pueda comparar el valor que se obtiene, es por ésta razón que éste tipo de controlador no es muy exacto como el anterior, sin embargo, mediante las reglas que se implementen, se podrá obtener un controlador, un poco más exacto.

Para la determinación de la cantidad de luz que leen las LDR y poder relacionar con la salida PWM, se colocaron los siguientes rangos.

Rangos para el sensor, se colocaron cinco diferentes para obtener así un mayor área de control.

Muy Oscuro Oscuro Media Luz Claro Muy Claro

Figura 4: Rangos de control para el Sensor

Figura 5: Rangos de control para la Salida

De esta manera lo que se quiere es que para cada uno de los rangos que se obtienen, tenga una accion la salida de PWM y asi poder tener un control, sin embargo, al no tener una realimentación, no es posible obtener datos acerca del error, en este caso no interesa si el control no llega al set point sino que al iniciar, su valor sea el más cercano posible.

Los rangos para la salida se los menciona de la siguiente manera:

Bajo Medio

Alto

Las reglas que se impuso para el control fueron las siguientes:

Figura 6: Reglas controlodor FUZZY lazo abierto

Figura 7: Grafica de áreas de control

Es por ésta razón que en los resultados no se ve un control de un buen nivel, sin embargo se aproxima mucho al set point. Para el caso en estudio no se realizó un exaustivo manejo de las reglas ya que solo servirían para un control en tiempo real, sino que serviría para datos puntuales que se requiera.

Figura 8: Control Fuzzy

Se puede observar en la Fig. 8 que el control llega aproximadamente al valor de referencia e intenta mantenerce en ese estado.

3.4 CONTROLADOR PI-FUZZY UTILIZANDO MATLAB

A partir del controlador PI que se realizó, se obtuvo un control mucho mas exacto, fuzificando la constante proporcional y sumandola al final con la parte integral, la cual no es fusificada.

El controlador difuso funciona como uno convencional puesto que a partir de la entrada, por

4

Page 5: Paper Controladores

Escuela Politécnica del Ejército Carrera de Ingeniería Mecatrónica

SISTEMA DE CONTROL DE UNA PLANTA DE LUZ

medio de algún algoritmo, genera una salida, llamándose este proceso inferencia difusa y se lleva a cabo en tres partes:

Fusificación, donde la señal de entrada real es convertida en un valor difuso.

Evaluación mediante reglas, en donde los valores de la salida difusos se calculan.

Defusificación, donde el valor de la salida difusa se convierte a un valor de salida real.

En la fusificación, la diferencia con un esquema convencional es la manera en que la variable de entrada es considerada, en lugar de usar su valor, se usan funciones de membrecía. Para nuestro estudio se consideraran que para un valor muy bajo de error se dirá que es negativo, si el error se disminuye, se dirá que es negativo bajo, y asi progresivamente si los valores de error sigue disminuyendo hasta llegar a cero y luego van aumentando se dirá que es cero, positivo bajo y positivo alto.

Es por ésta razón que el rango que se determinó para el error va de un valor negativo a un valor positivo.

Figura 9: Rango de control del Error

Figura 10: Rango de control para salida PWM

La evaluación de las reglas se las hará de la siguiente manera:

Figura 11: Reglas para el control PI-Fuzzy

En la defusificación, la salida del sistema difuso se calcula mediante el disparo de las reglas correspondientes a un valor que depende del valor de pertenencia de la entrada.

Lo anterior se puede hacer de varias maneras. Por ejemplo, se puede considerar el centro de gravedad de la figura geométrica resultante y de ese valor inferir la salida.

Figura 12: Area de control de PWM y el error

Los resultados que se obtuvieron a partir de éste tipo de controlador fueron, sin duda, los mejores de todos, ya que se elimina en un gran porcentaje el sobrepico, y aumenta relativamente la velocidad.

Figura 13: Respuesta de controlador

Como se puede observar en la Fig 13 la respuesta de éste controlador es muy buena, con diferentes valores de referencia se puede observar que se eliminan los sobrepicos, y a las perturbaciones responde muy bien.

5