Sadržaj:

Arduino Arkadne lego kutije za igre: 19 koraka (sa slikama)
Arduino Arkadne lego kutije za igre: 19 koraka (sa slikama)

Video: Arduino Arkadne lego kutije za igre: 19 koraka (sa slikama)

Video: Arduino Arkadne lego kutije za igre: 19 koraka (sa slikama)
Video: CS50 2015 - Week 8, continued 2024, Srpanj
Anonim
Image
Image
Arduino Arkadne Lego Igre Box
Arduino Arkadne Lego Igre Box
Arduino Arkadne Lego Igre Box
Arduino Arkadne Lego Igre Box

Ako imate djecu, vjerojatno ćete se suočiti s istim problemima kao i mi s Lego setovima koje ste za njih kupili. Sastavljaju se i igraju s njima, ali se nakon nekog vremena kompleti pretvaraju u jednu hrpu cigli. Djeca odrastaju i ne znate što biste s ovom hrpom.

Odlučili smo reciklirati neželjene Lego kockice i stvorili arkadnu igru.

Ovaj korak po korak vodič rezultat je višemjesečnog rada kako bi igra bila ponovljiva i vrlo niske cijene. Gotovo svatko bi mogao ponoviti ovaj projekt! Kod je napisan na takav način da nema ovisnosti te će se kompajlirati na bilo kojoj Arduino ploči. I naravno da su naša djeca intenzivno testirala igre:-)

Po čemu se ova igra razlikuje od mnogih drugih koje su već objavljivane?

Prije svega, u njega je ugrađeno 5 igara:

  • Igra memorije (nalik "Simon-Says", slično igri Touch Me)
  • Reakcijska igra (slična igri Whack-a-Mole)
  • Natjecanje/Natjecateljska igra (za 2-4 igrača)
  • Melody Game (Push and Play besplatni način rada za malu djecu i manje)
  • Ratna igra (za 2-4 odrasle osobe)

Drugo, ima izvrstan dizajn (iz naše perspektive) i može se lako ponoviti.

I treće, ekološki je prihvatljiv jer vam omogućuje recikliranje plastike.

Na kraju ovog vodiča nalazi se i videozapis korak po korak u slučaju da više volite video format.

Korak 1: Popis dijelova

Popis dijelova
Popis dijelova
Popis dijelova
Popis dijelova

Ako vam se sviđa ovaj projekt, ali nemate hrpu neželjenih Lego kockica, najjednostavnije bi bilo kupiti Lego Classic 10704 set s 900 komada unutra.

Evo popisa stavki koje su vam potrebne za izradu ovog projekta:

  • 1 kg (2 lb) neželjenih Lego kockica (ili sličnih cigli druge marke, poput Mega blokova)
  • Osnovna ploča 25 x 25 cm za Lego (ili sličnu iz druge marke). Lego baza ima 32 x 32 točkice. Ako ga nemate - osnovica košta oko 3 USD uključeno. poštarina ako kupujete na mreži (pojam za pretraživanje "32 25 blokova")
  • 30 x 30 cm prozirni komad pleksiglasa (debljine 5 ili 6 mm)
  • 4 x 60 mm veliki gumbi u arkadnom stilu (preporučujem crvenu, zelenu, plavu, žutu) (pojam za pretraživanje internetskih trgovina: "arkadni gumb 60 mm"). Oni su najskuplja komponenta ove gradnje po cijeni od oko 2 USD svaki.
  • 2 x trenutni gumb u radijusu od 16 mm (preporučujem bijelo i crno) (pojam za pretraživanje: "gumb od 16 mm")
  • Uključivanje/isključivanje prekidača za uključivanje/isključivanje 27x21 mm montažna veličina (preporučujem prozirno crveno s 4 igle) (pojam za pretraživanje: "prekidač za klackalice 16a")
  • Arduino Nano
  • 1602 LCD zaslon i I2C priključni modul
  • 2 x 4 ohma 5W zvučnika, veličine 30 x 70 mm (možete koristiti bilo koje druge male, ali CAD crtež je izveden za 30x70 mm)
  • 8 x 6 cm prototipna ploča ili 830 iglica
  • 2x18650 punjive baterije (mogu se reciklirati iz ispražnjene baterije prijenosnog računala)
  • Dvostruki držač baterije 18650 (pojam za pretraživanje: "držač 2 x 18650")
  • TP4056 kontroler punjenja i zaštita od pražnjenja
  • Povećavajući pretvarač od 5 V (najmanji 500 mA je dovoljan)
  • Male stvari: neke žice, Mini-USB kabel ili utikač za kućnu radinost, Micro-USB utičnica na izlazu iz tiskane ploče, M3 vijci/matice/podloške, 4 x gornji poklopci
  • Otpornici:

    • 6 x 100 ohma
    • 1 x 1 k
    • 3 x 10 tisuća

Korak 2: Izgradnja kutije

Izgradnja kutije
Izgradnja kutije
Izgradnja kutije
Izgradnja kutije
Izgradnja kutije
Izgradnja kutije

Ovo je najlakši dio projekta koji možete prenijeti na svoju djecu.

Uzmite temeljnu ploču Lego 32x32 i postavite zidove pomoću recikliranih dijelova. Ukupno biste trebali imati oko 9 slojeva. Za podlogu smo odabrali svijetlosivu boju tako da su zidovi od opeke nasumične boje glavni fokus.

Nijedna kutija neće biti slična. Budite kreativni pri izgradnji slojeva. Reciklirajte čak i male dijelove - izgledaju super. I nepravilni oblici izgledaju lijepo. Dodajte prozore, vjetrobranska stakla na automobilima, vrata i kutije.

Kutija mora imati barem jedna Lego vrata pune veličine. To je potrebno za ugradnju prekidača u zid.

Korak 3: Izrada gornjeg poklopca

Izrada gornjeg poklopca
Izrada gornjeg poklopca
Izrada gornjeg poklopca
Izrada gornjeg poklopca
Izrada gornjeg poklopca
Izrada gornjeg poklopca
Izrada gornjeg poklopca
Izrada gornjeg poklopca

Gornji poklopac izrađen je od pleksiglasa od 5 ili 6 mm (prozirni akrilni lim). Preuzmite CAD crtež, stavite ga na USB stick i samo idite u najbližu CNC trgovinu - oni će vam ga izraditi. CAD crtež također uključuje montažnu ploču prekidača za klackalicu (vidi sliku).

Morat ćete dovršiti gornju ploču. Rubove kosite brusnim papirom i drvenim blokom. Također izbušite rupe za postavljanje zvučnika i zaslona 1602. Zaslon 1602 također zahtijeva mali trokut izrezan sa strane LCD prozora u akrilnoj ploči (vidi fotografiju). To sam učinio na pola dubine pomoću rotacijskog alata (dremel) i male glodalice.

Korak 4: Dodajte sve komponente na gornji poklopac

Dodajte sve komponente na gornji poklopac
Dodajte sve komponente na gornji poklopac
Dodajte sve komponente na gornji poklopac
Dodajte sve komponente na gornji poklopac
Dodajte sve komponente na gornji poklopac
Dodajte sve komponente na gornji poklopac

Instalirajte velika 4 arkadna gumba, 2 gumba za promjenu/odabir igre, 2 zvučnika i 1602 LCD + I2C modul. Sve je fiksirano vijcima M3 + M3 podloškama i maticama straga.

Prije nego instalirate arkadne gumbe - uklonite držače LED svjetla. Morat ćete ih malo modificirati - pogledajte sljedeći korak.

Korak 5: Promjena LED dioda u arkadnim gumbima

Promjena LED dioda u arkadnim gumbima
Promjena LED dioda u arkadnim gumbima
Promjena LED dioda u arkadnim gumbima
Promjena LED dioda u arkadnim gumbima
Promjena LED dioda u arkadnim gumbima
Promjena LED dioda u arkadnim gumbima

Ovi arkadni gumbi dizajnirani su za rad na 12V. Radit će s 5V što je zadani napon za ovaj projekt, ali bit će preslabi. Stoga sam uklonio LED utičnice s arkadnih gumba, izvukao držače LED dioda i uklonio LED diode s otpornicima. Otpornike od 460 ohma potrebno je odlemiti i zamijeniti sa 100 ohma. Kad sam završio, sve sam ponovno sastavio i LED diode s držačima ugradio u gumbe.

Korak 6: (izborno) Oznake kontrolnih gumba

(izborno) Oznake kontrolnih gumba
(izborno) Oznake kontrolnih gumba

Možda ste primijetili oznake na 2 upravljačke tipke. Naša prva verzija gradnje nije ih imala, ali odlučio sam ih dodati kad sam ponovio gradnju drugi put.

Oba gumba imaju više funkcija, ovisno o stanju igre. Bijeli gumb pokreće odabranu igru ili potvrđuje odabir tijekom neke od igara. Crni gumb mijenja odabranu igru ili izlazi iz nje tijekom igre.

Za izradu okruglih naljepnica potreban vam je tanki aluminijski lim (debljine najviše 1 mm), svrdlo sa rupom, stupnjevita svrdla i bušilice (vidi sliku). Prvo izrežite krug pomoću pile za rupe. Zatim povećavate unutarnji promjer stupnjevitim bitom, a zatim koristite slova za stvaranje etiketa. Da biste slova učinili vidljivijima, upotrijebite trajni crni marker (oštricu).

Korak 7: Izrada ploče za razbijanje

Izrada Odbojne ploče
Izrada Odbojne ploče
Izrada Odbojne ploče
Izrada Odbojne ploče

Ovdje imate dvije mogućnosti. Ili upotrijebiti matičnu ploču i ožičiti Arduino kablovima kroz matičnu ploču ili instalirati mali otvor na stražnjoj strani LCD zaslona.

Za prvu izradu koristili smo ploču (vidi sliku). Za drugu smo gradnju odlučili potrošiti više vremena na stvaranje ploče za razbijanje. Funkcionalnost se ne mijenja, ali ima manje žica i prekid je skriven ispod LCD zaslona.

Ako se odlučite za ploču za razbijanje, uzmite prototipnu ploču 8x6 i izrežite je kao što je prikazano na slici. Veći dio će se koristiti za probijanje, a manji za stvaranje napajanja.

Lemite Arduino Nano na ovu proto ploču.

Korak 8: Ožičenje veza

Ožičenje veza
Ožičenje veza
Ožičenje veza
Ožičenje veza
Ožičenje veza
Ožičenje veza

Pripremite neke kabele i ožičite svoje postavke, sklopke i veze s Nano prema dijagramu.

Otkad sam počeo koristiti Ethernet kablove s upletenim paricama - zaboravio sam na glavobolju gdje tražiti žice za svoje projekte. Različite su boje i višejezgrene pa se ne lome lako. Jedino o čemu morate voditi računa pri radu s njima je da lemljenje mora biti vrlo brzo kako ne biste spalili izolaciju.

Primijetite na drugoj slici kako su otpornici od 100 ohma ožičeni za povezivanje sa zvučnicima.

Nekoliko napomena o vezama:

  • Crno/bijeli upravljački gumbi povezani su s pinova D2/3 izravno na masu jer se u Nano-u koriste unutarnji pull-up otpornici.
  • A4/5 spojeni su na I2C SDA/SCL pinove. To je potrebno za LCD I2C modul.
  • Zvučnici moraju biti spojeni na D10/11 jer su ti pinovi omogućeni PWM.
  • Preporuča se dodati mali bakreni vod kao uzemljenje za lakše spajanje svih uzemljenih žica (bit će ih oko 5).

Korak 9: Ožičenje gumba

Ožičenje gumba
Ožičenje gumba
Ožičenje gumba
Ožičenje gumba

Svi arkadni gumbi povezani su s jednim pinom A1 kroz niz otpornika. A1 je postavljen kao Interni analogni pull-up. Ovo je jedna od onih malo poznatih značajki Arduina koja nam je pomogla uštedjeti na broju žica koje idu do gumba.

Dakle, postavljanje ide ovako: od A1 do prvog gumba kroz 1k otpornik. Od gumba1 do gumba2 do 10k. Od gumba2 do gumba3 do 10k i od gumba3 do gumba4 do 10k. Svaki gumb na "zatvori" stanje kratki je do zemlje. Budući da na svakom gumbu za LED diode već postoji uzemljenje, drugi pin svake sklopke spojen je na uzemljenje s LED -a. Pogledajte shemu kako biste razumjeli ožičenje.

U tom trenutku, priključivanje Mini-USB kabela u Arduino Nano trebalo bi vam omogućiti da igrate igru nakon učitavanja skice. Sve što trebate je napajanje kako biste igru učinili prenosivom.

Korak 10: Ugradnja baterija

Ugradnja baterija
Ugradnja baterija

Koristio sam dvije reciklirane ćelije 18650 iz ispražnjenih baterija prijenosnog računala. To su oni manjeg kapaciteta (oko 600 mAh) koje nisam želio koristiti za aplikacije s većim opterećenjem. Uređaj zapravo ne koristi toliko energije pa bi to trebalo biti dovoljno za igru danima.

Baterije su ugrađene u dvostruki držač baterija 18650, a postoji i priključak za jednostavno priključivanje na izvor napajanja.

Korak 11: Instaliranje USB utičnice Extender

Instaliranje USB utičnice za proširenje
Instaliranje USB utičnice za proširenje
Instaliranje USB utičnice za proširenje
Instaliranje USB utičnice za proširenje
Instaliranje USB utičnice za proširenje
Instaliranje USB utičnice za proširenje

Igra bi trebala moći puniti i nadograđivati firmware bez demontaže. Tako sam izbušio jedan od blokova kako bih sakrio Micro-USB konektor.

Za proširenje USB-a sa zidane opeke na Arduino Nano, uzeo sam Mini-USB kabel i odrezao USB-A kraj (veliki USB priključak) i ogolio žice. U mom slučaju, crveno/crno je bilo napajanje, a bijelo/zeleno D +/- veze.

D +/- potrebno je lemiti na Micro-USB prekid. 5V i uzemljenje (crveno/crno) moraju proći kroz napajanje.

Zašto je odabir Micro-USB prekidača ako Nano koristi Mini-USB? Jednostavno zato što je Micro-USB posvuda u našim kućanstvima-koristi se za punjenje telefona i drugih uređaja. Tako ćete moći napuniti igru i nadograditi firmver svojim telefonskim kabelom:-)

Korak 12: Uključivanje izvora napajanja

Izrada izvora napajanja
Izrada izvora napajanja
Izrada izvora napajanja
Izrada izvora napajanja
Izrada izvora napajanja
Izrada izvora napajanja

Uzeo sam manju prototipnu ploču i lemio je na nju punjač i zaštitni modul TP4056, kao i pojačivač od 5 V.

Ulaz u TP4056 ide iz Micro-USB utičnice. Kabel baterije pričvršćen je na pinove TP4056 označene kao B +/-. Igle označene kao OUT +/- idu u prekidač za navigaciju. S prekidača za ljuljanje +/- veze ulaze u 5V pojačivački modul, a s izlaznog pojačala povezane su crvene/crne žice s ogoljenog USB kabela.

Pogledajte dijagram kako biste razumjeli ožičenje.

Korak 13: Epoksidni mikro USB proboj

Epoksid Micro USB Breakout
Epoksid Micro USB Breakout
Epoksid Micro USB Breakout
Epoksid Micro USB Breakout

Koristio sam malo epoksida da popravim Micro-USB proboj u Lego kocki. Nakon što se stvrdne, utičnica će biti čvršća od onih u mobitelima pa će djeca moći napuniti igru i neće se slomiti.

Preporučujem da za ovaj dio upotrijebite epoksid koji se brzo stvrdnjava. Ako ga nemate, u smolu dodajte još malo učvršćivača i ostavite da malo odstoji.

Korak 14: Instalirajte prekidač za ljuljanje, spojite kabelski svežanj

Ugradite prekidač za ljuljanje, spojite kabelski svežanj
Ugradite prekidač za ljuljanje, spojite kabelski svežanj
Ugradite prekidač za ljuljanje, spojite kabelski svežanj
Ugradite prekidač za ljuljanje, spojite kabelski svežanj
Ugradite prekidač za ljuljanje, spojite kabelski svežanj
Ugradite prekidač za ljuljanje, spojite kabelski svežanj

Ovaj prekidač je ogroman. Dizajniran je za mrežni napon 250V. No, i dalje sam koristio ovaj model jer izgleda odlično i savršeno se uklapa u standardna vrata Lego Cityja. Pa sam umetnuo prekidač u montažnu ploču, a zatim pričvrstio ploču na zid od opeke pomoću 2 vijka (zidovi su prethodno izbušeni).

Također bi se napokon mogao instalirati i uprtač, kao i Micro-USB proboj koji je epoksidiran u Lego ciglu. Uočite kako su neke dodatne cigle korištene za pričvršćivanje komponenti na podlogu.

Korak 15: Zatvaranje poklopca

Zatvaranje poklopca
Zatvaranje poklopca

umetnite Mini-USB kabel u Arduino Nano koji je pričvršćen na gornji poklopac i zatvorite poklopac.

Izbušio sam 4 rupe u zidovima i pomoću 4 vijka pričvrstio vrh na kutiju.

Korak 16: Kôd

Kod
Kod

Prvu verziju igre sam napisao, a zatim su stigle nove 4 verzije mog prijatelja Alexa koji je dodao još 4 igre i očistio kod do savršenstva. Za zvukove smo također koristili djelo Reyboza - razina zvuka proizvedena pomoću ovog koda nevjerojatna je u usporedbi s onim što standardno dolazi pomoću Tonu biblioteke Arduina.

Kao što je spomenuto, kôd je optimiziran mjesecima nakon opsežnog QA testiranja od strane djece, a trenutno smo učitali verziju 4 na GitHub.

Najnovija verzija izvornog koda:

Sve što trebate učiniti je instalirati 1602 I2C LCD knjižnicu (dostupnu u Arduino IDE upravitelju knjižnice), a zatim učitati naš kôd.

Prvo učitajte gumb calibration.ino i na komadu papira zabilježite vrijednosti koje proizvodi svako arkadno dugme. Ova će skripta također izbrisati EEPROM kako bi se poništili najbolji rezultati.

Nakon toga mijenjate u Game-Settings.h vrijednosti gumba koje ste kalibrirali i učitavate glavnu Lego-Games-Box.ino datoteku i možete početi igrati (pod uvjetom da ste sve povezali prema gore navedenoj shemi).

Napomena: ako ovu igru radite za djecu, uklonite u Game-settings.h zadnji unos iz String GameTitle = {"Memory Game", "Reaction Game", "Tournament Game", "Melody Game", " Igra nuklearnog rata "}; Ovaj zadnji unos ima pravila prema kojima svaki igrač bira neprijatelje i može biti previše neprijateljski raspoložen prema djeci.

Korak 17: Detaljan video upute

U slučaju da vam je lakše gledati videozapis umjesto čitati upute, evo video verzije ove verzije.

Korak 18: Pravila igre

Image
Image

Trenutno je implementirano 5 igara. Ako imate više ideja o igrama koje bi se mogle stvoriti pomoću ovog okvira - javite nam u komentarima. Ukratko ću opisati svaku igru objašnjavajući pravila i način igranja.

Okrenite prekidač za navigaciju sa strane da biste uključili Lego Arcade Games Box. Sve igre popraćene su zvukovima iz nostalgične igre Mario. Prilikom pokretanja trebali biste čuti melodiju pokretanja igre Mario.

Nakon početka, na LCD zaslonu ćete vidjeti igru koja je sada odabrana. Za promjenu igre pritisnite crni gumb.

Kad odlučite koju igru želite igrati, samo pritisnite bijelo dugme za početak.

Ako želite izaći iz igre koja je već pokrenuta - morate pritisnuti crni gumb.

Prilikom pokretanja možete isključiti zvukove (noćni način rada) pritiskom na crveni gumb.

Igra memorije (nalik "Simon-Says", slično igri Touch Me)

Pravila su poznata i jednostavna. Igra vam prikazuje niz bilješki/svjetla i morate je ponoviti. Svaki put u niz se dodaje još jedan ton/svjetlo. Što duže preživljavate, bolje vam je pamćenje. Izvrsno je za treniranje kratkotrajnog pamćenja djece i odraslih.

Reakcijska igra (slična igri Whack-a-Mole)

Morate biti dovoljno brzi da pritisnete svaki gumb koji svijetli. Što dulje svirate, gumbi se brže pale. Ovaj je odličan za treniranje reakcije djece i odraslih.

Natjecanje/Natjecateljska igra (za 2-4 igrača)

Dobili ste 5 rundi. Svatko mora jako brzo pritisnuti svoju tipku nakon što se da signal (melodija s novčićem iz Maria). Tko prvi pritisne gumb, pobjeđuje u rundi. Broj pobjeda računa se na kraju 5 rundi i proglašava se pobjednik.

Melody Game (Push and Play besplatni način rada za malu djecu i manje)

Ovaj je izvrstan za malu djecu - svira izmjenične melodije kada pritisnete i držite gumb. Nakon početnog testiranja s djecom shvatili smo da se naš manji koji je imao 1 godinu zaista želi igrati, ali ne razumije KAKO. Pravila ove igre su - NEMA PRAVILA. Možete pritisnuti bilo koji gumb i on će proizvoditi zvukove.

Ratna igra (za 2-4 odrasle osobe)

Moj prijatelj Alex, koji je programirao slijedeće verzije ove kutije za igre, došao je na ideju za ovu igru tijekom Trumpove/Kimove krize o tome tko ima veći nuklearni gumb. Za objašnjenje pravila potreban je zaseban video zapis (možete ga pronaći ovdje i ovdje), ali ukratko, na početku birate broj igrača, a tijekom svake runde svaka osoba bira svog neprijatelja. Nakon što je svatko odabrao svog neprijatelja, projektili počinju letjeti. Onaj koji je izabran za neprijatelja ima nekoliko trenutaka da pritisne gumb za slanje projektila za raskrižje i spas svoje zemlje. Runde se nastavljaju sve dok ne ostane samo jedna država.

Korak 19: Konačni rezultat

Konačni rezultat
Konačni rezultat
Konačni rezultat
Konačni rezultat
Konačni rezultat
Konačni rezultat

Mi smo 3 prijatelja koji su potrošili vrijeme na izradu igre za našu djecu. Zaista se nadamo da će vam se igra toliko svidjeti da ćete pomoću ovih uputa izgraditi vlastitu verziju. Ako imate bilo kakvih pitanja ili prijedloga - slobodno ih postavite u komentarima.

Igra Life Contest
Igra Life Contest
Igra Life Contest
Igra Life Contest

Druga nagrada na natjecanju Game Life

Preporučeni: