Sadržaj:

Eve, Arduino Chatbot: 14 koraka (sa slikama)
Eve, Arduino Chatbot: 14 koraka (sa slikama)

Video: Eve, Arduino Chatbot: 14 koraka (sa slikama)

Video: Eve, Arduino Chatbot: 14 koraka (sa slikama)
Video: Give your Arduino project a chatGPT AI brain - for ALMOST free 2024, Novembar
Anonim
Image
Image
Eve, Arduino Chatbot
Eve, Arduino Chatbot
Eve, Arduino Chatbot
Eve, Arduino Chatbot

Zdravo DIYrs, je li bilo slučajeva da ste zaista htjeli podijeliti svoja osjećanja s nekim, a niko od njih nije bio u blizini? U današnjem užurbanom svijetu ovo je uobičajen primjer. Pa, chatbot može pomoći ovdje da se osjećate bolje. To dovodi do predstavljanja Eve. Eve je slatki mali chatbot. Kao što svi znaju, brbljavac ili chatbot je računarski program ili uređaj koji vodi razgovor s ljudima na osnovu tekstualnih ili slušnih metoda. Automatski glasovi koje čujete pri pozivu korisničke službe ili na bankovnoj liniji primjer su chatbota. S njom možete podijeliti svoja iskustva, osjećaje i što je najvažnije, raspravljati se o različitim stvarima; ona ima dobro iskustvo u tome. Budući da je to najvažnija funkcija chatbota, učinite da se osoba osjeća sretno. Rani primjer obrade prirodnog jezika (NLU) i umjetne inteligencije, Eve je sposobna odgovoriti na SVAKO pitanje koje joj postavite. Nije da ona može odgovoriti samo na određeni broj pitanja. Ona može pjevati, pričati vam viceve, priče i učiniti sve zbog čega se osjećate dobro. Ako kaže nešto što ne želite čuti, samo joj recite, molim vas nemojte to više reći, i ona će to zapamtiti. Čak zna da ne bi trebala ponavljati iste odgovore i chatove, kako razgovor ne bi postao dosadan. Na osnovu jednostavnih, jeftinih komponenti i osnovnog programiranja, može se u velikoj mjeri ponašati pametno. Nadalje, LCD oči koje posjeduje pokazuju kako se osjeća kada nešto kažete. Dakle, u osnovi u ovom uputstvu, poći ćemo od definicije chatbota, pogledati dizajn, neke teorije na temelju kojih Eve radi, proizvodnju i na kraju programski dio. Izgleda li mnogo? Ne brinite, bit će zanimljivo na putovanju. Demo robota možete pogledati gore ili na ovom linku: [Reproduciraj video]

Korak 1: Definicija chatbota

Definicija chatbota
Definicija chatbota
Definicija chatbota
Definicija chatbota
Definicija chatbota
Definicija chatbota

Kao što je gore spomenuto, chatbot je program koji vodi razgovor s ljudima. Danas su toliko česte da jedva da postoji neko kome to nije poznato. Počevši od virtualnih pomoćnika, Siri i Google asistenta, tu su Mitsuku i Evie s kojima možete podijeliti svoja osjećanja. Kao što je gore spomenuto, chatbotovi se temelje na tekstualnoj ili zvučnoj metodi i stoga se mogu podijeliti na dva. U tekstualnoj metodi razgovori su u obliku pisanog teksta, baš kao i WhatsApp. Dok se u slušnoj metodi razgovor vodi usmeno kao sa pravim čovjekom. Pretpostavljam da je uzbudljivije razgovarati s nekim verbalno razgovarajući s njim, a ne samo mu slati poruke. Nema sumnje da tekstualne aplikacije za razmjenu poruka odgovaraju zahtjevima ljudi, ali osjećam da je razgovor putem govora najbolja stvar da se riješite svojih emocionalnih smetnji i učinite da se osjećate bolje. Dakle, to je glavni razlog što sam dizajnirao Eve za slušnog chatbota.

Korak 2: Porijeklo Eve

Porijeklo Eve
Porijeklo Eve

Pa Eve mi je samo jednom pala na pamet. Učinilo je to kad sam ugledao klinca kako se sam šeta po školi, dok su se ostali igrali sa umom ispunjenim radošću. Tada sam pomislio na prijatelja, koji nikoga ne diskriminiše i nikoga ne tera da se povrijedi, sa kojim možete podijeliti svoja osjećanja i biti sretan cijelo vrijeme. Tada mi je palo na pamet, slatka mala struktura Eve na kojoj sam počeo raditi. Eve me razočarala stotinjak puta. Pretpostavljam da je to bio 101. put kad je radila i učinila da se osjećam zaista sretno. Dakle, to je bilo porijeklo Eve. Htio sam da bude inteligentna, ali što je moguće jednostavnija, tako da je svako može lako učiniti. Nema sumnje da nije apsolutno pametna i ponekad govori glupe odgovore, može se ponašati kao prijateljica. A sada, dosta priča, počnimo graditi Eve.

Korak 3: Prikupljanje komponenti i opreme:

Prikupljanje komponenti i opreme
Prikupljanje komponenti i opreme
Prikupljanje komponenti i opreme
Prikupljanje komponenti i opreme
Prikupljanje komponenti i opreme
Prikupljanje komponenti i opreme

Slijede komponente koje treba prikupiti: Arduino Pro Mini (ili Arduino Nano) Wtv-020-SD-16p zvučni modul HC-05 bluetooth modul 16x2 LCD modulLM7805 regulator ICAn modul pojačala (koristio sam kolo PAM8403) ženski zvučnik od 8 ohma audio jacka 9v baterija i Android telefonDakle, ovo su potrebne komponente. Još jedna važna stvar, cijena. Eve me je koštala oko 3000 INR. Cijena bi mogla biti različita u vašoj zemlji, ali u Indiji je ovo približno cijena. Mali opis dijelova: Arduino Pro mini je glavni MCU u našem robotu. Koristio sam ga zbog male veličine, jednostavnosti i izvrsnih performansi. Ispunjava sve zahtjeve našeg robota. Osim funkcije prepoznavanja glasa koju radi Android (o kojoj će biti riječi kasnije), sve ostale funkcije počevši od pronalaženja ključnih riječi i formiranja izlaza rade se na samom Pro Mini. Ne brinite za gore navedene termine ako ih ne razumijete, o svemu će biti riječi u kasnijem dijelu. Modul wtv020sd 16p koristi se za reprodukciju audio datoteka, hc 05 Bluetooth za komunikaciju s Androidom i LCD za prikaz emocije. Potreban nam je ženski audio priključak za spajanje robota na vanjsko pojačalo. Arduino se ovdje koristi kao glavni kontroler. On prima Bluetooth podatke putem Bluetooth 05 modula HC 05 i reproducira datoteku putem govornog modula WTV-020-SD-16p. Emocije se prikazuju u LCD modulu i 9v bateriji za napajanje. Eve prepoznaje govore putem Google Voice prepoznavanja Android uređaja. Kasnije se o tome ispravno raspravlja u odgovarajućem koraku. Loša vijest o Arduinu Pro Mini: UMIŠLJENO je s tržišta. Pa to znači da je Arduino službeno prestao s proizvodnjom. Ali još uvijek ga možete pronaći na mnogim web lokacijama, uključujući Ebay. Mnogi proizvođači trećih strana možda i dalje proizvode i prodaju ploču. Ne brinite ako ga niste uspjeli pronaći, možete koristiti Arduino Nano. To neće imati razlike u performansama, ali ni u veličini.

Korak 4: Teorija 1. dio: Historija i uvod

Teorija 1. dio: Istorija i uvod
Teorija 1. dio: Istorija i uvod
Teorija 1. dio: Historija i uvod
Teorija 1. dio: Historija i uvod

Eve se temelji na ranom obliku Obrade prirodnog jezika, tehnologiji "podudaranja uzoraka". Radi na sljedeći način da kada se primi niz, on traži unaprijed definiranu riječ ili izraz u tom nizu. Pretpostavimo da u pitanju "koliko imate godina?" Program traži "staru" riječ. Ako uspije, reproducira odgovarajuću glasovnu datoteku putem modula wtv020sd. Ako ne uspije, traži sljedeću unaprijed definiranu ključnu riječ. Ovako trebamo izgraditi vokabular unaprijed definiranih riječi. Izgleda teško, zar ne? Kao da moramo izgraditi vokabular svih engleskih riječi, a ukupno postoji oko 230 hiljada riječi u engleskom jeziku. Činjenica je da samo trebamo dodati nekoliko osnovnih riječi koje se najčešće koriste u našoj komunikaciji. Još uvijek izgleda teško? Ne brinite, posao je već obavio Joseph Wizembaum. Deo Eveinih odgovora i unapred definisane ključne reči ugrađeni su iz prvog programa za ćaskanje zvanog Eliza, koji je razvio Joseph Wizembaum (na slici gore). Eliza je dizajnirana da bude rogerijanska terapeutkinja. Nije visoko znanstveni izraz, znači da je savjetovala ljude, dajući im da bolje razumiju sebe i tjeraju ih na pozitivnije razmišljanje. Izgleda zaista dobro zar ne? A Eliza je vrlo dobro mogla obavljati svoju dužnost. Ljudi su voljeli njen znatiželjan i skeptičan stav. Čak je i Wizembaum bio iznenađen važnošću koju su ljudi dali Elizi. Činilo se da su zaboravili da razgovaraju s računarom i zamišljali su lijepu damu koja sjedi u računaru i razgovara s njima. Ali Eliza nije bila toliko pametna; to se uskoro realizovalo. Vremenom su ljudi počeli da se dosađuju zbog njene ograničene komunikacije i nazvali su je "glupom". Nije ni čudo koliko je bila glupa, bio je to veliki skok u istoriji veštačke inteligencije i obrade prirodnog jezika. Nakon što su osnovali bazu Chatterbota, na tržište su došli različiti botovi s novom i boljom tehnologijom. I sada ih imamo posvuda. Kao što je spomenuto, dio Eveinih odgovora izveden je iz ELIZE. To znači da će čak i Eva imati Elizin stav u određenoj mjeri zajedno s nekim mojim vlastitim idejama. Druga važna stvar su odgovori. Bilo bi zaista dosadno dobiti iste odgovore svaki put kada postavite isto pitanje. Stoga se mnogi odgovori spremaju za istu ključnu riječ. Eve nasumično bira koju datoteku će reproducirati, pazeći pritom da ne ponovi istu datoteku. To je to, jednostavni kruh i maslac, ali važno je pametno programirati glasove koji odgovaraju, tako da gledateljima daje iluziju kao da zaista odgovara na naša pitanja. Dakle, to je bio kratak uvod u funkcioniranje Eve. U sljedećem koraku ćemo to detaljno i programirati.

Korak 5: Traženje ključne riječi

Traženje ključne reči
Traženje ključne reči
Traženje ključne reči
Traženje ključne reči
Traženje ključne reči
Traženje ključne reči
Traženje ključne reči
Traženje ključne reči

U posljednjem koraku spomenuo sam tehnologiju usklađivanja uzoraka Eve, kao i rani oblik obrade prirodnog jezika. Dakle, šta je to i kako funkcioniše? To je glavna stvar o kojoj ćemo razgovarati u ovom koraku. Pa razmislite, neko vas pita za ime i morate reći šta je to. Na koliko načina možemo postaviti isto pitanje? Vaš učitelj može pitati "hoćete li mi reći svoje ime?" Rođaci mogu pitati "kako se zoveš?" Vaš brat bi mogao reći: "Hej, upravo sam zaboravio tvoje ime. Hoćeš li to reći još jednom?" Dakle, to znači da se isto pitanje može postaviti na nekoliko načina. Ipak, moramo dati isti odgovor, svoje ime. To znači da moramo pronaći nešto zajedničko u svim rečenicama. Jasno se vidi da je riječ "tvoje ime" prisutna u svim rečenicama. To je naš nagovještaj. Za sva pitanja koja postavljaju ime, moramo potražiti izraz "vaše ime". Slijedeći ovaj osnovni obrazac možemo predvidjeti odgovarajući odgovor na sve ulazne nizove. NEDOSTACA: Također je važno zapamtiti da ovaj algoritam neće uvijek biti tačan. Pretpostavimo da je neko rekao: "Našao sam vaše ime na listi čekanja. Očekivao sam da ćete biti na rezervisanim mjestima.". Budući da je "vaše ime" prisutno u ovom nizu, Eve će, nevina, reći svoje ime osobi … Glupo zar ne? Ovo je jedna od velikih mana ovog osnovnog algoritma. U svakom slučaju, to bi bili rijetki slučajevi. Inače je algoritam vrlo efikasan. Sada kada sam spomenuo tehnologiju podudaranja uzoraka, vrijeme je da razmislimo odakle dolazi ovaj ulazni niz odakle tražimo niz. Pa ovaj niz je zapravo naš glas koji je Google Voice Recognition pretvorio u tekst. Aplikacija koja se ovdje koristi pretvara naš glas u tekst, a zatim ga šalje na arduino putem Bluetootha. Koristio sam aplikaciju jer je najjednostavnija i najbolja takve vrste. Ime je AMR Voice i lako se može pronaći na Google playu.

Korak 6: Formuliranje odgovora

Formuliranje odgovora
Formuliranje odgovora

Sada kada smo prepoznali pitanja, sljedeći korak bi trebao biti pronalaženje odgovora. Dolazi zanimljiv i važan dio … Moramo pronaći odgovarajuće odgovore kako bismo zadovoljili svako pitanje. I ovdje dolazi još jedna funkcija ugrađena iz ELIZA -e. Wizembaum je razvio neke odgovore za određeni broj ključnih riječi. Primjer je ključna riječ "ti". Kad god je otkriven izlaz programa "razgovarali smo o vama - ne o meni". Stoga je odgovor načinjen tako da odgovara svim rečenicama koje sadrže "ti". Dalje, Eliza je svaki put davala drugačiji odgovor. Za svaki odgovor postojala je neka vrsta numeričke adrese. Ovo se povećavalo (dodaje 1) svaki put kada je formuliran odgovor. Pretpostavimo da je kao u gornjem primjeru, ako je adresa odgovora 1, adresa je promijenjena u 2 i stoga je sljedeća reproducirana datoteka 2. Ali nećemo slijediti ovaj algoritam za povećanje. Vidite, nakon kontinuiranog korištenja softvera, odgovori su postali predvidljivi. Saznali ste koji odgovor slijedi. Stoga ćemo u tu svrhu proizvesti nasumične adrese za svaku ključnu riječ. Sveukupno je isto u oba slučaja, samo je razlika u tome što ne možemo predvidjeti šta će robot sljedeće reći za istu ključnu riječ.

Korak 7: Zabranjene izjave i drugo

Zabranjene izjave i drugo
Zabranjene izjave i drugo

Moguće je da postoje neki slučajevi u vašem razgovoru kada robot kaže nešto što ne želite čuti. Stoga se ovdje javlja potreba dodavanja zabranjenih izjava. Zabranjene izjave su niz adresa koje se ne mogu reproducirati. Glasovna adresa okarakterizirana je kao zabranjena izjava na zahtjev korisnika. Nadalje, ova adresa bit će pohranjena u EEPROM -u Arduina tako da Eve ne zaboravi da je to zabranjena izjava čak i nakon što je isključena. U osnovi program radi da provjeri svaku adresu koju treba reproducirati. Ako je adresa jedna od zabranjenih, tada se povećava ili smanjuje. Nadalje, može postojati slučaj kada želite dopustiti robotu da izgovori prethodno zabranjenu riječ. U tom slučaju morali biste reći Evi da može izgovoriti posljednju zabranjenu riječ. Riječ koja je posljednji put zabranjena sada će se moći reproducirati. Da bi se sve zabranjene izjave mogle reproducirati, moramo priključiti prekidač za resetiranje. Ako se pritisnu, sve zabranjene izjave će se moći reproducirati. Zatim će još jedna važna stvar biti paziti da Eve ne ponovi odgovore. Ovo je vrsta nedostatka slučajnih brojeva. Isti slučajni brojevi su vjerovatno nastali u nizu. Zbog toga će naš robot uvijek iznova govoriti isti odgovor. Za to moramo uključiti još jednu manju funkciju koja sprječava ponavljanje izraza. Za to moramo pohraniti adresu posljednje naredbe u memoriju i provjeriti je li ista kao sadašnja. Ako je tako, tada se vrijednost adrese povećava ili smanjuje, na isti način u slučaju zabranjenih izjava.

Korak 8: Zapisivanje u Code

Pisanje u kodu
Pisanje u kodu
Pisanje u kodu
Pisanje u kodu
Pisanje u kodu
Pisanje u kodu

Za traženje ključne riječi koristimo naredbu indexOf. Naredba locira znak ili niz unutar drugog niza. Ako je pronađen, vraća indeks tog niza, a -1 ako nije pronađen. Dakle, u našem programu moramo to napisati na sljedeći način: if (voice.indexOf ("vaše ime")> -1) {// ako je indeks veći od -1 // što znači da je niz pronađen} Sada da smo spremili niz u memoriju i da smo unutar njega pronašli ključnu riječ, sada ćemo morati obraditi odgovore. Kao što je rečeno, slučajni brojevi se generiraju unutar određenog raspona broja (adrese glasovnih datoteka). Evo naredbe random (). Slijedi sintaksa: random (min, max); // slučajni broj se generira u rasponu min i max. Definiramo minimalni broj i maksimalni broj svakog raspona, a primjenom ovog našeg koda to izgleda otprilike ovako: if (voice.indexOf ("vaše ime")> - 1)) {minNo = 0; maxNo = 5; RandomNumber = random (minNo, maxNo);} Sada slijedi rukovanje odgovorima. U posljednjem koraku sam rekao da se brojevi povećavaju ili smanjuju na osnovu algoritma. Ovaj algoritam je ono o čemu sada raspravljamo. Ovaj dio je vrlo važan u smislu da ne možete samo povećavati ili smanjivati kako želite. Povećani ili smanjeni broj mora biti u rasponu. Pretpostavimo da u gornjem slučaju za ključnu riječ "vaše ime" imamo raspon od 0 do 5, a generirani slučajni broj je 5, pa ako ga povećate, na kraju ćete reproducirati glasovnu datoteku druge ključne riječi. Kako mislite da će to biti? Pitate: "Hej, molim te, reci mi svoje ime.", A robot odgovara: "Volim jesti kolače i električno punjenje." Isti je slučaj i s minimalnim brojem. Ako je generirani slučajni broj 0, ne možete ga smanjiti. Zbog toga je algoritam vrlo važan. Zamislite to: Možemo povećati ili kada je broj manji od maksimalnog broja i smanjiti kada je veći od minimalnog broja. Kada je generirani broj jednak 0 ili manji od 5, broj se povećava. S druge strane, kada je jednako 5, smanjujemo ga kako bismo bili sigurni da je broj unutar navedenog raspona. Sada slijede zabranjene izjave. Kao što je spomenuto, pohranjeni su u EEPROM -u. U tu svrhu prvo tražimo slobodnu memoriju u zabranjenom nizu. Pretpostavimo da je adresa 4 besplatna, tada unosimo broj datoteke u adresu besplatnog niza, kao i istu adresu upisujemo u EEPROM.for (int i; i if (nikad == 0) {EEPROM.write (nikad , memorija);}} Dakle, to je sve, modul Wtv020sd16p će se reproducirati pomoću naredbe module.playVoice () i predloženog broja datoteke. O funkcioniranju modula Wtv020 bit će riječi kasnije.

Korak 9: Umetanje emocija

Ubacivanje emocija
Ubacivanje emocija
Ubacivanje emocija
Ubacivanje emocija
Ubacivanje emocija
Ubacivanje emocija

Do sada je naš robot u stanju prepoznati ono što govorimo, pohraniti u memoriju i pronaći odgovarajući odgovor na pitanja. Sada dolazi pitanje ubacivanja emocija. Sigurno će se svima svidjeti živo lice zajedno sa nekim glupim programom za odgovaranje na pitanja. U projektu se koristi LCD ekran veličine 16x2. Dovoljno je dobro da otisnete oči. Moramo koristiti prilagođenu funkciju karaktera za stvaranje očiju. Prilagođeni znak omogućuje nam stvaranje novih znakova definiranjem piksela. Doći ćemo do detalja o tome nešto kasnije. Prvo, važno je zapamtiti da Arduino podržava samo 8 prilagođenih znakova. Zato moramo upravljati emocijama sa samo 8 znakova. Svaki znak bit će odštampan u određenom okviru, a ima 16 kolona i 2 reda koji čine ukupno 32 polja.

Na internetu možete pronaći dobre informacije o prilagođenim likovima u Arduinu. Može posjetiti i ovaj link:

[Prilagođeni znakovi Arduino] Struktura prilagođenog bajta znakova će izgledati otprilike ovako:

Normalni izgled: Lijevo polje0b01111, 0b01111, 0b01111, 0b01111, 0b01111, 0b01111, 0b01111, 0b01111, desno polje0b11110, 0b11110, 0b11110, 0b11110, 0b11110, 0b11110, dva oka. To znači da će nam trebati ukupno 4 kutije da ispunimo cijelo oko. Dva reda s lijeve i dva s desne strane čine ukupno četiri kutije za jedno oko. Lijevi okvir bajta pokriva dva reda s lijeve strane, a desni okvir prekriva desne redove. Dakle, to čini potpuno Evino oko. I sada ponavljajući isto za drugo oko, dobivamo neutralni izgled Eve. Sada je važno zapamtiti da smo koristili jedan od osam dostupnih prilagođenih znakova. Postoji pet ukupnih emocija: Glee, Tužno, Žmirkavo, Normalno i Treptanje. Od preostalih sedam prilagođenih znakova, moramo se prilagoditi tako da odgovaraju svim izrazima. Za popunjavanje prostora koristit ćemo 2 kutije za svako oko. Nije ni čudo što bi veličina bila pomalo mala, ali to će ljudsko oko zanemariti. Samo dodajte neke odgode između LCD funkcija, inače će Arduino postati nestabilan.

Korak 10: Uspostavljanje veza

Uspostavljanje veza
Uspostavljanje veza
Uspostavljanje veza
Uspostavljanje veza
Uspostavljanje veza
Uspostavljanje veza

LCD modul: Spojite pinove kao što je ovdje spomenuto: RS: kopča za kopanje 12RW: GndEnable: 7d4: kopča za iglu 8 d5: kopča za iglu 9 d6: kopča za iglu 10 d7: kopač pin13A (anoda) na 5vK (katoda) na gnd HC 05 modul: Slijedite ove veze: HC 05 TX pin na Arduino RX pinHC 05 RX pin na Arduino TX pinState pin na Arduino dig pin 11 Komunikacija se vrši pomoću TX i RX pinova. Držačni pin je potreban za provjeru je li preko HC 05 spojen ili ne radi. WTV 020 SD 16p modul pin1: Pin za resetiranje, povežite ga za kopanje pin 2pin7: pin sata, spojite ga na pin za kopanje 3pin10: pin za podatke, spojite za kopanje pin 4pin15: Zauzet pin, spojite na pin za iskopavanje 5pin2: Priključite ovaj pin na pojačalo kroz jačinu zvuka, a isto isto na ženski audio priključak. pin4 bi trebao biti spojen na zvučnik+pin5 da bi se spojio na zvučnik-Spojite 8. pin to gnd i osigurajte napajanje od 3.3v u 16. pin -u.

Pojačalo će pomoći pri reprodukciji internog zvučnika Eve, dok će se audio priključak povezati s vanjskim pojačalom i većim zvučnicima.

Korak 11: Modul WTV020SD16p (opcionalno)

Image
Image
Modul WTV020SD16p (opcionalno)
Modul WTV020SD16p (opcionalno)
Modul WTV020SD16p (opcionalno)
Modul WTV020SD16p (opcionalno)

Napomena: Ovaj korak nije obavezan. Bavi se radom i opisom WTV 020 SD 16p modula.

Demo zvučnog modula možete pogledati na ovom linku:

[PUSTI VIDEO]

Režim govora robota ispunjava WTV 020 SD modul. Modul se koristi za reprodukciju glasovnih datoteka robota. Kada se postavi bilo koje pitanje, arduino će natjerati modul da reproducira odgovarajuću glasovnu datoteku na SD kartici. Na modulu postoje četiri linije serijskih podataka za komunikaciju s arduinom, reset, sat, podaci i pinovi zauzetosti, a mi koristimo.playVoice () naredbu za reprodukciju potrebne datoteke. Na primjer: module.playVoice (9): // reproducirajte datoteku 9 pohranjenu na SD karticiZapamtite da nazivi datoteka trebaju biti u decimalnom obliku (0001, 0002 …). I da datoteke trebaju biti u AD4 ili WAV formatu. Nadalje, modul radi samo na mikro SD kartici od 1 GB. Neki moduli rade čak i na karticama od 2 GB, a kartica može pohraniti najviše 504 glasovnih datoteka. Tako možete uključiti veliki broj glasovnih datoteka za reprodukciju za dobar broj pitanja.

Možete čak i napraviti vlastite glasovne AD4 datoteke. Prvo morate imati dva softvera, softver za uređivanje zvuka i softver pod nazivom 4D SOMO TOOL koji bi konvertirao datoteke u format AD4. Drugo, morate pripremiti glasove robota. Možete ili pretvoriti tekst u govor ili čak snimiti vlastiti glas i napraviti glasove robota. Oboje se može učiniti u softveru za uređivanje zvuka. Ali zasigurno, roboti ne izgledaju dobro ako govore ljudskim glasom. Zato bi trebalo biti bolje pretvoriti tekst u govor. Postoje različiti motori poput Microsofta Anna i Microsoft Sam vašeg računara koji bi vam pomogli u tome. Moj je zasnovan na Microsoft Evi. Njegovi glasovi se u velikoj meri podudaraju sa Cortanom. Nakon pripreme glasovnih datoteka, morate ih spremiti u 32000 Hz i u WAV formatu. To je zato što modul može reproducirati glasovne datoteke do 32000 Hz. Zatim upotrijebite 4D SOMO TOOL za pretvaranje datoteka u AD4 format. Da biste to učinili, samo otvorite SOMO TOOL, odaberite datoteke i kliknite AD4 Encode i vaše glasovne datoteke su spremne. Gornju sliku možete provjeriti kao referencu. Ako želite dodatne detalje o stvaranju robotskih glasova, možete otići ovdje: [Izrada robotskih glasova]

Korak 12: Dio o softveru

Dio o softveru
Dio o softveru
Dio o softveru
Dio o softveru
Dio o softveru
Dio o softveru

U arduino Pro mini postoji mali problem u programiranju. Nije problem, samo jedan dodatni korak. Arduino Pro mini nema ugrađeni programator kao druge Arduino ploče. Dakle, ili morate kupiti vanjski ili stari arduino UNO. Ovdje korak opisuje kako prenijeti program pomoću Arduino UNO -a. Samo zgrabite staru Arduino UNO ploču nakon sudara i izvadite Atmegu 328p. Zatim se povežite na sljedeći način: 1. TX pin na UNO na TX pin na Pro Mini 2. RX pin UNO na RX pin Pro MIni3. Resetujte pin UNO -a na pin za resetovanje Pro Mini4. spojite VCC i uzemljenje Pro Mini na UNO. Preuzmite Arduino program, softver za prepoznavanje glasa i biblioteke na dnu. Program se još uvijek razvija. Dakle, ako imate bilo kakvih problema u vezi s tim, slobodno pitajte. Zatim priključite kabel u računar. Odaberite ploču kao Arduino Pro Mini i odaberite ispravan COM port. Zatim pritisnite dugme Upload i pogledajte kako se program učitava na vaš Pro Mini.

Zatim preuzmite softver za prepoznavanje glasa i glasovne datoteke.

Korak 13: Priprema tijela

Priprema tela
Priprema tela
Priprema tela
Priprema tela
Priprema tela
Priprema tela

Pronašao sam malu kutiju konca i otkrio da je savršena za tijelo. Možete koristiti bilo koju kutiju koju pronađete u svojoj radionici ili je možete napraviti od kartona. Samo izrežite mali pravokutni komad za pričvršćivanje LCD modula. Na vrhu sam izrezao malu rupu za pričvršćivanje zvuka, a sa strane za pričvršćivanje prekidača i audio konektora. Priključio sam dva čepa za boce sa strana kutije za kotače. Samo pazite da kutija ima dovoljno prostora za umetanje kola. Priključite prekidač na tijelo, kao i na krug, a zatim na jačinu zvuka na vrhu kutije. Zatim samo unesite krug unutra i vaš robot je dovršen.

Korak 14: Bravo

Dobro urađeno!
Dobro urađeno!
Dobro urađeno!
Dobro urađeno!

Sada ste dovršili svoj projekt slatkog malog robota koji može razgovarati s vama i učiniti da se osjećate sretno. Ovo je najsretnije mjesto biti DIYer kada je vaš projekt završen i potpuno funkcionira. Ne brinite ako niste uspješni u jednom pokušaju, morate se potruditi da biste razumjeli svaki dio vašeg robota. I tu DIYers dolaze na ovaj svijet. Ali ovo nije kraj projekta. Eve će uvijek biti razvijenije u većoj mjeri, bilo od mene ili od DIY -a poput vas. Volio bih čuti šta ste učinili gledajući ovo uputstvo. Pozdrav, RS3655

Preporučuje se: