Arduino Nano - Capteur de mouvement - LED
Ce tutoriel vous apprend à utiliser un Arduino Nano et un capteur de mouvement pour contrôler une LED. En détail :
- Arduino Nano allume la LED lorsque un mouvement est détecté
- Arduino Nano éteint la LED lorsque aucun mouvement n'est détecté
Cela peut être appliqué dans un processus d'automatisation qui déclenche des actions lors de la détection de présence humaine.
Préparation du matériel
Or you can buy the following sensor kits:
1 | × | DIYables Sensor Kit (30 sensors/displays) | |
1 | × | DIYables Sensor Kit (18 sensors/displays) |
Divulgation : Certains des liens fournis dans cette section sont des liens affiliés Amazon. Nous pouvons recevoir une commission pour tout achat effectué via ces liens, sans coût supplémentaire pour vous. Nous vous remercions de votre soutien.
À propos des LED et des capteurs de mouvement
Si vous n'êtes pas familier avec les LED et les capteurs de mouvement (y compris le brochage, la fonctionnalité et la programmation), les tutoriels suivants peuvent vous aider :
Diagramme de câblage
This image is created using Fritzing. Click to enlarge image
Configuration initiale
Time Delay Adjuster | Screw it in anti-clockwise direction fully. |
Detection Range Adjuster | Screw it in clockwise direction fully. |
Repeat Trigger Selector | Put jumper as shown on the image. |
Code Arduino Nano
/*
* Ce code Arduino Nano a été développé par newbiely.fr
* Ce code Arduino Nano 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-nano/arduino-nano-motion-sensor-led
*/
#define MOTION_SENSOR_PIN 2 // The Arduino Nano pin connected to the OUTPUT pin of motion sensor
#define LED_PIN 7 // The Arduino Nano pin connected to the LED
int motion_state = LOW; // current state of motion sensor's pin
int prev_motion_state = LOW; // previous state of motion sensor's pin
void setup() {
Serial.begin(9600); // Initialize the Serial to communicate with the Serial Monitor.
pinMode(MOTION_SENSOR_PIN, INPUT); // set arduino pin to input mode
pinMode(LED_PIN, OUTPUT); // set arduino pin to output mode
}
void loop() {
prev_motion_state = motion_state; // store old state
motion_state = digitalRead(MOTION_SENSOR_PIN); // read new state
if (prev_motion_state == LOW && motion_state == HIGH) { // pin state change: LOW -> HIGH
Serial.println("Motion detected!");
digitalWrite(LED_PIN, HIGH); // turn on
}
else if (prev_motion_state == HIGH && motion_state == LOW) { // pin state change: HIGH -> LOW
Serial.println("Motion stopped!");
digitalWrite(LED_PIN, LOW); // turn off
}
}
Étapes rapides
- Connectez votre Arduino Nano à votre ordinateur à l'aide d'un câble USB.
- Lancez l'IDE Arduino, sélectionnez la carte et le port appropriés.
- Copiez le code ci-dessus et ouvrez-le dans l'IDE Arduino.
- Cliquez sur le bouton Upload dans l'IDE Arduino pour téléverser le code sur l'Arduino Nano.
- Déplacez votre main devant le capteur et observez la modification de l'état de la LED.
Explication du code
Découvrez l'explication détaillée dans les commentaires du code source !