Medidor de Temperatura Remoto con Monitoreo Inteligente

0 UNIVERSIDAD FEDERICO SANTA MARIA Medidor de Temperatura Remoto con Monitoreo Inteligente Andrés Carrasco Juan campo

Views 82 Downloads 3 File size 1MB

Report DMCA / Copyright

DOWNLOAD FILE

Recommend stories

Citation preview

0

UNIVERSIDAD FEDERICO SANTA MARIA

Medidor de Temperatura Remoto con Monitoreo Inteligente

Andrés Carrasco Juan campos 24/08/2015

1

Asignaturas: Computadores y Comunicación Digital

2

El fin del proyecto es construir una aplicación de telemetría, el cual consta de un sistema autónomo que mida temperatura en un punto remoto,controle en caso de emergencia (incendio o gas abierto) y que envíe dicha información a un sistema local que mostrara la información en una pantalla LCD más un plus el cual consta de agregar funciones o características nuevas para mejorar este proyecto. Para la construcción de este sistema autónomo se hará uso de componentes esenciales como lo son: -micro controlador 16F877A, lm35, UM/96, cristal de cuarzo, condensadores y resistencias varias. El sistema local como base constara de: Micro controladores PIC16F877A mas su circuito funcional característico, pantalla LCD (Periférico), UM/96 (Transmisores). Luego de construir el proyecto se espera poder medir la temperatura de forma remota con el sistema autónomo y poder observarla en la pantalla LCD del circuito local, y el correcto funcionamiento de las nuevas características agregadas al proyecto.

3

Índice Capitulo 1 Componentes..................................................................................................................3 Diagrama de bloques......................................................................................................3 Funcionamiento del sistema...........................................................................................3 Capitulo 2 Lenguaje c.......................................................................................................................6 Capitulo 2 Circuito esquemático......................................................................................................8 Diagrama de bloques del programa en labview..............................................................9 Lenguaje c.......................................................................................................................6 Monitoreo de la temperatura en smartphone................................................................11 Panel frontal de control de temperatura en labview......................................................10 Capitulo 3 12 Prueba en protoboard con UM96..................................................................................13 Prueba en protoboard sin UM96...................................................................................13 Pruebas en simulación..................................................................................................13 Conclusión 16

4

Introducción La aplicación de telemetría que abordaremos en el siguiente informe constara de dos partes esenciales la cuales son: -Sistema Remoto: Es un sub sistema computacional el cual medirá la temperatura en el lugar que se encuentre, para luego ser enviada al sistema local. El sistema remoto se compone de un micro controlador PIC16F877A más su circuito funcional característico, sensor de temperatura LM35, circuito adaptador de señal ,UM/96 como Tx y LCD SERIE para poder visualizar los datos. -Sistema Local: Estará encargado de recibir la temperatura y enviarla al Software Labview donde se podran ver datos en tiempo real ,un grafico y tabla de valores entregados por el pic o se podra visualizar en un Smartphone mediante el uso de un modulo Bluetooth y aplicación creada. El sistema local está compuesto por un micro controlador PIC16F877A mas su circuito funcional característico, interfaz FTDI y UM/96 como Rx,Modulo Bluetooth,Smartphone y Notebook. Los sistemas estarán comunicados por un par de UM/96 los cuales tienen un alcance de aproximadamente 1k en línea vista, el sistema remoto se colocara en un punto x (por definir según alcance). El sistema remoto mide la temperatura y la envía al sistema local, se mostrara la temperatura por la pantalla del Notebook. Se espera que los sistemas puedan comunicarse dentro de las dependencias de la universidad y que la medición de la temperatura sea correcta con un mínimo de margen de error.

5

Capitulo 1

6

Diagrama de bloques:

Figura 1

Funcionamiento del sistema. Como se ha mencionado anteriormente el sistema constara de dos partes esenciales, las cuales se dividen en: un sistema remoto encargado de medir la temperatura mostradas en un LCD y un sistema local que desplegara la información recibida por una pantalla de un Smartphone o Notebook. El sistema constara con un PIC16F877A que será el encargado de recibir el dato que envié el sensor de temperatura, se hará uso del sensor de temperatura LM35 el cual presenta una escala lineal para la medición de la temperatura aumentando el voltaje de salida 10mv por cada grado que la temperatura suba. El programa contara con una conversión análogo-digital para que el voltaje del LM35 sea digitalizado y guardado como una variable , luego de guardar la variable esta se enviara a través del UM/96 Tx para ser recibida por el nodo local. El nodo local estará recibirá la señal del sistema remoto con el UM/96 Rx, el micro controlador se encargara de recibir la variable en un formato digital de 256 bits (esto debido la conversión análogo-digital). Se necesita tener un voltaje de referencia para convertir el dato binario de temperatura a su valor físico original, para este caso usaremos un divisor de tensión con referencia ajustable de presicion de 1 volt, luego de mostrar la temperatura por pantalla, será enviado un acuse al nodo remoto diciendo que el dato fue recibido con éxito y por último el sistema remoto responderá que el acuse fue recibido.

7

Componentes:            

2 PIC16F877A. 2 Módems UM/96. Lm35. Pantalla LCD. Cristal de cuarzo 4Mhz y Condensadores de 22pF. Resistencias y condensadores varios. Pulsadores. Optocopladores. Relés. Interfaz FTDI. Modulo Bluetooth. Smartphone y Notebook.

8

Capitulo 2

9

Lenguaje c

Transmisión #include #fuses XT, NOWDT, PUT, NOPROTECT, NODEBUG, NOBROWNOUT, NOLVP, NOCPD, NOWRT #device ADC=8 #use delay(clock=4000000) #use rs232 (baud=9600, xmit=PIN_C6 , rcv=PIN_C7 ,stream=port_1) #use rs232 (baud=9600, xmit=PIN_B0 , rcv=PIN_B1 ,stream=port_2) int Far,vin1; int x,y; void main() { int vin0; setup_adc(ADC_CLOCK_INTERNAL); setup_adc_ports(3); while(TRUE) { set_adc_channel(0); delay_ms(100); vin0=read_adc(); vin1=(vin0*(0.3921569)); fputc(vin0,port_1); Far=(vin1* 1.8)+32; x=input_B(); if (x==0){ if(y==2){ output_D(2); fputc(254,port_2);fputc(1,port_2);delay_ms(10); fputc(254,port_2);fputc(128,port_2);delay_ms(10); fprintf(port_2,"TEMPERATURA"); fputc(254,port_2);fputc(192,port_2);delay_ms(10); fprintf(port_2,"%d °C",vin1); fputc(254,port_2);fputc(200,port_2);delay_ms(10); fprintf(port_2,"%d °F",Far); } else { output_D(0); fputc(254,port_2);fputc(1,port_2);delay_ms(10); fputc(254,port_2);fputc(128,port_2);delay_ms(10); fprintf(port_2,"TEMPERATURA"); fputc(254,port_2);fputc(192,port_2);delay_ms(10); fprintf(port_2,"%d °C",vin1); fputc(254,port_2);fputc(200,port_2);delay_ms(10); fprintf(port_2,"%d °F",Far); } }

10

if (x==16){ if(y==2){ output_D(7); fputc(254,port_2);fputc(1,port_2);delay_ms(10); fputc(254,port_2);fputc(128,port_2);delay_ms(10); fprintf(port_2,"INCENDIO!"); fputc(254,port_2);fputc(192,port_2);delay_ms(10); fprintf(port_2,"%d °C",vin1); fputc(254,port_2);fputc(200,port_2);delay_ms(10); fprintf(port_2,"%d °F",Far); } else{ output_D(5); fputc(254,port_2);fputc(1,port_2);delay_ms(10); fputc(254,port_2);fputc(128,port_2);delay_ms(10); fprintf(port_2,"INCENDIO!"); fputc(254,port_2);fputc(192,port_2);delay_ms(10); fprintf(port_2,"%d °C",vin1); fputc(254,port_2);fputc(200,port_2);delay_ms(10); fprintf(port_2,"%d °F",Far); } } if (x==32){ output_D(6); y=2; fputc(254,port_2);fputc(1,port_2);delay_ms(10); fputc(254,port_2);fputc(128,port_2);delay_ms(10); fprintf(port_2,"GAS INFLAMABLE!"); fputc(254,port_2);fputc(192,port_2);delay_ms(10); fprintf(port_2,"%d °C",vin1); fputc(254,port_2);fputc(200,port_2);delay_ms(10); fprintf(port_2,"%d °F",Far); } if (x==48){ output_D(7); fputc(254,port_2);fputc(1,port_2);delay_ms(10); fputc(254,port_2);fputc(128,port_2);delay_ms(10); fprintf(port_2,"PELIGRO"); fputc(254,port_2);fputc(192,port_2);delay_ms(10); fprintf(port_2,"ZONA DE RIESGO"); } } }

11

Recepción #include #fuses XT, NOWDT, PUT, NOPROTECT, NODEBUG, NOBROWNOUT, NOLVP, NOCPD, NOWRT #device ADC=8 #use delay(clock=4000000) #use rs232(baud=9600, xmit=PIN_C6 , rcv=PIN_C7 , stream=port_1) #use rs232(baud=9600, xmit=PIN_B5 , rcv=PIN_B4 , stream=port_2) int dato,vin1; void main(){ while(TRUE){ if(kbhit(port_1)){ dato=fgetc(port_1); vin1=(dato*(0.3921569)); fprintf(port_2 , "%d ",vin1); } } }

12

Circuito esquemático del Subsistema Tx Simulado en Proteus

Figura 2

Para la medición de Temperatura con el LM35 y la verificación de los datos entregados se hace una comparación con un instrumento patrón en este caso una Termocupla conectada a un multitester disponible en pañol, la idea es que el sensor de temperatura de valores cercanos o exactos con un mínimo de +-1 grados de margen de error del instrumento patrón para así obtener datos verdaderos. Circuito esquemático del Subsistema Rx Simulado en Proteus

Figura 3

13

Circuito esquemático del Sistema fi nal COMPLETO

Diagrama de bloques del programa en Labview. 3) 1)

2)

Figura 4

14

En esta imagen se puede apreciar de manera explícita la programación en el software Labview: La parte 1 consta de la configuración del puerto VISA (Puerto de datos seriales) como lo son los baudios, bits de paridad y bits de stop el cual se configura teniendo en cuenta la configuración que damos anteriormente al microcontrolador para trabajar en sincronía con la recepción de datos y la posterior adaptación de un dato con decimales a un dato entero así como el cierre del mismo puerto. La parte 2 consta de la recepción del dato y sincronizarla con el termómetro grafico, los indicadores de temperatura con operaciones lógicas (de Mayor o Menor) mas la inclusión del recurso de grafico en tiempo real cada 2 segundos. La parte 3 consta de la recepción de los datos y la transformación de datos en señal para grabarlos o escribirlos en el grafico y tabla de valores.

Para simular este proyecto se realizo el circuito correspondiente en Proteus y el diagrama de bloques en labview y se encontró la forma de conectar ambos software y tener un circuito completo antes de armarlo en protoboard mediante la creación de puertos seriales virtuales (Configure Virtual Serial Port Driver) se logro unir estos programas y obtener una simulación completa e interesante, todos las fotos agregadas a este informe son de la simulación del circuito.

15

Panel frontal de control de temperatura en Labview

Figura 5

El plus que se le agregó a este proyecto tiene la finalidad de monitorear la temperatura que mide microcontrolador remoto (Tx), mostrándola de manera grafica en Notebook o Computador de escritorio mediante un termómetro grafico más indicadores visuales de rangos de temperatura, una lista de valores que reciben cada 2 segundos y con ello generando un listado el cual puede ser exportado de manera manual a Excel al iniciar la medición. Este panel se visualiza desde la pantalla del computador, el cual está conectado al microcontrolador a través de la interfaz FTDI o conectado a Proteus mediante la creación de un Puerto Virtual. El microcontrolador enviara los datos al computador y gracias al programa Labview este podrá recibirlos e interpretarlos, una vez que los datos sean recibidos el programa los guardara en una tabla y podrán ser mostrados de distintas formas, tal como se ve en la imagen (barra de temperatura, grafico de datos, leds indicadores, e indicador sonoro etc).

16

Monitoreo de la temperatura en Smartphone (PLUS)

Figura 6

En la figura se muestra la programación en diagrama de bloques de la aplicación, diseñada desde la siguiente página: ai2.appinventor.mit.edu/. En el caso de que se desee observar los datos del microcontrolador en el smartphone se debe conectar un modulo bluetooth al microcontrolador y en el smartphone tener instalada la aplicación Temptel (además de haber hecho el programa en app inventor). Una vez listos estos requisitos se abre la aplicación Temptel desde el Smartphone, buscamos los dispositivos disponibles, se conecta al modulo bluetooth del microntrolador y ya se podrá observar la temperatura desde la pantalla del Smartphone desde una interfaz sencilla e intuitiva de usar.

Figura 7

17

Capitulo 3

18

Pruebas en simulación. Una vez lista la programación del transmisor y receptor, se simulo el circuito en proteus 8 (programa con el cual podemos verificar si la programación funciona correctamente). Ya que en el programa no se encuentran los UM96 los circuitos se conectaron directamente por sus pines de comunicación (c6 en el transmisor y c7 en el receptor). Luego de conectar los microcontroladores procedimos a implementar el lm35 y conectarlos a los pines RA0 y RA3 (usados para la conversión análogo-digital), ya listo todo lo anterior se cargan los programas en los microcontroladores y verificamos su funcionamiento. La simulación no tuvo problemas y ya corroborado el correcto funcionamiento del programa comenzamos la construcción del circuito en protoboard.

Prueba en protoboard sin UM96. Los circuitos se montaron en la misma protoboard y usando una misma fuente para verificar si funcionaban correctamente, conectando el pinC6 del transmisor al pinC7 del receptor, además se conecto una interfaz FTDI al pinB0 del transmisor al computador para visualizar una grafico de la temperatura en el programa labview. Al energizar el circuito este funciono sin mayores inconvenientes, los valores eran visibles en la pantalla LCD y en el computador.

Prueba en protoboard con UM96. Se mantuvo la conexión anterior (usando una misma fuente para ambos circuitos y en la misma protoboard), solo se desconecto el pinC6 del transmisor y el pinC7 (que estaban conectados de forma directa por un alambre UTP) y se conectaron a los UM96. En la primera prueba el circuito no funciono, así que se reviso el programa de ambos microcontroladores, encontrando varios problemas en la programación, como la sincronización de los UM96 con el programa en el microcontrolador Receptor, para solucionar estos errores se realizo un examen exhaustivo de las líneas en el programa. Una vez que se arreglaron los problemas de programación, se hicieron otras pruebas con buenos resultados, al revisar los UM96 se encontró que uno de los cables presentaba fallas y al cambiar el cable el circuito funciono correctamente en su totalidad. A continuación imágenes donde se puede observar las pruebas realizadas de transmisión y recepción:

19

Transmisor con UM96

figura 7

Receptor con UM96

figura 8

20

Labview

figura 9

21

Conclusión En la realización del proyecto se uso todo lo aprendido en el primer semestre de clases, poniendo en práctica materias como lo son: conversión análogo digital, comunicación serie con los UM96 y pantalla LCD y otros más uno de los errores que apareció en el momento de la implementación fue que se estaba realizando la conversión análogo digital en el transmisor y receptor, lo cual generaba que el dato mostrado por la pantalla era erróneo, luego de corregir este error, el transmisor enviaba el dato en 8bit y en el receptor se transformo el dato binario a datos centígrados.