Arduino Nano - Capteur de porte - LED

Ce tutoriel vous explique comment utiliser l'Arduino Nano et le capteur de porte pour contrôler la LED. Nous allons apprendre deux applications différentes :

Application 1 - La LED est allumée lorsque la porte est ouverte et elle est éteinte lorsque la porte est fermée. L'état de la LED est synchronisé avec l'état du capteur de porte. Plus en détail :

Application 2 - L'état de la LED est basculé à chaque ouverture de la porte. Plus précisément :

Préparation du matériel

1×Arduino Nano
1×USB A to Mini-B USB cable
1×Door Sensor
1×LED
1×220 ohm resistor
1×Breadboard
1×Jumper Wires
1×(Optional) 9V Power Adapter for Arduino Nano
1×(Recommended) Screw Terminal Adapter for Arduino Nano

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 du capteur de porte

Si vous n'êtes pas familier avec les LED et les capteurs de porte (y compris le brochage, le fonctionnement et la programmation), les tutoriels suivants peuvent vous aider :

Diagramme de câblage

Schéma de câblage de la LED du capteur de porte Arduino Nano

This image is created using Fritzing. Click to enlarge image

Application 1 - L'état des LED est synchronisé avec l'état du capteur de porte

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-door-sensor-led */ #define DOOR_SENSOR_PIN 2 // The Arduino Nano pin connected to the door sensor's pin #define LED_PIN 3 // The Arduino Nano pin connected to the LED int door_state; void setup() { Serial.begin(9600); // Initialize the Serial to communicate with the Serial Monitor. pinMode(DOOR_SENSOR_PIN, INPUT_PULLUP); // set arduino pin to input pull-up mode pinMode(LED_PIN, OUTPUT); // set arduino pin to output mode } void loop() { door_state = digitalRead(DOOR_SENSOR_PIN); // read state if (door_state == HIGH) { Serial.println("The door is open");; digitalWrite(LED_PIN, HIGH); // turn on LED } else { Serial.println("The door is closed"); digitalWrite(LED_PIN, LOW); // turn off LED } }

Étapes rapides

  • Connectez un Arduino Nano à votre ordinateur avec un câble USB.
  • Lancez l'IDE Arduino et sélectionnez la carte et le port corrects.
  • Copiez le code et ouvrez-le dans l'IDE Arduino.
  • Cliquez sur le bouton Upload de l'IDE Arduino pour compiler et téléverser le code sur l'Arduino Nano.
Téléversement de code Arduino IDE
  • Ouvrez et fermez la porte
  • Observez le changement d'état de la LED.

Vous verrez que l'état du LED est synchronisé avec l'état du capteur de porte.

Explication du code

Découvrez l'explication ligne par ligne contenue dans les commentaires du code source !

Application 2 - Capteur de porte actionne LED

Code Arduino Nano - Un capteur de porte active une LED

/* * 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-door-sensor-led */ #define DOOR_SENSOR_PIN 2 // The Arduino Nano pin connected to the door sensor's pin #define LED_PIN 3 // The Arduino Nano pin connected to the LED int led_state = LOW; // The current state of LED int prev_door_state; // The previous state of door sensor int door_state; // The current state of door sensor void setup() { Serial.begin(9600); // Initialize the Serial to communicate with the Serial Monitor. pinMode(DOOR_SENSOR_PIN, INPUT_PULLUP); // set arduino pin to input pull-up mode pinMode(LED_PIN, OUTPUT); // set arduino pin to output mode door_state = digitalRead(DOOR_SENSOR_PIN); } void loop() { prev_door_state = door_state; // save the last state door_state = digitalRead(DOOR_SENSOR_PIN); // read new state if (prev_door_state == HIGH && door_state == LOW) { // state change: HIGH -> LOW Serial.println("The door-closing event is detected"); // toggle state of LED led_state = !led_state; // control LED according to the toggled state digitalWrite(LED_PIN, led_state); } }

Explication du code

Vous pouvez trouver l'explication dans les lignes de commentaire du code Arduino Nano ci-dessus.

Dans le code, l'expression led_state = !led_state équivaut au code suivant :

if(led_state == LOW) led_state = HIGH; else led_state = LOW;

Étapes rapides

  • Copiez le code et ouvrez-le dans l'IDE Arduino.
  • Téléchargez le code sur l'Arduino Nano.
  • Ouvrez et fermez la porte plusieurs fois.
  • Vérifiez le changement d'état de la LED.

Vous verrez que l'état de la LED est basculé à chaque fois que la porte est fermée.

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!