X

Al usar esta página web, aceptas nuestro uso de cookies. Usamos cookies para ofrecerte una mejor experiencia y para ayudar a que tu página funcione de manera efectiva.

A5A4A3A2A1A0VINGNDGND5V3V3RESETIOREFRX0 0TX0 12- 34- 5- 678- 9- 10- 111213GNDAREF " LM35 D0/RXD1/TXD2D3 PWMD4D5 PWMD6 PWMD7D8D9 PWMD10 PWM/SSD11 PWM/MOSID12/MISOD13/SCKRESETRESET2AREFiorefA0A1A2A3A4/SDAA5/SCLN/CGND3V35VVINArduino Uno(Rev3)
MecatrónicaLATAM

ARDUINO SENSOR DE TEMPERATURA LM35

Es importante conocer los conceptos básicos del LM35 para su correcta manipulación y verificar la hoja de datos, ya que las conexiones pueden variar, por ejemplo de un LM35 y el LM35DT.

El contenido que se tiene disponible es especialmente enfocado al control de temperatura con un LM35 mediante la tarjeta Arduino.


LECTURA DEL SENSOR LM35 CON ARDUINO

Se plantea realizar una práctica simple para entender el comportamiento del sensor lm35, así como la explicación del código en Arduino.

MATERIAL
  • 1x Arduino.
  • 1x LM35.
  • 1x Protoboard.
  • 1x LED.
  • 1x Resistor(Para el LED).

Esquema de montaje

El montaje del circuito con nuestra tarjeta Arduino es el siguiente:

Circuito esquemático

LM35 R LED Vs GND Vout

Código

Primero definimos los pines que usaremos y las variables para almacenar los valores, se definen dos variables, una donde almacenaremos los valores del ADC y otra para almacenar la temperatura.

Como bien se mencionó, se recomienda leer la hoja de datos del sensor, ya que aquí viene una información muy importante la cual nos dice que nos dará 10mV por cada grado centígrado, esto es fundamental para el funcionamiento, veamos un ejemplo:


Pensemos que tenemos la temperatura de 20.5 grados centígrados, entonces esto nos dice que hay 205mV como resultado de 10mV * 20.5 = 205mV , que corresponde a 0.205V y ahora aplicaremos la fórmula para convertir de analógico - digital:

Vrbits =
V(2n - 1) /
Vref
=
0.205 (1024 - 1) /
5.0
= 41.943

Así obtenemos el valor analógico que es la conversión de 10 bits equivalente as 41.943, ahora aplicando la siguiente fórmula pero multiplicando por 100 para convertir el resultado a grados, entonces nos queda:

T =
(41.943)(5.0)(100) /
(1024 - 1)
= 20.5°

Recordemos que 5.0 es el valor del voltaje de referencia o sea 5 voltios, 41.943 el valor analógico que entregará el ADC y bueno lo demás ya se ha explicado con anterioridad.

Así es como obtenemos la temperatura usando el sensor LM35, solo aplicamos estos cálculos en la programación, usamos analogRead para leer el valor que envía el sensor al Arduino y lo almacenamos en la variable ValSen, después aplicando la fórmula anterior obtendremos la temperatura y esta la almacenamos en la variable Temperatura, una vez hecho eso creamos una condicional que si la temperatura llega a ser más de 35 grados se prenderá el led o lo que ustedes quieran accionar, en caso contrario el led permanece apagado, después imprimimos la temperatura por medio del Serial y la visualizamos en nuestro monitor serial.

  • #define LM35 A0
  • #define LED 3
  • float Temperatura;
  • float ValSen;
  • void setup()
  • {
    • Serial.begin(9600);
    • pinMode(LM35,INPUT);
    • pinMode(LED,OUTPUT);
    }
  • void loop() //Definimos nuestra secuencia.
  • {
    • ValSen = analogRead(LM35);
    • Temperatura = (ValSen * 5.0 * 100.0)/1023.0;
    • if(Temperatura > 35)
      {
      • digitalWrite(LED,HIGH);
      }
    • else
      {
      • digitalWrite(LED,LOW);
      }
    • Serial.println(Temperatura);
    • delay(50)
    }