Inhoudsopgave:
- Stap 1: Verzamel componenten en gereedschappen
- Stap 2: Maak het raster
- Stap 3: Maak de joystick
- Stap 4: Schrijf de code
- Stap 5: Speel met je vrienden
Video: 3D4x Game: 3D 4x4x4 Tic-Tac-Toe - Ajarnpa
2024 Auteur: John Day | [email protected]. Laatst gewijzigd: 2024-01-30 11:17
Ben je het zat om dezelfde, oude, saaie, 2-dimensionale boter-kaas-en-eieren te spelen?? Wel, wij hebben de oplossing voor u! Boter-kaas-en-eieren in 3 dimensies!!! Voor 2 spelers, in deze 4x4x4 kubus, krijg je 4 LED's op een rij (in elke richting) en je wint! Jij maakt het. Jij speelt het.
Stap 1: Verzamel componenten en gereedschappen
Het meest essentiële onderdeel van deze 3D Tic-Tac-Toe is de LED. We kozen voor de PL9823 die al een geïntegreerde controller heeft. Het heeft vier pinnen (Data-in, Voltage-Supply, Ground, Data-Out) en stelt u in staat om de kleur van de LED gemakkelijk te adresseren en te regelen. De rasterstructuur kan op veel verschillende manieren worden gebouwd, maar voor ons was dit de goedkoopste, stevigste en meest esthetische optie.
Componentenlijst:
- Arduino (we gebruikten Uno)
- PL9823 LED's (minstens 64)
- Houten spiesjes (24cm lang)
- Bedrading (we gebruikten de binnenkant van een oude ethernetkabel)
- Knoppen (momentele toestand)
- 7 Weerstanden (220Ohm)
- Breadboards (1 voor knoppen en spelen, 1 voor eenvoudige paneelverbindingen met Arduino)
- Polystyreenschuimplaat (~2x30x30cm om de panelen te maken)
- Schuimpolystyreenblok (~7x25x25cm als basis voor het hele rooster)
Gereedschapslijst:
- Soldeerbout
- soldeer tin
- Lijm
- Richtliniaal met liniaal
- Tang
- Draadstrippers
- Draadsnijders
- Schaar
- Markeerstift
- Pen
- Pincet
Stap 2: Maak het raster
We maken individueel 4 panelen van 4x4 LED's.
- 00: Haal piepschuim om de lay-out van het paneel te maken. Teken het patroon. In dit geval gebruikten we een afstand van 6 cm tussen de LED's met 2 cm aan de uiteinden.
- 01: Steek de LED-pinnen in het piepschuim. Belangrijk! Zorg ervoor dat u alle LED's in dezelfde richting plaatst. In ons geval hebben we ervoor gekozen om de uitvoerpin naar links te plaatsen.
- 02: Plaats nu de houten staafspiesjes aan beide zijden van de LED's in rijen, zorg ervoor dat de punten allemaal in dezelfde richting wijzen. Lijm het stokje aan de zijkanten van de LED-lampen en laat drogen.
- 03: Doe hetzelfde voor de kolommen met houten spiesjes aan beide zijden van de LED's, zorg ervoor dat de punten allemaal in dezelfde richting wijzen. Lijm en laat drogen.
- 04: Verwijder voorzichtig door de LED's rondom los te maken. Til het paneel eruit en draai het om. Lijm de achterkant zodat het veiliger is.
- 05: Nadat alles droog is, buigt u de pinnen om het solderen te vergemakkelijken en om te voorkomen dat elektrische leidingen elkaar kruisen. We gebruiken een pincet en buigen de pin dicht bij de basis.
- 06: Bereid nu de draden voor. We gebruikten een oude ethernetkabel met aan de binnenkant 4 getwiste draden. Verwijder de isolatie en zorg ervoor dat u de kleine draden niet doorknipt. Draai vervolgens los, kies uw kleuren om overeen te komen met de verschillende lijnen en knip op de juiste lengte tussen de LED's. Strip vervolgens een klein beetje van de isolatie van de uiteinden. We kozen voor grond=groen, Vdc=blauw, data in/uit=wit.
- 07: Solderen! Er zijn veel aansluitingen (64x4), dus wees voorzichtig om correct te solderen.
- 08: Verwijder het paneel en plaats het op de schuimbasis!
Stap 3: Maak de joystick
We hebben een breadboard gebruikt om de joystick te maken om door het raster te navigeren en de selectie te maken. We hebben jumpers, weerstanden en knoppen geplaatst om het circuit te vormen (zie diagram) dat de richtingcontroller definieert (6 knoppen, 1 voor elke richting) en de selectieknop (voert de zet van de speler in). De 5V en de aarde zijn verbonden met de relatieve poorten op Arduino. Voor de analoge en digitale ingangspinnen hebben we respectievelijk de Arduino-poorten A5 en 2 gekozen.
De selectieknop heeft een basisschema met de anti-bundelweerstand. Het richtingscommando is gebaseerd op een weerstandsladder die werkt als spanningsdelercircuit: de spanning naar de analoge ingang is afhankelijk van de ingedrukte knop en wordt door Arduino geïnterpreteerd als één commandorichting.
Stap 4: Schrijf de code
We hebben onze code voor u geüpload:) Maak eerst de elektrische verbindingen met de Arduino. We hebben een mini breadboard naast de Arduino gezet om het wat makkelijker te maken. We hebben de Arduino "GND" en "5V" aangesloten op 2 lijnen van de breadboard, waar we vervolgens de respectieve aarde en Vdc van elk paneel hebben aangesloten. Voor de Data-In en Data-Out hebben we 4 verschillende Arduino-pinnen gekozen, 13, 10, 7 en 4 voor elk van de panelen. De PL9823 LED's kunnen individueel worden geadresseerd door de numerieke volgorde van de LED in serie. Als u bijvoorbeeld de 1e LED een bepaalde kleur wilt geven, adresseer LED[0]. Voor de 16e LED, adres LED[15]. Nu ben je klaar om te coderen en te spelen met de mooie lichten! Hieronder volgt een algemene uitleg van de code van het 3D boter-kaas-en-eieren spel.
De code van het 3D4x-spel
We maken gebruik van de fastled.h-bibliotheek waarmee we de microgestuurde LED's kunnen beheren.
De kubus wordt virtueel opgeslagen in de 3D integer array "TTTMap", waarbij elk element in 1 van de 5 toestanden kan zijn volgens het corresponderende licht, eigendom is van: 0= geen speler, 1= speler 1, 2= speler 2, 3= speler 1 in een winnende combinatie, en 3= speler 2 in een winnende combinatie. Om de elementen van de virtuele kubus in TTTMap in kaart te brengen met de echte LED's, worden de integer-arrays LEDMap0, LEDMap1, LEDMap2, LEDMap3 gebruikt.
De "setup" -functie initialiseert de Arduino-poorten die op het paneel zijn aangesloten, initialiseert alle LED's naar "zwart" en initialiseert de elementen van de TTTMap-array naar 0.
De "loop"-functie voert de functies "ReadButtonInput()", "SendLED()" uit en, in het geval dat een speler wint, de functie "VictoryAnimation()". De eerste functie leest de analoge ingang van het richtingscommando en de digitale ingang van de selectieknop. De booleaanse variabelen "ButtonPushed" en "SelectPushed" worden gebruikt om te voorkomen dat de beweging wordt herhaald met de lussnelheid wanneer de knop wordt ingedrukt. De functie "SendLED()" ververst de status van de LED's door het seriële stuursignaal te verzenden volgens de gegevens in de TTTMap. Een fundamentele functie is "CheckVictory()" die wordt aangeroepen door "ReadButtonInput()" elke keer dat de selectieknop wordt ingedrukt. Deze functie controleert of het geselecteerde punt in de ruimte een winnende combinatie maakt met de omringende pinnen. In het geval van een winnende combinatie worden de punten in de TTTMap getekend met nummer 3 of 4, afhankelijk van de speler die wint, en de spannende “VictoryAnimation()” loopt!
Om opnieuw te spelen, druk je gewoon op de reset-knop op de Arduino:)
Stap 5: Speel met je vrienden
Geen uitleg hier nodig… GENIET!
Aanbevolen:
Hoe maak je een LED-kubus - LED-kubus 4x4x4: 3 stappen
Hoe maak je een LED-kubus | LED Cube 4x4x4: Een LED Cube kan worden gezien als een LED-scherm, waarin eenvoudige 5 mm LED's de rol van digitale pixels spelen. Met een LED-kubus kunnen we afbeeldingen en patronen creëren door gebruik te maken van het concept van een optisch fenomeen dat bekend staat als persistentie van het gezichtsvermogen (POV). Dus
[2020] IPhone of IPad en Micro:bit Game Pad-app gebruiken om een RC-auto te besturen: 23 stappen
[2020] IPhone of IPad en Micro:bit Game Pad-app gebruiken om een RC-auto te besturen: heb je erover nagedacht om je iPhone of iPad te gebruiken voor het besturen van je micro:bit? Weet je dat Micro:bit Educational Foundation de iOS-app in de App Winkel? Zoek "micro:bit" in de App store en je kunt de app gratis downloaden. De
Verhaal Interactief (Scratch Game): 8 stappen
Story Interactive (Scratch Game): Dit is een tutorial over hoe je een spel in scratch kunt maken met dialoog en sprites. Het leert je ook om clips aan je spel toe te voegen, en timing, inclusief uitzending en meer
LED Cube 4x4x4: 11 stappen (met afbeeldingen)
LED Cube 4x4x4: Verbazingwekkend driedimensionaal LED-display. 64 LED's vormen deze kubus van 4 bij 4 bij 4, bestuurd door een Atmel Atmega16-microcontroller. Elke LED kan afzonderlijk worden aangesproken in de software, waardoor hij verbluffende 3D-animaties kan weergeven! 8x8x8 LED kubus nu verkrijg
Hoe u kunt controleren of een game op uw computer kan worden uitgevoerd voordat u de game koopt: 4 stappen
Hoe u kunt controleren of een game op uw computer kan worden uitgevoerd voordat u de game koopt.: Ik heb onlangs Call of Duty 4 van een vriend gekocht (gratis zou ik kunnen toevoegen) omdat hij niet op zijn computer zou draaien. Wel, zijn computer is vrij nieuw, en het verbaasde me waarom hij niet zou werken. Dus na een paar uur zoeken op internet kwam ik