SENSOR REMOTO DE TEMPERATURA GRUPO: LIGHTNING PROYECTO JR JURADO INGENIERIA MECATRONICA G12NL19 GUSTAVO PRADO INGENIERIA ELECTRONICA G12 NL 28 JOSE NICOLAS HERRERA TORRES INGENIERIA MECANICA G12NL28 UNIVERSIDAD NACIONAL DE COLOMBIA FACULTAD DE INGENIERIA 2011
RESUMEN El clima controla nuestro mundo, la forma como vestimos, como se construyen nuestras viviendas y nuestra propia personalidad es modificada por este, por eso es tan importante tener una adecuada comprensión de este, en una metrópolis tan grande como Bogotá la temperatura varía dependiendo de dónde se encentre uno, el objetivo de este proyecto es poder conocer como varia la temperatura dependiendo de la localización geográfica en la ciudad, para esto se necesita localizar un sensor de temperatura en cada estación (Casa de un integrante) este sensor debe trasmitir la información de la temperatura a un computador personal donde será procesada y enviada a un servidor en la Universidad nacional. Este proyecto es un ejercicio bastante enriquecedor ya que se adquiere conocimiento en las áreas de electrónica e informática, esto es muy importante ya que aunque no estén directamente relacionadas con nuestras carreras en el mundo real todas la operaciones sobre todo en la ingeniería son interdisciplinares y dependen en gran medida de la obtención de datos por medio de sistemas electrónicos y el procesamiento de los mismos con la ayuda de la informática. Gracias a este proyecto podremos adquirir conocimientos que serán valiosos para nuestro proceso de formación como profesionales integrales. Detalles de la operación: INTRODUCCIÓN Sensor de temperatura: Para medir la temperatura ambiente se utilizó el circuito integrado LM35, que es muy popular para estas aplicaciones y además es económico ($3000 c/u) esté integrado se alimenta de 4 a 20 voltios y proporciona una salida lineal de 10mv por grado, así que si la salida del dispositivo es de 200mv la temperatura será de 20 lo que es muy conveniente. Adquisición de datos: En esta etapa se necesita poder interpretar la respuesta análoga del sensor, convertirla a un dato de temperatura y trasmitirlo a un computador personal, para esto se utilizó una placa de desarrollo llamada Arduino: una placa micro controladora de hardware libre que permite mediante un código amigable leer el sensor y trasmitir los datos al computador. Esta se conectó al sensor y con ciertas líneas de código permitió la lectura de este. Procesamiento de datos: Con la ayuda de un Juansaab se creó un código en el entorno de programación Python que permite leer los datos del Arduino, promediarlos y posteriormente enviarlos a un servidor por medio de un usuario y contraseña.
Placa Sigduino Como alternativa a la placa Arduino que es de software y hardware libre se utilizó la placa Sigduino que utiliza el mismo software y un hardware similar, la principal diferencia es que la placa Sigduino es que de fabricación 100% COLOMBIANA, esta placa es fabricada por la empresa Sigma Electrónica, en cuanto al hardware tiene un micro controlador ATmega168P que tiene un mejor desempeño en potencia que el original del Arduino, también cuenta con un puerto MiniUSB que facilita la conexión ya que esta cable es más popular, tiene un costo menor y es más pequeño. Montaje del circuito El circuito por si solo es bastante simple, solo consta de una resistencia de 100k y un sensor de temperatura LM35, este integrado tiene tres pines: el primero es para la entrada de voltaje, el segundo es para la salida de voltaje y el tercero es para la tierra, el primero se conecta a la salida de 5v del Arduino, el segundo a la entrada análoga seleccionada y el tercero a la tierra, estando el segundo y el primero conectados por la resistencia de 100k.
Foto del Montaje
Sensor Externo Ubicación Las coordenadas del sensor son: 4.635149,-74.097877
Código Se necesitan dos códigos para la trasmisión de datos, el primero es el que va en el Arduino, este se encarga de leer la señal análoga del sensor de temperatura, transformarla a un número que será la temperatura que es enviada por el puerto serial al computador. El otro código está en el computador y está programado en Phyton se encarga de tomar la temperatura cada segundo, calcula el promedio cada minuto y lo envía a un servidor, el servidor fue credo por los integrantes del grupo Pyduino en el servidor se reciben los datos de todas las estacionas y se almacenan, hay dos formas de consultar el servidor, la primera es la más sencilla pero poco precisa es una gráfica que se encuentra un página del servidor en esta grafica están todos los datos en tiempo real, el problema es que si alguna de las estaciones emite una lectura errónea daña toda la gráfica, la forma más precisa de consultar el servidor es mediante una pequeña aplicación en donde se seleccionan intervalos de tiempo y el grupo que se quiere consultar, la base de datos genera una archivo en Excel donde se encuentran todos los datos obtenidos en ese intervalo de tiempo.
08:30 p.m. 09:25 p.m. 10:20 p.m. 11:15 p.m. 12:10 a.m. 01:05 a.m. 02:00 a.m. 02:55 a.m. 03:50 a.m. 04:45 a.m. 05:40 a.m. 06:35 a.m. 07:30 a.m. 08:25 a.m. 09:20 a.m. 10:15 a.m. 11:10 a.m. 12:05 p.m. 01:00 p.m. 01:55 p.m. 02:50 p.m. 03:45 p.m. 04:40 p.m. 05:35 p.m. Análisis de resultados La primera toma de datos se realizó durante 24 horas y no se subió al servidor, los resultados se muestran a continuación: 30.000 Temperatura 25.000 20.000 15.000 10.000 Temperatura 5.000 0.000 En un comienzo nos pareció que la oscilación en la temperatura era normal ya que el sensor se encontraba en el exterior y estaba expuesto a cambio de luz y viento que podía afectar la temperatura en pequeños periodos de tiempo.
06:01 p.m. 06:11 p.m. 06:20 p.m. 06:29 p.m. 06:38 p.m. 06:47 p.m. 06:57 p.m. 07:22 p.m. 07:32 p.m. 07:41 p.m. 07:50 p.m. 07:59 p.m. 08:08 p.m. 08:18 p.m. 08:27 p.m. 08:36 p.m. 08:45 p.m. 08:54 p.m. 09:04 p.m. 09:13 p.m. 09:22 p.m. 09:54 p.m. 10:04 p.m. 10:14 p.m. 10:24 p.m. En la segunda grafica se ve la gráfica de los datos cuando fueron subidos al servidor los datos de Lightning se pueden ver en color gris, se puede ver como los datos de los demás grupos se ven bastante parejos y los de Lightning bastante accidentados, esto nos advirtió de una posible falla en el sensor. Se descubrió que ya que el cable que llevaba el sensor fuera del cuarto era muy largo y ya que la respuesta se da en no más de 300Mv es muy posible que la lectura se viera afectada por la resistencia interna del cable que aunque es muy pequeña, en aplicaciones de precisión como estas hace una gran diferencia. Para solucionar este problema se tomaron dos medidas: 1. Cambio la ubicación de la placa para así poder reducir la longitud del cable, ya que la resistencia interna del cable es directamente proporcional a su longitud al reducir la longitud era la mejor solución para reducir el voltaje que se perdía con la resistencia interna. 2. Se añadió un código al Arduino en donde los datos no se tomaban cada segundo como el original sino que se toman cada 10ms durante un segundo y se calcula el promedio de estos datos. Temperatura 20 18 16 14 12 10 8 6 4 2 0 Temperatura Esta grafica se obtuvo después de las modificaciones realizadas, se puede ver que los datos son constantes y que no varían de una manera exagerada como lo hacían antes de las modificaciones realizadas.
Retos: En esta primera etapa del proyecto los principales problemas identificados fueron: La calibración de los sensores: ya que estos sensores son muy económicos pueden existir diferencias entre distintos fabricantes y entre distintos empaquetamientos del sensor, para esto es necesaria una calibración profesional en un laboratorio de metrología para lograr una uniformidad. La ubicación de los sensores: Debe existir un acuerdo de cómo y dónde colocar los sensores ya que en esta primera etapa algunos estaban ubicados dentro de las viviendas y otros en el exterior, también hay que tener en cuenta si los sensores pueden ser afectados por la luz o la lluvia, para esto sería conveniente realizar una instalación de la estación de una forma estandarizada. Datos integrantes José Nicolás Herrera Torres (Base estación) Cuarto semestre Ingeniería Mecánica 234867 jnherrerat@unal.edu.co 3016630332
Gustavo Hernán Prado Cuarto semestre Ingeniería electrónica 261822 ghprados@unal.edu.co Jr Jurado Realpe Cuarto semestre Ingeniería Mecatronica 285732 jmjurador@unal.edu.co