- Componentes requeridos
- Bloqueo de solenoide
- Diagrama de circuito
- Explicación del código
- Prueba del bloqueo de solenoide RFID
RFID (identificación por radiofrecuencia) es una tecnología económica y accesible. Se puede utilizar en muchas aplicaciones como control de acceso, seguridad, seguimiento de activos, seguimiento de personas, etc. Ha visto el sistema de cerradura de puerta RFID en hoteles, oficinas y muchos otros lugares donde solo tiene que colocar la tarjeta cerca del lector RFID por un segundo y la puerta se abrirá. Usamos un lector RFID y una etiqueta en muchos proyectos basados en RFID.
En nuestras publicaciones anteriores, hemos construido una cerradura de puerta RFID simple, esta vez usamos una cerradura de puerta solenoide real y la controlamos con RFID y Arduino. Aquí se utiliza un sensor de efecto Hall y un imán para detectar el movimiento de la puerta. El sensor de efecto Hall se colocará en el marco de la puerta y el imán en la puerta misma. Cuando el sensor de efecto Hall y el imán están cerca el uno del otro, el sensor de efecto Hall estará en un estado bajo y la puerta permanecerá cerrada, y cuando el sensor y el imán no estén cerrados, significa que la puerta está abierta y el sensor de pasillo está en alto. estado. Usaremos este mecanismo de efecto Hall para bloquear y desbloquear la puerta automáticamente. Para obtener más información sobre Hall Sensor y su funcionamiento, siga el enlace.
Componentes requeridos
- Arduino Uno
- Módulo RFID-RC522
- Cerradura de solenoide 12v
- Módulo de relé
- Sensor de efecto Hall
- Resistencia de 10kΩ
- Zumbador
Bloqueo de solenoide
Un bloqueo de solenoide funciona en el mecanismo de bloqueo electrónico-mecánico. Este tipo de cerradura tiene un taco con un corte inclinado y un buen soporte de montaje. Cuando se aplica la energía, la CC crea un campo magnético que mueve la bala hacia adentro y mantiene la puerta en la posición desbloqueada. La babosa mantendrá su posición hasta que se retire la energía. Cuando se desconecta la energía, la babosa se mueve hacia afuera y bloquea la puerta. No usa energía en un estado bloqueado. Para accionar el bloqueo de solenoide, necesitaría una fuente de alimentación que pueda proporcionar 12 V a 500 mA.
Diagrama de circuito
El diagrama de circuito para la cerradura de puerta con solenoide con Arduino se muestra a continuación.
Las conexiones entre Arduino y RFID se dan en la siguiente tabla. El pin positivo del zumbador está conectado al pin digital 4 de Arduino, y el pin GND está conectado al pin de tierra de Arduino. Se utiliza una resistencia de 10K entre el pin VCC y OUT del sensor de efecto Hall. El bloqueo de solenoide está conectado a Arduino a través del módulo de relé.
Pin RFID | Pin Arduino Uno |
SDA | 10 digitales |
SCK | Digital 13 |
MOSI | Digital 11 |
MISO | Digital 12 |
IRQ | Desconectado |
GND | GND |
RST | Digital 9 |
3,3 V | 3,3 V |
Pin del sensor de efecto Hall | Pin Arduino Uno |
5V | 5V |
GND | GND |
AFUERA | 3 |
Después de soldar todos los componentes en la placa perf de acuerdo con el diagrama del circuito, se ve como la siguiente imagen:
Explicación del código
El código completo para este bloqueo de solenoide Arduino se proporciona al final del documento. Aquí estamos explicando este código paso a paso para una mejor comprensión.
Inicie el código incluyendo todas las bibliotecas necesarias. Aquí solo requiere dos bibliotecas, una para la comunicación SPI entre Arduino y RFID, y la segunda para el módulo RFID. Ambas bibliotecas se pueden descargar desde los enlaces que se proporcionan a continuación:
- SPI.h
- MFRC522.h
Ahora defina los pines para el zumbador, el bloqueo de solenoide y el módulo RFID
int Buzzer = 4; const int LockPin = 2; #define SS_PIN 10 #define RST_PIN 9
Luego defina el pin de bloqueo y el pin del zumbador como salida, y el pin del sensor de efecto Hall como entrada e inicie la comunicación SPI.
pinMode (LockPin, SALIDA); pinMode (Zumbador, SALIDA); pinMode (hall_sensor, ENTRADA); SPI.begin (); // Iniciar bus SPI mfrc522.PCD_Init (); // Iniciar MFRC522
Dentro del circuito vacío , lea los valores del sensor de pasillo y, cuando esté bajo, cierre la puerta.
state = digitalRead (hall_sensor); Serial.print (estado); retraso (3000); if (estado == LOW) {digitalWrite (LockPin, LOW); Serial.print ("Puerta cerrada"); digitalWrite (zumbador, ALTO); retraso (2000); digitalWrite (zumbador, BAJO);}
Dentro de la función de bucle vacío, comprobará si hay una nueva tarjeta RFID y, si hay una nueva, comprobará el UID de la tarjeta. Para una tarjeta válida, abrirá la cerradura; de lo contrario, imprimirá ' No está autorizado. El trabajo completo se muestra en el video que se incluye al final.
if (! mfrc522.PICC_IsNewCardPresent ()) {return; } // Seleccione una de las tarjetas if (! Mfrc522.PICC_ReadCardSerial ()) {return; } // Mostrar UID en el monitor serial String content = ""; letra de byte; para (byte i = 0; i <mfrc522.uid.size; i ++) {content.concat (String (mfrc522.uid.uidByte <0x10? "0": "")); content.concat (String (mfrc522.uid.uidByte, HEX)); } Serial.println (); Serial.print ("Mensaje:"); content.toUpperCase (); if (content.substring (1) == "60 4E 07 1E") // cambia aquí el UID de la tarjeta / tarjetas a las que quieres dar acceso {digitalWrite (LockPin, HIGH); Serial.print ("Puerta desbloqueada"); digitalWrite (zumbador, ALTO); retraso (2000); digitalWrite (Zumbador, BAJO); } else {Serial.println ("No está autorizado"); digitalWrite (zumbador, ALTO); retraso (2000); digitalWrite (zumbador,BAJO); }}
Prueba del bloqueo de solenoide RFID
Una vez que esté listo con el código y el hardware, puede comenzar a probar el proyecto Solenoid Door Lock. Aquí hemos soldado todos los componentes en la placa de perforación para que se pueda montar en la puerta fácilmente.
Entonces, para probarlo, monte la placa de perforación en el marco de la puerta y el imán en la puerta para que pueda detectar el movimiento de la puerta. La siguiente imagen muestra cómo se fijan el imán y los sensores Hall en la puerta.
Ahora escanee su tarjeta RFID autorizada para abrir la cerradura de la puerta. La cerradura de la puerta del solenoide permanecerá abierta hasta que la salida del sensor de efecto Hall sea alta. Ahora, cuando la puerta vuelva a acercarse al sensor Hall mientras se cierra, el estado del sensor de efecto Hall cambiará a Bajo debido al campo magnético (generado por el imán adjunto a la puerta) y la cerradura se cerrará nuevamente.
En lugar de utilizar el sensor de efecto Hall, puede introducir un retraso para mantener la puerta abierta durante un tiempo definido.
El código completo y el video de trabajo se dan a continuación. Además, verifique otros tipos de cerradura de puerta utilizando diferentes tecnologías.