Lumière Variable

Pour ce projet nous avons voulu créer une lumière évolutive par à une action simple .

Notre système consiste d’un boîtier contenant un élément actionnable, protégeant plus ou moins un capteur LDR de la lumière. 

La partie actionnable est formée de deux tubes avec des fenêtres, permettant de choisir la quantité de lumière arrivant jusqu’au capteur. 

Plus le capteur reçoit de lumière moins les leds sont allumées, et plus le capteur est caché de la lumière plus les leds s’allument. 

Nous voulions que cette évolution soit graduelle. Nous avons donc dans le code du donner plusieurs valeurs capteurs permettant de rendre autonome chacune des leds. Ainsi en tournant à moitié les tubes (fermant à moitié les fenêtres)une seule led restera allumée.

CODE DE LUMIERE ACTIONNABLE (Valeur constrain adaptée à l’environnement lumineux)

int valeurCapteur; // valeur detecté par le capteur
int valeurCapteur1; // valeur du capteur lu par la led1
int valeurCapteur2; // valeur du capteur lu par la led2
int valeurMap1; // mapping de valeur faisant correspondre les valeurs du capteur à celles de la led1
int valeurMap2; // mapping de valeur faisant correspondre les valeurs du capteur à celles de la led2
int potentiometre = A2;
int led1 = 11;
int led2 = 10;


void setup() {

pinMode(led1,OUTPUT);
pinMode(led2, OUTPUT);
Serial.begin(9600);


}

void loop() {

valeurCapteur = analogRead(potentiometre);
valeurCapteur1 = constrain(valeurCapteur, 200, 350);
valeurCapteur2 = constrain(valeurCapteur, 350, 500);
valeurMap1 = map(valeurCapteur1, 200, 350, 255, 0);
valeurMap2 = map(valeurCapteur2, 350, 500, 255, 0);
analogWrite(led1,valeurMap1);
analogWrite(led2,valeurMap2);

Serial.print(valeurCapteur); //valeurs du capteur 
Serial.print("-----");
Serial.print(valeurMap1);
Serial.print("-----");
Serial.println(valeurMap2);

}