Professional Documents
Culture Documents
mx/proyectos/sensorTemperatura
Un sensor de temperatura
- componentes - circuito - diagrama - cdigo - variantes - referencias - otros -
Componentes
arduino
un protoboard
un led
- al inicio
Circuito
El circuito de este proyecto consta de dos partes. Por un lado el
sensor de temperatura y por otro, el led que encenderemos cuando la
temperatura pase de un umbral.
El circuito con el sensor LM35 es muy simple. Es un componente con
tres patas. Viendolo de frente, tenemos que alimentarlo con un voltaje
de 5 Volts por la pata izquierda. La pata derecha es la pata que va a
tierra. Y la pata central es la que nos da el voltaje analgico
proporcional a la temperatura, voltaje que despus convertiremos a la
temperatura correspondiente. Para mayor informacin consulta la
hoja de especificaciones de este sensor.
El circuito del led es el mismo circuito que hemos venido utilizando en
otros proyectos.
- al inicio
Diagrama
- al inicio
Cdigo
En el cdigo de este proyecto vamos a leer el valor del sensor con la
funcin analogRead(). Este valor, lo convertimos al voltaje
correspondiente y despues al valor de la temperatura.
Para hacer la conversin usaremos nmeros de punto flotante, para
tener mayor precisin, aunque en este caso podramos usar enteros.
Para hacer la conversin, primero convertimos el valor obtenido del
sensor a milivolts y depues convertimos este valor en milivolts a
grados centigrados. Para hacer esto, ya sabemos que cada grado
centigrado es igual a 10 milivolts.
El resultado lo enviaremos por el serial, con un texto y el valor de la
temperatura en grados centigrados.
Con este mismo valor checaremos si es mayor que la temperatura
umbral y de ser as, encenderemos un led.
/*
void setup() {
// declaramos el pin del Led de salida
pinMode(pinLed, OUTPUT);
//inicializamos la comunicacion serial
Serial.begin(9600);
}
void loop() {
// leemos el valor del sensor
valorSensor = analogRead(pinSensor);
// este valor lo convertimos a milivolts
float milivolts = (valorSensor / 1023.0) * 5000;
// y lo convertimos a grados centigrados
// 1 grado centigrado = 10 milivolts
temperatura = milivolts/10;
- al inicio
Variantes
Podriamos usar un led RGB en lugar de un led normal y definir dos
umbrales, para asi usar los tres colores en tres rangos de
temperatura.
Podrias tambin desplegar la temperatura en grados Fahrenheit.
- al inicio
Referencias:
Arduino Reference: analogRead()
Referencia Arduino: analogRead()
Funcin para leer el estado de un pin analgico.