LDR photorésistance  (Photoresistor)

Photoresitances

  • Les photorésistances sont des composants photosensibles dont la valeur ohmique varie en fonction de l'intensité de lumière qu'ils reçoivent.
  • Pour allumer les ampoules d’un lampadaire quand la nuit tombe, on utilise une photorésistance reliée à un circuit commandant un relais.
  • Environ 2.5€  en France ici,  le lot de 10 en chine 1.53€ ici, 1.51€ les 20 pièces  ici

Un exemple d'utilisation : http://www.wikidebrouillard.org/index.php/Bande_d%27illumin%C3%A9s

 

 
/*
 
 Code Arduino qui permet de réaliser un luxmètre. Trois LED s'allument alternativement en fonction de l'intensité lumineuse ambiante.
 

*/


int capteur1 = 0; // variable identifiant un port ana. 0 de la carte
int LED1 = 13; // variable identifiant le port num. 13 de la carte
int LED2 = 12;// variable identifiant le port num. 13 de la carte
int LED3 = 11;// variable identifiant le port num. 13 de la carte
int LED4 = 10;// variable identifiant le port num. 13 de la carte

int lum1 = 0; // variable identifiant la valeur de la luminosité du capteur 1


void setup()
{
  pinMode(LED1, OUTPUT); //  initialise la broche 13 comme une sortie
  pinMode(LED2, OUTPUT); //  initialise la broche 12 comme une sortie
  pinMode(LED3, OUTPUT); //  initialise la broche 11 comme une sortie
  pinMode(LED4, OUTPUT); //  initialise la broche 11 comme une sortie


}


void loop() // debut de la boucle
{
  lum1 = analogRead( capteur1); // lire la donnée de la cellule dans lum1

  if (lum1 < 25 ) // si la luminosité est faible,
 
  {
    int n =50;
    while ( n > 0.00) {
      
       
    digitalWrite(LED1, LOW);  // allumer la LED 1
    digitalWrite(LED2, HIGH);  // eteindre la LED2
    digitalWrite(LED3, HIGH);  // eteindre la LED3
    digitalWrite(LED4, HIGH);  // eteindre la LED3
    
    delay (n);
    
     digitalWrite(LED1, HIGH);  // allumer la LED 1
    digitalWrite(LED2, HIGH);  // eteindre la LED2
    digitalWrite(LED3, HIGH);  // eteindre la LED3
    digitalWrite(LED4, HIGH);  // eteindre la LED3
    
    delay (n);
    
    digitalWrite(LED1, HIGH);  // allumer la LED 1
    digitalWrite(LED2, HIGH);  // eteindre la LED2
    digitalWrite(LED3, HIGH);  // eteindre la LED3
    digitalWrite(LED4, LOW);  // eteindre la LED3
    
    delay (n);
    
     digitalWrite(LED1, HIGH);  // allumer la LED 1
    digitalWrite(LED2, HIGH);  // eteindre la LED2
    digitalWrite(LED3, LOW);  // eteindre la LED3
    digitalWrite(LED4, LOW);  // eteindre la LED3
    
    delay (n);
    
    
    
     digitalWrite(LED1, HIGH);  // allumer la LED 1
    digitalWrite(LED2, LOW);  // eteindre la LED2
    digitalWrite(LED3, LOW);  // eteindre la LED3
    digitalWrite(LED4, LOW);  // eteindre la LED3
    
    delay (n);
    
    
    digitalWrite(LED1, HIGH);  // allumer la LED 1
    digitalWrite(LED2, HIGH);  // eteindre la LED2
    digitalWrite(LED3, LOW);  // eteindre la LED3
    digitalWrite(LED4, LOW);  // eteindre la LED3
    
    delay (n);
    
    
     digitalWrite(LED1, HIGH);  // allumer la LED 1
    digitalWrite(LED2, HIGH);  // eteindre la LED2
    digitalWrite(LED3, HIGH);  // eteindre la LED3
    digitalWrite(LED4, LOW);  // eteindre la LED3
    
    delay (n);
    
    
    
     digitalWrite(LED1, HIGH);  // allumer la LED 1
    digitalWrite(LED2, HIGH);  // eteindre la LED2
    digitalWrite(LED3, HIGH);  // eteindre la LED3
    digitalWrite(LED4, HIGH);  // eteindre la LED3
    
    delay (n);
    
    
    
     digitalWrite(LED1, LOW);  // allumer la LED 1
    digitalWrite(LED2, HIGH);  // eteindre la LED2
    digitalWrite(LED3, HIGH);  // eteindre la LED3
    digitalWrite(LED4, HIGH);  // eteindre la LED3
    
    delay (n);
    
    
     digitalWrite(LED1, LOW);  // allumer la LED 1
    digitalWrite(LED2, LOW);  // eteindre la LED2
    digitalWrite(LED3, HIGH);  // eteindre la LED3
    digitalWrite(LED4, HIGH);  // eteindre la LED3
    
    delay (n);
   
    n--;
    }
  }
 
 
   else if (lum1 > 25 && lum1 < 50) // si la luminosité est moyenne
  {
    digitalWrite(LED2, HIGH);  // allumer la LED 2
    digitalWrite(LED1, LOW);  // eteindre la LED1
    digitalWrite(LED3, LOW); // etiendre la LED3
    digitalWrite(LED4, LOW);  // eteindre la LED3

  }
 
 
   else if (lum1 > 50 && lum1 < 75) {  // si la luminosité est élevée
 
    digitalWrite(LED3, HIGH);  // allumer la LED 3
    digitalWrite(LED1, LOW);  // eteindre la LED 1
    digitalWrite(LED2, LOW);  // eteindre la LED 2
    digitalWrite(LED4, LOW);  // eteindre la LED3

   }
   
   
   
   
      else if (lum1 > 75) {  // si la luminosité est élevée
 
    digitalWrite(LED3, LOW);  // allumer la LED 3
    digitalWrite(LED1, LOW);  // eteindre la LED 1
    digitalWrite(LED2, LOW);  // eteindre la LED 2
    digitalWrite(LED4, HIGH);  // eteindre la LED3

   }
 
} // Fin de la boucle