Sadržaj:

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

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

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

Šta sam koristio

- Arduino MEGA

- 2x Arduino UNO

- Adafruit 3.5 TFT 320x480 ekran osetljiv na dodir HXD8357D

- Zvučni signal

- 4Ohm 3W zvučnik

- LED svjetla od 5 mm

- Ultimaker 2+ štampač sa crnom PLA niti

- Laserska rezačica sa MDF drvom

- Crna boja u spreju (za drvo)

- 3x nRF24L01+ bežični primopredajnici

- 2x 16mm dugme

- 2x senzora pritiska

- 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) ekran

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

Tako ćemo ovo napraviti ručna konzola, sa dva bežična kontrolera.

Stoga ćemo imati glavnu jedinicu (najveći dio, sa LCD ekranom)

Glavna jedinica će se koristiti sa 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 pravilnim ožičenjem zaslona 320x480 na glavnu jedinicu ekrana (Arduino MEGA) kao u ovom vodiču. (Adafruit ima odličan 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.

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

Korak 2: Upoznajte se s bibliotekama

Upoznajte se s bibliotekama
Upoznajte se s bibliotekama
Upoznajte se s bibliotekama
Upoznajte se s bibliotekama

Ekran 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 unesite odgovarajuće postavke:

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

Alati -> Port -> [Port s '' Arduino MEGA '' u njemu]

Ova posebna biblioteka ekrana podržava prilagođene fontove, osnovne oblike i različite boje.

Nešto što bi trebalo napomenuti je da je brzina osvježavanja preniska za glatku animaciju. Ako želite ažurirati zaslon svaki znak, bit će prespor 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 rukovali 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, koristio sam treperenje ekrana kao efekat treptanja 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 biblioteci i spoznate njena ograničenja/ovlasti, možete započeti s dizajniranjem ekrana glavnog izbornika.

Opet razmislite o pravokutnicima. Bar sam to uradio.

Evo mog koda za korisničko sučelje

pastebin.com/ubggvcqK

Mogli biste stvoriti klizače za svjetlinu ekrana, kako biste kontrolirali pin '' Lite '' na vašem Adafruit ekranu osjetljivom na dodir, putem analognog pina.

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 koje vrste senzora ž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 pokreta (RobotDyn APDS9960)

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

- Taster

Napomena: Senzor geste i OLED koriste SCL / SDA veze. Trebalo mi je vremena 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čavanje bežične veze
Počnite ožičavanje bežične veze
Počnite ožičavanje bežične veze
Počnite ožičavanje bežične veze
Počnite ožičavanje bežične veze
Počnite ožičavanje bežične veze

Ožičenje nRF24L01+ modula oduzelo mi je vrijeme da to funkcionira.

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

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

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

Evo koda

Evo biblioteke

Korak 6: Divljajte! Isprobajte razne stvari

Go Wild! Isprobajte razne stvari
Go Wild! Isprobajte razne stvari

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

Koju tipku želite koristiti?

Šta stavljate u kontrolere?

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

Nakon što ste dobili jasnu i radnu ideju o tome šta želite staviti u kontrolere, povežite 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 kojima je potrebno isto, vjerojatno ćete dobiti napad panike poput mene. Ali ne morate brinuti

SDA i SCL pinove senzora možete staviti u seriju jedan s drugim, prelazeći u A4 i A5 i to će funkcionirati

Korak 7: Dizajnirajte

Dizajn
Dizajn
Dizajn
Dizajn
Dizajn
Dizajn

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

Nakon toga krenite u neke modelarske programe kao što su Blender, Maya, 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 da nemate dvostrukih vrhova i da ste ponovno izračunali svoje normale.

Izvezite datoteku kao.stl ako želite koristiti 3D štampač 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 ispisivanje kućišta

3D štampanje kućišta
3D štampanje kućišta
3D štampanje kućišta
3D štampanje kućišta
3D štampanje kućišta
3D štampanje kućišta

Ovaj model je štampan crnim PLA filamentom od 2,85 mm na štampaču Ultimaker 2+.

Preuzmite CURA

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

Štampanje ručnog kućišta može potrajati i 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 zida: 0,8

Debljina vrha/dna: 0,8

Mlaznica: 0,4

Temperatura: 60 stepeni Celzijusa

Protok: 100%

Brim: Bilo gdje dodiruje građevinsku ploču

Gustoća ispune: 20%

Postepeno: 0

Temperatura mlaznice: 220 C

Brzina ispisa: 120%

Korak 9: Lemljenje i završna obrada

Lemljenje i završna obrada
Lemljenje i završna obrada
Lemljenje i završna obrada
Lemljenje i završna obrada
Lemljenje i završna obrada
Lemljenje i završna obrada

Prešli ste dug put.

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

Uvjerite se da elektronika staje u odštampana kućišta i možda izrežite drveni MDF kako biste napravili dijelove kroz koje prolaze dugmad / ulazi kontrolera.

Za to sam koristio laserski rezač.

Najvažnije je zeznuti se, isprobati neke stvari koje inače 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čuje se: