Sisällysluettelo:

3D4x-peli: 3D 4x4x4 Tic-Tac-Toe: 5 vaihetta (kuvilla)
3D4x-peli: 3D 4x4x4 Tic-Tac-Toe: 5 vaihetta (kuvilla)

Video: 3D4x-peli: 3D 4x4x4 Tic-Tac-Toe: 5 vaihetta (kuvilla)

Video: 3D4x-peli: 3D 4x4x4 Tic-Tac-Toe: 5 vaihetta (kuvilla)
Video: Трактористы (комедия, реж. Иван Пырьев, 1939 г.) 2024, Kesäkuu
Anonim
Image
Image
3D4x Peli: 3D 4x4x4 Tic-Tac-Toe
3D4x Peli: 3D 4x4x4 Tic-Tac-Toe
3D4x Peli: 3D 4x4x4 Tic-Tac-Toe
3D4x Peli: 3D 4x4x4 Tic-Tac-Toe
3D4x Peli: 3D 4x4x4 Tic-Tac-Toe
3D4x Peli: 3D 4x4x4 Tic-Tac-Toe

Oletko kyllästynyt pelaamaan samaa, vanhaa, tylsää, 2-ulotteista tic-tac-toe-peliä ?? No meillä on ratkaisu sinulle! Tic-tac-toe kolmiulotteisena !!! Saat 2 pelaajaa tässä 4x4x4 -kuutiossa 4 LEDiä peräkkäin (mihin tahansa suuntaan) ja voitat! Sinä teet sen. Pelaat sitä.

Vaihe 1: Kerää komponentit ja työkalut

Kerää komponentit ja työkalut
Kerää komponentit ja työkalut

Tämän 3D Tic-Tac-Toen tärkein osa on LED. Valitsimme PL9823: n, jossa on jo integroitu ohjain. Siinä on neljä nastaa (Data-in, Voltage-Supply, Ground, Data-Out), ja sen avulla voit helposti käsitellä ja hallita LED-valon väriä. Ruudukkorakenne voidaan rakentaa monella eri tavalla, mutta meille tämä oli halvin, kestävin ja esteettisin vaihtoehto.

Komponenttiluettelo:

  • Arduino (käytimme Unoa)
  • PL9823 LEDit (vähintään 64)
  • Puiset vartaatangot (pituus 24 cm)
  • Johdotus (käytimme vanhan ethernet -kaapelin sisäosia)
  • Painikkeet (hetkellinen tila)
  • 7 vastusta (220 ohmia)
  • Leipälaudat (1 painikkeille ja pelaamiselle, 1 helpolle paneeliliitännälle Arduinolle)
  • Vaahto polystyreenilevy (~ 2x30x30cm paneelien valmistukseen)
  • Vaahtopolystyreenilohko (~ 7x25x25cm koko ruudukon pohjana)

Työkaluluettelo:

  • Juotin
  • Juotin
  • Liima
  • Suora viivaimella
  • Pihdit
  • Langanpoistimet
  • Lankaleikkurit
  • Sakset
  • Merkki
  • Kynä
  • Pinsetit

Vaihe 2: Tee ruudukko

Image
Image
Tee ruudukko
Tee ruudukko
Tee ruudukko
Tee ruudukko

Valmistamme yksittäin 4 4x4 LED -paneelia.

  • 00: Hanki styrofoam paneelin asettelun tekemiseen. Piirrä kuvio. Tässä tapauksessa käytimme 6 cm: n etäisyyttä LEDien välillä, joiden päissä oli 2 cm.
  • 01: Aseta LED -nastat styrox -vaahtoon. Tärkeä! Varmista, että asetat kaikki LEDit samaan suuntaan. Meidän tapauksessamme valitsimme lähtönastan vasemmalle.
  • 02: Aseta puiset vartaatangot LED -valojen molemmille puolille riveille varmistaen, että kaikki kohdat ovat samaan suuntaan. Liimaa sauva LED -lamppujen sivuille ja anna kuivua.
  • 03: Tee sama LED -valojen molemmilla puolilla olevilla puupylvässauvapylväillä varmistaen, että kaikki kohdat osoittavat samaan suuntaan. Liimaa ja anna kuivua.
  • 04: Irrota varovasti löysäämällä ympärillä olevia LED -valoja. Nosta paneeli ulos ja käännä se ympäri. Liimaa takapuoli niin, että se on turvallisempi.
  • 05: Kun kaikki on kuivunut, taivuta tapit juottamisen helpottamiseksi ja vältät sähkölinjojen risteyksen. Käytämme pinsettiä ja taivutamme tappia läheltä pohjaa.
  • 06: Valmistele nyt johdot. Käytimme vanhaa ethernet-kaapelia, jonka sisällä on 4 kierrettyä parikaapelia. Irrota eristys varoen leikkaamasta pieniä johtimia. Kierrä sitten auki, valitse värit vastaamaan eri viivoja ja leikkaa oikea pituus LED -valojen väliin. Irrota sitten hieman eristettä päistä. Valitsimme maa = vihreä, Vdc = sininen, data sisään/ulos = valkoinen.
  • 07: Juotos! Liitäntöjä on paljon (64x4), joten muista juottaa oikein.
  • 08: Irrota paneeli ja aseta vaahtomuovialustalle!

Vaihe 3: Tee ohjaussauva

Tee ohjaussauva
Tee ohjaussauva
Tee ohjaussauva
Tee ohjaussauva

Teimme ohjainsauvan ruudukossa navigoimiseksi ja valinnan tekemiseksi leipälaudalla. Asetimme puserot, vastukset ja painikkeet muodostamaan piirin (katso kaavio), joka määrittelee suuntaohjaimen (6 painiketta, 1 kullekin suunnalle) ja valintapainikkeen (syöttää pelaajan liikkeen). 5V ja maa on kytketty Arduinon vastaaviin portteihin. Analogisille ja digitaalisille tulonappeille valitsimme Arduino -portit A5 ja 2.

Valintapainikkeella on perusmalli, jossa on nipistysvastus. Suuntakomento perustuu vastuksen tikkaille, jotka toimivat jännitteenjakajapiirinä: analogitulon jännite riippuu painetusta painikkeesta ja Arduino tulkitsee sen yhdeksi komentosuuntaksi.

Vaihe 4: Kirjoita koodi

Kirjoita koodi
Kirjoita koodi

Olemme ladanneet koodisi käytettäväksi:) Tee ensin sähköliitännät Arduinolle. Laitoimme pienen leipälaudan Arduinon viereen helpottamaan sitä. Yhdistimme Arduinon "GND" ja "5V" 2 riviä leipälaatikkoon, jossa sitten kytkettiin vastaava maadoitus ja Vdc kustakin paneelista. Data-In- ja Data-Out-toimintoihin valitsimme 4 eri Arduino-nastaa, 13, 10, 7 ja 4 kullekin paneelille. PL9823 -LED -valot voidaan osoittaa yksilöllisesti LED -järjestyksessä sarjassa. Jos esimerkiksi haluat kytkeä ensimmäisen LED -valon tiettyyn väriin, osoita LED [0]. Jos kyseessä on 16. LED, osoitteen merkkivalo [15]. Nyt olet valmis koodaamaan ja leikkimään kauniilla valolla! Alla on yleinen selitys 3D-tic-tac-toe-pelin koodista.

3D4x -pelin koodi

Käytämme fastled.h-kirjastoa, jonka avulla voimme hallita mikro-ohjattavia LED-valoja.

Kuutio tallennetaan käytännössä 3D -kokonaislukutaulukkoon”TTTMap”, jossa jokainen elementti voi olla yhdessä viidestä tilasta vastaavan valon mukaan: 0 = ei pelaajaa, 1 = pelaaja 1, 2 = pelaaja 2, 3 = pelaaja 1 voittoyhdistelmässä ja 3 = pelaaja 2 voittoyhdistelmässä. TTTMapin virtuaalisen kuution elementtien yhdistämiseksi todellisiin LED -valoihin käytetään kokonaislukutaulukkoja LEDMap0, LEDMap1, LEDMap2, LEDMap3.

”Setup” -toiminto alustaa paneeliin liitetyt Arduino -portit, alustaa kaikki LEDit”mustaksi” ja alustaa TTTMap -matriisin elementit arvoon 0.

"Silmukka" -toiminto suorittaa toiminnot "ReadButtonInput ()", "SendLED ()" ja, jos yksi pelaaja voittaa, toiminto "VictoryAnimation ()". Ensimmäinen toiminto lukee suuntakomennon analogitulon ja valintapainikkeen digitaalitulon. Loogisia muuttujia "ButtonPushed" ja "SelectPushed" käytetään välttämään liikkeen toistumista silmukan nopeudella, kun painiketta pidetään painettuna. Toiminto “SendLED ()” päivittää LEDien tilat lähettämällä sarjaohjaussignaalin TTTMap -kartan tietojen mukaisesti. Perustoiminto on "CheckVictory ()", jonka "ReadButtonInput ()" kutsuu joka kerta, kun valintapainiketta painetaan. Tämä toiminto tarkistaa, muodostaako valitun tilan piste voittavan yhdistelmän ympäröiviin nastoihin. Voittavan yhdistelmän tapauksessa TTTMapin pisteet allekirjoitetaan numerolla 3 tai 4 voittajan mukaan ja jännittävä”VictoryAnimation ()” suoritetaan!

Jos haluat pelata uudelleen, paina Arduinon nollauspainiketta:)

Vaihe 5: Pelaa ystäviesi kanssa

Pelaa ystäviesi kanssa!
Pelaa ystäviesi kanssa!
Pelaa ystäviesi kanssa!
Pelaa ystäviesi kanssa!
Pelaa ystäviesi kanssa!
Pelaa ystäviesi kanssa!

Tässä ei tarvita selityksiä… NAUTI!

Suositeltava: