Turinys:

Namų žaidimų konsolė- „NinTIMdo RP“: 7 žingsniai (su nuotraukomis)
Namų žaidimų konsolė- „NinTIMdo RP“: 7 žingsniai (su nuotraukomis)

Video: Namų žaidimų konsolė- „NinTIMdo RP“: 7 žingsniai (su nuotraukomis)

Video: Namų žaidimų konsolė- „NinTIMdo RP“: 7 žingsniai (su nuotraukomis)
Video: CS50 2013 - Week 10, continued 2024, Lapkritis
Anonim
Image
Image
Namų žaidimų konsolė
Namų žaidimų konsolė

Nuoroda į tinklalapį su išsamesniais paaiškinimais, dalių sąrašu ir failais

timlindquist.me

Šis projektas turėjo sukurti nešiojamą žaidimų sistemą, kuri taip pat galėtų būti nešiojamas kompiuteris. Tikslas buvo sukurti funkcionalią ir estetišką konsolę.

Dalių sąrašas:

docs.google.com/spreadsheets/d/1Ay6-aW4nAt…

1 žingsnis: spausdinkite dėklą

Spausdinimo dėklas
Spausdinimo dėklas
Spausdinimo dėklas
Spausdinimo dėklas

Norėdami spausdinti įrenginį, atsisiųskite mano 3D modelio failus ir nusiųskite juos į savo 3D spausdintuvą. Spausdintuvas, kurį naudojau, buvo „Prusa i3 Mk2“kartu su juodo plastiko siūlais. Nustatyta, kad spausdinimo kokybė yra geriausia esant vidutinei raiškai. Į prietaisą būtinai įpilkite konstrukcinės medžiagos (rankos be jo atrodys prastai). Užpakalinės dalys buvo atspausdintos užpakalinėje dalyje su plokšte. Priekinės dalys buvo atspausdintos taip, kad priekinis paviršius būtų lygus lėkštei. Jei norėčiau atspausdinti kitą dėklą, norėčiau panaudoti naują spalvą, tokią kaip atominė violetinė, kad parodytų vidų. Jei esate toks kaip aš ir turite 8 colių spausdinimo lovą, kad galėtumėte dirbti, turėsite atspausdinti 4 dalių versiją, bus surinkta po spausdinimo. Tačiau jei jūsų lova yra pakankamai didelė, kad ją būtų galima padaryti kaip vieną gabalą, atspausdinkite priekinę ir galinę plokštes kaip vieną vienetą ir venkite skausmo jas sujungti.

Failų modeliai:

github.com/timlindquist/Nintimdo-RP_3D_mod…

2 žingsnis: korpuso surinkimas

Dėklo surinkimas
Dėklo surinkimas
Dėklo surinkimas
Dėklo surinkimas

Norėdami surinkti, pirmiausia sujunkite priekinę dešinę ir kairę dalis, įstatydami metalinį kaištį į išlyginimo angas. Tada ant siūlių uždėkite super klijų ir pritvirtinkite pusę kartu. Pakartokite procesą apatinėje dešinėje ir kairėje. Po to jums turėtų likti surinkta priekinė ir galinė pusė. Dabar atėjo laikas pritvirtinti 5 metalines atramas, skirtas priekinėms ir galinėms plokštėms sujungti. Lengviausias būdas tai padaryti yra iš anksto nugriauti reikiamo ilgio stovą. 13 mm gylis gale 5 mm gylis priekyje. Taigi padarykite atramas 18 mm ar šiek tiek mažiau. Aš tai padariau įdėdamas ilgesnį atotrūkį į vožtuvo rankenas ir naudodamas malūnėlį, kad nusiskustų dydį. Būtinai nupjaukite tik vieną pusę, nes jums reikės siūlų iš kitos. Gavę reikiamo ilgio klijuokite visas malūnėlio šonus prie priekinio paviršiaus, naudodami įprastus gorilos klijus, ir leiskite jam išdžiūti. Įsitikinkite, kad šio proceso metu jie visi stovi tiesiai. Išdžiūvę nubraukite puikius klijus, kurie suputos, kad sudėjus veidus būtų galima lyginti. Dabar pažiūrėkite, ar galite įdėti galinę plokštę į atramas, kad sujungtumėte su priekiu. Prisukite per galinę plokštę, kad pritvirtintumėte. Klijuokite ekraną, padengdami rėmą dvikovos vamzdeliu „Gorilla Epoxy“. Kai tai padariau, per daug užsidėjau ir tai perpildė ekraną. Laimei, jis nusitrina! Užfiksuokite ir leiskite kuriam laikui išdžiūti, tada užpakalinę pusę išklokite įprastais „Gorilla“klijais.

** Pastaba: stenkitės, kad išorėje nebūtų plonų CA klijų (super klijų), nes jie „sudegins“PLA ir nudažys baltą spalvą.

3 žingsnis: grandinė

Grandinės
Grandinės
Grandinės
Grandinės
Grandinės
Grandinės

Mygtuko grandinė:

Visų mygtukų paspaudimų fiksavimas atliekamas naudojant „Teensy ++ 2.0“. Skaitmeniniai kaiščiai ant mikrovaldiklio naudojami bet kokiems dvejetainiams paspaudimo mygtukams. Analoginiai kaiščiai naudojami mygtukams, turintiems kelias būsenas, pvz., Vairasvirtėms. Norėdami prijungti skaitmeninius kaiščius, tiesiog prijunkite skaitmeninį kaištį prie jungiklio, kitą jungiklio galą prijunkite prie žemės. Paspaudus mygtuką, jis ištrauks aukštos įtampos kaištį žemyn, kad valdiklis jaustųsi. Jums nereikia jaudintis dėl rezistorių, nes jie yra įtraukti į „Teensy“plokštę. Norėdami prijungti analoginius kaiščius, turėsite nukreipti savo analoginį įrenginį aukšta ir žema įtampa ir nuskaityti įtampos lygį, esantį tame diapazone. Joystickams yra 3 įėjimai kiekvienai ašiai. Vienam iš kaiščių maitinkite 5 V, kitą - GND, o paskutinę - įtampos nuskaitymo liniją. Įsitikinkite, kad tai tinkamai prijungsite, kitaip jis neveiks (naudokite multimetrą, kad pamatytumėte, ar išėjimo įtampa pasikeičia tinkamame kaištyje.) Iš esmės vairasvirtė yra kintamasis rezistorius, veikiantis kaip įtampos daliklis. Skaitymo kaiščio išėjimo įtampa kinta nuo 0 iki 5 V, priklausomai nuo vairasvirtės padėties. (Paprastai šališkumas 5V ir GND yra ant išorinių kreiptuko įvesties kaiščių, o vidurinis bus jūsų kintamos įtampos skaitymo kaištis. Jei 5V ir GND skiriasi nuo mano, jūsų valdikliai bus apversti, tai galima išspręsti programinėje įrangoje arba perjungti).

Maitinimo grandinė:

Trijų elementų „Anker“baterija tiekia energiją visam įrenginiui. Norėdami įjungti/išjungti įrenginį, akumuliatoriaus reguliatoriaus išvestis yra prijungta prie jungiklio, tada „Raspberry Pi“. Kadangi prietaisas gali suvartoti iki 2A, paprastas 250mA perjungimo jungiklis neatitinka dabartinio reikalavimo. Vietoj to galite naudoti jungiklį, norėdami valdyti PMOS tranzistoriaus vartų įtampą, kad atliktumėte jungiklio paskirtį. Prijunkite 5 V bateriją prie PMOS tranzistoriaus šaltinio ir jungiklio. Kitas jungiklio galas yra prijungtas prie PMOS tranzistoriaus vartų ir prie 10K rezistoriaus, prijungto prie GND (kai jungiklis yra atidarytas, kad vartai neplauktų, per rezistorių susieja juos su GND). „Drain“yra prijungtas prie „Raspberry Pi“5 V įvesties kartu su žeme. Norėdami įkrauti akumuliatorių, tiesiog prijunkite „micro USB“jungties plokštę prie tinkamų įkrovimo kaiščių (įvestis į korpusą). Paslėpiau šį jungiklį oro įleidimo angoje prietaiso gale. Iš pradžių planavau, kad akumuliatoriaus mygtukas įjungtų ir išjungtų įrenginį, laikydamas jį tam tikrą laiką, deja, pritrūko vietos ir turėjau atlikti paprastą įgyvendinimą. Šis alternatyvus dizainas parodytas žemiau esančioje schemoje.

Garso grandinė:

Garsui norėjau, kad garsas natūraliai skleistų garsiakalbius (jei nebūtų nutildytas) ir peradresuotų į ausines, jei jos būtų prijungtos. Laimei, daugelis moterų 3,5 mm ausinių lizdų turi mechaninį sugebėjimą tai padaryti. Įkišus kištuką į kištuką, garsiakalbio laidai sulenks ir sukurs atvirą grandinę, taip neleisdami signalui pasiekti garsiakalbių. Kadangi garsiakalbiai yra didesnės apkrovos, garso signalas turi būti sustiprintas, kad būtų galima jį išgirsti. Tai daroma naudojant stereofoninį D klasės stiprintuvą, kurį radau ant adafruit. Tiesiog pakreipkite stiprintuvą 5V ir GND. Mes neturime diferencinių garso įėjimų, todėl prijunkite kairįjį ir dešinįjį garsiakalbius prie teigiamų gnybtų ir susiekite neigiamus gnybtus su GND. Stiprinimas reguliuojamas naudojant trumpiklį. Nustatiau maksimalų stiprinimą ir keičiu išvesties garso signalų amplitudę per programinę įrangą, norėdamas reguliuoti garsumą. Norėdami nutildyti įrenginį, turiu NMOS tranzistorių, valdantį 5 V šališkumą. Šiuos NMOS tranzistorių vartus valdo „Teensy“. Turiu problemą, kad išoriniuose garsiakalbiuose yra nuolatinis aukšto dažnio triukšmas. Aš tai išanalizuosiu osciloskopu, gali būti iš 5 V šališkumo dėl tam tikro reguliatoriaus perjungimo prie akumuliatoriaus arba linijos gali kažkur pasiimti RF. Be to, būtinai pasukite dešinę ir kairę linijas, kad sumažintumėte elektromagnetinius trukdžius (EMI).

4 žingsnis: periferinė grandinė

Periferinė grandinė
Periferinė grandinė
Periferinė grandinė
Periferinė grandinė

Ši schema apima USB laikiklius ir LED indikatorių. Užsisakykite PCB mano nuorodoje ir perpjaukite per pusę išilgai punktyrinės linijos, naudodami juostinį pjūklą. USB pusėje visi lituokite du moterų USB prievadus prie plokštės. Šoninėje šviesos diodų pusėje lituoti 5 LED ir 5 rezistoriai nuosekliai. 5V, GND, D+, D-galima išplėsti naudojant laidus iš Raspberry PI desoldered USB į PCB. Šviesos diodų plokštę galima įdėti taip, kad šviesa spindėtų pro skylutes korpuso viršuje. Prijunkite 5 „Teensy“PWM išėjimus prie šviesos diodų kartu su GND. Keisdami darbo ciklą, galite pakeisti šviesos diodų ryškumą.

Įsigykite PCB:

5 žingsnis: programavimas

Programavimas
Programavimas
Programavimas
Programavimas
Programavimas
Programavimas

Teensy:

Jei prijungėte jį lygiai taip pat, kaip ir aš, galite tiesiog naudoti kodą, kurį pateikiau „Github“. Tačiau rekomenduočiau ją parašyti patiems, nes geriau suprasite sistemą ir galėsite lengvai manipuliuoti bei pritaikyti ją pagal savo skonį. Programavimas yra labai paprastas, iš tikrųjų reikia parašyti daugybę teiginių, kad patikrintumėte, ar buvo paspausti mygtukai. Naudingas instrukcijų rinkinys iš PJRC. Galite naudoti „Arduino IDE“savo kodui rašyti ir įkelti į „Teensy“.

KODAS:

github.com/timlindquist/Nintimdo-RP

Skaitmeniniai mygtukai: Šiame pavyzdyje aš tikrinu, ar buvo nuspaustas skaitmeninis kaištis 20, ir tada išvedu teisingą serijinės vairasvirtės komandą. Mygtukui galite pasirinkti bet kurį nuo 1 iki 32, nes „Retropie“vis tiek pradžioje nustato valdiklio žemėlapių sąranką. Vairasvirtės mygtukas (mygtukai: 1-32, paspaustas = 1 išleistas = 0)

Analoginiai mygtukai:

Pavyzdyje dešinė vairasvirtės vertikalė prijungta prie analoginio kaiščio 41. Funkcija analogRead (kaištis) gauna įtampos lygį nuo 0 iki 5 V ir grąžina vertę nuo 0 iki 1023. Ideali centro padėtis atitiktų 2,5 V arba 512, tačiau tai nebuvo mano analoginės lazdelės atveju, todėl reikėjo koreguoti. Tai buvo padaryta iš naujo parodžius žemiau. Po to turėjau patikrinti, ar ribos nebuvo viršytos nuo 0 iki 1023. Galiausiai analoginė vairasvirtės komanda buvo siunčiama per nuoseklųjį, kad būtų analoginis mygtukas Z, naudojant „Joystick. Z“(vertė nuo 0 iki 1023).

6 veiksmas: pasirinktinis dokas

Pasirenkamas dokas
Pasirenkamas dokas
Pasirenkamas dokas
Pasirenkamas dokas
Pasirenkamas dokas
Pasirenkamas dokas

Prieplauka:

Ši konstrukcija nebūtų baigta be įkrovimo stotelės ir paprasto televizoriaus prijungimo, todėl aš jį sukūriau žemiau esančiose nuotraukose. 3D modeliai yra prieinami kartu su kitais mano „Github“paketu.

Modeliai:

github.com/timlindquist/Nintimdo-RP_3D_mod…

7 žingsnis: Rezultatai

Rezultatai
Rezultatai
Rezultatai
Rezultatai
Rezultatai
Rezultatai
Rezultatai
Rezultatai

Žvelgiant atgal, norėčiau, kad HDMI išvesties prievadą prijungčiau prie PCB, o ne iš anksto įsigyto sieninio laikiklio. Iš tikrųjų tai būtų sutaupiusi daug vietos, nes turėjau sukišti kabelį į spiralę, kad išvengčiau jo perpjovimo ir iš naujo litavimo 19 laidų. Nusivyliau, kai naudosiu mažesnę bateriją, nes elementų aukštis buvo mano ribojantis veiksnys viso prietaiso storyje. Tačiau jos sumažinimas neigiamai paveiktų mano baterijos veikimo laiką.

Iš viso tai pagaminti man kainavo apie 350 USD. Tai neapima aviečių pi, kurį sulaužiau bandydama nusiskusti dydį … Vis tiek džiaugiuosi, kad išbandžiau. Tai buvo įdomus vasaros projektas, skirtas išsiaiškinti, ar pavyks padaryti jį kuo kompaktiškesnį, tuo pačiu į vidų įdėjus daug įdomių funkcijų.

Rekomenduojamas: