Costruisci un sintetizzatore vocale per VIC-20

I sintetizzatori vocali per i sistemi legacy stanno diventando sempre più difficili da trovare. Nel tempo che fu c’erano le unità di fascia alta che presentavano processori di traduzione da testo a voce. I sistemi Cadillac erano il “Type-N-Talk” e il “Personal Speech System” della Votrax.

Poi c’erano le unità di fascia bassa, che richiedevano la traduzione manuale di allofoni o fonemi dalle tabelle nei manuali, combinata con PEEK e POKE, per formare parole e frasi. Lo scopo di questo progetto è simulare le unità di fascia alta del tempo. La sfida più grande oggi è trovare parti moderne disposte a comunicare a 1200 baud.

Ad esempio, il sintetizzatore allophone SpeakJet, combinato con un microprocessore a 8 bit programmato con regole da lettera a suono per la sintesi vocale (come il TTS256), popolare nella robotica odierna, funzionerà solo a 9600 baud. È troppo veloce per il povero vecchio VIC! Oggigiorno è effettivamente più facile (ed economico) dedicare un intero computer e software all’attività rispetto a un approccio puramente al silicio.

La dedizione di un computer a un’attività specifica come parte di un sistema più ampio non è così diversa dalle periferiche intelligenti dell’epoca, come le unità disco e le stampanti, in cui l’elaborazione veniva scaricata sul dispositivo. Oggi questo è un luogo comune. Siamo circondati da sistemi dedicati interconnessi in modi altamente flessibili. Persino i “giardini recintati” dei nostri telefoni cellulari, tablet e apparecchi di consumo hanno sistemi operativi completi sotto le loro eleganti interfacce utente.

Quindi, questa soluzione espone alcune cose davvero interessanti:

  • Raspberry Pi (University of Cambridge Computer Laboratory);
  • Configurazione Debian Linux; input / output generico a livello hardware (GPIO);
  • Comunicazioni seriali TTL;
  • convertitori di livello logico;
  • il sistema di sintesi vocale del Festival (manuale offline in formato PDF) (Centre for Speech Technology Research dell’Università di Edimburgo e Carnegie Mellon University) che dispone di un interprete dei comandi basato su schema (SIOD) per il controllo;
  • tecniche di saldatura di base e altro ancora!

Questo progetto può essere facilmente completato in un fine settimana e fatto insieme a un bambino o un amico. Sono necessari solo un Raspberry Pi, componenti semplici e saldature di base. Quello che avrai alla fine è un’unità che funziona in modo molto simile ai sistemi Votrax di fascia alta di quel tempo. …

APRI un canale di comando per scrivere e STAMPA le frasi e le parole che vuoi pronunciare. Adesso

Teoria di funzionamento:

La comunicazione è solo in una direzione: Il Vic parla e Pi ascolta.

Per la comunicazione seriale fuori dalla porta utente sono necessari solo due fili: CB2 e GROUND. La linea CB2 oscilla tra + 5v e 0v mentre i bit di dati scorrono lungo il filo uno dopo l’altro.

La velocità è fissata a 1200 bit al secondo. Impostiamo quel tasso quando apriamo il canale: OPEN2,2,1, CHR $ (8).

Affinché Pi ascolti le comunicazioni seriali sulla sua porta GPIO, sono necessari solo due fili: RXD e GROUND.

Pi cerca l’oscillazione tra + 3v e 0v sul pin RXD per identificare ogni bit. Il Pi deve sapere di ascoltare alla stessa velocità con cui i bit stanno fluendo, 1200 bit al secondo, in modo da poter ricostruire i dati.

I dati sono inquadrati come 8 bit di dati separati da 1 bit di stop. Finché il mittente e il destinatario sanno come sono impacchettati i dati e la velocità con cui fluiscono, la comunicazione può avvenire senza discrasie.

Il problema sono le tensioni, perché non vogliamo friggere Pi urlando con + 5v. È progettato per + 3v. È qui che entra in gioco il convertitore di livello logico. Abbassa la tensione di linea in uscita da Vic da + 5v a + 3v offrendo un trasformatore step-down tra il suo pin RXI sul lato ad alta tensione e il suo pin RXO sul lato a bassa tensione .

(Potrebbe anche offrire il servizio di un trasformatore step-up per i dati che fluiscono nella direzione opposta, ma non ne abbiamo bisogno.)

Questo è tutto sull’hardware. Tutto il resto è software.

Leggi qui l’articolo completo e le istruzioni per completare il progetto.

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *