Sadržaj:
- Korak 1: Povežite (dodirni) zaslon
- Korak 2: Upoznajte se s knjižnicama
- Korak 3: Dizajnirajte grafičko korisničko sučelje / glavni izbornik
- Korak 4: Povežite dva kontrolera
- Korak 5: Započnite ožičenje bežične veze
- Korak 6: Divljajte! Isprobajte razne stvari
- Korak 7: Dizajn
- Korak 8: 3D ispis kućišta
- Korak 9: Lemljenje i završna obrada
- Korak 10: Pregled
Video: Ručna konzola s bežičnim kontrolerima i senzorima (Arduino MEGA & UNO): 10 koraka (sa slikama)
2024 Autor: John Day | [email protected]. Zadnja promjena: 2024-01-30 09:37
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
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
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
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
Š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
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
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
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
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
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:
ESP32 ručna igraća konzola: 21 korak (sa slikama)
ESP32 Ručna igraća konzola: Ove upute pokazuju kako koristiti ESP32 i ATtiny861 za izgradnju NES emulacijske igraće konzole
GamePi - ručna konzola emulatora: 17 koraka (sa slikama)
GamePi - ručna konzola emulatora: Uvod: Ova uputa opisuje izradu ručne konzole za emulaciju s Raspberry Pi 3 pogonom - krstila sam je GamePi. Postoji mnogo sličnih uputstava za takve uređaje, ali za moj ukus većina ih je ili prevelika, premala
Ručna igraća konzola - Arduboy Clone: 6 koraka (sa slikama)
Ručna igraća konzola | Arduboy Clone: Prije nekoliko mjeseci naišao sam na Arduboy koji je prema službenoj web stranici minijaturna 8-bitna platforma za igre koja olakšava učenje, dijeljenje i igranje igara na mreži. To je platforma otvorenog koda. Igre za Arduboy je napravio korisnik
Domaća ručna konzola: 12 koraka (sa slikama)
Domaća ručna konzola: Dobro došli u moj korak po korak vodič o tome kako stvoriti vlastiti DIY GameBoy s Raspberry Pi 3 i softverom za emulaciju Retropie.Prije početka ovog projekta nisam imao iskustva s malinom pi, retropijom, lemljenjem, 3D ispisom ili električar
Ručna Arduino pong konzola: 6 koraka (sa slikama)
Ručna Arduino Pong konzola: DFRobot mi se nedavno obratio, želeći da koristim njihovu posebnu Arduino Nano ploču i OLED. Isprva sam htio stvoriti pametan bicikl, a sagradio sam ga u cijelosti. No, nažalost, Nano je bio preslab za pokretanje i pohranu ogromne skice