Cómo construir un convertidor de señal a voz

La lengua de signos es un sistema de comunicación a través de gestos visuales. Sin embargo, no todo el mundo entiende la lengua de signos. Por lo tanto, en este proyecto construiremos un dispositivo que convierta los gestos de las manos en voz.

Lo que se necesita: sensores flexibles, un Mini Player DF y un microcontrolador que tenga entrada analógica y admita comunicación en serie a través de un receptor/transmisor asíncrono universal (UART); usamos ESP32.

El ESP32 ofrece múltiples canales de entrada analógica, que admiten suficientes sensores flexibles para interactuar con las manos y los dedos de una persona (para transmitir gestos en lenguaje de señas). Sin embargo, para este proyecto, usaremos un único sensor flexible, que es suficiente para indicar comida, agua o medicamentos.

Puede agregar sensores más flexibles a su dispositivo, incluidos los suficientes para convertir completamente el lenguaje de señas americano en voz audible.

Componentes necesarios

  1. ESP32x1
  2. Mini reproductor DF x1
  3. Tarjeta MicroSD x1
  4. Altavoz x1
  5. Sensor flexible x1
  6. Resistencia de 330Ω x1
  7. Cables de conexión
  8. Protoboard o Perfboard

Conexiones de circuito
Para este proyecto se utiliza DOIT ESP32 DevKit versión 1. El diagrama de pines de esta placa ESP se encuentra a continuación.

DF Mini Player se utiliza para reproducir oraciones audibles convertidas del lenguaje de señas. Es un pequeño sistema de reproducción de música que reproduce archivos de audio desde una tarjeta microSD. Los formatos de archivo admitidos incluyen MP3, WAV y WMA. El módulo tiene una ranura para tarjeta microSD, un amplificador incorporado y un conector de audio de 3,5 mm para conectar altavoces o auriculares. Dispone de interfaces UART y USB para comunicarse con un microcontrolador.

Aquí está el diagrama de pines del DF Mini Player:

El módulo tiene las siguientes configuraciones de pines:

Conexiones:

  • Para conectar el DF Mini Player al ESP32, conecte los pines VCC y GND del Mini Player a los pines 3V3 y tierra del ESP32, respectivamente.
  • Luego conecte los pines RX y TX del DF Mini Player a los pines GPIO26 y GPIO27 del ESP32.
  • Luego conecte un altavoz (<3W) a los pines SPK1 y SPK2 del DF Mini Player.

Para reproducir DF Mini Player, los archivos de audio deben cargarse en una tarjeta MicroSD. Reproduciremos tres instrucciones de audio desde el dispositivo. Estas instrucciones se pueden convertir de texto a voz y descargar como archivos MP3 desde ttsmp3.com.

Las instrucciones de audio se adjuntan como archivos MP3 a continuación.

  • El archivo MP3 para la instrucción "Por favor, dame agua" como 1.MP3:
  • El archivo MP3 para la instrucción "Por favor, dame comida" como 2.MP3:
  • El archivo MP3 para la instrucción “Por favor, dame medicina” como 3.MP3:

Cargue estos archivos en una tarjeta MicroSD e inserte la tarjeta en la ranura del DF Mini Player.

Se utiliza un sensor flexible para detectar gestos con las manos (lenguaje de signos). Este sensor está conectado a un circuito divisor de voltaje con entrada analógica en el pin GPIO36.

El diagrama del circuito del dispositivo:

El sensor flexible se puede colocar en un guante o en los dedos de una persona con cinta adhesiva para que se doble con el dedo mientras usa gestos para comunicarse con el lenguaje de señas.

Bibliotecas requeridas
Para construir este proyecto, necesitará instalar dos bibliotecas en el IDE de Arduino: espSoftwareSerial y DFRobotDFMiniPlayer. Se requiere espSoftwareSerial para utilizar el software serial en el ESP32. DFRobotDFMiniPlayer se utiliza para trabajar con DF Mini Player.

Bosquejo de Arduino

Como funciona
El sensor flexible detecta los gestos de las manos mientras se comunican mediante lenguaje de señas. Cuando el sensor se dobla, su resistencia cambia, por lo que la salida de voltaje del circuito divisor de voltaje también cambia.

El ESP32 detecta la salida analógica del sensor flexible y la utiliza para determinar la instrucción/comando. DF Mini Player reproduce archivos MP3 desde una tarjeta MicroSD según instrucciones comunicadas a través de ESP32 a través de UART.

Código
El boceto comienza importando SoftwareSerial.h y DFRobotDFPlayerMini.h. Se declaran variables para las conexiones de pines RX y TX del DF Mini Player y se crea una instancia de un objeto serie de software.

A continuación, se crea una instancia de un objeto DF Mini Player y se declaran las variables para conectar la entrada analógica al sensor flexible. Se define una variable para almacenar el valor analógico y se inicializa a cero.

En la función de configuración, la velocidad en baudios para la comunicación serial y de software se establece en 9600 bps. DF Mini Player se inicia y su volumen se establece en 20.

En la función de bucle, el ESP32 lee la entrada analógica del sensor flexible. Según el valor de entrada analógica, el archivo MP3 del gesto detectado se reproduce llamando al método player.play.

Resultados

contenido relacionado

Regresar al blog

Deja un comentario

Ten en cuenta que los comentarios deben aprobarse antes de que se publiquen.