Բովանդակություն:
- Պարագաներ
- Քայլ 1. Արագացուցիչի միջերես Raspberry Pi- ի հետ
- Քայլ 2. Ազդեցիկ կոճակ Raspberry Pi- ի հետ
- Քայլ 3. Մշակի Python սցենարի մշակում ՝ մկնիկի ցուցիչը սերիական վերահսկելու համար
- Քայլ 4. Մշակել Python Script ՝ մկնիկի ցուցիչը Bluetooth- ի միջոցով կառավարելու համար
- Քայլ 5. Արագացուցիչի և կոճակի տեղադրումը ձեռնոցի վրա:
Video: [Wearable Mouse] Bluetooth- ի վրա հիմնված Wearable Mouse Controller Windows 10-ի և Linux- ի համար. 5 քայլ
2024 Հեղինակ: John Day | [email protected]. Վերջին փոփոխված: 2024-01-30 09:46
Ես պատրաստել եմ Bluetooth- ի վրա հիմնված մկնիկի վերահսկիչ, որը կարող է օգտագործվել մկնիկի ցուցիչը վերահսկելու և համակարգչով մկնիկի հետ կապված գործողություններ կատարելու համար ՝ առանց որևէ մակերեսի դիպչելու: Էլեկտրոնային սխեմաները, որոնք տեղադրված են ձեռնոցի վրա, կարող են օգտագործվել արագացուցիչի միջոցով ձեռքի շարժումները հետևելու համար և կարող են թարգմանվել մկնիկի ցուցիչի շարժման մեջ: Այս սարքը միացված է նաև կոճակին, որը կրկնում է ձախ կոճակի կտտոցը: Սարքը կարող է սերիականորեն կցվել համակարգչին (USB- ի միջոցով) կամ անլար `Bluetooth կապի միջոցով: Bluetooth- ն ապահովում է հզոր և ունիվերսալ անլար հաղորդակցություն հյուրընկալող սարքի և այս կրելի մկնիկի միջև: Քանի որ Bluetooth- ը լայնորեն հասանելի է և ներկառուցված է գրեթե բոլոր անձնական նոթբուքերի հետ, նման կրելի սարքի օգտագործման դեպքերը լայն են: Raspberry Pi- ի օգտագործումը, որը տարբեր ծրագրերի համար սովորաբար օգտագործվող զարգացման հարթակ է, տարբեր սենսորների փոխազդեցությունը և նման սարքի մշակումը հեշտ է և մասշտաբելի: Ձեռնոցը կարող է փոխարինվել ցանկացած այլ կրելիով `դրա կիրառումը ավելի լայն դարձնելու համար:
Որպես կանխարգելիչ միջոց COVID-19- ի դեմ, նպատակահարմար է խուսափել տարբեր մարդկանց միջև տարածվող մակերեսներին դիպչելուց, իսկ դիպչող էկրանով նոթբուք կամ մկնիկ կարող է լինել այդ ընդհանուր մակերեսների շարքում: Նման կրելի սարքի օգտագործումը օգնում է պահպանել հիգիենան և սովորաբար օգտագործվող մակերեսները ախտահանել:)
Պարագաներ
- Raspberry Pi 3 Model B V1.2
- SparkFun եռակի առանցքի արագացուցիչի բեկում - MMA8452Q
- Արականից իգական Jumper Wire
- Ձեռնոց
- Սկոտչ
- Մկրատ
- Միկրո USB մալուխ
- HDMI մալուխ (Raspberry Pi- ի միջոցով կարգաբերելու համար)
Քայլ 1. Արագացուցիչի միջերես Raspberry Pi- ի հետ
Ես օգտագործեցի MMA8542Q եռակի առանցքի արագացուցիչ ՝ Sparkfun- ից, որն օգտագործում է I2C հաղորդակցության արձանագրությունը ՝ Raspberry Pi GPIO կապանքների հետ խոսելու և առանցքների տվյալները ուղարկելու համար: Այս տվիչը ապահովում է գործունեության տարբեր եղանակներ `կարգավորվող տվյալների արագությամբ, քնի ռեժիմներով, արագացման տիրույթով, ֆիլտրի ռեժիմով և այլն: Ես գտա, որ Pibits- ի ծածկագիրը շատ օգտակար է սենսորի իմ սկզբնական կազմաձևման և ձեռքի շարժումներով փորձարկելու համար: Ավելի լավ է առաջինը տեղադրել սենսորը հարթ մակերևույթի վրա և դետերմինիստական թեքություններ կատարել `միաժամանակ պահպանելով սենսորի հումքի արժեքները: Սա հատկապես օգտակար է հասկանալու համար, թե ինչպես է այս սենսորը արձագանքում ձեռքի տարբեր ժեստերին և ինչպես կարող ենք սահմանել մեր կիրառման շեմերը: Երբ արագացուցիչը հաջողությամբ միացված է, կարող եք տեսնել Pi- ի տերմինալի էկրանին եկող հումքի առանցքային տվյալները:
Քայլ 2. Ազդեցիկ կոճակ Raspberry Pi- ի հետ
Այս կրելի սարքում ես միացրեցի մի կոճակ, որը կարող է աշխատել որպես ձախ մկնիկի կոճակ, որպեսզի կարողանամ կտտացնել էկրանի պատկերակներին: Կոճակի 2 ծայրերը միացված են Pi- ի 2 GPIO կապին: Պիներից մեկը թողարկում է տրամաբանական բարձր մակարդակ, իսկ մյուս քորոցը կարդում է այդ արժեքը: Երբ կոճակը սեղմվում է, շրջանը փակվում է, և մուտքագրման քորոցը կարողանում է կարդալ տրամաբանական բարձր արժեք, որն այնուհետև մշակվում է իմ գրած սցենարի միջոցով ՝ ձախ մկնիկի կտտոցը ընդօրինակելու համար: Soldոդման երկաթի բացակայության պատճառով ես ժապավեն օգտագործեցի ՝ թռիչքները կոճակով միացնելու համար:
Քայլ 3. Մշակի Python սցենարի մշակում ՝ մկնիկի ցուցիչը սերիական վերահսկելու համար
Ես օգտագործել եմ Pyautogui Python գրադարանը ՝ մկնիկի ցուցիչը վերահսկելու համար: Այս գրադարանից օգտվելու պատճառն այն էր, որ այն աշխատում է ինչպես Linux- ի, այնպես էլ Windows հարթակի վրա: Իմ Raspberry Pi- ի մկնիկի ցուցիչը վերահսկելու համար նախ իմ Pi- ն միացրեցի ցուցադրման: Այնուհետև, ես օգտագործեցի գրադարանի տրամադրած հետևյալ API- ները ՝ մկնիկի ցուցիչս վերահսկելու համար.
- pyautogui.move (0, 200, 2) # շարժում է մկնիկը 200 պիքսել ներքև 2 վայրկյանի ընթացքում
- pyautogui.click () # սեղմեք մկնիկը
Արագացուցիչից եկող սխալի տվյալները զտելու համար ես օգտագործել եմ միջինացման և զտման այլ մեթոդներ, որոնք հեշտությամբ կարելի է հասկանալ կցված ծածկագրի միջոցով: API pyautogui.move- ը (0, y) օգտագործվել է այնպես, որ մկնիկի ցուցիչը կարող է միաժամանակ կամ վեր-վար գնալ, կամ ձախ-աջ: Դա պայմանավորված է նրանով, որ արագացուցիչը հաղորդում է առանցքներ X, Y և Z ուղղությամբ, սակայն API- ն վերցնում է ընդամենը 2 արգումենտ ՝ X և Y առանցքներ: Հետևաբար, այս մոտեցումը շատ հարմար էր իմ արագացուցիչի և էկրանի ժեստերի քարտեզագրման համար:
Քայլ 4. Մշակել Python Script ՝ մկնիկի ցուցիչը Bluetooth- ի միջոցով կառավարելու համար
Այս մասը առաջադեմ ծրագիր է, որի դեպքում Bluetooth- ի հնարավորություններ ունեցող ցանկացած նոութբուք կարող է հաղորդակցվել Raspberry Pi- ի հետ սերվեր-հաճախորդ հաղորդակցության մոդելում և անլար փոխանցել մկնիկի կոորդինատների տվյալները: Windows 10 64-բիթանոց նոութբուք ստեղծելու համար, որը թույլ կտա Bluetooth- ի հաղորդակցումը, մենք պետք է հետևենք հետևյալ քայլերին.
Windows 10:
- Ստեղծեք մուտքային Bluetooth COM պորտ:
- Միացրեք Pi- ի Bluetooth- ը նոութբուքի Bluetooth- ով `դարձնելով Pi- ն հայտնաբերելի:
- Տեղադրեք Python- ը Windows- ում:
- Տեղադրեք pip Windows- ում: Pip- ն օգտագործվում է Linux կամ Windows մեքենայի վրա գրադարաններ տեղադրելու համար:
- Տեղադրեք pyautogui- ը Windows- ի միջոցով ՝ pip install pyautogui
- Երբ սարքում տեղադրվում է pyautogui, տեղադրեք Pybluez- ը Windows- ում ՝ օգտագործելով հետևյալ հրամանը Windows տերմինալում ՝ օգտագործելով pip տեղադրեք PyBluez-win10: PyBluez- ը միացնում է Bluetooth հաղորդակցությունը ինչպես Windows, այնպես էլ Linux համակարգիչների վրա:
-
Windows 10 նոութբուքի վրա ծրագիր մշակելու համար մենք պետք է տեղադրենք Microsoft Visual Studio (պահանջվում է 15-20 ԳԲ տարածք) և դրա կառուցման գործիքները: Հետևաբար, PyBluez- ի հետ միասին, մենք պետք է հետևենք հետևյալ հրահանգներին,
- Ներբեռնեք և գործարկեք «Visual Studio Installer»-ը ՝
-
Տեղադրեք «Visual Studio Build Tools 2017», ստուգեք «Visual C ++ build tool» և «Universal Windows Platform build գործիքներ»
- git կլոն
- cd pybluez
python setup.py տեղադրել
- Եթե վերը նշված հրահանգները ճիշտ կատարվեն, Windows- ի տերմինալում Python- ի գործարկումը և pyautogui- ի և Bluetooth մոդուլի ներմուծումը պետք է աշխատեն առանց սխալների, ըստ վերևի պատկերի:
- Windows մեքենայի վրա տեղադրված pybluez գրադարանում անցեք ՝ pybluez-master / მაგალითեր / պարզ / rfcomm-server.py և կատարեք ՝ օգտագործելով python rfcomm-server.py: Եթե տերմինալը անցնում է սպասման վիճակի ՝ առանց սխալների, անցեք ստորև բերված բաժին ՝ Pi- ում Bluetooth կարգավորելու համար: Եթե pybluez- ի տեղադրման մեջ սխալներ կան, կարգաբերման համար դիմեք GitHub Issues- ին:
Raspbian on Raspberry Pi:
- Տեղադրեք PyBluez Pi- ի վրա
- Գործարկեք սերվերի օրինակը Windows- ում: Այնուհետև, Pi- ում, նավարկեք դեպի pybluez-master / samples / simple / rfcomm-client.py և կատարեք: Եթե երկու սարքերը սկսել են հաղորդակցվել, Bluetooth- ը այժմ տեղադրված է երկու սարքերում: Որպեսզի ավելի շատ հասկանաք, թե ինչպես է աշխատում վարդակից հաղորդակցությունը Python- ի հետ, դիմեք MIT- ի այս հղմանը:
Կպահանջվի լրացուցիչ տվյալների վերլուծություն, որոնք կպահանջվեն առանցքների տվյալները Pi- ից ԱՀ ուղարկելու համար, քանի որ տվյալները ուղարկվում են բայթերով: Հաճախորդի և սերվերի տվյալների հաղորդակցության վերաբերյալ լրացուցիչ տեղեկությունների համար դիմեք կից ծածկագրին:
Քայլ 5. Արագացուցիչի և կոճակի տեղադրումը ձեռնոցի վրա:
Երբ արագացուցիչը լավ միջամտում է, կմախքային համակարգը կարծես այս քայլի առաջին պատկերն է:
Քանի որ ձեռնոցի մակերեսը հարթ չէ, ես օգտագործում էի կեղծ վարկային քարտ, որը մեկ -մեկ գալիս էր փոստարկղս: Այս քայլի երկրորդ պատկերի համաձայն, ես ձեռնոցի վերին մակերեսին ամրացրեցի վարկային քարտը կպչուն ժապավենով: Քարտի վրա ես կցեցի իմ արագացուցիչը: Այս կարգավորումը բավական ամուր էր, որպեսզի իմ արագացուցիչը կայուն պահեր և կարողանար ճշգրիտ հետևել իմ ժեստերին:
Խորհուրդ ենք տալիս:
Ընթացիկ ռեժիմի վրա հիմնված տատանումների նախագծում D դասի ձայնային հզորության ուժեղացուցիչների համար `6 քայլ
Ընթացիկ ռեժիմի վրա հիմնված տատանումների նախագծում D դասի ձայնային հզորության ուժեղացուցիչների համար. Վերջին տարիներին D դասի աուդիո հզորության ուժեղացուցիչները դարձել են նախընտրելի լուծում դյուրակիր աուդիո համակարգերի համար, ինչպիսիք են MP3- ը և բջջային հեռախոսները `բարձր արդյունավետության և էներգիայի ցածր սպառման պատճառով: Տատանողը D au դասի կարևոր մասն է
Առանց էկրանի / ցուցադրման (առանց գլխի) աշխատելը Raspberry Pi- ի կամ Linux- ի վրա հիմնված այլ համակարգիչների վրա `6 քայլ
Առանց էկրանի / ցուցադրման (առանց գլխի) աշխատելը Raspberry Pi- ի կամ Linux- ի / unix- ի վրա հիմնված այլ համակարգիչների վրա. Երբ մարդկանց մեծ մասը գնում է Raspberry PI, նրանք կարծում են, որ իրենց անհրաժեշտ է համակարգչի էկրան: Մի վատնեք ձեր գումարը համակարգչի անհարկի մոնիտորների և ստեղնաշարերի վրա: Մի վատնեք ձեր ժամանակը համակարգիչների միջև ստեղնաշարեր և մոնիտորներ տեղափոխելով: Մի կապեք հեռուստացույց, երբ այն չկա
Arduino- ի վրա հիմնված ոչ կոնտակտային ինֆրակարմիր ջերմաչափ - IR- ով հիմնված ջերմաչափ Arduino- ի միջոցով. 4 քայլ
Arduino- ի վրա հիմնված ոչ կոնտակտային ինֆրակարմիր ջերմաչափ | IR- ով հիմնված ջերմաչափ Arduino- ի միջոցով. Բարև ձեզ, այս հրահանգների մեջ մենք կդարձնենք ոչ կոնտակտային ջերմաչափ arduino- ով: Քանի որ երբեմն հեղուկի/պինդի ջերմաստիճանը չափազանց բարձր է կամ ցածր, ապա դժվար է դրա հետ կապ հաստատել և կարդալ այդ դեպքում ջերմաստիճանը
Եղանակի վրա հիմնված երաժշտության գեներատոր (ESP8266 վրա հիմնված միջինի գեներատոր). 4 քայլ (նկարներով)
Եղանակի վրա հիմնված երաժշտության գեներատոր (ESP8266 Based Midi Generator). Բարև, այսօր ես կբացատրեմ, թե ինչպես պատրաստել ձեր սեփական եղանակի վրա հիմնված փոքր երաժշտության գեներատոր: Այն հիմնված է ESP8266- ի վրա, որը նման է Arduino- ին և արձագանքում է ջերմաստիճանին, անձրևին: և լույսի ուժգնություն: Մի ակնկալեք, որ այն ամբողջ երգեր կամ ակորդներ կհաղորդի
Ինչպես միացնել MicroPython- ի որոնվածը ESP8266- ի վրա հիմնված Sonoff խելացի անջատիչի վրա. 3 քայլ (նկարներով)
Ինչպե՞ս միացնել MicroPython- ի որոնվածը ESP8266- ի վրա հիմնված Sonoff խելացի անջատիչի վրա. Այդ գծից ամենաճկուն և էժան սարքերից են Sonoff Basic- ը և Sonoff Dual- ը: Սրանք Wi-Fi- ով միացված անջատիչներ են ՝ հիմնված հիանալի չիպի ՝ ESP8266- ի վրա: Մինչդեռ