Sisukord:

Arduino Arcade Lego mängude kast: 19 sammu (piltidega)
Arduino Arcade Lego mängude kast: 19 sammu (piltidega)

Video: Arduino Arcade Lego mängude kast: 19 sammu (piltidega)

Video: Arduino Arcade Lego mängude kast: 19 sammu (piltidega)
Video: REAL RACING 3 LEAD FOOT EDITION 2024, November
Anonim
Image
Image
Arduino Arcade Lego mängude kast
Arduino Arcade Lego mängude kast
Arduino Arcade Lego mängude kast
Arduino Arcade Lego mängude kast

Kui teil on lapsi, seisate tõenäoliselt silmitsi samade probleemidega nagu meil nende jaoks ostetud legokomplektidega. Nad komplekteerivad ja mängivad nendega, kuid mõne aja pärast muutuvad komplektid üheks hunnikuks telliseks. Lapsed kasvavad suureks ja te ei tea, mida selle hunnikuga peale hakata.

Otsustasime soovimatud Lego klotsid taaskasutada ja lõime arkaadmängu.

See samm -sammuline juhend on mitme kuu töö tulemus, et muuta mäng korratavaks ja väga madala hinnaga. Peaaegu igaüks võiks seda projekti korrata! Kood on kirjutatud nii, et sellel pole sõltuvusi ja see koostatakse mis tahes Arduino tahvlil. Ja muidugi on meie lapsed mänge intensiivselt testinud:-)

Kuidas see mäng erineb paljudest teistest, mis on varem avaldatud?

Esiteks on sellesse sisse ehitatud 5 mängu:

  • Mälumäng ("Simon-Says" -laadne, sarnane Touch Me mänguga)
  • Reaktsioonimäng (sarnane Whack-a-Mole mänguga)
  • Võistlus-/võistlusmäng (2-4 mängijale)
  • Meloodiamäng (tasuta režiim Push and Play väikelastele ja väiksematele)
  • Sõjamäng (2-4 täiskasvanule)

Teiseks on sellel suurepärane disain (meie vaatenurgast) ja seda saab hõlpsasti korrata.

Ja kolmandaks, see on maasõbralik, kuna võimaldab plastikut ringlusse võtta.

Selle juhendi lõpus on ka samm-sammult video juhuks, kui eelistate videovormingut.

Samm: osade loend

Osade nimekiri
Osade nimekiri
Osade nimekiri
Osade nimekiri

Kui teile see projekt meeldib, kuid teil pole hunnikut soovimatuid Lego klotse, on kõige lihtsam osta Lego Classic 10704 komplekt, milles on 900 tükki.

Siin on selle projekti loomiseks vajalike üksuste loend:

  • 1 kg (2 naela) soovimatuid Lego klotse (või sarnaseid klotse mõnelt teiselt brändilt, näiteks Mega Bloks)
  • 25 x 25 cm alusplaat Legole (või sarnasele teisele kaubamärgile). Lego baasil on 32 x 32 punkti. Kui teil seda pole, maksab baas umbes 3 dollarit, sh. postikulu, kui ostate veebist (otsingusõna "32 25 plokki")
  • 30 x 30 cm läbipaistev pleksiklaas (5 või 6 mm paksune)
  • 4 x Big Arcade stiilis 60 mm nuppe (soovitan punast, rohelist, sinist, kollast) (veebipoodide otsingutermin: "60mm arcade button"). Need on selle ehitise kõige kallim komponent, igaüks umbes 2 dollarit.
  • 2 x hetkeline nupp 16 mm raadiuses (ma soovitan valget ja musta) (otsingusõna: "16 mm nupp")
  • Lüliti toitenupp 27x21 mm (soovitan läbipaistvat punast 4 tihvtiga) (otsingusõna: "kiiklüliti 16a")
  • Arduino Nano
  • 1602 LCD -ekraan ja I2C ühendusmoodul
  • 2 x 4 oomi 5 W kõlarit, suurus 30 x 70 mm (saate kasutada mis tahes muid väikeseid, kuid CAD -joonistus on tehtud 30x70 mm jaoks)
  • 8 x 6 cm prototüüpplaat või 830 tihvtiga leivaplaat
  • 2x18650 laetavat akut (saab taaskasutada sülearvuti tühjast akust)
  • Kahekordne 18650 akuhoidik (otsingusõna: "hoidik 2 x 18650")
  • TP4056 laadimiskontroller ja tühjenduskaitse
  • 5 V astmemuundur (väikseim 500 mA sobib)
  • Väikesed asjad: mõned juhtmed, Mini-USB-kaabel või diy-pistik, Micro-USB-pistikupesa PCB-plaadil, M3 poldid/mutrid/seibid, 4 x ülemise kaane kruvi
  • Takistid:

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

2. samm: kasti ehitamine

Kasti ehitamine
Kasti ehitamine
Kasti ehitamine
Kasti ehitamine
Kasti ehitamine
Kasti ehitamine

See on projekti lihtsaim osa, mille saate oma lastele delegeerida.

Võtke Lego 32x32 punktplaat ja asetage seinad ümbertöödeldud osade abil. Kokku peaks teil olema umbes 9 kihti. Valisime aluse jaoks helehalli värvi, nii et juhusliku värvi tellistest seinad on põhirõhk.

Ükski kast pole sarnane. Kihtide ehitamisel olge loominguline. Taaskasutage isegi väikseid osi - need näevad lahedad välja. Ka ebakorrapärased kujundid näevad kena välja. Lisage aknad, autode tuuleklaasid, uksed ja kastid.

Kastil peab olema vähemalt üks täissuuruses Lego uks. See on vajalik klahvlüliti seina paigaldamiseks.

Samm: ülemise katte tegemine

Ülemise kaane tegemine
Ülemise kaane tegemine
Ülemise kaane tegemine
Ülemise kaane tegemine
Ülemise kaane tegemine
Ülemise kaane tegemine
Ülemise kaane tegemine
Ülemise kaane tegemine

Ülemine kate on valmistatud 5 või 6 mm pleksiklaasist (läbipaistev akrüülleht). Laadige alla CAD -joonis, pange see USB -mälupulgale ja minge lähimasse CNC -poodi - nad freesivad selle teie eest. CAD -joonis sisaldab ka kiiklüliti kinnitusplaati (vt pilti).

Peate ülemise plaadi viimistlema. Tehke serva kaldus liivapaberi ja puuplokiga. Samuti puurige augud kõlarite ja ekraani 1602 kinnitamiseks. 1602 ekraan vajab ka akrüüllehes LCD -akna küljele freesitud väikest kolmnurka (vt fotot). Ma tegin seda poole sügavusel, kasutades pöörlevat tööriista (dremel) ja väikest ruuterit.

Samm: lisage kõik komponendid ülemisele kaanele

Lisage kõik komponendid ülemisele kaanele
Lisage kõik komponendid ülemisele kaanele
Lisage kõik komponendid ülemisele kaanele
Lisage kõik komponendid ülemisele kaanele
Lisage kõik komponendid ülemisele kaanele
Lisage kõik komponendid ülemisele kaanele

Paigaldage suur 4 arkaadinuppu, 2 mängu muutmise/valimise nuppu, 2 kõlarit ja 1602 LCD + I2C moodul. Kõik on fikseeritud M3 kruvide + M3 seibide ja mutritega taga.

Enne arkaadnuppude paigaldamist - eemaldage LED -valgustihoidjad. Peate neid veidi muutma - vaadake järgmist sammu.

Samm: arkaadnuppude LED -ide modifitseerimine

Arkaadnuppude LED -ide modifitseerimine
Arkaadnuppude LED -ide modifitseerimine
Arkaadnuppude LED -ide modifitseerimine
Arkaadnuppude LED -ide modifitseerimine
Arkaadnuppude LED -ide modifitseerimine
Arkaadnuppude LED -ide modifitseerimine

Need arkaadnupud on loodud töötama 12 V pingel. Nad töötavad 5 V -ga, mis on selle projekti vaikepinge, kuid need on liiga hämarad. Niisiis eemaldasin arkaadnupudelt LED -pesad, libistasin LED -hoidikud välja ja eemaldasin takistitega LED -id. 460 oomi takistid tuleb keevitada ja asendada 100 oomiga. Kui see tehtud, panin kõik kokku ja paigaldasin hoidikutega LED -id nuppudesse.

6. samm: (valikuline) juhtnuppude sildid

(valikuline) juhtnuppude sildid
(valikuline) juhtnuppude sildid

Võib -olla märkasite 2 juhtnupul olevaid silte. Meie esimeses ehituse versioonis neid ei olnud, kuid otsustasin need lisada, kui ehitamist teist korda kordasin.

Mõlemal nupul on sõltuvalt mängu olekust mitu funktsiooni. Valge nupp alustab valitud mängu või kinnitab mõne mängu ajal valiku. Must nupp muudab valitud mängu või lahkub mängu ajal.

Ümmarguste siltide loomiseks vajate õhukest alumiiniumlehte (paksusega kuni 1 mm), augusae puurit, astmelist puurit ja täppiaugusid (vt pilti). Kõigepealt lõigake ring augusaega. Seejärel suurendate astmelise otsikuga siseläbimõõtu ja seejärel kasutate siltide loomiseks täppistantse. Tähtede nähtavamaks muutmiseks kasutage püsivat musta markerit (sharpie).

Samm 7: Breakout Board'i koostamine

Breakout Boardi tegemine
Breakout Boardi tegemine
Breakout Boardi tegemine
Breakout Boardi tegemine

Siin on teil kaks võimalust. Kasutage leivaplaati ja traati Arduino kaablitega leivaplaadi kaudu või paigaldage väike purunemine LCD -paneeli tagaküljele.

Esimese ehituse jaoks kasutasime leivaplaati (vt pilti). Teise ehituse jaoks otsustasime kulutada rohkem aega purunemisplaadi loomiseks. Funktsionaalsus ei muutu, kuid juhtmeid on vähem ja katkestus on peidetud LCD -paneeli alla.

Kui otsustate murdelauaga kaasa minna, võtke 8x6 prototüüpplaat ja lõigake see nagu pildil näidatud. Suuremat osa kasutatakse katkestuseks ja väiksemat toiteallika loomiseks.

Jootke Arduino Nano sellele protolauale.

Samm: ühenduste ühendamine

Ühenduste juhtmestik
Ühenduste juhtmestik
Ühenduste juhtmestik
Ühenduste juhtmestik
Ühenduste juhtmestik
Ühenduste juhtmestik

Valmistage mõned kaablid ette ja ühendage oma skeem, lülitid ja ühendused Nano külge vastavalt skeemile.

Sellest ajast peale, kui hakkasin kasutama keerdpaar -Etherneti kaableid - unustasin peavalu, kust hankida oma projektide jaoks juhtmed. Need on erinevat värvi ja mitmetuumalised, nii et need ei purune kergesti. Ainus asi, mida peate nendega töötades hoolitsema, on see, et jootmine peab olema väga kiire, et te ei põleks isolatsiooni.

Teisel pildil pange tähele, kuidas 100 oomi takistid on kõlarite ühendamiseks ühendatud.

Paar märkust ühenduste kohta:

  • Mustad/valged juhtnupud on ühendatud tihvtidest D2/3 otse maandusega, kuna sisemisi tõmbetakistusi kasutatakse nanos.
  • A4/5 on ühendatud I2C SDA/SCL kontaktidega. Seda on vaja LCD I2C mooduli jaoks.
  • Kõlarid peavad olema ühendatud D10/11 -ga, kuna need tihvtid on PWM -iga lubatud.
  • Kõigi maandusjuhtmete lihtsamaks ühendamiseks (neid on umbes 5) on soovitatav lisada maasiiniks väike vasktrass.

9. samm: nuppude ühendamine

Nuppude juhtmestik
Nuppude juhtmestik
Nuppude juhtmestik
Nuppude juhtmestik

Kõik arkaadnupud on ühendatud ühe tihvtiga A1 läbi takistite seeria. A1 on seadistatud sisemise analoog-tõmbena. See on üks neist Arduino vähetuntud omadustest, mis aitas meil säästa nuppudele minevate juhtmete arvu.

Seega toimub seadistamine järgmiselt: A1 -st esimese nupuni 1k takisti kaudu. Alates nupust 1 kuni nupuni 2 kuni 10 k. Nupult 2 nupule 3 kuni 10 k ja nupult 3 nupule 4 kuni 10 k. Iga "sulgemise" nupp ühendab maapinna. Kuna valgusdioodide iga nupu jaoks on juba maandus, on iga lüliti teine tihvt LED -iga maapinnaga ühendatud. Juhtmestiku mõistmiseks vaadake skeemi.

Siinkohal peaks Mini-USB-kaabli ühendamine Arduino Nanoga võimaldama teil pärast eskiisi üleslaadimist mängu mängida. Mängu teisaldamiseks on vaja ainult toiteallikat.

Samm: patareide paigaldamine

Patareide paigaldamine
Patareide paigaldamine

Ma kasutasin kahte ringlussevõetud 18650 elementi surnud sülearvuti akudest. Need on väiksema võimsusega (umbes 600 mAh), mida ma ei soovinud kasutada suurema koormusega rakenduste jaoks. Seade ei kasuta tegelikult nii palju energiat, nii et sellest peaks piisama, et mängu päevadeks käivitada.

Patareid on paigaldatud kahekordsesse 18650 patareipesasse ja toiteallika hõlpsaks kinnitamiseks on pistik.

Samm 11: USB -pesa pikendaja paigaldamine

USB -pesa pikendaja paigaldamine
USB -pesa pikendaja paigaldamine
USB -pesa pikendaja paigaldamine
USB -pesa pikendaja paigaldamine
USB -pesa pikendaja paigaldamine
USB -pesa pikendaja paigaldamine

Mäng peaks suutma püsivara laadida ja uuendada ilma demonteerimiseta. Nii et ma puurisin ühe ploki, et peita Micro-USB-pistik.

USB laiendamiseks tellisseinast Arduino Nano-ni võtsin Mini-USB-kaabli ja lõikasin USB-A otsa (suure USB-pistiku) ära ja võtsin juhtmed lahti. Minu puhul olid punased/mustad toiteallikad ja valged/rohelised D +/- ühendused.

D +/- tuleb joota Micro-USB jaotusele. 5 V ja maandus (punane/must) peavad läbima toiteallika.

Miks valiti Micro-USB jaotus, kui Nano kasutab Mini-USB-d? Lihtsalt seetõttu, et Micro-USB on kõikjal meie majapidamistes-seda kasutatakse telefonide ja muude seadmete laadimiseks. Nii saate mängu laadida ja telefoni kaabli abil püsivara uuendada:-)

12. samm: toiteallika valmistamine

Toiteallika valmistamine
Toiteallika valmistamine
Toiteallika valmistamine
Toiteallika valmistamine
Toiteallika valmistamine
Toiteallika valmistamine

Võtsin väiksema prototüüpplaadi ja jootsin selle peale TP4056 akulaadija ja kaitsemooduli ning ka 5V võimendi.

Sisend TP4056-sse läheb Micro-USB pesast. Akukaabel on kinnitatud TP4056 tihvtidele, mis on tähistatud kui B +/-. Nööpnõelad, mis on tähistatud kui OUT +/-, lähevad klahvlüliti sisse. Kiiklülitist lähevad +/- ühendused 5V võimendusmoodulisse ja võimendi väljundist on ühendatud USB-kaabli punased/mustad juhtmed.

Juhtmestiku mõistmiseks vaadake skeemi.

Samm 13: epoksiid -mikro -USB -katkestus

Epoksiid Micro Micro Breakout
Epoksiid Micro Micro Breakout
Epoksiid Micro Micro Breakout
Epoksiid Micro Micro Breakout

Kasutasin mõnda epoksiidi, et fikseerida Lego klotsis olev Micro-USB purunemine. Pärast selle kõvenemist on pistikupesa vastupidavam kui mobiiltelefonides, nii et lapsed saavad mängu laadida ja see ei purune.

Soovitan selle osa jaoks kasutada kiiresti kõvenevat epoksüüd. Kui teil seda pole, lisage vaigule veel veidi kõvendit ja laske sellel mõnda aega istuda.

Samm: paigaldage kiiklüliti, ühendage toitejuhe

Paigaldage kiiklüliti, ühendage toitejuhe
Paigaldage kiiklüliti, ühendage toitejuhe
Paigaldage kiiklüliti, ühendage toitejuhe
Paigaldage kiiklüliti, ühendage toitejuhe
Paigaldage kiiklüliti, ühendage toitejuhe
Paigaldage kiiklüliti, ühendage toitejuhe

See lüliti on massiivne. See on ette nähtud 250 V võrgupinge jaoks. Kuid ma kasutasin seda mudelit endiselt, sest see näeb välja suurepärane ja sobib ideaalselt tavalise Lego City uksega. Nii ma sisestasin lüliti paigaldusplaati ja seejärel kinnitasin plaadi telliskiviseinale 2 kruvi abil (seinad olid eelnevalt puuritud).

Samuti saab nüüd lõpuks paigaldada rakmed ja Lego klotsile epokseeritud Micro-USB katkestuse. Pange tähele, kuidas komponentide alusele kinnitamiseks kasutati täiendavaid telliseid.

Samm: kaane sulgemine

Kaane sulgemine
Kaane sulgemine

sisestage Mini-USB-kaabel Arduino Nano külge, mis on kinnitatud ülemise kaane külge ja sulgege kaas.

Puurisin seintesse 4 auku ja kasutasin 4 kruvi, et kinnitada ülemine osa karbi külge.

16. samm: kood

Kood
Kood

Mängu esimese versiooni olen kirjutanud mina, millele järgnesid sõbranna Alexi uued 4 versiooni, kes lisas veel 4 mängu ja puhastas koodi täiuslikult. Helide jaoks kasutasime ka Reybozi tööd - selle koodi abil tekitatud heli tase on hämmastav, võrreldes vaikimisi Arduino tooniteeki kasutava helitugevusega.

Nagu mainitud, on kood pärast laste ulatuslikku kvaliteedikontrolli katsetamist mitu kuud optimeeritud ja praegu oleme GitHubi üles laadinud versiooni 4.

Lähtekoodi uusim versioon:

Kõik, mida pead tegema, on installida 1602 I2C LCD raamatukogu (saadaval Arduino IDE raamatukoguhalduris) ja seejärel üles laadida meie kood.

Esmalt laadige üles nupp-calibration.ino ja salvestage paberilehele väärtused, mida iga Arcade Button toodab. See skript kustutab ka EEPROM -i, nii et tipptulemused lähtestatakse.

Pärast seda muudate menüüs Game-Settings.h kalibreeritud nuppude väärtusi ja laadite üles Lego-Games-Box.ino põhifaili ning saate mängimist alustada (eeldusel, et ühendasite kõik vastavalt ülaltoodud skeemile).

Märkus: kui teete seda mängu lastele, eemaldage palun Game-settings.h-st String GameTitle = {"Mälumäng", "Reaktsioonimäng", "Turniirimäng", "Meloodiamäng", "viimane kirje Tuumasõja mäng "}; Sellel viimasel kirjel on reeglid, kus iga mängija valib vaenlased ja võib olla lastele liiga vaenulik.

Samm 17: üksikasjalik juhendvideo

Kui teil on juhiste lugemise asemel lihtsam videot vaadata, siis siin on selle ehitise videoversioon.

18. samm: mängureeglid

Image
Image

Praegu on rakendatud 5 mängu. Kui teil on rohkem ideid mängude kohta, mida saaks selle kasti abil luua - andke meile sellest kommentaarides teada. Ma vaatan lühidalt üle iga mängu, selgitades reegleid ja mängimist.

Lülitage Lego Arcade Games Box sisse lülitamiseks küljel olevat klahvlülitit. Kõikide mängudega kaasnevad Mario nostalgilise mängu helid. Käivitamisel peaksite kuulma Mario mängu käivitusmeloodiat.

Kui olete alustanud, näete LCD -ekraanil mängu, mis on praegu valitud. Mängu muutmiseks vajutage musta nuppu.

Kui olete otsustanud, millist mängu soovite mängida, vajutage alustamiseks lihtsalt valget nuppu.

Kui soovite juba käimasolevast mängust väljuda - peate vajutama musta nuppu.

Käivitamisel saate helid välja lülitada (öörežiim), vajutades punast nuppu.

Mälumäng ("Simon-Says" -laadne, sarnane Touch Me mänguga)

Reeglid on hästi teada ja lihtsad. Mäng näitab teile märkmete/tulede jada ja peate seda kordama. Iga kord lisatakse järjestusele veel üks toon/tuli. Mida kauem te ellu jääte, seda parem on teie mälu. See sobib suurepäraselt laste ja täiskasvanute lühiajalise mälu treenimiseks.

Reaktsioonimäng (sarnane Whack-a-Mole mänguga)

Peate olema piisavalt kiire, et vajutada iga süttivat nuppu. Mida kauem mängite, seda kiiremini nupud süttivad. See sobib suurepäraselt laste ja täiskasvanute reaktsiooniks.

Võistlus-/võistlusmäng (2-4 mängijale)

Teile antakse 5 vooru. Igaüks peab pärast signaali andmist väga kiiresti oma nuppu vajutama (Mündi häälestus Mario poolt). Kes esimesena nupule vajutab, võidab vooru. Võitude arv arvutatakse 5 vooru lõpus ja võitja kuulutatakse välja.

Meloodiamäng (tasuta režiim Push and Play väikelastele ja väiksematele)

See sobib suurepäraselt väikelastele - see mängib nuppu vajutades ja all hoides vahelduvaid lugusid. Pärast esmast testimist lastega mõistsime, et meie väiksem, 1 -aastane, tahab tõesti mängida, kuid ei saa aru, KUIDAS. Selle mängu reeglid on - EI REEGELE. Võite vajutada mis tahes nuppu ja see tekitab helisid.

Sõjamäng (2-4 täiskasvanule)

Mu sõber Alex, kes programmeeris sellest mängukastist järgnevad versioonid, pakkus Trumpi/Kimi kriisi ajal selle mängu idee välja, kellel on suurem tuumanupp. Reeglid vajavad selgitamiseks eraldi videot (selle leiate siit ja siit), kuid lühidalt öeldes valite alguses mängijate arvu ja iga vooru ajal valib iga inimene oma vaenlase. Kui kõik on oma vaenlase välja valinud, hakkavad raketid lendama. Sellel, kes on valitud vaenlaseks, on mõni hetk aega vajutada nuppu, et saata ristmikraketti ja päästa oma riik. Ringid jätkuvad seni, kuni on jäänud vaid üks riik.

19. samm: lõpptulemus

Lõpptulemus
Lõpptulemus
Lõpptulemus
Lõpptulemus
Lõpptulemus
Lõpptulemus

Oleme 3 sõpra, kes veetsid aega meie lastele mängu loomiseks. Loodame tõesti, et teile meeldib mäng nii palju, et koostate nende juhiste järgi oma versiooni. Kui teil on küsimusi või ettepanekuid - postitage need kommentaaridesse.

Mäng Elu konkurss
Mäng Elu konkurss
Mäng Elu konkurss
Mäng Elu konkurss

Mänguelu konkursi teine auhind

Soovitan: