Termómetro digital con Arduino (La importancia de la temperatura corporal en el espacio)

Hazlo tú mismo

Gustavo Hernández Heras

Fecha: 2018-01-17


Las condiciones atmosféricas en la superficie de la Tierra, son en extremo diferentes a las que existen en el espacio, si comparamos ambos entornos, nos damos cuenta que en el espacio no existen posibilidades para mantener la vida, esto se debe a que no posee una biosfera (capa de la tierra que provee lo necesario para sustentar la vida). La falta de presión y gravedad y una temperatura inadecuada convierten el espacio en un lugar inhabitable.

 

 

Mantener una temperatura corporal adecuada es de suma importancia para el correcto funcionamiento del cuerpo humano, desde las capacidades motrices hasta las cognitivas. El cuerpo humano está adaptado para la vida en el planeta tierra y posee mecanismos de autorregulación que mantienen una temperatura interna constante, a pesar de los cambios en el clima o actividad física. En el espacio esto no sucede y se ha demostrado científicamente por Hanns-Christian Gunga, del Centro de Medicina Espacial de Berlín en Alemania, que la temperatura normal de un astronauta es de 1°C mayor, es decir 38°C. Esto implica un funcionamiento del cuerpo humano bajo estrés, además que se requiere un aumento de hasta 20% en consumo energético a través de la comida para el astronauta. Esta temperatura de 38°C, suele aumentar con diferentes actividades físicas que se realizan en el espacio, por este motivo es de vital  importancia poder monitorizar el valor de la temperatura corporal en el astronauta bajo diferentes actividades rutinarias y así poder ayudar a controlar los aumentos o descensos para beneficio de su salud.

 

El cuerpo humano posee distintos mecanismos de autorregulación para la temperatura corporal, uno de ellos es la sudoración. Por ejemplo, cuando estamos en un día muy caluroso, o después de hacer una actividad física, nuestra temperatura interna es elevada, entonces las glándulas sudoríparas producen sudor que es expulsado por los poros dilatados de nuestra piel. Por otra parte, cuando hace demasiado frío y nuestra temperatura desciende, otro mecanismo de regulación trabaja para ayudarnos, la termogénesis tiritante. Que consiste en movimientos involuntarios de los músculos del cuerpo para producir temblores que estimulan la producción de calor vinculada a la contracción muscular.

¿Sabías qué?

La temperatura corporal es una medida que indica la capacidad del cuerpo humano para eliminar y retener el calor. La temperatura normal es de 37 °C, cualquier variación de +-1°C se considera una anormalidad. Algunos de los síntomas de la temperatura elevada son sensación de vértigo, nauseas, dolor  de cabeza, alucinaciones, convulsiones y en casos extremos por encima de 44°C puede ocasionar la muerte. Por otra parte una temperatura corporal baja ocasiona debilidad, temblores, entumecimiento de las extremidades y en caso de que su valor esté por debajo de los 26°C también puede ocasionar la muerte.

 

 

 

 

Practica 2: Termometro digital con arduino utilizando un sensor de temperatura LM35

 

Objetivos

  • Entender el funcionamiento del sensor de temperatura LM35.
  • Ser capaz de realizar mediciones con un sensor de temperatura LM35.
  • Interpretar y desplegar la información del sensor en la terminal de Arduino.

 

Introducción

 

Es muy frecuente encontrar sensores en las etapas electrónicas que conforman los sistemas robóticos, químicos, mecánicos y bio-electrónicos ( hablaremos de esto con más detalle en nuestra próxima entrega), estos nos permiten saber el valor de diferentes magnitudes, propiedades y estados como la velocidad, aceleración, inclinación, acidez, concentración, humedad, presión y por supuesto temperatura.

 

En esta segunda práctica te enseñaremos, cómo medir la temperatura con un sensor electrónico a través de tu tarjeta Arduino (sí, así es, no sólo los clásicos termómetros de mercurio pueden hacerlo). Es importante que domines los conceptos que se presentaron en el artículo anterior ¿Qué es la robótica? Introducción a la robótica y microcontroladores, (en donde abordamos una introducción sobre qué es Arduino y cómo cargar nuestros programas). Sin más preámbulo te presentamos la lista de los materiales necesarios para el desarrollo de esta práctica.

 

 

Cables Dupont

 

Son cables pequeños que utilizamos para realizar conexiones entre los dispositivos electrónicos. En cada extremo tienen un receptáculo de plástico, ya sea con una punta de metal conductor (terminal macho) o con un orificio en contacto con un metal conductor (terminal hembra), esto les permite anclarse con facilidad en diferentes configuraciones y tambien con las patillas de los componentes. En el mercado podemos encontrar diferentes tipos entre los extremos del cable, macho a macho, macho a hembra y hembra a hembra.

 

Protoboard

 

Tablilla para prototipos, conocida en el mundo de la electrónica como Protoboard. Es un tablero de plástico con orificios conectados eléctricamente por un metal conductor (comúnmente se utiliza cobre) el cual está en la parte interna inferior de la tablilla. Podemos dividir la tablilla en dos secciones, zona de alimentación y zona de conexión de dispositivos.

Zona de alimentación

 

Está subdividida en 2 líneas horizontales, aquí es donde conectas alguna batería, pila, o cualquier dispositivo que proporcione energía eléctrica a tu circuito. En la línea azul se conecta la tierra o terminal negativa. Y en la línea roja se conecta el voltaje o terminal positiva. Si observas bien te darás cuenta que la protoboard tiene dos zonas de alimentación, una en la parte superior y otra en la parte inferior. Estas secciones no están conectadas eléctricamente, y eso es una ventaja pues nos permiten trabajar a diferentes voltajes, por ejemplo podemos tener una pila de 9V en la línea superior, y otra de 3V en la parte inferior.

 

Zona de conexión de dispositivos.

 

De la misma manera se encuentra dividida en dos secciones, superior e inferior, están separadas por un canal a lo largo de la tablilla. Esto permite posicionar de diferente manera los componentes, y es especialmente útil para los circuitos integrados, de esto te hablaremos con más detalle en otra ocasión A diferencia de la zona de alimentación la zona de conexión de dispositivos está conectada eléctricamente de manera vertical, a lo largo de una columna de orificios, y se interrumpe donde atraviesa el canal a lo largo de la tablilla. Esto permite aislar eléctricamente las secciones superior e inferior

 

Sensor de temperatura LM35

 

En el mercado existen infinidad de sensores para medir la temperatura cada uno ofrece diferentes características que lo hacen más adecuado de acuerdo a la aplicación que se le desea dar por ejemplo el LM35 es un sensor de temperatura electrónico con un rango de medición desde -55°C a 150°C el TMP36 tiene un rango de -40°C a 120°C y el DHT11 tiene  un rango de medición de 0°C a 60°C, este ultimo es digital e incorpora la medición de la humedad relativa. Las características más importantes en todo sensor que debemos tener en cuenta a la hora de elegir alguno son las siguientes:

 

  • Rango de medición: Es el intervalo que puede medir el sensor, por ejemplo el DHT11 solo puede medir las temperaturas comprendidas entre 0° y 60° fuera de este rango se presentan anormalidades.
  • Precisión: Es la facultad del sensor para medir diferentes intervalos de una magnitud. Por ejemplo el LM35 tiene una precisión (Accuracy) de 0.25°C, es decir, es capaz de medir intervalos de un cuarto de grado centigrado.
  • Velocidad de respuesta: Es la velocidad con la que el sensor puede medir las variaciones en la magnitud

 

Para este caso el LM35 cubre por completo nuestra necesidad de medir una aproximación de la temperatura del cuerpo humano, además, es un dispositivo muy barato que podrás conseguir en no más de $40.00 pesos en cualquier casa de electrónica en México. Físicamente el LM35 está compuesto por una pequeña pieza negra que es el cuerpo y se le conoce como empaquetado (package en inglés), dentro de élla hay numerosos componentes electrónicos tan pequeños que hace falta un microscopio especial (microscopio electrónico de barrido) para verlos con detalle, estos componentes están conectados a unas terminales metálicas llamadas pins (en inglés), y es a través de estos pins que podemos controlar nuestro sensor. En la mayoría de los componentes electrónicos los pins tienen un nombre específico relacionado a las señales que salen o entran. En inglés los términos correctos son Output (salida) e Input (entrada). En la siguiente imágen puedes ver que nuestro sensor tiene 3 pins, están numerados y tienen un nombre específico.

 

  • Pin 1: Es el pin VCC o de alimentación, en él conectamos la terminal positiva de nuestra batería, también nos indica el nivel de voltaje soportado, para este caso es de  4V a 20V.
  • Pin 2: Es el pin de salida, en el saldrá un valor de voltaje proporcional a la temperatura que se está midiendo.
  • Pin 3: Es el pin GND o tierra, deberá conectarse a la terminal negativa de nuestra bateria.

 

Conociendo un poco más a nuestro amigo Arduino

 

Ahora que sabes que son los pins, y para qué sirven, te presentaremos los pines en un Arduino

 

 

Los pins en nuestra tarjeta de desarrollo están agrupados de la siguiente forma:

 

  • Analógicos (Analog): Se utilizan para la conversión analógico a digital, por ejemplo nos permiten saber el valor de alguna señal procedente de algun sensor.
  • Digitales(Digital): Al ser digitales solamente pueden cambiar entre dos estados, 1 y 0, o prendido y apagado, se utilizan para controlar diferentes dispositivos, prender leds, activar transistores, etc. (hablaremos de esto con más detalle en nuestras próximas entregas)
  • Alimentación(Power): Estos pins proveen de alimentación (voltaje) para energizar nuestros circuitos electricos. Arduino es capaz de proveer 5V y 3.3 V además de la señal de tierra.
  • Comunicación Serie (Serial): Nos permiten comunicarnos con otros dispositivos para enviar y recibir datos, por ejemplo: enviar datos a un módulo Bluetooth y comunicarnos con un Smartphone,
  • SPI y I2C: Al igual que Serial, nos sirve para comunicarnos con otros componentes.
  • PWM: Estos pins nos permiten generar una señal periódica con una frecuencia determinada. Como ejemplo de aplicación podemos mencionar el control de la velocidad en motores.
  • Interrupciones (Interrupt): Se utilizan para indicarle a nuestra placa cuando sucede un evento externo, como cuando pulsamos un botón.

 

No te preocupes si se te dificulta aprender estos términos, como consejo podemos decirte que el conocimiento no se crea de la noche a la mañana, no hay formulas o atajos, lo único que necesitas es motivación, perseverancia y mucha mucha practica.


 

Diagrama de conexión

 

A continuación te presentamos el diagrama de conexión que deberás realizar en tu protoboard. La numeración de los pines del sensor es de izquierda a derecha observando de frente y con la cara plana frente a nosotros.


Utilizaremos uno de los pins Analogicos de nuestra placa Arduino, el denominado A0, en él conectaremos el pin 2 del sensor LM35, de esta forma la señal viajará a través del cable e ingresará al Arduino para que podamos leerla mediante el conversor analógico a digital que incorpora. Ahora debemos alimentar nuestro sensor, para ello utilizaremos el voltaje que provee Arduino a través de un par de pines, 5V y GND. Como ya te habrás dado cuenta en electronica llamamos terminal positiva a la que contiene el voltaje (5V, 3.3V, etc), y terminal negativa a la tierra, podemos identificarlas mediante los colores rojo y azul respectivamente.

 

Cargando el programa

 

Después de realizar las conexiones entre el sensor y el Arduino, deberás subir el siguiente programa a tu tarjeta de desarrollo y abrir la terminal para que puedas visualizar los datos.

 

Si no recuerdas como, te invitamos a leer nuestro artículo ¿Qué es la robótica? Introducción a la robótica y microcontroladores  en donde te enseñamos cómo hacerlo. 

 

También en GitHub

 

Podrás encontrar este código con el nombre practica2/lm35 en nuestro repositorio público en https://github.com/GustavoAEM/robotica-no-ingenieros

 

//Led de indicador ON/OF para saber que nuestro Arduino está prendido
#define status_led 13

//Se define el periodo para mostrar la temperatura
#define periodo 3

//Libreria para usar las interrupciones 
#include 


float sensor = 0;
float temperatura;
int contador = 0;
float promedio = 0;
float sumador = 0;

//Interrupcion salta cada segundo
void ISR_measureTemp(){
  //Esta interrupcion salta cada segundo, y se llama a la funcion medicion
  medicion();
  }

void setup() {
  // put your setup code here, to run once:
  
  //Se define el led indicador como salida y se activa
  pinMode(status_led, OUTPUT);
  digitalWrite(status_led, HIGH);
  
  //Se inicializa el puerto de comunicacion serie
  Serial.begin(9600);

  //Indicamos el uso de referencia interna de 1.1 V
  analogReference(INTERNAL);

  //Se define cada cuantos us salta la interrupcion
  Timer1.initialize(1000000);

  //Se define la interrupcion
  Timer1.attachInterrupt(ISR_measureTemp);

}


void loop() {
  // put your main code here, to run repeatedly:
  }

void medicion(){
  if(contador <= periodo){
    temperatura = (analogRead(A0)*1.1/1023)/0.010;
    sumador = temperatura + sumador;
    promedio = sumador/periodo; 
    contador += 1;
    
    
  }
   if(contador >= periodo){     
      Serial.print("La temperatura promedio es: "); 
      Serial.print(promedio,1);
      Serial.println(" °C");
      contador = sumador = promedio = 0;   
      
    }
  
    
  
}

 

Experimenta, descubre, diviertete.

 

Ahora que has cargado tu arduino con el código, abre la terminal y observa como tu sensor está midiendo la temperatura. ¡No te limites y juega un poco!, puedes acercar un pedazo de hielo envuelto en una tela para tratar de no mojar el circuito. Tambien puedes acercar calor con un encendedor.

 

En nuestra próxima entrega hablaremos de la visualización de datos, y cómo controlar un display LCD. Esto te permitirá visualizar la temperatura sin necesidad de usar la terminal en tu computadora. ¡NO TE LO PIERDAS!

 

Conclusiones

 

Los sensores nos permiten saber diferentes magnitudes, propiedades y estados en un sistema, por ejemplo humedad, temperatura, velocidad posición, presión, etc. Para poder realizar estas mediciones necesitamos de un sistema  que nos permita controlar e interpretar las señales. El LM35 es un sensor de temperatura barato y facil de conseguir con un rango de medición de  -55 °C a 150 °C. La tarjeta de desarrollo Arduino nos sirve como interfaz de control para diferentes tipos de sensores. Para poder controlar dispositivos con un Arduino, es necesario armar un circuito electrónico, el cual está compuesto por componentes electrónicos, cables, protoboard, y diferentes tipos de señales. Las señales viajan a través de conductores como los cables dupont, tambien entran y salen de los pins de los componentes electrónicos. Los pins Analógicos en un Arduino, nos permiten convertir una señal analógica en una señal digital. Arduino tiene distintos tipos de pines que tienen funciones específicas por ejemplo: de comunicación, digitales, PWM, etc.

 



Referencias:

http://www.biodiversidad.gob.mx/planeta/quees.html https://www.cigna.com/healthwellness/hw-en-espanol/pruebas-medicas/temperatura-corporal-hw198785 https://www.acsh.org/news/2017/12/03/astronauts-core-body-temperature-increases-extended-space-missions-12223 http://www.esa.int/esl/ESA_in_your_country/Spain/Fiebre_espacial/(print)



Etiquetas: temperatura,sensores,Arduino,hazlo tu mismo,LM35,protoboard,dupont

Revista Hacia El Espacio de divulgación de la ciencia y tecnología espacial de la Agencia Espacial Mexicana.