Ինքնահավասարակշռող ռոբոտ. 6 քայլ (նկարներով)
Ինքնահավասարակշռող ռոբոտ. 6 քայլ (նկարներով)
Anonim
Ինքնահավասարակշռող ռոբոտ
Ինքնահավասարակշռող ռոբոտ

Այս Instructable- ում մենք ձեզ ցույց կտանք, թե ինչպես կառուցել ինքնահավասարակշռող ռոբոտը, որը մենք պատրաստել էինք որպես դպրոցական նախագիծ: Այն հիմնված է որոշ այլ ռոբոտների վրա, ինչպիսիք են nBot- ը և մեկ այլ Instructable- ը: Ռոբոտը կարելի է կառավարել Android սմարթֆոնից ՝ Bluetooth միացման միջոցով: Քանի որ այս Հրահանգը ներառում է միայն շինարարության գործընթացը, մենք նաև փաստաթուղթ ենք գրել ծածկագրման և էլեկտրոնիկայի տեխնիկական նախապատմությունը լուսաբանելու համար: Այն պարունակում է նաև օգտագործված աղբյուրների հղումներ, այնպես որ կարող եք դրանք դիտել, եթե փաստաթուղթը ձեզ համար բավականաչափ համապարփակ չէ:

Այս նախագծի բոլոր քայլերին հետևելու համար ձեզ հարկավոր են 3D տպագրության հմտություններ կամ անիվները շարժիչներին ամրացնելու այլ խելացի միջոց:

Քայլ 1: Պահանջներ

Պահանջներ
Պահանջներ
Պահանջներ
Պահանջներ
Պահանջներ
Պահանջներ

Ռոբոտը հիմնված է Martinez- ի առանց խոզանակի գիմբալների վերահսկիչ տախտակի վրա: Այս տախտակի որոշ աննշան տատանումներ կան, բայց քանի դեռ ունեք ATmega328 չիպով և L6234 շարժիչով կարգավորիչներով մեկը, լավ կլինեք: Եթե Google Images- ում որոնեք «Martinez board», ապա կտեսնեք, որ IMU չիպի և (կամ) մարտկոցի համար հեշտ միակցիչով տախտակներ կան, փոխարենը ՝ քորոց վերնագրեր կամ անցքեր: Վերջին դեպքում, դա օգտակար կլինի, եթե պատվիրեք վերնագրերի կապոցների փաթեթ, որը կարող եք զոդել անցքերի մեջ:

Մասացանկ

Այս ցուցակի որոշ կետեր պարունակում են վեբ խանութների հղումներ:

  • Կառավարիչ ՝ Martinez BoardDX.com (գալիս է նաև IMU- ով և վերնագրի որոշ կապումներով):
  • IMU ՝ MPU6050
  • Մարտկոց (450 mAh 3S LiPo մարտկոց) Նշում. Ձեզ նույնպես պետք է 3S LiPo լիցքավորիչ eBay.com
  • 2x շարժիչ ՝ առանց խոզանակի շարժիչ 2208, KV100DX.com
  • Անիվներ (դրանք կարող եք ձեռք բերել առկա խաղալիքներից կամ LEGO- ից)
  • 6x M2 պտուտակ 5 մմ
  • 8x M3 պտուտակ (երկարությունը կախված է ձեր արտաքինի նյութից, մեկը պետք է լինի ավելի երկար)
  • Bluetooth չիպ HC-05 (համոզվեք, որ այն ձեռք է բերում սերիական ինտերֆեյսի տախտակ, և ոչ միայն մերկ չիպ):
  • Հաղորդալարեր. Կին -էգ DuPont- ից 20 լարերից բաղկացած տուփ գնելը կլինի ավելի քան բավարար
  • Velcro ժապավեն
  • USB մալուխ ՝ վերահսկիչը համակարգչին միացնելու համար
  • Լրացուցիչ. Վերնագիր pinsDX.com (կարող եք դրանք կտրել կամ կոտրել ցանկալի երկարությամբ)
  • Պլաստիկ լվացքի մեքենաներ և անջատիչներ

Ի վերջո, ձեզ հարկավոր է ակրիլ, փայտ կամ ստվարաթուղթ `սոսինձով կամ ժապավենով ուղեկցվող` բոլոր բաղադրիչները պահող կառույց ստեղծելու համար:

Քայլ 2: Bluetooth չիպի կազմաձևում

Bluetooth չիպի կազմաձևում
Bluetooth չիպի կազմաձևում

Բոլոր մասերը բռնելուց հետո ժամանակն է Bluetooth չիպի կազմաձևման համար: Ձեզ անհրաժեշտ կլինի USB մալուխ ՝ ձեր համակարգչին միացնելու վերահսկիչ տախտակը, ինչպես նաև Arduino IDE- ն ՝ բաղադրիչների հետ հաղորդակցվելու համար:

Դրա համար ձեզ հարկավոր է ներբեռնել ֆայլը.

HC-05_Serial_Interface.ino

Հետո հետևեք այս քայլերին.

  1. Միացրեք վերահսկիչը ձեր համակարգչին USB մալուխի միջոցով:
  2. Բացեք.ino ֆայլը Arduino IDE- ով:
  3. IDE- ում գնացեք Գործիքներ, տախտակ և համոզվեք, որ այն սահմանված է Arduino/Genuino Uno:
  4. Այժմ գնացեք Գործիքներ, նավահանգիստ և դրեք այն COM պորտին, որին միացված է վերահսկիչը: Սովորաբար կա միայն մեկ նավահանգիստ: Եթե կա բազմաթիվ, ստուգեք Սարքի կառավարիչը (Windows- ում) `պարզելու համար, թե որն է վերահսկիչը:
  5. Այժմ, IDE- ում սեղմեք «Վերբեռնել» կոճակը և սպասեք բեռնման ավարտին: Այնուհետև անջատեք USB մալուխը համակարգչից կամ վերահսկիչից:

Դա անելուց հետո միացրեք HC-05- ը ՝ օգտագործելով DuPont մալուխները հետևյալ կերպ.

HC-05 վերահսկիչ

KEY +5V GND GND TXD RX RXD TX

Այժմ նորից միացրեք USB մալուխը, այնուհետև միացրեք HC-05- ի VCC կապը վերահսկիչի այլ +5V- ին: LED- ը պետք է բռնկվի ~ 1 վայրկյան ընդմիջումով:

Arduino IDE- ում ընտրեք ճիշտ COM նավահանգիստը, այնուհետև գնացեք Գործիքներ, սերիական մոնիտոր:

Սերիական մոնիտորում գծի ավարտի տարբերակը սահմանեք ինչպես NL և CR: Baud- ի դրույքաչափը սահմանեք 38400: Այժմ կարող եք օգտագործել Serial Monitor- ը `Bluetooth չիպին տեղադրման հրամաններ ուղարկելու համար: Սրանք են հրամանները.

AT Ստուգեք կապը

AT+NAME Ստացեք/սահմանեք Bluetooth ցուցադրման անուն AT+UART Ստացեք/սահմանեք baud rate AT+ORGL Վերակայեք գործարանային կանխադրվածները AT+PSWD Ստացեք/սահմանեք Bluetooth գաղտնաբառ

Bluetooth սարքի անունը, գաղտնաբառը և փոխարժեքը փոխելու համար ուղարկեք հետևյալ հրամանները.

AT+NAME = "Անվան օրինակ"

AT+PSWD = "PassWord123" AT+UART = "230400, 1, 0"

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

Քայլ 3. Անիվները շարժիչներին ամրացնելը

Անիվներ ամրացնել շարժիչներին
Անիվներ ամրացնել շարժիչներին
Անիվներ ամրացնել շարժիչներին
Անիվներ ամրացնել շարժիչներին

Անիվները, որոնք օգտագործվել են այս նախագծում, ունեն անհայտ ծագում (դրանք պառկած էին դարակում ՝ շատ այլ իրերով): Անիվները շարժիչներին ամրացնելու համար մենք 3D տպեցինք մի կտոր, որը համընկնում էր շարժիչների պտուտակային անցքերի հետ: Կտորները պտուտակվել են ՝ օգտագործելով յուրաքանչյուր շարժիչի համար 5 միլիմետրանոց 2 Մ պտուտակներ: Երկու կտորներն ունեն քորոց, որը տեղավորվում է անիվների առանցքների անցքերին:

Ներառված է SolidWorks մոդելը: Հավանաբար, դուք ստիպված կլինեք փոփոխել այն ձեր անիվների համար կամ գտնել այլ գործնական լուծում անիվներին տեղավորելու համար: Օրինակ, դուք կարող եք օգտագործել Dremel- ը շարժիչի նույն չափի փոս փորելու համար (կամ մի փոքր ավելի փոքր, որպեսզի այն հարմար լինի), այնուհետև կարող եք շարժիչը սեղմել անիվի մեջ: Պարզապես համոզվեք, որ ձեռք բերեք համապատասխան անիվներ այս աշխատանքի համար, եթե մտադիր եք դա անել:

Քայլ 4: Արտաքինի ստեղծում

Արտաքինի ստեղծում
Արտաքինի ստեղծում

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

Այժմ ժամանակն է անցքեր բացել պտուտակների և առանցքի համար, որոնք դուրս են գալիս շարժիչի հետևից: Եթե հորատման ժամանակ փայտի կտորները սեղմում եք իրար, ապա յուրաքանչյուր փոս պետք է փորել միայն մեկ անգամ:

Պտուտակային անցքերի դասավորությունը ստեղծելու համար մենք օգտագործեցինք մի կտոր թուղթ և տեղադրեցինք այն շարժիչի հետևի մասում, իսկ մատիտով սեղմեցինք պտուտակների անցքերի մեջ, հենց թղթի միջով: Պտուտակային չորս անցքերով թուղթը այնուհետև դրվեց փայտի վրա, որպեսզի մենք կարողանանք նշել փորված անցքերի տեղը: Փոսերը փորելու համար օգտագործեք 3, 5 մմ տրամաչափ: Այժմ, մատիտով և քանոնով գտեք այս անցքերի կենտրոնը և առանցքի համար անցք ստեղծեք ՝ օգտագործելով 5 մմ տրամաչափ: Կցեք շարժիչները M3 պտուտակներով, բայց մեկ շարժիչից դուրս թողեք ավելի լայն հեռավորության վրա գտնվող պտուտակներից մեկը:

Շարժիչի միակցիչն ու մետաղալարը ռոբոտի ներսում ստանալու համար մենք նաև շարժիչից մի փոքր վերևում 8 մմ անցք ենք բացել: Համոզվեք, որ բավականաչափ տեղ կա, որպեսզի լարերը թեքվեն ՝ առանց դրանք շատ ճնշելու:

Կարևոր է հնարավորինս ճշգրիտ աշխատել `ստեղծելու (գրեթե) կատարյալ սիմետրիկ արտաքին տեսք:

Քայլ 5: Բաղադրիչների տեղադրում

Բաղադրիչների համապատասխանեցում
Բաղադրիչների համապատասխանեցում

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

Մենք տեղադրեցինք վերահսկիչը կենտրոնում ՝ USB պորտը դեպի ներքև, այնպես որ մենք կարող էինք միացնել մալուխը անիվների միջև: Կարող եք նաև այն ցույց տալ կողմերից մեկին:

Տեղադրեք մարտկոցը հնարավորինս բարձր, այնպես որ ռոբոտը ծանրաբեռնված լինի: Տեղադրեք նաև լիցքավորման նավահանգիստը եզրին մոտ գտնվող հեշտ հասանելի վայրում:

Bluetooth չիպ

Միացրեք Bluetooth չիպի VCC կապը վերահսկիչի +5V- ին, իսկ Bluetooth GND- ը ՝ վերահսկիչի GND- ին: Կառավարիչի TXD կապը անցնում է Bluetooth RX- ին, իսկ վերահսկիչի RXD կապը ՝ Bluetooth TX կապին: Այնուհետեւ պարզապես կպցրեք Bluetooth չիպը ինչ -որ տեղ փայտե վահանակի վրա `օգտագործելով Velcro ժապավենը:

Շարժման չիպ

Շարժման չիպը ունի երկու պտուտակավոր անցք, ուստի մենք չիպը ամրացրել ենք տարանջատիչի միջոցով, այնպես, որ չիպի կենտրոնը ընկնում է շարժիչի կենտրոնից: Կողմնորոշումը նշանակություն չունի, քանի որ ռոբոտը բալիստելիս իրեն չափաբերում է: Պտուտակի գլխի տակ անպայման օգտագործեք պլաստիկ լվացող մեքենա `միացումը կարճացնելուց խուսափելու համար:

Այնուհետև օգտագործեք DuPont լարերը ՝ կապերը վերահսկիչին միացնելու համար: Յուրաքանչյուր քորոց պիտակավորված է նույնը վերահսկիչի վրա, ինչպես շարժման չիպի վրա, այնպես որ այն միացնելը բավականին ինքնին բացատրելի է:

Էլեկտրաէներգիայի անջատիչ

Էլեկտրաէներգիայի անջատիչի միացումը հեշտ է: Մենք վերցրինք մեկը հին սարքից և ապամոդեցրինք դրա տպատախտակից: Ռոբոտի համար որպես հոսանքի անջատիչ օգտագործելու համար դուք մարտկոցի դրական մետաղալարը միացնում եք քորոցին (ենթադրելով, որ այն երեք պտույտի անջատիչ է) այն կողմում, որը ցանկանում եք միացնել անջատիչի դիրքը: Այնուհետև կենտրոնական քորոցը միացրեք վերահսկիչի դրական էներգիայի մուտքին: Մենք DuPont- ի լարերը միացրեցինք անջատիչին, որպեսզի մարտկոցն ինքնին մշտապես միացված չլինի անջատիչին:

Կողքերը միացնելը

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

Այժմ դուք պատրաստ եք վերբեռնել կոդը և կարգավորել վերահսկիչը:

Քայլ 6: Բեռնեք և կարգավորեք ծածկագիրը

Կոդը վերբեռնելու համար ձեզ հարկավոր է Arduino IDE համակարգիչ: Ներբեռնեք.ino ֆայլը ստորև և բացեք այն Arduino IDE- ով: Այն վերահսկիչին վերբեռնելը կատարվում է այնպես, ինչպես դա արեցիք Bluetooth- ի տեղադրման կոդով:

Ռոբոտին աշխատեցնելու համար հարկավոր է Play Store- ից ներբեռնել «Joystick bluetooth Commander» հավելվածը: Միացրեք ռոբոտի հզորությունը և տեղադրեք այն հատակին ՝ առջևի կամ հետևի մասում: Գործարկեք ծրագիրը և միացեք Bluetooth չիպին: Տվյալների դաշտ 1 -ը XXX- ից կդառնա READY, երբ ռոբոտը կալիբրիանա (5 վայրկյան այն կողքին տեղադրելու համար, որին հաջորդում է 10 վայրկյան ճշգրտում): Ռոբոտը կարող եք միացնել ՝ հավելվածում 1 կոճակը միացնելով: Այժմ տեղադրեք ռոբոտը ուղղահայաց գետնին և բաց թողեք, երբ զգաք, որ շարժիչները միանում են: Սա այն դեպքում, երբ ռոբոտը սկսում է ինքն իրեն հավասարակշռել:

Ռոբոտը այժմ պատրաստ է կարգաբերման, քանի որ հավանաբար նրա կայունությունը մեծ չէ: Կարող եք փորձել, եթե այն աշխատում է առանց լրացուցիչ թյունինգի, բայց դուք պետք է ռոբոտը դարձնեք մեր նմանին բավականին նման, որպեսզի այն ճիշտ աշխատի: Այսպիսով, շատ դեպքերում դուք պետք է կարգավորեք կարգավորիչը `ձեր ռոբոտի հետ լավագույնս աշխատելու համար: Դա բավականին հեշտ է, չնայած բավականին ժամանակատար: Ահա թե ինչպես դա անել.

Կարգավորիչի կարգավորում

Կոդում ինչ -որ տեղ կգտնեք 4 փոփոխական ՝ սկսած k- ով: Սրանք են kp, kd, kc և kv: Սկսեք ՝ զրոյացնելով բոլոր արժեքները: Առաջին արժեքը, որը սահմանվում է, kp է: Կանխադրված kp արժեքը 0.17 է: Փորձեք այն դնել 0.05 -ի շատ ավելի ցածր մակարդակի վրա: Անջատեք ռոբոտը, վերբեռնեք ծածկագիրը և տեսեք, թե ինչպես է այն փորձում հավասարակշռել: Եթե այն ընկնում է առաջ, ավելացրեք արժեքը: Դա անելու ամենախելացի միջոցը միջամտելն է.

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

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

Kp արժեքը սահմանելուց հետո սահմանեք kd: Դա կարելի է անել այնպես, ինչպես դա արել եք kp- ով: Բարձրացրեք այս արժեքը մինչև ռոբոտը գրեթե հավասարակշռված լինի, այնպես որ այն կշարժվի առաջ ու հետ, մինչև այն ընկնի: Եթե այն չափազանց բարձր եք դնում, կարող եք այն արդեն բավականին կոշտ կերպով հավասարակշռել, բայց երբ հավասարակշռությունը չափից շատ խախտվի, այն կընկնի (ինչպես, երբ այն հրում եք): Այսպիսով, փորձեք գտնել այն տեղը, որի վրա այն ոչ թե հավասարակշռված է, այլ բավականին մոտ:

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

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

Վերջին արժեքը kc է: Այս արժեքը ստիպում է ռոբոտին վերադառնալ իր վերջին դիրքին `հրելը կամ այլ բան փոխհատուցելուց հետո: Այստեղ կարող եք փորձել նույն միջերեսման մեթոդը, բայց 0.0002 -ը շատ դեպքերում պետք է բավականին լավ աշխատի:

Վերջ! Ձեր ռոբոտը այժմ պատրաստ է: Ռոբոտին կառավարելու համար օգտագործեք սմարթֆոնի ջոյսթիկը: Bգուշացեք, սակայն, քանի որ առավելագույն արագությամբ առաջ գնալը կարող է ռոբոտին դեռ վայր ընկնել: Խաղացեք վերահսկիչի փոփոխականների հետ `դա հնարավորինս փոխհատուցելու համար: Ամենատրամաբանական քայլը կլինի դրա համար kp արժեքը դիտելը, քանի որ դա ուղղակիորեն փոխհատուցում է ռոբոտի ընթացիկ անկյունը:

Կարևոր նշում LiPo մարտկոցների վերաբերյալ

Խորհուրդ է տրվում պարբերաբար ստուգել ձեր LiPo մարտկոցի լարումը: LiPo մարտկոցները չպետք է լիցքաթափվեն 3 վոլտ-ից պակաս ՝ մեկ բջիջի համար ՝ 9 վոլտ 3S LiPo- ով: Եթե լարումը մեկ վանդակում ընկնում է 3 վոլտից, մարտկոցի հզորության մշտական կորուստ կլինի: Եթե լարումը ընկնում է 2,5 վոլտից մեկ վանդակում, մարտկոցը հանեք և գնեք նորը: LiPo բջիջը 2,5 վոլտից պակաս լիցքավորելը վտանգավոր է, քանի որ ներքին դիմադրությունը դառնում է շատ բարձր, ինչը լիցքավորման ընթացքում առաջացնում է տաք մարտկոց և պոտենցիալ հրդեհի վտանգ:.

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