Veilleuse de nuit avec Arduino

Veilleuse de nuit avec Arduino

Dans ce projet, vous allez construire une veilleuse de nuit avec un module relais, une photorésistance et un Arduino.

gif-lumiere-securite-nuit

Une veilleuse de nuit ne s’allume que lorsqu’il fait noir et lorsqu’un mouvement est détecté.

Voici les principales caractéristiques de ce projet :

  • la lampe s’allume lorsqu’il fait sombre ET qu’un mouvement est détecté ;
  • lorsqu’un mouvement est détecté, la lampe reste allumée pendant 10 secondes ;
  • lorsque la lampe est allumée et détecte un mouvement, elle recommence à compter 10 secondes ;
  • lorsqu’il y a de la lumière, la lampe est éteinte, même lorsqu’un mouvement est détecté.

Ressources recommandées

Les ressources suivantes incluent des guides sur la façon d’utiliser le module de relais et le capteur de mouvement PIR avec l’Arduino, ce qui pourrait être utile pour ce projet.

Pièces nécessaires

Voici une liste complète des pièces requises pour ce projet :

Veilleuse de nuit avec Arduino

Outre ces composants électroniques, vous avez également besoin d’une prise mâle AC, d’un fil AC et d’un support d’ampoule de lampe (un jeu de cordons de lampe). Mon cordon de lampe est celui de la figure ci-dessous.

1642617364 99 Veilleuse de nuit avec Arduino

Vous pouvez utiliser les liens précédents ou accéder directement à MakerAdvisor.com/tools pour trouver toutes les pièces pour vos projets au meilleur prix !

Veilleuse de nuit avec Arduino

Code

Téléchargez ou copiez le code suivant sur votre IDE Arduino et chargez-le sur votre carte Arduino.

Avertissement: ne chargez pas un nouveau code sur votre carte Arduino tant que votre lampe est connectée au secteur. Vous devez débrancher la lampe de la tension secteur avant de télécharger un nouveau croquis sur votre Arduino.

/*
 * Rui Santos 
 * Complete Project Details https://www.raspberryme.com
 */
 
// Relay pin is controlled with D8. The active wire is connected to Normally Closed and common
int relay = 8;
volatile byte relayState = LOW;

// PIR Motion Sensor is connected to D2.
int PIRInterrupt = 2;

// LDR pin is connected to Analog 0
int LDRPin = A0;
// LDR value is stored on LDR reading
int LDRReading;
// LDR Threshold value
int LDRThreshold = 300;

// Timer Variables
long lastDebounceTime = 0;  
long debounceDelay = 10000;

void setup() {
  // Pin for relay module set as output
  pinMode(relay, OUTPUT);
  digitalWrite(relay, HIGH);
  // PIR motion sensor set as an input
  pinMode(PIRInterrupt, INPUT);
  // Triggers detectMotion function on rising mode to turn the relay on, if the condition is met
  attachInterrupt(digitalPinToInterrupt(PIRInterrupt), detectMotion, RISING);
  // Serial communication for debugging purposes
  Serial.begin(9600);
}

void loop() {
  // If 10 seconds have passed, the relay is turned off
  if((millis() - lastDebounceTime) > debounceDelay && relayState == HIGH){
    digitalWrite(relay, HIGH);
    relayState = LOW;
    Serial.println("OFF");
  }
  delay(50);
}

void detectMotion() {
  Serial.println("Motion");
  LDRReading = analogRead(LDRPin);
  // LDR Reading value is printed on serial monitor, useful to get your LDRThreshold
  //Serial.println(LDRReading);
  // Only turns the Relay on if the LDR reading is higher than the LDRThreshold
  if(LDRReading > LDRThreshold){
    if(relayState == LOW){
      digitalWrite(relay, LOW);
    }
    relayState = HIGH;  
    Serial.println("ON");
    lastDebounceTime = millis();
  }
}

Afficher le code brut

Schémas

1642617364 633 Veilleuse de nuit avec Arduino

Voici les schémas de ce projet.

1642617364 424 Veilleuse de nuit avec Arduino

Noter: si vous avez une connexion de terre (GND) dans le câble de tension secteur – un câble jaune et vert – elle doit sortir du module de relais, comme le fil bleu (neutre).

Manifestation

Voici votre circuit en action :

gif-lumiere-securite-nuit

Conclusion

Dans ce projet, vous avez construit une lumière de sécurité nocturne avec une photorésistance et un capteur de mouvement PIR.

C’est un excellent projet à pratiquer avec des relais et avec le capteur de mouvement PIR.

Si vous aimez les projets Arduino, assurez-vous de consulter notre dernier cours Arduino : Projets Arduino étape par étape – Construire 25 projets

Merci d’avoir lu,

Sara Santos

  • Veilleuse LED, Lot de 2 Veilleuse Detecteur de Mouvement Avec 3 Modes de Couleur (Chaud et Blanc et Mixte), Veilleuse Rechargeable avec Bandes MagnéTiques pour Chambre, Couloir, Escaliers