Բովանդակություն:
- Պարագաներ
- Քայլ 1: Հավաքեք պարագաները:
- Քայլ 2. NRF մոդուլի միացում Arduino- ի հետ
- Քայլ 3: Եկեք անցնենք կոդավորման:
- Քայլ 4: Հեղինակային նշում
Video: Դարձրեք ձեր անօդաչու սարքի ժեստը վերահսկվող $ 10: 4 քայլով
2024 Հեղինակ: John Day | [email protected]. Վերջին փոփոխված: 2024-01-30 09:48
Այս հրահանգը ուղեցույց է ձեր R/C անօդաչու սարքը ժեստերով վերահսկվող անօդաչու թռչող սարքի վերածելու համար ՝ 10 դոլարից ցածր գնով:
Ես մարդ եմ, ով շատ ոգեշնչված է գիտաֆանտաստիկ ֆիլմերից և փորձում է ֆիլմում ցուցադրվող տեխնոլոգիաները դարձնել իրական կյանքում: Այս նախագիծը ոգեշնչում է երկու նման ֆիլմերից ՝ «STAR WARS: The Empire Strikes Back» և «Project Almanac»: Երկու ֆիլմերում դուք տեսնում եք թռչող օբյեկտ (X-wing Starship և R/C Drone), որոնք կառավարվում էին ձեռքի շարժումներով: Սա ինձ ոգեշնչեց նման բան պատրաստել…
Ակնհայտ է, որ ես X- թևի տերը չեմ, ուստի, ցավոք, ես պետք է աշխատեմ իմ Mini R/C Quadcopter- ի հետ:
Այսպիսով, ծրագիրը հետևյալն է. Իմ նոութբուքում կգործի պատկերի մշակման սցենար, որն անընդհատ փնտրելու է իմ ձեռքը և հետևելու է նրա դիրքին տեսանյութի շրջանակում: Ձեռքի կոորդինատները ստանալուց հետո այն համապատասխան ազդանշան կուղարկի անօդաչու թռչող սարքին, և դա կարվի նոութբուքի հետ միացած Arduino- ի միջոցով, ինչպես նաև NRF24L01 2.4GHz Transceiver մոդուլով, որը կարող է անմիջականորեն հաղորդակցվել ցանկացած R/C անօդաչու թռչող սարքի ստացողի հետ:.
Պարագաներ
- Նոթբուք/աշխատասեղան, որտեղ տեղադրված են վեբ -տեսախցիկ և Python: (Ես օգտագործում եմ իմ W indows նոութբուքը `ներկառուցված վեբ-տեսախցիկով և աշխատում եմ Python 2.7.14-ով)
- Rանկացած R/C անօդաչու սարք, որն աշխատում է 2.4 ԳՀց հաճախականությամբ: (JJRC H36 իմ դեպքում)
- Arduino UNO- ն իր ծրագրավորման մալուխի հետ միասին: (Ես օգտագործում եմ դրա կլոնը, քանի որ այն ավելի էժան է)
- NRF24L01 2.4 ԳՀց ալեհավաք անլար հաղորդիչ մոդուլ: (Ես սա գնել եմ այստեղից ընդամենը 99 ֆունտ ստեռլինգով (1.38 դոլար))
- 3.3V ադապտերային տախտակ 24L01 անլար մոդուլի համար: (Ես սա գնել եմ այստեղից ընդամենը 49 ֆունտ ստեռլինգով (0.68 դոլար))
- Արականից իգական ցատկող լարեր x7
Քայլ 1: Հավաքեք պարագաները:
Քայլ 2. NRF մոդուլի միացում Arduino- ի հետ
Այժմ, քանի որ ունեք բոլոր մասերը, եկեք սկսենք Arduino- ով NRF մոդուլը միացնելով:
- Նախ, NRF մոդուլը տեղադրեք ադապտորի վրա տրված անցքի մեջ: Դրա համար կարող եք անդրադառնալ վերը նշված նկարին:
-
Դրանից հետո, վերցրեք Արուն իգական լարերի վրա և միացրեք NRF ադապտերը Arduino- ին հետևյալ կերպ.
- NRF Adapter Pin - Arduino Pin
- VCC - 5 վ
- GND - GND
- CE - Թվային կապում 5
- CSN - անալոգային կապ 1
- SCK - թվային կապ 4
- MO - թվային կապ 3
- MI - անալոգային կապ 0
- IRQ - Չի օգտագործվում
- Միացումն ավարտվելուց հետո Arduino- ն միացրեք ձեր համակարգչին `օգտագործելով Arduino ծրագրավորման USB մալուխը և գրեթե ավարտված եք:
Քայլ 3: Եկեք անցնենք կոդավորման:
Այժմ այստեղից սկսվում է դժվար մասը … !!!
Ամբողջ ծածկագիրը ես ինքս չեմ կազմել: Փոխարենը, ես վերցրել եմ տարբեր ծրագրավորողների կոդի մասեր և կտորներ և միացրել դրանք բոլորը մեկում ՝ մի փոքր շտկելով: Հետևաբար, բոլոր սկզբնական հեղինակներին տրվում են համապատասխան վարկեր:
Կարող եք ներբեռնել այստեղ տեղադրված բոլոր ծածկագրերը և այն գործի դնել: Հակառակ դեպքում կարող եք գնալ իմ Github պահոց, որտեղ ես անընդհատ կթարմացնեմ վերջին կոդը `ավելի լավ հետևելու համար:
Ձեռքի հետևում
Այս նախագծում ձեռքով հետևելու համար օգտագործվում է Haar Cascade դասակարգիչը: Հաար կասկադը վարժեցվում է ՝ դրական պատկերը գերակայելով բացասական պատկերների վրա: Եվ այս վերապատրաստված տվյալները սովորաբար պահվում են «.xml» ֆայլերում: Ինտերնետում կարող եք ձեռք բերել գրեթե ամեն ինչի դասակարգիչ ֆայլեր կամ նույնիսկ կարող եք ստեղծել ձեր սեփականը այսպիսին: Այս նախագծի համար, քանի որ մենք պետք է այն դարձնեինք ձեռքի ժեստերով կառավարվող, ես ձեռքի հայտնաբերման համար օգտագործեցի բռունցքի դասակարգիչ, որը կոչվում էր «փակ_ֆրոնտալ_պալմ. Xml» ՝ պատրաստված Արավինդ Նամբիսսանի կողմից: Դուք կարող եք ստուգել այս կոդը ՝ գործարկելով «hand_live.py» ծածկագիրը իմ ռեպոյում:
Ընտրելով NRF24 ծածկագիրը ՝ համապատասխանելու ձեր դրոնին
Այսպիսով, ըստ ձեր անօդաչու թռչող սարքի արտադրողի և մոդելի, կարող եք անդրադառնալ Github պահոցին `« nrf24_cx10_pc » - ին, որը պատրաստվել է Պերի saաոյի կողմից, ընտրելու համար աշխատելու համապատասխան Arduino կոդը, որը կհամապատասխանի դրա հաճախականությանը: Նա պատրաստել է գեղեցիկ ձեռնարկ ՝ իր CX10 Drone- ը համակարգչի վրա վերահսկելու համար:
Երբ ես օգտագործում էի JJRC H36 անօդաչու թռչող սարքը, ես վկայակոչեցի մեկ այլ Github պահեստ ՝ «nrf24_JJRC_H36_pc», որը Լյուիս Կորնիկի պատրաստած Պերի saաոյի ռեպոյի պատառաքաղն էր ՝ իր JJRC H36- ը համակարգչով վերահսկելու համար:
Arduino- ի պատրաստում
Ես Լյուիսի ռեպոն փոխանցեցի իմ Github- ին, որը կարող եք կլոնավորել, եթե աշխատում եք նույն անօդաչու թռչող սարքի վրա: Դուք պետք է մեկ անգամ վերբեռնեք «nRF24_multipro.ino» ծածկագիրը ձեր Arduino Uno- ում, որպեսզի այն զուգակցվի ձեր դրոնի հետ ամեն անգամ, երբ մենք գործարկում ենք մեր Python սցենարը:
Սերիական հաղորդակցության փորձարկում
Նույն ռեպոյում կարող եք գտնել նաև «serial_test.py» ծածկագիրը, որը կարող է օգտագործվել Arduino- ի հետ Python սցենարի սերիական հաղորդակցությունը փորձարկելու համար, և եթե ձեր անօդաչուն զուգակցվում է, թե ոչ: Մի մոռացեք փոխել COM պորտը ծածկագրում ՝ ըստ ձեր Arduino տախտակի COM պորտի:
Ամեն ինչ ինտեգրվել մեկ կոդում
Այսպիսով, ես ինտեգրեցի այս բոլոր ծածկագրերը տարբեր մշակողների կողմից և ստեղծեցի իմ սեփական կոդը "handserial.py": Եթե դուք անում եք նույն բանը, ինչ ես անում եմ նույն անօդաչու թռչող սարքով, ապա կարող եք ուղղակիորեն գործարկել այս ծածկագիրը, այնուհետև կարող եք կառավարել ձեր անօդաչուն ՝ պարզապես բռունցքը օդում շարժելով: Կոդն առաջին հերթին բռունցք է կատարում տեսանյութի շրջանակում: Կախված բռունցքի Y- կոորդինատից, ծածկագիրը շնչափողի արժեքը ուղարկում է անօդաչու թռչող սարքին ՝ այն բարձրանալով կամ իջեցնելով, և նմանապես, կախված բռունցքի X- կոորդինատից, կոդը aileron- ի արժեքը ուղարկում է անօդաչու թռչող սարքին ՝ այն ձախ կամ աջ գնալու համար:.
Քայլ 4: Հեղինակային նշում
Կան 4 կետեր, որոնք ես հատուկ կցանկանայի նշել այս նախագծի վերաբերյալ.
- Ինչպես նշվեց ավելի վաղ, այս ծածկագիրը ամբողջությամբ իմ կողմից չէ, բայց ես անընդհատ աշխատում եմ դրա վրա և կթարմացնեի ծածկագիրը ՝ իմ Github պահեստում ավելի լավ հետևելու համար: Այսպիսով, ցանկացած հարցման կամ թարմացման համար կարող եք այցելել շտեմարան կամ ինձ պինգ անել Instagram- ում:
- Ներկայումս մենք օգտագործում ենք նոութբուքի վեբ -տեսախցիկը, որը թույլ չի տալիս ունենալ անօդաչու թռչող սարքի տեսանկյունը, սակայն անհրաժեշտության դեպքում անօդաչու թռչող սարքի վրա տեղադրված տեսախցիկները կարող են օգտագործվել նաև հետևելու նպատակով: Սա կօգնի ունենալ ավելի լավ տեսք և, ի վերջո, ավելի լավ վերահսկողություն:
- Այս նախագծի համար ես օգտագործում եմ JJRC H36 անօդաչու թռչող սարք, որը շուկայում առկա ամենաէժան անօդաչու թռչող սարքերից է, ուստի այն չունի գիրոսկոպիկ կայունություն: Դա է պատճառը, որ դուք կարող եք զգալ, որ տեսահոլովակի շարժումը տատանվում է, բայց եթե դուք օգտագործում եք արժանապատիվ որակի անօդաչու սարք ՝ լավ կայունությամբ, ապա այս խնդրի առջև չեք կանգնի:
- Ես ուզում էի անդրադառնալ Computer Vision- ի և անօդաչու թռչող սարքերի կառավարման վրա, ուստի սկսեցի այս նախագծով: Բայց համակարգչային տեսողության վրա աշխատելուց հետո ես զգում եմ, որ դա անօդաչու սարքը կառավարելը օպտիմալ լուծում չէ: Այսպիսով, ես պլանավորում եմ ձեռքի տիպի սարք պատրաստել Gyro սենսորով ՝ ապագայում անօդաչու սարքը կառավարելու համար: Այսպիսով, հետևեք թարմացումներին…
Եթե ձեզ դուր եկավ այս ձեռնարկը, խնդրում ենք հավանել և տարածել և նաև քվեարկել դրա համար:
Առայժմ այսքանը: Կհանդիպենք հաջորդ անգամ…
Խորհուրդ ենք տալիս:
Անօդաչու թռչող սարքի կցորդներ (Տեղափոխեք այն). 4 քայլ
Drone Attachments (Make It Move). Ես ստեղծեցի մի քանի կցորդներ, որոնք կարող են տեղավորվել մի փոքր մրցարշավի անօդաչուի վրա և գործել մի պարզ սերվոյով: Առաջինը ազատման մեխանիզմն է: Այն օգտագործում է servo ՝ շրջանակից մի փոքր ձող քաշելու համար ՝ գցելով այն, ինչ կախված էր դրանից: Վայրկյանը
Անօդաչու թռչող սարքի տեսանյութի խմբագրում. 4 քայլ
Անօդաչու թռչող սարքի տեսանյութի խմբագրում. Բարի գալուստ: Ահա մի քանի ուղեցույց, որոնք ես սովորել եմ անօդաչու թռչող սարքի տեսանյութը խմբագրելիս: Այս ուսանելի ամբողջ ընթացքում ես խորհուրդներ և հնարքներ կտամ, որոնք օգտագործել եմ վլոգների և անօդաչու թռչող սարքերի տեսանյութերը խմբագրելիս
Անօդաչու թռչող սարքի լիցքավորիչ ՝ 5 քայլ
Անօդաչու թռչունի ծանր պատյան լիցքավորիչով. Նպատակը. Պատրաստեք DJI Spark անօդաչու թռչող սարքի և դրա պարագաների կոշտ պատյան: Ես փորձում եմ ամբողջը պատրաստել արդեն օգտագործելի նյութերից: Իմ նպատակներն են `1. Սարքավորումների պաշտպանություն: 2. Պահեստային բոլոր պարագաների պահեստավորում: 3. Կարողանալ
Անօդաչու թռչող սարքի ժամանակաչափ - 3D տպագիր, Arduino սնուցում. 18 քայլ (նկարներով)
Անօդաչու թռչող սարքի ժամանակաչափ - 3D տպագիր, Arduino սնուցում. Ինձ ավելի ու ավելի է հետաքրքրում Առաջին դեմքի տեսանյութի (FPV) անօդաչու թռչող սարքերի գաղափարը: Վերջերս ես ձեռք բերեցի մի փոքր անօդաչու թռչող սարք և ցանկանում էի իմ շրջագայությունները ժամանակացույց սահմանել. Սա է արդյունքում ստացված նախագիծը:
CD Jewel- ի պատյանը դարձրեք բջջային սարքի տակդիր ՝ 9 քայլ
CD Jewel- ի պատյանը դարձրեք բջջային սարքի տակդիր. Ես արդեն ունեմ պլաստմասե հարմար սալիկ իմ Blackerry- ի համար, որն աշխատասենյակումս ունի ներկառուցված USB մալուխ: Բայց ես մտածում էի տուն վերադառնալու մասին: Ես չեմ ուզում հանել լիցքավորիչը/կանգառը և վերցնել այն ինձ հետ: Ես պետք է կարողանամ ինչ -որ բան պատրաստել: