Բովանդակություն:
- Քայլ 1: Վիդեո ձեռնարկ
- Քայլ 2: Պահանջվող սարքավորումներ և գործիքներ
- Քայլ 3. Ձեռքի և նախաբազկի 3D մոդելներ
- Քայլ 4: Մասերի հավաքում
- Քայլ 5: Ձեռքի միացումներ (ընդունիչ)
- Քայլ 6: Ձեռնոցի միացումներ (հաղորդիչ)
- Քայլ 7: Sourceրագրի սկզբնաղբյուր
Video: Ռոբոտացված ձեռքը անլար ձեռնոցով վերահսկվող - NRF24L01+ - Arduino: 7 քայլ (նկարներով)
2024 Հեղինակ: John Day | [email protected]. Վերջին փոփոխված: 2024-01-30 09:50
Այս տեսանյութում; Առկա են եռաչափ ռոբոտի ձեռքի հավաքում, սերվոյի վերահսկում, ճկուն սենսորների կառավարում, nRF24L01 անլար կառավարում, Arduino ընդունիչ և հաղորդիչ աղբյուրի կոդ: Մի խոսքով, այս նախագծում մենք կսովորենք, թե ինչպես կառավարել ռոբոտի ձեռքը անլար ձեռնոցով:
Քայլ 1: Վիդեո ձեռնարկ
Այս ձեռնարկի տեսանյութով դուք կարող եք տեսնել ձեռքի ռոբոտացված հավաքածուն և ավելին: Ես տեսանյութ ավելացրեցի, քանի որ ռոբոտային բազկի հավաքման որոշ մասեր շատ մանրամասն են:
Քայլ 2: Պահանջվող սարքավորումներ և գործիքներ
Պահանջվող սարքավորում
2x Arduino Board (Նանո) -
2x nRF24L01+ Հաղորդիչ -
2x nRF24L01+ ադապտեր -
5x MG996R Servo -
5x 4.5 դյույմ Flex ցուցիչ -
5x 10k դիմադրություն -
2x 18650 3.7V մարտկոց -
1x 18650 Մարտկոցի սեփականատեր -
1x 9V մարտկոց -
1x 9V մարտկոցի միակցիչ -
1x Ձեռնոց -
1x լարային/հյուսված գիծ -
3x Mini Breadboard -
Jumper Wires -
1x կաուչուկ / անվադող կամ գարուն
1x պողպատե մետաղալար կամ թել
3x պտուտակ (8 մմ տրամագծով)
Պահանջվող գործիքներ (ըստ ցանկության)
Էլեկտրոնային փորվածք + Dremel գործիք -
Anet A8 3D տպիչ -
PLA 22M 1.75 մմ կարմիր թել -
Թեժ սոսինձ ատրճանակ -
Մալուխի կապեր -
Սուպեր արագ սոսինձ -
Պտուտակահան դրամապանակի հավաքածու -
Կարգավորելի զոդիչ -
Sոդման տակդիր -
Oldոդման մետաղալար -
Heերմային նեղացման խողովակ -
Լարային մալուխի կտրիչ -
PCB տախտակ -
Պտուտակներ ընկույզների տեսականի -https://goo.gl/EzxHyj
Քայլ 3. Ձեռքի և նախաբազկի 3D մոդելներ
Ձեռքը բաց կոդով նախագծի մի մասն է, որը կոչվում է InMoov: Դա եռաչափ տպագրվող ռոբոտ է, և սա ընդամենը ձեռքի և նախաբազկի հավաքածու է:
Լրացուցիչ տեղեկությունների համար այցելեք InMoov- ի պաշտոնական կայքը: Դուք կարող եք այցելել InMoov կայքում տեղադրված «Հավաքման ուրվագծեր» և «Մոնտաժման օգնություն» էջերը ՝ հավաքման մասին ավելի մանրամասն տեղեկությունների համար:
Շնորհակալություն InMoov-https://inmoov.fr/-https://inmoov.fr/hand-and-forarm/
Այս նախագծում օգտագործվում է Anet A8 3D տպիչ: Մոդելները տպագրվում էին ամենացածր որակով:
Այս նախագծում օգտագործված բոլոր 3D մասերը
Քայլ 4: Մասերի հավաքում
Ռոբոտային թևերի մասերի հավաքումը շատ մանրամասն և բարդ է, այնպես որ կարող եք այցելել InMoov կայքում տեղադրված «Մոնտաժային ուրվագծեր» և «Մոնտաժման օգնություն» էջերը ՝ հավաքման վերաբերյալ ավելի մանրամասն տեղեկությունների համար: այն շատ մանրակրկիտ բացատրվում է InMoov կայքում: Կամ կարող եք դիտել իմ տարածած տեսանյութը:
www.inmoov.fr/assembly-sketchs/
inmoov.fr/hand-and-forarm/
Մտածեք մատների ճիշտ անկյունի այս առաջարկի մասին
Մատները հավաքելիս համոզվեք, որ մասերը սոսնձելուց առաջ ճիշտ կողմնորոշված են: Բոլոր սերվո շարժիչները պահեք 10 կամ 170 աստիճանի վրա, նախքան սերվո ճախարակները սերվո շարժիչներին ամրացնելը: Servo ճախարակները միացնելիս մատները փակ կամ բաց դիրքում պահեք (ըստ ձեր servo անկյունների): Այնուհետեւ փաթաթեք servo ճախարակին, մինչեւ հյուսի լարերը կամ լարերը ձգվեն:
Քայլ 5: Ձեռքի միացումներ (ընդունիչ)
- Այս պահին սերվերը պետք է արդեն տեղադրվեն նախաբազկի մեջ: Էներգամատակարարման և Arduino- ի հետ դրանք միացնելու համար կարող եք օգտագործել մի փոքրիկ տախտակ:
- Հիշեք, որ սեղանի վրա բացասականը միացրեք Arduino- ի GND- ին: Շղթայի բոլոր GND- ները պետք է միացված լինեն, որպեսզի այն աշխատի:
- Ես խորհուրդ եմ տալիս օգտագործել էներգիայի ադապտեր nRF24L01+ մոդուլի համար: Հակառակ դեպքում հաղորդակցությունը կարող է խզվել անբավարար հոսանքի պատճառով:
- Եթե հանդիպեք այս խնդիրներին. Թրթռում servo շարժիչներում, servo շարժիչներ չեն աշխատում, հաղորդակցության խափանում և նման իրավիճակներում, մատակարարեք ձեր Arduino տախտակին արտաքին էներգիա (USB- ի նման):
- Եթե օգտագործել եք տարբեր քորոցներ, քան ստորև բերված կապումներն են, փոխեք դրանք ծածկագրերում:
Servo Motors- ի միացումներ
Servo-1 միացեք Arduino- ի անալոգային 01-ին (A1):
Servo-2- ը միացեք Arduino- ի անալոգային 02-ին (A2):
Servo-3- ը միացեք Arduino- ի անալոգային 03-ին (A3):
Servo-4- ը միացեք Arduino- ի անալոգային 04-ին (A4):
Servo-5- ը միացեք Arduino- ի անալոգային 05-ին (A5):
NRF24L01 մոդուլի միացումներ
VCC- ն միանում է Arduino- ի +5V- ին:
GND միացեք Arduino- ի GND- ին:
CE միացեք Arduino- ի թվային 9 քորոցին:
CSN- ը միացեք Arduino- ի թվային 10 քորոցին:
SCK միացեք Arduino- ի թվային 13 քորոցին:
MOSI- ը միացեք Arduino- ի թվային 11 քորոցին:
MISO- ն միացեք Arduino- ի թվային 12 քորոցին:
Քայլ 6: Ձեռնոցի միացումներ (հաղորդիչ)
- Flexկուն սենսորները պահանջում են միացում, որպեսզի դրանք համատեղելի լինեն Arduino- ի հետ: Flex սենսորները փոփոխական ռեզիստորներ են, ուստի խորհուրդ եմ տալիս օգտագործել լարման բաժանարար: Ես օգտագործել եմ 10K դիմադրություն:
- Հիմնական GND (գրունտային) մետաղալարը, որը միացված է սենսորներից բոլոր առանձին GND լարերին, միանում է Arduino- ի GND- ին: Արդուինոյից +5 V- ն անցնում է հիմնական դրական լարման լարին: Յուրաքանչյուր ճկուն սենսորից մետաղալարը լարման բաժանարարի միջոցով միացված է առանձին անալոգային մուտքի քորոցին:
- Ես միացրեցի սխեման մի փոքրիկ PCB- ի վրա, որը հեշտությամբ կարելի էր տեղադրել ձեռնոցի վրա: Դուք կարող եք միացումը կառուցել փոքր տախտակի վրա ՝ PCB- ի փոխարեն:
- Ձեռնոցի միացման համար կարող եք օգտագործել 9 Վ մարտկոց:
- Եթե օգտագործել եք տարբեր քորոցներ, քան ստորև բերված կապումներն են, փոխեք դրանք ծածկագրերում:
Flexկուն տվիչների միացումներ
Flex-1 միացեք Arduino- ի անալոգային 01-ին (A1):
Flex-2 միացեք Arduino- ի անալոգային 02-ին (A2):
Flex-3- ը միացեք Arduino- ի անալոգային 03-ին (A3):
Flex-4- ը միացեք Arduino- ի անալոգային 04-ին (A4):
Flex-5- ը միացեք Arduino- ի անալոգային 05-ին (A5):
NRF24L01 մոդուլի միացումներ
VCC- ն միանում է Arduino- ի +5V- ին:
GND միացեք Arduino- ի GND- ին:
CE միացեք Arduino- ի թվային 9 քորոցին:
CSN- ը միացեք Arduino- ի թվային 10 քորոցին:
SCK միացեք Arduino- ի թվային 13 քորոցին:
MOSI- ը միացեք Arduino- ի թվային 11 քորոցին:
MISO- ն միացեք Arduino- ի թվային 12 քորոցին:
Քայլ 7: Sourceրագրի սկզբնաղբյուր
Որպեսզի աղբյուրի կոդը ճիշտ աշխատի, հետևեք առաջարկություններին
- Ներբեռնեք RF24.h գրադարանը և տեղափոխեք այն Arduino գրադարանների պանակ:
- Theկուն տվիչները ձեռնոցին միացնելուց հետո կարդացեք և նշեք նվազագույն և առավելագույն արժեքները, որոնք հայտնաբերել է յուրաքանչյուր ճկուն սենսոր:
- Այնուհետեւ մուտքագրեք այս արժեքները հաղորդիչի (ձեռնոցի) կոդի մեջ:
- Բոլոր սերվո շարժիչները պահեք 10 կամ 170 աստիճանի վրա, նախքան սերվո ճախարակները սերվո շարժիչներին ամրացնելը:
- Սերվո ճախարակները միացնելիս մատները փակ կամ բաց դիրքում պահեք (ըստ ձեր սերվոյի դիրքերի):
- Ապա փաթաթեք servo ճախարակին, մինչև հյուսի լարերը ձգվեն:
- Տեղափոխեք բոլոր մատները փակ և բաց դիրքով ՝ մեկ առ մեկ ստուգելով սերվո շարժիչները:
- Այնուհետև ստացեք servo շարժիչների լավագույն անկյունները (servo անկյունները, երբ մատները փակվում և բացվում են):
- Մուտքագրեք servo շարժիչների անկյունները և ճկվող սենսորների արժեքները հաղորդիչի ծածկագրին հետևյալ կերպ.
ճկուն սենսոր min. արժեքը, ճկուն սենսորային առավելագույնը արժեքը, servo min. անկյուն, servo max անկյուն
(flex_val = քարտեզ (flex_val, 630, 730, 10, 170);
- Ստացողի աղբյուրի կոդի մեջ կա միայն մեկ փոփոխություն: Հաղորդիչի ո՞ր ճկուն սենսորը կվերահսկի ընդունիչի որ servo շարժիչը: Օրինակ, msg [0]-ն ուղարկում է x սենսոր-5-ի տվյալները: Եթե ցանկանում եք կառավարել servo motor-5- ը ճկվող սենսոր -5-ով, կարող եք դա անել `մուտքագրելով 'servo-5.write (msg [0])':
- Եթե դուք օգտագործել եք տարբեր կապումներ, քան շղթայում ցուցադրված կապերը, փոխեք դրանք երկու կոդերում:
Գիտեմ, որ վերջին մասը մի փոքր բարդ է, բայց խնդրում եմ մի մոռացեք. Դժվար բան չկա: Դու կարող ես դա անել! Պարզապես մտածեք, հետազոտեք, վստահեք ինքներդ ձեզ և փորձեք: