REPORTE PID TEMPERATURA FINAL.docx

Descripción completa

Views 134 Downloads 4 File size 1MB

Report DMCA / Copyright

DOWNLOAD FILE

Recommend stories

Citation preview

UNIVERSIDAD TECNOLÓGICA DE NAYARIT

Ingeniería en Mecatrónica

Control Automático

IX Cuatrimestre

Reporte Control PID

Grupo: IMT-92

Carlos Alberto Iriarte Martinez Vidal López García

27 de junio del 2014

Índice 1.

Introducción ................................................................................................................................ 4

2.

Objetivos de proyecto.................................................................................................................. 5

3.

Conceptos .................................................................................................................................... 5 3.1

Control PID ......................................................................................................................... 5

3.2

Zieger- Nichols.................................................................................................................... 6

3.3

Arduino ............................................................................................................................... 9

3.3.1 4.

Arduino – LabVIEW ..................................................................................................... 12

Procedimiento ........................................................................................................................... 14 4.1

Materiales .......................................................................................................................... 14

4.2

Circuito Dimmer ............................................................................................................... 15

4.3

Ensamblado ....................................................................................................................... 16

4.4

Adquisición de datos ( Labview + Excell ) ....................................................................... 18

4.5

Valores de sintonización ................................................................................................... 21

4.6

Simulación virtuales .......................................................................................................... 23

4.6.1 Simulación de planta ........................................................................................................ 23 4.6.2 Simulación de control....................................................................................................... 25 4.7

Comunicación Arduino + Simulink .................................................................................. 27

4.7.1 Modo Externo....................................................................................................................... 28 4.8

Emulación de Planta + Control virtual .............................................................................. 29

5.

Conclusiones ............................................................................................................................. 34

6.

Referencias ................................................................................................................................ 35

Tabla de ilustraciones Imagen 4. 1 diagrama esquemático de circuito dimmer 1 ............................................................... 15 Imagen 4. 2 Diagrama de circuito dimmer 2 .................................................................................... 16 Imagen 4. 3 Modelo 3D de la planta, elementos básicos. ................................................................. 17 Imagen 4. 4 Construcción física de la planta................................................................................... 17 Imagen 4. 5 Esquemático de conexiones ........................................................................................... 18 Imagen 4. 6 VI para adquisición de datos ....................................................................................... 19 Imagen 4. 7 Primera toma de datos ................................................................................................ 19 Imagen 4. 8 Segunda toma de datos ................................................................................................. 20 Imagen 4. 9 VI de recopilación de datos modificado para LM35 .................................................... 20 Imagen 4. 10 Graficación de datos .................................................................................................. 21 Imagen 4. 11 Ensamble de bloques para simulación de planta preliminar ..................................... 24 Imagen 4. 12 Ensamble de bloques para simulación de planta final ................................................ 24 Imagen 4. 13 Gráfica de planta simulada ......................................................................................... 25 Imagen 4. 14 Diagrama de bloques de simulación de planta. .......................................................... 25 Imagen 4. 15 Simulación de Control. ............................................................................................... 26 Imagen 4. 16 Menu para obtención de Add-Ons.............................................................................. 27 Imagen 4. 17 Bloques de Arduino ..................................................................................................... 27 Imagen 4. 18 Botón deploy hardware .............................................................................................. 28 Imagen 4. 19 Pestaña de opciones para selección de modo ............................................................ 28 Imagen 4. 20 Diagrama de bloques para corrección de datos recogidos ....................................... 29 Imagen 4. 21 Diagrama de bloques para “tunning” de salida correctiva. ...................................... 30 Imagen 4. 22 Error en el control final .............................................................................................. 31 Imagen 4. 23 Diagrama de bloques final. ........................................................................................ 31

1. Introducción

El control automático es de vital importancia en el mundo de la ingeniería. Además de resultar imprescindible en sistemas robóticos o procesos de manufactura moderna, entre otras aplicaciones, se ha vuelto esencial en operaciones industriales como el control de presión, temperatura, humedad, viscosidad, y flujo en las industrias de transformación. La adopción del control automático, o la automatización en general, es una estrategia clave para la mejora de la competitividad de la empresa y también para alcanzar objetivos que de otro modo difícilmente podrían conseguirse tales como la precisión, seguridad y la homogeneidad. Un controlador automático es un dispositivo basado en hardware y software, que funciona mediante el monitoreo de una señal de error, que es la diferencia entre dos valores (el valor de temperatura, velocidad etc. que se requiere que el controlador mantenga) y los valores reales o medidos que el parámetro a controlar tiene. La combinación del sistema a controlar y el controlador empleado tienen generalmente una disposición de lazo cerrado y es el tipo de controlador que empleamos y discutimos aquí. En el punto de ajuste se establece el valor deseado del parámetro y se realiza la diferencia del valor real con el valor deseado, y este valor de error e es pasado al controlador, el cual responde de acuerdo a su implementación, (el nuestro es PID, que en breve se explicará) el controlador pasa su respuesta al elemento de control, que puede ser una válvula, una resistencia eléctrica, una fuente de poder, encargado de actuar para cambiar los valores del parámetro controlad. Una vez realizada esta operación, el sensor mide el valor del parámetro y dicho valor es enviado al punto “E” donde se realiza la diferencia o señal de error nuevamente, y así, sucesivamente hasta que el valor medido sea igual al valor de ajuste. El hecho de que la salida del controlador esté conectada con su misma entrada le confiere la naturaleza de sistema cerrado o retroalimentado. En nuestro caso en particular se desea controlar la temperatura dentro de un tubo de pvc, donde el controlador es un programa que se ejecuta en una PC, y el elemento de control, es un circuito dimmer conectado a un foco de halógeno que se encarga de calentar nuestro sistema.

2. Objetivos de proyecto

La presente práctica tiene como objetivos: 123456-

Entender los conceptos de control PID aplicados. Conocer algunos de los métodos de sintonización de controles PID. Realizar estudios y encontrar parámetros de una planta real. Sincronizar software y hardware para llevar a cabo un control PID. Aplicar el método de sintonización Zieger-Nichols. Llevar a cabo el control de un parámetro físico real (Temperatura).

3. Conceptos 3.1 Control PID

El controlador PID es un mecanismo de control que a través de un lazo de retroalimentación permite regular la velocidad, temperatura, presión y flujo entre otras variables de un proceso en general. El control PID calcula la diferencia entre nuestra variable real contra la variable deseada. Por ejemplo, en un sistema de bombeo, regularmente nos interesa mantener la presión o flujo constante, por lo tanto, el control PID mide la diferencia entre la presión en la tubería y la presión requerida y actúa variando la velocidad del motor para que podamos tener nuestra presión o flujo constante. El algoritmo de control incluye tres parámetros fundamentales: Ganancia proporcional (P), Integral (I) y Derivativa (D). El parámetro Proporcional (P) mide la diferencia entre el valor actual y el set-point (punto de ajuste) y aplica el cambio. El parámetro Integral (I) se refiere al tiempo que se toma para llevar a cabo la acción correctiva. Mientras el valor sea más pequeño, el ajuste es más rápido pero puede causar inestabilidad en el sistema en forma de oscilaciones. El parámetro Derivativo (D) emite una acción predictiva, es decir, prevé el error e inicia una acción oportuna. Responde a la velocidad del cambio del error y produce una corrección significativa antes de que la magnitud del error se vuelva demasiado grande. La correcta sintonización o programación de estos parámetros nos ayuda a controlar de manera efectiva nuestra presión, flujo o temperatura deseada. Si no ingresamos adecuadamente estos valores, el sistema puede quedar inestable y el motor, bomba, o en este caso, foco pueden comenzar a oscilar de maneras violentas, dañarse, o sencillamente no responder adecuadamente.

Matemáticamente, la salida de este sistema se describe mediante la ecuación 2.1, en donde los valores Kp, Ti y Td son los valores ajustables, y como se puede ver, la respuesta viene siempre en función de nuestra señal de error.

Ecuación 2. 1 Salida de control PID

Entonces, queda por entendido que, para hacer funcionar correctamente este sistema de control, es necesario encontrar y adaptar estos valores de Kp, Ti, y Td, procedimiento llamado “sintonización”. Existen varios métodos para llevar a cabo la sintonización, pero la mayoría involucran un estudio riguroso de las ecuaciones diferenciales que describen al sistema en cuestión a controlar, aunque también se puede implementar el método de Zieger-Nichols, que es mucho más rápido sin restarle efectividad.

3.2 Zieger- Nichols

El método de Ziegler-Nichols permite ajustar o "sintonizar" un regulador PID de forma empírica, sin necesidad de conocer las ecuaciones de la planta o sistema controlado. Estas reglas de ajuste propuestas por Ziegler y Nichols fueron publicadas en 1942 y desde entonces es uno de los métodos de sintonización más ampliamente difundido y utilizado. Los valores propuestos por este método intentan conseguir en el sistema realimentado una respuesta al escalón con un sobrepulso máximo del 25%, que es un valor robusto con buenas características de rapidez y estabilidad para la mayoría de los sistemas. El método de sintonización de reguladores PID de Ziegler-Nichols permite definir las ganancias proporcional, integral y derivativa a partir de la respuesta del sistema en lazo abierto o a partir de la respuesta del sistema en lazo cerrado. Cada uno de los dos ensayos se ajusta mejor a diferentes tipos de sistema. Para poder encontrar entonces estos valores de sintonización del control PID se debe de armar el esquema descrito en la imagen 2.1

Imagen 2. 1 Esquema de estudio del sistema en lazo abierto

Una vez se tomen las medidas correspondientes del anterior esquema, se debe de obtener una gráfica parecida a la que se muestra en la imagen 2.2

Imagen 2. 2 Gráfica característica del sistema en lazo abierto con entrada escalón.

En la imagen superior se puede ver representado en rojo la entrada escalón al accionador o señal c(t). En azul se representa la salida del sistema medida por el sensor o señal h(t). El escalón de entrada c(t) debe estar entre el 10% y el 20% del valor nominal de entrada. Como puede apreciarse, la respuesta del sistema presenta un retardo, también llamado tiempo muerto, representado por T1.

Para calcular los parámetros se comienza por trazar una línea recta tangente a la señal de salida del sistema (curva azul). Esta tangente está dibujada en la imagen con una recta a trazos. El tiempo T1 corresponde al tiempo muerto. Este es el tiempo que tarda el sistema en comenzar a responder. Este intervalo se mide desde que la señal escalón sube, hasta el punto de corte de la recta tangente con el valor inicial del sistema, que en este caso es el valor 25ºC El tiempo T2 es el tiempo de subida. Este tiempo se calcula desde el punto en el que la recta tangente corta al valor inicial del sistema hasta el punto en el que la recta tangente llega al valor final del sistema. A partir de estos valores T1, que también se manejará como “L”, y T2, que ahora se tratara como “T”, se obtienen las constantes Kp, Ti y Td. En clase el docente proporcionó una tabla la cual indica como se tienen que manipular estos números para obtener los valores de sintonización, dependiendo del tipo de control que se pretenda implementar, pudiendo ser P, PI o PID. Las fórmulas se encuentran en la tabla 2.1.

Tipo de control P PI PID

Kp T/L 0.9 * T/L 1.2 * T/L

Ti infinito L/0.3 2*L

Td 0 0 0.5 * L

Tabla 2. 1 Valores Kp, Ti y Td según tipo de control

Ahora bien, este es el método gráfico para obtener los valores de sintonización, existiendo otro totalmente algebraico, en donde se encuentra Kp, Ti y Td sin necesidad de analizar tangentes dentro de la curva característica, aunque claro, se debe de saber el valor exacto de esta en cada momento de la simulación. Siguiendo este método optativo T y L se encuentran de la siguiente manera (

)

Las variables t2 y t1 son puntos en la gráfica en donde se llega el 63.2% y 28.3% del valor máximo alcanzable por el sistema.

(

)

(

)

(

)

(

)

(

)

(

)

Vf = Máximo valor alcanzable por el sistema Vo= Valor inicial del sistema. Al encontrar los valores t2 y t1, un escrutinio de los datos recopilados tiene que realizarse, y encontrar en que instante de tiempo se llegó a estos 2 números, y serán precisamente estos 2 instantes los valores finales para t2 y t1. Finalmente, se procede a calcular T y L, y tal como se hace con el método gráfico, se encuentran los valores de sintonización Kp, Ti y Td con la tabla.

3.3 Arduino

Arduino es una herramienta para hacer que los ordenadores puedan sentir y controlar el mundo físico a través de tu ordenador personal. Es una plataforma de desarrollo de computación física (physical computing) de código abierto, basada en una placa con un sencillo microcontrolador y un entorno de desarrollo para crear software (programas) para la placa. Arduino puede tomar información del entorno a través de sus pines de entrada, para esto toda una gama de sensores puede ser usada y puede afectar aquello que le rodea controlando luces, motores y otros actuadores. El microcontrolador en la placa Arduino se programa mediante el lenguaje de programación Arduino (basado en Wiring) y el entorno de desarrollo Arduino (basado en Processing). Los proyectos hechos con Arduino pueden ejecutarse sin necesidad de conectarlo a un ordenador, si bien tienen la posibilidad de hacerlo y comunicar con diferentes tipos de software. Para completar el proyecto, se utilizaron dos modelos diferentes de placa Arduino; Arduino UNO y Arduino Mega.

La Arduino UNO cuenta con todo lo que se necesita para manejar el controlador, simplemente se conecta a un computador por medio del cable USB o se puede alimentar utilizando una batería o un adaptador AC-DC. Si se conecta por USB, la alimentación externa no es necesaria. Sus características de hardware son las siguientes:        

14 entrada/salida digitales, de los cuales 6 pueden se usados como salidas PWM Posee 6 entradas analógicas Los pin 0 y 1 pueden funcionar como RX y TX serial. Un oscilador de crystal de 16 MHz Conector USB Un jack de poder Una conector ICSP Botón de Reset

Sus características software se despliegan a continuación: Operating Voltage

5V

Input Voltage (recommended)

7-12 V

Input Voltage (limits)

6-20 V

Digital I/O Pins

14 (of which 6 provide PWM output)

Analog Input Pins

6

DC Current per I/O Pin

40 mA

DC Current for 3.3V Pin

50 mA

Flash Memory

32 KB (of which 0.5 KB used by bootloader)

SRAM

2 KB

EEPROM

1 KB

Clock Speed

16 MHz

Las Entradas analógicas son de 10 bits, por lo que entregan valores entre 0 y 1023. El rango de voltaje está dado entre 0 y 5 volts, pero utilizando el pin AREF disponible, este rango se puede variar a algún otro deseado.

Ahora, se describe la información de hardware de Arduino MEGA La placa Arduino Mega 2560 posee:        

54 entrada/salida digitales, de los cuales 14 pueden se usados como salidas PWM Posee 16 entradas analógicas Posee 4 puertos seriales por Hardware (UART) Un oscilador de crystal de 16 MHz Conector USB Un jack de poder Una conector ICSP Botón de Reset

Como características de software, Arduino MEGA tiene: Microcontroller

ATmega2560

Operating Voltage

5V

Input Voltage (recommended)

7-12 V

Input Voltage (limits)

6-20 V

Digital I/O Pins

54 (of which 14 provide PWM output)

Analog Input Pins

16

DC Current per I/O Pin

40 mA

DC Current for 3.3V Pin

50 mA

Flash Memory

256 KB (of which 8 KB used by bootloader)

SRAM

8 KB

EEPROM

4 KB

Clock Speed

16 MHz

3.3.1

Arduino – LabVIEW

Hace algunos años LabVIEW desarrolló un Toolkit especial para Arduino, habilitando comunicación entre estos dos sistemas, y poder utilizar Arduino como un sistema de adquisición de datos. Desde su página oficial: “El NI LabVIEW Interface for Arduino Toolkit le ayuda a establecer interfaz fácilmente con el microcontrolador Arduino usando LabVIEW. Con este juego de herramientas y LabVIEW, usted puede controlar y adquirir datos desde el microcontrolador Arduino. Una vez que la información está en LabVIEW, analícela usando los cientos de bibliotecas integradas de LabVIEW, desarrolle algoritmos para controlar el hardware Arduino y presente sus conclusiones en un UI pulido. “ Para trabajar con estos Toolkits se siguen los siguientes pasos 1. Contar con la placa Arduino a disposición. 2. Instalar el software de LabVIEW 2009 o uno más reciente. [http://www.ni.com/download-labview/esa/] 3. Instalar los drivers NI-VISA para la comunicación Arduino-LabVIEW. [http://sine.ni.com/psp/app/doc/p/id/psp-411/lang/es] 4. Instalar la versión más reciente de Arduino IDE y los drivers para Windows [http://arduino.cc/en/Main/Software] 5. Instalar LIFA, un paquete de herramientas virtuales que se instala mediante el gestor VIPM desde LabVIEW,aparecerá una ventana similar como en la imagen 3.1

Imagen 3. 1 Ventana de instalación de Toolkit Arduino desde VPIM

6. Cargar el firmware al Arduino, el archivo “LIFA_Base.pde”, el cual se encuentra dentro de la carpeta del Toolkit LIFA, el archivo de Arduino IDE se muestra en la imagen 3.3

Imagen 3. 2 Firmware para comunicación Arduino – LabVIEW

7. Aparecerán una nueva serie de paletas para Arduino dentro del LabVIEW para comenzar a comunicar el Arduino con nuestro software LabVIEW. (Imagen 3.1)

Imagen 3. 3 Paleta de controles Arduino para LabVIEW

4. Procedimiento

En el proyecto se utilizaron diversos materiales para la construcción, algunos de ellos se obtuvieron de proyectos anteriores o de equipos desmontados que se tenían anteriormen te. En su mayoría la compra de todos los componentes no conllevó un alto precio, aunq ue se tuvieron que comprar en su mayoría nuevos

4.1 Materiales

Plante física:                

Tubo PVC 4” x 23.6” $40 Base para foco $15 Foco de Halógeno Dimerizable 72 W General Electric $19.5 Ventilador 12 V Pintura en aerosol color negro $49 Cinta aislante Cable eléctrico #12 ó #14 Disco compacto (CD) Taladro y brocas Fuente 12 V Circuitería en general LM35 LM335 (Opcional, sustituto de LM35) Arduino y cable USB Aluminio

Circuito Dimmer 1 

1x 330 Ω

       

2x 33k Ω 1x 220 Ω 1x 22k Ω IRF830 (MOSFET) 4N35 (Optoacoplador) 1x22nF 275V 1x2.2 µF 63V 10V 0.9 W

Rectificador 

1x1N4007

Circuito Dimmer 2  MOC3010 (Optotriac)  TRIAC  1x 220 Ω  1 x 300 Ω

4.2 Circuito Dimmer

Con el fin de controlar una variable dentro de la planta construida se optó por el control de la corriente que pasa a través del foco para el control de la temperatura dentro del tubo, debido a que un control por del ventilador no tendría un impacto tan alto al no poder aumentar las revoluciones del ventilador.

Para el control de la planta se utilizó un circuito de Dimmer para regular la corriente que pasa a través del foco para regular la temperatura dentro del tubo. En éste punto se utilizaron 2 dimmer debido a que uno resultó en un fallo por un problema de conexión y se obtuvo una nueva placa para el control PWM El esquemático para el circuito se encuentra en la imagen 4.1

Imagen 4. 1 diagrama esquemático de circuito dimmer 1

El control de PWM fue probado dentro de la planta. Pero debido a una mala conexión aparentemente tuvo un cortocircuito en el MOSFET , lo que ocasionó que la búsqueda un nuevo diagrama para la construcción del nuevo dimmer (2). Éste nuevo esquemático

al tener menor cantidad de elementos su construcción fue más sencilla y funcional. En la imagen 4.2. se muestra

Imagen 4. 2 Diagrama de circuito dimmer 2

4.3 Ensamblado Se obtuvo un segmento de tubo de PVC de 4”, siendo éstas las medidas necesarias para el acople de los demás elementos, en su primera etapa se utilizó el aerosol negro para pintarlo por ambos lados, esto con el fin de mantener la temperatura interna y evitar que la temperatura externa tuviera un impacto en el proceso. También se añadió aluminio en la parte interior del tubo para mantener la temperatura, aunque se realizó la cubierta interior en una parte tardía del montaje. Al terminar el secado del tubo se decidió acoplar los demás materiales, primeramente se colocó la base del foco dentro del tubo, porque sería una parte fija ya dentro del sistema, se introdujo con por una abertura a aproximadamente ¼ de la longitud total del tubo para poder tener una ventilación menos forzada dentro del tubo. En una cara del tubo se colocó el ventilador, se le realizaron algunas ranuras para poder acoplarlo al equipo. En la cara posterior se colocó el CD para poder tener un flujo de aire hacia afuera pequeño y que permitiera que la temperatura pudiera estar saliendo para mantener un ciclo de aire completo. La imagen 4.3 muestra el diseño de montaje diseñado en Inventor.

Imagen 4. 3 Modelo 3D de la planta, elementos básicos.

En la indicación de la figura 4.3, número 4, se introdujo el sensor de temperatura en la planta para la toma de lectura para los muestreos. Al construir la planta de manera física se acoplaron los elementos y después que se ajustaron ciertas partes a la planta, debido a que algunos componentes no encajaban tan fácilmente con los demás. En la figura 4.4 se muestra la construcción completa física.

Imagen 4. 4 Construcción física de la planta

Para el montaje y alimentación de los componentes electrónicos se utilizó la fuente de 12V para la alimentación del ventilador, pues la placa Arduino sólo trabaja con 5V y su corriente es muy limitada para la aplicación. De la abertura superior se tomaron para las lecturas del LM35, utilizando los cables de alimentación para el foco se pasó a interconectarlos con el módulo dimmer para el control. El modelo de las conexiones se realizó en el software de construcción Fritzing para ayudar a ver la esquemática de componentes de una manera mucho más simple.

Imagen 4. 5 Esquemático de conexiones

4.4 Adquisición de datos ( Labview + Excell ) Como se explicó anteriormente, para poder encontrar los valores de sintonización del control PID, es necesario analizar la planta, y como cambia a través del tiempo cuando se le excita con un impulso escalón interrumpido. Para realizar esta operación, se encendió el foco al interior del tubo a su mayor intensidad, y se llevaron a cabo una serie de mediciones vía LabView.

Al principio se tenía el sensor LM335 el cual tiene la diferencia que obtiene los valores en K (Kelvin), por lo que se tiene que ajustar con unos valores diferentes a lo típicamente usado con el LM35. El VI utilizado se muestra en la imagen 4.6.

Imagen 4. 6 VI para adquisición de datos Con ese VI se realizaron la primera toma de temperatura. La gráfica de esos valores se observa en la imagen 4.7.

Imagen 4. 7 Primera toma de datos

La lectura comenzó en un valor de 25°C el muestreo se realizó durante aproximadamente 10 minutos, la temperatura más alta registrada fue de 94°C Posteriormente se realizó una segunda toma de lecturas para evitar los valores que no entrarían en nuestra planta y corregir su existieron errores de lecturas. La imagen 4.8 nos muestra la segunda toma de lecturas

Imagen 4. 8 Segunda toma de datos Para ese muestreo se inició con la temperatura ambiente de 25°C y se realizó un muestreo de 15 minutos, alcanzando un valor máximo de 89°C. Esto se debió a que se cambió la tapa que se había estado utilizando en el muestreo anterior, al existir más flujo de aire la temperatura disminuyó dentro del tubo. Con los valores obtenidos se realizaron las operaciones por el método de ZieglerNichols, pero había margen de error que arrojaba valores que no podían tomarse para los cálculos. Se optó entonces por el uso del sensor LM35 y un activado desde la computadora. Pues en las muestras anteriores se había utilizado una conexión manual entre el foco y el inicio del muestreo, lo que ocasionaba que algunas lecturas no pudieran tomarse apropiadamente. Se realizó una segunda modificación al VI de medición, de manera que se acoplara con los valores de voltaje emitido por el LM35, dicha modificación queda expresada en la imagen 4.9.

Imagen 4. 9 VI de recopilación de datos modificado para LM35

Con este tercer VI, las modificaciones a la forma de tomar la lectura, se obtuvo una gráfica más satisfactoria que las 2 anteriores, y esta fue utilizada para encontrar los valores de sintonización.

4.5 Valores de sintonización

Una vez adquiridos los datos , y exportados a Excell, se procedió a realizar un análisis de estos. El muestreo final recopilo un total de 4614 datos en un periodo de 7.69 minutos. La velocidad del mappeo fue programada para tomar un dato cada 100 milisegundos. La imagen 4.10 es una gráfica en la que se plotean los valores de temperatura sensados por el LM35 a través del tiempo. 80 70 60 50 Series1

40

Poly. (Series1)

30 20 10 0 0

1000

2000

3000

4000

5000

Imagen 4. 10 Graficación de datos

Al trasladar los datos desde Labview a Excell, existen ciertas perdidas de información, en las cuales podría verse extraviado el pequeño tiempo en el que el sistema comienza a responder después de que se envía el impulso de escalón (L), por ello se optó por encontrar los valores de sintonización de manera algebraica, y no gráfica. Siguiendo los datos registrados se encontró que el valor máximo alcanzado fue de 74.45°C, y el valor inicial de 25°C. Con estos 2 valores se procedió a encontrar t2 y t1.

( (

)(

)

) (

( (

)(

)

)(

)

(

)

(

)

(

)

)

) (

(

)(

)

Sabiendo t2 y t1, se revisó la información de la tabla de datos recopilados, para ver en que instante de tiempo se alcanzaron los 56.5°C y los 39°C. Debido a la posible falta de precisión en la recopilación de medidas, y el traslado de datos de un software a otro, se tomó un rango de datos en los cuales rondaban estos 2 valores, de manera que se pudiera escoger de entre este rango los números más adecuados para el cálculo de T y L. La tabla 4.1 muestra este rango de datos.

Medición 171 172 173 174 175 176 177 180 181 182 209 210

t1 Temperatura 38.71 38.71 38.71 38.71 39.2 38.71 39.2 39.2 39.2 39.2 40.16 40.67

Medición 620 639 641 642 643 644 645 655 664 665 666 667

t2 Temperatura 56.35 56.35 56.35 56.35 56.35 56.84 56.84 56.84 56.84 56.84 57.33 57.33

Tabla 4. 1 Rango de tiempo para t2 y t1 A conveniencia, se escogen 2 momentos en los cuales la temperatura está muy cerca de los 56.5°C y los 39°C, en este caso, se escogió el segundo 21 para t1 y el segundo 62 para t2. Ahora con estos nuevos valores, es posible calcular T y L: ( (

) )

Finalmente, una vez que se tiene L y T, se revisa la tabla 2.1, para control PID, obteniendo así los valores de sintonización Kp, Ti y Td. (

)

(

( )

(

( )

) )

(

)

4.6 Simulación virtuales 4.6.1 Simulación de planta

En la práctica, la parte de control se llevó a cabo enteramente por medio del uso de software (Simulink) y por ello no basta con determinar los valores de sintonización para llevar el control a término, sino que es necesario hacer pruebas dentro del entorno Simulink de la planta a controlar, de manera que se asegure que lo físico está empatado con lo virtual. Los valores de sintonización se obtienen en función de un estudio de la planta, lo que significa que esta misma planta puede ser simulada y controlada dentro del entorno Simulink. Para simular la planta dentro de Simulink, se utilizó el bloque “Transfer Function” , cuyas propiedades permiten ingresar cualquier tipo de sistema a partir de su ecuación de transferencia característica. El sistema que se manejó es de primer orden, y queda descrito por la siguiente función de transferencia: ( )

(

)

El termino es un tiempo de retraso, el cual se coloca dentro de la simulación con el bloque “Transport delay”. Finalmente, la señal de escalón se ingresa con el bloque “Step”, y se añade un bloque de “Scope” para poder visualizar el comportamiento de la planta simulada, y corroborar que es cuasi-idéntica a la obtenida en Excell. La imagen 4.11 muestra el conjunto de bloques armado en el entorno de Simulink.

Imagen 4. 11 Ensamble de bloques para simulación de planta preliminar Una vez terminado el ensamble, se corrió el programa y se visualizó la gráfica obtenida con el bloque de Scope, la gráfica mostraba que el valor máximo alcanzado era de 50°C , y no de 75°C como se esperaría. Para solucionar esto se añadió un pequeño nodo de suma, al cual se adhirió un valor constante de 25, así, el valor final no sería 50°C sino 75°C, y el valor inicial no estaría en 0°C, sino en 25°C; tal y como ocurría en la planta real. La imagen 4.12 muestra el ensamble de bloques final.

Imagen 4. 12 Ensamble de bloques para simulación de planta final

Con este nuevo acomodo, la gráfica mostrada como valor máximo 74.75, y como mínimo 25, límites casi iguales a los de la planta real. También, en esta nueva gráfica observo cual temperatura se alcanzaba en diferentes puntos de tiempo, habiendo constantemente una diferencia de entre 1 a 1.5 °C, diferencia que resultaba aceptable. La imagen 4.13 revela la gráfica obtenida.

Imagen 4. 13 Gráfica de planta simulada 4.6.2 Simulación de control

Al concluir exitosamente la simulación virtual de planta, se procedió a añadir el bloque “PID”, en el cual se ingresaron los valores de sintonización obtenidos previamente, esto es con el objetivo de darse cuenta como será la respuesta del sistema una vez que se enlace con la planta real y no la simulada. El diagrama de bloques realizado se ilustra en la imagen 4.14

Imagen 4. 14 Diagrama de bloques de simulación de planta.

La señal de escalón se reemplazo por un valor constante, el cual actúa como “set-point”, e indica al sistema cual es la temperatura deseada. Al dar click sobre el bloque “PID” se despliega un cuadro donde se ingresan los valores de sintonización para P (147.6), I (1), y D (0.25). Una vez realizada esta operación, se corrió el programa, y el bloque scope dibujo la imagen 4.15

Imagen 4. 15 Simulación de Control.

Tal como se esperaría, el control funciona y se estabiliza después de breve periodo de tiempo. En este caso, debido a la naturaleza de la planta, quien estará siendo calentada por un foco, cuya temperatura es transmitida a una velocidad relativamente lenta, el pico inicial y el tiempo de estabilización es algo deseable, puesto que da tiempo al foco de transferir el suficiente calor al sistema. Como paso final del proyecto, solo resta comunicar Arduino con Simulink, pero para lograr esto resultó necesario seguir una serie de pasos que lo permitieran.

4.7 Comunicación Arduino + Simulink

La comunicación de Arduino con Simulink puede llegar a ser un poco más compleja, debido a la interfaz y algunas características de configuración que se pasan por alto. Los pasos a seguir para ésta configuración se enlistan a continuación. 

Descargar los archivos de instalación para los bloques de Simulink. A partir de la versión 2013 de Matlab aparece un ícono para la instlación de para los Addons. (Figura 4.16). Se pueden instalar a través de internet o de manera local si se han descargado previamente.

Imagen 4. 16 Menu para obtención de Add-Ons



Al terminar se comenzará a actualizar los bloques de Simulink donde aparecerán los nuevos bloques de control de Arduino (Imagen 4.17).

Imagen 4. 17 Bloques de Arduino

  



Para inciar un nuevo programa con los bloques de Arduino se pueden utilizar los ejemplos que contienen los bloques de control. Para simular en el Arduino se configura en las Tools en el menú en Run on Target Hardware > Prepare to Run A partir de ahí nos llevará a un menú para elegir mediante un menú desplegable cuál Arduino se va a utilizar, las demás configuraciones dentro de la ventana sólo se modifica en el puerto que está conectado el Arduino a nuestra computadora. Para finalizar, se “descarga” el programa dentro del Arduino con el botón Deploy to Hardware (Imagen 4.18).

Imagen 4. 18 Botón deploy hardware 

El programa se ejecutará al presioanr el botón Run por defecto en nuestra simulación.

4.7.1 Modo Externo Para la simulación en tiempo real Simulink emplea una configuración llama External Mode, en el cual el programa se ejecuta de manera cíclica en el hardware seleccionado. Ésta opción se encuentra a un lado de los botones de simulación, el menú desplegable de la barra en la opción Normal, se cambia a External Mode, y la opción de tiempo se pone en valor inf para ciclar la simulación, la pestaña de opciones de modo se muestra en la imagen 4.19. Ésta configuración sólo se pude lograr con la placa Arduino Mega, debido a que tiene un procesador 4 veces más grande que el UNO, por lo que el modo externo sólo está disponible si se tiene el hardware necesario, aún así. El Arduino Uno funciona con una ejecución “normal”.

Imagen 4. 19 Pestaña de opciones para selección de modo

4.8 Emulación de Planta + Control virtual

Al haberse concluido la instalación del software necesario para vincular Arduino con Simulink, lo único que resta es crear un diagrama de bloques que relacione los datos recogidos por Arduino, y los ingrese al sistema para que puedan ser comparados y el control PID se efectue. Primeramente, se tiene que entender que los valores enviados a Simulink no son completamente analógicos, sino que se registran en formato de bits, y para diferentes rangos de valores analógicos se envía un número en bits desde 0 hasta 1024. Esto significa que el número recogido directamente por Arduino no estará directamente en algún submúltiplo de °C (como es enviado directamente a la salida del LM35), para corregir esto, y regresar el valor a algún submúltiplo de °C se divide la salida del la lectura analógica entre 204.8 puesto que:

1024 es el valor máximo enviado, y 5 Volts es el valor máximo emitido por el sensor. Ahora solo falta multiplicar este nuevo número por 100, dado que el LM35 tiene una salida de 10mv por cada °C. Después de este manipuleo matemático del dato, este se encontrará ya en °C, y listo para ser ingresado a el control. La imagen 4.20 muestra el diagrama de bloques que se construyo para llevar a cabo este procedimiento matemático.

Imagen 4. 20 Diagrama de bloques para corrección de datos recogidos

Otra de las secciones del control que se modificó con fines de sintonización, fue la salida del control PID. Los valores emitidos por el bloque eran en efecto proporcionales al error, de cualquier manera, estos valores resultaban algo altos para el rango admitido por el bloque PWM, quien al final, es el encargado de regular la intensidad del foco.

Para solucionar esta problemática se añadieron 2 bloques más a la salida del control PID, uno de multiplicación y otro de división. Una vez se hubieron colocado estos bloques, se realizó un proceso de”tunning” en donde se variaban los valores constantes de multiplicación y división, con la finalidad de encontrar los que ofrecieran la respuesta más aceptable. Adicionalmente, a esta nuevo parámetro “tunneado” se le agrego un bloque de “ Saturation”, cuya función es restringir los valores máximos y mínimos emitidos a través de él. Los límites escogidos fueron 0 y 255, puesto que el bloque de PWM reconoce solamente este rango de valores, con 0 siendo un ciclo de trabajo nulo, y 255 un ciclo de trabajo de 1. El acomodo final de esta sección del sistema se muestra en la imagen 4.21.

Imagen 4. 21 Diagrama de bloques para “tunning” de salida correctiva.

Al terminar esta parte, se procedió a enlazar la planta física con el control virtual, en donde ocurrió un grave error; Cuando se intentaba correr el programa, Simulink enviaba un mensaje de alerta, el cual indicaba que no fue posible el enlace con la tarjeta Arduino.Para intentar resolverlo este detalle se modificaron en repetidas ocasiones las opciones de trabajo, se reinstalo el toolkit, y se reinició el ordenador, pero nada parecía funcionar. El problema residía en que el diagrama de bloques final, donde se conectaban todos las bloques antes detallados, se incluía la planta “virtual”; esto es, se estaba intentando simular y emular al mismo tiempo, lo cual resultaba imposible. La imagen 4.22 demuestra la parte del diagrama de bloques que estaba “sobrando”, ya que era imposible tener una planta real, y al mismo tiempo simular la virtual. La única acción que se requirió efectuar para resolver este problema fue eliminar la planta virtual

Imagen 4. 22 Error en el control final

Tras haber corregido este error, se añadió un bloque “scope” a la salida de la lectura analógica del LM35, para poder ver en tiempo real como se comportaba la temperatura dentro del tubo. La imagen 4.23 muestra el diagrama de bloques final, con el que la práctica se llevó a término exitosamente.

Imagen 4. 23 Diagrama de bloques final.

El diagrama de bloques 4.23 en conjunto con la planta real y el circuito dimmer son la fase culminante del proyecto; cuya interacción final consistió en conectar la planta real (aunque más específicamente el sensor que tenía integrado), al Arduino, desde donde la medición captada por el LM35 sería enviada hasta Simulink. Una vez en Simulink esta lectura se comparó con la constante de “set point”, quien funge como valor de temperatura deseado en °C. Después de la comparación, que inevitablemente tendrá como resultado una pequeña diferencia (el error) , la nueva señal se ingresa en el bloque PID donde se lleva a cabo el cálculo de la magnitud de la acción correctiva. Esta señal correctiva se envía al PWM de Arduino, quién externamente está conectado al circuito dimmer; para finalmente regular la intensidad de brillo del foco que da calor al sistema. Una vez hecho todo lo anterior, el bloque “Scope” en la imagen 4.23 permitió observar el comportamiento de la temperatura a través del tiempo del sistema, dejando en claro la efectividad del control PID. La imagen 4.24 es un muestreo de la temperatura, y en ella se puede observar que la oscilación respecto al set-point (50°C) es mínima, de alrededor de +0.5 °C.

Imagen 4. 24 Temperatura controlada Antes de que la temperatura alcanzara este estado estable, las mediciones rebasaban el setpoint por un aproximado de 10°C, para después descender por debajo de el a alrededor de 5°C. Después de este último error el sistema comenzaba a estabilizarse hasta quedar fijo al set-point. Esta compensación y descompensación de la respuesta se debe a la configuración del control PID. La imagen 4.15 muestra este comportamiento precisamente: una alza en la variable controlada, un descenso, y finalmente un valor estable. Para llegar a este estado de control, al sistema le tomaba un aproximado de 2 minutos, dependiendo de lo alto de la temperatura que se ingresaba en el set-point.

La manera en la que la intensidad del foco variaba era sutil, aunque se veía entrecortada de forma intermitente. El docente explicó que esto ocurría debido a que la salida de PWM tomada del Arduino era en uno de los pines digitales. Para modificar este comportamiento, la salida de PWM se tendría que haber tomado de uno de los pines analógicos de Arduino.

5. Conclusiones

El increíble avance tecnológico y de producción alcanzado por el hombre actualmente se debe mayoritariamente al control automático. Sea cual sea el proceso, un control automático permite uniformidad, precisión, estandarización y calidad en los productos terminados. Hoy en día es inclusive cosa rara encontrar procesos productivos exentos de uno o múltiples controles automáticos, sean estos para mantener a raya la temperatura, el nivel, la velocidad, o cualquier otro parámetro medible. En este proyecto se descubrió la increíble versatilidad y facilidad de utilización del control PID, y sin duda alguna, ahora es fácil ver porqué es uno de los controles de mayor utilización en el medio: tan solo basta con encontrar los valores de sintonización de a través de un estudio de la planta para implementarse. En repetidas ocasiones hemos visto que lo más sencillo es lo más eficaz, y esta vez no fue diferente. Mediante el método Zieger- Nichols fue posible sintonizar el control PID, y hacerlo que funcionara adecuadamente, tan solo bastó un par de manipuleos meramente aritméticos, y algo de análisis estadístico básico. La única parte que presentó algo de problemática fue establecer comunicación entre el mundo real y el ordenador, pero al final todo resulto como se tenía esperado. Para concluir, solo resta añadir que el aprendizaje obtenido fue sin duda cuantioso. El método PID representa una de las mejores alternativas para el manejo y control de procesos.

6. Referencias

-

INGENIERÍA DE CONTROL MODERNA. Tercera Edición. Prentice Hall. Katsuhiko Ogata, Biblioteca UDB, Clasificación: Libro interno 629.8 O34 1998

-

Ziegler, J. G. & Nichols, N. B. (1942). Optimum Settings for Automatic Controllers. ASME Transactions, 64.

-

Manual completo de instalación y configuración de Arduino con Simulink. http://sti.tice.ac-orleanstours.fr/spip2/IMG/pdf/working_with_arduino_hardware.pdf

-

Introducción

-

Características del hardware Arduino http://www.arduino.cl/int/caracteristicas.html

-

LabVIEW,

-

Drivers

-

Software

-

Sensor http://pdf.datasheetcatalog.com/datasheet/stmicroelectronics/2158.pdf

-

Sensor

-

Fritzing http://fritzing.org/download/

al

Arduino

descarga. VISA Arduino

http://arduino.cc/es/Guide/Introduction

http://www.ni.com/download-labview/esa/ http://sine.ni.com/psp/app/doc/p/id/psp-411/lang/es IDE

LM35

http://arduino.cc/en/Main/Software LM335

http://www.ti.com/lit/ds/symlink/lm35.pdf