Indholdsfortegnelse:

Arduino Arcade Lego Games Box: 19 trin (med billeder)
Arduino Arcade Lego Games Box: 19 trin (med billeder)

Video: Arduino Arcade Lego Games Box: 19 trin (med billeder)

Video: Arduino Arcade Lego Games Box: 19 trin (med billeder)
Video: The computers still work in the abandoned research lab 2024, Juli
Anonim
Image
Image
Arduino Arcade Lego Games Box
Arduino Arcade Lego Games Box
Arduino Arcade Lego Games Box
Arduino Arcade Lego Games Box

Hvis du har børn, står du sandsynligvis over for de samme problemer som vi gjorde med de Lego -sæt, du købte til dem. De samler og leger med dem, men efter et stykke tid forvandles sættene til en enkelt bunke mursten. Børnene vokser op, og du ved ikke, hvad du skal gøre med denne bunke.

Vi besluttede at genbruge de uønskede Lego -klodser og lavede et arkadespil.

Denne trinvise vejledning er et resultat af flere måneders arbejde med at gøre spillet gentageligt og til meget lave omkostninger. Stort set alle kunne gentage dette projekt! Koden er blevet skrevet på en sådan måde, at den ikke har afhængigheder og vil kompilere på ethvert Arduino -kort. Og selvfølgelig er spillene blevet intensivt testet af vores børn:-)

Hvordan adskiller dette spil sig fra mange andre, der er udgivet før?

Først og fremmest er der 5 spil indbygget i det:

  • Memory Game ("Simon-Says" -lignende, ligner Touch Me-spil)
  • Reaktionsspil (ligner Whack-a-Mole-spil)
  • Konkurrence/konkurrence spil (for 2-4 spillere)
  • Melodispil (Push and Play gratis tilstand for småbørn og mindre)
  • Krigsspil (for 2-4 voksne)

For det andet har det et fantastisk design (fra vores perspektiv) og kan let gentages.

Og for det tredje er det jordvenligt, fordi det giver dig mulighed for at genbruge plasten.

I slutningen af denne vejledning er der også en trin-for-trin video, hvis du foretrækker videoformatet.

Trin 1: Deleliste

Liste over dele
Liste over dele
Liste over dele
Liste over dele

Hvis du kan lide dette projekt, men ikke har en bunke uønskede Lego -klodser, ville det letteste være at købe Lego Classic 10704 -sæt med 900 stykker indeni.

Her er en liste over de elementer, du skal bruge for at oprette dette projekt:

  • 1 kg uønskede legoklodser (eller lignende klodser fra et andet mærke som f.eks. Mega Bloks)
  • 25 x 25 cm bundplade til Lego (eller lignende fra et andet mærke). Lego base har 32 x 32 prikker. Hvis du ikke har det - basen koster omkring 3 $ inkl. porto, hvis du køber online (søgeudtrykket "32 25 blokke")
  • 30 x 30 cm gennemsigtigt plexiglasstykke (5 eller 6 mm tykt)
  • 4 x 60 mm trykknapper i stor arkade-stil (jeg anbefaler rød, grøn, blå, gul) (søgeudtryk for onlinebutikker: "60 mm arkadeknap"). De er den dyreste komponent i denne konstruktion til omkring 2 $ hver.
  • 2 x Øjeblikkelig trykknap 16 mm radius (jeg anbefaler hvid og sort) (søgeudtryk: "16 mm trykknap")
  • Tænd/sluk vippekontakt 27x21mm monteringsstørrelse (jeg anbefaler gennemsigtig rød med 4 ben) (søgeudtryk: "vippekontakt 16a")
  • Arduino Nano
  • 1602 LCD -display og I2C -tilslutningsmodul
  • 2 x 4ohm 5W højttalere, størrelse 30 x 70 mm (du kan bruge alle andre små, men CAD -tegningen udføres til 30x70mm)
  • 8 x 6 cm prototypebræt eller et 830 -benet brødbræt
  • 2x18650 genopladelige batterier (kan genbruges fra det døde laptopbatteri)
  • Dobbelt 18650 batteriholder (søgeord: "holder 2 x 18650")
  • TP4056 opladningsregulator og afladningsbeskytter
  • 5V step-up converter (den mindste 500mA kan klare)
  • Små ting: nogle ledninger, Mini-USB-kabel eller diy-stik, Micro-USB-stik på printkort, M3 bolte/møtrikker/skiver, 4 x topdækselskruer
  • Modstande:

    • 6 x 100 ohm
    • 1 x 1k
    • 3 x 10k

Trin 2: Bygning af kassen

Bygger kassen
Bygger kassen
Bygger kassen
Bygger kassen
Bygger kassen
Bygger kassen

Dette er den letteste del af projektet, som du kan delegere til dine børn.

Tag Lego 32x32 punkt bundpladen og læg væggene ved hjælp af de genanvendte dele. Du skal have omkring 9 lag i alt. Vi valgte lysegrå farve til basen, så de tilfældige farve mursten er hovedfokus.

Ingen kasse vil være ens. Vær kreativ, når du bygger lagene. Genbrug selv små dele - de ser fede ud. Uregelmæssige former ser også flotte ud. Tilføj vinduer, forruder fra biler, døre og kasser.

Boksen skal have mindst en Lego-dør i fuld størrelse. Dette er nødvendigt for at installere vippekontakten i væggen.

Trin 3: Lav topdækslet

Lav topdækslet
Lav topdækslet
Lav topdækslet
Lav topdækslet
Lav topdækslet
Lav topdækslet
Lav topdækslet
Lav topdækslet

Topdækslet er lavet af 5 eller 6 mm plexiglas (gennemsigtigt akrylark). Download CAD -tegningen, sæt den på USB -stik og bare gå til den nærmeste CNC -butik - de vil fræse den for dig. CAD -tegning inkluderer også vippekontaktens monteringsplade (se billede).

Du bliver nødt til at lave lidt efterbehandling af toppladen. Gør kanten skrå med sandpapir og en træklods. Bor også hullerne for at montere højttalerne og 1602 -skærmen. 1602 -skærmen kræver også en lille trekant, der er fræset på siden af LCD -vinduet i akrylarket (se foto). Jeg gjorde dette på halv dybde ved hjælp af det roterende værktøj (dremel) og en lille fræser.

Trin 4: Tilføj alle komponenter til topdækslet

Tilføj alle komponenter til topdækslet
Tilføj alle komponenter til topdækslet
Tilføj alle komponenter til topdækslet
Tilføj alle komponenter til topdækslet
Tilføj alle komponenter til topdækslet
Tilføj alle komponenter til topdækslet

Installer de store 4 arkadeknapper, 2 game change/select knapper, 2 højttalere og et 1602 LCD + I2C modul. Alt er fastgjort med M3 skruer + M3 skiver og møtrikker på bagsiden.

Inden du installerer arkadeknapperne - fjern LED -lysholderne. Du bliver nødt til at modificere dem lidt - se næste trin.

Trin 5: Modificering af lysdioderne i Arcade -knapperne

Modding af lysdioderne i Arcade -knapperne
Modding af lysdioderne i Arcade -knapperne
Modding af lysdioderne i Arcade -knapperne
Modding af lysdioderne i Arcade -knapperne
Modding af lysdioderne i Arcade -knapperne
Modding af lysdioderne i Arcade -knapperne

Disse arkadeknapper er designet til at fungere ved 12V. De vil arbejde med 5V, som er standardspændingen for dette projekt, men de vil være for svage. Så jeg fjernede LED -fatningerne fra arkadeknapper, gled LED -holderne ud og fjernede LED'erne med modstande. De 460ohm modstande skal afloddes og udskiftes med 100ohm. Når det var gjort, samlede jeg alt tilbage og installerede lysdioderne med holdere i knapperne.

Trin 6: (valgfri) Betjeningsknapetiketter

(valgfri) Betjeningsknapetiketter
(valgfri) Betjeningsknapetiketter

Du har muligvis bemærket etiketterne på de 2 betjeningsknapper. Vores første version af bygningen havde dem ikke, men jeg besluttede at tilføje dem, da jeg gentog bygningen anden gang.

Begge knapper har flere funktioner afhængigt af spillets tilstand. Hvid knap starter det valgte spil eller bekræfter valget under nogle af spillene. Sort knap ændrer det valgte spil eller afslutter under spillet.

For at oprette runde etiketter har du brug for et tyndt aluminiumsark (maks. 1 mm tykt), en hulsavbor, et trinbor og en bogstavstans (se billede). Først skærer du cirklen ved hjælp af hulsav. Derefter forstørrer du den indre diameter med den trinvise bit, og derefter bruger du bogstavstans til at oprette etiketter. For at gøre bogstaver mere synlige skal du bruge en permanent sort markør (sharpie).

Trin 7: Lav Breakout Board

Gør Breakout Board
Gør Breakout Board
Gør Breakout Board
Gør Breakout Board

Du har to muligheder her. Enten for at bruge brødbrættet og wire Arduino med kabler gennem brødbrættet eller for at installere et lille udbrud på bagsiden af LCD -panelet.

Til den første konstruktion brugte vi brødbrættet (se billede). Til den anden build besluttede vi at bruge mere tid på at oprette breakout board. Funktionaliteten ændres ikke, men der er færre ledninger, og udbruddet er skjult under LCD -panelet.

Hvis du vælger at gå med breakout -kortet, skal du tage 8x6 prototype -kortet og skære det som vist på billedet. Større del vil blive brugt til breakout og mindre til at skabe strømforsyning.

Lodde Arduino Nano på dette prototavle.

Trin 8: Tilslutning af forbindelser

Tilslutning af forbindelser
Tilslutning af forbindelser
Tilslutning af forbindelser
Tilslutning af forbindelser
Tilslutning af forbindelser
Tilslutning af forbindelser

Forbered nogle kabler og tilslut dit setup, switche og forbindelser til Nano i henhold til diagrammet.

Lige siden jeg begyndte at bruge Ethernet -snoede parkabler - glemte jeg hovedpinen, hvor jeg skulle hente ledningerne til mine projekter. De har forskellige farver og er multicore, så de ikke går let i stykker. Det eneste, du skal passe på, når du arbejder med dem, er, at lodning skal være meget hurtig, så du ikke brænder isoleringen.

Bemærk på det andet billede, hvordan 100ohm -modstandene er tilsluttet til tilslutninger til højttalere.

Lidt noter om forbindelser:

  • Sort/hvid betjeningsknapper er forbundet fra ben D2/3 direkte til jorden, fordi interne pull-up modstande bruges i Nano.
  • A4/5 er forbundet til I2C SDA/SCL -benene. Dette er nødvendigt for LCD I2C -modulet.
  • Højttalere skal være tilsluttet D10/11, fordi disse ben er PWM -aktiverede.
  • Det anbefales at tilføje en lille kobberledning som jordskinne for lettere tilslutning af alle jordledninger (der vil være omkring 5 af dem).

Trin 9: Tilslutning af knapperne

Tilslutning af knapperne
Tilslutning af knapperne
Tilslutning af knapperne
Tilslutning af knapperne

Alle Arcade -knapper er forbundet til en enkelt pin A1 gennem en række modstande. A1 er opsat som intern analog pull-up. Dette er en af de lidt kendte funktioner i Arduino, der hjalp os med at spare på antallet af ledninger, der gik til knapperne.

Så opsætningen går som følger: fra A1 til første knap gennem 1k modstand. Fra knap1 til knap2 til 10k. Fra knap2 til knap3 til 10k og fra knap3 til knap4 til 10k. Hver knap på "luk" tilstand shorts til jorden. Da der allerede er jord på hver knap til LED'erne, er den anden pin af hver switch forbundet til jorden fra LED'en. Tag et kig på diagrammet for at forstå ledningerne.

På det tidspunkt skulle tilslutning af et Mini-USB-kabel til Arduino Nano give dig mulighed for at spille spillet efter at have uploadet skitsen. Alt du behøver er en strømforsyning til at gøre spillet bærbart.

Trin 10: Installation af batterierne

Installation af batterier
Installation af batterier

Jeg brugte to genbrugte 18650 celler fra de døde bærbare batterier. Det er dem med lavere kapacitet (omkring 600mAh), som jeg ikke ønskede at bruge til applikationer med højere belastning. Enheden bruger ikke rigtig så meget strøm, så dette burde være tilstrækkeligt til at køre spillet i flere dage.

Batterierne er installeret i en dobbelt 18650 batteriholder, og der er et stik til nem tilslutning til strømforsyningen.

Trin 11: Installation af USB -stikforlængeren

Installation af USB Socket Extender
Installation af USB Socket Extender
Installation af USB -stikforlængeren
Installation af USB -stikforlængeren
Installation af USB Socket Extender
Installation af USB Socket Extender

Spillet skal være i stand til at genoplade og opgradere firmware uden demontering. Så jeg borede en af blokkene for at skjule Micro-USB-stikket.

For at forlænge USB fra murstensvæggen til Arduino Nano tog jeg et Mini-USB-kabel og skar USB-A-enden (det store USB-stik) væk og fjernede ledningerne. I mit tilfælde var den røde/sorte strøm og hvid/grøn var D +/- forbindelser.

D +/- skal loddes på Micro-USB-breakout. 5V og jord (rød/sort) skal igennem strømforsyning.

Hvorfor blev Micro-USB-breakout valgt, hvis Nano bruger Mini-USB? Simpelthen fordi Micro-USB er overalt i vores husstande-det bruges til at oplade telefoner og andre enheder. Så du vil kunne oplade spillet og opgradere firmwaren med dit telefonkabel:-)

Trin 12: Lav strømforsyningen

Lav strømforsyningen
Lav strømforsyningen
Lav strømforsyningen
Lav strømforsyningen
Lav strømforsyningen
Lav strømforsyningen

Jeg tog det mindre prototype bord og loddet lige på det TP4056 batterioplader og beskyttelsesmodul og også 5V booster.

Input til TP4056 går fra Micro-USB-stikket. Batterikablet er fastgjort til TP4056 ben mærket som B +/-. Pins markeret som OUT +/- går ind i vippekontakten. Fra vippekontakten går +/- tilslutningerne ind i 5V booster modulet, og fra booster output er de røde/sorte ledninger fra det fjernede USB kabel tilsluttet.

Tag et kig på diagrammet for at forstå ledningerne.

Trin 13: Epoxy Micro USB Breakout

Epoxy Micro USB Breakout
Epoxy Micro USB Breakout
Epoxy Micro USB Breakout
Epoxy Micro USB Breakout

Jeg brugte noget epoxy til at reparere Micro-USB-udbruddet i Lego-klodsen. Efter at det er hærdet, vil stikket være mere robust end dem, der findes i mobiltelefoner, så børnene kan genoplade spillet, og det går ikke i stykker.

Jeg anbefaler at bruge hurtighærdende epoxy til denne del. Hvis du ikke har det, skal du tilføje lidt mere af hærderen til harpiks og lade det sidde et stykke tid.

Trin 14: Installer vippekontakten, tilslut strømnettet

Installer vippekontakten, tilslut strømnettet
Installer vippekontakten, tilslut strømnettet
Installer vippekontakten, tilslut strømnettet
Installer vippekontakten, tilslut strømnettet
Installer vippekontakten, tilslut strømnettet
Installer vippekontakten, tilslut strømnettet

Denne switch er massiv. Det er designet til 250V netspænding. Men jeg brugte stadig denne model, fordi den ser godt ud og passer perfekt ind i en standard Lego City -dør. Så jeg satte kontakten ind i monteringspladen og fikserede derefter pladen på murstensvæggen ved hjælp af de 2 skruer (vægge var forboret).

Også selen kunne nu endelig installeres samt Micro-USB breakout, der blev epoxet ind i Lego-klodsen. Bemærk, hvordan nogle ekstra mursten blev brugt til at fastgøre komponenterne til basen.

Trin 15: Lukning af låget

Lukning af låget
Lukning af låget

Sæt Mini-USB-kablet i Arduino Nano, der er fastgjort til topdækslet, og luk låget.

Jeg forborede 4 huller i væggene og brugte 4 skruer til at fastgøre toppen til kassen.

Trin 16: Koden

Koden
Koden

Første version af spillet er skrevet af mig efterfulgt af nye 4 versioner fra min ven Alex, der tilføjede yderligere 4 spil og rensede koden til perfektion. Vi brugte også Reyboz's arbejde til lydene - lydniveauet, der produceres ved hjælp af denne kode, er fantastisk at sammenligne med, hvad der kommer som standard ved hjælp af Tone -biblioteket i Arduino.

Som nævnt er koden blevet optimeret i flere måneder efter omfattende QA -test af børnene, og i øjeblikket har vi uploadet version 4 til GitHub.

Seneste version af kildekoden:

Alt du skal gøre er at installere 1602 I2C LCD -bibliotek (tilgængeligt i Arduino IDE -biblioteksmanageren) og derefter uploade vores kode.

Først uploader du button-calibration.ino og laver en registrering på et stykke papir af de værdier, hver Arcade Button producerer. Dette script vil også slette EEPROM, så topscores nulstilles.

Derefter ændrer du i Game-Settings. H værdierne for de knapper, du har kalibreret, og uploader den primære Lego-Games-Box.ino-fil, og du kan begynde at spille (forudsat at du har tilsluttet alt i henhold til skematikken, der blev givet ovenfor).

Bemærk: hvis du laver dette spil til børn, skal du fjerne i Game-settings.h den sidste post fra String GameTitle = {"Memory Game", "Reaction Game", "Tournament Game", "Melody Game", " Nuclear War Game "}; Denne sidste post har regler, hvor hver spiller vælger fjender og kan være for fjendtlig for børnene.

Trin 17: Detaljeret vejledningsvideo

Hvis du finder det lettere at se videoen i stedet for at læse instruktioner, her er videoversionen af denne build.

Trin 18: Spilleregler

Image
Image

I øjeblikket er der implementeret 5 spil. Hvis du har flere ideer til spil, der kan oprettes ved hjælp af denne boks - lad os vide det i kommentarerne. Jeg vil kort gå over hvert spil og forklare reglerne og hvordan man spiller.

Vend vippekontakten på siden for at tænde Lego Arcade Games Box. Alle spil ledsages af lydene fra Mario nostalgiske spil. Ved opstart bør du høre startmelodien af Mario -spillet.

Når det er startet, vil du se på LCD -displayet det spil, der er valgt nu. For at ændre spillet skal du trykke på den sorte knap.

Når du har besluttet, hvilket spil du vil spille, skal du bare trykke på den hvide knap for at starte.

Hvis du ønsker at afslutte det spil, der allerede kører - skal du trykke på den sorte knap.

Ved opstart kan du slukke for lydene (nattilstand) ved at trykke på den røde knap.

Memory Game ("Simon-Says" -lignende, ligner Touch Me-spil)

Reglerne er velkendte og enkle. Spillet viser dig en række noter/lys, og du skal gentage det. Hver gang tilføjes endnu en tone/lys til sekvensen. Jo længere du overlever, jo bedre er din hukommelse. Det er glimrende til træning af korttidshukommelse for børn og voksne.

Reaktionsspil (ligner Whack-a-Mole-spil)

Du skal være hurtig nok til at trykke på hver knap, der lyser. Jo længere du spiller jo hurtigere lyser knapperne. Denne er fantastisk til træningsreaktion hos børn og voksne.

Konkurrence/konkurrence spil (for 2-4 spillere)

Du får 5 runder. Alle skal trykke hurtigt på hans knap, efter at signalet er givet (møntstemme fra Mario). Den, der først trykker på knappen, vinder runden. Antallet af gevinster beregnes ved afslutningen af 5 runder, og vinderen annonceres.

Melodispil (Push and Play gratis tilstand for småbørn og mindre)

Denne er fremragende til småbørn - den spiller skiftende melodier, når du trykker på en knap og holder den inde. Efter første test med børn indså vi, at vores mindre, der var 1 år, virkelig gerne vil spille, men ikke forstår HVORDAN. Reglerne for dette spil er - INGEN REGLER. Du kan trykke på en vilkårlig knap, og den producerer lyde.

Krigsspil (for 2-4 voksne)

Min ven Alex, der programmerede de efterfølgende versioner af denne spilboks, kom på ideen til dette spil under Trump/Kim -krisen om, hvem der har den større atomknap. Reglerne har brug for en separat video til forklaring (du kan finde den her og her), men i en nøddeskal vælger du antallet af spillere i begyndelsen, og under hver runde vælger hver person sin fjende. Når alle har valgt sin fjende, begynder missilerne at flyve. Den, der er blevet udvalgt som en fjende, har et øjeblik til at trykke på knappen for at sende krydset missil og redde sit/hendes land. Runderne fortsætter, indtil der kun er et land tilbage.

Trin 19: Endeligt resultat

Endeligt resultat
Endeligt resultat
Endeligt resultat
Endeligt resultat
Endeligt resultat
Endeligt resultat

Vi er 3 venner, der brugte tiden på at bygge spillet til vores børn. Vi håber virkelig, at du vil kunne lide spillet så meget, at du vil bygge din egen version ved hjælp af disse instruktioner. Hvis du har spørgsmål eller forslag - send dem venligst i kommentarerne.

Spillelivskonkurrence
Spillelivskonkurrence
Spillelivskonkurrence
Spillelivskonkurrence

Anden pris i Game Life Contest

Anbefalede: