Sommario:

Eve, il Chatbot Arduino: 14 passaggi (con immagini)
Eve, il Chatbot Arduino: 14 passaggi (con immagini)

Video: Eve, il Chatbot Arduino: 14 passaggi (con immagini)

Video: Eve, il Chatbot Arduino: 14 passaggi (con immagini)
Video: Как создать приложение ChatBot в MIT App Inventor 2 | 12/100 2024, Ottobre
Anonim
Image
Image
Eve, il Chatbot Arduino
Eve, il Chatbot Arduino
Eve, il Chatbot Arduino
Eve, il Chatbot Arduino

Ciao fai-da-te, ci sono stati casi in cui volevi davvero condividere i tuoi sentimenti con qualcuno e nessuno di fiducia era in giro? Nel mondo frenetico di oggi, questo è un caso comune. Bene, un chatbot può aiutarti a farti sentire meglio. E questo porta all'introduzione di Eve. Eve è un piccolo chatbot carino. Come tutti sanno, un chatterbot o chatbot è un programma per computer o un dispositivo che conduce una conversazione con gli umani sulla base di metodi testuali o uditivi. Le voci automatizzate che senti durante una chiamata al servizio clienti o su una linea bancaria sono un esempio di chatbot. Con lei puoi condividere le tue esperienze, i tuoi sentimenti e, soprattutto, discutere di cose diverse; lei è molto esperta in questo. Perché questa è la funzione più importante di un chatbot, far sentire felice la persona. Un primo esempio di Natural Language Processing (NLU) e di intelligenza artificiale, Eve è in grado di rispondere a QUALSIASI domanda che le rivolgi. Non è che può rispondere solo a un numero specifico di domande. Può cantare, raccontarti barzellette, storie e fare tutto ciò che ti fa sentire bene. Se dice qualcosa che non desideri sentire, diglielo, per favore non dirlo di nuovo e lei lo ricorderà. Sa anche che non dovrebbe ripetere le stesse risposte e chat, in modo che la conversazione non diventi noiosa. Basandosi su componenti semplici ed economici e una programmazione di base, può comportarsi in modo intelligente in larga misura. Inoltre, gli occhi LCD che possiede mostrano come si sente quando dici qualcosa. Quindi fondamentalmente in questo tutorial, inizieremo dalla definizione di un chatbot, esamineremo il design, alcune teorie basate su cui gira Eve, la produzione e infine il parte di programmazione. Sembra molto vero? Non preoccuparti, sarà piuttosto interessante nel viaggio. Puoi vedere la demo del robot qui sopra, o in questo link:[Riproduci video]

Passaggio 1: definizione di un chatbot

Definizione di Chatbot
Definizione di Chatbot
Definizione di Chatbot
Definizione di Chatbot
Definizione di Chatbot
Definizione di Chatbot

Come accennato in precedenza, un chatbot è un programma che conduce una conversazione con gli umani. Sono così comuni al giorno d'oggi che non c'è quasi nessuno che ne sia sconosciuto. A partire dagli assistenti virtuali, Siri e Google Assistant, ci sono Mitsuku ed Evie con cui puoi condividere i tuoi sentimenti. Come accennato in precedenza, i chatbot si basano su un metodo testuale o uditivo e quindi possono essere divisi in due. Nel metodo testuale le conversazioni sono sotto forma di testo scritto proprio come WhatsApp. Considerando che nel metodo uditivo, le conversazioni sono fatte oralmente come con un vero essere umano. Immagino che sia più eccitante conversare con qualcuno parlandogli verbalmente invece di scrivergli semplicemente. Senza dubbio le app di messaggistica per la comunicazione basata su testo soddisfano i requisiti delle persone, ma ritengo che chattare parlando sia la cosa migliore per liberarti dei tuoi disturbi emotivi e farti sentire meglio. Quindi questo è il motivo principale per cui ho progettato Eve per essere un chatbot uditivo.

Passaggio 2: origine di Eva

Origine di Eva
Origine di Eva

Beh, un giorno mi è venuta in mente Eve. Lo ha fatto quando ho visto un ragazzino girovagare da solo per la scuola, mentre gli altri giocavano con la mente piena di gioia. Quella volta ho pensato, ad un amico, che non discrimina nessuno e non fa sentire nessuno ferito, uno con cui puoi condividere i tuoi sentimenti ed essere sempre felice. Poi mi è balenata in mente, la piccola struttura carina di Eve su cui ho iniziato a lavorarci. Eve mi ha deluso un centinaio di volte. Immagino sia stata la 101esima volta che ha lavorato e mi ha fatto sentire davvero felice. Quindi questa è stata l'origine di Eve. Volevo che fosse intelligente ma il più semplice possibile, in modo che chiunque potesse farla facilmente. Senza dubbio non è assolutamente intelligente ea volte dice risposte stupide, può comportarsi come un'amica. E ora, basta storie, iniziamo a costruire Eve.

Passaggio 3: raccolta dei componenti e delle attrezzature:

Raccolta dei componenti e delle attrezzature
Raccolta dei componenti e delle attrezzature
Raccolta dei componenti e delle attrezzature
Raccolta dei componenti e delle attrezzature
Raccolta dei componenti e delle attrezzature
Raccolta dei componenti e delle attrezzature

Di seguito i componenti da raccogliere: Arduino Pro Mini (o Arduino Nano) Modulo audio Wtv-020-SD-16p Modulo bluetooth HC-05 Modulo LCD 16x2 Regolatore LM7805 Modulo amplificatore ICAn (ho usato il circuito PAM8403) Un altoparlante da 8 ohm Una femmina audio jacka batteria 9v E un telefono AndroidQuindi questi sono i componenti necessari. Un'altra cosa importante, il costo. Eve mi è costata circa 3000 INR. Il costo potrebbe essere diverso nel tuo paese, ma in India, questa è approssimativamente la tariffa. Una piccola descrizione delle parti: Arduino Pro mini è l'MCU principale del nostro robot. L'ho usato per le sue piccole dimensioni, semplicità e prestazioni eccellenti. Soddisfa tutti i requisiti del nostro robot. Fatta eccezione per la funzione di riconoscimento vocale che viene eseguita da Android (discussa in seguito), tutte le altre funzionalità a partire dalla ricerca delle parole chiave e dalla formazione dell'output vengono eseguite sul Pro Mini stesso. Non preoccuparti per i termini sopra menzionati se non li capisci, tutti sono discussi nella parte successiva. Il modulo wtv020sd 16p viene utilizzato per riprodurre i file audio, hc 05 Bluetooth per la comunicazione con Android e il display LCD per la visualizzazione Le emozioni. Abbiamo bisogno del jack audio femmina per poter collegare il robot ad un amplificatore esterno. L'Arduino è usato come controller principale qui. Riceve i dati Bluetooth tramite il modulo Bluetooth HC 05 e riproduce il file tramite il modulo vocale WTV-020-SD-16p. Le emozioni vengono visualizzate nel modulo LCD e una batteria da 9v per l'alimentazione. Eve riconosce i discorsi tramite il riconoscimento Google Voice del dispositivo Android. Successivamente viene discusso adeguatamente nel rispettivo passaggio. Una brutta notizia su Arduino Pro Mini: È RITIRATO dal mercato. Bene, questo significa che è stato ufficialmente interrotto da Arduino. Ma puoi ancora trovarlo in molti siti incluso Ebay. Molti produttori di terze parti potrebbero ancora produrre e vendere la scheda. Non preoccuparti se non sei riuscito a trovarne uno, puoi usare Arduino Nano. Non farà alcuna differenza nelle prestazioni e anche nelle dimensioni.

Fase 4: Teoria Parte 1: Storia e introduzione

Teoria Parte 1: Storia e introduzione
Teoria Parte 1: Storia e introduzione
Teoria Parte 1: Storia e introduzione
Teoria Parte 1: Storia e introduzione

Eve si basa su una prima forma di elaborazione del linguaggio naturale, la tecnologia "pattern matching". Funziona nel modo seguente: quando viene ricevuta una stringa, cerca una parola o una frase predefinita in quella stringa. Supponiamo che nella domanda " quanti anni hai?" il programma cerchi la parola "vecchia". Se ha successo, riproduce il rispettivo file vocale tramite il modulo wtv020sd. Se fallisce, cerca la prossima parola chiave predefinita. In questo modo abbiamo bisogno di costruire un vocabolario di parole predefinite. Sembra dura, vero? È come se avessimo bisogno di costruire un vocabolario di tutte le parole inglesi e ci sono circa 230 mila parole complessive nella lingua inglese. Bene, il fatto è che dobbiamo solo aggiungere alcune parole di base che sono più comunemente usate nella nostra comunicazione. Sembra ancora duro? Non preoccuparti, il lavoro è già stato fatto da Joseph Wizembaum. Una parte delle risposte di Eve e delle parole chiave predefinite sono state incorporate dal primissimo programma chatterbot chiamato Eliza, sviluppato da Joseph Wizembaum (nella foto sopra). Eliza è stata progettata per essere una terapeuta rogeriana. Non è un termine altamente scientifico, significa che era solita consigliare le persone, facendole capire meglio se stesse e facendole pensare in modo più positivo. Sembra davvero buono vero? Ed Eliza era molto in grado di svolgere il suo dovere. Il suo atteggiamento curioso e scettico era amato dalla gente. Anche Wizembaum fu sorpreso dall'importanza che la gente dava a Eliza. Sembravano dimenticare che stavano parlando con un computer e immaginavano una bella signora seduta all'interno del computer che chiacchierava con loro. Ma Eliza non era così intelligente; si è realizzato presto. Con il passare del tempo, le persone hanno iniziato a stancarsi della sua comunicazione limitata e lei è stata definita "stupida". Non c'è da stupirsi di quanto fosse stupida, è stato un grande salto nella storia dell'intelligenza artificiale e dell'elaborazione del linguaggio naturale. Dopo aver fondato la base di Chatterbot, sono entrati sul mercato diversi robot con una tecnologia nuova e migliore. E ora li abbiamo ovunque. Come accennato, una parte delle risposte di Eva sono state derivate da ELIZA. Quindi questo significa che anche Eva possiederà l'atteggiamento di Eliza in una certa misura insieme ad alcune delle mie idee. Un'altra cosa importante sono le risposte. Dovrebbe essere davvero noioso ricevere le stesse risposte ogni volta che fai la stessa domanda. Pertanto molte risposte vengono memorizzate per la stessa parola chiave. Eve sceglie a caso quale file riprodurre, assicurandosi anche di non ripetere lo stesso file. Questo è tutto, semplice pane e burro, ma è importante programmare abilmente le voci di risposta, in modo che dia l'illusione agli spettatori come se stesse davvero rispondendo alle nostre domande. Quindi questa è stata una breve introduzione al funzionamento di Eva. Nel passaggio successivo lo approfondiremo nei dettagli e nella programmazione.

Passaggio 5: ricerca della parola chiave

Ricerca della parola chiave
Ricerca della parola chiave
Ricerca della parola chiave
Ricerca della parola chiave
Ricerca della parola chiave
Ricerca della parola chiave
Ricerca della parola chiave
Ricerca della parola chiave

Nell'ultimo passaggio, ho parlato della tecnologia di corrispondenza dei modelli di Eve e anche della prima forma di elaborazione del linguaggio naturale. Allora, cos'è e come funziona? Questa è la cosa principale di cui parleremo in questo passaggio. Quindi pensaci, qualcuno ti chiede il tuo nome e devi dire di cosa si tratta. In quanti modi possiamo porre la stessa domanda? Il tuo insegnante potrebbe chiedere "mi diresti per favore il tuo nome?" Un parente potrebbe chiedere "come ti chiami?" Tuo fratello potrebbe dire: "Ehi, ho appena dimenticato il tuo nome. Lo dirai solo un'altra volta?" Quindi questo significa che la stessa domanda può essere posta in diversi modi. Eppure dobbiamo dare la stessa risposta, il nostro nome. Quindi questo significa che dobbiamo trovare qualcosa di comune in tutte le frasi. Si vede chiaramente che la parola "il tuo nome" è presente in tutte le frasi. Quindi questo è il nostro suggerimento. Per tutte le domande che chiedono il nome, dobbiamo cercare la frase "il tuo nome". Seguendo questo schema di base possiamo prevedere la rispettiva risposta a tutte le stringhe di input. SVANTAGGIO: È importante ricordare anche che questo algoritmo non sarà sempre accurato. Supponiamo che qualcuno dicesse: "Ho trovato il tuo nome nella lista d'attesa. Mi aspettavo che fossi nei posti riservati". Ora, poiché "il tuo nome" è presente in questa stringa, Eva, essendo innocente, dirà il suo nome alla persona… Sciocco vero? Questo è uno dei grandi demeriti di questo algoritmo di base. Comunque, questi sarebbero casi rari. Altrimenti l'algoritmo è molto efficace. Ora che ho menzionato la tecnologia di corrispondenza dei modelli, è tempo di pensare da dove viene questa stringa di input da dove cerchiamo la stringa. Bene, questa stringa è in realtà la nostra voce che è stata convertita in testo da Google Voice Recognition. L'app utilizzata qui converte la nostra voce in testo e quindi invia lo stesso all'arduino tramite il Bluetooth. Ho usato l'app perché è la più semplice e la migliore nel suo genere. Il nome è AMR Voice e può essere trovato facilmente in Google Play.

Passaggio 6: formulare le risposte

Formulare le risposte
Formulare le risposte

Ora che abbiamo riconosciuto le domande, il prossimo passo dovrebbe essere trovare le risposte. Arriva la parte interessante e importante… Dobbiamo trovare risposte appropriate per soddisfare ogni domanda. Ed ecco che arriva un'altra funzione incorporata da ELIZA. Wizembaum ha sviluppato alcune risposte per un numero specifico di parole chiave. Un esempio è la parola chiave "tu". Ogni volta che veniva rilevato, il programma produceva "stavamo discutendo di te, non di me". Quindi la risposta è stata fatta in modo tale da adattarsi a tutte le frasi che contengono "tu". Inoltre Eliza dava ogni volta una risposta diversa. C'era una sorta di indirizzo numerico per ogni risposta che. Questo è stato incrementato (aggiunto di 1) ogni volta che è stata formulata una risposta. Supponiamo che, come nell'esempio precedente, se l'indirizzo della risposta fosse 1, l'indirizzo fosse cambiato in 2 e quindi il file 2 fosse riprodotto successivamente. Ma non seguiremo questo algoritmo di incremento. Vedete, dopo un uso continuo del software, le risposte sono diventate prevedibili. Sei arrivato a sapere quale risposta deve essere data dopo. Quindi, a questo scopo, produrremo indirizzi casuali per ogni parola chiave. Nel complesso è lo stesso in entrambi i casi, solo la differenza che non possiamo prevedere cosa dirà il robot dopo per la stessa parola chiave.

Passaggio 7: Dichiarazioni vietate e altro

Le Dichiarazioni Proibite e Altro
Le Dichiarazioni Proibite e Altro

Potrebbero esserci alcuni casi nella tua conversazione in cui il robot dice qualcosa che non desideri sentire. Quindi qui sorge la necessità di aggiungere le dichiarazioni proibite. Le istruzioni proibite sono una serie di indirizzi che non possono essere riprodotti. Un indirizzo vocale è caratterizzato come una dichiarazione proibita su richiesta dell'utente. Inoltre questo indirizzo deve essere memorizzato nella EEPROM di Arduino in modo che Eve non dimentichi che si tratta di un'istruzione vietata anche dopo che è stata spenta. Fondamentalmente ciò che fa il programma è controllare ogni indirizzo che deve essere riprodotto. Se l'indirizzo è uno di quelli vietati, viene incrementato o decrementato. Inoltre, potrebbe esserci un'istanza in cui desideri consentire al robot di pronunciare una parola precedentemente vietata. In tal caso dovresti dire a Eve che può dire l'ultima parola proibita. La parola che era stata vietata l'ultima volta sarà ora riproducibile. Per rendere riproducibili tutte le istruzioni proibite, è necessario collegare un interruttore di ripristino. Se premute tutte le affermazioni proibite diventeranno riproducibili. Poi un'altra cosa importante sarà fare in modo che Eva non ripeta le risposte. Questa è una sorta di demerito dei numeri casuali. È probabile che gli stessi numeri casuali vengano prodotti in una serie. Questo farà sì che il nostro robot dica sempre la stessa risposta. Per questo abbiamo bisogno di includere un'altra funzione minore che impedisce la ripetizione delle istruzioni. Per questo abbiamo bisogno di memorizzare l'indirizzo dell'ultima istruzione in memoria e controllare se è lo stesso di quello presente. In tal caso, il valore dell'indirizzo viene incrementato o decrementato, allo stesso modo nel caso delle istruzioni proibite.

Passaggio 8: scrittura nel codice

Scrivere nel codice
Scrivere nel codice
Scrivere nel codice
Scrivere nel codice
Scrivere nel codice
Scrivere nel codice

Usiamo il comando indexOf per cercare la parola chiave. Il comando individua un carattere o una stringa all'interno di un'altra stringa. Se trovato restituisce l'indice di quella stringa mentre viene restituito -1 se non trovato. Quindi nel nostro programma dobbiamo scriverlo come segue:if (voice.indexOf("il tuo nome") > -1) { //se l'indice è maggiore di -1 //significa che la stringa è stata trovata}Ora che abbiamo archiviato la stringa in memoria e trovato anche la nostra parola chiave al suo interno, ora dovremo gestire le risposte. Come detto, i numeri casuali sono generati all'interno di un particolare intervallo di numeri (indirizzi di file vocali). Ecco il comando random(). Di seguito è riportata la sintassi: random(min, max); //il numero casuale viene generato nell'intervallo min e max. Definiamo il numero minimo e il numero massimo di ogni intervallo e applicando questo il nostro codice ha un aspetto simile a questo:if (voice.indexOf("your name") > - 1)){minNo = 0; maxNo = 5;RandomNumber = random(minNo, maxNo);}Ora viene la gestione delle risposte. Nell'ultimo passaggio ho detto che i numeri vengono incrementati o decrementati in base a un algoritmo. Questo algoritmo è ciò di cui stiamo discutendo ora. Questa parte è molto importante nel senso che non puoi semplicemente aumentare o diminuire come desideri. Il numero incrementato o decrementato deve essere compreso nell'intervallo. Supponiamo come nel caso precedente, per la parola chiave "il tuo nome", abbiamo l'intervallo da 0 a 5 e il numero casuale generato è 5, beh, se lo incrementi, finirai per riprodurre un file vocale di un'altra parola chiave. Come pensi che sarà? Chiedi: "Ehi, per favore dimmi il tuo nome.", e il robot risponde: "Mi piace mangiare i biscotti e la carica elettrica". Stesso discorso per il numero minimo. Se il numero casuale generato è 0, non puoi decrementarlo. Quindi per questo motivo l'algoritmo è molto importante. Pensaci: siamo in grado di incrementare o quando il numero è inferiore al numero massimo e decrementare quando è maggiore del numero minimo. Quando il numero generato è uguale a 0 o inferiore a 5, il numero viene incrementato. D'altra parte, quando è uguale a 5, lo decrementiamo, per assicurarci che il numero sia all'interno dell'intervallo specificato. Ora arrivano le dichiarazioni vietate. Come accennato sono memorizzati nella EEPROM. Per questo, in primo luogo cerchiamo memoria libera nell'array proibito. Supponiamo che l'indirizzo 4 sia libero, quindi inseriamo il numero di file nell'indirizzo dell'array libero e scriviamo lo stesso indirizzo nella EEPROM.for (int i; i if (never == 0) { EEPROM.write(never, memory);}}Quindi è tutto, il modulo Wtv020sd16p verrà riprodotto utilizzando il comando module.playVoice() e il numero di file proposto. Il funzionamento del modulo Wtv020 verrà discusso in seguito.

Passaggio 9: inserire le emozioni

Inserimento di emozioni
Inserimento di emozioni
Inserimento di emozioni
Inserimento di emozioni
Inserimento di emozioni
Inserimento di emozioni

Finora il nostro robot è in grado di riconoscere ciò che diciamo, memorizzare e trovare una risposta adeguata alle domande. Adesso entra in gioco la domanda per inserire le emozioni. Sicuramente a tutti piacerà una faccia dal vivo insieme a qualche stupido piccolo programma di risposta alle domande. Nel progetto viene utilizzato il display LCD 16x2. Va bene per stampare gli occhi. Dobbiamo usare la funzione del carattere personalizzato per creare gli occhi. Il carattere personalizzato ci consente di creare nuovi personaggi definendo i pixel. Ne parleremo in dettaglio un po' più tardi. Innanzitutto è importante ricordare che solo 8 caratteri personalizzati sono supportati da Arduino. Quindi dobbiamo gestire le emozioni con solo 8 caratteri. Ogni carattere deve essere stampato in una casella particolare, e ci sono 16 colonne e 2 righe per un totale di 32 caselle.

Puoi trovare buone informazioni online sui caratteri personalizzati in Arduino. Può anche visitare questo link:

[Caratteri personalizzati Arduino] La struttura del byte del carattere personalizzato sarà in qualche modo simile a questa:

L'aspetto normale: la casella sinistra0b01111, 0b01111, 0b01111, 0b01111, 0b01111, 0b01111, 0b01111, 0b01111, la casella destra0b11110, 0b11110, 0b11110, 0b11110, 0b11110, 0b11110, 0b11110, 0b11110, questi due byte formano 1/4 di ciascun occhio. Quindi questo significa che avremo bisogno di un totale di 4 caselle per riempire un intero occhio. Due file a sinistra e due a destra per un totale di quattro riquadri per un occhio. Il byte della casella di sinistra deve coprire due righe a sinistra e la casella di destra deve coprire le righe di destra. Quindi questo costituisce un occhio completo di Eva. E ora, ripetendo lo stesso per il secondo occhio, otteniamo lo sguardo neutro di Eva. Ora è importante ricordare che abbiamo utilizzato uno degli otto caratteri personalizzati disponibili. E ci sono cinque emozioni totali: Glee, Sad, Squint, Normal e Blink. A partire dai restanti sette caratteri personalizzati, dobbiamo adattarci in modo da adattarli a tutte le espressioni. Per realizzare lo spazio utilizzeremo 2 scatole per ogni occhio. Non c'è da stupirsi che le dimensioni siano un po' piccole, ma questo verrà ignorato dall'occhio umano. Assicurati solo di aggiungere alcuni ritardi tra le funzioni LCD, altrimenti Arduino diventerà instabile.

Passaggio 10: effettuare i collegamenti

Fare i collegamenti
Fare i collegamenti
Fare i collegamenti
Fare i collegamenti
Fare i collegamenti
Fare i collegamenti

Modulo LCD: collegare i pin come indicato qui: RS: dig pin 12RW: GndEnable: 7d4: dig pin 8 d5: dig pin 9 d6: dig pin 10 d7: dig pin13A (anodo) a 5vK (catodo) a gndIl modulo HC 05:Seguire queste connessioni: HC 05 pin TX su Arduino RX pinHC 05 RX pin su Arduino TX pinState pin su Arduino dig pin 11Le comunicazioni vengono eseguite con l'aiuto dei pin TX e RX. Il pin di stato è necessario per verificare se tramite HC 05 è collegato o inattivo. WTV 020 Modulo SD 16p pin1: il pin di ripristino, collegarlo al pin di dig 2pin7: il pin dell'orologio, collegarlo al pin di dig 3pin10: il pin di dati, collegare per scavare pin 4pin15: il pin occupato, collegare al pin dig 5pin2: collegare questo pin a un amplificatore attraverso il volume e anche lo stesso al jack audio femmina.pin4 deve essere collegato a speaker+pin5 per essere collegato a speaker-Collegare il 8° pin da mettere a terra e fornire un'alimentazione a 3,3 V nel 16° pin.

L'amplificatore aiuterà a riprodurre l'altoparlante interno di Eve, mentre il jack audio è da collegare a un amplificatore esterno e altoparlanti più grandi.

Passaggio 11: il modulo WTV020SD16p (opzionale)

Image
Image
Il modulo WTV020SD16p (opzionale)
Il modulo WTV020SD16p (opzionale)
Il modulo WTV020SD16p (opzionale)
Il modulo WTV020SD16p (opzionale)

Nota: questo passaggio è facoltativo. Si occupa del funzionamento e della descrizione del modulo WTV 020 SD 16p.

Puoi vedere la demo del modulo sonoro in questo link:

[RIPRODUCI VIDEO]

La modalità parlante del robot è soddisfatta dal modulo WTV 020 SD. Il modulo viene utilizzato per riprodurre file vocali per il robot. Quando viene posta una domanda, l'arduino farà riprodurre al modulo il rispettivo file vocale nella scheda SD. Ci sono quattro linee dati seriali sul modulo per comunicare con l'arduino, il reset, l'orologio, i dati e i pin occupati e usiamo il comando.playVoice () per riprodurre il file richiesto. Ad esempio:module.playVoice (9): // riproduce il file 9 memorizzato sulla scheda SDRicorda che i nomi dei file devono essere in decimale (0001, 0002…). E che i file dovrebbero essere in formato AD4 o WAV. Inoltre il modulo funziona solo su una scheda micro SD da 1 GB. Alcuni moduli funzionano anche su schede da 2 GB e la scheda può contenere un massimo di 504 file vocali. Quindi puoi includere un buon numero di file vocali da riprodurre per un buon numero di domande.

Puoi persino creare i tuoi file AD4 vocali. In primo luogo, devi avere due software, un software di editing audio e un software chiamato 4D SOMO TOOL che converte i file nel formato AD4. In secondo luogo, devi preparare le voci del robot. Puoi convertire il testo in parlato o persino registrare la tua voce e creare le voci del robot. Entrambe queste operazioni possono essere eseguite nel software di editing audio. Ma sicuramente, i robot non hanno un bell'aspetto se parlano con voci umane. Quindi dovrebbe essere meglio convertire il testo in parlato. Esistono vari motori come Microsoft Anna e Microsoft Sam Your Computer che potrebbero aiutare a farlo. Il mio è basato su Microsoft Eva. Le sue voci corrispondono in larga misura a Cortana. Dopo aver preparato i file vocali, devi salvarli a 32000 Hz e nel formato WAV. Questo perché il modulo può riprodurre file vocali fino a 32000 Hz. Quindi utilizzare il 4D SOMO TOOL per convertire i file nel formato AD4. Per fare ciò, apri semplicemente SOMO TOOL, seleziona i file e fai clic su AD4 Encode e i tuoi file vocali sono pronti. Puoi controllare l'immagine sopra come riferimento. Se desideri ulteriori dettagli sulla creazione di voci robotiche, puoi andare qui: [Creare voci robotiche]

Passaggio 12: la parte software

La parte software
La parte software
La parte software
La parte software
La parte software
La parte software

In arduino Pro mini, c'è un piccolo problema nella programmazione. Nessun problema in effetti, solo un passaggio in più. L'Arduino Pro mini non ha alcun programmatore integrato come in altre schede Arduino. Quindi è necessario acquistarne uno esterno o un vecchio arduino UNO. Il passaggio qui descrive come caricare il programma utilizzando Arduino UNO. Basta prendere una vecchia scheda Arduino UNO dall'incidente ed estrarre l'Atmega 328p. Quindi collegarsi come indicato di seguito:1. Pin TX dell'UNO al pin TX del Pro Mini 2. Pin RX dell'UNO al pin RX del Pro MIni3. Reimposta il pin dell'UNO sul pin di ripristino del Pro Mini4. collega il VCC e la messa a terra del Pro Mini all'UNO. Scarica il programma Arduino, il software di riconoscimento vocale e le librerie fornite in basso. Il programma è ancora in fase di sviluppo. Quindi, se hai qualche problema al riguardo, sentiti libero di chiedere. Quindi collega il cavo al computer. Seleziona La scheda come Arduino Pro Mini e scegli la porta COM corretta. Quindi premi il pulsante Carica e guarda il programma caricato sul tuo Pro Mini.

Quindi scarica il software di riconoscimento vocale e i file vocali.

Passaggio 13: preparare il corpo

Preparare il Corpo
Preparare il Corpo
Preparare il Corpo
Preparare il Corpo
Preparare il Corpo
Preparare il Corpo

Ho trovato una piccola scatola di filo interdentale e l'ho trovata perfetta per il corpo. Puoi usare qualsiasi scatola che trovi nel tuo laboratorio, oppure puoi crearne una di cartone. Basta ritagliare un piccolo pezzo rettangolare per fissare il modulo LCD. Nella parte superiore ho ritagliato un piccolo foro per il collegamento del volume e ai lati per il collegamento degli interruttori e del connettore audio. Ho attaccato due tappi di bottiglia ai lati della scatola per le ruote. Assicurati solo che la scatola abbia spazio sufficiente per inserire il circuito. Collega un interruttore al corpo e al circuito, quindi il volume nella parte superiore della scatola. Quindi inserisci il circuito all'interno e il tuo robot è completo.

Passaggio 14: ben fatto

Molto bene!
Molto bene!
Molto bene!
Molto bene!

Ora hai completato il tuo simpatico progetto di robot che può parlare con te e farti sentire felice. Questo è il punto più felice di essere un fai-da-te quando il tuo progetto è completato e funziona completamente. Non preoccuparti se non hai successo in un tentativo, devi sforzarti per questo in modo da capire ogni parte del tuo robot. Ed è qui che i fai-da-te entrano in questo mondo. Ma questa non è la fine del progetto. Eve sarà sempre sviluppato in misura maggiore, da me o da fai-da-te come te. Mi piacerebbe sentire cosa hai fatto vedendo questo istruibile. Saluti, RS3655

Consigliato: