ESP8266 - Serrure à solénoïde

Le verrou solénoïde, également appelé serrure à gâche électrique, peut être utilisé pour verrouiller et déverrouiller des armoires, des tiroirs et des portes. Ce tutoriel nous apprendra comment contrôler le verrou solénoïde en utilisant ESP8266.

Une alternative à la serrure à solénoïde est la serrure électromagnétique. Pour plus d'informations, veuillez consulter le tutoriel ESP8266 - Serrure électromagnétique.

Préparation du matériel

1×ESP8266 NodeMCU
1×Micro USB Cable
1×Solenoid Lock
1×Relay
1×12V Power Adapter
1×DC Power Jack
1×(Optional) 5V Power Adapter for ESP8266
1×(Optional) ESP8266 Screw Terminal Adapter

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 schéma de connexion du verrou à solénoïde

Le verrou solénoïde est composé de deux fils :

  • Le fil positif (+) (rouge) doit être connecté au 12V d'une alimentation DC.
  • Le fil négatif (-) (noir) doit être connecté au GND d'une alimentation DC.
Brochage du verrou à solénoïde

Comment ça marche

  • Lorsque le verrou à solénoïde est alimenté, le pêne du verrou est étendu, ce qui a pour conséquence que la porte est verrouillée.
  • Lorsque le verrou à solénoïde n'est pas alimenté, le pêne du verrou est rétracté, ce qui a pour conséquence que la porte est déverrouillée.

※ NOTE THAT:

La serrure à solénoïde nécessite généralement une source d'alimentation de 12V, 24V ou 48V. Par conséquent, elle NE peut PAS être connectée directement à une broche ESP8266. Un relais doit être utilisé pour relier la serrure à solénoïde à la broche ESP8266.

Si le verrouillage du solénoïde est connecté à 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 ESP8266 à un relais permet la programmation de l'ESP8266 pour contrôler le verrou à solénoïde. Pour plus d'informations sur les relais, veuillez consulter le tutoriel ESP8266 - Relais.

Diagramme de câblage

Schéma de câblage de la serrure à solénoïde ESP8266 NodeMCU

This image is created using Fritzing. Click to enlarge image

Voir plus dans l'agencement des broches de l'ESP8266 et comment alimenter l'ESP8266 et d'autres composants.

Code ESP8266

Ce code fait en sorte que la porte se verrouille et se déverrouille toutes les cinq secondes.

/* * Ce code ESP8266 NodeMCU a été développé par newbiely.fr * Ce code ESP8266 NodeMCU 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/esp8266/esp8266-solenoid-lock */ #define RELAY_PIN D8 // The ESP8266 pin connected to the IN pin of relay // The setup function runs once on reset or power-up void setup() { // initialize digital pin 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

Pour commencer avec l'ESP8266 sur Arduino IDE, suivez ces étapes :

  • Consultez le tutoriel comment configurer l'environnement pour ESP8266 sur Arduino IDE si c'est la première fois que vous utilisez ESP8266.
  • Câblez les composants comme indiqué dans le schéma.
  • Connectez la carte ESP8266 à votre ordinateur via un câble USB.
  • Ouvrez Arduino IDE sur votre ordinateur.
  • Choisissez la bonne carte ESP8266, comme (par exemple NodeMCU 1.0 (Module ESP-12E)), et son port COM respectif.
  • Copiez le code et ouvrez-le dans l'Arduino IDE.
  • Cliquez sur le bouton Upload dans l'Arduino IDE pour envoyer le code à l'ESP8266.
  • Vérifiez l'état du pêne de la serrure.

ESP8266 - Un bouton contrôle un verrou à solénoïde

  • Schéma de câblage
Schéma de câblage du verrou à solénoïde ESP8266 NodeMCU

This image is created using Fritzing. Click to enlarge image

  • Écriture de code pour une carte ESP8266.
/* * Ce code ESP8266 NodeMCU a été développé par newbiely.fr * Ce code ESP8266 NodeMCU 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/esp8266/esp8266-solenoid-lock */ #include <ezButton.h> #define BUTTON_PIN D1 // The ESP8266 pin connected to button's pin #define RELAY_PIN D8 // The ESP8266 pin connected to relay's pin ezButton button(BUTTON_PIN); // create ezButton object for pin D8 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

  • Câblez les composants comme indiqué sur le schéma.
  • Connectez la carte ESP8266 à votre ordinateur à l'aide d'un câble USB.
  • Ouvrez Arduino IDE sur votre ordinateur.
  • Choisissez la bonne carte ESP8266, telle que NodeMCU 1.0 (Module ESP-12E), et son port COM respectif.
  • Installez la bibliothèque ezButton. Consultez Comment faire pour les instructions.
  • Copiez le code et ouvrez-le dans l'Arduino IDE.
  • Cliquez sur le bouton Upload dans l'Arduino IDE pour téléverser le code sur l'ESP8266.
  • 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 delay. De ce fait, nous n'avons pas besoin de mettre en œuvre un anti-rebond pour le bouton. Néanmoins, nous avons tout de même inclus le code avec anti-rebond au cas où vous voudriez effectuer des tâches supplémentaires sans utiliser la fonction delay. Consultez Comment utiliser millis() à la place de delay() pour plus d'informations.

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!