Telefonillo IA: Un proyecto sencillo con micro:bit y la cámara Huskylens programado con MakeCode

En este post, vamos a explorar un proyecto fascinante y sencillo que combina inteligencia artificial con hardware accesible: un telefonillo o porterillo automático con reconocimiento facial utilizando una micro:bit y una cámara Huskylens. Por el tipo de conexión que incluye la Huskylens, cable Dupont, usaremos un robot Maqueen, también podríamos usar una placa extensora. Puedes ver detalles de cómo montar todo el proyecto en este vídeo, donde se muestra cómo crear un sistema que simula abrir una puerta (enciende un LED en este caso) sólo cuando reconoce una cara previamente registrada.

¿Qué necesitas para este proyecto?

Antes de sumergirnos en los detalles, aquí tienes la lista de materiales necesarios:

  • BBC micro:bit: La placa principal que controlará el sistema.
  • Cámara Huskylens: Un módulo de visión con inteligencia artificial que facilita el reconocimiento facial.
  • Maqueen (opcional): Un robot o placa de expansión que simplifica las conexiones.
  • 3 x pilas AAA: que alimentarán todo el sistema a través de Maqueen. Hay que recordar que la cámara consume bastante, con lo que si vemos que ésta se reinicia, puede ser que haya que cambiarlas.
  • 2 x extensores M3: para conectar mecánicamente la cámara al robot.
  • LED o actuador: Para simular la apertura de la puerta.
  • Cable micro-USB: lo usaremos para programar la micro:bit.

Además, necesitarás acceso a la plataforma MakeCode de Microsoft, que permite programar la micro:bit de forma visual y amigable. Instalaremos 2 extensiones, la del robot Maqueen y la de la cámara Huskylens.

¿Cómo funciona el proyecto?

El objetivo es crear un sistema que detecte rostros y active un mecanismo (como encender un LED) solo si la cara está registrada en la base de datos de la Huskylens.

Cuando pulsemos el botón A, la cámara intentará reconocer la cara, si la reconoce muestra un corazón y activa el led de Maqueen de la derecha según se mira. Si no la reconoce se activará el led de la izquierda.

Montaje del proyecto

Aquí está el flujo básico del proyecto, con lo diferentes pasos que tenemos que ir dando.

  1. Configuración inicial: Conecta la cámara Huskylens al robot Maqueen, utilizando el cable incluido.
  2. Entrenamiento de la IA: Usa la Huskylens para registrar las caras que tendrán acceso. La cámara es capaz de aprender y almacenar rostros de manera sencilla.
  3. Configuracion de comunicaciones: También tenemos que configurar la forma de comunicación (protocolo) entre la cámara y la micro:bit. Usaremos I2C.
  4. Programación en MakeCode: Escribe un programa que lea los datos de la Huskylens y, si detecta una cara conocida, active el LED (o cualquier otro actuador que simule la apertura de la puerta).
  5. Pruebas: Verifica que el sistema solo reacciona ante las caras registradas, ignorando las desconocidas.

Paso a paso: Programación en MakeCode

1. Conectar la Huskylens

La Huskylens se conecta a la micro:bit mediante el protocolo I2C. Asegúrate de que los pines estén correctamente conectados:

  • SDA y SCL para la comunicación, marcados como D y C en Maqueen y con los cables de colores Verde y Azul.
  • VCC y GND para la alimentación, son los cables Rojo y Negro y que conectaremos a + y – de Maqueen.

Si usas otra placa, las conexiones son similares, en el caso de esta placa de expansión de ELECFREAKS, usaremos el azul en CL y el verde en DA, equivalentes a los pines 19 y 20 de la micro:bit.


2. Configurar la Huskylens

La cámara Huskylens tiene un modo de reconocimiento facial que puedes activar desde su interfaz. Sigue estos pasos:

  • Enciende la cámara y selecciona el modo de reconocimiento facial.
  • Registra las caras que deseas que el sistema reconozca (puedes hacerlo directamente desde la pantalla de la Huskylens).
  • Asigna un ID a cada cara registrada para que la micro:bit pueda identificarlas.

También tenemos que configurar el tipo de comunicaciones, que será I2C

3. Programar en MakeCode

En MakeCode, utiliza las extensiones para Maqueen y para la Huskylens (puedes buscarlas en la sección de extensiones). Aquí tienes un ejemplo básico del código:

  • Inicialización: Configura la conexión con la Huskylens al iniciar el programa. Configura también el modo de reconocimiento de caras.
  • Evento Pulsar botón A: Cuando pulsemos el botón A la cámara comprobará si hay alguna cara a la vista.
  • Condicional: Si la Huskylens detecta una cara con un ID registrado, el programa enciende el LED derecho de Maqueen; de lo contrario, enciende el LED izquierdo.


Puedes usar este QR para acceder al programa.

En el vídeo se explica cómo estructurar este código de manera visual, usando bloques en MakeCode, lo que lo hace ideal incluso para principiantes.

4. Probar el sistema

Descargamos el programa a la micro:bit desde Makecode y copiamos el fichero «.hex» descargado a la unidad «Microbit».

Una vez programado, prueba el sistema presentando diferentes rostros frente a la cámara. Si todo está configurado correctamente, el LED (o actuador) se activará solo cuando la Huskylens reconozca una cara registrada.

Posibles mejoras y aplicaciones

Este proyecto es una excelente base para explorar más posibilidades:

  • Añadir un servomotor: En lugar de un LED, usa un servomotor para simular el movimiento de una cerradura.
  • Integrar notificaciones: Configura la micro:bit para enviar un mensaje o alerta cuando se detecte una cara desconocida.
  • Ampliar la base de datos: Registra más rostros o incluso otros objetos para aplicaciones diferentes, como un sistema de seguridad más avanzado.

Conclusión

Este proyecto de telefonillo automático con IA es una forma divertida y educativa de combinar hardware, programación y visión artificial. La micro:bit y la Huskylens son herramientas poderosas pero accesibles, y con MakeCode el proceso es intuitivo incluso para quienes están empezando. Si quieres ver el proyecto en acción y seguir los pasos detallados, no te pierdas el vídeo extendido. ¡Anímate a construir tu propio telefonillo inteligente y comparte tus resultados en El Cacharreo

¿Has probado algo similar con micro:bit o visión artificial? ¡Cuéntanos en los comentarios!

Telefonillo IA: Un proyecto sencillo con micro:bit y la cámara Huskylens programado con MakeCode
Etiquetado en: