Sisukord:

ARCA (jumalik kaugjuhtimisega Android): 4 sammu (piltidega)
ARCA (jumalik kaugjuhtimisega Android): 4 sammu (piltidega)

Video: ARCA (jumalik kaugjuhtimisega Android): 4 sammu (piltidega)

Video: ARCA (jumalik kaugjuhtimisega Android): 4 sammu (piltidega)
Video: Я работаю в Страшном музее для Богатых и Знаменитых. Страшные истории. Ужасы. 2024, Juuli
Anonim
ARCA (jumalik kaugjuhtimisega Android)
ARCA (jumalik kaugjuhtimisega Android)
ARCA (jumalik kaugjuhtimisega Android)
ARCA (jumalik kaugjuhtimisega Android)
ARCA (jumalik kaugjuhtimisega Android)
ARCA (jumalik kaugjuhtimisega Android)

See juhend on loodud Lõuna -Florida ülikooli Makecourse'i projektinõude täitmiseks (www.makecourse.com).

ARCA on jumalik kaugjuhtimisega Android, mida on uskumatult lõbus ehitada ja mängida. Selle projekti eesmärk oli luua midagi, millest igaüks saab aru ja millega suhestuda, luues nii jumaliku kui ka funktsionaalse roboti.

Robot toimib, näidates 8x8 LED -maatriksil erinevaid emotsioone, nende hulka kuuluvad rõõm, uni, armastus, viha, rumal ja üles, vasakule ja paremale vaatamine. Robot töötab ka nagu RC -auto ja võib edasi minna ning pöörata vasakule või paremale. Robot liigub edasi, aktiveerides mõlemad rataste mootorid, pöörab paremale mootorit sisse lülitades vasakule ja vasakule mootorile sisse lülitades paremale. Kujundus on väga lihtne, kuid see lihtsalt töötab ja ma tahtsin Arduino programmeerimisele palju keskenduda, kuna olen oma südamega programmeerija.

Kõigi selles õpetuses kasutatud failide uusimad versioonid leiate minu Githubi ARCA hoidlast.

Samm: osade loend ja 3D -printimine

Osade loend ja 3D -printimine
Osade loend ja 3D -printimine
Osade loend ja 3D -printimine
Osade loend ja 3D -printimine

Selle projekti osi saab printida 3D -vormingus või osta veebist. Kokkupanemisele mõeldes tahtsin teha tõhususe võtme ja proovida ka mitte (päris sõna otseses mõttes) ratast leiutada. Selle projekti jaoks kasutatav 3D -printer oli Makerboti replikaator. Kui soovite veenduda, et teie 3D -väljatrükid on minu omaga kooskõlas, kasutage seda printerit.

Konstruktsioonikomponendid

  • Karp, mille külgedel on augud rataste ja käte jaoks
  • Karbikaas aukudega tagarataste jaoks ja ava IR -anduri jaoks
  • Vasak käsi
  • Parem käsivars
  • Telg kahe tagaratta jaoks
  • kaks teljeühendust kaane ühendamiseks teljega
  • 4 ratast (mootorid on samuti sellel lingil)
  • Väikesed kruvid (mootoritesse paigaldamiseks)

Elektrilised komponendid

  • Arduino Uno
  • Väike leivalaud (ostsin Arduino komplekti ja see oli kaasas)
  • Kaks MAX7219 punase punkti maatriksit MCU juhtimisega
  • Infrapuna vastuvõtja ja kaugjuhtimispult
  • Kaks TIP 120 transistorit
  • Juhtmete ühendamine (kasutasin palju meessoost ja naissoost juhtmeid, samuti meessoost isaseid ja soovitan hankida pikad juhtmed, mitte lühikesed)
  • üks 220 oomi takisti
  • Kaks käigukastiga mootorit
  • USB -ühendatavad toiteplokid (kaasaskantavad, mida kasutatakse mobiiltelefonide jaoks)

2. samm: kokkupanek

Kokkupanek
Kokkupanek
Kokkupanek
Kokkupanek
Kokkupanek
Kokkupanek

Struktuurne kokkupanek

3D -prinditud osad vajavad tõenäoliselt puhastamist ja ma soovitan neid peeneteralise lihvimisega lihvida ja kasutada atsetooni (küünelakieemaldajat), et eemaldada 3D -printimisel kasutatud liimijäägid. Mõned osad ei pruugi ideaalselt sobida ja mul oli vaja telg lihvida, et see oleks ümmargune ja sobiks korralikult aukudest.

Rattad vajavad pisut reguleerimist, neid tuli rohkem puurida, et need sobiksid telje mõõtmetega taga ja kruvidega ees. Rataste aukude puurimiseks kasutage rataste aukude puurimiseks 6 mm puurit.

Selle kokkupaneku jaoks kasutasin mitmesuguseid liime, kuid leidsin, et vedel betoon (modelleerimisliim) oli parim hoidmiseks vaatamata pikale kuivamisajale, kuid epoksiid sobis kõige paremini asjade jaoks, mida peate kiiresti kuivama ja hästi hoidma, hoolimata sellest, et see on räpane.

Ülejäänud kokkupanek on üsna otse:

  1. Kinnitage teljehoidjad karbi kaane tagaküljele, kasutades tihendamiseks epoksiidi
  2. Viige telg läbi teljehoidjate
  3. Liimige rattad vedela betooni abil telje külge
  4. Lükake käed läbi ülemiste aukude ja liimige epoksü abil käehoidjale
  5. Keerake karbi kaas karbi sisse
  6. Kasutage elektrilist linti karbi põhjas, kus on rattad

Elektriline kokkupanek

Esirattad on kinnitatud otse mootorite külge ja mootoris peate kasutama väikest kruvi, et see oleks piisavalt pikk, et see sobiks läbi roboti augu mõlemal küljel. Mootori pöörlevas tihvtis peaks olema väike auk ja võite kruvi sinna sisse keerata ja kruvi pea ratta sisse kleepida, kui olete kruvi karbis olevast august läbi surunud.

Minu leivalaua tagaküljel oli kleepuv alus, kuid selle kleepimiseks võite kasutada elektrilinti, kui teie oma seda ei tee. Elektrilist linti kasutati ka ohutuskaalutlustel plaadil olevate elektriliste komponentide kinnitamiseks. LED -ekraanidega MCU -d kinnitati elektrilindi abil silmakoopade tagaküljele ja mootorid kinnitati elektrilindi abil ka karbi külgedele aukude lähedale. Kasutasin igaks juhuks nähtamatuks muutmiseks punast elektrilinti ja soovitan kasutada teie ARCA versiooniga sarnase värviga elektrilinti.

Leivalaud ja nööpnõelad on üles seatud nii nagu see Fritzingi pilt. Kui soovite sellele skeemile ARCA kohandamiseks rohkem lisada, saate alla laadida Fritzingi faili minu Githubi hoidlast ja seda oma äranägemise järgi muuta.

Juhtmed kinnitasin reduktormootorite silmuste külge, painutades juhtmeid silmuste ümber, et need oleksid kinnitatud. Tõenäoliselt oleks parem neid ühendusi joota, kui teil on jootekolbile juurdepääs, kuid see on lihtne lahendus, kui teil seda pole.

Toiteplokk on ühendatud sama juhtmega, mida kasutati Arduino ühendamiseks arvutiga teie programmi allalaadimiseks, ja see on robotis lihtsalt lahti, nii et seda saab kergesti eemaldada ja laadida.

3. samm: programmeerimine

Programmeerimine
Programmeerimine

Siin on kood, mille saate oma ARCA -sse üles laadida, et see toimiks täpselt nagu minu oma. Koodi kasutamiseks vajate ka kahte järgmist raamatukogu.

Selguse ja kohandamise huvides tutvustan teile siiski oma koodi. Jätke see samm julgelt vahele, kui te ei kohanda oma robotit või ei plaani emotsioone muuta.

Esiteks lisan oma koodi kasutamiseks kaks raamatukogu, mis võimaldab mul kasutada nende raamatukogude funktsioone ja objekte. Samuti määratlen siin oma nööpnõelad. Kui otsustasite oma nööpnõelad teha erinevaks minu eelmises etapis seadistatud tihvtidest, tehke oma koodis muudatused õigete tihvtidega.

Järgmisena määratlesin emotsioonid, kuulutasin IR -anduri ja 8x8 LED -ekraanide jaoks vajalikud objektid ning määratlesin mõned globaalsed muutujad. Emotsioonid on deklareeritud baidimassiivis, kus kõik massiivi kuusnurksed numbrid tähistavad tulemuseks oleva 8 x 8 kuvari ridu. Kohandatud emotsioonide loomiseks soovitan joonistada soovitud emotsiooni 8x8 ruudustikus ja seejärel kirjutada välja iga rea 8 -bitine binaararv, kus valgus on 0 ja tuli 1, ning seejärel luua sellest kuueteistkümnendarv ja pange see pikkuste massiivi 8. Olen määratlenud ka mõned globaalsed muutujad, mida silmuses kasutada; vilkuvate mehhanismide muutujad ja näpunäited emotsioonide salvestamiseks ja neutraalseks alustamiseks.

Nüüd jõuame seadistusahelasse, kus lülitan testimise huvides sisse jadaseire ja see peaks aitama teie koodi testimisel erinevate IR -kaugjuhtimispultidega. Seejärel lähtestasin vasaku ja parema silma objekte, kasutades LED -juhtimisteegi funktsioone. Seadsin ka käigukasti mootori tihvtid väljundisse ja käivitasin IR -vastuvõtja.

Tsüklis ootab see sisuliselt IR -signaali muutmist roboti olekus. Nii et kui infrapunasignaal on vastu võetud ja see sobib ühe konkreetse nupu koodiga, siis kui avaldus käivitatakse ja seab emotsioonidele vastavalt vasaku ja parema silma väärtused. Kui vajutate liikumisnuppu, näiteks vasakule, paremale, edasi ja OK, kirjutatakse tihvtid digitaalselt sisse või välja, sõltuvalt vajutatud nupust. Lihtsalt märkus infrapuna vastuvõtja koodide kohta: IR kaugkogus on näidiskood, mis annab teile kaugjuhtimispuldi heksakoodid, kui nuppude vajutamisel midagi ei juhtu, siis avage see programm, et veenduda koodide õigsuses. Kõik, mida pead tegema, on muuta iga nupuga kaasnevat kuuskantnumbrit.

Lõpuks on teil funktsioon, mis prindib emotsioonid 8 x 8 ekraanile. See kasutab LED -i juhtimisteegist pärit setRow -funktsioone ja lihtsalt läbib teie loodud massiivid ja määrab read vastavalt. See võtab arvesse kahte parameetrit: vasaku silma massiiv ja parema silma massiiv. See võib olla kas baitkursor või baidimassiiv (st nimi "neutraalne"), mis toimib nagu kursor.

4. samm: boonuse näpunäited ja nipid

Boonuse näpunäited ja nipid
Boonuse näpunäited ja nipid

Selle projekti käigus õppisin kindlasti palju ja tahtsin siin jagada mõningaid täiendavaid näpunäiteid, mis kehtivad nii selle projekti kui ka teiste Arduino abil töötavate projektide puhul.

  • Arduino jaoks on palju Interneti -ressursse ja minu arvates on kõige kasulikum Arduino veebisait nende selgete ja lühikeste koodinäidete tõttu.
  • Ärge leiutage ratast uuesti, seal on palju komplekte ja eelvalmis osi, mida saate oma projekti hõlbustamiseks kasutada. Ma olen programmeerija, mitte mehaanikainsener ja mul oli raske proovida välja mõelda, kuidas ma selle roboti käima panen, kuid veebist oli lihtne midagi osta ja oma disainis rakendada, võrreldes sõna otseses mõttes leiutamisega. ratas
  • Raamatukogud on teie sõber nii Arduinos kui ka kõigis objektorienteeritud keeltes ja need on olemas põhjusel. Siduge see mikrokontrolleritega ja 8x8 LED-i programmeerimine on lihtne. Olen ühe neist varem käsitsi programmeerinud ja ainult üks kasutab umbes iga Arduino tihvti ja nõuab palju koodi. Väga räpane ja mitte eriti lõbus.
  • 3D -printerid on lahedad, kuid mitte ideaalsed ja on hea, kui peate mõne asja lihvima. Sel põhjusel lähete 3D -printimisel pigem suuremaks, sest enamikul juhtudel saate selle ideaalse sobivuse saavutamiseks veidi lihvida.
  • Toide võib olla probleem, sest mõtlesin energiatarbimisele tõesti viimasel minutil ja arvasin, et 5v aku teeb asja. Siis näiliselt juhuslikult ei tööta mõnikord mootor või LED -ekraan. Kui ma toiteallikale üle läksin, ei tekkinud enam probleeme, hoolimata sellest, et see oli roboti sees mahukam.

Soovitan: