Encuentra tu pasión a solo 4,17 US$/mes | Aprende Robótica, IA e IOT.

Control de Pinza Robótica con IA | Aprende Robótica para Niños

En el tutorial anterior armamos nuestro brazo robótico con Arduino impreso en 3D, pieza por pieza, hasta verlo moverse por primera vez. 

Si todavía no has realizado ese proyecto, te recomendamos revisarlo antes de continuar, ya que en este tutorial partiremos de ese brazo robótico completamente ensamblado y funcionando. 

Hoy vamos a dar un paso distinto. Vamos a utilizar inteligencia artificial en este brazo robótico.

Y para empezar, vamos a hacer algo muy simple, pero a la vez muy interesante: controlar únicamente la pinza.

En el proyecto anterior, abrir y cerrar la pinza dependía de presionar teclas. Esta vez, eso cambia por completo. Ya no vamos a utilizar el teclado para controlar la pinza. En su lugar, vamos a dar la orden con nuestra propia mano.

La cámara va a reconocer nuestra mano, identificar sus articulaciones, y usar esa información para decidir si la pinza debe abrirse o cerrarse. Todo esto lo vamos a lograr sin escribir una sola línea de código, usando programación en bloques con el mismo software del tutorial anterior Pictoblox.

¿Cómo usar inteligencia artificial con Arduino en PictoBlox?

En el tutorial anterior ya trabajamos con PictoBlox para programar nuestro brazo robótico mediante bloques. Sin embargo, esta herramienta tiene una capacidad adicional que nos permitirá llevar este proyecto a un siguiente nivel.

Además de controlar Arduino, PictoBlox incorpora diferentes módulos de inteligencia artificial que permiten crear aplicaciones capaces de interpretar información del mundo real.

Para este proyecto utilizaremos la extensión de Detección del cuerpo humano, una herramienta que emplea visión artificial para reconocer diferentes partes del cuerpo en tiempo real a través de la cámara.

Gracias a esta extensión, PictoBlox puede identificar puntos clave como:

  • Hombros.
  • Codos.
  • Muñecas.
  • Manos.
  • Articulaciones de los dedos.

Toda esta información estará disponible mediante bloques, por lo que no necesitaremos desarrollar algoritmos complejos de inteligencia artificial. Simplemente arrastraremos los bloques necesarios para que el programa detecte la posición de nuestra mano y decida cuándo abrir o cerrar la pinza robótica.

¿Cómo agregar la detección del cuerpo humano en PictoBlox?

Activar esta función es muy sencillo.

  1. Haz clic en Añadir más extensiones, ubicado en la esquina inferior izquierda de PictoBlox.
  2. Busca la extensión Detección del cuerpo humano.
  3. Haz clic para agregarla al proyecto.

Programación: ¿Cómo saber si la mano está abierta o cerrada?

Los bloques de inteligencia artificial de PictoBlox nos ayudan a obtener las coordenadas de cada uno de los puntos de nuestros dedos.

El problema es que esas coordenadas, por sí solas, no nos dicen si la mano está abierta o cerrada.

Para resolver esto, vamos a usar un pequeño truco: calcular la distancia entre dos puntos del dedo medio.

La fórmula

Es más sencilla de lo que parece. Consiste en sacar el valor absoluto de la resta entre:

  • La posición en Y del punto superior del dedo.
  • La posición en Y del punto inferior del dedo.

¿Por qué funciona esto?

Cuando el dedo está estirado, el punto superior y el punto inferior quedan muy separados en el eje Y. Por lo tanto, la distancia entre ambos es grande.

Cuando el dedo está doblado, esos dos puntos se acercan entre sí. La distancia entre ambos es pequeña.

Esa diferencia es justamente lo que vamos a usar para decidir si la pinza debe abrirse o cerrarse.

Ahora vamos a convertir esa lógica en bloques. Sigue la siguiente imagen de referencia para armar el programa completo en PictoBlox. 

Antes de empezar, hay un detalle importante: necesitamos crear una variable llamada distancia.

  • Tipo: número.
  • Alcance: para todos los objetos.

🧠 Aprende IA con Arduino

Explora nuestro eBook con proyectos guiados paso a paso para aprender inteligencia artificial con Arduino desde cero, en casa o en el aula.

Esta variable es la que va a almacenar, en todo momento, el resultado de la fórmula que acabamos de explicar. Gracias a ella, el programa puede comparar ese valor y decidir si la pinza debe abrirse o cerrarse.

Pruebas experimentales: ¿funciona todo correctamente?

Con el programa ya armado, es momento de ponerlo a prueba.

Antes de ejecutar: revisa la conexión con Arduino

Como estamos trabajando en Modo Escenario, es fundamental revisar la conexión con Arduino antes de darle play al programa.

Este es uno de los errores más comunes al trabajar con PictoBlox: ejecutamos el programa, nada funciona, y la causa casi siempre es la misma, el Arduino no está conectado.

Cómo ejecutar la prueba

Una vez confirmada la conexión, sigue estos pasos:

  1. Haz clic en la bandera verde para iniciar el programa.
  2. Se activará la cámara.
  3. Muestra tu mano frente a ella (derecha o izquierda, el sistema detecta una sola mano a la vez).
  4. Abre y cierra tu mano lentamente.

¿Qué deberías observar?

Cada vez que abres y cierras la mano, la pinza del brazo robótico hace exactamente lo mismo: se abre y se cierra en tiempo real.

Si esto ocurre, todo el sistema está funcionando correctamente:

  • La cámara detecta la mano.
  • Se calcula la distancia entre los puntos del dedo medio.
  • Esa información llega al Arduino y mueve la pinza.

Así de simple, logramos controlar un brazo robótico usando únicamente los gestos de nuestra mano.

🧠 Aprende IA con Arduino

Explora nuestro eBook con proyectos guiados paso a paso para aprender inteligencia artificial con Arduino desde cero, en casa o en el aula.

Ingrese a su cuenta