Sadržaj:
Video: 3D4x igra: 3D 4x4x4 Tic-Tac-Toe: 5 koraka (sa slikama)
2025 Autor: John Day | [email protected]. Zadnja promjena: 2025-01-13 06:57
Jeste li umorni od igranja istih, starih, dosadnih, dvodimenzionalnih taktičaka? Pa imamo rješenje za vas! Tic-tac-toe u 3 dimenzije !!! Za 2 igrača, u ovoj kocki 4x4x4, nabavite 4 LED diode zaredom (u bilo kojem smjeru) i pobjeđujete! Ti to napravi. Vi svirajte.
Korak 1: Skupite komponente i alate
Najvažnija komponenta ovog 3D Tic-Tac-Toe-a je LED. Odabrali smo PL9823 koji već ima integrirani kontroler unutra. Ima četiri pina (Data-in, Voltage-Supply, Ground, Data-Out) i omogućuje vam jednostavno adresiranje i kontrolu boje LED-a. Mrežna struktura može se graditi na mnogo različitih načina, ali za nas je to bila najjeftinija, najčvršća i najestetičnija opcija.
Popis komponenti:
- Arduino (koristili smo Uno)
- PL9823 LED diode (najmanje 64)
- Drveni štapići za ražnjeve (dugi 24 cm)
- Ožičenje (koristili smo unutrašnjost starog Ethernet kabela)
- Gumbi (trenutno stanje)
- 7 otpornika (220Ohm)
- Oglasne ploče (1 za gumbe i reprodukciju, 1 za jednostavno povezivanje ploče s Arduinom)
- Pjenasto polistirenska ploča (~ 2x30x30cm za izradu ploča)
- Blok od polistirenske pjene (~ 7x25x25cm kao osnova za cijelu rešetku)
Popis alata:
- Lemilica
- Lim za lemljenje
- Ljepilo
- Ravna sa ravnalom
- Kliješta
- Skidači žica
- Rezači žice
- Škare
- Marker
- Olovka
- Pinceta
Korak 2: Napravite rešetku
Pojedinačno izrađujemo 4 panela sa 4x4 LED diode.
- 00: Nabavite stiropor za izradu ploče. Nacrtajte uzorak. U ovom slučaju koristili smo razmak od 6 cm između LED dioda s 2 cm na krajevima.
- 01: Umetnite LED pinove u stiropor. Važno! Provjerite jeste li umetnuli sve LED diode istog smjera. U našem slučaju, izlazni pin smo odabrali lijevo.
- 02: Sada postavite drvene štapiće za ražnju s obje strane LED -a u nizove, pazeći da sve točke budu u istom smjeru. Zalijepite štapić na stranice LED žarulja i ostavite da se osuši.
- 03: Učinite isto za stupove drvenih štapića s ražnja s obje strane LED dioda, pazeći da sve točke budu u istom smjeru. Zalijepite i ostavite da se osuši.
- 04: Lagano uklonite otpuštanjem LED dioda uokolo. Podignite ploču i preokrenite je. Zalijepite stražnju stranu kako bi bila sigurnija.
- 05: Nakon što se sve osuši, savijte igle kako biste olakšali lemljenje i spriječili prelazak električnih vodova. Koristimo pincetu i savijamo iglu blizu baze.
- 06: Sada pripremite žice. Koristili smo stari ethernet kabel koji ima 4 žice uparenih para. Uklonite izolaciju pazeći da ne presiječete male žice. Zatim raspletite, odaberite svoje boje koje odgovaraju različitim linijama i izrežite odgovarajuću duljinu između LED dioda. Zatim skinite malo izolacije s krajeva. Odabrali smo tlo = zelena, Vdc = plava, podaci ulaz/izlaz = bijela.
- 07: Lemač! Postoji mnogo veza (64x4), stoga pazite da pravilno lemite.
- 08: Uklonite ploču i postavite je na podlogu od pjene!
Korak 3: Napravite joystick
Koristili smo ploču za izradu navigacijske palice za kretanje po mreži i odabir. Postavili smo kratkospojnike, otpornike i gumbe kako bismo formirali krug (vidi dijagram) koji definira kontroler smjera (6 gumba, 1 za svaki smjer) i gumb za odabir (ulazi u potez igrača). 5V i uzemljenje spojeni su na odgovarajuće priključke na Arduinu. Za analogne i digitalne ulazne pinove odabrali smo Arduino portove A5 i 2.
Gumb za odabir ima osnovnu shemu s otpornikom protiv skupljanja. Naredba za smjer temelji se na ljestvici otpornika koja radi kao krug razdjelnika napona: napon na analognom ulazu ovisi o pritisnutom gumbu i Arduino ga tumači kao jedan smjer naredbe.
Korak 4: Napišite kôd
Učitali smo naš kôd kako biste ga mogli koristiti:) Prvo izvršite električne priključke na Arduino. Postavili smo mini ploču pored Arduina kako bismo malo olakšali. Spojili smo Arduino "GND" i "5V" na 2 linije hljeba, gdje smo zatim priključili odgovarajuće uzemljenje i Vdc sa svake ploče. Za Data-In i Data-Out odabrali smo 4 različita Arduino pina, 13, 10, 7 i 4 za svaku ploču. PL9823 LED diode mogu se pojedinačno adresirati prema redoslijedu LED u nizu. Na primjer, ako želite uključiti 1. LED diodu u određenu boju, adresa LED [0]. Za 16. LED, adresa LED [15]. Sada ste spremni za kodiranje i igru s lijepim svjetlima! Dolje je općenito objašnjenje koda 3D igre s krpeljama.
Kôd igre 3D4x
Koristimo knjižnicu fastled.h koja nam omogućuje upravljanje mikrokontroliranim LED diodama.
Kocka se memorira praktički u 3D cjelobrojnom nizu “TTTMap”, gdje svaki element može biti u 1 od 5 stanja prema odgovarajućoj svjetlosti u vlasništvu: 0 = nema igrača, 1 = igrač 1, 2 = igrač 2, 3 = igrač 1 u dobitnoj kombinaciji, a 3 = igrač 2 u dobitnoj kombinaciji. Kako bi se elementi virtualne kocke u TTTMap preslikali na stvarne LED diode, koriste se cjelobrojni nizovi LEDMap0, LEDMap1, LEDMap2, LEDMap3.
Funkcija "postavljanja" inicijalizira Arduino portove spojene na ploču, inicijalizira sve LED diode u "crno" i inicijalizira elemente niza TTTMap na 0.
Funkcija “loop” izvodi funkcije “ReadButtonInput ()”, “SendLED ()”, a u slučaju pobjede jednog igrača funkciju “VictoryAnimation ()”. Prva funkcija čita analogni ulaz naredbe za smjer i digitalni ulaz tipke za odabir. Logičke varijable “ButtonPushed” i “SelectPushed” koriste se kako bi se izbjeglo ponavljanje kretanja brzinom petlje dok se tipka drži. Funkcija “SendLED ()” osvježava statuse LED dioda slanjem serijskog upravljačkog signala prema podacima u TTTMap -u. Temeljna funkcija je “CheckVictory ()” koju poziva “ReadButtonInput ()” svaki put kada se pritisne gumb za odabir. Ova funkcija provjerava čini li odabrana točka u prostoru dobitnu kombinaciju s okolnim pinovima. U slučaju dobitne kombinacije, bodovi u TTTMap -u potpisuju se brojevima 3 ili 4, prema igraču koji pobijedi, a pokreće se uzbudljiva “VictoryAnimation ()”!
Za ponovnu reprodukciju, samo pritisnite gumb za resetiranje na Arduinu:)
Korak 5: Igrajte se sa svojim prijateljima
Ovdje nije potrebno nikakvo objašnjenje … UŽIVAJTE!