Manual control de temperatura

MANUAL DE UN PROTOTIPO DIDÁCTICO PARA EL CONTROL DE TEMPERATURA EN UN TANQUE DE ALMACENAMIENTO DE AGUA SERGIO ANDRÉS GU

Views 157 Downloads 4 File size 1MB

Report DMCA / Copyright

DOWNLOAD FILE

Recommend stories

Citation preview

MANUAL DE UN PROTOTIPO DIDÁCTICO PARA EL CONTROL DE TEMPERATURA EN UN TANQUE DE ALMACENAMIENTO DE AGUA

SERGIO ANDRÉS GUERRERO QUINTERO

2134320

MARIA ANGÉLICA HERNÁNDEZ GRIMALDOS

2132477

AURA JULIANA LIZCANO RIVERA

2130811

JUAN CAMILO OSSES ABAÚNZA

2134325

ERIKA TATIANA QUINTERO PACHECO

2132508

LAURA CAMILA RIOS CARREÑO

2130827

UNIVERSIDAD INDUSTRIAL DE SANTANDER FACULTAD DE INGENIERÍAS FÍSICO QUÍMICAS ESCUELA DE INGENIERÍA QUÍMICA BUCARAMANGA JULIO DE 2017

MANUAL DE UN PROTOTIPO DIDÁCTICO PARA EL CONTROL DE TEMPERATURA EN UN TANQUE DE ALMACENAMIENTO DE AGUA

PROYECTO DE CLASE DE LA ASIGNATURA CONTROL DE PROCESOS QUÍMICOS

SERGIO ANDRÉS GUERRERO QUINTERO

2134320

MARIA ANGÉLICA HERNÁNDEZ GRIMALDOS

2132477

AURA JULIANA LIZCANO RIVERA

2130811

JUAN CAMILO OSSES ABAÚNZA

2134325

ERIKA TATIANA QUINTERO PACHECO

2132508

LAURA CAMILA RIOS CARREÑO

2130827

ASESORIA DEL AUXILIAR LUIS MIGUEL CASTILLO

UNIVERSIDAD INDUSTRIAL DE SANTANDER FACULTAD DE INGENIERÍAS FÍSICO QUÍMICAS ESCUELA DE INGENIERÍA QUÍMICA BUCARAMANGA JULIO DE 2017

TABLA DE CONTENIDO

INTRODUCCIÓN ............................................................................................... 1 1. MARCO TEÓRICO ....................................................................................... 1 2. DESCRIPCIÓN DEL PROTOTIPO............................................................... 7 3. DESCRIPCIÓN DEL CIRCUITO .................................................................. 9 4. DESCRIPCIÓN DEL SOFTWARE ............................................................. 12 4.1. DESCARGA DEL PROGRAMA ARDUINO .................................... 12 4.2. PROGRAMACIÓN PARA EL CONTROL DE TEMPERATURA ..... 15 5. PROTOCOLO DE USO Y MANEJO DEL PROTOTIPO ............................ 18 5.1. PRE-PRÁCTICA .............................................................................. 18 5.2. PRÁCTICA ...................................................................................... 18 5.3. POST-PRÁCTICA............................................................................ 19 6. PRECAUCIONES Y SEGURIDAD ............................................................. 20 7. PRÁCTICA DE LABORATORIO Y PREGUNTAS ..................................... 21 7.1. RECONOCIMIENTO DEL PROTOTIPO Y LAS VARIABLES ........ 21 7.2. BALANCES DE MATERIA Y ENERGÍA ......................................... 21 7.3. ANÁLISIS DE LA VARIACIÓN DE TEMPERATURA ..................... 22 7.4. DIAGRAMA DE LAZO CERRADO .................................................. 23 7.5. GRÁFICAS ...................................................................................... 23 7.6. APLICACIÓN DE UNA PERTURBACIÓN ...................................... 23 8. RECOMENDACIONES Y MEJORAS ........................................................ 23 8.1. RECOMENDACIONES .................................................................... 23 8.2. MEJORAS ....................................................................................... 24 BIBLIOGRAFÍA ....................................................................................................... 24

INTRODUCCIÓN La necesidad de mantener un proceso físico o químico en unas condiciones de operación deseadas representa un gran reto para la industria, en vista de que existen muchos factores que pueden modificar las variables de dichas condiciones de operación de un sistema, se busca implementar las tecnologías y herramientas informáticas que facilitan la manipulación de estas variables en los diferentes sistemas permitiendo mejor control del proceso, la manipulación de estos sistemas representa un aprendizaje práctico a través del cual el estudiante de ingeniería química puede repasar y afianzar la teoría estudiada en la asignatura de control de procesos, siendo esto un factor clave en el desarrollo profesional. Durante este trabajo se desarrolla la mejora de un prototipo didáctico del semestre anterior (20162) con el cual los estudiantes podrán implementar los conceptos aprendidos en la asignatura de control de procesos del programa de ingeniería química. El siguiente manual presenta un sistema de control de temperatura en un tanque de almacenamiento de agua. 1. MARCO TEÓRICO Para el correcto desarrollo y funcionamiento del prototipo, es fundamental reconocer las principales partes que lo componen. Arduino: Este dispositivo conecta el mundo físico con el mundo virtual. Es una plataforma electrónica de hardware de código abierto, se compone de en un tablero de microcontroladores basado en el ATmega328 (hoja de datos). Tiene 14 pines digitales de entrada / salida (de los cuales 6 se pueden usar como salidas PWM), 6 entradas analógicas, un resonador cerámico de 16 MHz, una conexión USB, un conector de alimentación de 5V, una cabecera ICSP y un botón de reinicio. Basado en un lenguaje de programación Processing. Contiene todo lo necesario para soportar el microcontrolador; simplemente conéctelo a un ordenador con un cable USB o conéctelo con un adaptador de CA a CC o batería para empezar.

Fig.1. Partes de la tarjeta Arduino UNO. 1

Visual Basic: Herramienta que vincula el Arduino UNO con el Excel. Visual Basic es una aplicación y un lenguaje de programación desarrollado por Alan Cooper para Microsoft. La aplicación permite crear ventanas, botones, menús, etc. de forma sencilla con solo arrastrar y soltar los elementos. Luego se pueden definir las apariencias, posiciones y comportamientos tanto de forma visual como utilizando códigos de programación que permiten la conexión con el micro controlador Arduino uno para el registro y análisis de datos en archivos de Excel (PLQ). (Alegsa, 2016).

Fig.2.Ventana de trabajo para la programación de Visual Basic.

Mecanismo de aviso - Buzzer: (zumbador buzzer 5v ARDUINO): Zumbador, buzzer en inglés, es un transductor electroacústico que produce un sonido o zumbido continuo o intermitente de un mismo tono (generalmente agudo). Sirve como mecanismo de señalización o aviso y se utiliza en múltiples sistemas, como en automóviles o en electrodomésticos, incluidos los despertadores. (Fundación Wikipedia Inc., 2017). Su construcción consta de dos elementos, un electroimán o disco piezoeléctrico y una lámina metálica de acero. El zumbador puede ser conectado a circuitos integrados especiales para así lograr distintos tonos. Cuando se acciona, la corriente pasa por el disco piezoeléctrico haciéndolo entrar en resonancia eléctrica y produciendo ultrasonidos que son amplificados por la lámina de acero. No necesita una señal de corriente alterna ya que por dentro tiene un circuito 2

controlador que lo hace oscilar a 2 KHz. Solo requiere de un voltaje entre 35V. Es compatible con protoboard y consume una corriente de 25 mA, lo que permite conectarlo directamente, sin circuito externo, a la plataforma preferida, bien sea Arduino, PIC, AVR, Raspberry entre otras.

Fig.3.Dispositivo Buzzer.

Controlador - Relé: (Módulo relé de 2 canales 5V ARDUINO): El relé o relevador es un dispositivo electromagnético. Funciona como un interruptor controlado por un circuito eléctrico en el que, por medio de una bobina y un electroimán, se acciona un juego de uno o varios contactos que permiten abrir o cerrar otros circuitos eléctricos independientes para este caso los elementos finales de control la bomba y la resistencia. (Borísov, 1989). La bobina se activa con una señal de 5V y puedes contar el encendido y/o apagado de una carga de 110VAC y hasta 10A, suficiente para un bombillo y algunos electrodomésticos.

Fig.4.Dispositivo Relé.

3

Sensor De Temperatura Tipo Termocupla (ARDUINO) DS18B20: El sensor de temperatura DS18B20 es un dispositivo que se comunica de forma digital. Cuenta con tres terminales: Vcc, GND y el pin Data. Este sensor utiliza comunicación One Wire, este protocolo permite enviar y recibir datos utilizando un solo cable, a diferencia de la mayoría de los protocolos que requieren dos cables. (Gonzales, 2014)

El sensor debe características: ● ● ● ● ●

presentar

determinadas

Sensor Digital Resolución de 9 y 12 bits Rango de operación de -50 a 125 grados Centígrados Precisión +- 0.5 grados Protocolo One Wire

Fig.5.Termocupla. Para leer el sensor con un Arduino es necesario utilizar una librería OneWire que deben ser instalada antes de cargar el código a nuestra placa de desarrollo.

Resistencia: Es la encargada de aumentar la temperatura del líquido en el tanque de control. Es uno de los elementos finales de control del sistema, trabaja a una corriente de 110v y se enciende o apaga si se excede la temperatura establecida.

4

Fig.6. Resistencia

Bomba y serpentín: Es el sistema encargado de recircular el agua de enfriamiento hacia nuestro tanque de control con capacidad de 5,5 L, la bomba es otro elemento final de control y se encuentra ubicada en el tanque de enfriamiento con capacidad de 8,5 L, permite que el agua fría fluya a las mangueras que están conectadas a su vez al serpentín de cobre ubicado en el tanque de la derecha donde ocurre la transferencia de energía.

Fig.7. Sistema bomba serpentín.

5

Estos equipos presentan las siguientes especificaciones:

Mini Bomba de agua HJ-411

-1100V/120V 60HZ 2 watts -Altura Max 0,6 Metros -300 Litros/Hora -Peso 0,1 Kilos -Medidas 50*44*36mm

Serpentín de cobre

Tanque de agua a controlar

-13 espirales -Tubo cobre: diámetro 12 x 05 -Diámetro: Serpentín 16cm. -Desarrollo: 14,5 m. -Altura: 26,5cm. -Altura del arrollamiento: 32cm

304L.

-Capacidad de 5,5 L -Dimensiones: Alto: 20cm Ancho: 15cm Largo:15cm

-Capacidad de 8,5 L -Dimensiones:

Tanque de agua a controlar

Alto: 25cm Ancho: 19cm Largo: 19cm

Mezclador: Consiste en unas aspas elaboradas en plástico unidas por un rotor de plástico a un motor eléctrico que funciona con 5VCD y se conecta a la tarjeta

6

Arduino. Este dispositivo permite mantener la temperatura constante en el recipiente. Especificaciones del mezclador: -Voltaje 5V -Potencia Min: 0,5W -Potencia Max: 4,5 W -Velocidad de Rotación Min: 5 904 rpm (37 095,93 rad.min-1) -Velocidad de Rotación Max: 12 500 rpm (78 539,82 rad.min-1) -Diámetro: 24mm

Fig.8. Dispositivo de mezclado.

2. DESCRIPCIÓN DEL PROTOTIPO EL prototipo está compuesto por un hardware y un software. Dentro el hardware encontramos el sensor de temperatura, la tarjeta Arduino UNO que es un microcontrolador y el elemento final de control que pueden ser la bomba o la resistencia y como software esta la herramienta Macros de Excel que trabaja con la programación del Arduino UNO para el sensor de temperatura. Este sistema de control de temperatura consta de dos recipientes de 5 y 9 L, el de menor capacidad es el tanque de control y tiene en su interior una resistencia y un serpentín de cobre por el cual llega agua proveniente del tanque de refrigerante donde se encuentra una bomba que maneja un caudal de 300L/h aproximadamente. La resistencia y la bomba están conectadas a una toma de 120V, energía regulada por un Relé (5V ARDUINO), dispositivo que funciona como interruptor de corriente que está conectado a una tarjeta Arduino UNO, encargada de procesar información a través de sus puertos de conexiones y decidir con base en las mediciones del sensor de temperatura o termocupla (ARDUINO DS18B20) que mide un rango de -55 hasta 7

125ºC, rango en el que se ajusta el set point. La programación de la tarjeta Arduino cuenta con unos valores máximos y mínimos de temperatura en los cuales si se excede su valor se acciona un Buzzer (5V ARDUINO) que funciona como alarma y también se encuentra conectado a la tarjeta Arduino UNO. La interface para manipular el microcontrolador, donde se ejecuta el encendido y apagado de los elementos finales de control es un programa de Visual Basic en Excel (PLX-DAQ) que nos permite observar los valores medidos de temperatura en tiempo real.

1

6 4 3

5 2

Fig.9. Prototipo 1. 2. 3. 4. 5. 6.

Sensor tipo termocupla Tarjeta Arduino UNO (microcontrolador) Bomba (elemento final de control) Resistencia (elemento final de control) Tanque de Control Tanque de refrigerante

8

3. DESCRIPCION DEL CIRCUITO La termocupla y el motor eléctrico que genera el movimiento del mezclador son accesorios que trabajan en continuo durante todo el proceso, los cuales para el correcto funcionamiento se instalan dos resistencias 4.7k en la protoboard acoplados a un transistor como se muestra en la figura10,1.

Fig.10,1. Circuito

Normalmente la termocupla es un sensor que viene blindado en un cable largo para aplicaciones donde es necesario sumergirlo en líquidos u otras sustancias. Esta presentación del sensor solo trae 3 terminales o cables de conexión, El pin de VCC es el cable Rojo, GND es el cable Negro y el Cable de datos puede ser de color Amarillo o Blanco. El motor eléctrico posee dos terminales los cuales van conectados a la resistencia como se indica en la figura 10.2.

9

Fig.10,2. Circuito

La bomba y la resistencia están conectados a una fuente de corriente eléctrica necesaria para el funcionamiento de estos accesorios (una toma de 110VCA), la cual está regulada por un “Relay” Arduino, el cual es un dispositivo electromagnético que funciona como un interruptor, controlado por un circuito eléctrico en el que, por medio de una bobina y un electroimán, se acciona un juego de uno o varios contactos que permiten abrir o cerrar los circuitos eléctricos independientes (el encendido y apagado de la bomba y la resistencia), según la decisión del controlador.

Fig.10,3. Circuito 10

El Buzzer, es un transductor electroacústico que produce un sonido o zumbido continuo o intermitente de un mismo tono (generalmente agudo). Sirve como mecanismo de señalización o aviso y se utiliza en múltiples sistemas; este generalmente posee dos terminales (positivo y negativo) las cuales están conectadas en los pines 13 y GND respectivamente; este esquema del circuito nos ayuda a corroborar las distintas conexiones y sitios donde deben estar ubicadas por posibles daños o mal funcionamiento del circuito.

Fig.10,4. Circuito El esquema del circuito y conexiones en general se muestran en la siguiente figura (figura No 10,5).

Fig.10,5. Circuito general. 11

4. DESCRIPCIÓN DEL SOFTWARE 4.1. DESCARGA E INSTALACION DEL PROGRAMA ARDUINO: Se ingresa a la página: www.arduino.cc desde la barra de ingreso de páginas de internet desde cualquier navegador. ✓ Se muestra la página principal de Arduino en internet.

Fig. 11,1. Ventana inicial de la pagina Arduino.

✓ Se ingresa a ‘Software’:

Fig. 11,2. Clic en software.

12

✓ Luego, se baja un poco la barra cursora y se encuentra una opción para la instalación de Arduino en Windows llamada: ‘Windows Installer’.

Fig. 11,3. Click en Instalar.

✓ Se selecciona la opción ‘Just download’

Fig. 11,4. Solo descarga.

✓ Después de realizar el paso anterior aparece una ventana emergente y el usuario decide en dónde desea guardar el instalador de la aplicación Arduino.

13

Fig.11,5. Ubicación del archivo.

✓ Se inicia la descarga en la parte inferior del ordenador. ✓ Se abre el instalador después de que finalice la respectiva descarga. ✓ Se genera un cuadro de diálogo en el ordenador.

Fig. 11,6. Cuadro de dialogo.

14

✓ Se seleccionan sobre el cuadro de diálogo anterior siempre las opciones de proceder y de aceptar los términos respectivos para la adquisición gratis de esta aplicación; también, para mayor facilidad sobre ese cuadro de diálogo aparece la opción de crear un acceso directo, se chulea que sí. Cómo último paso, se cliquea sobre finalizar. ✓ Finalmente, se puede abrir y utilizar la aplicación de Arduino en el ordenador.

4.2. PROGRAMACIÓN PARA EL CONTROL DE TEMPERATURA: #include int DS18S20_Pin = 2; //DS18S20 Signal pin on digital 2 int alarma=13; //conección del buzzer int calentador=12; //conección de la resistencia calentadora int bomba=11; //conección de la bomba float maxima=50; //maximo valor de temperatura permisible para que suene el buzzer float minima=20; //minimo valor de temperatura permisible para activar la alarma float setpoint=20; //Set point float tolerancia=0.5; // tolerancia del sensor int R=0; //variable que indica si se encuentra prendida o apagada la resistencia int B=0; //variable que indica se se encuentra encendida o apagada la bomba float tiempo; int dsp1; // variable del primer contador para el set pont int dsp2= -1000; //variable del segundo contador para el set point int cc=1; //----------------------------------------------------------------------------------------------//Temperature chip i/o OneWire ds(DS18S20_Pin); // on digital pin 2 void setup(void) { Serial.begin(9600); Serial.println("CLEARDATA"); // Borra los datos en Excel. Serial.println("LABEL,TIEMPO (s), TEMPERATURA (C), RESISTENCIA, BOMBA, SETPOINT"); // Titulos de los ejes en la grafica de Excel. pinMode(alarma,OUTPUT); pinMode(calentador,OUTPUT); pinMode(bomba,OUTPUT); pinMode(7,OUTPUT); } 15

void loop(void) { dsp1=Serial.read(); //lee datos ingresados al setpoint del excel if (dsp2 == -1000) { dsp2=dsp1; } if (dsp1!=dsp2) { setpoint=(dsp1-48)*10; dsp1=Serial.read(); setpoint=setpoint+(dsp1-48); dsp1=Serial.read(); dsp1=Serial.read(); dsp2=dsp1; } digitalWrite(7,LOW); float temperature = getTemp(); //will take about 750ms to run if(temperature>=setpoint+tolerancia){ digitalWrite(bomba,HIGH); B=1; } if(temperature=setpoint-0.4){ digitalWrite(calentador,HIGH); //Apaga la resistencia R=0; } if(temperature=maxima || temperature=-55){ Serial.print("DATA,"); // Envie los valores a Excel. Serial.print(tiempo); // Salida del valor de tiempo en [s]. Serial.print(", "); Serial.print(temperature); Serial.print(", "); Serial.print(R); 16

Serial.print(", "); Serial.print(B); Serial.print(", "); Serial.println(setpoint); delay(1000); } }

float getTemp(){ //returns the temperature from one DS18S20 in DEG Celsius byte data[12]; byte addr[8]; if ( !ds.search(addr)) { //no more sensors on chain, reset search ds.reset_search(); return -1000; } if ( OneWire::crc8( addr, 7) != addr[7]) { Serial.println("CRC is not valid!"); return -1000; } if ( addr[0] != 0x10 && addr[0] != 0x28) { Serial.print("Device is not recognized"); return -1000; } ds.reset(); ds.select(addr); ds.write(0x44,1); // start conversion, with parasite power on at the end delay(750); // Wait for temperature conversion to complete byte present = ds.reset(); ds.select(addr); ds.write(0xBE); // Read Scratchpad

for (int i = 0; i < 9; i++) { // we need 9 bytes data[i] = ds.read(); } ds.reset_search(); 17

byte MSB = data[1]; byte LSB = data[0]; float tempRead = ((MSB