Practica 4 Arduino

martes, 19 de junio de 2012

Para esta practica necesitamos 5 leds, 5 resistencias de 10K,1 resistencia de 220 ohmios, un sensor LDR ,un regulador , la placa protoboard y arduino.Conectamos los led y las resistencias en serie y a la vez la resistencias a sus pins correspondiente en arduino,losled iran todos conectado al LDR que a su vez tiene en serie la resistencia de 220 ohmios.La resistencia de 220 la conectamos a una de las salidas del regulador (la otra salida esta directamente conectada a negativo) y el regulador conectado a su pin en arduino.




Este es el codigo.

/*
Tutorial # 0004 Arduino Academy - Sensor LDR

Conectamos una foto-resistencia a la entrada
analógica para controlar cinco salidas
en función de la luz ambiente.

Este proyecto es de dominio público.
*/

//Aquí almacenamos los datos recogidos del LDR:
int valorLDR = 0;  

//Decimos que pines vamos a utilizar para LED
int pinLed1 = 12;
int pinLed2 = 11;
int pinLed3 = 10;
int pinLed4 = 9;
int pinLed5 = 8;

//Y que pin para la LDR
int pinLDR = 0;

void setup()
{
 //Establecemos como salida los pines para LED
 pinMode(pinLed1, OUTPUT);
 pinMode(pinLed2, OUTPUT);
 pinMode(pinLed3, OUTPUT);
 pinMode(pinLed4, OUTPUT);
 pinMode(pinLed5, OUTPUT);

 //Le decimos que vamos a usar una referencia externa
 analogReference(EXTERNAL);

}

void loop()
{
 //Guardamos el valor leido en una variable
 valorLDR = analogRead(pinLDR);

 //Y comenzamos las comparaciones:
 if(valorLDR >= 1023)
 {
   digitalWrite(pinLed1, LOW);
   digitalWrite(pinLed2, LOW);
   digitalWrite(pinLed3, LOW);
   digitalWrite(pinLed4, LOW);
   digitalWrite(pinLed5, LOW);
 }
 else if((valorLDR >= 823) & (valorLDR < 1023))
 {
   digitalWrite(pinLed1, HIGH);
   digitalWrite(pinLed2, LOW);
   digitalWrite(pinLed3, LOW);
   digitalWrite(pinLed4, LOW);
   digitalWrite(pinLed5, LOW);
 }
 else if((valorLDR >= 623) & (valorLDR < 823))
 {
   digitalWrite(pinLed1, HIGH);
   digitalWrite(pinLed2, HIGH);
   digitalWrite(pinLed3, LOW);
   digitalWrite(pinLed4, LOW);
   digitalWrite(pinLed5, LOW);
 }
 else if((valorLDR >= 423) & (valorLDR < 623))
 {
   digitalWrite(pinLed1, HIGH);
   digitalWrite(pinLed2, HIGH);
   digitalWrite(pinLed3, HIGH);
   digitalWrite(pinLed4, LOW);
   digitalWrite(pinLed5, LOW);
 }
 else  if((valorLDR >= 223) & (valorLDR < 423))
 {
   digitalWrite(pinLed1, HIGH);
   digitalWrite(pinLed2, HIGH);
   digitalWrite(pinLed3, HIGH);
   digitalWrite(pinLed4, HIGH);
   digitalWrite(pinLed5, LOW);
 }
 else
 {
   digitalWrite(pinLed1, HIGH);
   digitalWrite(pinLed2, HIGH);
   digitalWrite(pinLed3, HIGH);
   digitalWrite(pinLed4, HIGH);
   digitalWrite(pinLed5, HIGH);
 }

}

0 comentarios:

Publicar un comentario