PROYECTO Temperatura- Andres Carrasco Juan Campos

download PROYECTO Temperatura- Andres Carrasco Juan Campos

of 22

description

Medidor de temperatura con monitoreo inteligente

Transcript of PROYECTO Temperatura- Andres Carrasco Juan Campos

Medidor de Temperatura Remoto con Monitoreo Inteligente

0

Universidad federico santa maria

Medidor de Temperatura Remoto con Monitoreo Inteligente

Andrs Carrasco

Juan campos

24/08/2015

Asignaturas: Computadores y Comunicacin Digital

El fin del proyecto es construir una aplicacin de telemetra, el cual consta de un sistema autnomo que mida temperatura en un punto remoto,controle en caso de emergencia (incendio o gas abierto) y que enve dicha informacin a un sistema local que mostrara la informacin en una pantalla LCD ms un plus el cual consta de agregar funciones o caractersticas nuevas para mejorar este proyecto. Para la construccin de este sistema autnomo 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 caracterstico, pantalla LCD (Perifrico), UM/96 (Transmisores).

Luego de construir el proyecto se espera poder medir la temperatura de forma remota con el sistema autnomo y poder observarla en la pantalla LCD del circuito local, y el correcto funcionamiento de las nuevas caractersticas agregadas al proyecto.

ndice

Capitulo 1

Componentes3

Diagrama de bloques3

Funcionamiento del sistema3

Capitulo 2

Lenguaje c6

Capitulo 2

Circuito esquemtico8

Diagrama de bloques del programa en labview.9

Lenguaje c6

Monitoreo de la temperatura en smartphone11

Panel frontal de control de temperatura en labview.10

Capitulo 312

Prueba en protoboard con UM9613

Prueba en protoboard sin UM9613

Pruebas en simulacin.13

Conclusin16

Introduccin XE "introduccin"

La aplicacin de telemetra 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 ms su circuito funcional caracterstico, sensor de temperatura LM35, circuito adaptador de seal ,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 aplicacin creada. El sistema local est compuesto por un micro controlador PIC16F877A mas su circuito funcional caracterstico, interfaz FTDI y UM/96 como Rx,Modulo Bluetooth,Smartphone y Notebook.

Los sistemas estarn comunicados por un par de UM/96 los cuales tienen un alcance de aproximadamente 1k en lnea vista, el sistema remoto se colocara en un punto x (por definir segn alcance). El sistema remoto mide la temperatura y la enva 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 medicin de la temperatura sea correcta con un mnimo de margen de error.

Capitulo 1 XE "Capitulo 1:componentes"

XE "Capitulo 1:diagrama de bloques"

XE "Capitulo 1:funcionamiento del sistema" Diagrama de bloques:

Figura 1Funcionamiento 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 informacin 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 medicin de la temperatura aumentando el voltaje de salida 10mv por cada grado que la temperatura suba. El programa contara con una conversin anlogo-digital para que el voltaje del LM35 sea digitalizado y guardado como una variable , luego de guardar la variable esta se enviara a travs del UM/96 Tx para ser recibida por el nodo local.

El nodo local estar recibir la seal 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 conversin anlogo-digital). Se necesita tener un voltaje de referencia para convertir el dato binario de temperatura a su valor fsico original, para este caso usaremos un divisor de tensin 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.

Componentes:

2 PIC16F877A. 2 Mdems UM/96. Lm35. Pantalla LCD. Cristal de cuarzo 4Mhz y Condensadores de 22pF. Resistencias y condensadores varios. Pulsadores.

Optocopladores.

Rels.

Interfaz FTDI.

Modulo Bluetooth.

Smartphone y Notebook.

Capitulo 2Lenguaje c XE "capitulo 2:lenguaje c"

XE "Capitulo 2:lenguaje c" Transmisin

#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);

}

}

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");

}

}

}

Recepcin #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);

}

}

}

Circuito esquemtico del Subsistema Tx Simulado en Proteus XE "Capitulo 2:circuito esquemtico"

Figura 2Para la medicin de Temperatura con el LM35 y la verificacin de los datos entregados se hace una comparacin con un instrumento patrn en este caso una Termocupla conectada a un multitester disponible en paol, la idea es que el sensor de temperatura de valores cercanos o exactos con un mnimo de +-1 grados de margen de error del instrumento patrn para as obtener datos verdaderos.Circuito esquemtico del Subsistema Rx Simulado en Proteus XE "Capitulo 2:circuito esquemtico"

Figura 3

Circuito esquemtico del Sistema final COMPLETO

Diagrama de bloques del programa en Labview. XE "Capitulo 2:Diagrama de bloques del programa en labview."

Figura 4En esta imagen se puede apreciar de manera explcita la programacin en el software Labview:

La parte 1 consta de la configuracin 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 configuracin que damos anteriormente al microcontrolador para trabajar en sincrona con la recepcin de datos y la posterior adaptacin de un dato con decimales a un dato entero as como el cierre del mismo puerto.La parte 2 consta de la recepcin del dato y sincronizarla con el termmetro grafico, los indicadores de temperatura con operaciones lgicas (de Mayor o Menor) mas la inclusin del recurso de grafico en tiempo real cada 2 segundos.La parte 3 consta de la recepcin de los datos y la transformacin de datos en seal 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 creacin de puertos seriales virtuales (Configure Virtual Serial Port Driver) se logro unir estos programas y obtener una simulacin completa e interesante, todos las fotos agregadas a este informe son de la simulacin del circuito.

Panel frontal de control de temperatura en Labview XE "Capitulo 2: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), mostrndola de manera grafica en Notebook o Computador de escritorio mediante un termmetro grafico ms 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 medicin.Este panel se visualiza desde la pantalla del computador, el cual est conectado al microcontrolador a travs de la interfaz FTDI o conectado a Proteus mediante la creacin 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 podrn ser mostrados de distintas formas, tal como se ve en la imagen (barra de temperatura, grafico de datos, leds indicadores, e indicador sonoro etc).

Monitoreo de la temperatura en Smartphone (PLUS) XE "Capitulo 2:Monitoreo de la temperatura en smartphone"

Figura 6En la figura se muestra la programacin en diagrama de bloques de la aplicacin, diseada desde la siguiente pgina: 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 aplicacin Temptel (adems de haber hecho el programa en app inventor). Una vez listos estos requisitos se abre la aplicacin 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 7Capitulo 3 XE "Capitulo 3"

Pruebas en simulacin. XE "Capitulo 3:Pruebas en simulacin."

Una vez lista la programacin del transmisor y receptor, se simulo el circuito en proteus 8 (programa con el cual podemos verificar si la programacin funciona correctamente). Ya que en el programa no se encuentran los UM96 los circuitos se conectaron directamente por sus pines de comunicacin (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 conversin anlogo-digital), ya listo todo lo anterior se cargan los programas en los microcontroladores y verificamos su funcionamiento.

La simulacin no tuvo problemas y ya corroborado el correcto funcionamiento del programa comenzamos la construccin del circuito en protoboard.

Prueba en protoboard sin UM96 XE "Capitulo 3: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, adems 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 XE "Capitulo 3:Prueba en protoboard con UM96" .

Se mantuvo la conexin 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 programacin, como la sincronizacin de los UM96 con el programa en el microcontrolador Receptor, para solucionar estos errores se realizo un examen exhaustivo de las lneas en el programa. Una vez que se arreglaron los problemas de programacin, 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 continuacin imgenes donde se puede observar las pruebas realizadas de transmisin y recepcin:

Transmisor con UM96

figura 7Receptor con UM96

figura 8Labview

figura 9Conclusin XE "Conclusin" En la realizacin del proyecto se uso todo lo aprendido en el primer semestre de clases, poniendo en prctica materias como lo son: conversin anlogo digital, comunicacin serie con los UM96 y pantalla LCD y otros ms

uno de los errores que apareci en el momento de la implementacin fue que se estaba realizando la conversin anlogo digital en el transmisor y receptor, lo cual generaba que el dato mostrado por la pantalla era errneo, luego de corregir este error, el transmisor enviaba el dato en 8bit y en el receptor se transformo el dato binario a datos centgrados.3)

2)

1)