Sadržaj:

Ručna konzola s bežičnim kontrolerima i senzorima (Arduino MEGA & UNO): 10 koraka (sa slikama)
Ručna konzola s bežičnim kontrolerima i senzorima (Arduino MEGA & UNO): 10 koraka (sa slikama)

Video: Ručna konzola s bežičnim kontrolerima i senzorima (Arduino MEGA & UNO): 10 koraka (sa slikama)

Video: Ručna konzola s bežičnim kontrolerima i senzorima (Arduino MEGA & UNO): 10 koraka (sa slikama)
Video: M8 4k HD retro igrice Kupuj Lako 2024, Srpanj
Anonim
Image
Image
Ožičite (dodirni) zaslon
Ožičite (dodirni) zaslon

Ono što sam koristio

- Arduino MEGA

- 2x Arduino UNO

- Adafruit 3,5 TFT 320x480 zaslon osjetljiv na dodir HXD8357D

- Zvučni signal

- 4 ohm 3W zvučnik

- LED svjetla 5 mm

- Ultimaker 2+ pisač sa crnom PLA niti

- Laserski stroj za rezanje sa MDF drvom

- Crna boja u spreju (za drvo)

- 3x nRF24L01+ bežični primopredajnici

- 2x 16 mm gumb

- 2x senzora tlaka

- 3x 9V držači baterija

- Oglasna ploča

- 2x OLED I2C ekrani od 0,96 ''

- Muško - ženske žice

- Solderstation

- Super ljepilo

- 2x jednokanalni modul na dodir (CRVENI/PLAVI)

Korak 1: Povežite (dodirni) zaslon

Ožičite (dodirni) zaslon
Ožičite (dodirni) zaslon
Ožičite (dodirni) zaslon
Ožičite (dodirni) zaslon

Stoga ćemo ovu ručnu konzolu napraviti s dva bežična kontrolera.

Stoga ćemo imati glavnu jedinicu (najveći dio, s LCD zaslonom)

Glavna jedinica će se koristiti s Arduino MEGA -om.

Dva zasebna kontrolera će svaki pokretati Arduino UNO.

Kasnije ćemo natjerati Arduinose da međusobno komuniciraju radi slanja podataka kontrolera.

Počnite s ispravnim ožičenjem zaslona 320x480 na jedinicu glavnog zaslona (Arduino MEGA) kao u ovom vodiču. (Adafruit ima izvrstan detaljan vodič za ožičenje i kôd).

Za zvuk sam spojio zujalicu i 3W 4Ohm zvučnik za odvajanje digitalnih pinova i GND.

s tonom (pin, frekvencija, trajanje); Možete stvoriti neke osnovne monofonske zvukove.

Korak 2: Upoznajte se s knjižnicama

Upoznajte se s knjižnicama
Upoznajte se s knjižnicama
Upoznajte se s knjižnicama
Upoznajte se s knjižnicama

Zaslon Adafruit 320x480 podržava odgovarajuće biblioteke Adafruit_GFX i Adafruit_TFTLCD.

Pročitajte dokumentaciju. Mislim da je tamo dobro objašnjeno.

U Arduino IDE postavite ispravne postavke:

Alati -> Ploča -> Arduino/Genuino MEGA ili MEGA 2560

Alati -> Luka -> [Luka s '' Arduino MEGA '' u njoj]

Ova posebna knjižnica zaslona podržava prilagođene fontove, osnovne oblike i razne boje.

Treba napomenuti da je brzina osvježavanja preniska za glatku animaciju. Ako želite ažurirati zaslon svakom kvačicom, bit će presporo za rukovanje ponovnim iscrtavanjem svakog piksela i treperit će

Stoga bih predložio da se oko toga kreativno pozabavite, na primjer kako su neki stariji ručni uređaji postupali s animacijom: s ključnim kadrovima. Manje je više! Umjesto da sve iscrtavate svake sekunde, ako želite pomaknuti pravokutnik ulijevo ili udesno, možete jednostavno izbrisati trag koji ostavlja iza sebe, umjesto da izbrišete cijeli objekt i precrtate ga.

Na primjer, treptaj zaslona koristio sam kao trepćući efekt za lik u uvodnoj sekvenci.

Iz biblioteke Adafruit_GFX uglavnom sam koristio tft.fillRect (x, y, širina, visina, boja); i tft.print (tekst); funkcije.

Eksperimentiranje je ključno.

Korak 3: Dizajnirajte grafičko korisničko sučelje / glavni izbornik

Dizajnirajte grafičko korisničko sučelje / glavni izbornik
Dizajnirajte grafičko korisničko sučelje / glavni izbornik
Dizajnirajte grafičko korisničko sučelje / glavni izbornik
Dizajnirajte grafičko korisničko sučelje / glavni izbornik

Nakon što steknete znanje u knjižnici i spoznate njezina ograničenja/ovlasti, možete započeti s dizajniranjem zaslona glavnog izbornika.

Opet razmislite o pravokutnicima. Barem sam to učinio.

Evo mog koda za korisničko sučelje

pastebin.com/ubggvcqK

Mogli biste stvoriti klizače za svjetlinu zaslona za kontrolu '' Lite '' igle na vašem Adafruit zaslonu osjetljivom na dodir, putem analogne iglice.

Korak 4: Povežite dva kontrolera

Ožičite dva kontrolera
Ožičite dva kontrolera
Ožičite dva kontrolera
Ožičite dva kontrolera
Ožičite dva kontrolera
Ožičite dva kontrolera

Što se tiče kontrolera, zapravo je na vama kakve senzore želite koristiti, ovisno o tome koju igru planirate napraviti

U redu, pa sam za kontrolere odlučio koristiti:

- Senzor pritiska

- OLED ekran

- Jednokanalni modul na dodir koji se uključuje ili isključuje

- Senzor gesta (RobotDyn APDS9960)

- nRFL01+ primopredajnik (za bežičnu komunikaciju)

- Pritiskom na gumb

Napomena: Senzor gesta i OLED koriste SCL / SDA veze. Trebalo mi je neko vrijeme da shvatim da Arduino ima samo dva: A4 i A5. Ali možete jednostavno spojiti ove paralele zajedno na ploču i to će dobro funkcionirati

Korak 5: Započnite ožičenje bežične veze

Počnite ožičiti bežičnu vezu
Počnite ožičiti bežičnu vezu
Počnite ožičiti bežičnu vezu
Počnite ožičiti bežičnu vezu
Počnite ožičiti bežičnu vezu
Počnite ožičiti bežičnu vezu

Za ožičenje modula nRF24L01+ trebalo mi je neko vrijeme da to učinim.

Morao sam pribjeći biblioteci TMRh20 RF24, nakon što nisam uspio prenijeti odgovarajuće podatke senzora na zaslon.

Kako bi više Arduina komuniciralo međusobno, moramo se pobrinuti da se barem jedan od UNO -a napaja, kao i MEGA.

Pomoću serijske konzole MEGA ispišite rezultate koje ste dobili od UNO -a i provjerite radi li.

Evo koda

Evo knjižnice

Korak 6: Divljajte! Isprobajte razne stvari

Poludi! Isprobajte razne stvari
Poludi! Isprobajte razne stvari

Ključni dio mog razvojnog procesa bio je samo isprobati mnogo toga!

Koje tipke želite koristiti?

Što stavljate u svoje kontrolere?

Pogledajte okolo na web stranicama, pronaći ćete mnogo komponenti osim uobičajenih tipki "A/B" ili analognih upravljačkih palica. Budite nadahnuti i motivirani da pokušate!

Nakon što ste dobili jasnu i radnu ideju o tome što želite staviti u kontrolere, spojite komponente.

Ovisno o načinu rada, morat ćete koristiti digitalne ulaze ili analogne ulaze.

NAPOMENA: Za neke komponente možda će biti potrebni SCL / SDA pinovi za ispravan rad. A ako imate dva ili više senzora koji trebaju isto, vjerojatno ćete dobiti napad panike poput mene. Ali ne morate brinuti

Možete spojiti SDA i SCL pinove oba senzora jedan s drugim, ulazeći u A4 i A5 i to će funkcionirati

Korak 7: Dizajn

Oblikovati
Oblikovati
Oblikovati
Oblikovati
Oblikovati
Oblikovati

Nakon što ste dobili cool ideju za senzore koje želite koristiti, skicirajte neke ideje za dizajn koji vam se sviđa.

Nakon toga uđite u neke modelarske programe poput Blendera, Maye, Cinema 4D.

Koristio sam Blender za stvaranje (grubog) modela.

Da biste dobili jasna mjerenja u Blenderu, možete promijeniti jedinicu veličine mreže u milimetre.

Nakon što napravite model, provjerite nemate li dvostruke vrhove i ponovno ste izračunali svoje normale.

Izvezite datoteku kao.stl, ako želite koristiti 3D pisač poput mene.

NAPOMENA: U Blenderu ćete morati postaviti skalu izvoza na 0,1 ako želite točnu veličinu u Curi u sljedećem koraku

Korak 8: 3D ispis kućišta

3D ispis kućišta
3D ispis kućišta
3D ispis kućišta
3D ispis kućišta
3D ispis kućišta
3D ispis kućišta

Ovaj je model ispisan crnom PLA nitom od 2,85 mm na pisaču Ultimaker 2+.

Preuzmite CURA

Učitajte svoj. STL u Cura i on će vam pokazati koliko će trajati.

Za ispis ručnog kućišta može potrajati do 10 sati, ovisno o veličini.

Međutim, za modele s malim detaljima možete ubrzati proces, što sam i učinio.

Evo mojih postavki:

Visina sloja: 0,2

Debljina stijenke: 0,8

Debljina vrha/dna: 0,8

Mlaznica: 0,4

Temperatura: 60 stupnjeva Celzijusa

Protok: 100%

Brim: Bilo gdje dodiruje građevinsku ploču

Gustoća ispune: 20%

Postupno: 0

Temperatura mlaznice: 220 C

Brzina ispisa: 120%

Korak 9: Lemljenje i završna obrada

Lemljenje i finalizacija
Lemljenje i finalizacija
Lemljenje i finalizacija
Lemljenje i finalizacija
Lemljenje i finalizacija
Lemljenje i finalizacija

Prešli ste dug put.

Posljednji korak je nabaviti perfboard / veroboard i prevesti svoje veze na ploču na dio ploče za izradu prototipa.

Pobrinite se da elektronika stane u tiskana kućišta i možda izrežite drveni MDF kako biste napravili dijelove kroz koje prolaze gumbi / ulazi kontrolera.

Za to sam koristio laserski stroj.

Najvažnije je zeznuti se, isprobati neke stvari koje inače nikada niste radili i zabavite se!

Nadam se da je ovaj vodič bio dovoljno jasan … Bio je to prilično težak projekt koji je dao odlične rezultate!:)

Korak 10: Pregled

Preporučeni: