Cuprins:

Arduino Arcade Lego Games Box: 19 pași (cu imagini)
Arduino Arcade Lego Games Box: 19 pași (cu imagini)

Video: Arduino Arcade Lego Games Box: 19 pași (cu imagini)

Video: Arduino Arcade Lego Games Box: 19 pași (cu imagini)
Video: REAL RACING 3 LEAD FOOT EDITION 2024, Iulie
Anonim
Image
Image
Arduino Arcade Lego Games Box
Arduino Arcade Lego Games Box
Arduino Arcade Lego Games Box
Arduino Arcade Lego Games Box

Dacă aveți copii, probabil că vă confruntați cu aceleași probleme ca și noi cu seturile Lego pe care le-ați cumpărat pentru ei. Se asamblează și se joacă cu ei, dar după un timp seturile se transformă într-o singură grămadă de cărămizi. Copiii cresc și nu știi ce să faci cu această grămadă.

Am decis să reciclăm cărămizile Lego nedorite și am creat un joc arcade.

Acest ghid pas cu pas este rezultatul mai multor luni de muncă pentru a face jocul repetabil și cu costuri foarte mici. Aproape oricine ar putea repeta acest proiect! Codul a fost scris în așa fel încât să nu aibă dependențe și să fie compilat pe orice placă Arduino. Și, desigur, jocurile au fost testate intens de copiii noștri:-)

În ce este diferit acest joc de multe altele care au fost publicate înainte?

În primul rând, există 5 jocuri încorporate:

  • Joc de memorie (similar cu „Simon-Says”, similar jocului Touch Me)
  • Joc de reacție (similar jocului Whack-a-Mole)
  • Joc concurs / competiție (pentru 2-4 jucători)
  • Melody Game (modul Push and Play gratuit pentru copii mici și cei mai mici)
  • Joc de război (pentru 2-4 adulți)

În al doilea rând, are un design excelent (din perspectiva noastră) și poate fi repetat cu ușurință.

Și în al treilea rând, este ecologic, deoarece vă permite să reciclați plasticul.

La sfârșitul acestui ghid există și un videoclip pas cu pas în cazul în care preferați formatul video.

Pasul 1: Lista pieselor

Lista de componente
Lista de componente
Lista de componente
Lista de componente

Dacă îți place acest proiect, dar nu ai o grămadă de cărămizi Lego nedorite, cel mai ușor ar fi să cumperi Lego Classic 10704 set cu 900 de bucăți în interior.

Iată lista articolelor de care veți avea nevoie pentru a crea acest proiect:

  • 1 kg (2 lb) de cărămizi Lego nedorite (sau cărămizi similare de la o altă marcă, cum ar fi Mega Bloks)
  • Placă de bază de 25 x 25 cm pentru Lego (sau similar de la o altă marcă). Baza Lego are 32 x 32 puncte. Dacă nu aveți - baza costă în jur de 3 $ incl. poștale dacă cumpărați online (termenul de căutare „32 25 blocuri”)
  • Piesa de plexiglas transparent 30 x 30 cm (5 sau 6 mm grosime)
  • 4 x butoane Big Arcade în stil 60mm (recomand roșu, verde, albastru, galben) (termen de căutare pentru magazinele online: „buton arcade 60mm”). Acestea sunt cea mai scumpă componentă a acestei construcții la aproximativ 2 $ fiecare.
  • 2 x buton momentan cu rază de 16 mm (recomand alb și negru) (termen de căutare: „buton de 16 mm”)
  • Comutator basculant pornire / oprire dimensiune montare 27x21mm (recomand roșu transparent cu 4 pini) (termen de căutare: "buton basculant 16a")
  • Arduino Nano
  • Afișaj LCD 1602 și modul de conectare I2C
  • 2 difuzoare de 4ohm 5W, dimensiune 30 x 70 mm (puteți utiliza oricare altele mici, dar desenul CAD se face pentru 30x70mm)
  • Placă prototip de 8 x 6 cm sau o placă de prindere de 830 pini
  • 2x18650 baterii reîncărcabile (pot fi reciclate din bateria de laptop moartă)
  • Suport baterie dublu 18650 (termen de căutare: „suport 2 x 18650”)
  • TP4056 controler de încărcare și protector de descărcare
  • Convertor de 5V step-up (cel mai mic 500mA va face)
  • Lucruri mici: niște fire, cablu Mini-USB sau mufă de bricolaj, mufă Micro-USB pe circuitul PCB, șuruburi M3 / piulițe / șaibe, 4 șuruburi de acoperire superioare
  • Rezistențe:

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

Pasul 2: Construirea cutiei

Construind Cutia
Construind Cutia
Construind Cutia
Construind Cutia
Construind Cutia
Construind Cutia

Aceasta este cea mai ușoară parte a proiectului pe care o puteți delega copiilor dvs.

Luați placa de bază Lego 32x32 punct și așezați pereții folosind piesele reciclate. Ar trebui să aveți în jur de 9 straturi în total. Am ales culoarea gri deschis pentru bază, astfel încât pereții de cărămidă de culoare aleatorie să fie punctul central.

Nicio cutie nu va fi similară. Fii creativ atunci când construiești straturile. Reciclați chiar și piesele mici - arată rece. De asemenea, și formele neregulate arată frumos. Adăugați geamuri, parbrize de la mașini, uși și cutii.

Cutia trebuie să aibă cel puțin o ușă Lego mare. Acest lucru este necesar pentru a instala comutatorul basculant în perete.

Pasul 3: Realizarea capacului superior

Realizarea capacului superior
Realizarea capacului superior
Realizarea capacului superior
Realizarea capacului superior
Realizarea capacului superior
Realizarea capacului superior
Realizarea capacului superior
Realizarea capacului superior

Capacul superior este realizat din plexiglas de 5 sau 6 mm (folie acrilică transparentă). Descărcați desenul CAD, puneți-l pe un stick USB și mergeți la cel mai apropiat magazin CNC - îl vor prelucra pentru dvs. Desenul CAD include și placa de montare a comutatorului basculant (a se vedea imaginea).

Va trebui să faceți o finisare a plăcii superioare. Faceți marginea teșită cu hârtia de nisip și un bloc de lemn. De asemenea, găuriți găurile pentru a monta difuzoarele și afișajul 1602. Afișajul 1602 necesită, de asemenea, un mic triunghi frezat pe partea laterală a ferestrei LCD din foaia acrilică (vezi foto). Am făcut acest lucru la jumătate de adâncime folosind instrumentul rotativ (dremel) și un mic bit de router.

Pasul 4: Adăugați toate componentele la capacul superior

Adăugați toate componentele la capacul superior
Adăugați toate componentele la capacul superior
Adăugați toate componentele la capacul superior
Adăugați toate componentele la capacul superior
Adăugați toate componentele la capacul superior
Adăugați toate componentele la capacul superior

Instalați cele 4 butoane mari arcade, 2 butoane de schimbare / selectare a jocului, 2 difuzoare și un modul LCD 1602 + I2C. Totul este fixat cu șuruburi M3 + șaibe M3 și piulițe în spate.

Înainte de a instala butoanele arcade - scoateți suporturile de lumină LED. Va trebui să le modificați puțin - vedeți pasul următor.

Pasul 5: Modificarea LED-urilor din butoanele Arcade

Modificarea LED-urilor din butoanele Arcade
Modificarea LED-urilor din butoanele Arcade
Modificarea LED-urilor din butoanele Arcade
Modificarea LED-urilor din butoanele Arcade
Modificarea LED-urilor din butoanele Arcade
Modificarea LED-urilor din butoanele Arcade

Aceste butoane arcade sunt proiectate să funcționeze la 12V. Vor funcționa cu 5V, care este tensiunea implicită pentru acest proiect, dar vor fi prea slabe. Așa că am scos prizele cu LED-uri din butoanele arcade, am scos suporturile pentru LED-uri și am scos LED-urile cu rezistențe. Rezistoarele de 460ohm trebuie desoldate și înlocuite cu 100ohm. După ce am terminat, am asamblat totul înapoi și am instalat LED-urile cu suporturi în butoane.

Pasul 6: (opțional) Etichetele butoanelor de control

(opțional) Etichete butoane de control
(opțional) Etichete butoane de control

Este posibil să fi observat etichetele de pe cele 2 butoane de control. Prima noastră versiune a versiunii nu le avea, dar am decis să le adaug când am repetat versiunea a doua oară.

Ambele butoane au mai multe funcții în funcție de starea jocului. Butonul alb pornește jocul selectat sau confirmă selecția în timpul unor jocuri. Butonul negru modifică jocul selectat sau iese în timpul jocului.

Pentru a crea etichete rotunde aveți nevoie de o foaie subțire de aluminiu (grosime maximă de 1 mm), un burghiu cu ferăstrău, un burghiu în trepte și știfturi cu litere (a se vedea imaginea). Mai întâi tăiați cercul cu ferăstrăul. Apoi măriți diametrul interior cu bitul în trepte și apoi folosiți știfturi cu litere pentru a crea etichete. Pentru a face literele mai vizibile, utilizați un marker negru permanent (sharpie).

Pasul 7: Realizarea panoului Breakout

Realizarea panoului Breakout
Realizarea panoului Breakout
Realizarea panoului Breakout
Realizarea panoului Breakout

Aveți două opțiuni aici. Fie pentru a utiliza placa de cablu și sârmă Arduino cu cabluri de pe panou, fie pentru a instala o mică rupere în partea din spate a panoului LCD.

Pentru prima versiune am folosit panoul de verificare (a se vedea imaginea). Pentru cea de-a doua versiune, am decis să petrecem mai mult timp pentru a crea un panou. Funcționalitatea nu se schimbă, dar există mai puține fire și spargerea este ascunsă sub panoul LCD.

Dacă alegeți să mergeți cu placa de breakout, luați placa prototip 8x6 și tăiați-o așa cum se arată pe imagine. O parte mai mare va fi utilizată pentru spargere și mai mică pentru crearea sursei de alimentare.

Lipiți Arduino Nano pe această placă proto.

Pasul 8: Cablarea conexiunilor

Cablarea conexiunilor
Cablarea conexiunilor
Cablarea conexiunilor
Cablarea conexiunilor
Cablarea conexiunilor
Cablarea conexiunilor

Pregătiți câteva cabluri și conectați-vă configurarea, comutatoarele și conexiunile la Nano conform schemei.

De când am început să folosesc cablurile cu perechi torsadate Ethernet - am uitat de durerea de cap unde să-mi găsesc firele pentru proiectele mele. Au culori diferite și sunt multicore, astfel încât să nu se rupă ușor. Singurul lucru de care trebuie să aveți grijă atunci când lucrați cu ei este că lipirea trebuie să fie foarte rapidă, astfel încât să nu ardeți izolația.

Observați pe a doua imagine cum sunt conectate rezistențele de 100ohm pentru conexiunile la difuzoare.

Puține note despre conexiuni:

  • Butoanele de control negru / alb sunt conectate de la pinii D2 / 3 direct la masă, deoarece rezistențele interne de tragere sunt utilizate în Nano.
  • A4 / 5 sunt conectate la pinii I2C SDA / SCL. Acest lucru este necesar pentru modulul LCD I2C.
  • Boxele trebuie să fie conectate la D10 / 11 deoarece acești pini sunt activați PWM.
  • Se recomandă adăugarea unei linii mici de cupru ca șină de împământare pentru o conexiune mai ușoară a tuturor firelor de masă (vor exista aproximativ 5 dintre ele).

Pasul 9: Cablarea butoanelor

Cablarea butoanelor
Cablarea butoanelor
Cablarea butoanelor
Cablarea butoanelor

Toate butoanele Arcade sunt conectate la un singur pin A1 printr-o serie de rezistențe. A1 este configurat ca Internal Analog Pull-up. Aceasta este una dintre acele caracteristici puțin cunoscute ale Arduino care ne-au ajutat să economisim numărul de fire care ies la butoane.

Deci, configurarea se face după cum urmează: de la A1 la primul buton, până la rezistorul 1k. De la butonul 1 la butonul 2 până la 10k. De la butonul2 la butonul3 până la 10k și de la butonul3 la butonul4 până la 10k. Fiecare buton de pe „închide” pantaloni scurți de stat la sol. Deoarece există deja Masă pe fiecare buton pentru LED-uri, al doilea pin al fiecărui comutator este conectat la sol de la LED. Aruncați o privire la diagramă pentru a înțelege cablajul.

La acel moment, conectarea unui cablu Mini-USB la Arduino Nano ar trebui să vă permită să jucați jocul după încărcarea schiței. Tot ce aveți nevoie este o sursă de alimentare pentru a face jocul portabil.

Pasul 10: Instalarea bateriilor

Instalarea bateriilor
Instalarea bateriilor

Am folosit 18650 de celule reciclate din bateriile de laptop moarte. Acestea sunt cele de capacitate mai mică (aproximativ 600mAh) pe care nu am vrut să le folosesc pentru aplicații cu sarcină mai mare. Dispozitivul nu folosește cu adevărat atât de multă putere, așa că acest lucru ar trebui să fie suficient pentru a rula jocul zile întregi.

Bateriile sunt instalate într-un suport dublu 18650 și există un conector pentru o atașare ușoară la sursa de alimentare.

Pasul 11: Instalarea dispozitivului USB Socket Extender

Instalarea dispozitivului USB Socket Extender
Instalarea dispozitivului USB Socket Extender
Instalarea dispozitivului USB Socket Extender
Instalarea dispozitivului USB Socket Extender
Instalarea dispozitivului USB Socket Extender
Instalarea dispozitivului USB Socket Extender

Jocul ar trebui să poată reîncărca și actualiza firmware-ul fără dezasamblare. Așa că am forat unul dintre blocuri pentru a ascunde conectorul Micro-USB.

Pentru a extinde USB-ul de la peretele de cărămidă la Arduino Nano, am luat un cablu Mini-USB și am tăiat capătul USB-A (conectorul USB mare) și am dezbrăcat firele. În cazul meu, roșu / negru erau de putere și alb / verde erau conexiuni D +/-.

D +/- trebuie lipit pe micro-USB breakout. 5V și solul (roșu / negru) trebuie să treacă prin sursa de alimentare.

De ce a fost ales Micro-USB Breakout dacă Nano folosește Mini-USB? Pur și simplu pentru că Micro-USB este peste tot în gospodăriile noastre - este folosit pentru a încărca telefoane și alte dispozitive. Deci, veți putea încărca jocul și actualiza firmware-ul cu cablul telefonului:-)

Pasul 12: Realizarea sursei de alimentare

Realizarea sursei de alimentare
Realizarea sursei de alimentare
Realizarea sursei de alimentare
Realizarea sursei de alimentare
Realizarea sursei de alimentare
Realizarea sursei de alimentare

Am luat placa prototip mai mică și am lipit chiar pe ea încărcătorul bateriei TP4056 și modulul de protecție, precum și rapelul de 5V.

Intrarea în TP4056 se face de la mufa Micro-USB. Cablul bateriei este atașat la pinii TP4056 marcați ca B +/-. Pinii marcați OUT +/- intră în comutatorul basculant. De la comutatorul basculant, conexiunile +/- intră în modulul de rapel 5V, iar de la ieșirea rapel sunt conectate firele roșu / negru de la cablul USB dezbrăcat.

Aruncați o privire la diagramă pentru a înțelege cablajul.

Pasul 13: Epoxy the Micro USB Breakout

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

Am folosit niște epoxidice pentru a remedia defecțiunea Micro-USB din cărămida Lego. După ce se vindecă, soclul va fi mai robust decât cele găsite în telefoanele mobile, astfel încât copiii să poată reîncărca jocul și nu se va sparge.

Vă recomandăm să utilizați epoxidic cu întărire rapidă pentru această parte. Dacă nu aveți, adăugați puțin mai mult din întăritor la rășină și lăsați-l să stea o vreme.

Pasul 14: Instalați comutatorul basculant, conectați cablajul de alimentare

Instalați comutatorul basculant, conectați cablajul de alimentare
Instalați comutatorul basculant, conectați cablajul de alimentare
Instalați comutatorul basculant, conectați cablajul de alimentare
Instalați comutatorul basculant, conectați cablajul de alimentare
Instalați comutatorul basculant, conectați cablajul de alimentare
Instalați comutatorul basculant, conectați cablajul de alimentare

Acest comutator este masiv. Este proiectat pentru tensiunea de rețea de 250V. Dar am folosit totuși acest model, deoarece arată minunat și se potrivește perfect unei uși standard Lego City. Așa că am introdus întrerupătorul în placa de montare și apoi am fixat placa pe peretele de cărămidă folosind cele 2 șuruburi (pereții au fost pre-găuriți).

De asemenea, cablajul ar putea fi acum instalat în sfârșit, precum și micro-USB-ul care a fost epoxidat în cărămida Lego. Observați cum au fost folosite câteva cărămizi suplimentare pentru a atașa componentele la bază.

Pasul 15: Închiderea capacului

Închiderea capacului
Închiderea capacului

introduceți cablul Mini-USB în Arduino Nano care este fixat pe capacul superior și închideți capacul.

Am forat în prealabil 4 găuri în pereți și am folosit 4 șuruburi pentru a fixa partea superioară la cutie.

Pasul 16: Codul

Codul
Codul

Prima versiune a jocului a fost scrisă de mine, urmată de noi 4 versiuni de la prietenul meu Alex, care a adăugat încă 4 jocuri și a curățat codul la perfecțiune. Am folosit și lucrarea lui Reyboz pentru sunete - nivelul sunetului produs folosind acest cod este uimitor în comparație cu ceea ce vine în mod implicit folosind biblioteca Tone din Arduino.

După cum s-a menționat, codul a fost optimizat de luni de zile după testarea extinsă a QA de către copii și în prezent am încărcat versiunea 4 pe GitHub.

Cea mai recentă versiune a codului sursă:

Tot ce trebuie să faceți este să instalați biblioteca LCD 1602 I2C (disponibilă în managerul de bibliotecă Arduino IDE) și apoi să încărcați codul nostru.

Mai întâi încărcați butonul-calibration.ino și faceți o înregistrare pe o bucată de hârtie a valorilor pe care le produce fiecare buton Arcade. Acest script va șterge, de asemenea, EEPROM, astfel încât scorurile de top să fie resetate.

După aceea, schimbați în Game-Settings.h valorile butoanelor pe care le-ați calibrat și încărcați fișierul principal Lego-Games-Box.ino și puteți începe să jucați (cu condiția să conectați totul conform schemei date mai sus).

Notă: dacă faceți acest joc pentru copii, vă rugăm să eliminați în Game-settings.h ultima intrare din String GameTitle = {"Joc de memorie", "Joc de reacție", "Joc de turneu", "Joc de melodie", " Joc de război nuclear "}; Această ultimă intrare are reguli în care fiecare jucător selectează dușmanii și poate fi prea ostil pentru copii.

Pasul 17: Video detaliat cu instrucțiuni

În cazul în care vi se pare mai ușor să vizionați videoclipul în loc să citiți instrucțiunile, iată versiunea video a acestei versiuni.

Pasul 18: Regulile jocului

Image
Image

În prezent există 5 jocuri implementate. Dacă aveți mai multe idei despre jocuri care ar putea fi create folosind această casetă - vă rugăm să ne anunțați în comentarii. Voi trece pe scurt fiecare joc explicând regulile și cum să joci.

Răsuciți comutatorul basculant lateral pentru a porni Lego Arcade Games Box. Toate jocurile sunt însoțite de sunetele din jocul nostalgic Mario. La pornire ar trebui să auziți melodia de pornire a jocului Mario.

Odată început, veți vedea pe ecranul LCD jocul care este selectat acum. Pentru a schimba jocul, apăsați pe butonul negru.

Când ați decis ce joc doriți să jucați, apăsați doar pe butonul Alb pentru a începe.

Dacă doriți să ieșiți din jocul care rulează deja - trebuie să apăsați butonul negru.

La pornire puteți dezactiva sunetele (modul de noapte) apăsând butonul roșu.

Joc de memorie (similar cu „Simon-Says”, similar jocului Touch Me)

Regulile sunt bine cunoscute și simple. Jocul vă arată o secvență de note / lumini și trebuie să o repetați. De fiecare dată, se adaugă încă un ton / lumină la secvență. Cu cât supraviețuiești mai mult, cu atât este mai bună memoria ta. Este excelent pentru antrenarea memoriei pe termen scurt a copiilor și a adulților.

Joc de reacție (similar jocului Whack-a-Mole)

Trebuie să fii suficient de rapid pentru a apăsa fiecare buton care se aprinde. Cu cât jucați mai mult, cu atât butoanele se aprind mai repede. Acesta este minunat pentru reacția de antrenament a copiilor și adulților.

Joc concurs / competiție (pentru 2-4 jucători)

Vi se dau 5 runde. Toată lumea trebuie să apese butonul cu adevărat repede după ce se dă semnalul (ton de monede de la Mario). Oricine apasă primul pe buton câștigă runda. Numărul de victorii se calculează la sfârșitul a 5 runde și se anunță câștigătorul.

Melody Game (modul Push and Play gratuit pentru copii mici și cei mai mici)

Acesta este excelent pentru copii mici - redă melodii alternante când apăsați și țineți apăsat un buton. După testarea inițială cu copiii, ne-am dat seama că cel mai mic, care avea 1 an, chiar vrea să se joace, dar nu înțelege CUM. Regulile acestor jocuri sunt - FĂRĂ REGULI. Puteți apăsa orice buton și va produce sunete.

Joc de război (pentru 2-4 adulți)

Prietenul meu Alex, care a programat versiunile consecvente ale acestei cutii de jocuri, a venit cu ideea acestui joc în timpul crizei Trump / Kim despre cine are butonul nuclear mai mare. Regulile au nevoie de un videoclip separat pentru explicație (îl puteți găsi aici și aici), dar pe scurt, selectați numărul de jucători la început și în timpul fiecărei runde fiecare persoană își alege inamicul. Odată ce toată lumea și-a ales inamicul, rachetele încep să zboare. Cel care a fost selectat ca inamic are câteva momente pentru a apăsa butonul pentru a trimite racheta de intersecție și a-și salva țara. Rundele continuă până când rămâne o singură țară.

Pasul 19: Rezultatul final

Rezultat final
Rezultat final
Rezultat final
Rezultat final
Rezultat final
Rezultat final

Suntem 3 prieteni care am petrecut timpul pentru a construi jocul pentru copiii noștri. Sperăm cu adevărat că vă va plăcea jocul atât de mult încât vă veți construi propria versiune folosind aceste instrucțiuni. Dacă aveți întrebări sau sugestii - vă rugăm să le postați în comentarii.

Joc Concurs de viață
Joc Concurs de viață
Joc Concurs de viață
Joc Concurs de viață

Premiul II în concursul de viață al jocului

Recomandat: