ESP8266 - Cerradura de solenoide

La cerradura de solenoide, también conocida como cerradura de pestillo eléctrica, se puede usar para bloquear y desbloquear armarios, cajones y puertas. Este tutorial nos enseñará cómo controlar la cerradura de solenoide utilizando ESP8266.

Una alternativa a la cerradura de solenoide es la cerradura electromagnética. Para obtener más información, consulte el Tutorial de la cerradura electromagnética ESP8266.

Hardware Requerido

1×ESP8266 NodeMCU
1×Cable USB Tipo-A a Tipo-C (para PC USB-A)
1×Cable USB Tipo-C a Tipo-C (para PC USB-C)
1×Cerradura de Solenoide
1×Relé
1×Adaptador de Corriente 12V
1×Conector de Alimentación DC
1×(Recomendado) Placa de Expansión de Terminales de Tornillo para ESP8266
1×(Recomendado) Divisor de Alimentación para ESP8266 Tipo-C

Or you can buy the following kits:

1×DIYables Sensor Kit (30 sensors/displays)
1×DIYables Sensor Kit (18 sensors/displays)
Divulgación: Algunos de los enlaces proporcionados en esta sección son enlaces de afiliado de Amazon. Podemos recibir una comisión por las compras realizadas a través de estos enlaces sin costo adicional para usted. Apreciamos su apoyo.

Acerca de la cerradura solenoide

Diagrama de pines de la cerradura de solenoide

La cerradura de solenoide consta de dos cables:

  • El cable positivo (+) (rojo) debe conectarse al 12 V de una fuente de alimentación de corriente continua
  • El cable negativo (-) (negro) debe conectarse a la tierra de una fuente de alimentación de corriente continua
Pinout de la cerradura de solenoide

Cómo funciona

  • Cuando se suministra energía a la cerradura de solenoide, la lengüeta de la cerradura se extiende, haciendo que la puerta quede cerrada.
  • Cuando no se suministra energía a la cerradura de solenoide, la lengüeta de la cerradura se retrae, haciendo que la puerta quede desbloqueada.

※ Nota:

La cerradura de solenoide suele requerir una fuente de alimentación de 12 V, 24 V o 48 V. Por consiguiente, NO puede conectarse directamente a un pin del ESP8266. Se debe usar un relé para conectar la cerradura de solenoide al pin del ESP8266.

Si la cerradura de solenoide está conectada a un relé (en modo normalmente abierto):

  • Cuando el relé no está activado, la puerta está desbloqueada
  • Cuando el relé está activado, la puerta está cerrada con llave

Conectar el ESP8266 a un relé permite programar el ESP8266 para controlar la cerradura de solenoide. Para obtener más información sobre relés, consulte el Tutorial ESP8266 - Relé.

Diagrama de Cableado

Diagrama de cableado de la cerradura de solenoide ESP8266 NodeMCU

This image is created using Fritzing. Click to enlarge image

Para obtener m\u00e1s informaci\u00f3n, consulte Pines del ESP8266 y c\u00f3mo alimentar ESP8266 y otros componentes.

Código ESP8266

Este código hace que la puerta se bloquee y se desbloquee cada cinco segundos.

/* * Este código de ESP8266 NodeMCU fue desarrollado por es.newbiely.com * Este código de ESP8266 NodeMCU se proporciona al público sin ninguna restricción. * Para tutoriales completos y diagramas de cableado, visite: * https://es.newbiely.com/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); }

Pasos R\u00e1pidos

Para empezar con ESP8266 en Arduino IDE, siga estos pasos:

  • Consulta el tutorial cómo configurar el entorno para ESP8266 en Arduino IDE si es la primera vez que usas ESP8266.
  • Cablea los componentes tal como se muestran en el diagrama.
  • Conecta la placa ESP8266 a tu computadora usando un cable USB.
  • Abre Arduino IDE en tu computadora.
  • Elige la placa ESP8266 correcta, como (p. ej. NodeMCU 1.0 (ESP-12E Module)), y su puerto COM correspondiente.
  • Copia el código y ábrelo en el Arduino IDE.
  • Haz clic en el botón Upload del Arduino IDE para enviar el código al ESP8266.
  • Ver el estado del pestillo de la cerradura.

ESP8266 - Botón de control de la cerradura de solenoide

  • Diagrama de cableado
Diagrama de cableado de la cerradura de solenoide ESP8266 NodeMCU

This image is created using Fritzing. Click to enlarge image

  • Escribir código para una placa ESP8266.
/* * Este código de ESP8266 NodeMCU fue desarrollado por es.newbiely.com * Este código de ESP8266 NodeMCU se proporciona al público sin ninguna restricción. * Para tutoriales completos y diagramas de cableado, visite: * https://es.newbiely.com/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 } }

Pasos R\u00e1pidos

  • Conecta los componentes como se muestra en el diagrama.
  • Conecta la placa ESP8266 a tu ordenador usando un cable USB.
  • Abre Arduino IDE en tu ordenador.
  • Elige la placa ESP8266 correcta, por ejemplo (p. ej. NodeMCU 1.0 (ESP-12E Module)), y su puerto COM correspondiente.
  • Instala la biblioteca ezButton. Consulta Cómo hacerlo para instrucciones.
  • Copia el código y ábrelo en el Arduino IDE.
  • Haz clic en el botón Subir del Arduino IDE para subir el código al ESP8266.
  • Pulsa el botón una vez.
  • Verifica el estado de la lengüeta de la cerradura durante 10 segundos.

※ Nota:

En el código anterior, usamos la función delay. Como resultado, no es necesario implementar el rebote del botón. No obstante, todavía incluimos el código con control de rebote por si deseas realizar tareas adicionales sin usar la función delay. Consulta [Cómo usar millis() en lugar de delay()] para obtener más información.

Video Tutorial

Estamos considerando crear tutoriales en video. Si considera que los tutoriales en video son importantes, suscríbase a nuestro canal de YouTube para motivarnos a crear los videos.

※ NUESTROS MENSAJES

  • No dude en compartir el enlace de este tutorial. Sin embargo, por favor no use nuestro contenido en otros sitios web. Hemos invertido mucho esfuerzo y tiempo en crear el contenido, ¡por favor respete nuestro trabajo!