martes, 23 de junio de 2015

Ejercicio 07: Sensor de luz

En el tema de electrónica básica y robótica, hemos diseñado un dispositivo que es capaz de encender y apagar luces en función de la cantidad de luz de la habitación.


En este proyecto, vamos a utilizar un LDR para simular una hipotética compensación lumínica de 3 niveles, es decir, a través de una resistencia que varia su valor dependiendo de la luz recibida, aprovecharemos dicha variación para hacer un programa que nos encienda o apague una serie de LED dependiendo de si hay más luz o menos luz.

Además le hemos implementado un potenciómetro para ajustar el nivel crítico mínimo de luz que queremos soportar, a partir del cual se activará nuestro circuito y empezará a aumentar la luz del lugar progresivamente.

Para el montaje electrónico del circuito necesitamos los siguientes componentes:
Seguimos el siguiente esquema de conexionado:



La placa  de hardware libre "Arduino Uno" la programaremos con el siguiente código:

int valorLDR = 0; 


int pinLed1 = 12;
int pinLed2 = 11;
int pinLed3 = 10;

int pinLDR = 0;

void setup()
{

  pinMode(pinLed1, OUTPUT);
  pinMode(pinLed2, OUTPUT);
  pinMode(pinLed3, OUTPUT);

  analogReference(EXTERNAL);

}

void loop()
{
  valorLDR = analogRead(pinLDR);

  if(valorLDR >= 1023)
  {
    digitalWrite(pinLed1, LOW);
    digitalWrite(pinLed2, LOW);
    digitalWrite(pinLed3, LOW);
  }
  else if(valorLDR >= 823)
  {
    digitalWrite(pinLed1, HIGH);
    digitalWrite(pinLed2, LOW);
    digitalWrite(pinLed3, LOW);
  
  }
  else if(valorLDR >= 623)
  {
    digitalWrite(pinLed1, HIGH);
    digitalWrite(pinLed2, HIGH);
    digitalWrite(pinLed3, LOW);

  }
  else
  {
    digitalWrite(pinLed1, HIGH);
    digitalWrite(pinLed2, HIGH);
    digitalWrite(pinLed3, HIGH);

  }

}

No hay comentarios:

Publicar un comentario