Lampe Eveil

De Les Fabriques du Ponant
Aller à : navigation, rechercher

Présentation

Dans le contexte que nous connaissons actuellement, il est primodrial de réaliser des économies d'énergie. C'est pour cela que nous avons décidé d'inventer une lampe qui s'adapte à la luminosité de l'environnement dans laquelle elle est positionnée. Pour cela nous avons utilisé une carte ARDUINO UNO.

Conception

Le projet se divise en 3 parties, le code, réalisation du circuit électrique puis le design de la boite pour cacher les composants et ne voir que la lumière.

Matériel

  • Carte Arduino UNO
  • Breadboard
  • LED (RGB)
  • 1 Photorésistance
  • 1 Bouton
  • Résistances
  • Pile 9V ou connexion USB à la Carte Arduino
  • Carton
  • Papier calque (pour diffuser la lumière)

Plaque Arduino

L'exemple pour un bouton et une seule LED, pour en rajouter, faire de même avec différentes broches Arduino.

Fritzing.png

Code

Ci-dessous un code pour faire fonctionner la lampe avec 4 LEDS RGB. Le nombre de LED peut varier en fonction des envies et du matériel.

int analogPin= A0;
int sensorValue= 0;
int outputValue=0;
bool interuValue=false;

void setup() {
  // put your setup code here, to run once:
   Serial.begin(9600);
   pinMode(analogPin, OUTPUT); 

//led1
pinMode(11,OUTPUT);
pinMode(12,OUTPUT);
pinMode(13,OUTPUT);

//led2
pinMode(5,OUTPUT);
pinMode(6,OUTPUT);
pinMode(7,OUTPUT);


//led3
pinMode(8,OUTPUT);
pinMode(9,OUTPUT);
pinMode(10,OUTPUT);

//led4
pinMode(1,OUTPUT);
pinMode(2,OUTPUT);
pinMode(3,OUTPUT);


//interrupteur
pinMode(4,INPUT);

//initialisation des leds


digitalWrite(11,HIGH);
digitalWrite(12,HIGH);
digitalWrite(13,HIGH);

digitalWrite(5,HIGH);
digitalWrite(6,HIGH);
digitalWrite(7,HIGH);

digitalWrite(8,HIGH);
digitalWrite(9,HIGH);
digitalWrite(10,HIGH);

digitalWrite(1,HIGH);
digitalWrite(2,HIGH);
digitalWrite(3,HIGH);
}

void loop() {
 
//etat photoresistance
sensorValue=analogRead(analogPin);

//etat interrupteur
interuValue=digitalRead(4);
Serial.println(sensorValue);

if (interuValue==0)
{
digitalWrite(11,HIGH);
digitalWrite(12,HIGH);
digitalWrite(13,HIGH);
digitalWrite(5,HIGH);
digitalWrite(6,HIGH);
digitalWrite(7,HIGH);
digitalWrite(8,HIGH);
digitalWrite(9,HIGH);
digitalWrite(10,HIGH);
digitalWrite(1,HIGH);
digitalWrite(2,HIGH);
digitalWrite(3,HIGH);
}
else {

if (sensorValue>=0 && sensorValue<=10){
digitalWrite(11,LOW);
digitalWrite(12,LOW);
digitalWrite(13,LOW);
digitalWrite(5,LOW);
digitalWrite(6,LOW);
digitalWrite(7,LOW);
digitalWrite(8,LOW);
digitalWrite(9,LOW);
digitalWrite(10,LOW);
digitalWrite(1,LOW);
digitalWrite(2,LOW);
digitalWrite(3,LOW);

  
}

else if (sensorValue>=10 && sensorValue<=20){
digitalWrite(11,LOW);
digitalWrite(12,LOW);
digitalWrite(13,LOW);
digitalWrite(5,LOW);
digitalWrite(6,LOW);
digitalWrite(7,LOW);
digitalWrite(8,HIGH);
digitalWrite(9,HIGH);
digitalWrite(10,HIGH);
digitalWrite(1,HIGH);
digitalWrite(2,HIGH);
digitalWrite(3,HIGH);
}

else if (sensorValue>=20 && sensorValue<=30){
digitalWrite(11,LOW);
digitalWrite(12,LOW);
digitalWrite(13,LOW);
digitalWrite(5,HIGH);
digitalWrite(6,HIGH);
digitalWrite(7,HIGH);
digitalWrite(8,HIGH);
digitalWrite(9,HIGH);
digitalWrite(10,HIGH);
digitalWrite(1,HIGH);
digitalWrite(2,HIGH);
digitalWrite(3,HIGH);
}


else{
  
digitalWrite(11,HIGH);
digitalWrite(12,HIGH);
digitalWrite(13,HIGH);
digitalWrite(5,HIGH);
digitalWrite(6,HIGH);
digitalWrite(7,HIGH);
digitalWrite(8,HIGH);
digitalWrite(9,HIGH);
digitalWrite(10,HIGH);
digitalWrite(1,HIGH);
digitalWrite(2,HIGH);
digitalWrite(3,HIGH);
}
  

}


}

Exemple

LE 1.jpg LE 2.jpg

Ressources

Utilisation de la photorésistance: https://www.carnetdumaker.net/articles/mesurer-la-luminosite-ambiante-avec-une-photoresistance-et-une-carte-arduino-genuino/

LEDs RGB: https://www.carnetdumaker.net/articles/utiliser-des-leds-rgb-avec-une-carte-arduino-genuino/

Design de la boite (découpeuse laser) : https://www.thingiverse.com/thing:2207458