martes, 2 de febrero de 2010

Sensor de Temperatura

Vamos a utilizar un sensor de temperatura. Dependiendo del valor que reciba el sensor encenderemos un LED u otro. Durante los 8 primeros segundos calibramos el sensor para que adquiera valor máximo y mínimo.

El circuito lo implementaremos de la siguiente manera:

+ pin LED1 y 2 a los pines 5 y 6 de la placa (digital)
- pin LED1 y 2 a ground

1º pin sensor temperatura a +5V
2º pin sensor temperatura al pin 0 (analógico)
3º pin sensor temperatura a ground







//Vamos a encender un LED u otro dependiendo de la lectura del sensor de temperatura

int sensorValor=0;
int sensorMax=0;
int sensorMin=0;

int pinLed1=5;
int pinLed2=6;
int sensorTemperatura=0;

void setup()
{
pinMode(pinLed1, OUTPUT);
pinMode(pinLed2, OUTPUT);
pinMode(sensorTemperatura, INPUT);
digitalWrite(13, HIGH);//Durante los 8 primeros segundos encendemos el LED de la placa mientras hace operaciones
while(millis()<8000)//Da valores maximos y minimos a al sensor de luz
{
sensorValor=analogRead(sensorTemperatura);
if(sensorValor>sensorMax)
{
sensorMax=sensorValor;
}
if (sensorValor {
sensorMin=sensorValor;
}
}
digitalWrite(13, LOW);//Apagamos el LED de la placa
}

void loop ()
{
sensorValor=analogRead(sensorTemperatura);//Leemos la señal del sensor de LUZ
sensorValor=map(sensorValor, sensorMin, sensorMax, 0, 255);//Se mapea la señal del sensor de Luz, se le da los valores maximos y minimos y el rango
sensorValor=constrain(sensorValor, 0, 255);//Limitamos el valor al rango que queremos 0-255
if (sensorValor>253)
{
digitalWrite(pinLed1, HIGH);
digitalWrite(pinLed2, LOW);
}
else
{
digitalWrite(pinLed1,LOW);
digitalWrite(pinLed2, HIGH);
}
}

No hay comentarios:

Publicar un comentario