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

Make a Maze Runner Robot: 3 քայլ (նկարներով)
Make a Maze Runner Robot: 3 քայլ (նկարներով)

Video: Make a Maze Runner Robot: 3 քայլ (նկարներով)

Video: Make a Maze Runner Robot: 3 քայլ (նկարներով)
Video: The Fastest Maze-Solving Competition On Earth 2024, Հուլիսի
Anonim
Կատարեք Maze Runner ռոբոտ
Կատարեք Maze Runner ռոբոտ
Կատարեք Maze Runner ռոբոտ
Կատարեք Maze Runner ռոբոտ
Կատարեք Maze Runner ռոբոտ
Կատարեք Maze Runner ռոբոտ
Կատարեք Maze Runner ռոբոտ
Կատարեք Maze Runner ռոբոտ

Լաբիրինթոս լուծող ռոբոտները ծագել են 1970-ականներից: Այդ ժամանակից ի վեր IEEE- ն անցկացնում է լաբիրինթոս լուծման մրցումներ, որոնք կոչվում են Micro Mouse Contest: Մրցույթի նպատակն է ստեղծել ռոբոտ, որը հնարավորինս արագ կգտնի լաբիրինթոսի միջնակետը: Լաբիրինթոսն արագ լուծելու համար օգտագործվող ալգորիթմները, որպես կանոն, բաժանվում են երեք կատեգորիայի. պատահական որոնում, լաբիրինթոս քարտեզագրում և աջ կամ ձախ պատի հետևյալ մեթոդները:

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

Սարքավորումներ

Այս ծրագիրը օգտագործում է.

  • 2 Կտրուկ անալոգային հեռավորության տվիչներ
  • Tracker ցուցիչ
  • Կոդավորիչ
  • Շարժիչներ և շարժիչի վարորդ
  • Silego GreenPAK SLG46531V
  • Լարման կարգավորիչ, ռոբոտի շասսի:

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

Որպես թիրախ սահմանվում է սպիտակ գիծ սև գույնի հողի դեմ: Սպիտակ գիծը հայտնաբերելու համար մենք կօգտագործենք tracker սենսորը: Հետևող սենսորը ունի հինգ անալոգային ելք, իսկ ստացված տվյալների վրա ազդում է հայտնաբերված օբյեկտի հեռավորությունը և գույնը: Ավելի բարձր ինֆրակարմիր անդրադարձմամբ (սպիտակ) հայտնաբերված կետերը կհանգեցնեն ավելի բարձր ելքային արժեքի, իսկ ցածր ինֆրակարմիր անդրադարձումը (սև) `ավելի ցածր ելքային արժեքի:

Մենք կօգտագործենք pololu անիվի կոդավորիչը `ռոբոտի անցած տարածությունը հաշվարկելու համար: Այս քառակուսի ծածկագրման տախտակը նախատեսված է pololu միկրո մետաղական փոխանցման շարժիչների հետ աշխատելու համար: Այն գործում է ՝ պահելով երկու ինֆրակարմիր անդրադարձման տվիչ Pololu 42 × 19 մմ անիվի հանգույցի ներսում և չափելով անիվի եզրով տասներկու ատամների շարժը:

Շարժիչների կառավարման համար օգտագործվում է շարժիչի վարորդի տպատախտակ (L298N): INx կապումներն օգտագործվում են շարժիչները ուղղելու համար, իսկ ENx կապումներն օգտագործվում են շարժիչների արագությունը սահմանելու համար:

Բացի այդ, լարման կարգավորիչն օգտագործվում է մարտկոցից լարումը մինչև 5 Վ իջեցնելու համար:

Քայլ 1: Ալգորիթմի նկարագրություն

Ալգորիթմի նկարագրություն
Ալգորիթմի նկարագրություն
Ալգորիթմի նկարագրություն
Ալգորիթմի նկարագրություն
Ալգորիթմի նկարագրություն
Ալգորիթմի նկարագրություն
Ալգորիթմի նկարագրություն
Ալգորիթմի նկարագրություն

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

Կարևոր նշում է, որ ռոբոտի աջ թեքումից հետո պատ չկա: Հետևաբար «աջ թեքվելն» իրականացվում է երեք քայլով: Առաջ շարժվեք, թեքվեք աջ, առաջ շարժվեք:

Բացի այդ, ռոբոտը առաջ շարժվելիս պետք է հեռավորություն պահի պատից: Դա կարելի է անել ՝ մեկ շարժիչը կարգավորելով մյուսից ավելի արագ կամ դանդաղ: Հոսքի գծապատկերի վերջնական վիճակը ներկայացված է նկար 10 -ում:

Լաբիրինթոս վազող ռոբոտը շատ հեշտությամբ կարող է իրականացվել մեկ GreenPAK կարգավորելի խառը ազդանշանի IC- ով (CMIC): Դուք կարող եք անցնել բոլոր քայլերը ՝ հասկանալու համար, թե ինչպես է GreenPAK չիպը ծրագրավորվել Maze Runner Robot- ը կառավարելու համար: Այնուամենայնիվ, եթե դուք պարզապես ցանկանում եք հեշտությամբ ստեղծել Maze Runner Robot- ը ՝ չհասկանալով բոլոր ներքին սխեմաները, ներբեռնեք GreenPAK ծրագիրը ՝ արդեն ավարտված Maze Runner Robot GreenPAK դիզայնի ֆայլը դիտելու համար: Միացրեք ձեր համակարգիչը GreenPAK Development Kit- ին և հարվածեք ծրագրին `ձեր Maze Runner Robot- ը կառավարելու համար հարմարեցված IC ստեղծելու համար: Հաջորդ քայլը կքննարկի այն տրամաբանությունը, որը Maze Runner Robot GreenPAK դիզայնի ֆայլում է, նրանց համար, ովքեր հետաքրքրված են հասկանալու, թե ինչպես է աշխատում սխեման:

Քայլ 2. GreenPAK ձևավորում

GreenPAK դիզայն
GreenPAK դիզայն
GreenPAK դիզայն
GreenPAK դիզայն
GreenPAK դիզայն
GreenPAK դիզայն

GreenPAK- ի դիզայնը բաղկացած է երկու մասից: Սրանք:

  • Հեռավորության տվիչներից տվյալների մեկնաբանում / մշակում
  • ASM- ի վիճակները և շարժիչի ելքերը

Հեռավորության տվիչներից տվյալների մեկնաբանում / մշակում

Կարևոր է մեկնաբանել տվյալները հեռավորության սենսորներից: Ռոբոտի շարժումները դիտարկվում են ըստ հեռավորության սենսորների ելքերի: Քանի որ հեռավորության տվիչները անալոգային են, մենք կօգտագործենք ACMP- ները: Ռոբոտի դիրքը պատի նկատմամբ որոշվում է սենսորների լարումները նախապես որոշված շեմի լարման հետ համեմատելով:

Մենք կօգտագործենք 3 ACMP;

  • Առջևի պատը հայտնաբերելու համար (ACMP2)
  • Աջ պատը հայտնաբերելու համար (ACMP0)
  • Աջ պատի հեռավորությունը պաշտպանելու համար (ACMP1)

Քանի որ ACMP0- ը և ACMP1- ը կախված են հեռավորության միևնույն սենսորից, մենք երկու համեմատիչների համար օգտագործել ենք նույն IN+ աղբյուրը: Ազդանշանի մշտական փոփոխությունը կարող է կանխվել `ACMP1 հիստերեզի 25 մվ հաղորդելով:

Մենք կարող ենք որոշել ուղղության ազդանշանները `հիմնվելով ACMP- ի ելքերի վրա: Նկար 12 -ում ցուցադրված սխեման պատկերում է նկար 7 -ում նկարագրված հոսքի դիագրամը:

Նույն կերպ, շրջանը, որը ցույց է տալիս ռոբոտի դիրքը աջ պատի նկատմամբ, ներկայացված է նկար 13 -ում:

ASM պետություններ և շարժիչի ելքեր

Այս ծրագիրը օգտագործում է Asynchronous State Machine- ը կամ ASM- ը ՝ ռոբոտին վերահսկելու համար: ASM- ում կա 8 վիճակ, և յուրաքանչյուր նահանգում `8 ելք: Ելքային RAM- ը կարող է օգտագործվել այս ելքերը կարգավորելու համար: Նահանգները թվարկված են ստորև.

  • Սկսել
  • Վերահսկողություն
  • Հեռացեք աջ պատից
  • Աջ պատին մոտ
  • Թեքվեք ձախ
  • Տեղափոխել առաջ -1
  • Թեքվեք Աջ
  • Տեղափոխել առաջ -2

Այս վիճակները որոշում են ելքը շարժիչին և ուղղորդում ռոբոտին: Կան GreenPAK- ից 3 ելքեր յուրաքանչյուր շարժիչի համար: Երկուսը որոշում են շարժիչի ուղղությունը, իսկ մյուս ելքը որոշում է շարժիչի արագությունը: Այս ելքերի համաձայն շարժիչի շարժումը ցուցադրվում է հետևյալ աղյուսակներում.

Այս աղյուսակներից բխում է ASM Output RAM- ը: Այն ցույց է տրված նկար 14 -ում: Շարժիչային վարորդներից բացի, կա ևս երկու ելք: Այս ելքերը գնում են համապատասխան հետաձգման բլոկներ, որոնք թույլ են տալիս ռոբոտին անցնել որոշակի տարածություն: Այս հետաձգման բլոկների ելքերը նույնպես կապված են ASM մուտքերի հետ:

PWM- ները օգտագործվում էին շարժիչների արագությունը կարգավորելու համար: ASM- ն օգտագործվել է որոշելու, թե ինչ PWM շարժիչով կաշխատի: PWMA-S և PWMB-S ազդանշանները դրված են mux ընտրված բիթերի վրա:

Քայլ 3:

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

Այս նախագծում մենք ստեղծեցինք լաբիրինթոս լուծող ռոբոտ: Մենք մեկնաբանեցինք բազմաթիվ սենսորների տվյալները, վերահսկեցինք ռոբոտի վիճակը GreenPAK- ի ASM- ով և շարժիչները շարժեցինք շարժիչով: Ընդհանրապես, նման նախագծերում օգտագործվում են միկրոպրոցեսորներ, սակայն GreenPAK- ն ունի մի քանի առավելություն MCU- ի նկատմամբ. Այն ավելի փոքր է, ավելի մատչելի և կարող է ավելի արագ մշակել սենսորի ելքը, քան MCU- ն:

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