Gameորավարժությունների մեքենա USB Game Controller: 8 քայլ (նկարներով)
Gameորավարժությունների մեքենա USB Game Controller: 8 քայլ (նկարներով)
Anonim
Gameորավարժությունների մեքենա USB խաղերի վերահսկիչ
Gameորավարժությունների մեքենա USB խաղերի վերահսկիչ
Gameորավարժությունների մեքենա USB խաղերի վերահսկիչ
Gameորավարժությունների մեքենա USB խաղերի վերահսկիչ
Gameորավարժությունների մեքենա USB խաղերի վերահսկիչ
Gameորավարժությունների մեքենա USB խաղերի վերահսկիչ
Gameորավարժությունների մեքենա USB խաղերի վերահսկիչ
Gameորավարժությունների մեքենա USB խաղերի վերահսկիչ

Ինքնուրույն և ընտանիքում վարժությունները խրախուսելու համար ես պատրաստեցի ադապտեր, որը նմանակում է USB խաղի վերահսկիչի ստանդարտ ադապտերին, բայց վերահսկում է խաղի շարժման արագությունը ՝ էլիպսաձև մեքենայի կամ վարժության հեծանիվով ոտնակ անելով: Դա հատկապես հաճելի է մրցարշավային խաղերի համար: Դա, անշուշտ, դրդում է արագ ոտնակ անել ՝ մրցարշավային խաղեր խաղալիս:

Հիմնական սարքավորումն է $ 2 «սև դեղահաբ» STM32F103C8 զարգացման տախտակ `stm32duino Arduino միջուկով և USB HID գրադարանով, որը ես մշակել եմ libarra111- ի հիմնական պատառաքաղի հիման վրա: STM32F1- ը արագ և էժան է և ունի լիարժեք USB աջակցություն, ուստի այն կատարյալ է նախագծի համար:

Օգտագործելու համար հարկավոր է սեղմել էլիպսաձև կամ վարժության հեծանիվի ռոտացիայի սենսորին (եթե ձեր ռոտացիայի սենսորն այլ կերպ է աշխատում մեր մեքենաների սարքերից ՝ մոտ 3 Վ, ակտիվ ցածր), գուցե անհրաժեշտ լինի փոփոխել սխեման և (կամ) ծածկագիրը:):

Էլիպսիկ/հեծանիվի պտտման արագությունը վերահսկում է վերահսկիչի սահիչը: Բացի այդ, դուք միացնում եք ստանդարտ Wii Nunchuck կամ Gamecube վերահսկիչ ադապտորին `ջոյսթիք շարժման, կոճակների և այլնի համար: Կան բազմաթիվ տարբեր կառավարման ռեժիմներ: Օրինակ, փոքր երեխաներին կարող է անհրաժեշտ լինել մի փոքր արագացնել, իսկ որոշ խաղեր կարող են օգտագործել վերահսկման այլ սխեմա: Softwareրագրակազմում կան մի շարք ներկառուցված կառավարման սխեմաներ, իսկ մյուսները հեշտությամբ կարող են ավելացվել ծածկագրում: Սարքը կարող է ընդօրինակել USB խաղի վերահսկիչ, ստեղնաշար, մկնիկ, XBox 360 վերահսկիչ կամ առաջին երեքի որոշ համակցություններ:

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

Ադապտորը աշխատում է որպես ստանդարտ USB վերահսկիչ, այնպես որ կարող եք այն օգտագործել Windows, Linux, OS X, Android և այլն:

Որպես բոնուս, ադապտերն ունի այս նախագծի բոլոր գործառույթները ՝ աշխատելով որպես Gamecube- ի լիարժեք գործառույթ, որը թույլ է տալիս համակարգչում օգտագործել Gamecube կարգավորիչներ, ներառյալ Gamecube/Wii համատեղելի Dance Dance Revolution պարային գորգերով խաղերի կառավարումը:

Արժեքը կազմում է մոտ $ 10, գումարած պատյան (ես ունեմ 3D տպելի դիզայն), լարեր և զոդ: Մասեր:

  • «Սև դեղահատ» stm32f103c8 զարգացման տախտակ ($ 2 Aliexpress- ում)
  • Gamecube վարդակից ($ 1.60 Aliexpress- ում, Gamecube երկարացման լարով, որը կարելի է կտրել)
  • Nunchuck վարդակից բեկման տախտակ ($ 0.51 Aliexpress- ում, Wiichuck- ի որոնում)
  • Փոքր երկու տեղանոց փոխարկիչ (Aliexpress- ում 1 դոլարից ցածր)
  • Ձեր ընտրությամբ երկու դիրիժոր արական և իգական միակցիչներ (մոտ $ 1 Aliexpress- ում, եթե գնում եք 5.5 մմ հզորության տակառի միակցիչներով); Ձեզ անհրաժեշտ է մեկ կին միակցիչ մեկ վարժության մեքենայի համար
  • 2 շոշափելի անջատիչ ($ 0.50 -ից ցածր Aliexpress- ում)
  • 4 կարմիր LED (Aliexpress- ում $ 0.50 -ից ցածր; կարող եք օգտագործել նաև փոքր Nokia LCD էկրան)
  • կոնդենսատորներ ՝ 10uF էլեկտրոլիտիկ, և ընտրովի ՝ 100nF
  • դիմադրողներ ՝ 1 x 100K, 2 x 10K, 1 x 1K, 4 x 220ohm
  • փոքր նախատախտակ (1 դոլարից ցածր Aliexpress- ում):

Nunchuck- ը լավ է էլիպսաձև մեքենայով մեկ ձեռքով օգտագործելու համար: Exerciseորավարժությունների վրա կարող եք օգտագործել երկու ձեռքի ադապտեր, ինչպիսին է Gamecube- ը: Եթե ցանկանում եք օգտագործել կառավարման այս երկու տարբերակներից մեկը, կարող եք ավելի քիչ կապեր օգտագործել:

Ձեզ նույնպես պետք է համակարգիչ, եռակցման սարք և բազմաչափ: Ձեզ նույնպես կպահանջվի UART-to-USB կամուրջ (ես օգտագործել եմ Arduino Mega- ն, որն ունեի մեկ այլ նախագծի համար, կամ կարող եք մեկ դոլարով գնել Aliexpress- ի CP2102 մոդուլը) `ձեր սև հաբի վրա բեռնիչ տեղադրելու համար Arduino միջավայր, այլապես կարող եք ծախսել ևս մի քանի դոլար և ձեռք բերել RobotDyn- ի զարգացման տախտակը Arduino բեռնիչով նախաբեռնված:

Թույլ տվեք ավելացնել, որ ես սա մտնում եմ «Անիվներ» մրցույթի մեջ, որովհետև դա համակարգչով ավտոարշավների խաղերում վիրտուալ անիվները համակարգչային հեծանիվների և էլիպսաձևերի ֆիզիկական անիվների հետ կապելու միջոց է:

Քայլ 1: Հպեք պտտման տվիչի վրա

Հպեք պտտման տվիչի վրա
Հպեք պտտման տվիչի վրա
Հպեք պտտման տվիչի վրա
Հպեք պտտման տվիչի վրա
Հպեք պտտման տվիչի վրա
Հպեք պտտման տվիչի վրա
Հպեք պտտման տվիչի վրա
Հպեք պտտման տվիչի վրա

Երկու մարզասարքերն էլ, որոնք կոտրել եմ, ունեն մխիթարիչ, որը ցույց է տալիս արագությունը: Վահանակի և մեքենայի մարմնի միջև լարեր են անցնում: Տվյալներին մուտք գործելու համար հարկավոր է թակել այս լարերը: Եթե ձեր մեքենաները նման են իմին, ապա մխիթարիչը կարող է հեռացվել, և դուք այնտեղ գտնում եք կամ ժապավենի մալուխ (էլիպսաձև), կամ երկու լար (հեծանիվ): Ես սոսնձեցի դրանք ՝ անջատելով լարերը և դրանք կամրջելով առանձին արականից իգական թռչկոտների հետ, որոնց վրա կարող էի հարվածել:

Օգտագործեք փորձարկում և սխալ և մի մուլտիմետր `մի զույգ լարեր որոշելու համար, որոնց միջև լարման զարկերակը լիարժեք պտույտի ժամանակ է:

Հիմնականում փորվածքն այսպիսին է. Միացրեք բազմիմետրը մի զույգ լարերի (զգույշ եղեք, որ որևէ բան չկարճացվի) մեքենան աշխատի, և շատ դանդաղ պտտեք ոտնակները: Մեր երկու մեքենաներում էլ կա մի զույգ լար, որոնց միջև լարումը սովորաբար +3V- ի սահմաններում է, բայց պտույտի կարճ հատվածի ընթացքում այն ընկնում է գետնին. Սա ակտիվ-ցածր սխեմա է: Դուք կարող եք գտնել, որ ձեր մեքենան ունի ակտիվ բարձր սխեմա, որտեղ ռոտացիայի մեծ մասը հիմնավորված է, և զարկերակը դրական է, և ապա ձեզ հարկավոր է խմբագրել Arduino էսքիզը:

Եթե կարծում եք, որ կա որևէ հնարավորություն, որ ձեր վրայի վահանակի լարերը ցանցից են, խորհուրդ եմ տալիս կանգ առնել, եթե իսկապես չգիտեք, թե ինչ եք անում: Բարեբախտաբար, մեր վարժության հեծանիվը մարտկոցով է սնվում, և մեր էլիպսաձև խրոցը մտնում է պատի գորտնուկի մեջ, այնպես որ կոնսոլի շուրջը կա մոտ 12 Վ լարման հոսանք:

Exerciseորավարժությունների հեծանիվի դեպքում դա իսկապես հեշտ էր: Ընդամենը չորս լար կար: Երկուսը սրտի զարկերի մոնիտորի համար էին, իսկ երկուսը ՝ ռոտացիայի տվիչի:

Elliptical- ը շատ ավելի շատ լարեր ուներ, և դա ավելի շատ աշխատանք էր: Դաժան ուժի մեթոդը սա է. Մի զույգ լարերին ամրացրեք բազմիմետր: Դանդաղ կատարեք ամբողջական պտույտ (կամ ամեն դեպքում մի փոքր ավելի) պեդալների վրա և տեսեք, թե արդյոք կա լարման անկում կամ ցատկ: Եթե այո, ապա դա ստացել եք: Եթե ոչ, կրկնեք մեկ այլ զույգի համար: Դա շատ փորձություն և սխալ է. 13 լարերի համար դա 78 պտույտ է:

Ահա մի հնարք, որը կարող է օգնել ձեզ արագացնել մետաղալարերի ճիշտ զույգի որոնումը: Դուք կարող եք հույս ունենալ, որ ձեր մեքենան, ինչպես և իմը, ունի դետեկտորի լարումը սովորաբար բարձր ՝ ցածր զարկերակով: Եթե այո, ապա եթե ոտնակները թողնում եք պատահական վայրում, ապա լավ հնարավորություն ունեք, որ երկու դետեկտորային լարերը նրանց միջև ունեն +3V կամ +5V մոտակայքում: Այսպիսով, միայն ոտնակի պտույտի փորձարկում կատարեք այն զույգ լարերի համար, որոնց միջև կա +3V կամ +5V:

Մեկ այլ հնարք. Հնարավոր է, որ դուք կարողանաք որոշել, թե ո՞ւր է պտտվում պտտման սենսորը: Օրինակ, ձեր մեքենան կարող է էկրանին ինչ -որ բան թարթել կամ թարմացնել արագության ցուցադրումը, կամ ակտիվացնել քնի ռեժիմից կամ ազդանշան տալ: Եթե այո, ապա շարժեք ոտնակները պտույտի մոտ 1/3-ով, այնուհետև փնտրեք զույգ լարեր, որոնց միջև կա 3-5 Վ, և փորձեք դրանք ՝ ոտնակները տեղափոխելով այն դիրքը, որտեղ սենսորը գործարկվում է:

Եթե կարողանաք նույնականացնել գրունտի լարերը, կարող եք զգալիորեն արագացնել գործընթացը, քանի որ այդ դեպքում միայն անհրաժեշտ է անցնել գետնին և յուրաքանչյուր անհայտ մետաղալարի միջև: Odարմանալի է, սակայն, որ մեր էլիպսաձեւ էլեկտրամատակարարման հիմքը կարծես նույնը չէր, ինչ ռոտացիայի դետեկտորի հիմքը:

Լարերը նույնականացնելուց հետո նշեք դրանք: Համոզվեք, որ նշում եք.

  • բարձր լարման մակարդակ. իմ ուրվագծի մեկ տող; եթե այն ավելի քան 5 Վ է, ապա ձեզ հարկավոր է ավելացնել լարման բաժանարար
  • ռոտացիայի հայտնաբերման զարկերակը ցածր է, թե բարձր. եթե զարկերակը բարձր է, ձեզ հարկավոր է խմբագրել տող իմ Arduino էսքիզում:

Եթե ունեք օսլիլոսկոպ, և վարժության մեքենան մարտկոցով է աշխատում, ապա կարող եք նաև բազմաչափի փոխարեն օգտագործել տատանումներ: (Եթե վարժության մեքենան միացված է AC- ին և ձեր օսլիլոսկոպը, դուք պետք է իմանաք գրունտային հանգույցների և դրանցից խուսափելու եղանակների մասին: carefulգույշ եղեք):

Քայլ 2. Պատրաստել զարգացման խորհուրդ

Պատրաստել զարգացման խորհուրդը
Պատրաստել զարգացման խորհուրդը
Պատրաստել զարգացման խորհուրդը
Պատրաստել զարգացման խորհուրդը
Պատրաստել զարգացման խորհուրդը
Պատրաստել զարգացման խորհուրդը

Sոդեք կենտրոնական թռիչքի վեց կապում ձեր սև հաբի վրա:

Եթե դուք ունեք RobotDyn տախտակ Arduino բեռնիչով, միացրեք B0- և B1- ը կենտրոնական կապումներին և ավարտեք քայլը:

Հակառակ դեպքում, այժմ անհրաժեշտ է տեղադրել bootloader- ը: Ձեզ հարկավոր կլինի կամ անկախ UART- ից USB կամուրջ, կամ կարող եք օգտագործել Arduino Uno կամ Mega այս նպատակով: Չնայած սև հաբը աշխատում է 3.3 Վ լարման տակ, UART կապումներն հանդուրժում են 5 Վ, այնպես որ մի անհանգստացեք, թե արդյոք ձեր միակցիչը աշխատում է 3.3 Վ կամ 5 Վ լարման դեպքում:

Եթե ունեք Uno կամ Mega, տեղադրեք jumper մալուխ RESET- ի և GROUND- ի միջև: Սա Arduino- ն վերածում է UART- ից USB- ի նվիրված կամուրջի, բացառությամբ այն բանի, որ TX/RX կապումներն այն հակառակն են, ինչ սովորաբար լինում են միակցիչի վրա:

Ներբեռնեք bootloader երկուական: Դուք ցանկանում եք generic_boot20_pb12.bin: Windows- ում տեղադրեք ST- ի Flash Loader Demonstrator- ը: Linux- ում (և գուցե OS X- ում և նույնիսկ Windows- ում, եթե նախընտրում եք հրամանի տողերի գործիքները), փոխարենը օգտագործեք այս python սցենարը, բայց իմ հրահանգները կլինեն Windows- ի համար:

Կատարեք հետևյալ կապերը.

  • PA9- ից UART կամուրջ RX («TX», եթե դուք օգտագործում եք Arduino հնարքը)
  • PA10- ից UART կամուրջ TX («RX», եթե դուք օգտագործում եք Arduino հնարքը)
  • G դեպի UART կամուրջ

Ինձ դուր է գալիս օգտագործել տրամաբանական զոնդի խորհուրդներ STM32- ի կողքին միացումներ կատարելու համար, բայց կարող եք պարզապես կպցնել որոշ լարերի մեջ, որոնք հետագայում կարող եք կտրել (կամ ապամոնտաժել, եթե ցանկանում եք կոկիկ լինել):

Միացրեք ձեր UART կամուրջը ձեր համակարգչին: Միացրեք Սև դեղահատը իր USB պորտի միջոցով (ամենալավը, եթե այն միացնեք լիցքավորիչին, այլ ոչ թե համակարգչին, քանի որ համակարգիչը, ամենայն հավանականությամբ, կբողոքի չճանաչված USB սարքի համար): Սկսեք Flash Loader Demonstrator- ը: Ընտրեք COM նավահանգիստ ձեր UART կամրջի համար: Եթե առկա է, ընտրեք «Հեռացնել պաշտպանությունը»: Ընտրեք 64kb, այլ ոչ թե 128kb ֆլեշ տարբերակ: Եվ վերբեռնեք bootloader- ի երկուական:

Անջատեք ամեն ինչ և ապա թռիչքը տեղափոխեք B0+/կենտրոնից B0-/կենտրոն: Այժմ դուք ունեք bootloader, որը կարող եք օգտագործել Arduino IDE- ի հետ:

Քայլ 3. Պատրաստեք Stm32duino- ն Arduino IDE- ում

Պատրաստեք Stm32duino- ն Arduino IDE- ում
Պատրաստեք Stm32duino- ն Arduino IDE- ում
Պատրաստեք Stm32duino- ն Arduino IDE- ում
Պատրաստեք Stm32duino- ն Arduino IDE- ում

Ենթադրում եմ, որ դուք ունեք տեղադրված վերջին Arduino IDE- ն:

Գործիքներում | Տախտակներ | Տախտակների կառավարիչ, տեղադրեք աջակցություն Arduino Zero- ի համար (պարզապես Zero- ն տեղադրեք որոնման մեջ, կտտացրեք գտնված գրառմանը, այնուհետև Տեղադրեք): Այո, դուք չեք աշխատում Zero- ի հետ, բայց դա կտեղադրի gcc- ի ճիշտ կազմողը:

Հաջորդը, ներբեռնեք stm32duino միջուկը: Windows- ում խորհուրդ եմ տալիս ներբեռնել zip ֆայլը, քանի որ ֆայլերը ստուգելիս (իհարկե, svn- ով), ես որոշ թույլտվությունների խնդիրներ ունեի Windows գործիքների գրացուցակի ֆայլերի հետ, որոնք շտկման կարիք ունեին: Տեղադրեք մասնաճյուղը Arduino/Hardware/Arduino_STM32 (այնպես որ կունենաք պանակներ, ինչպիսիք են Arduino/Hardware/Arduino_STM32/STM32F1 և այլն) Windows- ում տեղադրեք վարորդներ ՝ գործարկելով վարորդներ / win / install_drivers.bat:

Տեղադրեք իմ USBHID գրադարանը. Գնացեք ուրվագիծ | Ներառել գրադարան | Կառավարեք գրադարանները և որոնեք USBHID- ը: Կտտացրեք այն և կտտացրեք Տեղադրեք:

Տեղադրեք իմ GameControllersSTM32 գրադարանը. Գնացեք ուրվագիծ | Ներառել գրադարան | Կառավարեք գրադարանները և որոնեք GameControllers: Կտտացրեք դրա վրա և կտտացրեք Տեղադրեք:

Քայլ 4: Շղթա

Շրջան
Շրջան
Շրջան
Շրջան
Շրջան
Շրջան
Շրջան
Շրջան

Իմ տեղադրումը օգտագործում է չորս LED ՝ ներկայիս կրկնօրինակման ներկայացման ռեժիմը ցույց տալու համար (այո, կարելի էր օգտագործել LCD էկրան, բայց ես այն կառուցելիս լուսադիոդներ ունեի), երկու կոճակ ՝ ռեժիմը վեր ու վար փոխելու համար (և մի քանի այլ հնարքներ) և միացման անջատիչ ՝ շարժման ուղղությունը փոխելու համար:

Բացի այդ, Nunchuck- ից կա I2C մուտք և միակցիչ Gamecube վերահսկիչին: Եթե ցանկանում եք աջակցել այս երկուսից միայն մեկին, ապա կարող եք պարզապես խմբագրել gamecube.h էսքիզում և ինքներդ ձեզ մի քանի զոդում փրկել:

Ես օգտագործեցի մի փոքր նախատախտակ `չորս ռեժիմի LED- ները և ռեժիմի անջատման երկու կոճակները (վեր և վար), ինչպես նաև Gamecube- ի տվյալների մեկ ձգվող դիմադրիչը տեղադրելու համար: Ես 3.3 Վ դուրս բերեցի նախատախտակին, բայց ես կարիք չունեի այն գետնին հանելու, չնայած կարող եք, եթե ցանկանում եք: Ես օգտագործեցի ևս մեկ փոքր նախատախտակ ՝ Nunchuck միակցիչը տեղադրելու համար:

Կտրեք Gamecube մալուխը: Wantանկանում եք աշխատել վարդակից, այն, ինչ ձեր վերահսկիչը միացնելու է: Շղթայական մալուխներ միացման համար:

Այժմ կատարեք այս կապերը ըստ սխեմայի սխեմայի.

  • 10uF կոնդենսատոր 3.3v- ի և գրունտի միջև (գետնին գտնվող ցանկացած էլեկտրոլիտիկայի մինուս կողմով): Սա պետք է հնարավորինս մոտ լինի չիպին, այնպես որ ես այն զոդեցի անմիջապես զարգացման տախտակին, այլ ոչ թե նախատախտակին: Լավ չափման համար դուք կարող եք ավելացնել 100nF, ինչպես ես, բայց վստահ չեմ, որ դրա կարիքը կա:
  • Gamecube վարդակից #2 - A6 stm32 տախտակի վրա
  • 1 Կոմ դիմադրություն Gamecube վարդակից #2 և 3.3 Վ միջև stm32 տախտակի վրա (կամ նախատախտակի վրա)
  • Gamecube վարդակից #3 և #4 - հիմնավորված stm32 տախտակի վրա
  • Gamecube վարդակից #6 - 3.3V stm32 տախտակի վրա (կամ նախատախտակի վրա)
  • LED սերիա 220 օմ (կամ ավելի մեծ) դիմադրիչով `Am stm32 տախտակի վրա և 3.3 Վ (բացասական ծայր (հարթ) մինչև PA0; դրական ավարտ մինչև 3.3 Վ)
  • Կրկնեք LED+դիմադրիչով A1 և 3.3V, A2 և 3.3V, և A3 և 3.3V միջև
  • Ակնթարթային անջատում stm32 տախտակի վրա (ավելացման ռեժիմ) և 3.3V և մեկ այլ A4- ի և 3.3V- ի միջև (նվազման ռեժիմ); այս անջատիչը ավելացնում է ռեժիմի համարը
  • Անջատեք A8- ի և 3.3V- ի միջև
  • վարժությունների մեքենայի հիմք - stm32 հիմք
  • վարժության մեքենա դրական ազդանշան - stm32 տախտակ A7 (նկատի ունեցեք, որ A7- ը լավ է միայն 3.3 Վ -ի դեպքում; եթե ձեր վարժության մեքենան 5 Վ է, օգտագործեք A9 և խմբագրեք gamecube.h)
  • Nunchuck հիմք (պիտակավորված - իմ ադապտերատախտակին) - stm32 հիմք
  • Nunchuck +3.3V (պիտակավորված +) - stm32 3.3V
  • Nunchuck SDA (պիտակավորված D) - stm32 B7
  • Nunchuck SCL (պիտակավորված C) - stm32 B6
  • 10Kohm դիմադրություն Nunchuck SDA- ի և 3.3V- ի միջև stm32 տախտակի վրա
  • 10Kohm դիմադրություն Nunchuck SCL- ի և 3.3V- ի միջև stm32 տախտակի վրա:

Քայլ 5: Տեղադրեք ուրվագիծ

Տեղադրեք Sketch
Տեղադրեք Sketch
Տեղադրեք Sketch
Տեղադրեք Sketch

Ներբեռնեք իմ Gamecube USB Adapter- ի ուրվագիծը և տեղադրեք այն Arduino IDE- ում: Gamecubecontroller.h- ում վերահսկելու որոշ տարբերակներ կան.

  • հեռացնել // #սահմանել ENABLE_EXERCISE_MACHINE- ի դիմաց (սա պետք է անեն բոլորը)
  • եթե ձեզ անհրաժեշտ էր վարժության մեքենայի միացումը տեղափոխել A9, փոփոխեք PA7- ը PA9- ում const uint32_t rotationDetector = PA7 տողում
  • եթե ձեր մարզասարքի պտույտի հայտնաբերման զարկերակը բարձր է, փոխեք #սահմանել ROTATION_DETECTOR_CHANGE_TO_MONITOR FALLING- ը ՝ #սահմանելու ROTATION_DETECTOR_CHANGE_TO_MONITOR RISING
  • եթե չեք ցանկանում օգտագործել Nunchuck, տեղադրեք // #սահմանեք ENABLE_NUNCHUCK- ի դիմաց
  • եթե չեք ցանկանում օգտագործել Gamecube- ի վերահսկիչ, տեղադրեք // #սահմանեք ԱՆNAՆԵԼ GAMECUBE- ի դիմաց:

Arduino IDE- ում ընտրեք Գործիքներ | Տախտակ | Ընդհանուր STM32F103C շարք:

Սեղմեք աջ սլաքի վերբեռնման կոճակը: Նկատի ունեցեք, որ ձեզ կարող է անհրաժեշտ լինել սեղմել վերականգնման կոճակը (կամ անջատել/միացնել) տախտակին ճիշտ ժամանակին, եթե հաղորդագրություն է ստացվում, որ տախտակը ճանաչված չէ:

Քայլ 6: ercորավարժությունների մեքենայի միացում

Ercորավարժությունների մեքենայի միացում
Ercորավարժությունների մեքենայի միացում
Ercորավարժությունների մեքենայի միացում
Ercորավարժությունների մեքենայի միացում
Ercորավարժությունների մեքենայի միացում
Ercորավարժությունների մեքենայի միացում
Ercորավարժությունների մեքենայի միացում
Ercորավարժությունների մեքենայի միացում

Միացրեք մի բաճկոն ձեր մարզասարքի միացման համար: Մեր էլիպսաձև մեքենայի վրա ես այն միացրեցի, մինչդեռ վարժության հեծանիվով ես կարողացա օգտագործել արական և իգական դուպոնտի միակցիչներ: Էլլիպտիկ տեսանկյունից, ես վահանակի կողքին անցք արեցի ՝ միացմանը համապատասխանելու համար: Theորավարժությունների մեքենայի վրա ես ուղղակի լարեր եմ կպցրել դրանից, իսկ դրսից մի փոքր 3D տպագիր տուփ (OpenSCAD ֆայլ):

Քայլ 7: Projectրագրի գործ

Նախագծի գործ
Նախագծի գործ
Նախագծի գործ
Նախագծի գործ
Նախագծի գործ
Նախագծի գործ
Նախագծի գործ
Նախագծի գործ

Կարելի է նախագիծը կցել փոքրիկ ստվարաթղթե տուփի, տուփի սպասքի տարայի կամ հատուկ տպված 3D պատյանով: Քանի որ ես ունեմ 3D տպիչ, ես գնացի հատուկ պատյան: OpenSCAD և STL ֆայլերն այստեղ են:

Ոտքերը նախատեսված են հատակին սոսնձելու համար (սոսնձման աշխատանքներ), և դրանց մեջ կպչուն ռետինե ոտքեր ամրացնելու համար:

Ես նաև տաք սոսնձեցի մի ինչ-որ ամրակող ամրացնող սարք ՝ ինչպես նախագծի պատյանին, այնպես էլ վարժական մեքենաներին:

Քայլ 8: Օգտագործեք

Օգտագործել
Օգտագործել
Օգտագործել
Օգտագործել
Օգտագործել
Օգտագործել
Օգտագործել
Օգտագործել

Երկու կոճակները կարող են փոխվել մինչև 16 տարբեր էմուլյացիայի ռեժիմների միջև (իրականում կարող եք ունենալ ավելի շատ, բայց նախագծում կա ընդամենը չորս LED ՝ ռեժիմի համարը ցուցադրելու համար): Էմուլյացիայի ռեժիմները սահմանվում են gamecubecontroller.h- ում ուրվագծում: Խաղերի մեծ մասի համար կարող եք օգտագործել ռեժիմ 1 -ը ՝ միասնական սլայդերի ժոշտիկ 100% արագությամբ: Նմանակված ջոյսթիկը ունի սահնակ (իրականում երկու սահող, բայց երկուսն էլ նույնն են անում), որը վերահսկվում է վարժական մեքենայի պտույտով: Կոճակները և ջոյսթիկը ինքնին վերահսկվում են Gamecube վերահսկիչի կամ Nunchuck- ի կողմից: Windows- ում որոշ խաղեր ապահովում են XBox 360 վերահսկիչ, բայց ոչ USB Joystick: Նրանց համար օգտագործեք ռեժիմ 13 (սեղմեք ներքևի կոճակը ռեժիմ 1 -ից):

9 -րդ և 10 -րդ ռեժիմները թույլ են տալիս ավելի դանդաղ ոտնակ անել և միևնույն ժամանակ ստանալ լիարժեք սահող դեպրեսիա, ինչը հաճելի է երեխաների համար, կամ ավելի բարձր դիմադրությամբ վարժեցնող մեքենաների համար: Կարող եք նաև արագությունները հարմարեցնել exerciseisemachine.ino- ում:

Կան բազմաթիվ այլ էմուլյացիոն ռեժիմներ: Modelist.pdf- ում էսքիզով տպագրվող տեղեկանք է ներառված:

Theորավարժության մեքենայի վրա ոտնակ անելիս նախագծի LED- ները անցնում են ընթացիկ ռեժիմի համարը ցուցադրելուց մինչև արագություն: Երբ բոլոր չորս լույսերը վառվում են, ձեր արագությունը առավելագույնն է (ընդօրինակված սահնակը ունի առավելագույն ընդլայնում). Բացի այդ, STM32F1 տախտակի վրա կապույտ LED- ը միացված է, երբ ամեն ինչ աշխատում է, բայց թարթում է, երբ ռոտացիայի սենսորը միանում է:

Շարժումը հակադարձելու համար շրջեք ադապտերների տուփի ուղղության միացման անջատիչը:

Windows- ում գործարկեք joy.cpl- ը ՝ չափագրելու և տեսնելու, թե ինչպես են գործերն աշխատում: Քանի որ անհանգստացնող է, որ ստիպված ես իսկապես արագ ոտնակ անել `նմանակված ջիստիկը չափագրելու համար, կա ձևաչափը խաբելու միջոց: Gamecube- ի վերահսկիչի վրա, եթե մոտ 10 վայրկյան անշարժ մնաք, կարող եք սկսել օգտագործել ուսի կոճակները `վերահսկելու համարվող ջոյսթիկի սահիչները: Nunchuck- ի հետ, մինչ պահում եք ռեժիմ-մինուս կոճակը, դրա փոխարեն կարող եք օգտագործել վերև/ներքևի ջոյսթիկը ՝ վերահսկելու համարվող սահիչները:

Եթե ցանկանում եք GUI ՝ էմուլյացիայի ռեժիմները փոխելու համար, Windows- ում էսքիզը ներառում է mode.py, ռեժիմներ փոխելու համար պիթոնի սցենար GUI- ով: Կարող եք նաև անվանել mode.py խմբաքանակի ֆայլ, որը խաղ է սկսում:

Երկու խաղ, որոնք ես գտել եմ, որ իսկապես հիանալի են աշխատում վարժության մեքենայի հետ, են Toybox Turbos- ը և SuperTuxCart- ը (անվճար):

Ադապտորը ներառում է նաև էմուլյացիայի բազմաթիվ այլ հնարավորություններ: Օրինակ, դուք կարող եք օգտագործել այն որպես ուղղակի Nunchuck կամ Gamecube Controller ադապտեր, որը նմանակում է ջոյստիկը, ստեղնաշարը (օրինակ ՝ սլաքները/WASD) և/կամ մկնիկը: Gamecubecontroller.h- ում նշված են բազմաթիվ ռեժիմներ: Կարող եք նաև միացնել Dance Dance Revolution Gamecube/Wii- ի հետ համատեղ պահոց և օգտագործել այն ՝ չնախատեսված խաղեր խաղալու համար, ինչպես Tetris- ը, լրացուցիչ զվարճանքի և վարժությունների համար:

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