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

Կառուցեք Telepresence ռոբոտ, որը վերահսկվում է WiFi- ի միջոցով. 11 քայլ (նկարներով)
Կառուցեք Telepresence ռոբոտ, որը վերահսկվում է WiFi- ի միջոցով. 11 քայլ (նկարներով)

Video: Կառուցեք Telepresence ռոբոտ, որը վերահսկվում է WiFi- ի միջոցով. 11 քայլ (նկարներով)

Video: Կառուցեք Telepresence ռոբոտ, որը վերահսկվում է WiFi- ի միջոցով. 11 քայլ (նկարներով)
Video: Հայկական իմպրովիզացիաներ չանեք, ստանդարտներին համապատասխան թեքահարթակներ կառուցեք․ Տիգրան Ավինյան 2024, Նոյեմբեր
Anonim
Image
Image

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

Նախագծի ներսում կա 2 համակարգ `այն հաջողակ դարձնելու համար: Ձեռքի շարժման վերահսկում ՝ շարժելու ռոբոտացված ձեռքը և բջջային հավելվածը, որը վերահսկում է շարժիչի հիմքը:

Ստորև բերված է Telepresence V1- ի փաստաթուղթը և ներկայացումը, այնպես որ դուք կստանաք ավելի խորը ըմբռնում:

Buildամանակն է կառուցել այն:

Պարագաներ

Այս նախագծի համար անհրաժեշտ են բազմաթիվ գործիքներ և բաղադրիչներ: Դա ինձ համար արժեցավ 1000 AED (270 $), այնպես որ համոզվեք, որ ունեք այդ բյուջեն: Ահա այն բաղադրիչները, որոնք ձեզ հարկավոր կլինեն.

  1. Հանգույց MCU x 3
  2. L298N DC շարժիչի վարորդ x 1
  3. 12 Վ սնուցման աղբյուր x 1
  4. LM2596 Լարման լարման կարգավորիչ x 1
  5. MPU9250 IMU տվիչներ x 2
  6. Servo Motors (10-20 կգ պտտող մոմենտ) x 4
  7. թեթև փայտ 1x1 մ
  8. 8M թելքով մետաղյա ձողեր 1 մ x 2
  9. 3D տպիչ (30x30 սմ)
  10. փայտահատ և հորատող
  11. Էլեկտրական լարեր, ցատկող լարեր և տախտակ
  12. Ամբողջ թևի թև
  13. 12V DC շարժիչ (25 կգ. Սմ) x 2
  14. 3 դյույմանոց պտտվող անիվ x 1
  15. 6 սմ ռետինե անիվ պտուտակով ամրացվող x 2
  16. Oldոդման հավաքածու

Քայլ 1: Ինչպե՞ս է այն աշխատում:

Դիզայն
Դիզայն

Սա հաղորդակցության հոսքի աղյուսակն է ՝ հասկացնելու համար, թե ինչպես են բաղադրիչները շփվում միմյանց հետ: Մենք օգտագործում ենք PubNub կոչվող տվյալների փոխանցման ցանցը որպես IoT հարթակ, որը կարող է իրական ժամանակի հաղորդագրություններ ուղարկել ընդամենը 0,5 վայրկյանում: Դա ամենաարագ արձագանքն է, որը մենք կարող ենք ստանալ, և դա ավելի կարևոր է մեր նախագծում, քանի որ մենք մեր ձեռքը կօգտագործենք ռոբոտի թևը իրական ժամանակում վերահսկելու համար:

Բոլոր Nodemcu- ն օգտագործվում են տվյալներ ուղարկելու և ստանալու համար: Այստեղ ներգրավված է 2 անհատական համակարգ, որտեղ Nodemcu- ն ձեռքի վրա շարժման սենսորի տվյալները ուղարկում է PubNub և այն ստանում է Nodemcu- ի կողմից ռոբոտացված թևի վրա: բազային տեղաշարժի համար բջջային հավելվածը x, y կոորդինատների տվյալները ուղարկում է joystick- ից, որոնք ստացվում են Nodemcu- ի կողմից բազայի վրա, որը կարող է շարժիչը կառավարել վարորդի միջոցով: Առայժմ այդքանը:

Քայլ 2: Դիզայն

Վերոնշյալ դիզայնը ձեզ գաղափար կտա, թե ինչ տեսք ունի կառույցը: Ավելի լավ տեսք ունենալու համար կարող եք ներբեռնել cad ֆայլերը: Թռչող սարքի հիմքը ապահովված է 3 անիվներով, որոնցից 2 -ը DC շարժիչ են ՝ հետևի մասում, իսկ մեկ պտտվող անիվ ՝ առջևում: Ռոբոտացված թևի շարժման պատճառով ես հիմքի վրա անկայունություն նկատեցի, այնպես որ կարող եք մտածել առջևի 2 անիվներ ավելացնելու մասին: Ներքևի և վերին փայտի հիմքը ամրացված են թելերով ձողերով, որոնք սենդվիչ են ընկույզով: Համոզվեք, որ դուք օգտագործում եք կողպեքի ընկույզ, քանի որ դա երկարաժամկետ կդարձնի այն մշտապես ամուր:

Ներբեռնեք դիզայնի աղբյուրի ֆայլ - Telepresence Design

Քայլ 3. Ձեռքի և ոլորող մոմենտի հաշվարկի 3D տպագրություն

Ձեռքի և ոլորող մոմենտի հաշվարկի 3D տպագրություն
Ձեռքի և ոլորող մոմենտի հաշվարկի 3D տպագրություն

Հեռուստատեսային ռոբոտի արկղը տուփի տեսքով պարզ ձև է, որպեսզի այն հնարավոր լինի հեշտությամբ 3D տպել նվազագույն թելերով: Նրա երկարությունը մոտ 40 սմ է, ինչը երկար է մարդու թևի չափ: Ռոբոտային թևի երկարությունը հիմնված է սերվո շարժիչների կողմից բարձրացրած ոլորող մոմենտի վրա: Դուք կարող եք գտնել պտույտի պտույտի հաշվարկը վերը նշված պատկերի վրա, ինչպես նաև իմ օգտագործած servo շարժիչի բնութագրերը, որպեսզի կարողանաք դիզայնը հարմարեցնել ձեր կարիքներին: Բայց խուսափեք servo շարժիչի առավելագույն ոլորող մոմենտ օգտագործելուց, քանի որ դա երկարաժամկետ հեռանկարում կվնասի շարժիչը:

Ներբեռնեք ստորև բերված 3D տպման ֆայլերը, տպեք այն և շարունակեք առաջ շարժվել:

Քայլ 4: Հիմքի պատրաստում և հավաքում

Հիմքի պատրաստում և հավաքում
Հիմքի պատրաստում և հավաքում
Հիմքի պատրաստում և հավաքում
Հիմքի պատրաստում և հավաքում
Հիմքի պատրաստում և հավաքում
Հիմքի պատրաստում և հավաքում

Ահա այն քայլերը, որոնց կարող եք հետևել կեղծման համար.

  1. Կտրեք պտուտակավոր մետաղյա ձողը միջանկյալ հատվածում `օգտագործելով սղոց
  2. Փայտահատ օգտագործելով ՝ պատրաստեք 2 կտոր 40x30 սմ չափսերով
  3. Վերևի և ներքևի հիմքում անհրաժեշտ անցքեր փորեք, ինչպես վերը նշված նկարը
  4. Սկսեք ներքևի հիմքի վրա ամրացնել DC շարժիչը և պտտվող անիվները
  5. Վերին հիմքի վրա ուղղանկյուն փոս պատրաստելու համար նախ հորատիչով շրջանաձև անցք կատարեք, այնուհետև փայտահատը տեղադրեք անցքի միջով և կտրեք այն եզրերով ՝ ուղղանկյուն պատրաստելու համար:

եթե ձեզ հետաքրքրում է, թե ինչու է աջ վերևի անցքը հետ տեղադրված, ապա դա այն պատճառով է, որ ես վստահ չէի, որ ռոբոտացված թևը կտեղադրեմ աջ անկյունում ՝ կենտրոնում: Այն կենտրոնում տեղադրելը ավելի լավ ընտրություն էր քաշի հավասարակշռության պատճառով:

Քայլ 5. Robotic Arm- ի հավաքում

Robotic Arm- ի հավաքում
Robotic Arm- ի հավաքում

Robotic Arm- ի հավաքումը հատուկ ուշադրություն է պահանջում: Բացի մեխանիկական հավաքումից, դուք պետք է համոզվեք, որ servo շարժիչը ճիշտ անկյունում է, երբ այն հավաքվում է: Հետևեք վերևի գծապատկերին ՝ պատկերացում կազմելու համար, թե որ անկյունում է տեղադրված սերվո շարժիչը բոլոր շարժիչների վրա, նախքան որևէ բան հավաքելը: Փորձեք այս հատվածը ճիշտ ձևակերպել, հակառակ դեպքում նորից կհավաքեք այն:

Օգտագործեք ստորև ներկայացված կոդի ձևանմուշը ՝ Arduino- ի կամ Nodemcu- ի միջոցով ճշգրիտ սերվոյի անկյունը սահմանելու համար: Այս մասին արդեն շատ տեղեկություններ կան, այնպես որ ես չեմ մանրամասնի:

#ներառում

Servo servo;

int pin =; // տեղադրեք PIN- ի համարը, որտեղ servo data pin- ը կցված է arduino- ին

void setup () {

servo.attach (քորոց);

}

դատարկ շրջան () {

int անկյուն =; // անկյուն, որով պետք է սահմանել

servo.write (անկյուն);

}

Քայլ 6: Ձեռքի վերահսկիչի միացում

Arm Controller- ի սխեման
Arm Controller- ի սխեման
Arm Controller- ի սխեման
Arm Controller- ի սխեման

Ձեռքի վերահսկիչի հավաքումը պարզ է անել: Ես երկար թև օգտագործեցի և կարերը կցեցի սենսորներին, Nodemcu- ին և տախտակին: Համոզվեք, որ սենսորի կողմնորոշումը նույն ուղղությամբ է, ինչ վերևի վերահսկիչի պատկերը: Վերջապես, հետևեք սխեմայի դիագրամին և ներբեռնեք ներքևի ծածկագիրը:

Քայլ 7. Հեռուստատեսության ռոբոտի միացում

Հեռուստատեսության ռոբոտի միացում
Հեռուստատեսության ռոբոտի միացում
Հեռուստատեսության ռոբոտի միացում
Հեռուստատեսության ռոբոտի միացում
Հեռուստատեսության ռոբոտի միացում
Հեռուստատեսության ռոբոտի միացում

Նույն կերպ հետևեք սխեմայի սխեմային: Կարճ միացումներից խուսափելու համար խաչաձեւ ստուգեք էներգիայի մատակարարման ճարմանդները: Փոխարկիչի ելքային լարումը սահմանեք 7 Վ -ի վրա, քանի որ դա բոլոր servo շարժիչների միջին լարվածությունն է: Միակ տեղը, որը կարող եք զոդել, հիմնական DC շարժիչի տերմինալներն են, քանի որ այն շատ հոսանք է սպառում, ուստի այն պետք է սեղմված լինի մի փոքր ավելի հաստ էլեկտրական լարով: Շրջանն ավարտվելուց հետո, ավելի ուշ, «arm_subscriber.ino» - ն կբեռնեք Nodemcu- ում, որը կապվում է arm- ի և «base.ino» - ի հետ, որը պետք է վերբեռնվի Nodemcu բազայի վրա:

Քայլ 8: Բջջային հավելված

Բջջային հավելված
Բջջային հավելված

Սա շարժական սարքն է ՝ շարժումը վերահսկելու համար: Երբ դուք տեղափոխում եք ջոյսթիկը, այն ուղարկում է X, Y կոորդինատները ջոյսթիկի շրջանակի վրա Pubnub և ստացվում է Նոդեմկուի կողմից հիմքում: Այս X, Y կոորդինատը փոխակերպվում է անկյունի և դրա միջոցով կարող ենք գտնել, թե որ ուղղությամբ կգնա ռոբոտը: Շարժումը կատարվում է երկու շարժիչների միացման/անջատման և ուղղության փոփոխության միջոցով: Եթե հրամանը Forward է, ապա երկու շարժիչներն էլ առաջ են շարժվում ամբողջ արագությամբ, եթե ձախ, ապա ձախ շարժիչը կշրջվի հետընթաց, իսկ աջը ՝ առաջ և այլն:

վերը նշված գործառույթը կարող է պարզապես կատարվել կոճակներով `նաև ջոյսթիկի փոխարեն, բայց ես ընտրում եմ ջոյստիկ` շարժիչի արագությունը նույնպես վերահսկելու համար: Այնուամենայնիվ, իմ միացման քորոցը չաշխատեց Նոդեմկուի հետ, այնպես որ ես թողեցի այդ հատվածը: Ես ավելացրել եմ արագության կառավարման կոդ base.ino- ում ՝ մեկնաբանության դեպքում:

Դուք կարող եք ստանալ սկզբնական ֆայլը: Հավելվածում դուք պետք է կատարեք հիմնական կազմաձևում, որը ես կասեմ հաջորդ քայլին:

Քայլ 9: Ստեղծեք հաշիվ Pubnub- ում և ստացեք բանալիները

Ստեղծեք հաշիվ Pubnub- ում և ստացեք բանալիները
Ստեղծեք հաշիվ Pubnub- ում և ստացեք բանալիները

Այժմ ժամանակն է անել վերջին քայլը, որն է ՝ կարգավորել ձեր IoT պլատֆորմը: Pubnub- ը լավագույնն է, քանի որ տվյալների փոխանցումը կատարվում է իրական ժամանակում և փոխանցման համար պահանջվում է ընդամենը 0.5 վայրկյան: Ավելին, կարող եք ամսական ուղարկել 1 միլիոն տվյալների միավոր, որպեսզի դա իմ անձնական սիրելի հարթակն է:

Գնացեք PubNub և ստեղծեք ձեր հաշիվը: Այնուհետև գնացեք Apps ընտրացանկեր ձախ ընտրացանկում և աջից կտտացրեք «+Ստեղծել նոր ծրագիր» կոչվող կոճակին: Ձեր հավելվածը անվանելուց հետո կտեսնեք հրատարակչի և բաժանորդի բանալու վերը նշված պատկերը: Դա այն է, ինչ մենք կօգտագործենք սարքերը միացնելու համար:

Քայլ 10: Բանալիները ավելացրեք օրենսգրքում և վերբեռնեք

Կոդին ավելացրեք բանալիներ և վերբեռնեք
Կոդին ավելացրեք բանալիներ և վերբեռնեք
Կոդին ավելացրեք բանալիներ և վերբեռնեք
Կոդին ավելացրեք բանալիներ և վերբեռնեք

Մեզ պետք է 4 բան, որպեսզի սարքը կարողանա հաղորդակցվել միմյանց հետ.

pubkey & subkey- ը նույնը կմնա Nodemcu- ի և բջջային հավելվածի վրա: 2 սարքեր, որոնք շփվում են միմյանց հետ, պետք է ունենան նույն ալիքի անունը: Քանի որ բջջային հավելվածը և բազան շփվում են այնպես, որ ունենան նույն ալիքի անվանումը, որը նման է վերահսկիչի և ռոբոտային ձեռքի համար: Վերջապես, դուք պետք է wifi հավատարմագրեր դնեք յուրաքանչյուր Nodemcu- ի վրա, որպեսզի այն սկզբում կարողանա միանալ WiFi- ին: Ես արդեն ավելացրել եմ ալիքի անունը, այնպես որ wifi և pub/sub բանալին այն է, ինչ դուք պետք է ավելացնեք ձեր հաշվից:

Նշում. Նույնիսկ իմ վերջին ներկայացման համար ես ստիպված էի օգտագործել բջջային թեժ կետը, քանի որ համալսարանի wifi- ն քաշել էր:

Քայլ 11: Եզրակացություն

Եզրակացություն
Եզրակացություն

Եթե հասել եք մինչև այստեղ, ուրեմն ՀԻՇԱՌ Է: Հուսով եմ, որ այս հոդվածից արժեքավոր բան եք ձեռք բերել: Այս նախագիծը ունի փոքր սահմանափակումներ, որոնք ես ուզում եմ ասել ձեզ նախքան այն իրականացնելը: Ահա մի քանիսը ստորև.

Ռոբոտային ձեռքի կտրուկ շարժում.

Ռոբոտային թևի հանկարծակի շարժումներ կան: Դա պայմանավորված է սենսորային տեղեկատվության ՝ որպես սերվո շարժման, փոխանցման 0.5 վայրկյան ուշացման պատճառով: Ես նույնիսկ վնասեցի սերվո շարժիչից 2 -ը, այնպես որ արագ մի շարժեք ձեր ձեռքը: Դուք կարող եք լուծել այս խնդիրը ՝ սահուն շարժում ստեղծելու համար սկզբնական շարժման միջև միջանկյալ քայլեր ավելացնելով:

Հիմքի շարժման դադարեցում.

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

Տեսաֆիլմ չկա.-

Առանց ռոբոտից մարդուն եկող տեսաֆիլմերի, մենք երբեք չենք կարող տեղակայվել օգտվողից շատ հեռու: Սկզբում ես ուզում էի սա ավելացնել, բայց ավելի շատ ժամանակ և ներդրումներ կպահանջեի:

Դուք կարող եք այս նախագիծը հետագայում տանել ՝ լուծելով վերը նշված խնդիրը: Երբ դա անեք, ինձ տեղյակ պահեք: Հրաժեշտ

Լրացուցիչ նախագծերի համար այցելեք իմ պորտֆոլիոյի կայքը

Ռոբոտաշինության մրցույթ
Ռոբոտաշինության մրցույթ
Ռոբոտաշինության մրցույթ
Ռոբոտաշինության մրցույթ

Երկրորդ տեղ ռոբոտաշինության մրցույթում

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