Arduino Nano - Verrou à solénoïde

Ce tutoriel vous explique comment utiliser un Arduino Nano pour contrôler un verrou à solénoïde, également appelé serrure à gâche électrique. Nous pouvons utiliser cela pour sécuriser des armoires, des tiroirs et des portes.

Préparation du matériel

1×Arduino Nano
1×USB A to Mini-B USB cable
1×Solenoid Lock
1×Relay
1×12V Power Adapter
1×DC Power Jack
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 de la serrure à solénoïde

Le brochage du verrou à solénoïde

Le verrou solénoïde possède deux fils :

  • Le fil positif (+) (rouge) doit être connecté au 12V de l'alimentation DC.
  • Le fil négatif (-) (noir) doit être connecté à la GND de l'alimentation DC.
broche de verrouillage de solénoïde

Comment ça fonctionne

  • Lorsque la serrure à solénoïde est alimentée, le pêne de la serrure s'étend et la porte est verrouillée.
  • Lorsque la serrure à solénoïde n'est PAS alimentée, le pêne de la serrure est rétracté et la porte est déverrouillée.

※ NOTE THAT:

Le verrou à solénoïde nécessite généralement une alimentation de 12V, 24V ou 48V. Par conséquent, il NE PEUT PAS être connecté directement à une broche Arduino Nano. Un relais doit être utilisé pour le connecter à la broche Arduino Nano.

Si nous connectons le verrou à solénoïde à un relais (en mode normalement ouvert) :

  • Lorsque le relais n'est pas activé, la porte est déverrouillée
  • Lorsque le relais est activé, la porte est verrouillée

Connecter un Arduino Nano à un relais nous permet de le programmer pour contrôler la serrure à solénoïde. Pour en savoir plus sur les relais, veuillez consulter le tutoriel Arduino Nano - Relais.

Diagramme de câblage

Schéma de câblage du verrou à solénoïde Arduino Nano

This image is created using Fritzing. Click to enlarge image

Code Arduino Nano

Le code ci-dessous provoquera le verrouillage et le déverrouillage de la porte toutes les cinq secondes.

/* * 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-solenoid-lock */ #define RELAY_PIN 2 // The Arduino Nano pin connected to the IN pin of relay // The setup function runs once on reset or power-up void setup() { // initialize digital pin 3 as an output. pinMode(RELAY_PIN, OUTPUT); } // The loop function repeats indefinitely void loop() { digitalWrite(RELAY_PIN, LOW); // unlock the door delay(5000); digitalWrite(RELAY_PIN, HIGH); // lock the door delay(5000); }

Étapes rapides

  • Copiez le code et ouvrez-le avec l'IDE Arduino.
  • Cliquez sur le bouton Upload dans l'IDE Arduino pour compiler et téléverser le code vers l'Arduino Nano.
  • Vérifiez l'état de la gâche de la serrure.

Arduino Nano - Contrôle de Serrure à Solénoïde par Bouton

  • Schéma de câblage
Schéma de câblage de la serrure à solénoïde Arduino Nano

This image is created using Fritzing. Click to enlarge image

  • Écriture de code pour une carte 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-solenoid-lock */ #include <ezButton.h> #define BUTTON_PIN 8 // The Arduino Nano pin connected to button's pin #define RELAY_PIN 2 // The Arduino Nano pin connected to relay's pin ezButton button(BUTTON_PIN); // create ezButton object for pin 12; void setup() { Serial.begin(9600); // Initialize the Serial to communicate with the Serial Monitor. pinMode(RELAY_PIN, OUTPUT); // set arduino pin to output mode button.setDebounceTime(50); // set debounce time to 50 milliseconds digitalWrite(RELAY_PIN, HIGH); // lock the door } void loop() { button.loop(); // MUST call the loop() function first if(button.isPressed()) { Serial.println("The button is pressed"); digitalWrite(RELAY_PIN, LOW); // unlock the door in 10 seconds delay(10000); // 10 seconds digitalWrite(RELAY_PIN, HIGH); // lock the door again } }

Étapes rapides

  • Installez la bibliothèque ezButton. Consultez Comment faire pour les instructions.
  • Copiez le code et ouvrez-le avec l'IDE Arduino.
  • Cliquez sur le bouton Upload de l'IDE Arduino pour téléverser le code vers l'Arduino Nano.
  • Appuyez une fois sur le bouton.
  • Vérifiez l'état de la langue de la serrure pendant 10 secondes.

※ NOTE THAT:

Dans le code ci-dessus, nous avons utilisé la fonction de délai. Ainsi, il n'est pas nécessaire de supprimer les rebonds du bouton. Néanmoins, nous avons tout de même inclus le code avec anti-rebond au cas où vous souhaiteriez effectuer des tâches supplémentaires sans utiliser la fonction de délai. Pour plus d'informations, veuillez consulter Comment utiliser millis() au lieu de delay().

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!