IoT, AI Y UN NUEVO MECANISMO DE APERTURA DE PUERTAS

Aspectos Generales

¿Qué hicimos?

Un mecanismo de apertura de puerta diferente, mediante el cual se podrá tener acceso a la oficina (abrir la puerta) por reconocimiento facial, haciendo uso del dispositivo móvil y el bluetooth que viene integrado con este. También se desarrolló una forma alternativa de ingreso a la oficina que consiste en un mecanismo de detección de toques en la puerta para realizar la apertura.

¿Cómo funciona?

¿Por qué lo hicimos?

El principal objetivo de estos proyectos es obtener y profundizar conocimientos tanto en IoT como en AI para ser aplicados en los nuevos productos diseñados por el área de innovación de Tech and Solve. La idea es pasar de hacer pruebas de concepto, a buscar aplicaciones de la vida real donde se pueda plasmar el conocimiento y obtener experiencias en diferentes escenarios y con usuarios reales, condiciones que en algunos casos son difíciles de tener en una prueba de concepto.

Potenciales Aplicaciones

Entre las potenciales aplicaciones del reconocimiento facial se encuentran el sector de seguridad, donde se usa para detección de fraudes, reducir la necesidad de las claves y para mejorar la habilidad de distinguir entre la cara humana y una fotografía. En el sector marketing también está siendo usada esta tecnología para llevar una experiencia más personalizada a los usuarios, aunque están de por medio las consideraciones éticas y posible violación de privacidad. En cuanto a Bluetooth que es la tecnología inalámbrica más ampliamente usada a nivel mundial, es utilizada normalmente para una conexión sencilla entre celulares u otros reproductores de audio y dispositivos de sonido, aunque desde el 2010 Bluetooth incursionó en el IoT, donde existen aplicaciones como redes de sensores tanto industriales como para hogares o edificaciones, ubicación de personas o activos en espacios cerrados, comunicación con dispositivos personales como Wearables, entre otras aplicaciones que impliquen brindar información a las personas de lo que pasa a su alrededor.

Limitaciones de la Tecnología

Las principales limitaciones del reconocimiento facial están dadas al momento de identificar si realmente se trata de una persona o si se está tratando de hacer algún tipo de violación al reconocimiento, mediante fotos o vídeos. También se deben tener en cuenta aspectos como la luminosidad y las variaciones que sufre una persona a los largo de su vida, por ejemplo comparar una foto de la persona en su juventud contra una foto de adulto. Por otro lado las principales limitaciones de Bluetooth son el alcance, la cantidad de conexiones que se pueden establecer y las implicaciones en consumo de batería que existen al mandar gran cantidad de datos. Por último, las limitaciones del sistema de detección de toques van ligadas a la ubicación del sensor, el material sobre el cuál se ponga y de una decuada calibración en las condiciones de trabajo.


Aspectos Técnicos

A partir de aquí vamos a dar un breve recorrido por los aspectos técnicos de está solución.

App de Android

El principal objetivo de la aplicación en android es usar la cámara del dispositivo móvil para tomar una foto de la persona, almacenarla en el sistema de archivos y mediante el servidor que aloja el componente para hacer el reconocimiento facial, validar si la foto corresponde con la cara de la persona registrada (es necesario hacer un paso previo de registro de la persona para poder realizar la validación). Para esta validación, es necesario que el dispositivo móvil esté  conectado a la misma red local en la cual se encuentra el servidor ya que el servicio de validación no se encuentra expuesto a internet.

Servicio de Reconocimiento Facial

El principal objetivo de este servicio es realizar el reconocimiento facial mediante librerías de inteligencia artificial. Para este caso, se usó la librería face_recognition que puede encontrarse en el repositorio de github https://github.com/ageitgey/face_recognition. El reconocimiento facial mediante imágenes básicamente consta de tres pasos. En el primero,  se detectan las caras que hay en la imagen. En el segundo, se obtiene una representación de las características únicas de la cara; para esto se hace uso de un tipo especial de red neuronal artificial denominado Convolutional Neural Network (CNN), que tiene como salida 128 valores que representan cada cara. El último paso, consiste en realizar la comparación de similitud entre las 128 medidas obtenidas y las medidas ya registradas por otras personas conocidas. Una vez la aplicación móvil envía la foto de la persona, este servicio se encarga de hacer la validación tomando como referencia la foto de la persona al momento del registro y proporcionar una respuesta.

Interacción App Bluetooth

Después de obtenida la respuesta del servicio y al validar que esta nos indica que es una cara y que es la del solver al cual corresponde el celular se inicia un escaneo Bluetooth Low Energy (BLE), para esto debemos tener activados Bluetooth y GPS en el celular (la necesidad de activar GPS es un requisito de Android, para más información pueden leer de este issue). Este escaneo busca en específico al dispositivo que se encuentra en una caja negra en la parte interna de Tech and Solve (que de aquí en adelante llamaremos Anita), y tiene un tiempo máximo de escaneo de 25 segundos, al encontrarla hace una solicitud de conexión, Anita solo tiene la habilidad de establecer una conexión al tiempo, lo que implica que al haber varias personas tratando de abrir la puerta desde la aplicación solo el primero de ellos que establezca conexión podrá abrir la puerta, los demás podrían establecer una conexión con Anita solo en el caso de que el otro dispositivo ya haya terminado su interacción.

Dispositivo de Apertura – Anita

Anita está compuesta por un módulo llamado Red Bear Nano V1, que implementa toda la electrónica necesaria para un System on Chip (SoC) de Nordic Semiconductors llamado nRF51822, el cual está compuesto por un microcontrolador Cortex M-0 unido con un módulo de Radio Frecuencia (RF). Nordic ofrece un stack para el desarrollo sobre BLE, mediante el uso de este stack se exponen los servicios Bluetooth para la comunicación con el celular en este dispositivo.

La principal función de Anita es que al entablar comunicación con un celular mediante Bluetooth la electrónica de protección y suicheo le corta el suministro de energía al electroimán, lo que deja libre la puerta para poder entrar a las oficinas Tech and Solve.

Dispositivo de Detección de Toques

En una segunda iteración del proyecto se realizó un dispositivo que detecta cuando alguien se encuentra tocando la puerta usando un sensor piezoeléctrico para detectar vibraciones y además identificando cuando la puerta se encuentra cerrada mediante la instrumentación de un reed switch. La calibración de este dispositivo se hizo en sitio, teniendo en cuenta la fuerza que era aplicada por las personas en cada uno de sus toques.

La instrumentación de estos sensores se realizó en otro Red Bear Lab Ble Nano, quien al detectar un determinado patrón iniciará una conexión Bluetooth con Anita, lo que implica ser un dispositivo central y además un cliente para consumir los servicios Bluetooth que expone el dispositivo de apertura, para que Anita finalmente le de acceso a la persona a Tech and Solve.

Share

Share on facebook
Share on twitter
Share on linkedin

Related Posts

¿Quieres recibir más información sobre tendencias en desarrollo de software, DevOps, innovación o productividad?

Últimas entradas

Aplicaciones Reales con Blockchain

Blockchain es una de las tecnologías que más fama ha adquirido en años recientes; en parte por la explosión de las criptomonedas, pero también por la

¿Qué es refactoring?

El objetivo del refactoring es evitar la deuda técnica que se acumula en el código fuente y  generar un código mas limpio y mas fácil