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

Q -Bot - բաց կոդով Ռուբիկի խորանարդի լուծիչը. 7 քայլ (նկարներով)
Q -Bot - բաց կոդով Ռուբիկի խորանարդի լուծիչը. 7 քայլ (նկարներով)

Video: Q -Bot - բաց կոդով Ռուբիկի խորանարդի լուծիչը. 7 քայլ (նկարներով)

Video: Q -Bot - բաց կոդով Ռուբիկի խորանարդի լուծիչը. 7 քայլ (նկարներով)
Video: Марко Темпест: Дополненная реальность, техно-магия 2024, Նոյեմբեր
Anonim
Image
Image
Պատկեր
Պատկեր

Պատկերացրեք, որ դուք ունեք խառնված Ռուբիկի խորանարդը, գիտեք, որ 80 -ականների գլուխկոտրուկը բոլորն ունեն, բայց ոչ ոք իրոք չգիտի, թե ինչպես լուծել այն, և ցանկանում եք այն վերադարձնել իր սկզբնական օրինաչափությանը: Բարեբախտաբար, այս օրերին շատ հեշտ է գտնել լուծման հրահանգներ: Այսպիսով, առցանց գնացեք, նայեք տեսանյութին և իմացեք, թե ինչպես շրջել կողմերը ՝ ձեզ ուրախություն պարգևելու համար: Մի քանի անգամ դա անելուց հետո, այնուամենայնիվ, կհասկանաք, որ ինչ -որ բան բացակայում է: Ներսում փոս, որը չի կարող լցվել: Ձեր ներսում գտնվող ինժեներները/ստեղծողը/հաքերը պարզապես չեն կարող բավարարվել այսքան զարմանալի բան լուծելով այսքան պարզ եղանակով: Մի՞թե շատ ավելի բանաստեղծական չէր լինի, եթե դուք ունենայիք մի մեքենա, որն ամեն ինչ լուծում էր ձեզ համար: Եթե դուք ինչ -որ բան կառուցած լինեիք, ձեր բոլոր ընկերները կզարմանայի՞ն: Ես կարող եմ ձեզ երաշխավորել, որ դա այնքան էլ լավ չի դառնում, քան ձեր ստեղծագործության ՝ հրաշքներ գործել և Ռուբիկի խորանարդի լուծումը դիտելը: Այսպիսով, եկեք և միացեք ինձ Q-Bot- ի ստեղծման հրաշալի ճանապարհորդության ՝ բաց կոդով Ռուբիկի խորանարդի լուծիչը, որը, անշուշտ, չի կարող գերազանցել որևէ համաշխարհային ռեկորդ, բայց ձեզ ժամեր կպատճառի ուրախության (իհարկե, անցնելով բոլոր հիասթափությունները) շինարարության ընթացքում):

Քայլ 1: Սարքավորման նախագծում

Ամբողջական լուծիչը նախագծված էր CAD- ի միջոցով Կատիաում: Այս կերպ դիզայնի սխալների մեծ մասը կարելի է գտնել և ուղղել նախքան որևէ ֆիզիկական բաղադրիչ արտադրելը: Լուծողի մեծ մասը 3D տպագրվել է PLA- ում ՝ օգտագործելով prusa MK3 տպիչ: Բացի այդ, օգտագործվել են հետևյալ սարքավորումները.

  • 8 մմ 8 մմ ալյումինե գավազան (10 սմ երկարություն)
  • 8 գծային գնդիկավոր առանցքակալներ (LM8UU)
  • մի փոքր ավելի քիչ, քան 2 մ GT2 6 մմ չափման գոտի + որոշ ճախարակներ
  • 6 NEMA 17 երկբեւեռ սլաքային շարժիչ
  • 6 Polulu 4988 stepper վարորդ
  • Arudino Mega- ն ՝ որպես ծրագրի վերահսկիչ
  • 12 Վ 3 Ա էլեկտրամատակարարում
  • հետընթաց փոխարկիչ ՝ ապահովելու համար arduino- ն
  • որոշ պտուտակներ և միակցիչներ
  • որոշ նրբատախտակ հիմքի համար

Սարքավորման նկարագրություն

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

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

X- և y առանցքները հիմնականում նույնական են, դրանք տարբերվում են միայն գոտու ամրացման կետի բարձրությամբ, սա այնպես է, որ երկու գոտիների միջև բախումներ չլինեն ամբողջովին հավաքվելիս:

Պատկեր
Պատկեր

Քայլ 2: Ընտրեք ճիշտ շարժիչներ

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

Ընդհանուր առմամբ ոլորող մոմենտը որոշվում է այն ուժով, որն ուղղահայաց ուղղվում է պտույտի կետի դիրքին r հեռավորության վրա.

Պատկեր
Պատկեր
Պատկեր
Պատկեր

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

Պատկեր
Պատկեր

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

Պատկեր
Պատկեր

Արագացումը, այս դեպքում, գրավիտացիոն արագացումն է: Այսպիսով, պահանջվող ոլորող մոմենտ ստեղծվում է ըստ

Պատկեր
Պատկեր

Բոլոր արժեքների միացումը, ներառյալ Ռուբիկի խորանարդի անկյունագծի կեսը, վերջապես բացահայտում է պահանջվող ոլորող մոմենտը:

Պատկեր
Պատկեր

Ես գնացի քայլող շարժիչներով, որոնք ունակ են կիրառել մինչև 0.4 Նմ, ինչը, հավանաբար, չափազանց մեծ է, բայց ես ուզում էի ապահով լինել:

Քայլ 3: Հիմքի կառուցում

Հիմքը բաղկացած է շատ պարզ փայտե տուփից և այն պարունակում է բոլոր անհրաժեշտ էլեկտրոնիկան: Այն ունի խրոց ՝ մեքենան միացնելու և անջատելու համար, LED, որը ցույց է տալիս, թե արդյոք այն միացված է, USB B պորտ և վարդակից, որը կարող է միացվել սնուցման աղբյուրին: Այն կառուցվել է 15 մմ նրբատախտակի, պտուտակների և մի փոքր սոսնձի օգտագործմամբ:

Պատկեր
Պատկեր
Պատկեր
Պատկեր
Պատկեր
Պատկեր
Պատկեր
Պատկեր

Քայլ 4: Սարքավորումների հավաքում

Այժմ անհրաժեշտ բոլոր մասերով, ներառյալ հիմքը, Q-bot- ը պատրաստ էր հավաքվել: Պատվերով մասերը 3D տպագրվեցին և անհրաժեշտության դեպքում ճշգրտվեցին: Այս պատկերակի վերջում կարող եք ներբեռնել CAD- ի բոլոր ֆայլերը: Theողովը ներառում էր 3D տպված բոլոր մասերի տեղադրումը գնված մասերի հետ, երկարացնելով շարժիչի մալուխները և պտուտակելով բոլոր մասերը դեպի հիմքը: Բացի այդ, ես թևեր եմ դնում շարժիչի մալուխների շուրջ ՝ պարզապես մի փոքր ավելի կոկիկ տեսք ունենալու համար, և դրանց ծայրերին ավելացնում եմ JST միակցիչներ:

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

Պատկեր
Պատկեր
Պատկեր
Պատկեր

Քայլ 5: Էլեկտրոնիկա

Ինչ վերաբերում է էլեկտրոնիկային, նախագիծը բավականին պարզ է: Գոյություն ունի հիմնական 12 Վ էլեկտրամատակարարում, որը կարող է ապահովել մինչև 3 Ա հոսանք, որը սնուցում է շարժիչները: Arduino- ն ապահով կերպով սնուցելու համար օգտագործվում է քայլ առ քայլ մոդուլ, և Arduino- ի համար նախատեսված հատուկ վահան է նախագծվել, որը տեղավորում է բոլոր քայլակակիր վարորդներին: Վարորդները շատ ավելի հեշտ են դարձնում շարժիչների կառավարումը: Կտրուկ շարժիչ վարելը պահանջում է վերահսկման որոշակի հաջորդականություն, բայց շարժիչով շարժիչների միջոցով մենք պետք է միայն բարձր զարկերակ ստեղծենք յուրաքանչյուր քայլի համար, որը շարժիչը պետք է պտտվի: Բացի այդ, որոշ jst միակցիչներ ավելացվել են վահանին `շարժիչների միացումն ավելի դյուրին դարձնելու համար: Arduino- ի վահանը խստորեն կառուցված էր մի տախտակի կտորի վրա և համոզվելուց հետո, որ ամեն ինչ աշխատում է այնպես, ինչպես ենթադրվում էր, արտադրվել է jlc pcb- ի կողմից:

Ահա նախատիպի և արտադրված PCB- ի առաջ և հետո:

Պատկեր
Պատկեր
Պատկեր
Պատկեր

Քայլ 6: Softwareրագրակազմ և սերիական ինտերֆեյս

Q-Bot- ը բաժանված է երկու մասի: Մի կողմից կա ապարատային սարք, որը վերահսկվում է Arduino- ի կողմից, մյուս կողմից `ծրագրակազմ, որը հաշվարկում է խորանարդի լուծման ուղին` հիմնվելով ընթացիկ խառնաշփոթի վրա: Arduino- ի վրա աշխատող որոնվածը գրված է իմ կողմից, բայց այս ուղեցույցը կարճ պահելու համար ես այստեղ դրա մասին չեմ մանրամասնի: Եթե ցանկանում եք դիտել այն և խաղալ դրա հետ, իմ git պահեստի հղումը կտրամադրվի այս փաստաթղթի վերջում: Theրագրակազմը, որը հաշվարկում է լուծումը, աշխատում է պատուհանների մեքենայի վրա և գրված է իմ գործընկերներից մեկի կողմից: Կրկին այս աղբյուրի վերջում կարելի է գտնել նրա աղբյուրի կոդի հղումները: Երկու մասերը շփվում են ՝ օգտագործելով սերիական պարզ ինտերֆեյս: Այն հաշվարկում է լուծումը ՝ հիմնվելով Կոսիեմբայի երկաֆազ ալգորիթմի վրա: Լուծող ծրագրակազմը լուծողին ուղարկում է երկու բայթից բաղկացած հրաման և սպասում, մինչև այն վերադառնա «ACK»: Այս կերպ լուծիչը կարող է փորձարկվել և կարգաբերվել ՝ օգտագործելով սերիական պարզ մոնիտոր: Հրահանգների ամբողջական փաթեթը կարող եք գտնել ստորև:

Պատկեր
Պատկեր

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

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

Ութ ամիս զարգանալուց, հայհոյելուց, ստեղնաշարին հարվածելուց և Q-bot- ը պարելուց հետո վերջապես այն կետում էր, որտեղ հաջողությամբ լուծվեց իր առաջին Ռուբիկի խորանարդը: Խորանարդի խառնաշփոթը պետք է ձեռքով տեղադրվեր կառավարման ծրագրաշարի մեջ, բայց ամեն ինչ լավ էր աշխատում:

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

Պատկեր
Պատկեր

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

Պաշարներ:

Irmրագրաշարի աղբյուրի կոդը.

github.com/Axodarap/QBot_firmware

Վերահսկիչ ծրագրաշարի աղբյուրի կոդը

github.com/waldhube16/Qbot_SW

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