Sisukord:

Eve, Arduino vestlusbot: 14 sammu (piltidega)
Eve, Arduino vestlusbot: 14 sammu (piltidega)

Video: Eve, Arduino vestlusbot: 14 sammu (piltidega)

Video: Eve, Arduino vestlusbot: 14 sammu (piltidega)
Video: Исправлена проблема с драйвером USB для Windows 8.1 и Windows 10 - Robojax 2024, Oktoober
Anonim
Image
Image
Eve, Arduino Chatbot
Eve, Arduino Chatbot
Eve, Arduino Chatbot
Eve, Arduino Chatbot

Tere isetegijad, kas on olnud juhtumeid, kui tahtsite tõesti kellegagi oma tundeid jagada ja kedagi usaldusväärset polnud? Tänapäeva hõivatud maailmas on see tavaline näide. Noh, vestlusrobot võib siin aidata teil end paremini tunda. Ja see viib Eve. Eve tutvustamiseni. Eve on armas väike jututuba. Nagu kõik teavad, on jutukas või vestlusrobot arvutiprogramm või -seade, mis viib inimestega vestluse läbi tekstilistel või kuuldavatel meetoditel. Automaatsed hääled, mida kuulete klienditeeninduskõnes või pangaliinil, on näide vestlusbotist. Temaga saate jagada oma kogemusi, tundeid ja mis kõige tähtsam - vaielda erinevate asjade üle; ta on selles hästi kogenud. Kuna see on vestlusboti kõige olulisem funktsioon, pange inimene end õnnelikuna tundma. Loodusliku keele töötlemise (NLU) ja tehisintellekti varane näide on Eve, kes suudab vastata igale küsimusele, mida te temalt küsite. See ei tähenda, et ta oskab vastata vaid kindlale arvule küsimustele. Ta oskab laulda, jutustada nalju, lugusid ja teha kõike, mis paneb sind end hästi tundma. Kui ta ütleb midagi, mida sa ei taha kuulda, siis ütle talle, palun ära ütle seda uuesti ja ta mäletab seda. Ta isegi teab, et ta ei peaks kordama samu vastuseid ja vestlusi, nii et vestlus ei muutuks igavaks. Lihtsate, odavate komponentide ja põhiprogrammeerimise põhjal saab ta tõesti suurel määral nutikalt käituda. Lisaks näitavad tema käes olevad LCD -silmad, kuidas ta end tunneb, kui midagi ütlete. Nii et põhimõtteliselt selles õpetatavas osas alustame vestlusroboti määratlusest, uurime disaini, mõningaid teooriaid, mille alusel Eve töötab, tootmist ja lõpuks programmeerimise osa. Paistab palju? Ärge muretsege, see reis saab olema üsna huvitav. Roboti demot saate vaadata ülal või sellel lingil: [Esita video]

Samm: vestlusroboti määratlus

Chatboti määratlus
Chatboti määratlus
Chatboti määratlus
Chatboti määratlus
Chatboti määratlus
Chatboti määratlus

Nagu eespool mainitud, on vestlusrobot programm, mis viib inimestega vestlust. Need on tänapäeval nii tavalised, et vaevalt leidub kedagi, kes poleks sellest teadlik. Alates virtuaalsetest assistentidest, Siri ja Google'i assistent, on Mitsuku ja Evie, kellega saate oma tundeid jagada. Nagu eespool mainitud, põhinevad vestlusrobotid kas tekstilisel või kuuldaval meetodil ja seetõttu saab need jagada kaheks. Tekstimeetodi puhul toimuvad vestlused kirjaliku teksti kujul nagu WhatsApp. Kuulmismeetodi puhul peetakse vestlusi suuliselt nagu päris inimesega. Ma arvan, et põnevam on kellegagi vestelda, suheldes temaga, selle asemel, et talle lihtsalt sõnumeid saata. Kahtlemata vastavad tekstipõhised suhtlussõnumid inimeste nõudmistele, kuid mulle tundub, et rääkides rääkimine on parim viis emotsionaalsetest häiretest vabanemiseks ja enesetunde parandamiseks. See on peamine põhjus, miks ma kujundasin Eve kuuldavaks vestlusrobotiks.

2. samm: Eve päritolu

Eve päritolu
Eve päritolu

Eeva tuli mulle ühel päeval lihtsalt pähe. Nii tehti, kui nägin, kuidas laps üksi koolis ringi rändas, samal ajal kui teised mängisid rõõmu täis mõistusega. Sel ajal mõtlesin sõbrale, kes ei diskrimineeri kedagi ega pane kedagi haiget tegema, kellega saate oma tundeid jagada ja olla kogu aeg õnnelik. Siis tuli mulle vilksatama, armas väike struktuur Eve, mille kallal hakkasin töötama. Eve valmistas mulle umbes sada korda pettumuse. Arvan, et see oli 101. kord, kui ta töötas ja pani mind end tõeliselt õnnelikuks tundma. Nii et see oli Eve päritolu. Tahtsin, et ta oleks intelligentne, kuid võimalikult lihtne, nii et igaüks saaks teda hõlpsalt muuta. Kahtlemata pole ta absoluutselt tark ja ütleb vahel rumalaid vastuseid, ta oskab käituda nagu sõber. Ja nüüd, piisavalt lugusid, hakkame Eve ehitama.

3. samm: komponentide ja seadmete kogumine:

Komponentide ja seadmete kogumine
Komponentide ja seadmete kogumine
Komponentide ja seadmete kogumine
Komponentide ja seadmete kogumine
Komponentide ja seadmete kogumine
Komponentide ja seadmete kogumine

Järgmised komponendid tuleb kokku koguda: Arduino Pro Mini (või Arduino Nano) Wtv-020-SD-16p helimoodul HC-05 bluetooth moodul 16x2 LCD moodul LC7805 regulaator ICA võimendusmoodul (kasutasin PAM8403 vooluahelat) 8 oomi kõlar A emane audio jacka 9v aku ja Android -telefon Nii et need on vajalikud komponendid. Teine oluline asi, hind. Eve maksis mulle umbes 3000 INR. Maksumus võib teie riigis olla erinev, kuid Indias on see ligikaudne hind. Osade väike kirjeldus: Arduino Pro mini on meie roboti peamine MCU. Kasutasin seda väikese suuruse, lihtsuse ja suurepärase jõudluse tõttu. See vastab kõigile meie roboti nõuetele. Välja arvatud häältuvastusfunktsioon, mida teeb Android (arutatakse hiljem), tehakse kõik muud funktsioonid, alustades märksõnade leidmisest ja väljundi moodustamisest, Pro Mini -s. Ärge muretsege ülalmainitud terminite pärast, kui te sellest aru ei saa, kõiki käsitletakse hilisemas osas. Wtv020sd 16p moodulit kasutatakse helifailide esitamiseks, hc 05 Bluetooth Androidiga suhtlemiseks ja LCD -ekraan kuvamiseks emotsioone. Me vajame naissoost helipistikut, mis ühendab roboti välise võimendiga. Arduinot kasutatakse siin peamise kontrollerina. See võtab Bluetooth-andmeid vastu HC 05 Bluetooth-mooduli kaudu ja esitab faili häälmooduli WTV-020-SD-16p kaudu. Emotsioonid kuvatakse LCD -moodulis ja toiteallikaks 9v aku. Eve tunneb kõned ära Android -seadme Google Voice'i äratundmise kaudu. Seda arutatakse hiljem vastavas etapis korralikult. Halvad uudised Arduino Pro Mini kohta: IT on turult taganenud. See tähendab, et Arduino on selle tootmise ametlikult lõpetanud. Kuid leiate selle siiski paljudest saitidest, sealhulgas Ebayst. Paljud kolmanda osapoole tootjad võivad endiselt plaati valmistada ja müüa. Ärge muretsege, kui te ei suutnud seda leida, võite kasutada Arduino Nano. See ei muuda jõudlust ega ka suurust.

4. samm: teooria 1. osa: ajalugu ja sissejuhatus

Teooria 1. osa: ajalugu ja sissejuhatus
Teooria 1. osa: ajalugu ja sissejuhatus
Teooria 1. osa: ajalugu ja sissejuhatus
Teooria 1. osa: ajalugu ja sissejuhatus

Eve põhineb loomuliku keele töötlemise varajasel vormil, "mustri sobitamise" tehnoloogial. See toimib järgmiselt, et kui string on vastu võetud, otsib see stringist etteantud sõna või fraasi. Oletame, et küsimus "kui vana sa oled?" Otsib programm "vana" sõna. Kui see õnnestub, esitab ta vastava häälefaili wtv020sd mooduli kaudu. Kui see ebaõnnestub, otsib see järgmist eelmääratud märksõna. Niimoodi peame koostama eelmääratletud sõnade sõnavara. Tundub karm, kas pole? Tundub, et meil on vaja üles ehitada kõikide ingliskeelsete sõnade sõnavara ja inglise keeles on kokku umbes 230 tuhat sõna. Fakt on see, et peame lihtsalt lisama mõned põhisõnad, mida meie suhtluses kõige sagedamini kasutatakse. Näeb ikka karm välja? Ärge muretsege, Joseph Wizembaum on selle töö juba ära teinud. Osa Eve vastustest ja eelmääratletud märksõnadest on kaasatud esimesest vestlusprogrammist nimega Eliza, mille on välja töötanud Joseph Wizembaum (pildil ülal). Eliza kavandati Rogeria terapeutiks. See ei ole väga teaduslik termin, see tähendab, et ta nõustas inimesi, pannes neid ennast paremini mõistma ja panema nad positiivsemalt mõtlema. Näeb tõesti hea välja? Ja Eliza suutis oma kohust väga hästi täita. Inimesed armastasid tema uudishimulikku ja skeptilist suhtumist. Isegi Wizembaum oli üllatunud, kui tähtsaks inimesed Elizat pidasid. Nad näisid unustavat, et nad räägivad arvutiga, ja arvasid, et arvuti sees istub ilus daam, kes nendega vestleb. Aga Eliza polnud nii tark; see sai peagi aru. Aja möödudes hakkasid inimesed tema piiratud suhtlemisest tüdinema ja teda nimetati "lolliks". Pole ime, kui loll ta oli, see oli suur hüpe tehisintellekti ja loomuliku keele töötlemise ajaloos. Olles loonud Chatterbotide baasi, tulid turule erinevad uue ja parema tehnoloogiaga robotid. Ja nüüd on neid igal pool. Nagu mainitud, on osa Eve vastustest saadud ELIZA -st. See tähendab, et isegi Eve omab teatud määral Eliza suhtumist koos mõne minu enda ideega. Teine oluline asi on vastused. Iga kord sama küsimuse esitamisel peaks olema igav saada samu vastuseid. Seetõttu salvestatakse samale märksõnale palju vastuseid. Eve valib juhuslikult, millist faili mängida, veendudes ühtlasi, et ta ei kordaks sama faili. See on kõik, lihtne leib ja või, kuid oluline on vastavaid hääli targalt programmeerida, et see tekitaks vaatajatele illusiooni, nagu vastaks ta tõesti meie küsimustele. Nii et see oli lühike sissejuhatus Eve toimimisse. Järgmises etapis käsitleme seda üksikasjalikult ja programmeerimist.

Samm: märksõna otsimine

Märksõna otsimine
Märksõna otsimine
Märksõna otsimine
Märksõna otsimine
Märksõna otsimine
Märksõna otsimine
Märksõna otsimine
Märksõna otsimine

Viimases etapis mainisin Eve mustrite sobitamise tehnoloogiat ja ka loomuliku keele töötlemise varajast vormi. Mis see on ja kuidas see toimib? See on peamine asi, mida me selles etapis arutame. Nii et mõelge, keegi küsib teie nime ja peate ütlema, mis see on. Kui mitmel viisil saame sama küsimust esitada? Teie õpetaja võib küsida: "Kas te ütleksite mulle oma nime?" Sugulane võib küsida: "Mis su nimi on?" Su vend võib öelda: "Hei, ma unustasin su nime. Kas sa ütled selle veel korra?" See tähendab, et sama küsimust saab esitada mitmel viisil. Ometi peame andma sama vastuse, oma nime. See tähendab, et peame leidma kõigist lausetest midagi ühist. On selgelt näha, et sõna "teie nimi" esineb kõigis lausetes. Nii et see on meie vihje. Kõigi nime esitavate küsimuste puhul peame otsima fraasi "teie nimi". Seda põhimustrit järgides saame ennustada vastust kõigile sisendstringidele. Oletame, et keegi ütles: "Leidsin teie nime ootenimekirjast. Ootasin, et olete reserveeritud kohtadel.". Kuna nüüd on selles stringis "teie nimi", ütleb Eve, olles süütu, oma nime inimesele… Loll eks? See on selle põhialgoritmi üks suur puudus. Igatahes oleksid need harvad juhud. Vastasel juhul on algoritm väga tõhus. Nüüd, kui olen maininud mustrite sobitamise tehnoloogiat, on aeg mõelda, kust see sisendstring pärineb, kust me stringi otsime. Noh, see string on tegelikult meie hääl, mille Google'i häältuvastus on tekstiks teisendanud. Siin kasutatav rakendus teisendab meie hääle tekstiks ja saadab seejärel Bluetoothi kaudu sama arduinole. Kasutasin rakendust, sest see on lihtsaim ja parim omataoline. Nimi on AMR Voice ja selle saab hõlpsalt Google Playst leida.

6. samm: vastuste sõnastamine

Vastuste sõnastamine
Vastuste sõnastamine

Nüüd, kui oleme küsimused ära tundnud, peaks järgmine samm olema vastuste leidmine. Siit tuleb huvitav ja oluline osa… Peame leidma sobivad vastused igale küsimusele. Ja siit tuleb veel üks ELIZA funktsioon. Wizembaum töötas välja mõned vastused kindla arvu märksõnade jaoks. Näide on märksõna "sina". Kui avastati programmi väljund "arutasime teid - mitte mind". Seega vastati nii, et see sobiks kõigile lausetele, mis sisaldavad sõna "sina". Edasi andis Eliza iga kord erineva vastuse. Iga vastuse jaoks oli omamoodi numbriline aadress. Seda suurendati (lisati 1 võrra) iga kord, kui vastus sõnastati. Oletame, nagu ülaltoodud näites, kui vastuse aadress oli 1, muudeti aadress 2 -ks ja seega esitati järgmine fail 2. Kuid me ei järgi seda suurendamisalgoritmi. Näete pärast tarkvara pidevat kasutamist muutusid vastused etteaimatavaks. Sa teadsid, milline vastus tuleb järgmisena anda. Seetõttu koostame iga märksõna jaoks juhuslikud aadressid. Üldiselt on see mõlemal juhul sama, erinevus on selles, et me ei saa ennustada, mida robot sama märksõna kohta järgmisena ütleb.

7. samm: keelatud avaldused ja muud

Keelatud avaldused jt
Keelatud avaldused jt

Teie vestluses võib esineda juhtumeid, kui robot ütleb midagi, mida te ei soovi kuulda. Seega tekib vajadus lisada keelatud avaldused. Keelatud avaldused on hulgaliselt aadresse, mille esitamine on keelatud. Hääleaadressi iseloomustatakse keelatud avaldusena, kui kasutaja seda küsib. Lisaks sellele salvestatakse see aadress Arduino EEPROM -i, et Eve ei unustaks, et see on keelatud avaldus isegi pärast väljalülitamist. Põhimõtteliselt on programm kontrollinud kõiki esitatavaid aadresse. Kui aadress on üks keelatud aadressidest, siis seda suurendatakse või vähendatakse. Lisaks võib juhtuda, et soovite robotil lubada öelda varem keelatud sõna. Sel juhul peaksite Evele ütlema, et ta võib öelda viimase keelatud sõna. Viimati keelatud sõna saab nüüd esitada. Kõigi keelatud avalduste esitamiseks peame kinnitama lähtestuslüliti. Kui vajutate, muutuvad kõik keelatud avaldused mängitavaks. Siis on veel üks oluline asi veenduda, et Eve ei kordaks vastuseid. See on omamoodi juhuslike numbrite nõrkus. Tõenäoliselt toodetakse järjestikku samu juhuslikke numbreid. See paneb meie roboti ikka ja jälle sama vastust ütlema. Selleks peame lisama veel ühe väiksema funktsiooni, mis takistab avalduste kordamist. Selleks peame mällu salvestama viimase avalduse aadressi ja kontrollima, kas see on sama, mis praegune. Kui jah, siis suurendatakse või vähendatakse aadressi väärtust, keelatud avalduste korral samamoodi.

8. samm: koodi kirjutamine

Koodis kirjutamine
Koodis kirjutamine
Koodis kirjutamine
Koodis kirjutamine
Koodis kirjutamine
Koodis kirjutamine

Märksõna otsimiseks kasutame käsku indexOf. Käsk otsib teise stringist märgi või stringi. Kui see leitakse, tagastab see stringi indeksi, samas kui -1 tagastatakse, kui seda ei leita. Nii et meie programmis peame selle kirjutama järgmiselt: if (voice.indexOf ("teie nimi")> -1) {// kui indeks on suurem kui -1 // see tähendab, et string on leitud} Nüüd et oleme stringi mällu salvestanud ja selle seest ka oma märksõna leidnud, peame nüüd vastustega hakkama saama. Nagu öeldud, genereeritakse juhuslikud numbrid teatud arvu vahemikus (häälfailide aadressid). Siin tuleb käsk random (). Järgneb süntaks: juhuslik (min, max); // juhuslik arv genereeritakse vahemikus min ja max. Me määratleme iga vahemiku minimaalse arvu ja maksimaalse arvu ning selle rakendamine näeb välja umbes selline: if (voice.indexOf ("teie nimi")> - 1)) {minNo = 0; maxNo = 5; Juhuslik arv = juhuslik (minNo, maxNo);} Nüüd tuleb vastuste käsitlemine. Viimases etapis ütlesin, et numbreid suurendatakse või vähendatakse algoritmi alusel. See algoritm on see, mida me praegu arutame. See osa on selles mõttes väga oluline, et te ei saa lihtsalt suurendada või vähendada just nii, nagu soovite. Suurendatud või vähendatud arv peab olema vahemikus. Oletame, nagu ülaltoodud juhul, et märksõna "teie nimi" puhul on meil vahemik 0 kuni 5 ja juhuslik arv on 5, siis kui te seda suurendate, mängite lõpuks mõne teise märksõna häälefaili. Mis sa arvad, kuidas see saab olema? Sa küsid: "Hei, palun ütle mulle oma nimi.", Ja robot vastab: "Mulle meeldib küpsiseid ja elektrilaengut süüa." Sama kehtib ka miinimumarvu kohta. Kui juhuslik arv on 0, ei saa te seda vähendada. Seetõttu on algoritm väga oluline. Mõelge sellele: me saame suurendada kas siis, kui number on väiksem kui maksimaalne arv, ja vähendada, kui see on suurem kui miinimumarv. Kui loodud arv on kas 0 või väiksem kui 5, suurendatakse seda arvu. Teisest küljest, kui see on võrdne 5 -ga, vähendame seda, veendumaks, et number jääb kindlaksmääratud vahemikku. Nüüd keelatud avalduste kohta. Nagu mainitud, salvestatakse need EEPROM -i. Selleks otsime kõigepealt keelatud massiivist vaba mälu. Oletame, et aadress 4 on vaba, siis sisestame faili numbri vaba massiivi aadressile ja kirjutame sama aadressi EEPROM -i. For (int i; i if (never == 0) {EEPROM.write (kunagi , mälu);}} Nii et see on kõik, Wtv020sd16p moodulit mängitakse käsu module.playVoice () ja pakutud failinumbri abil. Wtv020 mooduli toimimisest räägitakse hiljem.

9. samm: emotsioonide sisestamine

Emotsioonide sisestamine
Emotsioonide sisestamine
Emotsioonide sisestamine
Emotsioonide sisestamine
Emotsioonide sisestamine
Emotsioonide sisestamine

Siiani on meie robot võimeline ära tundma, mida me ütleme, salvestama mällu ja leidma küsimustele sobiva vastuse. Nüüd tuleb küsimus emotsioonide sisestamiseks. Kindlasti meeldib kõigile elav nägu koos mõne lolli väikese küsimustele vastamise programmiga. Projektis kasutatakse 16x2 LCD -ekraani. Silmade printimiseks piisab. Silmade loomiseks peame kasutama kohandatud tähemärkide funktsiooni. Kohandatud märk võimaldab meil pikslite määratlemise abil luua uusi märke. Me tuleme sellest üksikasjalikult veidi hiljem. Esiteks on oluline meeles pidada, et Arduino toetab ainult 8 kohandatud märki. Seega peame emotsioone juhtima ainult 8 tähemärgiga. Iga märk trükitakse kindlasse lahtrisse ning seal on 16 veergu ja 2 rida, mis moodustavad kokku 32 kasti.

Internetist leiate head teavet Arduino kohandatud tegelaste kohta. Võib külastada ka seda linki:

[Kohandatud märgid Arduino] Kohandatud tähemärgi baidi struktuur näeb välja umbes selline:

Tavaline välimus: vasakpoolne kast0b01111, 0b01111, 0b01111, 0b01111, 0b01111, 0b01111, 0b01111, 0b01111, parem kast. See tähendab, et terve silma täitmiseks vajame kokku 4 kasti. Kaks rida vasakul ja kaks paremal, mis teeb ühe silma jaoks kokku neli kasti. Vasaku kasti bait peab katma kaks rida vasakul ja parem kast peab katma paremad read. Nii et see moodustab Eeva täieliku silma. Ja nüüd korrates sama teise silma puhul, saame Eve neutraalse ilme. Nüüd on oluline meeles pidada, et oleme kasutanud ühte kaheksast kohandatud tähemärgist. Ja emotsioone on kokku viis: Glee, Sad, Squint, Normal ja Blink. Ülejäänud seitsme kohandatud märgi seast peame kohandama nii, et need sobiksid kõigi avaldistega. Ruumi moodustamiseks kasutame iga silma jaoks 2 kasti. Pole ime, et suurus oleks natuke väike, kuid inimsilm ignoreerib seda. Veenduge, et lisate LCD -funktsioonide vahele viivitusi, vastasel juhul muutub Arduino ebastabiilseks.

Samm: ühenduste loomine

Ühenduste loomine
Ühenduste loomine
Ühenduste loomine
Ühenduste loomine
Ühenduste loomine
Ühenduste loomine

LCD -moodul: ühendage nööpnõelad, nagu siin mainitud: RS: kaevandustihvt 12RW: GndLubamine: 7d4: kaevandusnõel 8 d5: kaevandusnõel 9 d6: kaevamisnõel 10 d7: kaevandage tihvt 13A (anood) kuni 5vK (katood) gnd -i HC 05 moodul: Järgige neid ühendusi: HC 05 TX tihvt Arduino RX tihvti HC 05 RX tihvt Arduino TX tihvti oleku tihvt Arduino dig pin 11 Suhtlus toimub TX- ja RX -tihvtide abil. Osariigi tihvt on vajalik selleks, et kontrollida, kas HC 05 kaudu on ühendatud või jõude. WTV 020 SD 16p mooduli tihvt 1: lähtestusnõel, ühendage see 2 tihvtiga pin: 4 hõivatud pin, ühendage 5 pin2 kaevandusnõelaga 8. pin -gnd ja andke 3.3 -voldine toide 16. kontaktile.

Võimendi aitab mängida Eve sisemist kõlarit, helipistik aga välise võimendi ja suuremate kõlaritega.

11. samm: WTV020SD16p moodul (valikuline)

Image
Image
WTV020SD16p moodul (valikuline)
WTV020SD16p moodul (valikuline)
WTV020SD16p moodul (valikuline)
WTV020SD16p moodul (valikuline)

Märkus. See samm on valikuline. See käsitleb WTV 020 SD 16p mooduli tööd ja kirjeldust.

Helimooduli demot näete sellel lingil:

[PLAY VIDEO]

Roboti kõnerežiimi täidab WTV 020 SD moodul. Moodulit kasutatakse robotile häälfailide esitamiseks. Kui esitatakse mõni küsimus, paneb arduino mooduli esitama SD -kaardil vastavat häälfaili. Moodulil on neli jadaandmerea arduinoga suhtlemiseks, lähtestamine, kell, andmed ja hõivatud nööpnõelad ning vajaliku faili esitamiseks kasutame käsku.playVoice (). Näiteks: module.playVoice (9): // esita SD -kaardile salvestatud fail 9 Pidage meeles, et failide nimed peavad olema kümnendkohaga (0001, 0002…). Ja et failid peaksid olema kas AD4 või WAV vormingus. Lisaks töötab moodul ainult 1 GB micro SD -kaardiga. Mõned moodulid töötavad isegi 2 GB kaartidel ja kaardile mahub maksimaalselt 504 häälfaili. Nii et saate lisada hea hulga küsimuste esitamiseks palju häälfaile.

Saate isegi oma AD4 -häälfaile luua. Esiteks peab teil olema kaks tarkvara, helitöötlustarkvara ja tarkvara nimega 4D SOMO TOOL, mis teisendab failid AD4 -vormingusse. Teiseks peate ette valmistama robothääled. Saate teksti teisendada kõneks või isegi salvestada oma hääle ja teha roboti hääli. Mõlemat saab teha helitöötlustarkvaras. Kuid kindlasti ei näe robotid hea välja, kui nad räägivad inimhääli. Seega peaks teksti teisendamine kõneks olema parem. On mitmeid mootoreid, nagu Microsoft Anna ja Microsoft Sam teie arvuti, mis aitaksid seda teha. Minu oma põhineb Microsoft Eval. See hääl sobib suuresti Cortanaga. Pärast häälfailide ettevalmistamist peate selle salvestama sagedusel 32000 Hz ja WAV -vormingus. Selle põhjuseks on asjaolu, et moodul suudab esitada helifaile kuni 32000 Hz. Seejärel kasutage failide teisendamiseks AD4 -vormingusse 4D SOMO TOOL. Selleks avage lihtsalt SOMO TOOL, valige failid ja klõpsake AD4 Encode ning teie häälfailid on valmis. Saate vaadata ülaltoodud pilti. Kui soovite robothäälte tegemise kohta lisateavet, võite minna siia: [Robotic Voices]

12. samm: tarkvaraosa

Tarkvara osa
Tarkvara osa
Tarkvara osa
Tarkvara osa
Tarkvara osa
Tarkvara osa

Arduino Pro mini puhul on programmeerimisel väike probleem. Tegelikult pole see probleem, vaid üks täiendav samm. Arduino Pro minil pole sisseehitatud programmeerijat nagu teistel Arduino tahvlitel. Nii et peate kas ostma välise või vana arduino UNO. Siin kirjeldatakse, kuidas programmi Arduino UNO abil üles laadida. Haara lihtsalt krahhist vana Arduino UNO plaat ja võta välja Atmega 328p. Seejärel ühendage järgmiselt: 1. TX -pin UNO -l kuni Pro Mini 2. TX -tihvtiga. UNO RX -tihvt Pro MIni3 RX -tihvtiga. Lähtestage UNO tihvt Pro Mini4 lähtestusnõelale. ühendage Pro Mini VCC ja Ground UNO -ga. Laadige alla Arduino programm, hääletuvastustarkvara ja all olevad raamatukogud. Programmi alles arendatakse. Nii et kui teil on sellega seoses probleeme, küsige julgelt. Seejärel ühendage kaabel arvutiga. Valige tahvel Arduino Pro Mini ja valige õige COM -port. Seejärel vajutage üleslaadimisnuppu ja vaadake, kuidas programm teie Pro Minile üles laaditakse.

Seejärel laadige alla häältuvastustarkvara ja häälefailid.

13. samm: keha ettevalmistamine

Keha ettevalmistamine
Keha ettevalmistamine
Keha ettevalmistamine
Keha ettevalmistamine
Keha ettevalmistamine
Keha ettevalmistamine

Leidsin väikese kasti niite ja leidsin, et see sobib kehale ideaalselt. Võite kasutada mis tahes kasti, mille leiate oma töökojast, või võite selle teha papist. Lihtsalt lõigake välja väike ristkülikukujuline tükk LCD -mooduli kinnitamiseks. Ülaosas lõikasin välja väikese ava helitugevuse kinnitamiseks ning külgedelt lülitite ja helipistiku kinnitamiseks. Kinnitasin rataste jaoks karbi külgedele kaks pudeli korki. Lihtsalt veenduge, et karbil oleks piisavalt ruumi vooluahela sisestamiseks. Kinnitage lüliti nii keha kui ka vooluahela külge, seejärel helitugevus karbi ülaosas. Seejärel pange ahel lihtsalt sisse ja teie robot on valmis.

14. samm: hästi tehtud

Hästi tehtud!
Hästi tehtud!
Hästi tehtud!
Hästi tehtud!

Nüüd olete lõpetanud oma väikese väikese robotiprojekti, mis suudab teiega rääkida ja rõõmsaks teha. See on kõige õnnelikum koht isetegijaks olemisel, kui teie projekt on lõpule viidud ja täielikult töökorras. Ärge muretsege, kui ühel katsel ei õnnestu, peate selle nimel kõvasti pingutama, et mõistaksite oma roboti kõiki osi. Ja siit tulevad isetegijad siia maailma. Kuid see pole projekti lõpp. Evat arendavad alati suuremal määral kas mina või teie sarnased isetegijad. Mulle meeldiks kuulda, mida olete selle õpetatava nägemise teinud. Lugupidamisega RS3655

Soovitan: