INFORMACIÓN
El Módulo de Reconocimiento de Voz Elechouse V3 es un dispositivo electrónico capaz de reconocer comandos de voz sin necesidad de conexión a internet ni procesadores externos complejos, únicamente de su alimentación de 4.5 a 5.5 VDC. Funciona mediante un controlador integrado que analiza los patrones de audio captados por un micrófono y los compara con comandos previamente entrenados por el usuario (soporta hasta 80 comandos de voz). El módulo permite almacenar palabras o frases cortas y, cuando detecta una coincidencia, puede mandar acciones programadas a través de su interfaz UART, para algún microcontrolador.
El Módulo de Reconocimiento de Voz Elechouse V3 se emplea en proyectos de domótica, robótica educativa, sistemas de asistencia y accesibilidad, y aplicaciones de control de dispositivos mediante comandos de voz, como el encendido de luces, activación de motores, apertura de puertas mediante relés o interacción con sistemas inteligentes sin conexión a internet. Además, es compatible con tarjetas de desarrollo como Arduino (Uno, Mega, Nano), ESP32, ESP8266, y otras basadas en microcontroladores AVR o ARM, gracias a su comunicación por UART y librerías disponibles para integración rápida.
ESPECIFICACIONES Y CARACTERÍSTICAS
- Tipo: Reconocimiento de Voz V3.
- Voltaje de Funcionamiento: 4.5 – 5.5 VDC.
- Consumo de Corriente: < 40 mA.
- Interfaces:
- Interfaz Digital: Nivel TTL de 5V para interfaz UART y GPIO.
- Interfaz Analógica: Conector de Micrófono Monocanal de 3.5 mm, e interfaz PIN de micrófono.
- Precisión de Reconocimiento: 99% (en un entorno ideal).
- Admite un Máximo de 80 comandos de voz, cada uno de 1500 ms (una o dos palabras habladas).
- Máximo 7 Comandos de voz efectivos al mismo tiempo.
- Dimensiones:
- PCB: 47 mm x 30 mm x 7 mm.
- Longitud de Micrófono: 165 mm (16.5 cm).
- Peso: 17 g.
DOCUMENTACIÓN Y RECURSOS
INFORMACIÓN ADICIONAL
¿Cómo probar el Módulo de Reconocimiento de Voz Elechouse V3?
Aquí tienes una forma muy sencilla de como probar el Elechouse V3.
Materiales Necesarios.
- Arduino UNO o similar.
- Módulo de Reconocimiento de Voz Elechouse V3.
- Cables Dupont o Tiras header.
- Led RGB SMD KY-009.
Diagrama de Conexión.

Entrenamiento.
Para el entrenamiento es necesario tener instalada ya la librería para Arduino, una vez hecho, se tendrá que cargar el ejemplo “vr_sample_train”, este sketch ayudará al reconocimiento de los comandos, en este caso se cargarán 6 comandos:
- CMD_MORADO.
- CMD_BLANCO.
- CMD_AMARILLO.
- CMD_AZUL.
- CMD_VERDE.
- CMD_APAGADO.
Cuando se cargue el programa, se abrirá el puerto serial en 115,200 baudios y se tendrá el menú de instrucciones; para grabar los comandos se debe usar el comando sigtrain, acompañado de la posición del comando junto con el nombre que se le dará, por lo que tendremos que enviar la siguiente información a través del COM:
- sigtrain 0 CMD_MORADO.
Cuando lo reciba el módulo pedirá que se diga en el micrófono, se podrá solo decir la palabra “morado”, esto lo pedirá dos veces, para asegurar la palabra, nos enviará un mensaje diciendo: “Record 0 Trained”, indicando que se ha grabado correctamente; así lo haremos con todos los colores hasta llegar al comando apagado. Posteriormente, con la instrucción “load 0 1 2 3 4 5 “, cargaremos todas las palabras, el monitor dará el siguiente mensaje: “Load sucess: 6”, indicando que todo ha sido exitoso.
Para una rápida verificación se puede usar la instrucción “vr”, la cual indicará del 0 al 5 que se ha grabado alguna información y que está validado; una vez que se termine con el entrenamiento se cargará el código para reconocer los comandos grabados y las acciones que harán.
Código de Acción.
#include <SoftwareSerial.h>
#include "VoiceRecognitionV3.h"
VR myVR(2,3); // VR module: 2=RX, 3=TX
uint8_t buf[64];
// Pines KY-009
const int pinR = 9;
const int pinG = 10;
const int pinB = 11;
// IDs de comandos grabados (usar uint8_t evita ambigüedad)
const uint8_t CMD_MORADO = 0;
const uint8_t CMD_BLANCO = 1;
const uint8_t CMD_AMARILLO = 2;
const uint8_t CMD_AZUL = 3;
const uint8_t CMD_VERDE = 4;
const uint8_t CMD_APAGADO = 5;
// Función para encender el color
void setColor(int R, int G, int B){
analogWrite(pinR, R);
analogWrite(pinG, G);
analogWrite(pinB, B);
}
void setup(){
myVR.begin(9600);
Serial.begin(115200);
Serial.println("Control de LED RGB por voz");
pinMode(pinR, OUTPUT);
pinMode(pinG, OUTPUT);
pinMode(pinB, OUTPUT);
// Opcional: limpiar el recognizer (comentar si no quieres borrar)
if(myVR.clear() == 0){
Serial.println("Recognizer cleared.");
} else {
Serial.println("No se encontró VoiceRecognitionModule (o clear falló).");
}
// Cargar comandos: casteo no necesario porque son uint8_t
myVR.load(CMD_MORADO);
myVR.load(CMD_BLANCO);
myVR.load(CMD_AMARILLO);
myVR.load(CMD_AZUL);
myVR.load(CMD_VERDE);
myVR.load(CMD_APAGADO);
// Apagar al inicio
setColor(0,0,0);
}
void loop(){
int ret = myVR.recognize(buf, 50);
if(ret > 0){
Serial.print("Reconocido ID: ");
Serial.println(buf[1], DEC);
switch(buf[1]){
case CMD_MORADO:
setColor(255, 0, 255);
break;
case CMD_BLANCO:
setColor(255, 255, 255);
break;
case CMD_AMARILLO:
setColor(255, 255, 0);
break;
case CMD_AZUL:
setColor(0, 0, 255);
break;
case CMD_VERDE:
setColor(0, 255, 0);
break;
case CMD_APAGADO:
setColor(0, 0, 0);
break;
default:
Serial.println("Comando desconocido");
break;
}
}
}
Resultados.
Cuando se cargue el código al Arduino, se podrá abrir el monitor serial y decir los comandos al micrófono, lo que hará el LED RGB, encienda en el color que se haya dicho, ahora bien, es muy importante, que el tono de voz que se usó en el entrenamiento sea el mismo que se está usando para la prueba, ya que de lo contrario se tendrán problemas en el funcionamiento

TPA3116 Amplificador de Audio Estereo Doble Canal 120W



























Valoraciones
No hay valoraciones aún.