Բովանդակություն:
- Քայլ 1: Սարքավորման նախագծում
- Քայլ 2: Ընտրեք ճիշտ շարժիչներ
- Քայլ 3: Հիմքի կառուցում
- Քայլ 4: Սարքավորումների հավաքում
- Քայլ 5: Էլեկտրոնիկա
- Քայլ 6: Softwareրագրակազմ և սերիական ինտերֆեյս
- Քայլ 7: Եզրակացություն
![Q -Bot - բաց կոդով Ռուբիկի խորանարդի լուծիչը. 7 քայլ (նկարներով) Q -Bot - բաց կոդով Ռուբիկի խորանարդի լուծիչը. 7 քայլ (նկարներով)](https://i.howwhatproduce.com/images/005/image-13252-j.webp)
Video: Q -Bot - բաց կոդով Ռուբիկի խորանարդի լուծիչը. 7 քայլ (նկարներով)
![Video: Q -Bot - բաց կոդով Ռուբիկի խորանարդի լուծիչը. 7 քայլ (նկարներով) Video: Q -Bot - բաց կոդով Ռուբիկի խորանարդի լուծիչը. 7 քայլ (նկարներով)](https://i.ytimg.com/vi/fZ8eyWBQmfU/hqdefault.jpg)
2024 Հեղինակ: John Day | [email protected]. Վերջին փոփոխված: 2024-01-30 09:46
![Image Image](https://i.howwhatproduce.com/images/005/image-13252-2-j.webp)
![](https://i.ytimg.com/vi/IGStJeXubtQ/hqdefault.jpg)
![Պատկեր Պատկեր](https://i.howwhatproduce.com/images/005/image-13252-3-j.webp)
Պատկերացրեք, որ դուք ունեք խառնված Ռուբիկի խորանարդը, գիտեք, որ 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 առանցքները հիմնականում նույնական են, դրանք տարբերվում են միայն գոտու ամրացման կետի բարձրությամբ, սա այնպես է, որ երկու գոտիների միջև բախումներ չլինեն ամբողջովին հավաքվելիս:
![Պատկեր Պատկեր](https://i.howwhatproduce.com/images/005/image-13252-4-j.webp)
Քայլ 2: Ընտրեք ճիշտ շարժիչներ
Իհարկե, այստեղ շատ կարևոր է շարժիչների ճիշտ ընտրությունը: Հիմնական մասն այն է, որ նրանք պետք է բավականաչափ ուժեղ լինեն, որպեսզի կարողանան շրջել Ռուբիկի խորանարդը: Այստեղ միակ խնդիրն այն է, որ Ռուբիկի խորանարդներից ոչ մի արտադրող ոլորող մոմենտի գնահատական չի տալիս: Այսպիսով, ես ստիպված էի իմպրովիզ անել և կատարել իմ սեփական չափումները:
Ընդհանուր առմամբ ոլորող մոմենտը որոշվում է այն ուժով, որն ուղղահայաց ուղղվում է պտույտի կետի դիրքին r հեռավորության վրա.
![Պատկեր Պատկեր](https://i.howwhatproduce.com/images/005/image-13252-5-j.webp)
![Պատկեր Պատկեր](https://i.howwhatproduce.com/images/005/image-13252-6-j.webp)
Այսպիսով, եթե ես կարողանայի ինչ -որ կերպ չափել խորանարդի վրա կիրառվող ուժը, կարող էի հաշվարկել ոլորող մոմենտ ստեղծելու պահը: Դա հենց այն է, ինչ ես արեցի: Ես իմ խորանարդը սեղմեցի դարակի վրա այնպես, որ միայն մի կողմը կարողանա շարժվել: Որ թելը կապվեց խորանարդի շուրջը, իսկ տոպրակը ամրացվեց ներքևում: Այժմ մնում էր միայն պարկի քաշը դանդաղ մեծացնել, մինչև խորանարդը պտտվելը: Accurateշգրիտ կշիռների բացակայության համար ես օգտագործեցի կարտոֆիլ և չափեցի դրանք հետո: Ոչ գիտական ամենաարդյունավետ մեթոդը, բայց քանի որ ես չեմ փորձում գտնել նվազագույն ոլորող մոմենտը, դա բավականին բավարար է:
![Պատկեր Պատկեր](https://i.howwhatproduce.com/images/005/image-13252-7-j.webp)
Ես երեք անգամ չափումներ կատարեցի և ամենաբարձր արժեքը վերցրի միայն ապահով լինելու համար: Արդյունքում քաշը կազմել է 0.52 կգ: Այժմ Իսահակ Նյուտոնի պատճառով մենք գիտենք, որ ուժը հավասար է զանգվածային արագությունների արագացմանը:
![Պատկեր Պատկեր](https://i.howwhatproduce.com/images/005/image-13252-8-j.webp)
Արագացումը, այս դեպքում, գրավիտացիոն արագացումն է: Այսպիսով, պահանջվող ոլորող մոմենտ ստեղծվում է ըստ
![Պատկեր Պատկեր](https://i.howwhatproduce.com/images/005/image-13252-9-j.webp)
Բոլոր արժեքների միացումը, ներառյալ Ռուբիկի խորանարդի անկյունագծի կեսը, վերջապես բացահայտում է պահանջվող ոլորող մոմենտը:
![Պատկեր Պատկեր](https://i.howwhatproduce.com/images/005/image-13252-10-j.webp)
Ես գնացի քայլող շարժիչներով, որոնք ունակ են կիրառել մինչև 0.4 Նմ, ինչը, հավանաբար, չափազանց մեծ է, բայց ես ուզում էի ապահով լինել:
Քայլ 3: Հիմքի կառուցում
Հիմքը բաղկացած է շատ պարզ փայտե տուփից և այն պարունակում է բոլոր անհրաժեշտ էլեկտրոնիկան: Այն ունի խրոց ՝ մեքենան միացնելու և անջատելու համար, LED, որը ցույց է տալիս, թե արդյոք այն միացված է, USB B պորտ և վարդակից, որը կարող է միացվել սնուցման աղբյուրին: Այն կառուցվել է 15 մմ նրբատախտակի, պտուտակների և մի փոքր սոսնձի օգտագործմամբ:
![Պատկեր Պատկեր](https://i.howwhatproduce.com/images/005/image-13252-11-j.webp)
![Պատկեր Պատկեր](https://i.howwhatproduce.com/images/005/image-13252-12-j.webp)
![Պատկեր Պատկեր](https://i.howwhatproduce.com/images/005/image-13252-13-j.webp)
![Պատկեր Պատկեր](https://i.howwhatproduce.com/images/005/image-13252-14-j.webp)
Քայլ 4: Սարքավորումների հավաքում
Այժմ անհրաժեշտ բոլոր մասերով, ներառյալ հիմքը, Q-bot- ը պատրաստ էր հավաքվել: Պատվերով մասերը 3D տպագրվեցին և անհրաժեշտության դեպքում ճշգրտվեցին: Այս պատկերակի վերջում կարող եք ներբեռնել CAD- ի բոլոր ֆայլերը: Theողովը ներառում էր 3D տպված բոլոր մասերի տեղադրումը գնված մասերի հետ, երկարացնելով շարժիչի մալուխները և պտուտակելով բոլոր մասերը դեպի հիմքը: Բացի այդ, ես թևեր եմ դնում շարժիչի մալուխների շուրջ ՝ պարզապես մի փոքր ավելի կոկիկ տեսք ունենալու համար, և դրանց ծայրերին ավելացնում եմ JST միակցիչներ:
Իմ կառուցած բազայի կարևորությունը նշելու համար ահա մի հավաքածուի նախքան և հետո, թե ինչ տեսք ուներ հավաքը: Ամեն ինչ մի փոքր շտկելը կարող է հսկայական փոփոխություններ կատարել:
![Պատկեր Պատկեր](https://i.howwhatproduce.com/images/005/image-13252-15-j.webp)
![Պատկեր Պատկեր](https://i.howwhatproduce.com/images/005/image-13252-16-j.webp)
Քայլ 5: Էլեկտրոնիկա
Ինչ վերաբերում է էլեկտրոնիկային, նախագիծը բավականին պարզ է: Գոյություն ունի հիմնական 12 Վ էլեկտրամատակարարում, որը կարող է ապահովել մինչև 3 Ա հոսանք, որը սնուցում է շարժիչները: Arduino- ն ապահով կերպով սնուցելու համար օգտագործվում է քայլ առ քայլ մոդուլ, և Arduino- ի համար նախատեսված հատուկ վահան է նախագծվել, որը տեղավորում է բոլոր քայլակակիր վարորդներին: Վարորդները շատ ավելի հեշտ են դարձնում շարժիչների կառավարումը: Կտրուկ շարժիչ վարելը պահանջում է վերահսկման որոշակի հաջորդականություն, բայց շարժիչով շարժիչների միջոցով մենք պետք է միայն բարձր զարկերակ ստեղծենք յուրաքանչյուր քայլի համար, որը շարժիչը պետք է պտտվի: Բացի այդ, որոշ jst միակցիչներ ավելացվել են վահանին `շարժիչների միացումն ավելի դյուրին դարձնելու համար: Arduino- ի վահանը խստորեն կառուցված էր մի տախտակի կտորի վրա և համոզվելուց հետո, որ ամեն ինչ աշխատում է այնպես, ինչպես ենթադրվում էր, արտադրվել է jlc pcb- ի կողմից:
Ահա նախատիպի և արտադրված PCB- ի առաջ և հետո:
![Պատկեր Պատկեր](https://i.howwhatproduce.com/images/005/image-13252-17-j.webp)
![Պատկեր Պատկեր](https://i.howwhatproduce.com/images/005/image-13252-18-j.webp)
Քայլ 6: Softwareրագրակազմ և սերիական ինտերֆեյս
Q-Bot- ը բաժանված է երկու մասի: Մի կողմից կա ապարատային սարք, որը վերահսկվում է Arduino- ի կողմից, մյուս կողմից `ծրագրակազմ, որը հաշվարկում է խորանարդի լուծման ուղին` հիմնվելով ընթացիկ խառնաշփոթի վրա: Arduino- ի վրա աշխատող որոնվածը գրված է իմ կողմից, բայց այս ուղեցույցը կարճ պահելու համար ես այստեղ դրա մասին չեմ մանրամասնի: Եթե ցանկանում եք դիտել այն և խաղալ դրա հետ, իմ git պահեստի հղումը կտրամադրվի այս փաստաթղթի վերջում: Theրագրակազմը, որը հաշվարկում է լուծումը, աշխատում է պատուհանների մեքենայի վրա և գրված է իմ գործընկերներից մեկի կողմից: Կրկին այս աղբյուրի վերջում կարելի է գտնել նրա աղբյուրի կոդի հղումները: Երկու մասերը շփվում են ՝ օգտագործելով սերիական պարզ ինտերֆեյս: Այն հաշվարկում է լուծումը ՝ հիմնվելով Կոսիեմբայի երկաֆազ ալգորիթմի վրա: Լուծող ծրագրակազմը լուծողին ուղարկում է երկու բայթից բաղկացած հրաման և սպասում, մինչև այն վերադառնա «ACK»: Այս կերպ լուծիչը կարող է փորձարկվել և կարգաբերվել ՝ օգտագործելով սերիական պարզ մոնիտոր: Հրահանգների ամբողջական փաթեթը կարող եք գտնել ստորև:
![Պատկեր Պատկեր](https://i.howwhatproduce.com/images/005/image-13252-19-j.webp)
Յուրաքանչյուր շարժիչը մեկ քայլով պտտելու հրամանները լուծում են այն խնդիրը, երբ որոշ քայլողներ պատահաբար փոքր թռիչքներ են կատարում ուժի մեջ մտնելուց հետո: Դա փոխհատուցելու համար շարժիչները կարող են կարգավորվել իրենց սկզբնական դիրքի ՝ մինչև լուծման գործընթացը:
Քայլ 7: Եզրակացություն
Ութ ամիս զարգանալուց, հայհոյելուց, ստեղնաշարին հարվածելուց և Q-bot- ը պարելուց հետո վերջապես այն կետում էր, որտեղ հաջողությամբ լուծվեց իր առաջին Ռուբիկի խորանարդը: Խորանարդի խառնաշփոթը պետք է ձեռքով տեղադրվեր կառավարման ծրագրաշարի մեջ, բայց ամեն ինչ լավ էր աշխատում:
Մի քանի շաբաթ անց ես ավելացրի վեբ -տեսախցիկի տեղադրման սարքը, և իմ քոլեջը հարմարեցրեց ծրագրակազմը, որպեսզի ինքնաբերաբար կարդա խորանարդը վերցված պատկերներից: Այնուամենայնիվ, սա դեռ լավ փորձարկված չէ և դեռ որոշակի բարելավումների կարիք ունի:
![Պատկեր Պատկեր](https://i.howwhatproduce.com/images/005/image-13252-20-j.webp)
Եթե այս հրահանգը ձեր հետաքրքրությունը հարուցեց, մի հապաղեք և սկսեք կառուցել Q-bot- ի ձեր սեփական տարբերակը: Սկզբում դա կարող է սարսափելի թվալ, բայց դա շատ արժե ջանքեր գործադրել, և եթե ես կարողանայի դա անել, դուք նույնպես կարող եք:
Պաշարներ:
Irmրագրաշարի աղբյուրի կոդը.
github.com/Axodarap/QBot_firmware
Վերահսկիչ ծրագրաշարի աղբյուրի կոդը
github.com/waldhube16/Qbot_SW
Խորհուրդ ենք տալիս:
Իրական ժամանակում Ռուբիկի խորանարդի փակ աչքերով լուծիչ ՝ օգտագործելով Raspberry Pi և OpenCV. 4 քայլ
![Իրական ժամանակում Ռուբիկի խորանարդի փակ աչքերով լուծիչ ՝ օգտագործելով Raspberry Pi և OpenCV. 4 քայլ Իրական ժամանակում Ռուբիկի խորանարդի փակ աչքերով լուծիչ ՝ օգտագործելով Raspberry Pi և OpenCV. 4 քայլ](https://i.howwhatproduce.com/images/001/image-192-17-j.webp)
Իրական ժամանակի Ռուբիկի խորանարդի փակ աչքերով լուծիչ ՝ օգտագործելով Raspberry Pi և OpenCV. Սա Ռուբիկի խորանարդի գործիքի 2-րդ տարբերակն է, որը պատրաստվել է աչքերը փակ աչքերով լուծելու համար: 1 -ին տարբերակը մշակվել է javascript- ով, կարող եք տեսնել RubiksCubeBlindfolded1 նախագիծը: Ի տարբերություն նախորդի, այս տարբերակը օգտագործում է OpenCV գրադարանը ՝ գույներն ու էլ
Հեշտ թեքության վրա հիմնված գույնի փոփոխման անլար Ռուբիկի խորանարդի լամպ. 10 քայլ (նկարներով)
![Հեշտ թեքության վրա հիմնված գույնի փոփոխման անլար Ռուբիկի խորանարդի լամպ. 10 քայլ (նկարներով) Հեշտ թեքության վրա հիմնված գույնի փոփոխման անլար Ռուբիկի խորանարդի լամպ. 10 քայլ (նկարներով)](https://i.howwhatproduce.com/images/002/image-3620-j.webp)
Հեշտ թեքության վրա հիմնված գույնը փոխող անլար Ռուբիկի խորանարդի լամպ. Այսօր մենք պատրաստվում ենք կառուցել այս հիանալի Ռուբիկի խորանարդիկով լամպը, որը փոխում է գույնը `կախված այն կողմի վերևից: Խորանարդն աշխատում է LiPo- ի փոքր մարտկոցով, որը լիցքավորված է միկրո-USB ստանդարտ մալուխով և, իմ փորձարկմամբ, ունի մի քանի օր մարտկոցի կյանք: Այս
LED ձայնային ռեակտիվ անսահմանության խորանարդի վերջնական սեղան `6 քայլ (նկարներով)
![LED ձայնային ռեակտիվ անսահմանության խորանարդի վերջնական սեղան `6 քայլ (նկարներով) LED ձայնային ռեակտիվ անսահմանության խորանարդի վերջնական սեղան `6 քայլ (նկարներով)](https://i.howwhatproduce.com/images/001/image-1348-25-j.webp)
LED ձայնային ռեակտիվ անսահմանության խորանարդի վերջնական սեղան. Վա! Ի Whatնչ զով ազդեցություն է: - Սրանք այն բաներից են, որոնք դուք կլսեք ուղեցույցը լրացնելուց հետո: Ամբողջովին միտքը կծկող, գեղեցիկ, հիպնոսիկ, ձայնային-ռեակտիվ անվերջության խորանարդ: Սա համեստորեն առաջադեմ զոդման նախագիծ է, ինձ տևեց մոտ 12 մարդ
LED խորանարդի լույս ՝ 8 քայլ (նկարներով)
![LED խորանարդի լույս ՝ 8 քայլ (նկարներով) LED խորանարդի լույս ՝ 8 քայլ (նկարներով)](https://i.howwhatproduce.com/images/002/image-3064-12-j.webp)
LED խորանարդի լույս. Ես որոշ ժամանակ ուզում էի պատրաստել մի պարզ LED լուսատուփ, ուստի որոշեցի կառուցել այն: Ես ունեի մի թելիկ LED, որը մնացել էր մեկ այլ կառուցվածքից, որը հիանալի աշխատում էր ցրված ակրիլը լուսավորելու համար: Սովորաբար դուք ներսում գտնում եք թելերի LED- ներ
Դիրքի վրա հիմնված բազմաֆունկցիոնալ խորանարդի ժամացույց ՝ 5 քայլ (նկարներով)
![Դիրքի վրա հիմնված բազմաֆունկցիոնալ խորանարդի ժամացույց ՝ 5 քայլ (նկարներով) Դիրքի վրա հիմնված բազմաֆունկցիոնալ խորանարդի ժամացույց ՝ 5 քայլ (նկարներով)](https://i.howwhatproduce.com/images/002/image-4563-8-j.webp)
Պաշտոնի վրա հիմնված բազմաֆունկցիոնալ խորանարդի ժամացույց. Սա Arduino- ի վրա հիմնված ժամացույց է, որն ունի OLED էկրան, որը գործում է որպես ժամացույց ամսաթվով, որպես ցերեկային ժամացույց և գիշերային լույս: Տարբեր " գործառույթներ " վերահսկվում են արագացուցիչով և ընտրվում են խորանարդի ժամացույցը պտտելով