Inhoudsopgave:

2 spelers Connect 4 (Puissance 4) - Ajarnpa
2 spelers Connect 4 (Puissance 4) - Ajarnpa

Video: 2 spelers Connect 4 (Puissance 4) - Ajarnpa

Video: 2 spelers Connect 4 (Puissance 4) - Ajarnpa
Video: Connect 4 Spin - This Game Is Super Satisfying! #boardgame #couple 2024, Juli-
Anonim

Door ClemNafVolg meer door de auteur:

Aangepaste kraskaart
Aangepaste kraskaart
Aangepaste kraskaart
Aangepaste kraskaart

Over: Ik ben een mecatronica ingenieur en ik vind het leuk om dingen te maken! Ik ben bezig met Arduino, game of IoT aan het maken. Ik vind het leuk om nieuwe dingen te ontdekken en mijn best te doen. Meer over ClemNaf »

Dag iedereen !

In deze instructable laat ik je zien hoe ik een Connect 4 voor twee spelers heb gemaakt met een Arduino nano. RGB Led geeft de pion van de speler weer en de speler kiest met knoppen waar deze moet worden geplaatst.

De truc van deze instructable is om een groot aantal in- en uitgangen te bedienen: 49 RGB-leds en 3 knoppen. Ik raad je aan om alle stappen te lezen voordat je aan je eigen Connect4 begint. Het zijn veel lastige onderdelen en je wordt geblokkeerd als je niet het juiste protocol hebt ingesteld.

Het spijt me dat ik niet veel foto's heb gemaakt toen ik aan het bouwen was, dit is mijn eerste instructable, dus ik zal een aantal cruciale stappen verbieden. Wees aardig en waarschuw me!

Voel je vrij om te reageren als ik fouten heb gemaakt. Ik zal het repareren als dat nodig is.

Stap 1: Plannen

De eerste stap is plannen.

Je wilt een Arduino-spel doen, maar je moet eerst een onderdeel kiezen. Dit instructable is niet duur, Connect 4 is samengesteld door Leds en een Arduino nano. Kies dus gerust een consistente box of elektronische schakeling.

Als je een slechte verliezer bent, krijg je een ijzeren, meer resistent!

Houd er rekening mee dat u 49 RGB-leds zult gebruiken, die u moet beheren en bedraden. Je hebt dus ruimte en flexibiliteit nodig.

In sommige gevallen had ik een kartonnen doos die paste in de maat die ik wilde voor mijn spel. Ik heb het gebruikt, maar je kunt een houten kist kiezen.

Wees creatief !

Stap 2: Wat heb je nodig?

Wat je nodig zult hebben
Wat je nodig zult hebben
  1. Materialen

    • 49x RGB-leds
    • 2x 74HC595
    • 7x NPN-transistor pn2222
    • 3x knoppen
    • 1x aan/uit-schakelaar
    • 7x 100Ω weerstanden
    • 7x 1kΩ weerstanden
    • 3x 10kΩ weerstanden
    • 2x planken
    • een doos
    • 1x 9V batterij
    • draad
  2. Gereedschap

    • Soldeerbout
    • Voltmeter
    • Draadknipper
    • Blik

Zorg ervoor dat je alles klaarmaakt, je zult het nodig hebben!

Stap 3: Past Arduino Nano - Shift Register?

Past Arduino Nano - Shift Register?
Past Arduino Nano - Shift Register?
Past Arduino Nano - Shift Register?
Past Arduino Nano - Shift Register?

Het speelbord van een klassiek Connect4 bestaat uit 7 kolommen en 6 lijnen. We hebben een extra lijn om uit te kiezen waar we willen spelen. In feite moeten we een 7x7-raster bouwen.

Oké, nu beginnen de echte dingen. Hoe 49 RGB Leds aansturen met alleen een Arduino Nano? Hebben we 49 uitgangen nodig? Meer ?

We hebben 2 kleuren, 49 Leds: 49*2 = 98 pinnen om te beheren voor Leds als alle aarde met elkaar verbonden zijn!! Een vriendelijke herinnering: Arduino Nano heeft 18 uitgangen!

Een manier om dit te omzeilen is door het bord in de rij te splitsen. Alle LED's uitgelijnd in een verticale kolom delen een gemeenschappelijke anode van één kleur (+). Alle LED's op een horizontale laag delen een gemeenschappelijke kathode (-).

Als ik nu de LED in de linkerbovenhoek (A1) wil laten oplichten, geef ik gewoon GND (-) aan de A-lijn en VCC (+) aan de kleur in 1 lijn.

De manier om er omheen te werken is om slechts één lijn per keer op te lichten, maar doe het zo snel dat het oog niet herkent dat er maar één lijn tegelijk brandt!

Het aantal benodigde uitgangen gaat van 49*3 =147 naar 7*2 + 7 = 28 uitgangen. Arduino Nano heeft slechts 12 digitale uitgangen en 6 analoge uitgangen (die als digitale uitgang kunnen worden gebruikt). Uiteraard 28 > 18 en we moeten onthouden dat we 3 ingangen hebben (validatie, kies links, kies rechts).

We zullen een Shift Register gebruiken om de poort uit te breiden. Je kunt hier begrijpen hoe het werkt. Maar het bestaat voornamelijk uit 3 ingangen en 8 uitgangen. Wanneer SH_CP van LAAG naar HOOG gaat, wordt DS gelezen en verzonden naar Q1 tot Q8. En de output kan worden gelezen wanneer ST_CP van LAAG naar HOOG gaat.

Dus we kunnen onze 7 kolommen besturen met 3 ingangen. Omdat we moeten kleuren, moeten we Shift Register.

Laten we eens kijken hoeveel pinnen er nog over zijn:

  • 7 gronden
  • 3 voor rode kleur
  • 3 voor groene kleur
  • 3 voor knoppen

We hebben nu 16/18 pinnen gebruikt. Om het programma te optimaliseren zullen we dezelfde pin gebruiken voor de SH_CP's en dezelfde pin voor ST_CP's. Dus 14 pinnen gebruikt. Met deze bekabeling weten we zeker dat alleen groene leds branden of alleen rode.

Stap 4: Schakelschema

Schakelschema
Schakelschema

Dit is het diagram van onze Connect 4. Ik heb Fritzing (gratis) gebruikt om het te ontwerpen. Je moet 7 lijnen led instellen met transistors.

Dit zijn de pinnen van de Arduino:

  • D0: ongebruikt
  • D1: ongebruikt
  • D2: lijn 1
  • D3: lijn 2
  • D4: lijn 3
  • D5: lijn 4
  • D6: lijn 5
  • D7: lijn 6
  • D8: lijn 7
  • D9: ongebruikt
  • D10: rechterknop
  • D11: linkerknop
  • D12: geldige knop
  • D13: SH_CP
  • A0: ST_CP
  • A1: rood DS
  • A2: groen DS
  • A3 - A7: ongebruikt

En de pinnen van het schuifregister:

  • 1: geleid 2
  • 2: geleid 3
  • 3: geleid 4
  • 4: geleid 5
  • 5: geleid 6
  • 6: geleid 7
  • 7: ongebruikt
  • 8: grond
  • 9: ongebruikt
  • 10: 10K weerstand en +5V
  • 11: Arduino D13
  • 12: Arduino A1 of A2
  • 13: grond
  • 14: Arduino A0
  • 15: geleid 1
  • 16: +5V

Stap 5: Leds monteren

Leds monteren
Leds monteren
Leds monteren
Leds monteren

Mijn roosters van LED's zien er verschrikkelijk uit, het was mijn eerste project voorzichtig!

Ik denk dat je een betere oplossing kunt vinden om LED's op je doos te monteren. In deze stap moet je creatief en vindingrijk zijn. Ik kan je niet echt helpen omdat ik geen goede oplossing heb gevonden…

Houd er rekening mee dat u alle pinnen van alle LED's aan elkaar moet solderen en dat u lijnen en kolommen moet aansluiten. Het moet toegankelijk zijn, Arduino en Register worden hiermee verbonden.

Ik raad je aan om elke Leds te testen voordat je ze soldeert, nadat het te laat zal zijn … Bovendien kun je een andere lijn van je bord gebruiken: als je de aardingspin verschuift, is het gemakkelijker om ze met elkaar te verbinden.

Stap 6: Soldeercircuit

Soldeer Circuit
Soldeer Circuit

Ik gebruik 2 borden: een om LED's met elkaar te verbinden en een andere voor het circuit.

Als je nauwgezet en vooruitziend was, zijn je lijnen en kolommen gemakkelijk toegankelijk en kunnen ze op je moederbord worden gesoldeerd.

Neem je tijd ! Het is de sleutel tot succes!

Stap 7: Programmeren

U heeft nu uw Connect4. Om er gebruik van te maken, moet je een code uploaden. De mijne is volledig functioneel en kan worden gebruikt.

Download het van hier en breng het over naar je Arduino Nano.

Wees je bewust van welke pinnen je hebt gebruikt, je zult zo nodig wat code moeten wijzigen.

Er kan een upgrade worden gemaakt: AI, tijd om te spelen, …

Aanbevolen: