Inhoudsopgave:

Arduino Project // Simon Says (met straffe gevolgen): 5 stappen
Arduino Project // Simon Says (met straffe gevolgen): 5 stappen

Video: Arduino Project // Simon Says (met straffe gevolgen): 5 stappen

Video: Arduino Project // Simon Says (met straffe gevolgen): 5 stappen
Video: The Making of Super Castlevania IV & Bloodlines 2024, Juli-
Anonim
Arduino Project // Simon Says (met straffe gevolgen)
Arduino Project // Simon Says (met straffe gevolgen)

Hoi!

Dit is een zeer beginnersvriendelijke instructable, omdat dit eigenlijk ook mijn eerste Arduino-project is. Ik heb dit project gemaakt om te slagen voor de cursus die ik momenteel volg, genaamd If This Then That.

In deze Instructable laat ik je zien hoe je je eigen Simon Says-spel kunt maken met een strafgevolg met behulp van de Arduino. Ik heb ervoor gekozen om een strafgevolg toe te voegen om het spel wat meer pit te geven; het geeft de gebruiker meer interactie met de Arduino in plaats van alleen de lichten te volgen en op de knoppen te drukken.

Het strafgevolg bestaat uit het indrukken van de druksensor door de gebruiker. De arduino reageert op de druk die de gebruiker heeft gegeven en op basis van de druk laat de arduino een rode of groene LED oplichten. Als de rode LED oplicht, betekent dit dat de speler een aftrekpunt krijgt, als de groene LED oplicht, gebeurt er niets. Je kunt het spel gewoon resetten en opnieuw spelen.

Met een whiteboard marker kun je op het systeem zelf aangeven hoeveel aftrekpunten je hebt. Dit geeft je ook een beetje die extra interactie met het ontwerp van het project.

Stap 1: MATERIALEN

Misschien wil je eerst de materialen voor jezelf halen. Ik had een elektronicakit gekocht en wilde de items en gereedschappen die in die kit zaten alleen gebruiken omdat ik niet meer elektronica wilde kopen. Voel je vrij om zelf iets leuks toe te voegen.

Gebruikte artikelen:

- Arduino Uno (1x)

- Broodplank (1x)

- LED's (4x en indien mogelijk in verschillende kleuren, omdat het het spel kleurrijker maakt)

- PCB-drukknop (4x, 6x6mm maat)

- 200 ohm weerstanden (4x)

- 10K ohm weerstanden (5x)

- Druksensor (1x)

- Set breadboard jumperdraden

- Perf/Stripbord (1x)

- Foamboard (wit)

- Acetaatfolie

- Washi tape

- Wattenschijfjes

- Schilderachtige tape

- Lijm

Gebruikte hulpmiddelen:

- Soldeerbout

- Snijders

- Striptang

- Lasersnijder

- Stanley mes

Stap 2: STEL UW CODE IN

Voordat ik zelf begon te programmeren, heb ik wat andere Simon Says-games opgezocht die gebaseerd zijn op de arduino. Ik heb deze vergeleken bij het coderen. Ik heb deze als referentie gebruikt:

- Instructable met een schema en code I. De code wordt niet uitgelegd, dus als je niet bekend bent met programmeren, kan dit moeilijk in één keer te begrijpen zijn.

- Instructable met schema en code II

- Instructable met schema en code III

Het spel is verdeeld in drie afzonderlijke staten: de START-status, de PLAY-status en de GAMEOVER-status. Dit is als een cirkel die zich elke keer herhaalt wanneer je het spel speelt. De rest van de uitleg van de code vind je hier.

Ik gebruikte een timer voor het strafgevolg. Het houdt bij hoe lang de sensor druk heeft. Met if/else-statements hangt het van uw druk af of de rode LED of de groene LED oplicht.

int onGameOver(){ //Serial.print(millis());

Serieel.print(" - ");

Seriële.println(timer);

als (analoog lezen (A0) > 0)

{ //Timer zetten we op 2 seconden if (!setOnce)

{ Serial.println("geklikt.");

setOnce = waar;

timer = millis() + 2000; } }

if (millis() > timer && setOnce)

{ //Timer afgelopen

Serial.println("afgelopen.");

blinkOnce = onwaar; setOnce = onwaar;

return (analogRead (A0) < 512 ? 2: 1); } }"

Stap 3: SCHEMA

SCHEMATISCH
SCHEMATISCH

Gebruik je breadboard om een prototype van je spel te maken. Houd er rekening mee dat het breadboard is aangesloten.

Je hebt waarschijnlijk gemerkt dat veel breadboards cijfers en letters hebben die op verschillende rijen en kolommen zijn gemarkeerd, maar deze hebben geen ander doel dan je te begeleiden bij het bouwen van je circuit. Als u het rijnummer weet van de verbinding die u probeert te maken, is het veel eenvoudiger om een draad op dat nummer aan te sluiten in plaats van honderd keer te controleren.

Afgezien van horizontale rijen, hebben breadboards meestal zogenaamde stroomrails die verticaal langs de zijkanten lopen.

Stap 4: SOLDEREN

SOLDEREN
SOLDEREN

Omdat ik niet het risico wilde nemen dat mijn project letterlijk uit elkaar zou vallen in de tijd dat mijn leraren me zouden beoordelen (ik moet ook met het openbaar vervoer reizen), kies ik ervoor om mijn project ook te solderen in plaats van het aan te houden het broodplankje.

Ik heb het circuit niet in kaart gebracht, omdat ik niet wist hoe ik de symbolen en zo moest gebruiken, maar als je dat doet en je vindt dat een betere methode voor jezelf voordat je gaat solderen, is dat ook goed.

Ik bestudeerde mijn prototype op mijn breadboard en zorgde ervoor dat ik precies begreep wat er op mijn breadboard gebeurde. Ik maakte de verbindingen en hield in gedachten dat de negatieve kant moet aansluiten op de positieve kant.

Ik heb opgeschreven welke pin naar welke LED / knop / draad / sensor ging en deze bij de hand hield toen ik soldeerde. Op een gegeven moment zul je waarschijnlijk erg gefrustreerd raken door de hoeveelheid draden die je hebt. Wat ik deed was opschrijven wat de functie van de draad was en naar welke pin hij zou gaan op schilderstape en deze om de draad wikkelde, zodat het duidelijker zou zijn waar alle verschillende draden voor waren.

Zorg ervoor dat alles is aangesloten en je bent klaar om te gaan!

Maar een tip die ik je wil geven, is om je breadboard waar je je prototype op hebt gemaakt bij je te houden tijdens het solderen, zodat je het als referentie kunt gebruiken als je niet zeker weet wat je aan het doen bent. Ik heb veel medestudenten gewoon hun prototype uit elkaar zien halen en vervolgens vergeten hoe ze bepaalde dingen met elkaar verbonden hebben.

Stap 5: VERPAKKING

VERPAKKING
VERPAKKING
VERPAKKING
VERPAKKING
VERPAKKING
VERPAKKING
VERPAKKING
VERPAKKING

Ik wilde een kubus hebben die mijn Arduino bedekt. Ik maakte een kubus in Illustrator en ging deze lasersnijden. Als materiaal kies ik voor foamboard, dat vind ik makkelijk te bewerken en een stevige materiaalsoort. Omdat elke lasersnijder anders is, zou je zelf de snelheid en het vermogen van de laser willen controleren, afhankelijk van de dikte van je materiaal.

De twee gewone vierkanten worden de boven- en onderkant van de kubus, de rest blijft aan de zijkant plakken. Daar kun je lijm voor gebruiken. Er is één kant die korter is dan de andere, dat komt omdat je je usb-kabel van je arduino uit deze kubus kunt steken en op je laptop kunt steken als je wijzigingen wilt aanbrengen of het spel wilt aanzetten.

Ik heb gewoon de zijkanten in elkaar geschoven en gelijmd voor extra veiligheid. Ik heb als laatste de bovenkant van de kubus gelijmd omdat ik de kubus wilde vullen met wattenschijfjes waar de arduino op kon rusten. Ik plakte mijn perf / stripboard aan de bovenkant van de kubus nadat ik een Stanley-mes had gebruikt om de cirkels uit te snijden waar de LED's eruit zouden springen, de vierkanten waar mijn knoppen zouden worden ingedrukt en de plaats waar mijn druksensor eruit zou kunnen springen en wees klaar om te worden ingedrukt.

Gebruik de wastape om je acetaatfolie boven de LED's te plakken en je eigen Simon Says-spel is good to go!

Aanbevolen: