Tartalomjegyzék:

LED szalag Atari Pong Arcade Machine: 8 lépés
LED szalag Atari Pong Arcade Machine: 8 lépés

Videó: LED szalag Atari Pong Arcade Machine: 8 lépés

Videó: LED szalag Atari Pong Arcade Machine: 8 lépés
Videó: MSC Seascape Full Ship Tour Tips Tricks & Review New Flagship Vista Megaship Project Italy 2024, Július
Anonim
LED szalag Atari Pong Arcade Machine
LED szalag Atari Pong Arcade Machine

A nevem Gabriel Podevin, és ez az első intructable. Jelenleg egy 16 éves középiskolás vagyok, aki szeret alkotni és építeni, miközben nagyon érdeklődik az elektronika, a robotika, az áramkör és a programozás iránt. Remélem, hasznosnak találja ezt az áttekinthetetlen megállapítást.

Ebben az oktathatóban megmutatom, hogyan lehet retro stílusú Atari Pong játékot készíteni egy retro arcade tokban. Láthatja a fenti videót a projekt demójához, láthatja a kész projektet és a tokot is egyedül és a két képen. Ennek a megfejthetetlennek a végén mélyebbre fogok merülni a kódban és annak személyre szabásához szükséges szerkesztésében.

Az alapvető alkatrészek listája a következő részekre oszlik: Szerszámok, szerelési alkatrészek és alkatrészek

A következő eszközökre lesz szüksége:

- Fúró

- Forrasztópáka

- Csavarhúzó (illeszkedik a csavarokhoz, amelyeket úgy dönt, hogy használ)

- Multi Meter

- keringető fűrész, szalagfűrész vagy lézervágó, ha hozzájut egy ilyenhez

-Drótvágó vagy olló

- Ragasztópisztoly

Az összeszereléshez szükséges alkatrészek tartalmazzák

- Fa ragasztó

- 10 db 1 hüvelyk x 1 hüvelyk fatömb

- nagyméretű, negyed hüvelykes rétegelt fa vagy választott fa

- 24 csavar fél hüvelyk hosszú

- 14 x 6,5 hüvelyk led diffúziós műanyag (opcionális)

- piros és kék elektromos szalag

A szükséges összetevők a következők:

- 2 100k ohmos potenciométer

- 8 méter egyedileg címezhető Led szalag (30 LED méterenként)

www.amazon.ca/ALITOVE-WS2812B-Individively-Addressable-Waterproof/dp/B018XAELE4/ref=sr_1_1?s=hi&ie=UTF8&qid=1535323567&sr=1-

- több méter huzal vagy több színű huzal

- váltakozó áramú egyenáramú tápegység, amely 6 V -os kimenetet biztosít egy hordó csatlakozó dugón keresztül

- 1 arduino Uno R3

Ha nincs hozzáférése egy olyan Arduino Uno R3-hoz, mint én, akkor létrehozhat egy hasonlót, amelyet ebben a projektben fogok használni, amely atmel328-pu processzort használ. Kövesse ezt a linket, hogy megtudja, hogyan készíthet saját

Ha arduino uno -t használ, folytassa az első lépéssel.

1. lépés: A LED tömb felépítése

A LED tömb építése
A LED tömb építése
A LED tömb építése
A LED tömb építése
A LED tömb építése
A LED tömb építése

Ez a lépés a legegyszerűbb időigényes lépés a forrasztás miatt.

-kezdéshez szüksége lesz egy 10 3/4 hüvelyk x 6 1/2 hüvelykes fadarabra.

-ha egyszer megvan a fadarabja, fogja meg a Led szalagot, és vágjon le 26 szegmenst minden 10 led vagy 6 1/2 hüvelyk után.

-a szegmensek vágása után ragasztja őket függőlegesen a fához, amint az a fenti képeken látható, a fenti képeken látható.

-ha egyszer leragasztotta a csíkokat és hagyta leülepedni, elkezdjük forrasztani.

-három különböző színű huzalra lesz szüksége

-kábelezni kell úgy, hogy minden pozitív csatlakozik egy vezetékhez, és minden negatív egy vezetékhez, míg az utolsó vezeték összegyúrja a led csíkokat. Ennek a lépésnek a második képe egy diagram, amely bemutatja a vezetékek csatlakoztatásának módját.

-Végül, miután forrasztotta őket, egyszerűen tekerjen egy csíkot a forrasztócsatlakozókra a megfelelő színekkel. ahogy a fenti harmadik képen látható.

-végül csatlakozunk az Arduino -hoz. a digitális bemenet vagy a középső vezeték 6 -tűs digitális bemenethez csatlakozik, a föld és a pozitív csatlakozik a táblán lévő pozitív és negatív sínekhez.

2. lépés: A lapátvezérlők

A lapátvezérlők
A lapátvezérlők
A lapátvezérlők
A lapátvezérlők
A lapátvezérlők
A lapátvezérlők

Ehhez az egyszerű lépéshez mindössze annyit kell tennie, hogy három vezetéket forraszt minden potenciométerhez. ha a potenciométert úgy tartja, hogy a forrasztási pontok Ön felé néznek, akkor a bal fogszár pozitív lesz, a középső szög kimenetre kerül, és a jobb szög lesz lecsiszolva. ahogy a fenti diagram mutatja

Miután forrasztotta a vezetékeket, csatlakoztatjuk őket az Arduino -hoz. a pozitív és negatív esők összekapcsolódnak a megfelelő pozitív és negatív esőkkel. A potenciométerek kimeneti vezetékei az arduino különböző bemeneteire csatlakoznak. az egyik az (A0), a másik az (A1) csatlakozóhoz csatlakozik.

3. lépés: Vágja le a tokot

A tok levágása
A tok levágása
Az ügy kivágása
Az ügy kivágása
A tok levágása
A tok levágása
Az ügy kivágása
Az ügy kivágása

ez a rész megadja a vágáshoz szükséges méreteket és szögeket

**** nagyon fontos ***** Győződjön meg arról, hogy a fa egy negyed hüvelyk vastag (1/4 hüvelyk)

az alkatrészek kivágásakor ne felejtse el címkézni az alkatrészeket

az alapdarabot alul, hátul, felül, elülső tetején, elülső alján kell feliratozni … elején látható a képeken

alkatrész méretei

- Alul: 13 3/4 hüvelyk X 10 1/4 hüvelyk

- Hátul: 13 3/4 hüvelyk X 15 1/2 hüvelyk

- Felső: 13 3/4 hüvelyk X 6 1/2 hüvelyk

- Elülső alsó: 13 3/4 hüvelyk X 4 1/4 hüvelyk

- Tárcsázó panel: 13 3/4 hüvelyk X 6 hüvelyk

- Belső felső: 13 3/4 hüvelyk X 3 1/4 hüvelyk

- LED burkolat: 6 1/4 hüvelyk X 1 hüvelyk (kettőt vágjon le)

- LED belső alsó rész: 13 1/4 hüvelyk X 4 1/2 hüvelyk

- belső hátsó LED panel: 13 1/4 hüvelyk X 9 hüvelyk

- Blokkok: 1 hüvelyk X 1 hüvelyk X 1 hüvelyk (10 blokk vágása)

- Akril panel: 13 3/4 hüvelyk X 6 1/2 hüvelyk

A fenti képek az oldalsó panel szögét és méretét mutatják. ebből a részből kettőt is ki kell vágnia

4. lépés: A tok összeállítása

Ügyszerelés
Ügyszerelés
Ügyszerelés
Ügyszerelés
Ügyszerelés
Ügyszerelés

Ezen utasítások ezen a pontján majdnem befejezte az egészet. tedd fel a valószínűleg azt gondolod, hogy ezek az alkatrészek és kivágások megvannak, mit tegyek velük. Ez az utolsó lépés megtanítja a tok összeállítását.

-Az első dolog, amit elkezdünk, az, hogy elkezdjük összeszerelni a tokot. itt jól jön minden, amit az előző lépésből fa kivágott.

-Az összeszerelés megkezdéséhez szükségünk lesz 4 db 1x1x1 fadarabból az alapra, a két oldallapra, a hátlapra és az elülső aljára. helyezze a 4 tömböt az alsó sarokba, és hagyjon negyed centimétert a szél és a blokk között, ahogy a második képen látható a lépés kezdetén.

-Ezután néhány fúrólyukat kell fúrni a fán és a blokkokon keresztül. ha megcsináltad ezt a csavart, akkor az aljára.

-Ezután felhelyezzük az oldalsó paneleket. Helyezze a paneleket a blokk külső oldalán lévő negyed hüvelykes résre. fúrjon ki egy kísérleti lyukat az oldalsó panelen és a fa blokkon, és csavarja be a paneleket. ismételje meg a másik oldalra is.

-Az oldallapok elkészítése után. felhelyezzük az elülső alsó panelt. helyezze a panelt egy síkba az aljával, és az oldalakkal fúrja a kísérleti lyukakat a blokkokba, és csavarja fel a panelt.

-Végül felhúzzuk a hátat. ugyanazt tegye, mint az elülső alsó panellel, és csavarja vissza.

-Ekkor már van egy alapja, amiből építkeznie kell, és megértése, hogyan állítjuk össze ezt az ügyet.

-Ez a következő rész egy kicsit nagyobb kihívást jelent, mivel kisebb területen dolgozik. kezdéshez szükségünk lesz az összes felső részre és 6 blokkra.

-Fektesse a hátára, amit eddig épített, és helyezze a tömböket a sarkokba, negyed centiméterre a tetejétől. (ahogy az elején a harmadik képen látható)

-fúrja ki a vezetőfuratokat az oldalakhoz és a háthoz, és csavarja be őket.

-Most összeszereljük a tetejének többi részét

-Fogja meg a felső panelt, és helyezze a tömbökre, fúrja ki a kísérleti lyukakat és csavarja be a tetejét. Miután finnül fordította a szerelvényt fejjel lefelé *** óvatosan ***, és helyezzen egy tömböt a sarkával párhuzamosan. fúrjon kísérleti lyukakat az oldalsó panelekről, és csavarja őket a blokkra. fordítsa vissza a tokot függőlegesen, és fúrjon vezetőfuratokat a tetején keresztül a blokkokba, és csavarja be.

-ez a fészekrész kicsit trükkös. szüksége lesz az elülső felső panelre és az utolsó két blokkra. először fúrjon egy kísérleti lyukakat az előző blokkokba a felső előlapján keresztül, és csavarja be. Most vegye be az utolsó két blokkot, és helyezze őket a sarokba, és csavarja az oldalsó panelt és az első felső panelt a blokkokhoz. fordítsa újra a tokot fejjel lefelé, és helyezze a belső felső panelt a blokkra, és csavarja be.

-valami ilyesmit kell hagynia (ez a lépés első képén látható)

a következő lépés elmagyarázza az összeszerelés többi részét.

5. lépés: Az összeszerelés befejezése

Az összeszerelés befejezése
Az összeszerelés befejezése
Az összeszerelés befejezése
Az összeszerelés befejezése
Az összeszerelés befejezése
Az összeszerelés befejezése

Ekkor már majdnem befejezte az ügyet, és csak néhány dolgot kell a helyére tenni, és kész.

Most már csak az elektronika telepítése maradt.

-Kezdjük azzal, hogy lyukakat fúrunk a potenciométer számlapjába. nyugodtan fúrja ki azokat a lyukakat, ahol úgy érzi, hogy kényelmes lenne. az én esetemben mindkét potenciométerhez elhelyeztem a lyukakat 2 1/2 hüvelykre alulról és 3 1/2 hüvelykre oldalról.

-Miután fúrta a lyukakat, ezt a panelt ráhelyezzük a tokra. de ahelyett, hogy felcsavarnánk, ragasztani fogjuk, egyszerűen tegyünk nagy mennyiségű ragasztót a tok szélére, és tegyük rá a panelt, és tartsuk meg néhány szorítóval vagy valami nehéz anyaggal.

-Miután a ragasztó megszáradt, behelyezzük az elektronikus alkatrészeket. De először el kell távolítanunk a hátlapot.

-Amikor a hátlap ki van kapcsolva, azt javaslom, hogy tegye lefelé a házat, hogy könnyebb legyen behelyezni a LED -eket és más alkatrészeket.

-Most, hogy megvan a hátlapja, a potenciométert a házba helyezzük, egyszerűen áthelyezzük azokat az éppen fúrt lyukakon, és nagy mennyiségű forró ragasztót teszünk fel.

*** Vigyázat ***-Legyen rendkívül óvatos a LED tömb behelyezésekor, mert a forrasztási pontok törékenyek lehetnek.

-Most elérkeztünk a legfontosabb részhez, a led tömb behelyezéséhez. egyszerűen helyezze be a táblát a második képen látható módon.

-Miután beszerezte a led belső paneljét, és helyezze a tokba, közvetlenül a LED -es hátsó panel alá. ez a darab szorosan illeszkedik hozzám. a folytatás előtt hagyja megszáradni.

-Elérted az utolsó részt. Azt javaslom, hogy az utolsó rész (LED belső hátoldal) egyik oldalát feketére vagy fehérre fessük, hogy kontraszt legyen a LED -ek és ez a rész között.

-Tudni fogjuk, hogy ezt közvetlenül a LED hátlap mögé helyezzük, és enyhén nyomjuk a LED -ek hátulját, hogy ne mozduljanak el. behelyezés után ragasztót kell felragasztani a széle mentén, hogy ne mozduljon el. a harmadik képen látható.

**** Gratulálok, hogy befejezted az összeszerelést !!!

folytassa az utolsó lépéssel a játék kódolásához

6. lépés: A kód

Még egyszer gratulálok, hogy idáig eljutott.

ebben a részben megmutatom a kódot és annak működését a kódon belüli dolgok mellett, amelyeket módosíthat és személyre szabhat.

de mielőtt belevágnánk, szüksége lesz az (adafruit_NeoPixel-master) linkeltem a letöltésre is.

A mester telepítéséhez nyissa meg az arduino programot

1. menj vázlatra

2. nyitott könyvtár

3. kattintson (add.zip könyvtár)

4. Válassza ki az (adafruit_NeoPixel-master) fájlt, és kész

ez alatt illesztettem be a játék kódját.

#befoglalni

#befoglalni

hosszú ballXabs = 12;

hosszú ballYabs = 4;

int ballX;

int ballY;

int ballvelX = 1;

int ballvelY = 1;

int index;

int fps = 50;

int lapátszélesség = 3;

int paddlemax = 9 - lapát szélessége + 1;

int knobseg = 1023 / (paddlemax);

int lapát1 = 4;

int lapát2 = 4;

#define NUMPIXELS 260

#define PIN 6

Adafruit_NeoPixel pixelek = Adafruit_NeoPixel (NUMPIXELS, PIN6, NEO_GRB + NEO_KHZ800);

void setup () {

pixels.begin ();

Sorozat.kezdet (9600);

}

void loop () {

clearScreen ();

updateBall ();

updatePaddle1 ();

updatePaddle2 ();

displayBall ();

displayPaddle1 ();

displayPaddle2 ();

pixels.show ();

detectCollision ();

késleltetés (fps);

}

void clearScreen () {

for (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 (lapát1);

if (ballvelX> 0 && ballXabs> = 25) {// ütköznek a jobb oldali falnak

Serial.println ("CollisionX");

pontszám1 (); // ballvelX*=-1;

}

ha (ballvelX <0 && ballXabs <= 0) {// ütközik a bal falhoz

Serial.println ("CollisionX");

pontszám2 (); // ballvelX*=-1;

}

if (ballvelY> 0 && ballYabs> = 9) {// ütközik a felső falnak

Serial.println ("Ütközés Y"); golyós Y *= -1;

}

ha (ballvelY <0 && ballYabs <= 0) {// ütközik az alsó falnak

Serial.println ("Ütközés Y");

golyós Y *= -1;

}

// észleli a 2. lapát ütközését

if ((ballvelX> 0 && ballXabs == 24) && ((ballYabs> = paddle2) && (ballYabs <= paddle2 + paddlewidth - 1)))

{// ütközzön a jobb oldali falhoz

Serial.println ("CollisionPaddle");

golyószögX *= -1;

}

// az 1. lapát ütközésének észlelése

if ((ballvelX = lapát1) && (ballYabs <= lapát1 + evezőszélesség - 1)))

{// ütközzön a jobb oldali falhoz

Serial.println ("CollisionPaddle");

golyószögX *= -1;

}

}

void updatePaddle1 () {

int gomb = analogRead (A0);

lapát1 = kerek ((hosszú) gomb / (hosszú) gomb);

}

void updatePaddle2 () {

int gomb2 = analógRead (A1);

lapát2 = kerek ((hosszú) gomb2 / (hosszú) gomb);

}

void displayBall () {

ballX = kerek (ballXabs);

ballY = kerek (ballYabs);

ha (ballX % 2! = 0) {

index = (9 - ballY) + 10 * ballX;

ha (ballX! = 0) {

pixels.setPixelColor (ballY + 10 * (ballX - 1), pixels. Color (30, 0, 0)); // a golyószín bal oldala

}

if (ballX! = 25) {pixels.setPixelColor (ballY + 10 * (ballX + 1), pixels. Color (30, 0, 0)); // a labda színének jobb oldala

}

if (ballY! = 9) {pixels.setPixelColor (index - 1, pixels. Color (30, 0, 0)); // labda színű alsó oldalai

}

if (ballY! = 0) {pixels.setPixelColor (index + 1, pixels. Color (30, 0, 0)); // labda színű felső oldalai

}

}

más {

index = ballY + 10 * ballX; ha (ballX! = 0) {

pixels.setPixelColor ((9 - ballY) + 10 * (ballX - 1), pixels. Color (30, 0, 0)); // a labda bal oldala páros sor

}

ha (ballX! = 25) {

pixels.setPixelColor ((9 - ballY) + 10 * (ballX + 1), pixels. Color (30, 0, 0)); // golyó jobb oldala páros sor

}

ha (ballY! = 9) {

pixels.setPixelColor (index + 1, pixels. Color (30, 0, 0)); // a labda alsó oldala páros sor

}

if (ballY! = 0) {pixels.setPixelColor (index - 1, pixels. Color (30, 0, 0)); // a labda felső oldala páros sor

}

}

pixels.setPixelColor (index, pixels. Color (255, 0, 0)); /// a labda színének középpontja

}

void displayPaddle1 () {

for (int i = 0; i <lapátszélesség; i ++) {pixels.setPixelColor (lapát1+i, pixel. Color (0, 0, 255));

}

}

void displayPaddle2 () {

for (int i = 0; i <lapátszélesség; i ++) {pixels.setPixelColor (NUMPIXELS - 1 - paddle2 - i, pixels. Color (0, 0, 255));

}

}

void score1 () {

resetBall (0);

}

void score2 () {

resetBall (1);

}

void resetBall (int player) {

késleltetés (1000);

ballXabs = 12

; ballYabs = 4;

ballvelX = játékos? 1: -1;

golyós Y = 1;

clearScreen ();

késleltetés (1000);

displayBall ();

pixels.show ();

késleltetés (1000);

displayPaddle1 ();

displayPaddle2 (); pixels.show (); késleltetés (2000); }

7. lépés: Befejezés

Végső
Végső

Miután feltöltötte a kódot, fúrjon egy lyukat a hátlapon, amely elég nagy a hordócsatlakozó hálózati adapteréhez. csatlakoztassa az arduino -hoz, és végül szerelje vissza a hátlapot.

Az alkatrészlistába felvettem az akril LED -diffúzort is, amelyet most elhelyezhet a LED -ek felett, és ragaszthatja le

Miután ezt megtette, készen áll a játékra, és élvezni fogja a család és a barátok elleni versenyek óráit.

Végül szeretnék gratulálni a projekt befejezéséhez.

Ha bármilyen problémája van, lépjen kapcsolatba velem itt, és szívesen segítek a probléma megoldásában.

Ajánlott: