Arduino - Capteur de mouvement - Relais

Nous allons apprendre comment :

En connectant un relais à une ampoule, une bande LED, un moteur ou un actionneur... Nous pouvons utiliser le capteur de mouvement pour contrôler l'ampoule, la bande LED, le moteur ou l'actionneur...

À propos du relais et du capteur de mouvement

Si vous ne connaissez pas les relais et les capteurs de mouvement (brochage, fonctionnement, programmation...), renseignez-vous sur ces éléments dans les tutoriels suivants :

Diagramme de câblage

Schéma de câblage du relais de capteur de mouvement Arduino

This image is created using Fritzing. Click to enlarge image

#Configuration initiale

Time Delay AdjusterScrew it in anti-clockwise direction fully.
Detection Range AdjusterScrew it in clockwise direction fully.
Repeat Trigger SelectorPut jumper as shown on the image.
réglage initial du capteur de mouvement Arduino

Code Arduino

/* * Ce code Arduino a été développé par newbiely.fr * Ce code Arduino est mis à disposition du public sans aucune restriction. * Pour des instructions complètes et des schémas de câblage, veuillez visiter: * https://newbiely.fr/tutorials/arduino/arduino-motion-sensor-relay */ const int MOTION_SENSOR_PIN = 7; // Arduino pin connected to the OUTPUT pin of motion sensor const int RELAY_PIN = A5; // Arduino pin connected to the IN pin of relay int motionStateCurrent = LOW; // current state of motion sensor's pin int motionStatePrevious = LOW; // previous state of motion sensor's pin void setup() { Serial.begin(9600); // initialize serial pinMode(MOTION_SENSOR_PIN, INPUT); // set arduino pin to input mode pinMode(RELAY_PIN, OUTPUT); // set arduino pin to output mode } void loop() { motionStatePrevious = motionStateCurrent; // store old state motionStateCurrent = digitalRead(MOTION_SENSOR_PIN); // read new state if (motionStatePrevious == LOW && motionStateCurrent == HIGH) { // pin state change: LOW -> HIGH Serial.println("Motion detected!"); digitalWrite(RELAY_PIN, HIGH); // turn on } else if (motionStatePrevious == HIGH && motionStateCurrent == LOW) { // pin state change: HIGH -> LOW Serial.println("Motion stopped!"); digitalWrite(RELAY_PIN, LOW); // turn off } }

Étapes rapides

  • Connectez l'Arduino au PC via le câble USB
  • Ouvrez l'IDE Arduino, sélectionnez la bonne carte et le bon port
  • Copiez le code ci-dessus et ouvrez-le avec l'IDE Arduino
  • Cliquez sur le bouton Upload dans l'IDE Arduino pour transférer le code vers l'Arduino
Téléversement de code Arduino IDE
  • Déplacez votre main devant le capteur
  • Observez le changement d'état du relais

Explication du code

Lisez l'explication ligne par ligne dans les commentaires du code source !

Vidéo

※ OUR MESSAGES

  • Please feel free to share the link of this tutorial. However, Please do not use our content on any other websites. We invested a lot of effort and time to create the content, please respect our work!