Sisukord:
- Samm: LED -massiivi loomine
- 2. samm: mõla juhtnupud
- 3. samm: korpuse lõikamine
- 4. samm: korpuse kokkupanek
- Samm: montaaži viimistlemine
- 6. samm: kood
- Samm: viimistlus
Video: LED -riba Atari Pong Arcade Machine: 8 sammu
2024 Autor: John Day | [email protected]. Viimati modifitseeritud: 2024-01-30 08:47
Minu nimi on Gabriel Podevin ja see on minu esimene muutumatu. Olen praegu 16 -aastane keskkooliõpilane, kes armastab luua ja ehitada asju, olles samal ajal väga huvitatud elektroonikast, robootikast, vooluringidest ja programmeerimisest. Loodan, et leiate selle lihtsustatava leiu sellest abi.
Selles juhendis näitan teile, kuidas teha retro stiilis Atari pongi mängu retro arkaadikarbis. Ülaltoodud videot näete projekti demo jaoks, samuti näete valmis projekti ja ümbrist üksi ja kahel pildil. Selle intructable'i lõpus sukeldun sügavamalt koodi ja kuidas seda isikupärastamiseks muuta.
Põhiosade loend jaguneb osadeks: Tööriistad, montaažiosad ja komponendid
Vajalikud tööriistad hõlmavad järgmist:
- Puurida
- Jootekolb
- kruvikeeraja (vastab kruvidele, mida otsustate kasutada)
- Mitmearvesti
- ringlusaag, lintsaag või laserlõikur, kui teil on sellele juurdepääs
-Traadi lõikur või käärid
- Liimipüstol
Osad, mida vajate kokkupanekuks, sisaldavad
- puiduliim
- 10 ühe tolli ja ühe tolli puitplokki
- suur veerandtollise kihi või valitud puidu leht
- 24 kruvi, mille pikkus on pool tolli
- 14 x 6,5 tolli LED -hajutavat plastikut (valikuline)
- punane ja sinine elektrilint
Komponendid, mida vajate, on järgmised:
- 2 100k oomi potentsiomeetrit
- 8 meetrit individuaalselt adresseeritavat LED -riba (30 LED -i meetri kohta)
www.amazon.ca/ALITOVE-WS2812B-Individually-Addressable-Waterproof/dp/B018XAELE4/ref=sr_1_1?s=hi&ie=UTF8&qid=1535323567&sr=1-
- mitu meetrit traati või mitut värvi traat
- vahelduvvoolu -alalisvoolu toiteadapter, mis väljastab 6 V läbi silindripistiku
- 1 arduino Uno R3
kui teil pole juurdepääsu sellisele Arduino Uno R3-le nagu mina, saate luua sellise, mida ma kasutan selles projektis, mis kasutab atmel328-pu protsessorit. Järgige seda linki, et õppida, kuidas luua oma
Kui kasutate arduino uno, jätkake esimese sammuga.
Samm: LED -massiivi loomine
See samm on lihtsaim aeganõudev samm kõigi jootmiste tõttu, mida peate tegema.
-alustamiseks vajate 10 3/4 tolli 6 1/2 tolli puutükki.
-kui teil on oma puutükk, haarake oma LED -riba ja lõigake 26 segmenti iga 10 LED -i või iga 6 1/2 tolli järel.
-pärast segmentide lõikamist liimige need vertikaalselt oma puidu külge, nagu on näidatud ülaltoodud esimesel pildil näidatud järgmistel piltidel.
-kui olete ribad alla kleepinud ja lasknud neil settida, hakkame jootma.
-vajate kolme erinevat värvi traati
-see peaks olema juhtmega ühendatud, nii et kõik positiivsed ühendatakse ühe juhtmega ja kõik negatiivid ühendatakse ühe juhtmega, samal ajal kui viimane juhe ühendab LED -ribad kokku. Teised pildid selle sammu alguses on skeem, mis näitab teile, kuidas juhtmeid ühendada.
-Lõpuks pärast nende jootmist pakite jootmisühendustele lihtsalt elektrilindi vastavate värvidega. nagu on näidatud ülaltoodud kolmandal pildil.
-viimasel ajal ühendame Arduinoga. teie digitaalne sisend või keskmine juhe ühendab teiega digitaalse sisendiga 6 kontakti ja teie maandus ja positiivne ühendatakse tahvli positiivsete ja negatiivsete rööbastega.
2. samm: mõla juhtnupud
Selle väga lihtsa sammu jaoks peate ainult jootma iga potentsiomeetri juurde kolm juhtmest. kui hoiate potentsiomeetrit nii, et jootmispunktid oleksid teie poole suunatud, on vasak haru positiivne, kui keskmist piiki väljastatakse ja parem harg maandatakse. nagu ülaltoodud diagrammil näidatud
kui olete juhtmed jootnud, ühendame need Arduinoga. teil on positiivsed ja negatiivsed ühendused vastavate positiivsete ja negatiivsete vihmadega. potentsiomeetrite väljundjuhtmed ühendatakse arduino erinevate sisenditega. üks ühendub pistikuga (A0) ja teine pistikuga (A1).
3. samm: korpuse lõikamine
see osa annab teile mõõtmed ja nurgad, mida peate lõikama
**** väga oluline ***** veenduge, et teie puit oleks veerand tolli paks (1/4 tolli)
ka osade väljalõikamisel ärge unustage oma osi märgistada
lõigatav põhiosa on märgistatud alumise, tagumise, ülemise, eesmise ülaosa, eesmise põhjaga…. alguses piltidel näidatud
osa mõõtmed
- Alumine: 13 3/4 tolli X 10 1/4 tolli
- Tagasi: 13 3/4 tolli X 15 1/2 tolli
- Ülemine: 13 3/4 tolli X 6 1/2 tolli
- Eesmine põhi: 13 3/4 tolli X 4 1/4 tolli
- Valimispaneel: 13 3/4 tolli X 6 tolli
- Sisemine ülaosa: 13 3/4 tolli X 3 1/4 tolli
- LED -vooder: 6 1/4 tolli X 1 tolli (lõigake kaks neist)
- LED sisemine põhi: 13 1/4 tolli X 4 1/2 tolli
- sisemine tagumine LED -paneel: 13 1/4 tolli X 9 tolli
- plokid: 1 tolli X 1 tolli X 1 tolli (lõigatud 10 plokki)
- Akrüülpaneel: 13 3/4 tolli X 6 1/2 tolli
Ülaltoodud piltidel on näidatud külgpaneeli osa nurgad ja mõõtmed. samuti peate lõikama kaks sellest osast
4. samm: korpuse kokkupanek
Nende juhiste selle punktiga olete peaaegu kogu asja lõpetanud. pange ilmselt mõtlema, et mul on kõik need osad ja väljalõiked, mida ma nendega teen. See viimane samm juhendab teid, kuidas oma ümbrist kokku panna.
-Esimese asjana hakkame juhtumit kokku panema. siin tulevad kasuks kõik teie eelmise sammu puidust väljalõiked.
-Kokkupaneku alustamiseks vajame 4 1x1x1 puitplokist alust, kahte külgpaneeli, tagakülge ja esipõhja. asetage 4 klotsi põhja mõlemale nurgale ja jätke veerand tolli serva ja ploki vahele, nagu on näidatud teisel pildil sammu alguses.
-järgmiseks peate puidu ja klotside kaudu puurima mõned prooviaugud. kui olete selle kruvi teinud, siis põhja.
-Järgmisena paneme külgpaneelid peale. Asetage paneelid ploki väljapoole jäävale veerandtollisele pilule. puurige külgpaneeli ja puitploki kaudu prooviauk ja keerake paneelid sisse. korrake teise küljega.
-Pärast külgpaneelide valmimist. paneme esipaneeli alla. asetage paneel põhjaga ühele poole ja küljed puurige plokkidesse prooviaugud ja keerake paneel kinni.
-Lõpuks paneme selga. tehke sama, mis esipaneelil ja keerake see tagasi.
-Selleks hetkeks on teil alus, millele tugineda, ja arusaam sellest, kuidas me seda juhtumit kokku paneme.
-See järgmine osa on natuke keerulisem, kuna töötate väiksema alaga. alustamiseks vajame kõiki ülemisi osi ja 6 plokki.
-Pange see, mille olete seni ehitanud, selga ja asetage klotsid nurkadesse veerand tolli kaugusel ülevalt. (nagu alguses kolmandal pildil)
-puurige külgede ja selja prooviavad ja keerake need sisse.
-nüüd paneme ülejäänud ülaosa kokku
-Võtke oma ülemine paneel ja asetage see klotsidele, puurige prooviaugud ja keerake ülemine osa sisse. Pärast soome keelt keerate oma komplekti tagurpidi *** ettevaatlikult *** ja asetage plokk igasse serva paralleelsesse nurka. puurige külgpaneelidest prooviaugud ja keerake need ploki külge. keerake korpus tagasi püsti ja puurige ülaosast prooviaugud plokkidesse ja keerake see sisse.
-see pesaosa on natuke keeruline. vajate esipaneeli ja kahte viimast plokki. puurige esmalt ülemise esipaneeli kaudu eelmistesse plokidesse prooviaugud ja keerake need sisse. Nüüd viige kaks viimast plokki ja asetage need nurka ning keerake külgpaneel ja esipaneel plokkide külge. keerake korpus veel kord tagurpidi ja asetage sisemine ülemine paneel plokile ja keerake see sisse.
-teile peaks jääma midagi sellist (näidatud selle sammu esimesel pildil)
järgmine samm selgitab ülejäänud kokkupanekut.
Samm: montaaži viimistlemine
Selleks hetkeks olete juhtumi peaaegu lõpetanud ja ehitanud vaid mõned asjad, mis paika panna ja olete valmis.
Nüüd jääb üle vaid elektroonika paigaldamine.
-Alustuseks puurime teie potentsiomeetri valimispaneelile augud. puurige julgelt auke sinna, kus tunnete, et see oleks mugav. minu puhul olen mõlema potentsiomeetri jaoks asetanud augud 2 1/2 tolli alt ja 3 1/2 tolli küljelt.
-Kui olete oma augud puurinud, paneme selle paneeli korpusele. selle asemel, et seda kruvida, hakkame seda liimima, lihtsalt paneme korpuse servale suure hulga liimi ja asetame paneeli külge ning hoiame seda mõne klambri või mõne raske asjaga.
-Kui liim on kuivanud, paneme sisse elektroonilised osad. Kuid kõigepealt peame tagapaneeli eemaldama.
-Kui tagakülg on välja lülitatud, soovitan paigutada korpuse ettepoole, et oleks lihtsam LED -e ja muid komponente sisse panna.
-Nüüd, kui teil on tagurpidi, asetame potentsiomeetri korpuse sisse, pannes need lihtsalt läbi puuritud aukude ja pannes ohtralt kuuma liimi.
*** Ettevaatust ***-Olge LED-massiivi paigutamisel äärmiselt ettevaatlik, sest jootepunktid võivad olla habras.
-Nüüd oleme jõudnud kõige olulisema osani, lisades led -massiivi. lihtsalt asetage tahvel teisele pildile.
-Kui olete oma sisemise paneeli kätte saanud ja asetage see korpuse sisse otse LED -massiivi tagapaneeli alla. see tükk võib mulle hästi sobida. laske ka enne jätkamist kuivada.
-Olete jõudnud viimase osani. soovitan värvida selle viimase osa (LED -sisemine tagakülg) üks külg mustaks või valgeks, et LED -ide ja selle osa vahel oleks kontrast.
-Me teame, et asetage see otse LED -tagakülje taha ja vajutage kergelt LED -ide tagaküljele, et need ei liiguks. pärast sisestamist kandke liimi mööda serva, et vältida selle liikumist. näidatud kolmandal pildil.
**** Palju õnne, et olete kogu kokkupaneku lõpetanud !!!
jätkake mängu kodeerimiseks viimase sammuga
6. samm: kood
Õnnitlen teid veel kord nii kaugele jõudmise eest.
selles jaotises näitan teile koodi ja seda, kuidas see toimiks, lisaks muudele koodis olevatele asjadele, mida saate muuta ja isikupärastada.
kuid enne kui me sellesse asume, vajate (adafruit_NeoPixel-master) ka allalaadimist.
kapteni installimiseks avage arduino programm
1. mine visandile
2. avatud raamatukogu
3. klõpsake (add.zip raamatukogu)
4. Valige fail (adafruit_NeoPixel-master) ja olete valmis
selle alla olen kleepinud mängu koodi.
#kaasake
#kaasake
pikk pallXabs = 12;
pikk ballYabs = 4;
int ballX;
int ballY;
int pallitasemeX = 1;
int pallitasemeY = 1;
int indeks;
int fps = 50;
int mõla laius = 3;
int paddlemax = 9 - mõla laius + 1;
int knobseg = 1023 / (paddlemax);
int mõla1 = 4;
int mõla2 = 4;
#defineeri NUMPIXELS 260
#defineeri PIN 6
Adafruit_NeoPixel pikslid = Adafruit_NeoPixel (NUMPIXELS, PIN6, NEO_GRB + NEO_KHZ800);
tühine seadistus () {
pixels.begin ();
Seriaalne algus (9600);
}
void loop () {
clearScreen ();
updateBall ();
updatePaddle1 ();
updatePaddle2 ();
displayBall ();
displayPaddle1 ();
displayPaddle2 ();
pixels.show ();
detectCollision ();
viivitus (fps);
}
void clearScreen () {
jaoks (int i = 0; i <NUMPIXELS; i ++) {
pixels.setPixelColor (i, pixels. Color (0, 0, 0));
}
}
void updateBall () {
ballXabs += ballvelX;
ballYabs += ballvelY;
}
void detectCollision () {
Serial.print (ballYabs);
Serial.print ("");
Serial.println (mõla1);
if (ballvelX> 0 && ballXabs> = 25) {// põrkuvad paremale seinale
Serial.println ("KokkupõrgeX");
skoor1 (); // ballvelX*=-1;
}
if (ballvelX <0 && ballXabs <= 0) {// põrkuvad vasakule seinale
Serial.println ("KokkupõrgeX");
skoor2 (); // ballvelX*=-1;
}
if (ballvelY> 0 && ballYabs> = 9) {// põrkuvad vastu ülemist seina
Serial.println ("KokkupõrgeY"); kuuliY *= -1;
}
if (ballvelY <0 && ballYabs <= 0) {// põrkuvad kokku alumise seinaga
Serial.println ("KokkupõrgeY");
kuuliY *= -1;
}
// tuvastada mõla 2 kokkupõrge
kui ((ballvelX> 0 && ballXabs == 24) && ((ballYabs> = paddle2) && (ballYabs <= paddle2 + paddlewidth - 1)))
{// põrkuvad paremale seinale
Serial.println ("CollisionPaddle");
kuultaseX *= -1;
}
// avastada mõla 1 kokkupõrge
if ((ballvelX = mõla1) && (ballYabs <= mõla1 + mõla laius - 1)))
{// põrkuvad paremale seinale
Serial.println ("CollisionPaddle");
kuultaseX *= -1;
}
}
void updatePaddle1 () {
int nupp = analogRead (A0);
mõla1 = ümmargune ((pikk) nupp / (pikk) nupp);
}
void updatePaddle2 () {
int nupp2 = analogRead (A1);
mõla2 = ümmargune ((pikk) nupp2 / (pikk) nupp);
}
void displayBall () {
ballX = ümmargune (ballXabs);
ballY = ümmargune (ballYabs);
kui (ballX % 2! = 0) {
indeks = (9 - pallY) + 10 * pallX;
kui (ballX! = 0) {
pixels.setPixelColor (ballY + 10 * (ballX - 1), pixels. Color (30, 0, 0)); // pallivärvi vasak pool
}
if (ballX! = 25) {pixels.setPixelColor (ballY + 10 * (ballX + 1), pixels. Color (30, 0, 0)); // kuuli värvi parem pool
}
if (ballY! = 9) {pixels.setPixelColor (indeks - 1, pikslit. Värv (30, 0, 0)); // palli värvi alumised küljed
}
if (ballY! = 0) {pixels.setPixelColor (indeks + 1, pikslit. Värv (30, 0, 0)); // palli värvi ülemised küljed
}
}
muu {
indeks = pallY + 10 * pallX; kui (ballX! = 0) {
pixels.setPixelColor ((9 - ballY) + 10 * (ballX - 1), pixels. Color (30, 0, 0)); // kuuli vasak pool ühtlane rida
}
kui (ballX! = 25) {
pixels.setPixelColor ((9 - ballY) + 10 * (ballX + 1), pixels. Color (30, 0, 0)); // parempoolne pall ühtlane rida
}
kui (ballY! = 9) {
pixels.setPixelColor (indeks + 1, pikslit. värv (30, 0, 0)); // palli alumine külg ühtlane rida
}
if (ballY! = 0) {pixels.setPixelColor (indeks - 1, pikslit. Värv (30, 0, 0)); // palli ülemised küljed ühtlane rida
}
}
pixels.setPixelColor (indeks, pixels. Color (255, 0, 0)); /// palli värvi keskpunkt
}
void displayPaddle1 () {
for (int i = 0; i <paddlewidth; i ++) {pixels.setPixelColor (mõla1+i, pikslit. Värv (0, 0, 255));
}
}
void displayPaddle2 () {
for (int i = 0; i <paddlewidth; i ++) {pixels.setPixelColor (NUMPIXELS - 1 - mõla2 - i, pikslit. Värv (0, 0, 255));
}
}
tühine skoor1 () {
resetBall (0);
}
tühine skoor2 () {
resetBall (1);
}
void resetBall (int -mängija) {
viivitus (1000);
ballXabs = 12
; ballYabs = 4;
ballvelX = mängija? 1: -1;
kuuliY = 1;
clearScreen ();
viivitus (1000);
displayBall ();
pixels.show ();
viivitus (1000);
displayPaddle1 ();
displayPaddle2 (); pixels.show (); viivitus (2000); }
Samm: viimistlus
Kui olete koodi üles laadinud, puurige tagapaneelile auk, mis on teie tünnipistiku toiteadapteri jaoks piisavalt suur. ühendage see arduinoga ja pange lõpuks tagakülg kokku.
Lisasin ka osade loendisse akrüülist LED -hajuti, mille saate nüüd LED -ide kohale asetada ja liimida
Kui olete seda teinud, olete valmis mängima ja nautima tunde võistlusmänge pere ja sõprade vastu.
Lõpetuseks tahaksin teid projekti lõpuleviimise puhul õnnitleda.
Kui teil on probleeme, võtke minuga ühendust siin ja ma aitaksin probleemi lahendada.
Soovitan:
Atari punkkonsool beebiga 8 sammu järjestus: 7 sammu (piltidega)
Atari punkkonsool koos beebi 8-astmelise sekveneerijaga: see vaheehitus on kõik-ühes Atari punk-konsool ja beebi 8-astmeline järjestus, mida saate freesida Bantam Tools töölaua PCB-freespingis. See koosneb kahest trükkplaadist: üks on kasutajaliidese (UI) plaat ja teine on utiliit
DIY Arcade Machine: 4 sammu
DIY Arcade Machine: see projekt tehti osana meie projektinädalast Osnabruecki rakenduskõrgkoolis. See oli inspireeritud juba saadaval olevatest juhenditest, näiteks: Arcade Spielekonsole Mit Raspberry Pi Barcade Arcade kõigile
Office Arcade Machine: 9 sammu (piltidega)
Office Arcade Machine: Neile teist, kes ootasid, et see on järjekordne käsitsi valmistatud süntesaatori korpus, võib see olla pisut pettumust valmistav, kuid täna tahaksin jagada meie kogemust täissuuruses arkaadimasina ehitamisel meie kontori jaoks. See oli bunci ühine pingutus
Arvutiga töötav Bartop Arcade Machine käivitab käivituskasti: 7 sammu
Arvutiga töötav Bartop Arcade'i masin, mis töötab LaunchBoxis: BarCade'i masin on arkaad, mis on sisse ehitatud Windows 10 -sse koos Big Boxiga ja millega saab mängida kõigi aegade suurimaid retro mänge! Sonic? Sain aru. Pokemon Pinball? Meil on see. Tänavavõitleja? Kontrollima. Ja nii palju muudki. BarCade saab täita paljusid teie mänge
X-men Arcade Machine: 30 sammu (piltidega)
X-men Arcade Machine: Ehitasin selle " X-men " Arkaadimasin koos tütrega umbes kahe aasta jooksul (see ei oleks pidanud nii kaua aega võtma). See oli tõesti lõbus projekt ja oleme selle väljanägemisega väga rahul. Mõned juhised selle juhendi kohta