Turinys:

Sukurkite „Arduino“varomą kalbančio roboto galvą!: 26 žingsniai (su nuotraukomis)
Sukurkite „Arduino“varomą kalbančio roboto galvą!: 26 žingsniai (su nuotraukomis)

Video: Sukurkite „Arduino“varomą kalbančio roboto galvą!: 26 žingsniai (su nuotraukomis)

Video: Sukurkite „Arduino“varomą kalbančio roboto galvą!: 26 žingsniai (su nuotraukomis)
Video: LDmicro 21: настройка режима C и Arduino Mega (программирование микроконтроллера с помощью LDmicro) 2024, Gruodis
Anonim
Sukurkite „Arduino“varomą „Talking Robot Head“!
Sukurkite „Arduino“varomą „Talking Robot Head“!

Ši roboto galvutė iš pradžių buvo sukurta kaip metų pabaigos projektas mano fizinio skaičiavimo klasei, tačiau per vasarą ji „išmoko“kalbėti. Galvą maitina du „Freeduinos“, 3 „TLC5940NT“lustai ir „Adafruit Industries Wave Shield“, kuriuos rasite čia: www.ladyada.net/make/waveshield/. Galva šiuo metu yra prijungta prie kompiuterio dviem USB kabeliais, vienas skirtas maitinti, kitas - siunčiant nuoseklias komandas, ką pasakyti/išjungti. Kai galva gauna įvestas komandas, ką pasakyti/ištarti, ji atkuria atskirus žodžių failus, kad sukurtų sakinį ar kelis sakinius. Jis taip pat keičia savo emocijas pagal emocines komandas, siunčiamas iš kompiuterio. Ši roboto galvutė yra daugelio galimų programų pagrindas, nes ji gali pasakyti bet ką, kam ji turi žodyną. Šiuo metu aš dirbu, kad prijungčiau jį prie interneto ir priversčiau jį patikrinti ir skaityti mano el. Paštą per PHP scenarijų. Aš atnaujinsiu šį „Instructable“, kai progresuosiu kartu. Štai vaizdo įrašas apie tai, kaip jis veikia: „Galva vis dar yra tęstinis projektas, todėl bet kokie komentarai apie bet ką čia yra daugiau nei sveikintini! Ypatingas ačiū Liz Arum už pagalbą man viskuo! Atnaujinimas: dėl populiaraus prašymo, kurį dabar pridėjau vaizdo įrašas, kuriame robotas kalba ir išreiškia save! Mėgaukitės laisvalaikiu!

1 žingsnis: surinkite visas medžiagas/dalis/elektroniką

Ši roboto galvutė naudoja: 1 „Breadboard“(ji turi būti daugiau nei 48 eilučių ilgio, o plokštės centre turi būti tarpas, kad būtų galima prijungti IC mikroschemas. Taip pat būtina maitinimo ir antžeminė magistralė, einanti palei duonos lentą). 2 RGB šviesos diodai (įvairiaspalvėms akims) Bendras anodas. 1,50–1,95 USD už kiekvieną. 2 X 1,75 USD = 3,5036 USD „Raudonos lemputės“(burnai)-maždaug 40–50 centų už kiekvieną. 36 X $.45 = 16,202 USD „HXT900 Micro Servos“(antakiams judinti) galima rasti adresu: https://www.hobbycity.com/hobbycity/store/uh_viewItem.asp?idProduct=662 2 X $ 3,65 = 7,303 USD TLC5940NT (Iki vairuoti/uždegti visus šviesos diodus ir valdyti servus) galima rasti „Digi-key“https://search.digikey.com/scripts/DkSearch/dksus.dll?Detail&name=296-17732-5-ND, kur jie yra įkainoti už 4,28 USD. 3 X 4,28 USD = 12,84 USD arba „Mouser“https://www.mouser.com/ProductDetail/Texas-Instruments/TLC5940NT/?qs=sGAEpiMZZMu8%252bGBKj8XSFEjwsgnt5grMZ49G/W4nR14%3d3 triukšmo lizdai (garsiakalbiai) (servos) Išgelbėtas iš seno kompiuterio maitinimo šaltinio. „Free2 Original Freeduinos“arba „Arduinos“. „Freeduinos“galima nusipirkti adresu https://www.freeduino.org/buy.html. Jų kaina yra 23,99. 2 X 23,99 USD = 47,98 USD Arba www.sparkfun.com/commerce/product_info.php, skirta „Arduinos“. Kaina 29,95 USD už kiekvieną. 2 X 29,95 USD = 59,90 USD. Įspėjimas: „Freeduinos“reikalauja tam tikrų litavimo žinių, jei nenorite lituoti savo lentų, tada nusipirkite „Arduino“. Įspėjimas: šiam „Instructable“vis tiek reikia žinių apie litavimą, tad kodėl nepradėjus dabar?:) 1 „Waveshield“iš „Adafruit Industries“(kad robotas galėtų kalbėti) Galima įsigyti adresu: https://www.ladyada.net/make/waveshield/ Kaina po 22 USD. Apskaičiuota bendra visų aukštųjų technologijų dalių kaina (neįskaitant pristatymas), jei pirkote „Freeduinos“, o ne „Arduinos“. 109,82 USD! Bendra visų aukštųjų technologijų dalių kaina, jei pirkote „Arduinos“, o ne „Freeduinos“, yra…. 121,74 USD! Kalbant apie žemųjų technologijų medžiagas, jums reikės: tokio paties dydžio kartoninės dėžutės, kokios norite, kad būtų jūsų galva. Maitinimo gręžtuvas. Šilumos susitraukimo vamzdeliai, skirti izoliuoti laidų laidus ir tai, kas pučia karštą orą, kad jį sutrauktų (karšto oro pistoletas).

2 žingsnis: Surinkite ir lituokite visas grandines ir skydus

Surinkite ir lituokite visas grandines ir skydus
Surinkite ir lituokite visas grandines ir skydus

Lituokite Freeduinos (kaip ir aš), arba nepaisykite šios eilutės, jei nusipirkote „Arduino“. Čia yra nuoroda į jų surinkimo instrukcijas visiems žmonėms, nusipirkusiems „Freeduinos“: mcukits.com/2009/03/12/assembling-the-freeduino-board-kit/Solder the Waveshields. Ponia Ada turi labai gerą vadovą, kaip tai padaryti, savo svetainėje adresu https://www.ladyada.net/make/waveshield/solder.htmlPastaba: Be to, kad kartu suvirintas „Waveshield“, kaip nurodyta. Prie rezistoriaus R7 pridėkite ilgą laidą, esantį arčiausiai stiprintuvo lusto. Jis bus prijungtas prie „Freeduino“1 analoginės įvesties, kuri valdo roboto galvutės šviesos diodus. (Kol kas nesijaudinkite, kur prijungti kitą laido galą, tai bus išsamiai paaiškinta vėliau.) Žiūrėkite paveikslėlį, kad paaiškintumėte, kur lituoti laidą.

3 žingsnis: suprojektuokite roboto galvutę

Suprojektuokite roboto galvutę
Suprojektuokite roboto galvutę

Paimkite kartono dėžutę, kurią pasirinkote būti savo galva, ir pažymėkite vietas, kurias norėtumėte iškirpti akims ir burnai, supjaustydami popieriaus lapus ir padėdami juos ant dėžutės. Kai esate patenkintas susitarimu, galite pereiti prie pjovimo dalykų.

4 žingsnis: suprojektuokite savo roboto galvą: iškirpkite akis

Sukurkite savo roboto galvą: iškirpkite akis
Sukurkite savo roboto galvą: iškirpkite akis

Užklijuokite arba pažymėkite gabalus iki galutinės padėties ant dėžutės ir iškirpkite. (Pasilikite popieriaus lapą, kuriuo vaizdavote burną, jo prireiks vėliau.)

5 žingsnis: suprojektuokite savo roboto galvutę: sukurkite LED matricą burnai

Sukurkite savo roboto galvutę: sukurkite LED matricą burnai
Sukurkite savo roboto galvutę: sukurkite LED matricą burnai
Sukurkite savo roboto galvutę: sukurkite LED matricą burnai
Sukurkite savo roboto galvutę: sukurkite LED matricą burnai
Sukurkite savo roboto galvutę: sukurkite LED matricą burnai
Sukurkite savo roboto galvutę: sukurkite LED matricą burnai

Kiekvienas burnoje esantis šviesos diodas užsidegs atskirai. Norėdami tai padaryti, turite pagaminti LED matricą burnai. (Jei norite sužinoti, kas yra LED matrica, žr. 1 paveikslėlį) Paimkite popieriaus lapą, kuris turėtų būti burnos ertmė, ir pieštuku bei liniuote padalinkite popieriaus lapą į 36 dalis (9 X 4), Po vieną kiekvienam šviesos diodui tinklelyje. Kai tai padarysite, priklijuokite popieriaus lapą prie medžio gabalo ir būkite atsargūs, kad nesigręžtumėte per grindis (taip atsitiko man, todėl rekomenduoju gręžti ant kartoninės dėžutės.) Gręžkite skyles, kur linijos susikerta su 1/4 colio grąžtu, kad jūsų šviesos diodai tvirtai tilptų. Gręžtuvo dydis akivaizdžiai priklauso nuo jūsų šviesos diodų dydžio, todėl mažesniems šviesos diodams naudokite mažesnį grąžtą. (Pradėkite nuo mažo ir eikite aukštyn!) Pažvelkite į 2 ir 3 paveikslėlius, kad paaiškintumėte apie gręžimą/žymėjimą.

6 žingsnis: „Mouth LED“matricos sudarymas: šviesos diodų litavimas

„Mouth LED“matricos kūrimas: litavimas šviesos dioduose
„Mouth LED“matricos kūrimas: litavimas šviesos dioduose
„Mouth LED“matricos kūrimas: litavimas šviesos dioduose
„Mouth LED“matricos kūrimas: litavimas šviesos dioduose
„Mouth LED“matricos kūrimas: litavimas šviesos dioduose
„Mouth LED“matricos kūrimas: litavimas šviesos dioduose

Prieš darydami ką nors kita, patikrinkite, ar visi jūsų šviesos diodai nėra sudegę ar pritemdyti. Tai galite padaryti suradę mažą 3V mygtukų bateriją ir laikydami šviesos diodų kojas prie akumuliatoriaus (atminkite, kad ilga koja yra teigiama, trumpa neigiama). Tada įkiškite šviesos diodus po vieną eilutę į išgręžtą tinklelį. Sulenkite ilgas kojas taip, kad jos būtų lygiagrečios viena kitai, ir lituokite jas eilėmis po eilės (žr. 2 ir 3 paveikslus). Lituokite ilgas kojas, nes šiems šviesos diodams valdyti naudosite TLC, o TLC yra maitinimo kriauklės. Tai reiškia, kad jie valdo šviesos diodus, keisdami įtampos skirtumą tarp galios ir žemės.

7 žingsnis: „Mouth LED“matricos sukūrimas: litavimo valdymo laidai ant šviesos diodų

„Mouth LED“matricos kūrimas: litavimo valdymo laidai ant šviesos diodų
„Mouth LED“matricos kūrimas: litavimo valdymo laidai ant šviesos diodų
„Mouth LED“matricos kūrimas: litavimo valdymo laidai ant šviesos diodų
„Mouth LED“matricos kūrimas: litavimo valdymo laidai ant šviesos diodų
„Mouth LED“matricos kūrimas: litavimo valdymo laidai ant šviesos diodų
„Mouth LED“matricos kūrimas: litavimo valdymo laidai ant šviesos diodų

Lituokite ilgus laidus, kurie gali tilpti į duonos lentą (22 gabaritus) ant visų LED katodo laidų. Šie laidai valdys šviesos diodus. Po to būtinai izoliuokite visus atskirus laidus elektros juosta (ne smagu) arba termiškai susitraukiančiais vamzdeliais (rekomenduojama). Be litavimo laidų ant visų šviesos diodų katodo laidų, ant tinklelio anodo dalies lituokite 2 arba 3 laidus (Dalis, kuri yra lituojama kartu). Šie laidai bus naudojami kaip maitinimo šaltiniai, paskirstantys energiją visame tinkle. Jie bus prijungti prie 5 V įtampos.

8 žingsnis: Roboto galvutės viduje sumontuokite antakius judinančias servo sistemas

Roboto galvutės viduje sumontuokite antakiais judančias servo sistemas
Roboto galvutės viduje sumontuokite antakiais judančias servo sistemas
Roboto galvutės viduje sumontuokite antakiais judančias servo sistemas
Roboto galvutės viduje sumontuokite antakiais judančias servo sistemas
Roboto galvutės viduje sumontuokite antakiais judančias servo sistemas
Roboto galvutės viduje sumontuokite antakiais judančias servo sistemas

Prieš montuodami savo mini servo sistemas savo roboto galvutės viduje, karštai priklijuokite ilgą tvirtą (bet vis dar sulenkiamą) vielą ant servo svirties. Ši viela pakils į jūsų roboto vidų, išeis iš viršaus ir nusileis atgal, kad pajudintų antakius. (Pažvelkite į paveikslėlius, kad paaiškintumėte.) Paimkite savo mini servo (su prijungtais laidais) ir karštu klijuokite juos prie roboto galvutės vidinės dalies, tiesiai po akimis, įsitikindami, kad laidai gali judėti iš vienos pusės į kitą.

9 veiksmas: sumontuokite tinklelį roboto galvutės viduje

Įdiekite tinklelį roboto galvutės viduje
Įdiekite tinklelį roboto galvutės viduje
Įdiekite tinklelį roboto galvutės viduje
Įdiekite tinklelį roboto galvutės viduje

Karštai klijuokite tinklelį prie kartono gabalo, kuriame išgręžėte skyles, ir karštu klijais ant roboto galvutės vidinės pusės.

10 veiksmas: lituokite RGB šviesos diodus

Lituokite RGB šviesos diodus
Lituokite RGB šviesos diodus

Lituokite bendrojo anodo RGB šviesos diodą prie ilgos vielos. Tada lituokite spalvotą laidą (raudoną, žalią, mėlyną) prie jį atitinkančio RGB šviesos diodų laido (atskiro laido spalvą galima sužinoti naudojant 3 V mygtuko bateriją, kad apšviestų kiekvieną LED laidą paeiliui). Nepamirškite izoliuoti laidų!

11 žingsnis: Įdiekite RGB šviesos diodus roboto galvutės viduje

Įdiekite RGB šviesos diodus roboto galvutės viduje
Įdiekite RGB šviesos diodus roboto galvutės viduje
Įdiekite RGB šviesos diodus roboto galvutės viduje
Įdiekite RGB šviesos diodus roboto galvutės viduje

Įdiekite šviesos diodus roboto galvutės viduje, padėdami juos ten, kur norite, tada sulenkite ir priklijuokite laidus prie dėžutės vidinės pusės. Gėrimo šiaudelio padėjimas po šviesos diodu taip pat padeda jį išlaikyti. (Norėdami sužinoti daugiau, žiūrėkite nuotraukas)

12 žingsnis: Baikite padaryti akis

Baigti kurti akis
Baigti kurti akis
Baigti kurti akis
Baigti kurti akis

Klijuokite kvadratinį popieriaus lapą, kuris yra šiek tiek didesnis nei iškirpta skylė. Klijuokite jį virš skylės, kad uždengtumėte skylę ir už jos esantį šviesos diodą. Taip pat galbūt norėsite užklijuoti keletą popierinio rankšluosčio lapų prie akių skylių vidinės pusės, kad išsklaidytų šviesos diodų skleidžiamą šviesą.

13 veiksmas: prijunkite TLC5940NT lustus

Prijunkite TLC5940NT lustus
Prijunkite TLC5940NT lustus
Prijunkite TLC5940NT lustus
Prijunkite TLC5940NT lustus
Prijunkite TLC5940NT lustus
Prijunkite TLC5940NT lustus

Šiame žingsnyje turėsite kartu sujungti 3 TLC5940NT grandines, kad iš viso būtų 42 LED išėjimai (36 - burnai, 6 - įvairiaspalvėms akims). Arduino žaidimų aikštelės žmonės turi labai gerai dokumentuotą prijungimo vadovą, kaip 3 grandinė TLC5940NT kartu. Čia jis yra suspaustas: Arduino kaištis 13 -> SCLK (TLC kaištis 25) Arduino kaištis 11 -> SIN (TLC kaištis26) Arduino kaištis 10 -> Tuščias (TLC kaištis 23) Arduino kaištis 9 -> XLAT (TLC kaištis 24) „Arduino“kaištis 3-> GSCLK (TLC kaištis 18) -------------- U ------------ LED išvestis 1 | 1 28 | Šviesos diodas išjungiamas 0LED iš 2 | 2 27 | GNDLED Iš 3 | 3 26 | SIN (Ard pin 11.) LED išvestis 4 | 4 25 | SCLK (Ard 13 kaištis)… | 5 24 | XLAT (Ard 9 kaištis)… | 6 23 | BALKAS („Ard“kaištis 10)… | 7 22 | GND… | 8 21 | VCC (5V)… | 9 20 | 2K rezistorius prie žemės… | 10 19 | 5V… | 11 18 | GSCLK („Ard“3 kaištis)… | 12 17 | SOUT (prijungtas prie kito Daisychain TLC SIN)… | 13 16 | XERR iš 14 | 14 15 | LED išjungimas 15 ----------------------------- Pastaba: „Daisychaining 3 TLC“, todėl pirmojo TLC SIN yra prijungtas prie „Arduino“kaištis 11. Likusių TLC SIN yra prijungtas prie prieš tai esančio TLC SOUT. Visos tuščios vietos yra sujungtos viena su kita (TLC1 BLANK yra prijungta prie TLC2 BLANK ir tt …) Visi XLAT yra prijungti. SCLK yra prijungti. Visi GSCLK yra prijungti. Visi XERR yra prijungti. Taip pat prijunkite 2 arba 3 elektrolitinius kondensatorius prie duonos plokštės įžeminimo ir maitinimo (neigiamas ant kondensatoriaus, einančio į žemę, teigiamas iki 5 V). Įkrovimo suma, kurią ji laiko, nėra tokia svarbi, tačiau ji turėtų būti įvertinta 5 V ar aukštesne įtampa. Šie kondensatoriai veiks kaip filtras, išfiltruojantys visus įtampos tiekimo trūkumus (triukšmą), kuriuos sukelia TLC. Tai svarbu, nes „Waveshield“, kurį naudosime, turi tą patį pagrindą kaip ir TLC, ir TIKRAI nemėgsta elektros triukšmo (jis sukelia keistą, spragtelėjimą).

14 veiksmas: prijunkite šviesos diodus prie TLC

Prijunkite šviesos diodus prie TLC
Prijunkite šviesos diodus prie TLC
Prijunkite šviesos diodus prie TLC
Prijunkite šviesos diodus prie TLC

Prijunkite visus šviesos diodus prie TLC eilutėmis, pradedant nuo vieno viršutiniame kairiajame kampe ir pereikite prie šviesos diodo tiesiai dešinėje. Jūsų patogumui pateikiamas visų LED TLC kaiščių tinklelis. Patikslinimui žiūrėkite paveikslėlius. Burna: 0 1 2 3 4 5 6 7 89 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 Dabar taip pat tinkamas laikas prijungti RGB LED akis prie TLC, taigi čia yra kaiščiai… RGB LED akys: kairė: RGB dešinė: RGB 36 40 38 37 41 39 Nepamirškite prijungti universalius „The Grid“ir RGB šviesos diodų maitinimo laidus į 5 V įtampą!

15 žingsnis: Prijunkite servo prie TLC

Prijunkite servo prie TLC
Prijunkite servo prie TLC

Prijunkite servo maitinimą ir įžeminimą prie maitinimo plokštės „Power and Ground“. Prijunkite kairiojo servo valdymo laidą (kairė, nukreipta į robotą.) Prie 43 kaiščio (nepamirškite pradėti nuo nulio.), O dešinįjį - prie 44 kaiščio. Iš abiejų kaiščių turėsite prijungti 3,3 K omo rezistorių. iki 5 V, nes TLC yra maitinimo kriauklės ir jiems reikia energijos, kad nuskęstų.

16 žingsnis: Dabar jūs įeinate į programinės įrangos ir kodo šalį! (dažniausiai)

Prašau neįžeidinėti…

17 veiksmas: atsisiųskite TLC biblioteką

Naujausią „Arduino“TLC biblioteką rasite jų „Google“kodų puslapyje adresu: code.google.com/p/tlc5940arduino/. Atsisiųskite naujausią biblioteką ir įterpkite neišpakuotą aplanką „Tlc5940“į [naujausio „Arduino“aplanko]/hardware/ bibliotekos/

18 veiksmas: išbandykite TLC

Įkelkite mano serijinės išraiškos testo eskizą, kurį galite atsisiųsti žemiau. Įkelkite jį į „Freeduino“ir įveskite kai kurias komandas į serijinį monitorių, kad patikrintumėte, ar viskas veikia. Štai komandų sąrašas: behappybesadbemadfullmouthlinemouthoffmouthoffeyesbluegreeneyesredeyesblueeyesopenmouthtalkmouth (Jis nekalba, bet daro burnos judesius)

19 veiksmas: atsisiųskite patobulintą didelės talpos palaikymo (šiek tiek) „Waveshield“biblioteką

Atsisiųskite naują patobulintą „Adafruit“bangų skydą iš „Google“kodo (ačiū, pone Fat16, kad sukūrėte šią patobulintą biblioteką): code.google.com/p/wavehc/ Dar kartą įklijuokite neišpakuotą aplanką į aparatinę/bibliotekų/aplanką.

20 veiksmas: suformatuokite ir įdėkite SD korteles

Įdėkite SD korteles į kompiuterį ir suformatuokite jas naudodami FAT arba FAT16 failo tipą. NE FAT32! Tada įkelkite SD korteles su kalbos failais iš didelio AT&T teksto į kalbos svetainę www.research.att.com/~ttsweb/tts/demo.php#top Pervardykite failus į žodį, kurį jis kalba faile, ir sutrumpinkite failo pavadinimą į kažką, kuriame yra 6 ar mažiau raidžių. („Waveshield“gali tvarkyti tik failus, kurių failų pavadinimai yra 6 ar mažiau simbolių.) Pvz., Jei atsisiųsite failą „Instructables.com“-> pavadinkite jį instrc.wavJei labas -> hello.wav

21 žingsnis: išbandykite „Waveshield“

Atsisiųskite ir paleiskite mano serijinį „Waveshield“bandymo eskizą. Turėtumėte sugebėti per serijinį terminalą, įvesti sakinį ir leisti „Waveshield“jį paleisti (jei jame yra reikiamų.wav failų). Tai užtruks pirmąjį žodį, pridėkite „.wav“ir paleiskite jį prieš pereidami prie antrojo. Pvz., Jūs įvedate: Sveiki, mano vardas Bobas Jis bus žaidžiamas: labas. Wavmy.wavname.wavis.wavbob.wav: Išbandykite „Waveshield“kitą „Freeduino“(tą, kuris nėra prijungtas prie TLC), nes ir „Waveshield“, ir „TLC“naudojami kaiščiai13, 12, 11 ir 10 („Freeduino“). Taip yra todėl, kad šie kaiščiai turi aparatūros palaikymą sąsajai, vadinamai nuoseklia periferine sąsaja (SPI), kurios reikalauja ir TLC, ir „Waveshield“. Šių kaiščių negalima dalintis, todėl turėsime susieti du „Freeduinos“, naudodami „I2C“sąsają, kad jie galėtų perduoti informaciją tarp jų. Daugiau apie tai - 22 veiksme.

22 veiksmas: prijunkite I2C sąsają tarp abiejų „Freeduinos“

Prijunkite I2C sąsają tarp abiejų „Freeduinos“
Prijunkite I2C sąsają tarp abiejų „Freeduinos“

Palaukite … Kodėl mums reikia prijungti I2C sąsają tarp dviejų „Freeduinos“? Kodėl negalime tiesiog prijungti „Waveshield“ir TLC į vieną „Freeduino“? Štai kodėl: tiek „Waveshield“, tiek „TLC“„Freeduino“naudoja 13, 12, 11 ir 10 kaiščius. Taip yra todėl, kad šie kaiščiai turi aparatūros palaikymą sąsajai, vadinamai serijine periferine sąsaja (SPI), kurios reikalauja ir TLC, ir „Waveshield“. Tai reiškia, kad turėsime susieti du „Freeduinos“, naudodami tam tikrą duomenų ryšį, kad jie abu veiktų kartu. Serijinis pasirinkimas nebuvo pasirinktas, nes mano kompiuteris jau naudojo jį bendrauti su „Waveshield Freeduino“, todėl po intensyvaus „Google“paieškos radau nepaprastai patogų ir paprastą bendravimo būdą. I2C! Štai kaip prijungti sąsają: Prijunkite 4 analoginį įvesties kaištį abiejuose „Freeduinos“(tai yra SDA arba serijinė duomenų linija.) Prijunkite 5 analoginį įvesties kaištį abiejuose „Freeduinos“(tai yra SCL arba serijinio laikrodžio linija.) abiejuose „Freeduinos“(kitaip I2C sąsaja neveiks.) Prijunkite laidą, kurį litavote šios instrukcijos pradžioje, iš rezistoriaus R7 ant „Waveshield“prie 1 analoginio įvesties kaiščio, esančio TLC, valdančiame „Freeduino“(ši viela skirta patikrinti garsumą „Waveshield“ištarti žodžiai ir nėra „I2C“sąsajos dalis). (Norėdami sužinoti daugiau, žiūrėkite paveikslėlį)

23 veiksmas: įjunkite „I2C“„TLC Controlling Freeduino“

Įjunkite „I2C“„Freeduino“, kurį naudojote valdydami TLC, atsisiųsdami šį eskizą. Jis gaus informaciją apie išraiškas iš „Waveshield“, taip pat patikrins „Waveshield Freeduino“kalbos išvesties garsumą ir pajudins burną, kad imituotų kalbėjimą, atsižvelgiant į žodžio garsumą. I2C apibrėžimas: I2C taip pat žinomas kaip TWI (Dviejų laidų sąsaja) yra paprastas būdas sujungti kelis įrenginius (iki 128!) Su dviem duomenų laidais ir bendru pagrindu. Atnaujinti: „Arduino Sketch“pridėjau mirksėjimo funkciją. Dabar robotas mirksės 2–11 sekundžių intervalais, kaip ir žmogus.

24 veiksmas: išbandykite I2C sąsają

Atsisiųskite šį eskizą ir įkelkite jį į „Waveshield Freeduino“, jis siunčia žodžius „behappy“; ir tada "besad"; per I2C sąsają su TLC, valdančiu Freeduino kas dvi sekundes, tikiuosi, kad robotas iš džiaugsmo į liūdesį pereis kas dvi sekundes.

25 žingsnis: beveik baigta! Tiesiog reikia įkelti kodą …

Įkelkite galutinę „Waveshield Freeduino“kodo versiją. Jis turėtų paimti bet kokius žodžius, kuriuos įvedate į nuoseklųjį monitorių, ir ištarti juos (jei jame yra.wav failų) ir perduoti išraiškos komandas, pvz., „Behappy“; ir "besad"; į „Freeduino“, valdantį TLC per I2C sąsają. Pastaba. Komandų sąrašas yra tas pats ankstesniam TLC bandymo kodui (žr. 17 veiksmą), išskyrus tai, kad prie kiekvienos išraiškos komandos turite pridėti dvitaškį. Pvz., Jei norite, kad robotas liūdėtų ir sakytų „man liūdna“, įveskite: besad; Jaučiuosi liūdnas. Atnaujinti: „Waveshield Sketch“dabar tinkamai naudoja skyrybos ženklus (t. Y. Taškus ir kablelius, bet užrašus).

26 žingsnis: Sumontuokite viską ant roboto galvutės dėžutės ir viskas

Sumontuokite viską ant roboto galvutės dėžutės ir viskas!
Sumontuokite viską ant roboto galvutės dėžutės ir viskas!
Sumontuokite viską ant roboto galvutės dėžutės ir viskas!
Sumontuokite viską ant roboto galvutės dėžutės ir viskas!

Visus „Freeduinos“laidus pritvirtinkite prie dėžutės galo. Uždarykite viršutinį dėžutės dangtelį laidais ir baigsite! Dabar, jei tik galėtų patikrinti mano el. Hmmmm ……. Ačiū, kad perskaitėte šią instrukciją! Komentarai visada laukiami dėl bet ko!

Antrasis prizas „Arduino“konkurse

Rekomenduojamas: