ROBÓTICA

Seguimiento facial con ARDUINO UNO (2º parte)

Artículo redactado por Ademir Bermúdez, colaborador de Revista de Robots

Ademir Bermúdez es investigador de El Salvador, imparte conferencias a nivel internacional y es CEO de ESROBOTICA

Este artículo fue publicado en el nº 11 de nuestra Revista

Profesor Ademir Bermudez

Este artículo continua con el proyecto de seguimiento facial del robot A07 mediante diferentes versiones, enfocándonos solo en la cámara del robot por medio de la placa ARDUINO UNO conectado a la computadora, enfocándonos en la cámara y cabeza del robot se agregarán componentes para comenzar a realizar una interacción con este tipo de robot. Para lograrlo tomaremos una foto y buscaremos que el robot realice algún movimiento o sonido por medio de la cámara de ARDUCAM y su aplicación para PC. Es por ello que utilizaremos los siguientes componentes:

  • Una bocina de 8 ohm 0.25w,
  • Un condensador 1000 microfaradios con 25 voltios
  • Un mini servo MG 90S

El mini servo servirá para mover la cabeza y bocina para emitir un sonido, ambos en momentos determinados durante la toma de la fotografía.

Posteriormente en la siguiente versión de este proyecto de robótica agregaremos otros componentes para detectar movimientos en base a patrones y finalizaremos con Python para detentar objetos y patrones de rostro. De este modo seremos capaces de crear acciones en el robot en base a la secuencia de artículos.

Para la versión 2 tenemos las siguientes conexiones en Arduino:

  • Cámara OV2640 es: VCC(5V), GND CS (pin 7), MISO (pin 12), MOSI (pin 11) y SCK (pin 13), SDA (pin A4), SCL (pin A5).
  • Mini servo es: VCC(5v), GND, señal pin 5
  • Bocina es: GND, señal pin 6, con un condensador

En esta versión el robot A07 moverá la cabeza horizontalmente en giros de 20° a 160° grados.

El esquema sería de la siguiente manera:

Utilizaremos siempre el modelo de cámara OV2640 y con la librería ARDUCAM, en base a la versión 1, modificaremos el código de ejemplo del modelo, agregaremos el servo y el sonido con un tono de ejemplo.

Se modificará el código de la versión 1 en tres momentos:

  • En la creación de las variables y librería a usar
  • En la creación de dos funciones una para sonido y otra para mover la cabeza
  • En agregar dichas funciones en los momentos deseados dentro de la captura de foto.

Momento 1:

Las conexiones mostradas son para ARDUINO UNO registrado, se agregará la librería de servo, se declarará una variable llamada cabeza tipo servo, también dos variables tipo enteros con los nombres pin zumbador y frecuencia asignados los números 6 y 220, el primero será para el pin digital de la bocina y la segunda la frecuencia que disponga.

Momento 2:

Con estas variables globales podemos crear nuestras propias funciones dentro del proyecto, por ejemplo, bocina1() y servo1(). Ambas funciones realizarán procesos durante las fases de ejecución. Una función servirá para un sonido de duración de un segundo con una frecuencia de 220, la otra función será para mover la cabeza de 20 a 160 grados y viceversa.

Momento 3:

Estas dos funciones agregadas se podrán incluir en cualquier parte del proyecto, es decir, por ejemplo si la persona toma una foto de un tamaño especifico, el robot educativo emitirá un sonido o moverá la cabeza al realizar la toma fotográfica.

Con esto nuestro robot ya puede emitir sonidos y mover su cabeza, en base a la toma de la foto que se ha solicitado. Ahora podemos empezar a imaginar qué más podemos agregar a nuestro proyecto ya que las posibilidades son infinitas y la única limitación es nuestra imaginación.

En el siguiente artículo mostraremos cómo podemos detectar patrones con ARDUINO UNO.

Artículo redactado por:

  • Ademir Bermúdez Aguilar

Revista de Robots te recomienda:

Esta Web utiliza Cookies para mejorar tu experiencia. Si las aceptas, asumimos que estás de acuerdo con ellas. OK Leer Más