Բովանդակություն:

Տնական խաղային վահանակ- «NinTIMdo RP». 7 քայլ (նկարներով)
Տնական խաղային վահանակ- «NinTIMdo RP». 7 քայլ (նկարներով)

Video: Տնական խաղային վահանակ- «NinTIMdo RP». 7 քայլ (նկարներով)

Video: Տնական խաղային վահանակ- «NinTIMdo RP». 7 քայլ (նկարներով)
Video: Nintendo Վահանակի Վերականգնում Դեղնավուն Պլաստիկ Retrobright 2024, Նոյեմբեր
Anonim
Image
Image
Տնական խաղային վահանակ
Տնական խաղային վահանակ

Հղում դեպի կայքէջ ՝ ավելի խորացված բացատրություններով, մասերի ցուցակով և ֆայլերով

timlindquist.me

Այս նախագիծը պետք է ստեղծեր շարժական խաղային համակարգ, որը կարող էր նաև կրկնապատկվել որպես շարժական համակարգիչ: Նպատակն էր ստեղծել վահանակ, որը ինչպես ֆունկցիոնալ, այնպես էլ գեղագիտական տեսանկյունից հաճելի էր:

Մասերի ցուցակ.

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

Քայլ 1: Տպել պատյան

Տպագիր պատյան
Տպագիր պատյան
Տպագիր պատյան
Տպագիր պատյան

Սարքը տպելու համար ներբեռնեք իմ 3D մոդելի ֆայլերը և ուղարկեք դրանք ձեր 3D տպիչին: Իմ օգտագործած տպիչը Prusa i3 Mk2 էր ՝ սև պլաստիկ թելերով: Միջին լուծաչափի պայմաններում տպագրության որակը լավագույնն է: Համոզվեք, որ սարքի տակ ավելացնել կառուցվածքային նյութ (առանց դրա ձեռքի բռնակներն աղքատ տեսք կունենան): Հետևի կտորները տպվում էին ափսեի հետ մեջքի հարթությամբ: Առջևի կտորները տպվում էին առջևի ափսեի հետ հարթ երեսով: Եթե ես տպեի մեկ այլ պատյան, ես կցանկանայի օգտագործել նոր գույն, ինչպիսին է ատոմային մանուշակագույնը `ներքինը ցուցադրելու համար: Եթե դուք ինձ նման եք և ձեզ հետ աշխատելու համար ունեք 8 դյույմ տպիչ մահճակալ, ապա ձեզ հարկավոր է տպել 4 կտոր տարբերակ, որը կհավաքվի տպագրությունից հետո: Այնուամենայնիվ, եթե ձեր մահճակալն այնքան մեծ է, որ կարող եք կատարել մեկ կտոր, տպեք առջևի և հետևի ափսեը որպես մեկ միավոր և խուսափեք դրանք իրար միացնելու ցավից:

Մոդելային ֆայլեր.

github.com/timlindquist/Nintimdo-RP_3D_mod…

Քայլ 2: Գործի հավաքում

Գործի ժողով
Գործի ժողով
Գործի ժողով
Գործի ժողով

Հավաքելու համար նախ միացրեք առջևի աջ և ձախ մասերը ՝ տեղադրելով մետաղական գամմա հավասարեցման անցքերի մեջ: Հաջորդը սուպեր սոսինձ տեղադրեք հոդերի վրա և ամրացրեք կեսը միասին: Կրկնեք գործընթացը ներքևի աջ և ձախ հատվածների համար: Դրանից հետո դուք պետք է մնաք հավաքված առջևի և հետևի կեսով: Այժմ ժամանակն է ամրացնել առջևի և հետևի թիթեղները միաձուլելու համար 5 մետաղական կողպեքները: Դա անելու ամենահեշտ ձևն այն է, որ նախ կանգնեցրեք ճիշտ երկարությունը: 13 մմ խորություն հետևի 5 մմ խորություն առջևի մասում: Այսպիսով, դիմակայությունները դարձրեք 18 մմ կամ մի փոքր ավելի փոքր: Ես դա արեցի ՝ տեղադրելով ավելի երկար կանգուն փոխնակ բռնակներում և օգտագործելով սրող ՝ չափերը սափրելու համար: Համոզվեք, որ միայն մի կողմից մանրացրեք, քանի որ թելերը ձեզ հարկավոր կլինեն մյուս կողմից: Lengthիշտ երկարություն ստանալուց հետո սոսնձեցրեք բոլոր սրիչներն առջևի երեսին ՝ սովորական գորիլայի սոսինձով և թողեք չորանա: Համոզվեք, որ նրանք բոլորը կանգնած են ուղիղ այս գործընթացի ընթացքում: Չորանալուց հետո քերեք հիանալի սոսինձը, որը փրփրացել էր, այնպես որ դեմքերը միասին հավաքվելիս կարող են լվանալ: Այժմ տեսեք, արդյոք կարո՞ղ եք հետևի ափսեը տեղադրել կողպեքների վրա ՝ առջևի մասին միանալու համար: Պտուտակով ամրացրեք հետևի ափսեի միջով: Սոսինձ էկրանը միացրեք շրջանակը գորիլա էպոքսիդ մենամարտի խողովակով: Ես շատ բան հագա, երբ դա արեցի, և այն լցվեց էկրանով: Բարեբախտաբար, այն քսում է: Սեղմեք և թողեք որոշ ժամանակ չորանա, այնուհետև հետնամասը գորիլայի սովորական սոսինձով շարեք:

** Նշում. Փորձեք չստանալ արտաքին բարակ CA սոսինձ (գերծանրքաշային սոսինձ), քանի որ այն «կայրի» PLA- ն և կներկի սպիտակ գույնը:

Քայլ 3: Շղթա

Միացում
Միացում
Միացում
Միացում
Միացում
Միացում

Կոճակի միացում.

Բոլոր կոճակները սեղմելը կատարվում է Teensy ++ 2.0 -ի միջոցով: Միկրոհսկիչի թվային կապումներն օգտագործվում են ցանկացած երկուական սեղմման կոճակների համար: Անալոգային կապումներն օգտագործվում են կոճակների համար, որոնք ունեն բազմաթիվ վիճակներ, ինչպիսիք են ջոյստիկները: Թվային կապում միացնելու համար թվային կապը միացրեք անջատիչին, անջատիչի մյուս ծայրը միացրեք գետնին: Երբ կոճակը սեղմվում է, այն բարձր լարման քորոցը ներքև կբերի, որպեսզի վերահսկիչը զգա: Անհրաժեշտ չէ անհանգստանալ ռեզիստորների մասին, քանի որ դրանք ներառված են Teensy գրատախտակին: Անալոգային կապումներն ամրացնելու համար հարկավոր է անալոգային սարքը շեղել բարձր և ցածր լարման միջոցով և կարդալ լարման մակարդակը այդ տիրույթում անալոգային քորոցում: Joyոյստիկների համար յուրաքանչյուր մուտքի համար կա 3 մուտք: Մատակարարեք կապումներից մեկին 5V, մյուսին `GND, իսկ լարը` մինչև վերջ: Համոզվեք, որ այն ճիշտ եք միացրել, հակառակ դեպքում այն չի աշխատի (օգտագործեք մուլտիմետր ՝ տեսնելու, թե արդյո՞ք ելքային լարումը փոխվում է ճիշտ քորոցի վրա): Ըստ էության, ջոյսթիկը փոփոխական դիմադրություն է, որն աշխատում է լարման բաժանարարի պես: Ընթերցված քորոցի ելքային լարումը կտատանվի 0 -ից 5 Վ -ի միջև `կախված ջոյսթիքների դիրքից: (Սովորաբար կողմնակալությունը 5V- ը և GND- ը գտնվում են ջոյսթիկի արտաքին մուտքային կապում, իսկ միջինը `ձեր փոփոխական լարման ընթերցման քորոցը: Եթե 5V- ն և GND- ն իմից տարբեր են, ձեր վերահսկիչները կշրջվեն, դա կարող է ամրագրվել ծրագրային ապահովման կամ նորից միացման միջոցով:):

Էլեկտրաէներգիայի միացում.

Երեք բջջային Anker մարտկոցը սնուցում է ամբողջ սարքը: Սարքը միացնելու/անջատելու համար մարտկոցի կարգավորիչի ելքը միացված է անջատիչին, այնուհետև Raspberry Pi- ին: Քանի որ սարքը կարող է քաշել մինչև 2 Ա, պարզ 250 մԱ անջատիչ չի կարող կարգավորել ընթացիկ պահանջը: Փոխարենը, դուք կարող եք օգտագործել անջատիչը `PMOS տրանզիստորի դարպասի լարումը վերահսկելու համար` անջատիչի նպատակին ծառայելու համար: Մարտկոցի 5 Վ լարը միացրեք PMOS տրանզիստորի աղբյուրին և անջատիչին: Անջատիչի մյուս ծայրը միացված է PMOS տրանզիստորի դարպասին և GND- ին միացված 10K ռեզիստորին (երբ անջատիչը բաց է դարպասը լողալ կանխելու համար այն կապում է այն GND- ի հետ ռեզիստորի միջոցով): Դրենաժը միացված է Raspberry Pi- ի 5V մուտքին, ինչպես նաև գետնին: Մարտկոցը լիցքավորելու համար պարզապես միացրեք micro USB կանացի բեկորային տախտակը ճիշտ լիցքավորման կապում (մուտքը տարածում է պատյանին): Ես այս անջատիչը թաքցրի սարքի հետևի օդի ընդունման մեջ: Ի սկզբանե ես պլանավորում էի մարտկոցի կոճակը միացնել և անջատել սարքը ՝ այն պահելով որոշակի տևողությամբ, ցավոք, ես դուրս մնացի սենյակից և ստիպված էի կատարել պարզ իրականացումը: Այս այլընտրանքային դիզայնը ներկայացված է ստորև ներկայացված սխեմատիկայում:

Աուդիո միացում.

Ձայնի համար ես ուզում էի, որ ձայնը, բնականաբար, դուրս գա բարձրախոսներից (եթե չլռվի) և միացված լինի ականջակալներին, եթե դրանք միացված են: Բարեբախտաբար, 3.5 մմ գլխի կանացի հեռախոսի խցիկներից շատերը մեխանիկորեն կարող են դա անել: Արական խրոցակի տեղադրման դեպքում բարձրախոսների լարերը կթեքվեն և կստեղծեն բաց միացում ՝ այդպիսով կանխելով ազդանշանի բարձրախոսներին հասնելը: Քանի որ բարձրախոսներն ավելի մեծ ծանրաբեռնվածություն ունեն, աուդիո ազդանշանը պետք է ուժեղացնել, որպեսզի այն լսելի լինի: Դա արվում է ստերեո դասի D ուժեղացուցիչի միջոցով, որը ես գտա adafruit- ում: Ուղղակի կողմնակալացրեք ուժեղացուցիչը 5V- ով և GND- ով: Մենք չունենք դիֆերենցիալ աուդիո մուտքագրումներ, այնպես որ ձախ և աջ բարձրախոսները միացրեք դրական տերմինալներին և բացասական տերմինալները կապեք GND- ի հետ: Gain- ը ճշգրտվում է jumper- ի միջոցով: Ես սահմանում եմ առավելագույնը և ծրագրային ապահովման միջոցով փոխում եմ ելքային ձայնային ազդանշանների ամպլիտուդը `ձայնը կարգավորելու համար: Սարքը խլացնելու համար ես ունեմ NMOS տրանզիստոր, որը վերահսկում է 5 Վ կողմնակալությունը: Այս NMOS տրանզիստորների դարպասը վերահսկվում է Teensy- ի կողմից: Իմ խնդիրն այն է, որ մշտական բարձր հաճախականության աղմուկը առկա է արտաքին բարձրախոսներում: Ես դա կվերլուծեմ տատանումների վրա, հնարավոր է, որ 5 Վ -ի կողմնակալությունից է գալիս մարտկոցը կարգավորիչի միացման պատճառով կամ գծերը կարող են ինչ -որ տեղ վերցնել ՌԴ -ն: Բացի այդ, համոզվեք, որ ոլորեք աջ և ձախ գծերը `էլեկտրամագնիսական միջամտությունը (EMI) նվազագույնի հասցնելու համար:

Քայլ 4: ipայրամասային միացում

Ipայրամասային միացում
Ipայրամասային միացում
Perայրամասային միացում
Perայրամասային միացում

Այս սխեման ներառում է USB տեղադրիչներ և LED ցուցիչ: Պատվիրեք PCB- ն իմ հղումով և կիսով չափ կտրեք կետավոր գծի օգնությամբ ՝ օգտագործելով սղոցը: USB- ի կողքին բոլորը միացնում են երկու կին USB պորտերը տախտակին: LED- ի կողմում կպցրեք 5 LED- ների և 5 դիմադրիչների շարքը: 5V, GND, D+, D-կարող են երկարացվել ՝ օգտագործելով Raspberry PI- ի ապամոդեցված USB- երից մինչև PCB լարերը: LED PCB- ն կարող է տեղադրվել այնպես, որ լույսը փայլում է պատյանի վերևի անցքերի միջով: Teensy- ի 5 PWM ելք դեպի LED- ները `GND- ի հետ միասին: Աշխատանքի ցիկլը փոփոխելով ՝ կարող եք փոխել LED- ների պայծառությունը:

Գնել PCB ՝

Քայլ 5: mingրագրավորում

Ծրագրավորում
Ծրագրավորում
Ծրագրավորում
Ծրագրավորում
Ծրագրավորում
Ծրագրավորում

Դեռահաս:

Եթե դուք այն միացրել եք ինձ նույնը, ապա կարող եք պարզապես օգտագործել Github- ում տրամադրածս կոդը: Այնուամենայնիվ, խորհուրդ կտամ ինքներդ գրել, քանի որ ավելի լավ կհասկանաք համակարգը և կկարողանաք հեշտությամբ շահարկել և հարմարեցնել այն ձեր սրտով: Programրագրավորումը շատ պարզ է, այն իսկապես գալիս է փակցնելու մի քանի if հայտարարություններ ՝ ստուգելու, թե արդյոք ձեր կոճակները սեղմված են: PJRC- ի օգտակար ցուցում: Դուք կարող եք օգտագործել Arduino IDE- ն `ձեր կոդը գրելու, ինչպես նաև Teensy- ում վերբեռնելու համար:

ԿՈԴ:

github.com/timlindquist/Nintimdo-RP

Թվային կոճակներ. Այս օրինակը ցույց է տալիս, որ ես ստուգում եմ, թե արդյոք թվային 20 -րդ կապն սեղմված է, և այնուհետև դուրս եմ բերում սերիական ջոյսթիկի ճիշտ հրամանը: Դուք կարող եք ընտրել կոճակի համար 1 -ից 32 -ը, քանի որ Retropie- ն ամեն դեպքում սկզբում կատարում է վերահսկիչի քարտեզագրման կարգավորում: Joystick.button (կոճակները ՝ 1-32, սեղմված = 1 թողարկված = 0)

Անալոգային կոճակներ.

Օրինակում աջ ջոյսթիք ուղղահայացը միացված է անալոգային 41. Անալոգային (pin) գործառույթը ստանում է լարման մակարդակ 0 -ից 5 Վ -ի միջև և վերադարձնում 0 -ից 1023 -ի արժեքը: Իդեալական կենտրոնի դիրքը կհամապատասխանի 2.5 Վ -ին կամ 512 -ին, Այնուամենայնիվ, դա իմ անալոգային փայտիկի դեպքում չէր, ուստի անհրաժեշտ էր ճշգրտում կատարել: Դա արվել է ստորև ցուցադրված վերափոխման միջոցով: Դրանից հետո ես պետք է ստուգեի, թե արդյոք սահմանները չեն գերազանցում 0 -ից մինչև 1023 -ը: Ի վերջո, անալոգային joystick հրահանգը ուղարկվել է սերիայի միջոցով `որպես J անալիզի կոճակ` Joystick. Z (արժեք 0 -ից 1023):

Քայլ 6: Ընտրովի նավահանգիստ

Ընտրովի նավահանգիստ
Ընտրովի նավահանգիստ
Ընտրովի նավահանգիստ
Ընտրովի նավահանգիստ
Ընտրովի նավահանգիստ
Ընտրովի նավահանգիստ

Նավահանգիստ:

Այս կառուցվածքն ամբողջական չէր լինի առանց լիցքավորման և հեռուստացույցի հեշտ միացման համար նախատեսված նավահանգստի, այնպես որ ես այն պատրաստել եմ ստորև ներկայացված նկարներում: Եռաչափ մոդելները մյուսների հետ հասանելի են իմ Github փաթեթում:

Մոդելներ:

github.com/timlindquist/Nintimdo-RP_3D_mod…

Քայլ 7: Արդյունքներ

Արդյունքները
Արդյունքները
Արդյունքները
Արդյունքները
Արդյունքները
Արդյունքները
Արդյունքները
Արդյունքները

Հետևյալ տեսանկյունից, ես կցանկանայի, որ ես HDMI- ի պորտը կատարեի PCB- ով `նախապես գնված կին պատի տեղադրման փոխարեն: Իրականում սա շատ տարածք կխնայի, ես ստիպված էի մալուխը պարուրակի մեջ խցկել ՝ խուսափելու այն կտրելուց և 19 լարերը նորից զոդելուց: Ես պատռված եմ ավելի փոքր մարտկոցով գնալու համար, քանի որ բջջի բարձրությունն իմ սահմանափակող գործոնն էր ամբողջ սարքի հաստության մեջ: Այնուամենայնիվ, դրա նվազեցումը բացասաբար կազդի մարտկոցի կյանքիս վրա:

Ընդհանուր առմամբ, դրա արժեքը կազմել է մոտ 350 դոլար: Սա չի ներառում ազնվամորու պի, որը ես կոտրեցի ՝ փորձելով չափսերը սափրել… Դեռ ուրախ եմ, որ փորձեցի: Դա զվարճալի ամառային նախագիծ էր `տեսնելու, թե արդյոք ես կարող եմ այն հնարավորինս կոմպակտ դարձնել, միևնույն ժամանակ ներսում տեղադրելով շատ զովացուցիչ հատկություններ:

Խորհուրդ ենք տալիս: