Sisällysluettelo:

ARCA (ihana kauko -ohjattu Android): 4 vaihetta (kuvilla)
ARCA (ihana kauko -ohjattu Android): 4 vaihetta (kuvilla)

Video: ARCA (ihana kauko -ohjattu Android): 4 vaihetta (kuvilla)

Video: ARCA (ihana kauko -ohjattu Android): 4 vaihetta (kuvilla)
Video: Моя работа наблюдать за лесом и здесь происходит что-то странное 2024, Heinäkuu
Anonim
ARCA (ihana kauko -ohjattu Android)
ARCA (ihana kauko -ohjattu Android)
ARCA (ihana kauko -ohjattu Android)
ARCA (ihana kauko -ohjattu Android)
ARCA (ihana kauko -ohjattu Android)
ARCA (ihana kauko -ohjattu Android)

Tämä ohje on luotu täyttämään Etelä -Floridan yliopiston Makecourse -projektin vaatimus (www.makecourse.com).

ARCA on ihana kauko -ohjattu Android, jota on uskomattoman hauska rakentaa ja pelata. Tämän projektin tavoitteena oli luoda jotain, jota kuka tahansa voi ymmärtää ja johon hän voi liittyä luomalla robotin, joka on sekä ihana että toimiva.

Robotti toimii näyttämällä erilaisia tunteita 8 x 8 LED -matriisissa. Näitä tunteita ovat ilo, nukkuminen, rakkaus, viha, typerä ja katse ylös, vasemmalle ja oikealle. Robotti toimii myös kuin RC -auto ja voi mennä eteenpäin ja kääntyä vasemmalle tai oikealle. Robotti menee eteenpäin aktivoimalla molemmat pyörän moottorit, kääntyy vasemmalle kääntämällä oikean moottorin ja kääntyy oikealle kääntämällä vasen moottori. Suunnittelu on hyvin yksinkertaista, mutta se vain toimii, ja halusin keskittyä voimakkaasti Arduinon ohjelmointiin, koska olen sydämeni ohjelmoija.

Kaikkien tässä opetusohjelmassa käytettyjen tiedostojen uusimmat versiot löytyvät Github ARCA -varastoistani.

Vaihe 1: Osaluettelo ja 3D -tulostus

Osaluettelo ja 3D -tulostus
Osaluettelo ja 3D -tulostus
Osaluettelo ja 3D -tulostus
Osaluettelo ja 3D -tulostus

Tämän projektin osat voidaan joko tulostaa 3D -muodossa tai ostaa verkosta. Kun ajattelin kokoonpanoa, halusin tehdä tehokkuusavaimen ja yrittää myös olla (kirjaimellisesti) keksimättä pyörää uudelleen. Tässä projektissa käytetty 3D -tulostin oli Makerbot Replicator. Jos haluat varmistaa, että 3D -tulosteesi ovat yhdenmukaiset minun kanssa, käytä tätä tulostinta.

Rakenneosat

  • Laatikko, jossa on reikiä sivuilla pyörille ja käsivarsille
  • Laatikon kansi, jossa on reiät takapyörille ja reikä IR -anturille
  • Vasen käsi
  • Oikea käsi
  • Akseli kahdelle takapyörälle
  • kaksi akseliliitintä kannen yhdistämiseksi akseliin
  • 4 pyörää (moottorit sisältyvät myös tähän linkkiin)
  • Pienet ruuvit (sopivat moottoreihin)

Sähkökomponentit

  • Arduino Uno
  • Pieni leipälauta (ostin Arduino -sarjan ja se tuli sen mukana)
  • Kaksi MAX7219 -punaista matriisia MCU -ohjauksella
  • Infrapunavastaanotin ja kaukosäädin
  • Kaksi TIP 120 -transistoria
  • Liitäntäjohdot (käytin paljon uros -naarasjohtoja sekä uros -uros -johtoja ja suosittelen pitkien johtojen hankkimista lyhyiden johtojen sijaan)
  • yksi 220 ohmin vastus
  • Kaksi vaihteistomoottoria
  • USB -liitettävät virtalähteet (kannettavat, joita käytetään matkapuhelimissa)

Vaihe 2: Kokoonpano

Kokoonpano
Kokoonpano
Kokoonpano
Kokoonpano
Kokoonpano
Kokoonpano

Rakenteellinen kokoonpano

3D -tulostetut osat tarvitsevat todennäköisesti puhdistusta, ja suosittelen hiomista hienolla hiekalla ja käyttämällä asetonia (kynsilakanpoistoaine) 3D -tulostusprosessissa käytetyn liiman jäännösten poistamiseksi. Jotkut osat eivät ehkä sovi täydellisesti, ja minun oli hiottava akselia, jotta se olisi täysin pyöreä ja mahtuisi reikien läpi.

Pyörät tarvitsevat hieman säätöä, niitä oli porattava enemmän, jotta ne sopivat taka -akselin ja edessä olevien ruuvien mittoihin. Käytä 6 mm: n poranterää porataksesi pyörien reiät porataksesi suurempia reikiä pyörissä.

Tässä kokoonpanossa käytin erilaisia liimoja, mutta huomasin, että nestemäinen betoni (malliliima) oli paras pidossa pidemmästä kuivumisajasta huolimatta, mutta epoksi soveltui parhaiten kohteisiin, jotka sinun on kuivattava nopeasti ja pidettävä hyvin sotkuisesta huolimatta.

Muu kokoonpano on melko suoraviivaista:

  1. Kiinnitä akselipidikkeet laatikon kannen takaosaan käyttämällä tiivistettä epoksilla
  2. Aja akseli akselipidikkeiden läpi
  3. Liimaa pyörät akseliin nestemäisellä betonilla
  4. Vie käsivarret ylempien reikien läpi ja liimaa käsipidikkeeseen epoksilla
  5. Kierrä laatikon kansi laatikkoon
  6. Käytä sähköteippiä laatikon pohjassa, jossa pyörät ovat

Sähköasennus

Etupyörät on kiinnitetty suoraan moottoreihin, ja sinun on käytettävä moottorissa pientä ruuvia, jotta se on tarpeeksi pitkä, jotta se mahtuu robotin reiän molemmin puolin. Moottorin pyörivässä tapissa pitäisi olla pieni reikä ja voit ruuvata ruuvin sinne ja liimata ruuvin pään pyörään sen jälkeen, kun olet ruuvannut ruuvin laatikon reiän läpi.

Leipälaudan takana oli tahmea tausta, mutta voit kiinnittää sen sähköteipillä, jos sinun ei. Sähköteippiä käytettiin myös muiden kuin piirilevyssä olevien sähkökomponenttien kiinnittämiseen turvallisuussyistä. LED -näytöllä varustetut MCU: t kiinnitettiin silmänappien taakse sähköteipillä ja moottorit kiinnitettiin myös laatikon sivuille reikien lähelle sähköteipillä. Käytin punaista sähköteippiä, jotta se olisi näkymättömämpi, joka tapauksessa, ja suosittelen käyttämään sähköteippiä, jonka väri on samanlainen kuin ARCA -versiosi.

Leipälauta ja nastat on asetettu tämän Fritzing -kuvan mukaisesti. Jos haluat lisätä tähän kaavioon lisää muokataksesi ARCA: ta, voit ladata Fritzing -tiedoston Github -arkistostani ja muokata sitä sydämesi mukaan.

Kiinnitin johdot hammaspyörämoottoreiden silmukoihin taivuttamalla johdot silmukoiden ympärille pitämään ne kiinni. Olisi luultavasti parempi idea juottaa nämä liitännät, jos sinulla on pääsy juotosraudalle, mutta tämä on helppo ratkaisu, jos sinulla ei ole sellaista.

Virtalähde on liitetty samaan johtoon, jolla Arduino liitettiin tietokoneeseen ladataksesi ohjelman, ja tämä on vain löysä robotissa, joten se voidaan helposti poistaa ja ladata.

Vaihe 3: Ohjelmointi

Ohjelmointi
Ohjelmointi

Tässä on koodi, jonka voit ladata ARCA -laitteeseesi saadaksesi sen toimimaan täsmälleen kuten minun. Tarvitset myös seuraavat kaksi kirjastoa koodin käyttämiseen.

Selvyyden ja mukauttamisen vuoksi käyn kuitenkin läpi koodini. Voit ohittaa tämän vaiheen, jos et muokkaa robottiasi tai et aio muuttaa tunteita.

Ensinnäkin sisällytän kaksi kirjastoa käytettäväksi koodissani, jotta voin käyttää näiden kirjastojen toimintoja ja objekteja. Määrittelen myös nastani täällä. Jos päätit tehdä nastasi erilaisiksi kuin edellisessä vaiheessa tehdyt asetukset, tee muutokset koodiin täällä oikeilla nastoilla.

Seuraavaksi määritin tunteet, ilmoitin tarvittavat objektit IR -anturille ja 8 x 8 LED -näytölle ja määritin joitain globaaleja muuttujia. Tunteet ilmoitetaan tavutaulukossa, jossa jokainen taulukon heksadesimaaliluku edustaa tuloksena olevan 8 x 8 -näytön rivejä. Mukautettujen tunteiden luomiseksi suosittelen piirtämään haluamasi tunteen 8 x 8 -ruudukkoon ja kirjoittamaan sitten jokaisen rivin 8 -bittisen binääriluvun, jossa valo on 0 ja valo on 1, ja luo sitten heksadesimaaliluku siitä ja laita se pituusmatriisiin 8. Olen myös määrittänyt joitain globaaleja muuttujia käytettäväksi silmukassa; vilkkuvan mekanismin muuttujat ja osoittimet tunteiden tallentamiseksi ja niiden aloittamiseksi neutraalilta.

Nyt pääsemme asetussilmukkaan, jossa otan sarjavalvonnan käyttöön testauksen vuoksi, ja tämän pitäisi olla hyödyllistä testata koodisi erilaisilla IR -kaukosäätimillä. Sitten alustin vasemman ja oikean silmän esineet LED -ohjauskirjaston toimintojen avulla. Asetin myös hammaspyörämoottorin nastat lähtöön ja käynnistin IR -vastaanottimen.

Silmukassa se olennaisesti odottaa, että IR -signaali muuttaa robotin status quoa. Joten jos IR -signaali vastaanotetaan ja se vastaa jotakin tietyn painikkeen koodia, niin jos lausunto laukaistaan ja asettaa vasemman ja oikean silmän arvot tunteiden mukaan. Jos liikepainiketta painetaan, kuten vasen, oikea, eteenpäin ja OK, nastat kirjoitetaan digitaalisesti päälle tai pois päältä painettuna. Vain huomautus IR -vastaanottimen koodeista: IR -etäkirjastossa on esimerkkikoodi, joka antaa sinulle kaukosäätimen heksadesimaalikoodit. Jos mitään ei tapahdu painikkeita painettaessa, avaa tämä ohjelma varmistaaksesi, että koodit ovat oikein. Sinun tarvitsee vain muuttaa kuhunkin painikkeeseen liittyvä heksadesimaaliluku.

Lopuksi sinulla on toiminto, joka tulostaa tunteet 8 x 8 -näyttöihin. Tämä käyttää setRow -toimintoja LED -ohjauskirjastosta ja käy vain luomasi taulukot läpi ja asettaa rivit sen mukaan. Se sisältää kaksi parametria: vasemman silmän matriisi ja oikean silmän matriisi. Tämä voi olla joko tavu -osoitin tai tavutaulukko (eli nimi "neutraali"), joka toimii osoittimen tavoin.

Vaihe 4: Bonusvinkkejä ja temppuja

Bonusvinkkejä ja temppuja
Bonusvinkkejä ja temppuja

Olin varmasti oppinut paljon tämän projektin aikana ja halusin jakaa joitain lisävinkkejä, joita sovelletaan sekä tähän projektiin että muihin Arduinoa käyttäviin projekteihin.

  • Arduinolle on paljon online -resursseja ja mielestäni hyödyllisin on Arduinon verkkosivusto, koska ne ovat selkeitä ja ytimekkäitä.
  • Älä keksi pyörää uudelleen, sillä on paljon sarjoja ja valmiita osia, joiden avulla voit helpottaa projektiasi. Olen ohjelmoija, en mekaaninen insinööri, ja minulla oli vaikeuksia yrittää selvittää, miten aioin saada tämän robotin toimimaan, mutta oli helppo löytää jotain ostettavaa verkossa ja toteuttaa se suunnittelussani verrattuna kirjaimellisesti uuden keksimiseen. pyörä
  • Kirjastot ovat ystäväsi Arduinossa ja kaikilla objektipohjaisilla kielillä, ja ne ovat olemassa syystä. Yhdistä tämä mikro-ohjaimiin ja 8 x 8 LEDin ohjelmointi on yksinkertaista. Olen ohjelmoinut yhden näistä käsin aiemmin ja vain yksi käyttää noin jokaista Arduinon pintaa ja vaatii tonnin koodia. Erittäin sotkuinen eikä kovin hauska.
  • 3D -tulostimet ovat siistejä, mutta eivät täydellisiä, ja on hienoa, että joudut hiomaan jotain tavaraa. Tästä syystä haluat mieluummin suurentaa 3D -tulostusta, koska useimmissa tapauksissa voit hioa sitä hieman, jotta saat täydellisen istuvuuden.
  • Virta voi olla ongelma, koska ajattelin virrankulutusta todella viime hetkellä ja ajattelin, että 5 voltin akku tekisi tempun. Sitten, näennäisesti satunnaisesti, joskus moottori tai LED -näyttö ei toimi. Kun päivitin tehopakettiin, ei ollut enää ongelmia, vaikka robotin sisällä oli enemmän tilaa.

Suositeltava: