Sistema de Acceso Inteligente con Reconocimiento Facial para Apertura de Puertas
Componentes y materiales
- 1× Módulo WiFi Bolt IoT
- 1× Arduino UNO
- 1× Zumbador
- 1× Protoboard
- 2× Pulsadores 12 mm
- 1× LED rojo 5 mm + 1× LED verde 5 mm
- 2× Resistencia 10 kΩ + 2× Resistencia 330 Ω
- Cables jumper
- Servomotor (para cerrojo)
- Botellas plásticas (acoplamiento servo-cerradura), hilo nailon, pegamento caliente
Herramientas necesarias
- Pistola de pegamento caliente
Aplicaciones y servicios online
- Bolt IoT Cloud
- Microsoft Windows 10
- Microsoft Visual Studio (C# Windows Forms)
- Arduino IDE
- Face++ (API reconocimiento facial)
Sobre el proyecto
Cerrojo inteligente para estantería/puerta que desbloquea mediante verificación facial. Aplicación Windows Forms (C#) captura webcam, gestiona caras autorizadas, verifica con Face++ API y envía comandos al Bolt WiFi → Arduino → servo. Incluye timbre (pulsador) para solicitar acceso desde fuera, y botón de bloqueo manual.
Arquitectura software (Windows Forms)
- AForge.NET: captura vídeo webcam.
- Bolt IoT API .NET (librería no oficial): comunicación REST con Bolt Cloud.
- Newtonsoft JSON: parseo respuestas API.
Credenciales necesarias
BOLT_DEVICE_ID, BOLT_API_KEY (dashboard Bolt Cloud)
FPP_API_KEY, FPP_API_SECRET (consola Face++)
Funciones principales
- Añadir/Eliminar caras de confianza: Detecta rostro (Face++ Detect), guarda imagen Base64 + nombre en
Properties.Settings(persistente). - Verificación facial: Al pulsar timbre (o botón app), captura frame, compara con cada cara guardada (Face++ Compare). Si confidence > 80% → desbloquea.
- Hilo escucha timbre: Sondea pin D4 del Bolt cada 2 s (
DigitalRead); si HIGH → dispara verificación. - Bloqueo/Desbloqueo remoto: Escritura múltiple pines D0 (bloqueo) / D3 (desbloqueo) vía
DigitalMultiWrite.
Circuito y código Arduino
- Señales desde Bolt: D2 → bloqueo, D3 → desbloqueo.
- Entradas locales: D5 (timbre), D8 (botón bloqueo).
- Salidas: D4 (servo), D6 (señal timbre a Bolt), D7 (zumbador), D9 (LED verde), D10 (LED rojo).
- Lógica:
HIGHen D2 → servo 120° (cerrado) + LED rojo + beep.HIGHen D3 → servo 0° (abierto) + LED verde. Timbre local → pulsa D6 HIGH + patrón beep → Bolt detecta → app verifica cara.
#include <Servo.h>
#define ServoPin 4
#define LockSignalPin 2
#define UnLockSignalPin 3
#define BellButtonPin 5
#define LockButtonPin 8
#define RingBellSignalPin 6
#define BuzzerPin 7
#define GreenLedPin 9
#define RedLedPin 10
Servo myServo;
// loop() lee pines Bolt y locales, acciona servo/LEDs/zumbador
Mecanismo físico (acoplamiento servo-cerradura)
- Cuello de botella con agujero en tapón → atornillado al eje de la cerradura.
- Tapón de otra botella → fijado al servo con alambre de cobre.
- Hilo de nailon une ambos tapones (bucle tensor).
- Servo pegado con cola caliente a la estructura.
- Giro del servo tensa/afloja hilo → gira cuello → acciona cerradura.
Flujo de eventos
- Timbre pulsado: Arduino → D6 HIGH → Bolt D4 HIGH → App detecta → Captura/Verifica → Si OK: App → Bolt D3 HIGH → Arduino → Servo abre.
- Botón bloqueo (local o app): App → Bolt D0 HIGH → Arduino → Servo cierra.
Código
Arduino: BoltDoorLock.ino
(Ver sección código original; incluye lógica completa servo, LEDs, zumbador, lectura pines Bolt y locales).
Aplicación Windows Forms
Proyecto Visual Studio completo (Facebolt Doorlock.sln). Incluye formularios para: selección cámara, vista previa, lista caras autorizadas (añadir/eliminar), monitorización, control manual bloqueo/desbloqueo, configuración credenciales. Librería cliente Bolt IoT para .NET en GitHub: diozz/Bolt-IoT-API-.NET.
Esquemático
Circuito Fritzing (facebolt_doorlock.fzz): Bolt → Arduino (D2, D3, D4, D6), servo (D4), LEDs (D9, D10), zumbador (D7), pulsadores (D5, D8), resistencias pull-up/limitación.
Proceso de manufactura
- Optimizando el Apriete de Pernos con Herramientas de Torque – Estrategias Comprobadas para Precarga Confiable
- Construya un Controlador Domótico 433 MHz con Sensorflare y Raspberry Pi
- Construya una Puerta con Auto‑Bloqueo Inteligente Usando la Proximidad Bluetooth de su Smartphone
- Seguimiento Facial Pan/Tilt en Tiempo Real en Raspberry Pi – Guía Práctica
- Barman Inteligente: Construye tu Propia Estación de Cócteles con Raspberry Pi
- Cerradura Inteligente WiFi con Arduino y ESP8266: Desbloqueo desde el Móvil
- GE Digital impulsa la transformación manufacturera con MES inteligente
- Compras inteligentes: Fusionando IA con perspectiva humana
- Pestillos de Cerradura: Función, Tipos y Beneficios de Seguridad
- Maximice el ROI de sus inversiones en IoT: Una guía práctica
- Asegura tus Dispositivos Inteligentes: Mejores Prácticas para la Seguridad de IoT