Kazalo:

Eve, Arduino Chatbot: 14 korakov (s slikami)
Eve, Arduino Chatbot: 14 korakov (s slikami)

Video: Eve, Arduino Chatbot: 14 korakov (s slikami)

Video: Eve, Arduino Chatbot: 14 korakov (s slikami)
Video: Give your Arduino project a chatGPT AI brain - for ALMOST free 2024, November
Anonim
Image
Image
Eve, Arduino Chatbot
Eve, Arduino Chatbot
Eve, Arduino Chatbot
Eve, Arduino Chatbot

Pozdravljeni, DIYrs, ali so bili primeri, ko ste resnično želeli deliti svoja čustva z nekom in ni bilo nikogar, ki mu zaupate? V današnjem prometnem svetu je to pogost primer. No, chatbot vam lahko pomaga, da se počutite bolje. In to vodi k uvedbi Eve. Eve je srčkan klepet. Kot vsi vemo, je klepetalnica ali klepetalnica računalniški program ali naprava, ki vodi pogovor z ljudmi na podlagi besedilnih ali slušnih metod. Avtomatizirani glasovi, ki jih slišite ob klicu službe za stranke ali na bančni liniji, so primer klepetalnice. Z njo lahko delite svoje izkušnje, občutke in najpomembneje, se prepirate o različnih stvareh; je pri tem zelo izkušena. Ker je to najpomembnejša funkcija klepetalnice, naredite osebo srečno. Kot zgodnji primer obdelave naravnega jezika (NLU) in umetne inteligence lahko Eva odgovori na VSAKO vprašanje, ki ji ga postavite. Ne gre za to, da lahko odgovori le na določeno število vprašanj. Lahko poje, vam pripoveduje šale, zgodbe in počne vse, zaradi česar se počutite dobro. Če pove nekaj, česar ne želite slišati, ji to povejte, prosim, ne ponovite tega več, in to si bo zapomnila. Zaveda se celo, da ne sme ponavljati istih odgovorov in klepetov, da pogovor ne bi postal dolgočasen. Na podlagi preprostih, poceni komponent in osnovnega programiranja se lahko v resnici obnaša zelo pametno. Poleg tega LCD -oči, ki jih ima, kažejo, kako se počuti, ko kaj poveš. Tako da bomo v tem navodilu začeli z definicijo chatbot -a, preučili oblikovanje, nekatere teorije, na podlagi katerih teče Eve, proizvodnjo in končno Programski del. Je videti veliko? Ne skrbite, na potovanju bo zelo zanimivo. Predstavitev robota si lahko ogledate zgoraj ali na tej povezavi: [Predvajaj videoposnetek]

1. korak: Opredelitev klepetalnice

Opredelitev klepetalnice
Opredelitev klepetalnice
Opredelitev klepetalnice
Opredelitev klepetalnice
Opredelitev klepetalnice
Opredelitev klepetalnice

Kot smo že omenili, je chatbot program, ki vodi pogovor z ljudmi. Dandanes so tako pogosti, da skorajda ni neznanega. Od virtualnih pomočnikov, Siri in Googlovega pomočnika, obstajata Mitsuku in Evie, s katerimi lahko delite svoje občutke. Kot že omenjeno, klepetalnice temeljijo na besedilni ali zvočni metodi, zato jih lahko razdelimo na dva. V besedilni metodi so pogovori v obliki pisnega besedila, tako kot WhatsApp. Medtem ko pri slušni metodi pogovor poteka ustno kot s pravim človekom. Mislim, da je bolj vznemirljivo govoriti z nekom tako, da se z njim ustno pogovarjaš, namesto da mu samo pošlješ sporočilo. Brez dvoma tekstovne komunikacijske aplikacije za sporočanje ustrezajo zahtevam ljudi, vendar menim, da je klepet z govorom najboljša stvar, da se znebite svojih čustvenih motenj in se počutite bolje. Zato je to glavni razlog, da sem Eve oblikoval za slušnega klepetalnika.

2. korak: Izvor Eve

Izvor Eve
Izvor Eve

No, nekega dne mi je v mislih prišla Eva. Tako je bilo, ko sem videl otroka, ki se je sam sprehajal po šoli, medtem ko so se drugi igrali z mislimi, napolnjenimi z veseljem. Takrat sem pomislil na prijatelja, ki nikogar ne diskriminira in nikomur ne povzroča bolečine, s katerim lahko delite svoja čustva in ste ves čas srečni. Nato mi je prišle na misel luštna majhna struktura Eve, na kateri sem začel delati. Eva me je razočarala približno stokrat. Predvidevam, da je delala že 101. in da sem se počutila resnično srečno. Tako je bil izvor Eve. Želel sem, da je inteligentna, a čim bolj preprosta, da jo lahko vsakdo zlahka naredi. Brez dvoma ni popolnoma pametna in včasih reče neumne odgovore, lahko se obnaša kot prijateljica. In zdaj, dovolj zgodb, začnimo graditi Eve.

3. korak: Zbiranje sestavnih delov in opreme:

Zbiranje sestavnih delov in opreme
Zbiranje sestavnih delov in opreme
Zbiranje sestavnih delov in opreme
Zbiranje sestavnih delov in opreme
Zbiranje sestavnih delov in opreme
Zbiranje sestavnih delov in opreme

Sledijo naslednje komponente, ki jih je treba zbrati: Arduino Pro Mini (ali Arduino Nano) zvočni modul Wtv-020-SD-16p HC-05 modul Bluetooth 16x2 LCD modul LM7805 regulator ICAn ojačevalni modul (uporabil sem vezje PAM8403) 8 ohmski zvočnik ženska avdio jacka 9v baterija in telefon AndroidTo so potrebne komponente. Druga pomembna stvar, stroški. Eve me je stala okoli 3000 INR. Stroški so lahko v vaši državi drugačni, v Indiji pa je to približno cena. Majhen opis delov: Arduino Pro mini je glavni MCU v našem robotu. Uporabil sem ga zaradi majhnosti, preprostosti in odličnih zmogljivosti. Izpolnjuje vse zahteve našega robota. Razen funkcije prepoznavanja glasu, ki jo izvaja Android (obravnavano kasneje), se vse druge funkcije, od iskanja ključnih besed in oblikovanja izhodnih podatkov, izvajajo na samem Pro Mini. Ne skrbite za zgoraj omenjene izraze, če jih ne razumete, vsi so obravnavani v poznejšem delu. Modul wtv020sd 16p se uporablja za predvajanje zvočnih datotek, hc 05 Bluetooth za komunikacijo z Androidom in LCD za prikaz čustva. Potrebujemo ženski avdio priključek za priključitev robota na zunanji ojačevalnik. Arduino se tukaj uporablja kot glavni krmilnik. Prejema podatke Bluetooth prek modula HC 05 Bluetooth in predvaja datoteko prek glasovnega modula WTV-020-SD-16p. Čustva so prikazana v modulu LCD in 9v bateriji za napajanje. Eve prepoznava govore prek prepoznavanja Google Voice v napravi Android. Kasneje se o tem ustrezno razpravlja v ustreznem koraku. Slaba novica o Arduinu Pro Mini: UMORIL SE je s trga. No, to pomeni, da ga je Arduino uradno prenehal proizvajati. Še vedno pa ga lahko najdete na številnih spletnih mestih, vključno z Ebayom. Mnogi proizvajalci drugih proizvajalcev morda še vedno izdelujejo in prodajajo ploščo. Ne skrbite, če ga niste našli, lahko uporabite Arduino Nano. To ne bo vplivalo na zmogljivost in tudi na velikost.

4. korak: Teorija 1. del: Zgodovina in uvod

Teorija 1. del: Zgodovina in uvod
Teorija 1. del: Zgodovina in uvod
Teorija 1. del: Zgodovina in uvod
Teorija 1. del: Zgodovina in uvod

Eve temelji na zgodnji obliki obdelave naravnega jezika, tehnologiji "ujemanje vzorcev". Deluje na naslednji način, da ob prejemu niza išče vnaprej določeno besedo ali frazo v tem nizu. Recimo pri vprašanju "koliko ste stari?" Program išče "staro" besedo. Če uspe, predvaja ustrezno glasovno datoteko prek modula wtv020sd. Če ne uspe, poišče naslednjo vnaprej določeno ključno besedo. Tako moramo sestaviti besednjak vnaprej določenih besed. Izgleda težko, kajne? Zdi se, kot da moramo zgraditi besednjak vseh angleških besed in v angleškem jeziku je približno 230 tisoč besed. Dejstvo je, da moramo dodati le nekaj osnovnih besed, ki se najpogosteje uporabljajo v naši komunikaciji. Še vedno izgleda težko? Ne skrbite, delo je že opravil Joseph Wizembaum. Del Eveinih odgovorov in vnaprej določenih ključnih besed je vključenih v prvi program za klepetanje z imenom Eliza, ki ga je razvil Joseph Wizembaum (na sliki zgoraj). Eliza je bila zasnovana kot rogerijanska terapevtka. Ni zelo znanstveni izraz, pomeni, da je nekoč svetovala ljudem in jim omogočila boljše razumevanje ter pozitivnejše razmišljanje. Izgleda res dobro, kajne? In Eliza je zelo dobro opravljala svojo dolžnost. Njen radoveden in skeptičen odnos so imeli ljudje radi. Celo Wizembauma je presenetil pomen, ki so ga ljudje dali Elizi. Zdelo se je, da so pozabili, da se pogovarjajo z računalnikom, in mislili so, da lepa gospa sedi v računalniku in klepeta z njimi. Toda Eliza ni bila tako pametna; se je kmalu uresničilo. Sčasoma so se ljudje začeli dolgočasiti zaradi njene omejene komunikacije in imenovali so jo "neumna". Nič čudnega, kako neumna je bila, to je bil velik preskok v zgodovini umetne inteligence in obdelave naravnega jezika. Ko so ustanovili bazo Chatterbotov, so na trg prišli različni boti z novo in boljšo tehnologijo. In zdaj jih imamo povsod. Kot smo že omenili, je del Eveinih odgovorov izhajal iz ELIZE. To pomeni, da bo celo Eva do neke mere zavzela stališče Elize skupaj z nekaterimi mojimi idejami. Druga pomembna stvar so odgovori. Res bi bilo dolgočasno dobiti iste odgovore vsakič, ko postavite isto vprašanje. Zato je za isto ključno besedo shranjenih veliko odgovorov. Eve naključno izbere, katero datoteko naj predvaja, pri čemer pazi, da ne ponovi iste datoteke. To je to, preprost kruh in maslo, vendar je pomembno pametno programirati odzivne glasove, tako da bo gledalcem naredil iluzijo, kot da resnično odgovarja na naša vprašanja. To je bil torej kratek uvod v delovanje Eve. V naslednjem koraku bomo to podrobno in programirali.

5. korak: Iskanje ključne besede

Iskanje ključne besede
Iskanje ključne besede
Iskanje ključne besede
Iskanje ključne besede
Iskanje ključne besede
Iskanje ključne besede
Iskanje ključne besede
Iskanje ključne besede

V zadnjem koraku sem omenil tehnologijo ujemanja vzorcev Eve in tudi zgodnjo obliko obdelave naravnega jezika. Kaj je torej in kako deluje? To je glavna stvar, o kateri bomo razpravljali v tem koraku. Zato pomislite, nekdo vpraša vaše ime in morate povedati, kaj je to. Na koliko načinov lahko postavimo isto vprašanje? Vaš učitelj vas bo morda vprašal, "mi prosim povejte svoje ime?" Sorodnik se lahko vpraša: "kako ti je ime?" Vaš brat bo morda rekel: "Hej, pravkar sem pozabil tvoje ime. Boš to povedal še enkrat?" To pomeni, da lahko isto vprašanje postavite na več načinov. Vendar moramo dati enak odgovor, svoje ime. To pomeni, da moramo v vseh stavkih najti nekaj skupnega. Jasno je razvidno, da je beseda "tvoje ime" prisotna v vseh stavkih. To je torej naš namig. Za vsa vprašanja, ki postavljajo ime, moramo poiskati stavek "tvoje ime". Z upoštevanjem tega osnovnega vzorca lahko predvidimo ustrezen odgovor na vse vhodne nize. NEDAVNOST: Pomembno si je zapomniti tudi, da ta algoritem ne bo vedno natančen. Recimo, da je nekdo rekel: "Našel sem tvoje ime na čakalnem seznamu. Pričakoval sem, da boš na rezerviranih sedežih." Neumno kajne? To je ena od velikih pomanjkljivosti tega osnovnega algoritma. Kakorkoli, to bi bili redki primeri. Sicer je algoritem zelo učinkovit. Zdaj, ko sem omenil tehnologijo ujemanja vzorcev, je čas, da razmislimo, od kod prihaja ta vhodni niz, od koder iščemo niz. Ta niz je pravzaprav naš glas, ki ga je Google Prepoznavanje glasu pretvorilo v besedilo. Tukaj uporabljena aplikacija pretvori naš glas v besedilo in ga nato prek Bluetootha pošlje arduinu. Uporabil sem aplikacijo, ker je najpreprostejša in najboljša te vrste. Ime je AMR Voice in ga je enostavno najti v Googlu play.

6. korak: Oblikovanje odgovorov

Oblikovanje odgovorov
Oblikovanje odgovorov

Zdaj, ko smo vprašanja prepoznali, bi moral biti naslednji korak iskanje odgovorov. Prihaja zanimiv in pomemben del … Za vsako vprašanje moramo najti ustrezne odgovore. In tu prihaja še ena funkcija, vključena v ELIZA. Wizembaum je razvil nekaj odgovorov za določeno število ključnih besed. Primer je ključna beseda "ti". Kadar koli je bil zaznan izhod programa "razpravljali smo o vas - ne jaz." Zato je bil odgovor narejen tako, da ustreza vsem stavkom, ki vsebujejo "ti". Nadalje je Eliza vsakič dala drugačen odgovor. Za vsak odgovor je bil nekakšen številčni naslov. To se je povečalo (dodalo 1) vsakič, ko je bil oblikovan odgovor. Recimo, kot je v zgornjem primeru, če je bil naslov odgovora 1, je bil naslov spremenjen v 2, zato se je nato predvajala datoteka 2. Vendar tega algoritma za povečanje ne bomo upoštevali. Vidite, da so odgovori po neprekinjeni uporabi programske opreme postali predvidljivi. Vedeli ste, kateri odgovor je naslednji. V ta namen bomo za vsako ključno besedo izdelali naključne naslove. Na splošno je v obeh primerih enako, le razlika je v tem, da ne moremo predvideti, kaj bo robot naslednjič povedal za isto ključno besedo.

7. korak: Prepovedane izjave in drugo

Prepovedane izjave in drugo
Prepovedane izjave in drugo

V vašem pogovoru je lahko nekaj primerov, ko robot pove nekaj, česar ne želite slišati. Zato se pojavi potreba po dodajanju prepovedanih izjav. Prepovedane izjave so vrsta naslovov, ki jih ni mogoče predvajati. Glasovni naslov je označen kot prepovedana izjava na zahtevo uporabnika. Nadalje se ta naslov shrani v EEPROM Arduina, tako da Eva ne pozabi, da je prepovedana izjava tudi po tem, ko je izklopljena. V bistvu program počne, da preveri vsak naslov, ki ga je treba predvajati. Če je naslov eden od prepovedanih, se poveča ali zmanjša. Poleg tega lahko pride do primera, ko želite robotu dovoliti, da izreče prej prepovedano besedo. V tem primeru bi morali povedati Evi, da lahko pove zadnjo prepovedano besedo. Besedo, ki je bila nazadnje prepovedana, bo zdaj mogoče predvajati. Za predvajanje vseh prepovedanih izjav moramo priložiti stikalo za ponastavitev. Če pritisnete vse prepovedane izjave, se bodo lahko predvajale. Potem je pomembno še to, da Eva ne ponovi odgovorov. To je nekakšna pomanjkljivost naključnih števil. Ista naključna števila bodo verjetno nastala v seriji. Zaradi tega bo naš robot vedno znova ponavljal isti odgovor. Za to moramo vključiti še eno manjšo funkcijo, ki preprečuje ponavljanje stavkov. Za to moramo shraniti naslov zadnjega stavka v pomnilnik in preveriti, ali je enak sedanjemu. Če je tako, se vrednost naslova poveča ali zmanjša, prav tako v primeru prepovedanih stavkov.

8. korak: Pisanje v kodo

Pisanje v kodi
Pisanje v kodi
Pisanje v kodi
Pisanje v kodi
Pisanje v kodi
Pisanje v kodi

Za iskanje ključne besede uporabljamo ukaz indexOf. Ukaz poišče znak ali niz v drugem nizu. Če je najdeno, vrne indeks tega niza, medtem ko je -1 vrnjeno, če ni najdeno. Zato ga moramo v našem programu zapisati na naslednji način: if (voice.indexOf ("vaše ime")> -1) {// če je indeks večji od -1 // kar pomeni, da je niz najden} Zdaj da smo niz shranili v pomnilnik in v njem našli tudi svojo ključno besedo, bomo zdaj morali obravnavati odgovore. Kot rečeno, se naključna števila generirajo v določenem razponu števil (naslovi glasovnih datotek). Tu pride ukaz random (). Sledi sintaksa: naključno (min, max); // naključno število je ustvarjeno v območju min in max. Določimo najmanjše število in največje število vsakega območja, uporaba te kode pa izgleda nekako takole: if (voice.indexOf ("vaše ime")> - 1)) {minNo = 0; maxNo = 5; RandomNumber = naključno (minNo, maxNo);} Zdaj sledi obravnava odgovorov. V zadnjem koraku sem rekel, da se številke povečujejo ali zmanjšujejo na podlagi algoritma. Ta algoritem je tisto, o čemer zdaj razpravljamo. Ta del je zelo pomemben v smislu, da ne morete samo povečati ali zmanjšati, kot želite. Povečano ali zmanjšano število mora biti v obsegu. Recimo tako kot v zgornjem primeru, za ključno besedo "vaše ime" imamo razpon od 0 do 5, naključno število pa je 5, no, če ga povečate, boste na koncu predvajali glasovno datoteko druge ključne besede. Kako mislite, da bo to? Vprašate: "Hej, povej mi svoje ime.", Robot pa odgovori: "Rad jem piškote in električni naboj." Enako velja za najmanjše število. Če je naključno število 0, ga ne morete zmanjšati. Zato je algoritem zelo pomemben. Pomislite: lahko povečamo bodisi, če je število manjše od največjega števila, in zmanjšamo, če je večje od najmanjšega števila. Ko je ustvarjeno število enako 0 ali manjše od 5, se število poveča. Po drugi strani pa, ko je enako 5, zmanjšamo, da se prepričamo, da je število v navedenem razponu. Zdaj prihajamo do prepovedanih izjav. Kot že omenjeno, so shranjeni v EEPROM -u. Za to najprej iščemo prosti pomnilnik v prepovedanem nizu. Recimo, da je naslov 4 brezplačen, nato vnesemo številko datoteke v naslov proste matrike in vpišemo isti naslov v EEPROM.for (int i; i if (nikoli == 0) {EEPROM.write (nikoli , pomnilnik);}} To je vse, modul Wtv020sd16p bo predvajan z uporabo ukaza module.playVoice () in predlagane številke datoteke. O delovanju modula Wtv020 bomo razpravljali kasneje.

9. korak: Vstavljanje čustev

Vstavljanje čustev
Vstavljanje čustev
Vstavljanje čustev
Vstavljanje čustev
Vstavljanje čustev
Vstavljanje čustev

Do sedaj naš robot lahko prepozna, kar govorimo, shrani v spomin in najde primeren odgovor na vprašanja. Zdaj se postavlja vprašanje, kako vstaviti čustva. Zagotovo bo vsem všeč živ obraz skupaj s kakšnim neumnim programom za odgovarjanje na vprašanja. V projektu se uporablja LCD zaslon velikosti 16x2. Dovolj je, da natisnete oči. Za ustvarjanje oči moramo uporabiti funkcijo znakov po meri. Znak po meri nam omogoča ustvarjanje novih znakov z definiranjem slikovnih pik. O tem bomo podrobneje govorili nekoliko kasneje. Najprej se je treba spomniti, da Arduino podpira le 8 znakov po meri. Zato moramo čustva obvladati samo z 8 znaki. Vsak znak se natisne v določenem polju, 16 stolpcev in 2 vrstici pa skupaj vsebuje 32 polj.

Na spletu lahko najdete dobre informacije o znakih po meri v Arduinu. Lahko obiščete tudi to povezavo:

[Znaki po meri Arduino] Struktura bajta znakov po meri bo videti nekako tako:

Običajen videz: levo polje 0b01111, 0b01111, 0b01111, 0b01111, 0b01111, 0b01111, 0b01111, 0b01111, desno polje 0b11110, 0b11110, 0b11110, 0b11110, 0b11110, 0b11110, 0b po1. To pomeni, da bomo potrebovali skupaj 4 škatle, da napolnimo celo oko. Dve vrstici na levi in dve na desni skupaj tvorita štiri škatle za eno oko. Levi okvirček zajema dve vrstici na levi strani, desni okvir pa desne. Tako je to popolno oko Eve. In če isto ponovimo za drugo oko, dobimo nevtralen videz Eve. Zdaj se je treba spomniti, da smo uporabili enega od osmih znakov po meri, ki so na voljo. Skupno je pet čustev: Glee, Sad, Squint, Normal in Blink. Od preostalih sedmih znakov po meri se moramo prilagoditi tako, da ustrezajo vsem izrazom. Za izdelavo prostora bomo uporabili 2 škatli za vsako oko. Ni čudno, da bi bila velikost nekoliko majhna, a človeško oko tega ne upošteva. Ne pozabite dodati nekaj zamud med funkcijami LCD, sicer bo Arduino postal nestabilen.

10. korak: Vzpostavitev povezav

Vzpostavljanje povezav
Vzpostavljanje povezav
Vzpostavljanje povezav
Vzpostavljanje povezav
Vzpostavljanje povezav
Vzpostavljanje povezav

Modul LCD: Priključite zatiče, kot je omenjeno tukaj: RS: konektor 12RW: GndOmogoči: 7d4: konektor 8 d5: konektor 9 d6: konektor 10 d7: konec pin13A (anoda) na 5vK (katoda) na gnd Modul HC 05: Sledite tem povezavam: HC 05 TX pin na Arduino RX pinHC 05 RX pin na Arduino TX pin Državni pin na Arduino dig pin 11 Komunikacija se izvaja s pomočjo TX in RX nožic. Državni zatič je potreben za preverjanje, ali je prek priključka HC 05 priključen ali miruje. WTV 020 SD 16p modul pin1: pin za ponastavitev, ga povežite za kopanje pin 2pin7: pin za uro, ga priključite na konektor 3pin10: podatkovni zatič, povežite za kopanje pin 4pin15: zaseden pin, povežite z pin pin 5pin2: ta pin priključite na ojačevalnik skozi glasnost in prav tako na ženski avdio vtič. pin4 morate priključiti na zvočnik+pin5, da ga priključite na zvočnik 8. pin na gnd in zagotovi napajanje 3.3v v 16. pin.

Ojačevalnik bo pomagal predvajati notranji zvočnik Eve, medtem ko je avdio priključek za povezavo z zunanjim ojačevalnikom in večjimi zvočniki.

11. korak: Modul WTV020SD16p (neobvezno)

Image
Image
Modul WTV020SD16p (neobvezno)
Modul WTV020SD16p (neobvezno)
Modul WTV020SD16p (neobvezno)
Modul WTV020SD16p (neobvezno)

Opomba: Ta korak je neobvezen. Ukvarja se z delovanjem in opisom modula WTV 020 SD 16p.

Predstavitev zvočnega modula si lahko ogledate na tej povezavi:

[PLAY VIDEO]

Govorni način robota izpolnjuje modul WTV 020 SD. Modul se uporablja za predvajanje glasovnih datotek za robota. Ko se postavi kakršno koli vprašanje, bo arduino predvajalnik predvajal ustrezno glasovno datoteko na kartici SD. V modulu so štiri serijske podatkovne vrstice za komunikacijo z arduinom, ponastavitev, uro, podatke in zaseden zatiči, za predvajanje zahtevane datoteke pa uporabljamo ukaz.playVoice (). Na primer: module.playVoice (9): // predvajajte datoteko 9, shranjeno na kartici SD Ne pozabite, da morajo biti imena datotek v decimalnih mestih (0001, 0002 …). Da morajo biti datoteke v formatu AD4 ali WAV. Nadalje modul deluje samo na 1 GB mikro SD kartici. Nekateri moduli delujejo celo na karticah velikosti 2 GB, kartica pa lahko vsebuje največ 504 glasovnih datotek. Tako lahko vključite lepo število glasovnih datotek za predvajanje za veliko število vprašanj.

Lahko celo ustvarite svoje glasovne datoteke AD4. Najprej morate imeti dve programski opremi, programsko opremo za urejanje zvoka in programsko opremo, imenovano 4D SOMO TOOL, ki bi datoteke pretvorila v format AD4. Drugič, morate pripraviti glasove robotov. Besedilo lahko pretvorite v govor ali celo posnamete svoj glas in ustvarite glasove robota. Oboje je mogoče narediti v programski opremi za urejanje zvoka. Zagotovo pa roboti ne izgledajo dobro, če govorijo človeške glasove. Zato bi bilo bolje besedilo pretvoriti v govor. Pri tem bi pomagali različni motorji, kot sta Microsoft Anna in Microsoft Sam vaš računalnik. Moj temelji na Microsoft Eva. Njegovi glasovi se v veliki meri ujemajo s Cortano. Po pripravi glasovnih datotek jih morate shraniti v 32000 Hz in v formatu WAV. To je zato, ker lahko modul predvaja glasovne datoteke do 32000 Hz. Nato uporabite 4D SOMO TOOL za pretvorbo datotek v format AD4. Če želite to narediti, odprite SOMO TOOL, izberite datoteke in kliknite AD4 Encode in vaše glasovne datoteke so pripravljene. Za referenco lahko preverite zgornjo sliko. Če želite dodatne podrobnosti pri ustvarjanju robotskih glasov, pojdite tukaj: [Ustvarjanje robotskih glasov]

Korak 12: Del programske opreme

Del programske opreme
Del programske opreme
Del programske opreme
Del programske opreme
Del programske opreme
Del programske opreme

V arduino Pro mini je pri programiranju majhna težava. Pravzaprav ni problem, samo en dodaten korak. Arduino Pro mini nima vgrajenega programerja kot druge plošče Arduino. Zato morate kupiti zunanjega ali starega arduino UNO. V tem koraku je opisano, kako naložite program z uporabo Arduino UNO. Iz nesreče vzemite staro ploščo Arduino UNO in vzemite Atmego 328p. Nato se povežite na naslednji način: 1. TX pin na UNO na TX pin na Pro Mini 2. RX pin UNO na RX pin Pro MIni3. Ponastavite zatič UNO na pin za ponastavitev Pro Mini4. priključite VCC in Ground Pro Mini na UNO. Prenesite program Arduino, programsko opremo za prepoznavanje glasu in knjižnice na dnu. Program se še razvija. Če imate v zvezi s tem težave, vas prosimo, da kabel priključite v računalnik. Izberite ploščo kot Arduino Pro Mini in izberite ustrezna vrata COM. Nato pritisnite gumb za nalaganje in si oglejte, kako se program naloži na vaš Pro Mini.

Nato prenesite programsko opremo za prepoznavanje glasu in glasovne datoteke.

13. korak: Priprava telesa

Priprava telesa
Priprava telesa
Priprava telesa
Priprava telesa
Priprava telesa
Priprava telesa

Našel sem majhno škatlo z nitko in ugotovil, da je kot nalašč za telo. Uporabite lahko katero koli škatlo, ki jo najdete v svoji delavnici, ali pa jo naredite iz kartona. Samo izrežite majhen pravokoten kos za pritrditev modula LCD. Na vrhu sem izrezal majhno luknjo za pritrditev glasnosti, ob straneh pa za pritrditev stikal in avdio priključka. Na straneh škatle sem pritrdil dva pokrova steklenic za kolesa. Prepričajte se le, da ima škatla dovolj prostora za vstavljanje vezja. Na telo in vezje pritrdite stikalo, nato pa glasnost na vrhu škatle. Nato samo vstavite vezje in vaš robot je končan.

14. korak: Dobro opravljeno

Dobro opravljeno!
Dobro opravljeno!
Dobro opravljeno!
Dobro opravljeno!

Zdaj ste zaključili svoj srčkan mali robot projekt, s katerim se lahko pogovarjate in se počutite srečno. To je najsrečnejša točka DIYerja, ko je vaš projekt zaključen in v celoti deluje. Ne skrbite, če v enem poskusu niste uspešni, za to se morate zelo potruditi, da boste razumeli vsak del svojega robota. In tu pridejo DIYers na ta svet, vendar to ni konec projekta. Eve bom vedno bolj razvil jaz ali mojstri, kot ste vi. Rad bi slišal, kaj ste naredili, ko ste videli to navodilo. Lep pozdrav, RS3655

Priporočena: