Përmbajtje:

3D4x Lojë: 3D 4x4x4 Tic-Tac-Toe: 5 hapa (me fotografi)
3D4x Lojë: 3D 4x4x4 Tic-Tac-Toe: 5 hapa (me fotografi)

Video: 3D4x Lojë: 3D 4x4x4 Tic-Tac-Toe: 5 hapa (me fotografi)

Video: 3D4x Lojë: 3D 4x4x4 Tic-Tac-Toe: 5 hapa (me fotografi)
Video: 4Play — 3D tic tac toe (Kickstarter promo video) 2024, Korrik
Anonim
Image
Image
3D4x Lojë: 3D 4x4x4 Tic-Tac-Toe
3D4x Lojë: 3D 4x4x4 Tic-Tac-Toe
3D4x Lojë: 3D 4x4x4 Tic-Tac-Toe
3D4x Lojë: 3D 4x4x4 Tic-Tac-Toe
3D4x Lojë: 3D 4x4x4 Tic-Tac-Toe
3D4x Lojë: 3D 4x4x4 Tic-Tac-Toe

Jeni lodhur duke luajtur të njëjtën, të vjetër, të mërzitshme, 2-dimensionale tic-tac-toe ?? Epo ne kemi zgjidhjen për ju! Tic-tac-toe në 3 dimensione !!! Për 2 lojtarë, në këtë kub 4x4x4, merrni 4 LED me radhë (në çdo drejtim) dhe fitoni! Ti ja del. Ju luani atë.

Hapi 1: Mblidhni përbërës dhe mjete

Mblidhni përbërës dhe mjete
Mblidhni përbërës dhe mjete

Komponenti më thelbësor i këtij 3D Tic-Tac-Toe është LED. Ne zgjodhëm PL9823 i cili tashmë ka një kontrollues të integruar brenda. Ka katër kunja (Data-in, Voltage-Supply, Ground, Data-Out), dhe ju lejon të adresoni dhe kontrolloni me lehtësi ngjyrën e LED. Struktura e rrjetit mund të ndërtohet në mënyra të ndryshme, por për ne ky ishte opsioni më i lirë, më i fortë dhe më estetik.

Lista e komponentëve:

  • Arduino (ne përdorëm Uno)
  • PL9823 LED (të paktën 64)
  • Shkopinj druri për hell (24 cm të gjatë)
  • Instalime (kemi përdorur pjesën e brendshme të një kabllo të vjetër ethernet)
  • Butonat (gjendja momentale)
  • 7 Rezistorë (220Ohm)
  • Tabelat e bukës (1 për butonat dhe luajtjen, 1 për lidhjet e lehta të panelit me Arduino)
  • Pllakë polistireni me shkumë (~ 2x30x30cm për të bërë panelet)
  • Bllok polistireni me shkumë (~ 7x25x25cm si bazë për të gjithë rrjetin)

Lista e mjeteve:

  • Makine per ngjitjen e metalit
  • Kallaji i saldimit
  • Zam
  • Drejt me sundimtarin
  • Pincë
  • Zhveshëset e telave
  • Preres telash
  • Gërshërë
  • Shënues
  • Stilolaps
  • Piskatore

Hapi 2: Bëni Rrjetin

Image
Image
Bëni Rrjetin
Bëni Rrjetin
Bëni Rrjetin
Bëni Rrjetin

Ne bëjmë 4 panele me LED 4x4 individualisht.

  • 00: Merrni polistiren për të bërë paraqitjen e panelit. Vizatoni modelin. Në këtë rast, ne përdorëm 6 cm distancë midis LED -ve me 2 cm në skajet.
  • 01: Futni kunjat LED në polistrom. E rëndësishme! Sigurohuni që të futni të gjitha LED -të me të njëjtin orientim. Në rastin tonë, ne zgjodhëm pinin e daljes që të jetë në të majtë.
  • 02: Tani vendosni shkopinjtë e shkopit prej druri në të dy anët e LED -ve në rreshta, duke u siguruar që të gjitha pikat të kenë të njëjtin drejtim. Ngjiteni shkopin në anët e llambave LED dhe lëreni të thahet.
  • 03: Bëni të njëjtën gjë për kolonat e shkopinjve të shkopit prej druri në të dy anët e LED -ve, duke u siguruar që të gjitha pikat të kenë të njëjtin drejtim. Ngjiteni dhe lëreni të thahet.
  • 04: Hiqni butësisht duke liruar LED -të përreth. Ngrini panelin jashtë dhe përmbyseni. Ngjiteni pjesën e pasme në mënyrë që të jetë më e sigurt.
  • 05: Pasi gjithçka është tharë, përkulni kunjat për ta bërë më të lehtë bashkimin dhe ndihmoni për të shmangur kalimin e çdo linje elektrike. Ne përdorim një piskatore dhe e përkulim kunjin nga afër bazës.
  • 06: Tani përgatitni telat. Ne përdorëm një kabllo të vjetër ethernet e cila ka tela me 4 palë të përdredhur brenda. Hiqeni izolimin duke qenë të kujdesshëm që të mos prisni telat e vegjël. Pastaj mos u ktheni, zgjidhni ngjyrat tuaja që korrespondojnë me linjat e ndryshme dhe prerë në gjatësinë e duhur midis LED -ve. Pastaj hiqni pak nga izolimi nga skajet. Ne zgjodhëm terren = jeshile, Vdc = blu, të dhëna brenda/jashtë = e bardhë.
  • 07: Ushtar! Ka shumë lidhje (64x4), prandaj kini kujdes që të bashkoni saktë.
  • 08: Hiqeni panelin dhe vendoseni në bazën e shkumës!

Hapi 3: Bëni Joystick

Bëni Joystick
Bëni Joystick
Bëni Joystick
Bëni Joystick

Ne përdorëm një dërrasë buke për të bërë levën për të lundruar në rrjet dhe për të bërë përzgjedhjen. Ne vendosëm kërcyesit, rezistorët dhe butonat në mënyrë që të formojmë qarkun (shiko diagramin) që përcakton kontrolluesin e drejtimit (6 butona, 1 për secilin drejtim) dhe butonin e përzgjedhjes (futet në lëvizjen e lojtarit). 5V dhe toka janë të lidhura me portet relative në Arduino. Për kunjat e hyrjes analoge dhe dixhitale ne zgjodhëm përkatësisht portet Arduino A5 dhe 2.

Butoni i përzgjedhjes ka një skemë bazë me rezistencën kundër grumbullimit. Komanda e drejtimit bazohet në një shkallë të rezistencës që punon si qark i ndarjes së tensionit: tensioni në hyrjen analoge varet nga butoni i shtypur dhe interpretohet nga Arduino si një drejtim komandimi.

Hapi 4: Shkruani Kodin

Shkruani Kodin
Shkruani Kodin

Ne kemi ngarkuar kodin tonë për ta përdorur ju:) Së pari, bëni lidhjet elektrike me Arduino. Ne vendosëm një mini dërrasë buke pranë Arduino për ta bërë pak më të lehtë. Ne lidhëm Arduino "GND" dhe "5V" në 2 rreshta të pjatës ku më pas lidhëm tokën përkatëse dhe Vdc nga secili panel. Për Data-In dhe Data-Out ne zgjodhëm 4 kunja të ndryshme Arduino, 13, 10, 7 dhe 4 për secilën nga panelet. LEDs PL9823 mund të adresohen individualisht me rendin numerik të LED në seri. Për shembull, nëse doni të ndizni LED -in e parë në një ngjyrë të caktuar, adresoni LED [0]. Për LED 16 -të, adresoni LED [15]. Tani jeni gati për të koduar dhe luajtur me dritat e bukura! Më poshtë është një shpjegim i përgjithshëm i kodit të lojës 3D tic-tac-toe.

Kodi i lojës 3D4x

Ne përdorim bibliotekën fastled.h që na lejon të menaxhojmë LED-të me mikrokontroll.

Kubi memorizohet praktikisht në grupin e numrave të plotë 3D "TTTMap", ku secili element mund të jetë në 1 nga 5 gjendjet sipas dritës përkatëse është në pronësi të: 0 = asnjë lojtar, 1 = lojtar 1, 2 = lojtar 2, 3 = lojtari 1 në një kombinim fitues, dhe 3 = lojtari 2 në një kombinim fitues. Për të hartuar elementët e kubit virtual në TTTMap në LED -të e vërteta, përdoren vargjet e plota LEDMap0, LEDMap1, LEDMap2, LEDMap3.

Funksioni "konfigurim" inicializon portet Arduino të lidhura me panelin, inicializon të gjitha LED -të në "të zeza" dhe inicializon elementët e grupit TTTMap në 0.

Funksioni "lak" ekzekuton funksionet "ReadButtonInput ()", "SendLED ()", dhe, në rast se një lojtar fiton, funksionin "VictoryAnimation ()". Funksioni i parë lexon hyrjen analoge të komandës së drejtimit dhe hyrjen dixhitale të butonit të përzgjedhjes. Variablat boolean "ButtonPushed" dhe "SelectPushed" përdoren për të shmangur që lëvizja të përsëritet me shpejtësinë e lakut kur mbahet butoni. Funksioni "SendLED ()" rifreskon statuset e LED -ve duke dërguar sinjalin e kontrollit serik sipas të dhënave në TTTMap. Një funksion themelor është "CheckVictory ()" që quhet nga "ReadButtonInput ()" sa herë që shtypet butoni i përzgjedhjes. Ky funksion kontrollon nëse pika e zgjedhur në hapësirë bën një kombinim fitues me kunjat përreth. Në rast të kombinimit fitues, pikët në TTTMap nënshkruhen me numrin 3 ose 4, sipas lojtarit që fiton dhe funksionon emocionuese "VictoryAnimation ()"!

Për të luajtur përsëri, thjesht shtypni butonin e rivendosjes në Arduino:)

Hapi 5: Luaj me miqtë tuaj

Luaj me miqtë tuaj!
Luaj me miqtë tuaj!
Luaj me miqtë tuaj!
Luaj me miqtë tuaj!
Luaj me miqtë tuaj!
Luaj me miqtë tuaj!

Këtu nuk nevojitet asnjë shpjegim… KJRKONI!

Recommended: