Paso 3: Combinar el reconocimiento de voz con módulo MP3
Incluso con control de voz exitosa, parece que algo falta. ¿Qué pasa si el vehículo puede responder a nosotros? Mediante la adición de un módulo de mp3 a la instalación, esto será posible. Usé un mp3 player módulo – el DFRDuino jugador.
Una cosa vale la pena notar es que mejor pondría en una cinta en la parte posterior del módulo para evitar corto circuito mientras lo usa. En cuanto a los cables, mp3 módulo tiene un puerto serie pin, proporcionando cinco pernos incluyendo 5V, GND, RX, TX, hacia fuera.
Cable los pines excepto hacia fuera al puerto mp3 cableado del módulo de reconocimiento de voz como foto 2.
5V corresponde a 5V. Corresponde GND a GND. RX debe conectarse con TX y TX deben conectarse con RX como se muestra como cuadro 3.
Añadimos aquí un altavoz pequeño.
Paso 2: programación
Necesitamos programar después de terminar el cableado. Código de reproductor de MP3 se añadirán basado en el programa anterior. Archivos de audio se almacenan en una tarjeta micro SD, puede utilizar cualquiera que desee que corresponden a cada respuesta. Tal vez usted podría grabar sus propias respuestas así que parece que puedes chatear con el robot). Por favor, cabe señalar que estamos utilizando comunicación del puerto serial, por lo que el botón en el módulo de reconocimiento de voz debe apuntar a la UART en vez de 12 C.
El código que utilicé es el siguiente:
void finally (unsigned char n){ switch(n) // { case 0: Serial.println( "qian jin"); Serial.println("\\qian"); advance (255,255); break; case 1: Serial.println( "hou tui"); Serial.println("\\hou"); back_off (255,255); break; case 2: Serial.println( "zuo zhuan"); Serial.println("\\zuo"); turn_L (100,100); break; case 3: Serial.println( "you zhuan"); Serial.println("\\you"); turn_R (100,100); break; case 4: Serial.println( "ting zhi"); Serial.println("\\zhi"); stop(); break; case 5: Serial.println( "chang ge"); Serial.println("\\bo"); Serial.println("\\2"); break; case 6: Serial.println( "zan ting bo"); Serial.println("\\:p"); break; case 7: Serial.println( "ji xu bo"); Serial.println("\\:s"); break; case 8: Serial.println( "xia yi shou"); Serial.println("\\:n"); break; case 9: Serial.println( "shang yi shou"); Serial.println("\\:u"); break; default: Serial.println( "error"); Serial.println( " "); break; } }
Paso 3: Realizar la función
Me gustaría explicar los códigos claves mencionados anteriormente. Serial.println("\\qian") caso 0 es tener MP3 juego un named【qian】 de audio en la tarjeta SD. Del mismo modo, agregando Serial.println("\\hou") caso 1 es MP3 reproducir un audio named【hou】. Serial.println("\\:p") significa "parar" y Serial.println("\\:s") significa "continuar". Serial.println("\\:n") significa jugar la siguiente. Introducción detallada de estas órdenes está disponible en la tienda online.
Descargar el programa, entonces usted puede controlar este vehículo con voz de una manera integral. Cuando enviamos la orden de "avance", mp3 reproducirá "ejecutar la orden de avance". Es lo mismo con otras órdenes. Una cosa vale la pena notar es que añadimos la función de "música" para este vehículo y puede reconocer varias órdenes tales como "juego", "pausa", "continuar" anterior"y" siguiente ".