Sadržaj:

ARCA (Prekrasni Android daljinski upravljač): 4 koraka (sa slikama)
ARCA (Prekrasni Android daljinski upravljač): 4 koraka (sa slikama)

Video: ARCA (Prekrasni Android daljinski upravljač): 4 koraka (sa slikama)

Video: ARCA (Prekrasni Android daljinski upravljač): 4 koraka (sa slikama)
Video: ЗАПРЕЩЁННЫЕ ТОВАРЫ с ALIEXPRESS 2023 ШТРАФ и ТЮРЬМА ЛЕГКО! 2024, Studeni
Anonim
ARCA (Prekrasan Android daljinski upravljan)
ARCA (Prekrasan Android daljinski upravljan)
ARCA (Prekrasan Android daljinski upravljan)
ARCA (Prekrasan Android daljinski upravljan)
ARCA (Prekrasan Android daljinski upravljan)
ARCA (Prekrasan Android daljinski upravljan)

Ova instrukcija nastala je u skladu s projektnim zahtjevima Makecoursea na Sveučilištu Južne Floride (www.makecourse.com).

ARCA je preslatki Android daljinski upravljač koji je nevjerojatno zabavan za gradnju i igru. Cilj ovog projekta bio je stvoriti nešto što svatko može razumjeti i s čime se može povezati stvaranjem robota koji je i simpatičan i funkcionalan.

Robot funkcionira tako da prikazuje različite emocije na LED matrici 8 x 8, te emocije uključuju radost, spavanje, ljubav, ljutnju, glupost i pogled prema gore, lijevo i desno. Robot također radi kao RC automobil i može ići naprijed i skrenuti lijevo ili desno. Robot ide naprijed aktiviranjem oba motora kotača, skreće ulijevo uključivanjem desnog motora, a skreće udesno uključivanjem lijevog motora. Dizajn je vrlo pojednostavljen, ali jednostavno funkcionira, a ja sam se želio usredotočiti na programiranje Arduina budući da sam programer u srcu.

Najnovije verzije svih datoteka korištenih u ovom vodiču mogu se pronaći u mojem Github ARCA spremištu.

Korak 1: Popis dijelova i 3D ispis

Popis dijelova i 3D ispis
Popis dijelova i 3D ispis
Popis dijelova i 3D ispis
Popis dijelova i 3D ispis

Dijelovi za ovaj projekt mogu se 3D ispisati ili kupiti na mreži. Kad sam razmišljao o sklopu, htio sam napraviti ključ učinkovitosti i također pokušati (doslovno) ne izmisliti kotač. 3D pisač koji se koristio za ovaj projekt bio je Makerbot Replicator, ako želite biti sigurni da su vaši 3D ispisi u skladu s mojim, upotrijebite ovaj pisač.

Strukturne komponente

  • Kutija sa rupama sa strane za kotače i ruke
  • Poklopac kutije s rupama za stražnje kotače i rupom za IR senzor
  • Lijeva ruka
  • Desna ruka
  • Osovina za dva stražnja kotača
  • dva osovinska priključka za povezivanje poklopca s osovinom
  • 4 kotača (motori su također uključeni u ovu vezu)
  • Mali vijci (za ugradnju u motore)

Električne komponente

  • Arduino Uno
  • Mala ploča (kupio sam Arduino komplet i došao je s njim)
  • Dvije MAX7219 matrice crvenih točaka s MCU kontrolom
  • Infracrveni prijemnik i daljinski upravljač
  • Dva tranzistora TIP 120
  • Spajanje žica (koristio sam puno muških i ženskih žica, kao i muških s muškim, i preporučujem nabavku dugih žica, za razliku od kratkih žica)
  • jedan otpornik od 220 ohma
  • Dva motora sa zupčanikom
  • USB priključci za napajanje (prijenosni koji se koriste za mobitele)

Korak 2: Montaža

Skupština
Skupština
Skupština
Skupština
Skupština
Skupština

Strukturni sklop

3D ispisani dijelovi vjerojatno će trebati čišćenje, pa preporučujem da ih izbrusite finim zrnom i upotrijebite aceton (sredstvo za uklanjanje laka za nokte) kako biste uklonili ostatke ljepila korištenog u procesu 3D ispisa. Neki dijelovi možda neće savršeno pristajati, pa sam morao brusiti osovinu kako bi bila savršeno okrugla i pravilno prošla kroz rupe.

Kotači trebaju malo podešavanje, morali su ih više izbušiti kako bi odgovarali dimenzijama osovine straga i vijcima sprijeda. Svrdlom od 6 mm izbušite rupe na kotačima kako biste izbušili veće rupe na kotačima.

Za ovaj sklop koristio sam različita ljepila, ali otkrio sam da je tekući beton (ljepilo za modeliranje) najbolji za držanje unatoč dugom vremenu sušenja, ali epoksid je najbolji za stvari koje se morate brzo osušiti i dobro držati, unatoč tome što su neuredne.

Ostatak sklopa je prilično izravan:

  1. Pričvrstite držače osovina na stražnju stranu poklopca kutije, koristeći epoksid za brtvljenje
  2. Provucite osovinu kroz držače osovina
  3. Zalijepite kotače na osovinu pomoću tekućeg betona
  4. Provucite ruke kroz gornje rupe i zalijepite ih na držač za ruke pomoću epoksida
  5. Uvrnite poklopac kutije u kutiju
  6. Upotrijebite električnu traku na dnu kutije gdje se nalaze kotači

Električni sklop

Prednji kotači pričvršćeni su izravno na motore, pa morate upotrijebiti mali vijak u motoru kako bi bio dovoljno dug da prođe kroz rupu na robotu sa svake strane. U rotirajućem klincu motora trebao bi biti mali otvor, a vi možete tamo uvrnuti vijak i zalijepiti glavu vijka u kotač nakon što gurnete vijak kroz rupu u kutiji.

Stražnja strana moje matične ploče imala je ljepljivu podlogu, ali možete je zalijepiti pomoću električne trake ako vaša ne. Električna traka također se koristila za pričvršćivanje električnih komponenti koje nisu na ploči, iz sigurnosnih razloga. MCU -i s LED zaslonima pričvršćeni su na stražnju stranu očnih duplji pomoću električne trake, a motori su također pričvršćeni sa strane kutije blizu rupa pomoću električne trake. Koristio sam crvenu električnu traku kako bih je učinio nevidljivijom, za svaki slučaj, i preporučujem upotrebu električne trake slične boje kao vaša verzija ARCA -e.

Oglasna ploča i igle postavljene su poput ove Fritzing slike. Ako želite dodati još ovom dijagramu za prilagođavanje ARCA -e, možete preuzeti datoteku Fritzing u moje spremište Github i urediti je po želji.

Žice sam pričvrstio na petlje u motorima zupčanika savijajući žice oko petlji, kako bih ih držao pričvršćenima. Vjerojatno bi bila bolja ideja lemiti ove veze ako imate pristup lemilici, ali ovo je jednostavno rješenje ako ga nemate.

Napajanje je priključeno na isti kabel koji se koristi za povezivanje Arduina s računalom za preuzimanje vašeg programa, a ovaj je samo labav u robotu pa se može lako ukloniti i napuniti.

Korak 3: Programiranje

Programiranje
Programiranje

Ovdje je kôd koji možete prenijeti na svoj ARCA kako bi funkcionirao baš kao i moj. Za korištenje koda potrebne su vam i sljedeće dvije knjižnice.

Radi jasnoće i prilagodbe, ipak ću vas provesti kroz svoj kôd. Ovaj korak slobodno preskočite ako ne prilagođavate svog robota ili ne namjeravate promijeniti emocije.

Prvo, u svoj kôd uvrštavam dvije knjižnice koje mi omogućuju korištenje funkcija i objekata tih knjižnica. Ovdje također definiram svoje igle. Ako ste odlučili svoje pinove učiniti drugačijima od onih koje sam postavio u prethodnom koraku, ovdje unesite izmjene u svoj kôd odgovarajućim pinovima.

Zatim sam definirao emocije, proglasio potrebne objekte za IR senzor i LED zaslone 8 x 8 te definirao neke globalne varijable. Emocije su deklarirane u nizu bajtova, gdje svaki heksadecimalni broj u nizu predstavlja retke u rezultirajućem prikazu 8 x 8. Da biste stvorili svoje prilagođene emocije, preporučujem da iscrtate željenu emociju u mreži 8 x 8, a zatim ispišete svaki red 8 -bitnog binarnog broja gdje je svjetlo isključeno 0, a svjetlo 1, a zatim stvorite heksadecimalni broj od toga i stavio ga u niz duljine 8. Također sam definirao neke globalne varijable za korištenje u petlji; varijable za trepćući mehanizam i pokazivači za spremanje emocija i postavljanje da počnu neutralno.

Sada dolazimo do petlje za postavljanje, gdje uključujem serijski nadzor radi testiranja, a ovo bi trebalo biti od pomoći za testiranje vašeg koda s različitim IR daljinskim upravljačima. Zatim sam inicijalizirao objekte lijevog i desnog oka pomoću funkcija iz LED upravljačke biblioteke. Također sam podesio pinove motora zupčanika na izlaz i pokrenuo IC prijemnik.

U petlji, on u biti čeka da IC signal promijeni status quo robota. Dakle, ako se primi IC signal i on se podudara s jednim od kodova s određene tipke, tada se aktivira izjava if ako se i postave vrijednosti lijevog i desnog oka u skladu s emocijama. Ako se pritisne gumb za kretanje, na primjer lijevo, desno, naprijed i OK, tada se igle digitalno zapisuju da budu uključene ili isključene, ovisno o pritisnutom gumbu. Samo napomena o kodovima IC prijemnika: u IR biblioteci za daljinski upravljač nalazi se uzorak koda koji će vam dati heksadecimalne kodove za vaš daljinski upravljač, ako se ništa ne događa kada pritisnete tipke, otvorite ovaj program kako biste bili sigurni da su kodovi ispravni. Sve što trebate učiniti je promijeniti heksadecimalni broj koji ide uz svaki gumb.

I na kraju, imate funkciju koja ispisuje emocije na ekranima 8 x 8. Ovo koristi funkcije setRow iz LED kontrolne knjižnice i samo prolazi kroz nizove koje ste stvorili i postavlja redove u skladu s tim. Uzima dva parametra: niz za lijevo oko i niz za desno oko. To može biti ili pokazivač na bajt ili sam niz bajtova (tj. Naziv "neutralno") koji djeluje kao pokazivač.

Korak 4: Bonus savjeti i trikovi

Dodatni savjeti i trikovi
Dodatni savjeti i trikovi

Sigurno sam puno naučio tijekom ovog projekta i htio sam ovdje podijeliti neke dodatne savjete koji se odnose i na ovaj projekt i na druge projekte koji koriste Arduino.

  • Postoji mnogo mrežnih resursa za Arduino, a po meni najkorisniji dolazi s web stranice Arduino zbog njihovih jasnih i sažetih primjera koda.
  • Nemojte ponovno izmišljati kotač, postoji mnogo kompleta i unaprijed izgrađenih dijelova koje možete upotrijebiti kako biste olakšali svoj projekt. Ja sam programer, a ne strojarski inženjer i teško sam pokušavao shvatiti kako ću natjerati ovog robota da ide, ali bilo je lako pronaći nešto za kupiti na internetu i implementirati ga u svoj dizajn u odnosu na doslovno ponovno izmišljanje kotač
  • Knjižnice su vam prijatelji u Arduinu, kao i u svim objektno orijentiranim jezicima, i postoje s razlogom. Uparite ovo s mikro-kontrolerima i programiranje LED-a 8 x 8 je jednostavno. Već sam ručno programirao jedan od njih, a samo jedan koristi svaki pin u Arduinu i zahtijeva tonu koda. Vrlo neuredno i nije baš zabavno.
  • 3D pisači su super, ali nisu savršeni i u redu je da morate brusiti neke stvari. Iz tog razloga radije biste povećali 3D ispis jer ga u većini slučajeva možete malo brusiti kako biste savršeno pristajali.
  • Napajanje može biti problem jer sam razmišljao o potrošnji energije u zadnji čas i mislio sam da će 5V baterija uspjeti. Tada, naizgled nasumično, ponekad motor ili LED zaslon ne bi radili. Nakon što sam nadogradio na paket napajanja, više nije bilo problema, unatoč tome što je bio veći u robotu.

Preporučeni: