Sadržaj:
Video: 3D4x igra: 3D 4x4x4 Tic-Tac-Toe: 5 koraka (sa slikama)
2025 Autor: John Day | [email protected]. Zadnja izmjena: 2025-01-13 06:57
Jeste li umorni od igranja istih, starih, dosadnih, dvodimenzionalnih kuc-noža ?? 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! Uspjeli ste. 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ćava vam da jednostavno adresirate i kontrolišete boju LED diode. Mrežna struktura može se graditi na mnogo različitih načina, ali za nas je ovo bila najjeftinija, najčvršća i najestetičnija opcija.
Lista komponenti:
- Arduino (koristili smo Uno)
- PL9823 LED diode (najmanje 64)
- Drveni štapići za ražnjiće (dugi 24 cm)
- Ožičenje (koristili smo unutrašnjost starog Ethernet kabela)
- Dugmad (trenutno stanje)
- 7 otpornika (220Ohm)
- Oglasne ploče (1 za dugmad i reprodukciju, 1 za jednostavno povezivanje panela na Arduino)
- Pjenasto polistirenska ploča (~ 2x30x30cm za izradu ploča)
- Blok od polistirenske pjene (~ 7x25x25cm kao osnova za cijelu rešetku)
Lista alata:
- Lemilica
- Lim za lemljenje
- Ljepilo
- Ravna sa ravnalom
- Kliješta
- Strojevi za skidanje žice
- Rezači žice
- Makaze
- Marker
- Olovka
- Pinceta
Korak 2: Napravite mrežu
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. Bitan! Pobrinite se da umetnete sve LED diode iste orijentacije. U našem slučaju, odabrali smo da izlazni pin bude lijevo.
- 02: Sada postavite drvene štapiće za ražnjiće 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 sa stupovima drvenih štapića za ražnjiće s obje strane LED dioda, pazeći da sve točke budu okrenute u istom smjeru. Zalijepite i ostavite da se osuši.
- 04: Pažljivo uklonite otpuštanjem LED dioda okolo. 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 žice sa 4 upletena para. Uklonite izolaciju pazeći da ne presiječete male žice. Zatim raspletite, odaberite boje koje odgovaraju različitim linijama i izrežite ih na odgovarajuću dužinu između LED dioda. Zatim skinite malo izolacije s krajeva. Odabrali smo tlo = zeleno, Vdc = plavo, podaci ulaz/izlaz = bijelo.
- 07: Lemač! Postoji mnogo veza (64x4), stoga pazite da pravilno lemite.
- 08: Skinite ploču i postavite je na podlogu od pjene!
Korak 3: Napravite joystick
Koristili smo ploču za navigaciju za kretanje po mreži i odabir. Postavili smo kratkospojnike, otpornike i gumbe kako bismo formirali krug (vidi dijagram) koji definira kontroler smjera (6 tipki, 1 za svaki smjer) i gumb za odabir (ulazi u potez igrača). 5V i uzemljenje povezani su s odgovarajućim priključcima na Arduinu. Za analogne i digitalne ulazne pinove odabrali smo Arduino portove A5 i 2.
Dugme za odabir ima osnovnu shemu sa 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:) Najprije napravite električne veze s Arduinom. 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 svaki od panela. PL9823 LED diode se mogu 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 sa lijepim svjetlima! Ispod je općenito objašnjenje koda 3D igre s taktićima.
Kôd igre 3D4x
Koristimo biblioteku fastled.h koja nam omogućava upravljanje mikrokontroliranim LED diodama.
Kocka se memorira virtualno 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, i 3 = igrač 2 u dobitnoj kombinaciji. Da bi se elementi virtualne kocke u TTTMap preslikali na stvarne LED diode, koriste se cjelobrojni nizovi LEDMap0, LEDMap1, LEDMap2, LEDMap3.
Funkcija “setup” inicijalizira Arduino portove povezane s panelom, inicijalizira sve LED diode u “crnu” i inicijalizira elemente niza TTTMap na 0.
Funkcija „petlje“pokreće funkcije „ReadButtonInput ()“, „SendLED ()“, i, u slučaju da jedan igrač pobijedi, 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 dugme drži. Funkcija “SendLED ()” osvježava statuse LED dioda slanjem serijskog kontrolnog signala prema podacima u TTTMap -u. Osnovna funkcija je “CheckVictory ()” koju poziva “ReadButtonInput ()” svaki put kada se pritisne tipka 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 tipku za resetiranje na Arduinu:)
Korak 5: Igrajte se sa svojim prijateljima
Ovdje nije potrebno objašnjenje … UŽIVAJTE!