El autor de Instructables bajo el apodo Utsource le dice cómo usar la biblioteca Talkie, que le permite sintetizar el habla con Arduino. Este no es un sintetizador de voz que puede usar en su teléfono inteligente, tableta o PC, y que puede expresar cualquier texto. El conjunto de palabras aquí es fijo, pero hay más de mil (en total, se proporcionan varios diccionarios conectados). Esta biblioteca implementa un algoritmo de síntesis de software, implementado al mismo tiempo en hardware en chips TI.
Mentiras de la biblioteca talkie aqui, también se puede descargar a través del administrador de la biblioteca ingresando su nombre en la barra de búsqueda. El asistente muestra esto en la captura de pantalla:
La biblioteca no requiere la expansión de RAM, ROM, ni la adición de ningún sintetizador de hardware. La síntesis de voz es totalmente programática, se emite una señal de audio usando PWM para la salida 3. Allí simplemente puede conectar un cabezal dinámico a través de una resistencia, o puede usar un amplificador adicional. En el segundo caso, el filtro de paso bajo entre el Arduino y el amplificador es deseable, pero el maestro no lo tiene. Con un amplificador potente, el filtro de paso bajo se vuelve obligatorio. El amplificador se puede realizar en cualquier elemento base, el maestro selecciona el chip LM386. Toma el circuito de conmutación como estándar, está claro que el micrófono y la resistencia de carga que se muestran en él no serán necesarios para él: la fuente de señal será Arduino.
Él modela este circuito en el programa Fritzing:
Y se basa en una placa de pruebas como la placa de pruebas:
Para probar la biblioteca en acción, el asistente abre el editor de bocetos en el IDE de Arduino:
Y él marca este código:
#include "Talkie.h" //Talkie.h se usa para inicializar esta biblioteca y configurar el pin digital 3 de Arduino como pin de salida
#include "Vocab_US_Large.h" //Vocab_US_Large.h se usa para usar las alertas
#include "Vocab_Special.h" //Vocab_Special.h se usa para usar la pausa
Voz talkie // define un objeto "valor" para usar los comandos
configuración nula () {
}
bucle vacío () {
voice.say (spPAUSE2);
voice.say (sp2_DANGER);
voice.say (sp2_DANGER);
voice.say (sp3_STORM);
voice.say (sp3_IN);
voice.say (sp3_THE);
voz.say (sp3_NORTH);
/ * El primer comando voice.say (spPAUSE2) es hacer una breve pausa mientras repite el mensaje de alerta. Y los siguientes comandos son simples palabras que implican: PELIGRO PELIGRO TORMENTA EN EL NORTE. * /
}
El programa conecta una biblioteca Talkie previamente instalada y dos diccionarios, uno de los cuales es necesario para hacer una pausa entre las palabras. Este sintetizador de voz no comprende signos de puntuación ni abreviaturas como PST y PST. Cuando comience el programa, pronunciará monótonamente la frase "peligro, peligro, tormenta desde el lado norte".
La biblioteca es adecuada para usuarios de arduino que no desean comprar pantallas bastante caras. Habiendo ocupado con el cabezal dinámico, sin o con un amplificador, solo una "pata", es posible realizar la salida en forma de discurso de frases bastante largas, y si toma unas pocas "patas" más con los botones, entonces el menú, incluido multinivel