Sensor de Luz LDR

LDR
[By Taken CC BY-SA from Wikimedia]

Descrición:

Podemos medir a luz ambiental cunha fotorresistencia ou LDR (Light Dependent Resistor), que é unha resistencia cuxo valor depende da cantidade de luz que incide sobre ela: A resistencia diminúe coa intensidade de luz incidente.

Montaxe:

Entre o pin analóxico A0 e a alimentación a 5V conectaremos unha LDR. Entre o pin A0 e a masa conectaremos unha resistencia de 10kΩ.

Conectamos tres LEDs coas súas resistencias de protección aos pins 11, 12 e 13.

Programa:

Procédese da mesma maneira que como fixemos co potenciómetro. Por exemplo, podemos utilizar a información que lemos na consola sobre o valor da LDR en función da luz incidente para acender un LED cando a luz ambiental baixe dun determinado valor.

// Declaración de variables 

int valor=0;    // variable que le o valor da LDR, entre 0 e 1023
int led1=13; 
 
// Configuración

void setup(){
  Serial.begin(9600);       // Inicia a comunicación serie
  pinMode(led1, OUTPUT);   
}
 
// Programa

void loop() {
  
  valor = analogRead(A0);    // Asignamos a variable "valor" o valor lido na entrada analóxica A0
  Serial.println(valor);     //Imprime no monitor serie dito valor
  
  if (valor <= 500)  {        // Cando  a variable "valor" e menor ou igual que 500
    digitalWrite(led1,HIGH);  // acéndese o LED
  }
  else {                      
    digitalWrite(led1,LOW);   // en caso contrario apágase
  }
  
  delay(200);            // Retardo de 100ms para a visualización de datos na consola
  
}

Propostas:

  1. Luz en aumento: Fai que a medida que haxa menos luz se vaian acendendo máis LEDs, e a medida que a luz aumente os LEDs se vaian apagando.
  2. Flash automático: Simula que sacamos unha fotografía cando prememos nun pulsador. Debe acenderse e apagarse rapidamente un LED de alta luminosidade cando un sensor de luz (LDR) detecte que a luz ambiental é demasiado baixa. En caso contrario o flash non se activará.

 


Deixa un comentario