48. Sensor de  temperatura en Arduino

EPISODE · Sep 28, 2015 · 23 MIN

48. Sensor de temperatura en Arduino

from La Tecnología para todos · host Luis del Valle Hernández

Hoy vamos a hablar de cómo podemos leer la temperatura ambiente. Para ello vamos a utilizar un sensor de temperatura en Arduino UNO, más concreto el sensor analógico LM35. Como ya hablamos en el capítulo donde tratábamos la API, necesitamos la función analogRead para capturar el valor que nos proporciona el sensor.Si tienes alguna duda sobre Raspberry Pi o algún otro tema de tecnología puedes contactar con nosotros a través del formulario de contacto, en Twitter y en Facebook. También tenemos a tu disposición una lista de distribución.SorteoComo queremos premiar a todos nuestros seguidores fieles y también que os iniciéis en el maravilloso mundo de Arduino, vamos a sortear un KIT DE INTRODUCCIÓN A ARDUINO para que podáis empezar. El sorteo se realizará con todos aquellos que estén suscritos a la lista de distribución hasta el día 27 de Octubre de 2015 a las 24H (hora peninsular española). Si todavía no estás suscrito, a qué esperas.Antes de meternos en faena, recordemos como funcionan las entradas analógicas en Arduino. Aunque estemos hablando de un valor analógico, Arduino discretiza en 1024 valores (0 a 1023). Esto quiere decir que si tenemos un rango de valores de entre 0 V y 5 V, cuando el sensor nos de un valor de 0 V con analogRead tendremos un valor de 0 y cuando nos de 5 V tendremos 1023. Si nos da un valor de 2,5 V simplemente tenemos que hacer una regla de 3 y calcular que valor nos proporcionará dicha función.LM35 sensor de temperaturaEn este artículo vamos a utilizar el sensor LM35. Este sensor, como cualquier otro sensor, tiene unas características de funcionamiento las cuales se pueden ver en su ficha técnica. Este documento es el punto de partida para utilizar cualquier sensor en Arduino. Nos aportará la información necesaria para trabajar con él y es indispensable consultarlo antes de empezar.Lo primero que debemos tener claro es el conexiado. Si nos vamos a la página 3 veremos que el sensor tiene 3 patillas, hay que fijarse en el gráfico que pone LP Package 3-Pin TO-92. Si miramos de frente el sensor, por la parte plana veremos algo parecido a la siguiente imagen.lm35-sensorDonde Vs es la alimentación, normalmente a 5 V que es lo que nos da la placa de Arduino salvo que especifiquemos lo contrario, GND es la toma de tierra y Vout es la salida que proporciona el sensor.Por lo tanto de aquí podemos sacar como debemos conectar el sensor con Arduino. Antes de hacerlo tenemos que estar seguro que el rango de trabajo de este sensor soporta los 5V que nos va a proporcionar nuestra placa. En caso contrario deberíamos hacer algo para reducir esos 5V. En la página número 1 encontramos un apartado que pone Features (características). De aquí podemos sacar mucha información. Si miramos en el apartado que pone Operates from 4 V to 30 V, nos está diciendo que funciona con voltajes de 4 V a 30 V así que estamos dentro del rango permitido.Ahora vamos a fijarnos en la salida que nos proporciona el LM35. Las dos primeras líneas dicen:Calibrated Directly in Celsius (Centigrade)Linear + 10-mV/ºC Scale FactorLa primera línea nos dice que el sensor está calibrado en grados centígrados con lo cual no hará falta realizar ninguna transformación si queremos saber la temperatura en estas unidades. La segunda línea nos viene a decir que los cambios de temperatura son lineales con un factor de escala de 10mV por ºC (grado centígrado) es decir, para 1 ºC tendremos una tensión de 10 mV. Esto es muy importante ya que hay una regla de proporción entre el voltaje de salida y los grados.Si nos fijamos un poco más abajo en las Features (características) encontramos el rango completo de temperaturas de -55 ºC a 150 ºC. Esto quiere decir que a -55 ºC tendremos -550 mV y a 150 ºC tendremos 1.500 mV. Esto también lo puedes ver en la ficha técnica en la primera página el gráfico que pone Full-range Centigrade Temperature Sensor.Por último hay fijarse también en las Features, donde nos dice 0.5°C Ensured Accuracy (at 25°C) que quiere decir que para garantizar la precisión hay que trabajar en este rango de temperaturas de 0.5ºC a 25ºC.Así que ya has podido ver lo importante que son las fichas técnicas de los sensores y dispositivos. Hay que remitirse siempre a la web del fabricante y obtener dicha ficha para sacar el máximo partido a los sensores.Calcular la temperaturaLlega la hora de los cálculos. Como buen programador debes hacer uso de las matemáticas y la lógica y cuando trabajamos con Arduino, debemos hacer exactamente lo mismo. No estoy hablando de hacer ecuaciones diferenciales ni derivadas, aunque en algún caso esta operación matemática nos pueda salvar, estamos hablando que lo más complicado que haremos por el momento será una simple regla de 3.Si os acordáis de cuando hablamos de la API de Arduino, hay una función que se llama analogRead donde le pasamos como parámetro el número de pin que queremos leer y nos da un valor entre 0 y 1023 osea, 1024 valores. Esto quiere decir que si en el pin tenemos 0V nos dará 0 y si tenemos 5V o 3.3V (depende de a que voltaje esté funcionando nuestro Arduino) nos dará 1023, así de sencillo.Por lo tanto si queremos saber que voltaje tenemos en la entrada analógica solo debemos de multiplicar por 5/1024 (0.0048V de precisión). Esto nos da el voltaje de nuestro sensor, ahora hay que transformar los voltios en grados. Ya hemos averiguado, gracias a la ficha técnica, que 1ºC equivale a 10mV (0.01V) por lo tanto solo debemos de dividir el valor de voltaje obtenido antes entre 0.01 y nos dará la temperatura. Para que os quede más claro os dejo aquí la formula que deberíamos aplicar.Temperatura = (Valor * 5 / 1024) / 0.01 = Valor * 5 * 100 / 1024Y con esta fórmula tendríamos la temperatura que nos está facilitando el sensor LM35.Aumentar la precisiónComo ya hemos visto en la ficha técnica, si queremos garantizar la precisión debemos trabajar en el rango de valores de 0.5ºC y 25ºC. Esto no quiere decir que nos tengamos que ceñir a estas temperaturas pero si que nos da una idea de con que precisión deberíamos trabajar. Para estos dos valores de grados corresponden 5mV y 250mV.¿Cómo podemos aumentar la precisión? Ya hablamos en su día de la función analogReference que nos permite establecer el valor de referencia para el valor 1023 en los pines analógicos. Esta función puede tomar tres posibles valores:DEFAULTToma como referencia el valor interno de la placa 3.3V o 5V.INTERNALToma como referencia un voltaje interno de 1.1V.EXTERNALToma como referencia lo introducido en el pin AREF.Si dejamos la primera opción, DEFAULT, utilizaremos la fórmula que hemos visto antes pudiendo detectar temperaturas de hasta 500ºC. No tiene ningún sentido ya que el rango máximo será 150ºC. Así que podemos aumentar la precisión de nuestro sensor utilizando la configuración INTERNAL. Esto nos permite medir hasta un rango de 110ºC. Al cambiar el valor de la referencia, la fórmula cambia, ahora para obtener la temperatura debemos de utilizar la siguiente:Temperatura = (Valor * 1.1 / 1024) / 0.01 = Valor * 1.1 * 100 / 1024Concluyendo, es muy importante fijarse en la ficha técnica de cualquier dispositivo, nos dará información de la precisión, el rango de valores, amperaje y voltaje y factor de escala. Con toda esta información podemos obtener la temperatura de nuestro sensor con simples operaciones matemáticas.En el capítulo hablamos de los siguientes enlacesAll datasheetBases del sorteo Kit de iniciación de ArduinoRecurso del díaCodebenderEs un entorno de desarrollo online para Arduino. Se ejecuta en la nube y te permite programar para cualquier sensor o dispositivo conectado. Tiene modo depuración y cuenta con casi 500 librerías a tu disposición. Puedes trabajar online desde diferentes máquinas manteniendo las cofiguraciones establecidas. Además del entorno de desarrollo, te permite guardar tus proyectos en la nube y poder compartir para que la gente colabore.Muchas gracias a todos por los comentarios y valoraciones que nos hacéis en iVoox, iTunes y en Spreaker, nos dan mucho ánimo para seguir con este proyecto.

NOW PLAYING

48. Sensor de temperatura en Arduino

0:00 23:42

No transcript for this episode yet

We transcribe on demand. Request one and we'll notify you when it's ready — usually under 10 minutes.

No similar episodes found.

Priorité santé Être en bonne santé est un besoin universel. Caroline Paré reçoit en direct des spécialistes pour faire le point sur l’actualité médicale dans le monde, faire de la prévention auprès du grand public, l’informer sur ses droits, sur les traitements et les moyens d’y accéder. *** Diffusions du lundi au vendredi vers toutes cibles à 09h10 TU (rediffusion à 01h10 TU). Tous les jours, posez vos questions par WhatsApp au + 33 7 61 18 46 41, par téléphone au + 33 1 84 22 75 75 ou par mail à [email protected]. Réalisation : Victor Uhl. Coordination : Ophélie Lahccen, Thalie Mpouho, Louise Caledec. Radio Foot Internationale La voix mondiale du football. Pour aller plus loin autour d’un sport qui passionne la planète entière, au-delà des résultats, enjeux, analyses, l’émission revient aussi sur certains matchs, joueurs, vedettes actuelles et anciennes gloires, sur des événements mémorables, des faits marquants et jamais loin de l’actualité du moment. Émission présentée par Annie Gasnier. Coordination journalistique et reportages: David Fintzel. Avec Pierre Guérin. Technique/Réalisation: Laurent Salerno. Du lundi au vendredi à 16h10 TU et 21h10 TU.  Français avec Pierre Pierre - Français avec Pierre Learn French listening to French podcasts made by French teacher Pierre. You can often have the podcast transcripts in the BLOG http://francaisavecpierre.com . Whenever there is a transcript available, I will put the blog post URL in the podcast episode description, please check it out. You can learn and improve your French listening to the podcasts with lots of interesting topics, French lessons and a lot more. Learn French the fun and easy way!Aprender francés es muy fácil con los podcasts en francés de Pierre. Muchos de ellos vienen con la trasncripción, así que busca la url del post del blog http://francaisavecpierre.com en la descripción del podcast cuando esté disponible. Aprende y mejora tu francés con estas clases de francés de la mano de Pierre, profesor de francés en las Escuelas Oficiales de Idiomas de Madrid.Apprendre le français c’est facile avec Pierre. Ecoute ces podcasts en français et regarde la transcription quand c’est disponible (je m Ritmos & Realidades con bustaj bustaj Ritmos & Realidades presentado por bustaj. Compartiendo mis aprendizajes de la industria musical.
URL copied to clipboard!