Está en la página 1de 10

UNIVERCIDAD AUTONOMA

DEL ESTADO DE MEXICO

FACULTAD DE INGENIERIA

ELECTRONICA ANALOGICA

EDGAR EFREN JUAREZ ESCAMILLA

IVAN MORENO REYES

DIEGO YAHIR GUTIERREZ CARRILLO

CARLOS SALOMON RUIZ PALMA

26/09/18
PRÁCTICA NO.6 ARDUINO UNO

SENSOR DE TEMPERATURA.

OBJETIVO:

El alumno utilizará un LM35 para medir la temperatura mediante arduino.

INTRODUCCIÓN

El LM35 es un sensor de temperatura con una precisión calibrada de 1ºC. Su rango de medición
abarca desde -55°C hasta 150°C. La salida es lineal y cada grado centígrado equivale a 10mV,
por lo tanto:

150ºC = 1500mV
-55ºC = -550mV

 Está calibrado directamente en grados Celsius.

 La tensión de salida es proporcional a la temperatura.


 Tiene una precisión garantizada de 0.5°C a 25°C.
 Opera entre 4 y 30 voltios de alimentación.
 Baja impedancia de salida.
 Baja corriente de alimentación (60uA).
 El LM35 no requiere de circuitos adicionales para calibrarlo externamente. La baja
impedancia de salida, su salida lineal y su precisa calibración hace posible que este
integrado sea instalado fácilmente en un circuito de control. Debido a su baja corriente
de alimentación se produce un efecto de auto calentamiento muy reducido. Se
encuentra en diferentes tipos de encapsulado, el más común es el TO-92, utilizada por
transistores de baja potencia y bajo costo.

 La siguiente fórmula convierte el valor obtenido del pin análogo al que se encuentra
conectado nuestro LM35 a grados Celsius:

 C = (5.0 * analogRead(PIN_SENSOR) * 100.0) / 1024


TRABAJO PREVIO:

1.-Analice el siguiente programa que sirve para desplegar la temperatura en el MONITOR


SERIAL del programa del ARDUINO misma que se obtiene a partir del LM35:

float pinTemperatura = 0;
float tempValor ;
void setup()
{
Serial.begin(9600);
}
void loop()
{
tempValor = ( 5.0 * analogRead(pinTemperatura) * 100.0) / 1024.0;
Serial.print("Temperatura (Celsius) = ");Serial.println(tempValor);
delay (1000);

Explicaremos el código línea por línea, así que tendremos en cuenta que hay 15 de ellas empezando
desde la palabra float.

Línea 1: Utilizaremos el pin 0 y le pondremos un nombre de lectura entera incluida decimal.


Línea 2: Variable entera+decimal donde guardaremos la temperatura.
Línea 5: Iniciamos el puerto serie para poder monitorizar.
Línea 7: Función para repetir el contenido indefinidamente.
Línea 9: Transformación de la lectura analógica de tensión en temperatura.

5 = Valor analógico de tensión.


Analog read = lectura analógica de tensión.
100.0= Resolución de lectura en microsegundos.
1024.0 = 210, valor binario de 10 dígitos binarios.
Línea 12: Imprimir el valor del puerto serie donde podremos monitorizarlo.
Línea 14: Espera de 1s para cada lectura de temperatura.

2.-Realice un programa tal que encienda un LED rojo para las temperaturas altas y un LED
verde para las temperaturas bajas. En cada caso se debe incluir un mensaje con el nivel de
temperatura (alta o baja) y con la cantidad de grados centígrados que el sensor está obteniendo

MATERIAL

 Arduino

 2 LEDs

 2 Resistencia de 220 Ohms

 LM35

 Cables

PROCEDIMIENTO

1.-Arme el circuito que se muestra en la figura de acuerdo con lo siguiente:

GND del arduino a la terminal 3 del LM35

A0 del arduino a la terminal 2 del LM35

5V del arduino a la terminal 1 del LM35


2.-Corra el programa AnalogReadSerial
3.-Anote los valores mínimo sin aplicar temperatura al sensor y máxima que te da al aplicar
temperatura al LM35.

VALOR MÁXIMO 43
VALOR MÍNIMO 59

4.-Ahora corra el programa que despliega la temperatura del LM35 listado en el inciso 1 del
trabajo previo. (Imprima los valores que muestra la pantalla como máximo y mínimo.

VALOR MÁXIMO 21
VALOR MÍNIMO 26

5.-Ahora corre el programa que encienda un LED rojo (terminal 8) para las temperaturas altas y un
LED para las temperaturas bajas (terminal 7). En cada caso se debe incluir un mensaje con el
nivel de temperatura (alta o baja) y con la cantidad de grados centígrados que el sensor está
obteniendo. Coloque sus fotos de evidencia y su programa con comentarios.
Programa:

float pinTemperatura = 0;

float tempValor ;

int rojo=9;

int amarillo=8;

void setup()

pinMode(rojo, OUTPUT);

pinMode(amarillo, OUTPUT);
Serial.begin(9600);

void loop()

tempValor = ( 5.0 * analogRead(pinTemperatura) * 100.0) / 1024.0;

if(tempValor>24){

digitalWrite(rojo, HIGH);

digitalWrite(amarillo, LOW);

Serial.print("Temperatura Alta = ");

Serial.println(tempValor);

}else {

digitalWrite(rojo, LOW);

digitalWrite(amarillo, HIGH);

Serial.print("Temperatura Baja = ");

Serial.println(tempValor);

delay (1000);

Este programa recibe la temperatura del transistor con la función analogRead(), al Arduino están
conectados dos leds que dependiendo de la temperatura recuperada por el transistor encienden, al
mismo tiempo en el serialMonitor muestra la temperatura y si esta es baja o alta. Si la temperatura es
baja prende el led color amarillo y si la temperatura es alta prende el led rojo.

También podría gustarte