Cuprins:

Mașină arcadă modulară: 12 pași
Mașină arcadă modulară: 12 pași

Video: Mașină arcadă modulară: 12 pași

Video: Mașină arcadă modulară: 12 pași
Video: Cum se construiește un garaj simplu și eficient. Schelet metalic și panouri "Sandwich" 2024, Noiembrie
Anonim
Mașină arcadă modulară
Mașină arcadă modulară

Eu și cei doi băieți ai noștri am vrut să construim o mașină arcade, dar nu am putut decide ce tip să construim între un dulap complet stand-up, un bar-top sau o consolă de tip stick-stick pentru a conecta la un televizor. În cele din urmă ne-a venit în minte că am putea construi toate cele trei ca o soluție modulară cu module care pot fi utilizate individual sau combinate după dorință.

Datorită designului simplu și a alegerii componentelor, aceasta este, de asemenea, o construcție destul de ieftină în comparație cu multe proiecte de mașini arcade la domiciliu și ar trebui să puteți obține sub 200 € / $ în materiale. Aveam deja majoritatea materialelor pentru prelucrarea lemnului și a componentelor electronice așa că am cheltuit până acum mai puțin de 100 €.

Pasul 1: Proiectare

Proiecta
Proiecta
Proiecta
Proiecta
Proiecta
Proiecta

Conceptul de bază al designului este un sistem arcade cu doi jucători format dintr-un set de module independente care au fiecare o funcție individuală și se completează reciproc atunci când sunt înșurubate.

  • Modulul de control conține toate comenzile și dispozitivele electronice de control, inclusiv controlerele USB. Acest modul poate fi utilizat un controler de stil de luptă conectat la o consolă sau Raspberry PI.
  • Modulul de afișare găzduiește afișajul și Raspberry PI (sau alegerea dvs. SBC) și poate fi utilizat independent ca computer „all-in-one” sau conectat la modulul de control pentru a forma o unitate arcade bartop.
  • Modulul Stand acționează ca o unitate de stocare în modul independent și, atunci când este combinat cu bartop, formează o mașină completă de arcade stand-up.

Am încercat să păstrăm designul cât mai simplu și funcțional posibil, luând câteva indicii de design din anii '70 și '80 - jocuri de masă - și evitând elemente nefuncționale, cum ar fi carcasa de iluminare și modelarea în T găsite în multe dulapuri. Desigur, puteți modifica designul pentru a adăuga aceste elemente, dacă doriți.

Am decis un aspect destul de clasic al butoanelor pe care păreau să-l amintesc de pe arcadele tinereții mele, cu un grup de butoane „șase drepte” lângă fiecare joystick (StreetFighter2 FTW). Am plasat butoanele Start și Select pe panoul frontal pentru a satisface emularea consolei, precum și sarcinile de introducere a monedelor și de selecție a jucătorului. De asemenea, am pus un buton pe fiecare parte pentru jocurile de pinball. Desigur, sunteți liber să modificați designul după propriile gusturi și metodele de introducere dorite, de ex. trackballs. filatoare ponderate etc.

Am făcut o schiță inițială simplă a unității barei de sus pe hârtie și apoi am recreat modele corecte la scară în SketchUp - consultați fișierele atașate pentru fiecare dintre module și combinații.

M-am bazat pe dimensiuni în jurul unui monitor cu ecran lat de 19 pe care l-am cumpărat la mâna a doua, la 10 EUR. Acest lucru a dus la o lățime totală a dulapului de 500 mm, lăsând aproximativ 30 mm de joc în cazul în care trebuie să schimb monitorul.

Verificați fișierele SketchUp pentru măsurători exacte pe toate dimensiunile. Când am tăiat un panou sau o gaură specifică, am folosit instrumentul de măsurare a benzii din SketchUp pentru a măsura dimensiunea modelului înainte de a marca tăieturile materialului de construcție.

Pasul 2: Instrumente și materiale pentru prelucrarea lemnului

AVERTISMENT: FOLOSIȚI ATENȚIE ȘI ECHIPAMENTE DE SIGURANȚĂ ADECVATE LA FUNCȚIONAREA UNELTELOR DE ALIMENTARE

Instrumente

  • Șurubelniță și șuruburi
  • Ferăstrău de masă sau ferăstrău circular
  • Jigsaw
  • Burghie și burghie diverse, inclusiv ferăstrău de 28 mm pentru butoane
  • Hârtie de șlefuit
  • Router și bit de colț rotunjit

Materiale

  • Foi MDF de 19 mm (3/4 ")
  • Foi MDF de 6 mm (3/4 ")
  • Paranteze unghiulare (am folosit unele din plastic foarte la îndemână - vezi fotografiile de construcție)
  • Umplutură de lemn
  • Vopsiți (consultați pașii „Terminați” mai târziu pentru detalii)

Pasul 3: Construcția modulului de control

Construcția modulului de control
Construcția modulului de control
Construcția modulului de control
Construcția modulului de control
Construcția modulului de control
Construcția modulului de control
Construcția modulului de control
Construcția modulului de control

Am început modulul de control decupând laturile din MDF de 19 mm pe baza dimensiunilor din modelul SketchUp.

Apoi am tăiat panourile din față și din spate. Am marcat teșiturile de pe aceste panouri așezându-le strâns pe laturi și marcând unghiul cu un creion și apoi îmbinând semnele de pe ambele părți cu o margine dreaptă. Am tăiat-o apoi la vedere în ferăstrăul de masă și am terminat cu șmirghel. Sunt sigur că există o modalitate mai bună de a face acest lucru cu mai multe instrumente și / sau abilități mai bune, dar acest lucru a funcționat bine pentru nevoile mele și nu a durat mult.

Apoi am decupat orificiile butoanelor frontale și laterale și am conectat toate panourile cu suporturile unghiulare și șuruburile. Inițial am planificat să folosesc lipici, dar testele mele cu lipirea pe o margine tăiată din MDF păreau să indice că acest lucru nu ar fi suficient de puternic. De asemenea, am avut deja o grămadă de paranteze pe care le-am reciclat dintr-un proiect vechi;).

De asemenea, am rotunjit marginile superioare orientate spre față în acest stadiu folosind routerul cu bitul de rotunjire din colț. Acest lucru oferă un aspect mai frumos și o senzație mai confortabilă modulului și trece prin margini dure unde mâinile tale se odihnesc în mod natural lângă comenzi.

Apoi am decupat partea superioară și inferioară din MDF de 6 mm. Am teșit panoul superior ca și panourile din față și din spate pentru a asigura o potrivire confortabilă și un finisaj fără sudură. Nu am teșit panoul de jos, deoarece nu intenționez să-l umplu și să-l pictez. În schimb, îl voi folosi ca panou de acces la întreținere. Am forat și am tăiat găuri de șurub și am forat găuri potrivite în parantezele de colț.

Apoi am dezasamblat panoul din spate și am tăiat o gaură mare pentru acces regulat la cablurile USB și Raspberry PI.

În cele din urmă, am tăiat butoanele panoului superior și găurile joystick-ului și le-am reasamblat. Nu am fixat panoul de sus în acest stadiu, deoarece am vrut să-l păstrez în timpul procesului de cablare.

Pasul 4: Instrumente și materiale electronice

NB: Această listă este necesară numai dacă doriți să mergeți la toaletă electronică. Puteți și probabil ar trebui să obțineți toate aceste lucruri ca parte a unui kit plug and play (ca acestea) și să evitați toate lipirile și cablurile personalizate. După ce am făcut acest lucru odată „pe drumul cel greu”, cu siguranță voi merge pe traseul kitului dacă voi face vreodată un alt cabinet.

Instrumente

  • Multimetru / tester de conectivitate
  • Ciocan de lipit
  • Cleste de sarma
  • Instrument de sertizare (tocmai am folosit tăietorul de sârmă)

Materiale

  • Arduino Leonardo / Pro Micro cu profil joystick USB HID (am folosit clone ieftine)
  • mufa USB
  • Joystick și butoane Arcade.
  • Conectați conectorii pentru a se potrivi cu joystick-ul și butoanele selectate
  • 2x Mini panouri de prindere
  • Conectarea firelor (am folosit în principal fire jumper Dupont)
  • Lipire electronică (încă mai aveam bobina mea originală de colofoniu de la facultate)
  • Tuburi termocontractabile

Pasul 5: Cablarea modulului de control

Cablarea modulului de control
Cablarea modulului de control
Cablarea modulului de control
Cablarea modulului de control
Cablarea modulului de control
Cablarea modulului de control

Din nou, vă recomand să luați în considerare un kit plug and play în locul abordării documentate aici. Urmați această abordare numai dacă:

A. Doriți controlul complet al codului de manipulare a butoanelor de nivel scăzut

B. Bucurați-vă cu adevărat de lipire și cablare personalizată (cine nu)

C. Aveți deja instrumentele și piesele și / sau doriți să economisiți câțiva dolari

D. Vrei să afli mai multe despre aceste lucruri sau doar să exersezi

Motivațiile mele personale au fost un amestec dintre cele de mai sus. Ok, deci iată cum am făcut cablajul:

Mai întâi am făcut cabluri adaptor pentru a conecta conectorii de sertizare de pe butoane la firele conectorului Dupont. Am făcut una dintre acestea pentru micro-comutator în fiecare dintre butoane și cele patru în fiecare dintre joystick-uri. Strigați să-l scoateți în afara legii pe Larry pentru o săpătură pe linia de producție pentru acestea.

Apoi am folosit aceste cabluri personalizate pentru a conecta butoanele și joystick-urile la pinii de intrare pe fiecare dintre microcontrolere prin intermediul panourilor.

NB: În acest design există un microcontroler separat și deci un cablu USB pentru fiecare player. Împărțiți comutatoarele joystick-ului și butoanelor în mod corespunzător între ele și conectați ambele butoane de pinball la același microcontroler. Verificați fotografiile care arată o progresie prin etapele de cablare, dacă vă blocați.

Apoi, a trebuit să adaug un fir pentru a trimite un semnal la fiecare dintre micro-comutatoare, care să returneze apoi semnalul la pinul de intrare al microcontrolerului atunci când butonul a fost apăsat. Am folosit cele 4 perechi răsucite în unele cabluri Cat 5e pentru a furniza semnalul către joystick-uri lipindu-le pe toate la un capăt și atașând un cablu conector Dupont conectat la pinul de semnal de pe microcontroler.

Am făcut un mic cablu de lanț pentru fiecare dintre cele 6 clustere de butoane și, în cele din urmă, am folosit cablurile mele de adaptor personalizate pe butoanele de pornire / selectare și pinball din nou, toate conectate la pinul de semnal al microcontrolerului.

Cablarea micro-comutatoarelor la microcontrolere a fost destul de simplă datorită utilizării mini-breadboard-ului și a conectorilor Dupont, ceea ce însemna că aș putea deplasa cu ușurință firele în funcție de necesități.

Pasul 6: Codul controlerului

Codul controlorului
Codul controlorului
Codul controlorului
Codul controlorului
Codul controlorului
Codul controlorului

Codul este destul de simplu. Am modificat un exemplu de gamepad din excelenta bibliotecă Arduino Joystick

Puteți afla mai multe despre cum să începeți cu acea bibliotecă din acest instructiv la îndemână.

La sfârșitul acestui pas, am avut un controler de luptă cu 2 jucători funcțional, așa că am sărbătorit cu câteva runde de StreetFighter2 pe laptopul meu!

Am planificat inițial să conectez microcontrolerele direct la Raspberry PI prin USB, dar în timp ce testam pe laptop, am constatat că conectarea și deconectarea conectorilor micro USB la micro-controlere prin intermediul panoului de acces a fost foarte dificilă și în cele din urmă am rupt conector micro USB de la unul dintre micro-controlere.

Soluția la aceasta a fost includerea unui hub USB în modulul de control. Acest lucru a însemnat că doar o singură conexiune a fost expusă din modulul de control și soluția generală a fost mult mai robustă. Cu cablarea completă, am adăugat găuri de șurub cu cap în panoul superior și le-am înșurubat în poziție.

gamepad.ino

// Exemplu simplu de gamepad care demonstrează cum să citești cinci Arduino
// pini digitali și mapați-i la biblioteca Arduino Joystick.
//
// Știfturile digitale sunt împământate atunci când sunt apăsate.
//
// NOTĂ: Acest fișier schiță este pentru utilizare cu Arduino Leonardo și
// Numai Arduino Micro.
//
// Versiune modificată a codului original de Matthew Heironimus
// 2018-08-11
//--------------------------------------------------------------------
#include
Joystick_ Joystick;
voidsetup () {
// Inițializați butoanele
pinMode (2, INPUT_PULLUP);
pinMode (3, INPUT_PULLUP);
pinMode (4, INPUT_PULLUP);
pinMode (5, INPUT_PULLUP);
pinMode (6, INPUT_PULLUP);
pinMode (7, INPUT_PULLUP);
pinMode (8, INPUT_PULLUP);
pinMode (9, INPUT_PULLUP);
pinMode (10, INPUT_PULLUP);
pinMode (16, INPUT_PULLUP);
pinMode (20, INPUT_PULLUP);
pinMode (21, INPUT_PULLUP);
// Inițializați biblioteca Joystick
Joystick.begin ();
Joystick.setXAxisRange (-1, 1);
Joystick.setYAxisRange (-1, 1);
}
// Ultima stare a butoanelor
int lastButtonState [12] = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0};
pinii int [12] = {2, 3, 4, 5, 6, 7, 8, 9, 10, 16, 20, 21};
voidloop () {
// Citiți valorile pinului
pentru (intindex = 0; index <12; index ++)
{
int CurrentButtonState =! digitalRead (pini [index]);
if (currentButtonState! = lastButtonState [index])
{
comutator (pini [index]) {
case2: // UP
if (currentButtonState == 1) {
Joystick.setYAxis (-1);
} altceva {
Joystick.setYAxis (0);
}
pauză;
case3: // DREAPTA
if (currentButtonState == 1) {
Joystick.setXAxis (1);
} altceva {
Joystick.setXAxis (0);
}
pauză;
case4: // JOS
if (currentButtonState == 1) {
Joystick.setYAxis (1);
} altceva {
Joystick.setYAxis (0);
}
pauză;
case5: // STÂNGA
if (currentButtonState == 1) {
Joystick.setXAxis (-1);
} altceva {
Joystick.setXAxis (0);
}
pauză;
caz 6:
Joystick.setButton (0, currentButtonState);
pauză;
cazul 7:
Joystick.setButton (1, currentButtonState);
pauză;
caz 8:
Joystick.setButton (2, currentButtonState);
pauză;
caz 9:
Joystick.setButton (3, currentButtonState);
pauză;
caz 10:
Joystick.setButton (4, currentButtonState);
pauză;
caz 16:
Joystick.setButton (5, currentButtonState);
pauză;
caz20:
Joystick.setButton (8, currentButtonState);
pauză;
caz21: {
Joystick.setButton (9, currentButtonState);
pauză;
}
}
lastButtonState [index] = currentButtonState;
}
}
întârziere (10);
}

vizualizați rawgamepad.ino găzduit cu ❤ de GitHub

Pasul 7: Configurare Raspberry PI

Configurare Raspberry PI
Configurare Raspberry PI

Recomand un Pi 3 pentru performanțe și compatibilitate maximă a jocului, dar dacă sunteți interesat doar de jocurile mai vechi, un dispozitiv cu o putere mai redusă, cum ar fi Pi Zero, ar fi bine. Folosesc un Pi 2 de rezervă pe care l-am pus deja în jur.

Există o mulțime de resurse excelente pe web care descriu cum să configurați Pi sau alt SBC ales cu emulatori și front-end-uri diferite. Personal folosesc și recomand RetroPie și am găsit aceste videoclipuri - excelente - de la ETA Prime ca fiind o modalitate excelentă de a porni rapid și de a rula.

Pasul 8: construirea modulului de afișare

Construcția modulului de afișare
Construcția modulului de afișare
Construcția modulului de afișare
Construcția modulului de afișare
Construcția modulului de afișare
Construcția modulului de afișare

Am început construcția modulului de afișare cu panourile laterale, marcând și decupând primul din dimensiunile măsurate din fișierul SketchUp folosind banda de măsurare virtuală. Am folosit apoi primul panou ca șablon pentru al marca pe al doilea.

Apoi am decupat panoul inferior din spate, am înșurubat niște paranteze unghiulare și l-am înșurubat pe panourile laterale. În acest stadiu am verificat că monitorul meu se potrivește. A fost puțin mai strâns decât mă așteptam, dar era suficient spațiu.

Am adăugat apoi panoul frontal inferior și am tăiat găuri în el pentru a se potrivi cu modulul de comandă. Pentru a marca aceste elemente, am așezat modulul de control pe modulul afișajului și am scris în interiorul orificiului existent în modulul de control.

În această etapă am reușit să fixez cele două module folosind două șuruburi ale conectorului dulapului. Acum am putut vedea forma finală a modulului combinat bar-top!

Următorul pas a fost direcționarea marginilor panourilor. Pentru aceasta am dezasamblat din nou unitatea. De asemenea, am decupat gaura pentru intrarea și comutatorul de alimentare. Pentru aceasta am marcat mai întâi gaura, apoi am forat colțurile cu un pic de lemn și, în final, am decupat materialul rămas folosind un ferăstrău spiralat.

Apoi am remontat unitatea care lipea fiecare piesă de această dată. Deoarece foloseam și paranteze, nu era nevoie să folosesc cleme pentru a ține piesele împreună.

Acum, când unitatea era în forma sa finală, am decupat panoul ecranului și l-am așezat la locul său, lucrând pe el cu hârtie de nisip până când se potrivește perfect. Când am fost mulțumit de potrivire, l-am scos și am folosit un ferăstrău pentru a tăia gaura afișajului pentru a se potrivi cu zona vizibilă a ecranului. Făcut acest lucru, am reușit să testez ecranul în loc, folosind niște paranteze pentru a ține monitorul în poziție liberă.

Am pus cele două module la un loc pentru a vedea cum arăta și apoi am terminat de lipit ecranul în loc. Pentru a face acest lucru, am adăugat câteva bucăți suplimentare de MDF de 6 mm în spatele ecranului, pentru a mă asigura că este solid și pentru a evita fisurile în vopsea ulterior.

Pasul 9: Terminați

finalizarea
finalizarea
finalizarea
finalizarea
finalizarea
finalizarea
finalizarea
finalizarea

Odată ce lipiciul s-a uscat complet pe modulul afișajului, am aplicat cu generozitate material de umplutură pentru lemn la toate îmbinările și petele și l-am șlefuit cu hârtie de șlefuit grosieră.

Am acoperit-o apoi cu lipire PVA udată ca prim strat de etanșare. Apoi am aplicat mai multe straturi dintr-un amestec de PVA și vopsea albă de lemn / oțel de uz general pe care am găsit-o în garaj.

Aceste straturi inițiale au fost aplicate cu ajutorul unei pensule obișnuite de 2.

Când straturile de bază s-au uscat, am făcut o șlefuire ușoară cu șmirghel cu bob fin. După aceea am adăugat un alt strat de vopsea albă.

Când s-a uscat, am șlefuit din nou ușor și apoi am aplicat câteva straturi de vopsea ieftină cu scop general de la cutii pe care le-am ridicat la magazinul de hardware.

Înainte de a repeta procesul pentru modulul de comandă, am decupat panoul superior din spate al modulului de afișare. Acest panou are o gaură în el, astfel încât să pot transporta modulul de afișare mai ușor. De asemenea, acționează permite ca sunetul difuzoarelor monitorului încorporat să iasă din carcasă.

În această etapă am decis, de asemenea, să îndepărtez șuruburile de pe panoul superior al modulului de comandă și să le lipesc în loc. Pentru a mă asigura că este sigur, am lipit mai întâi câteva piese suplimentare de sprijin.

Când a fost vopsit modulul de control, am folosit un Dremel pentru a curăța orificiile butoanelor, testându-le continuu pentru dimensiune cu unul dintre butoane. În cele din urmă, am lipit piulița conectorului mobilierului în partea din spate a modulelor de comandă.

Am fost în mod rezonabil mulțumit de finalizarea rezultată la sfârșitul acestui pas, având în vedere cantitatea de timp și efort petrecut. Nu a fost nicidecum perfect și a putut fi îmbunătățit cu mai mult timp în această etapă. Depinde cu adevărat de nivelul de finisare pe care doriți să îl atingeți în ceea ce privește cât de mult timp va dura acest pas.

Pasul 10: Afișați componentele modulului

  • Monitor cu ecran lat de 19 "cu difuzoare
  • Raspberry PI 2 Single Board Computer (SBC)
  • Raspberry PI 2 Case
  • Adaptor de alimentare USB de 2Amp
  • Cablu micro-usb
  • Cablu audio de 3,5 mm
  • Cablu HDMI
  • Priza sasiului de alimentare (tip plumb fierbator)
  • Plumb fierbător de rețea
  • Priză dublă de alimentare

Pasul 11: Afișați cablajul modulului

Afișare cablare modul
Afișare cablare modul
Afișare cablare modul
Afișare cablare modul
Afișare cablare modul
Afișare cablare modul
Afișare cablare modul
Afișare cablare modul

Mai întâi am adăugat o bază și un panou posterior la carcasa modulului de afișare. Panoul din spate a fost fixat pe loc folosind blocaje magnetice, astfel încât să poată fi îndepărtat cu ușurință pentru acces rapid la componente.

Apoi am conectat un comutator de alimentare la o priză dublă pentru alimentarea PI și a monitorului. Am lipit firele de alimentare la întrerupător și am înfășurat cablurile cu tuburi termocontractabile. Dacă nu sunteți complet confortabil cu această parte, obțineți ajutor de la cineva calificat. NU vă asumați niciun risc cu cablurile de rețea.

După ce am fixat întrerupătorul în siguranță pe carcasă, am așezat monitorul în poziție. Având în vedere lupta deja strânsă, au fost necesare doar câteva paranteze din plastic pentru a fixa ecranul în poziție.

Apoi am conectat un adaptor de alimentare USB pentru PI și un cablu de fierbător pentru monitor. Nu a mai rămas decât să conectați semnalele audio și video la monitor.

Deoarece monitorul nu are intrare HDMI, am folosit un adaptor HDMI la DVI. Audio a fost furnizat difuzoarelor monitorului încorporat printr-un cablu audio de 3,5 mm de la PI. Cu panoul din spate activat și setările audio la maxim, volumul audio este în regulă, dar nu puternic. Aș putea adăuga difuzoare și un mini amplificator într-o viitoare actualizare.

În cele din urmă, am conectat un hub USB în PI și am putut permite testarea modulului de afișare complet funcțional.

Pasul 12: Adunarea finală și gânduri

Adunarea finală și gânduri
Adunarea finală și gânduri
Adunarea finală și gânduri
Adunarea finală și gânduri
Adunarea finală și gânduri
Adunarea finală și gânduri
Adunarea finală și gânduri
Adunarea finală și gânduri

Ultima lucrare înainte de asamblarea finală a fost recablarea și asamblarea modulului de control după vopsire. Acest lucru a mers destul de lin, în afară de ruperea unui fir care trebuia resoldat.

Înainte de a combina modulele de control și afișaj, am decupat câteva discuri de film de contact adeziv transparent pentru a evita butoaiele conectorului mobilierului care ies din modulul de control să zgârie vopseaua modulului de afișare.

Atunci a fost doar o simplă sarcină de a plasa modulele și de a le înșuruba. În acest stadiu, unitatea de sus a barei este complet completă și gata de acțiune. Se pare că aceasta va fi configurația preferată, așa că nu va trebui să construiesc modulul Stand cel puțin o vreme. Dacă și când o voi face, voi actualiza această postare. Modulul Stand în sine ar trebui să fie cel mai simplu dintre toate. Este practic un dulap de depozitare simplu, cu găuri de șuruburi în partea superioară, pentru a se conecta la unitatea bar-top.

M-am simțit foarte bine lucrând la acest proiect cu copiii mei. Am învățat multe și acum așteptăm cu nerăbdare să jucăm o mulțime de jocuri clasice vechi de arcade și console pe noua mașină. Vă mulțumim pentru lectură și spuneți-ne ce părere aveți despre proiect în comentarii!

Recomandat: