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

Արդուինո - Լաբիրինթոս լուծող ռոբոտ (MicroMouse) Wall հետևող ռոբոտ. 6 քայլ (նկարներով)
Արդուինո - Լաբիրինթոս լուծող ռոբոտ (MicroMouse) Wall հետևող ռոբոտ. 6 քայլ (նկարներով)

Video: Արդուինո - Լաբիրինթոս լուծող ռոբոտ (MicroMouse) Wall հետևող ռոբոտ. 6 քայլ (նկարներով)

Video: Արդուինո - Լաբիրինթոս լուծող ռոբոտ (MicroMouse) Wall հետևող ռոբոտ. 6 քայլ (նկարներով)
Video: Labirinto com Arduino - Maker Space Fundação Torino 2024, Հուլիսի
Anonim
Արդուինո | Maze Solving Robot (MicroMouse) Wall Follow Robot
Արդուինո | Maze Solving Robot (MicroMouse) Wall Follow Robot
Արդուինո | Maze Solving Robot (MicroMouse) Wall Follow Robot
Արդուինո | Maze Solving Robot (MicroMouse) Wall Follow Robot
Արդուինո | Maze Solving Robot (MicroMouse) Wall Follow Robot
Արդուինո | Maze Solving Robot (MicroMouse) Wall Follow Robot
Արդուինո | Maze Solving Robot (MicroMouse) Wall Follow Robot
Արդուինո | Maze Solving Robot (MicroMouse) Wall Follow Robot

Բարի գալուստ, ես Իսահակն եմ, և սա իմ առաջին ռոբոտն է ՝ «Striker v1.0»: կարող է պահանջվել փոփոխել ծածկագիրը և դիզայնը, բայց ամեն ինչ հեշտ է անել:

Քայլ 1: Մասեր

Մասեր
Մասեր
Մասեր
Մասեր
Մասեր
Մասեր

Նախևառաջ պետք է իմանաք, թե ինչ գործ ունեք:

Ռոբոտներ = Էլեկտրաէներգիա + Սարքաշար + Softwareրագրակազմ 1- Էլեկտրաէներգիա. Մարտկոցներն ունեն բազմաթիվ բնութագրեր, միայն պետք է իմանաք, թե որքան ընթացիկ և լարման կարիք ունեք:

2- Սարքավորումներ. «Մարմին, շարժիչ, շարժիչ, սենսորներ, լարեր և վերահսկիչ» դուք պետք է ստանաք միայն այն կարևոր մասերը, որոնք կատարում են առաջադրանքը, կարիք չկա ձեռք բերել շքեղ թանկարժեք վերահսկիչ ՝ պարզ առաջադրանքի համար:

3- Softwareրագրային ապահովում. Ծածկագիրն ամբողջովին տրամաբանության մասին է: Հասկանալով, թե ինչպես է աշխատում վերահսկիչը, ձեզ համար հեշտ կլինի ընտրել գործառույթները և կոդն ավելի պարզ դարձնել: Կոդի լեզուն որոշվում է վերահսկիչի տեսակով:

Մասերի ցուցակ.

  1. Arduino UNO
  2. 12 վ DC շարժիչներ (x2)
  3. Անիվներ (x2)
  4. Շարժիչային վարորդ (L298N)
  5. Հեռավորության ցուցիչ (ուլտրաձայնային)
  6. Լարերը
  7. 12 վ մարտկոց (1000 մԱ / ժ)

Գործիքների ցուցակ

  1. Մարտկոցի լիցքավորիչ
  2. Ակրիլային թերթ
  3. Sոդման երկաթ
  4. Մետաղալար կտրիչ
  5. Նեյլոնե Zip փաթեթավորեք

Լրացուցիչ զվարճանքի համար կարող եք օգտագործել LED- ները այն լուսավորելու համար, բայց դա շատ կարևոր չէ:

Քայլ 2: Մարմնի ձևավորում

Մարմնի ձևավորում
Մարմնի ձևավորում
Մարմնի դիզայն
Մարմնի դիզայն
Մարմնի դիզայն
Մարմնի դիզայն

Հիմնական գաղափարն այն էր, որ մարմնի վերևում գտնվող մասերը շարվեն և օգտագործվի նեյլոնե Zip Wrap- ը `կայունացնելու Arduino- ն, իսկ լարերը` մնացածի շնորհիվ `իրենց թեթև քաշի շնորհիվ:

Ես օգտագործել եմ CorelDRAW- ը ՝ մարմինը ձևավորելու համար և լրացուցիչ անցքեր եմ արել ապագա փոփոխությունների դեպքում:

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

PDF ֆայլը և CorelDRAW ֆայլը կցված են:

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

Քայլ 3. Իրականացում (կառուցում)

Իրականացում (շենք)
Իրականացում (շենք)
Իրականացում (շենք)
Իրականացում (շենք)
Իրականացում (շենք)
Իրականացում (շենք)

Դիզայնը հեշտացրեց մարմնի վրա սենսորների ամրագրումը:

Քայլ 4: Լարերի տեղադրում

Հաղորդալարեր
Հաղորդալարեր
Հաղորդալարեր
Հաղորդալարեր
Հաղորդալարեր
Հաղորդալարեր

Ահա ռոբոտի սխեմատիկ դիագրամ: այս կապերը կապված են կոդի հետ: Դուք կարող եք փոխել կապերը, բայց համոզվեք, որ դրա հետ փոխեք կոդը: Մասերը: Սենսորներ

Ես կցանկանայի բացատրել «Ուլտրաձայնային տվիչ»

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

Ուլտրաձայնային տվիչի միացումը Arduino- ին.

  1. GND կապը միացված է Գրունտին:
  2. VCC կապը միացված է Դրականին (5 վ):
  3. Echo քորոցը միացված է Arduino- ին: (ընտրեք ցանկացած քորոց և համապատասխանեցրեք այն ծածկագրին)
  4. TRIG կապը միացված է Arduino- ին: (ընտրեք ցանկացած քորոց և համապատասխանեցրեք այն ծածկագրին)

Դուք կկազմեք ընդհանուր հիմք և միացրեք բոլոր GND- ները դրան (տվիչներ, Arduino, Driver), բոլոր հիմքերը պետք է միացված լինեն:

Vcc Pins- ի համար նաև 3 սենսորները միացրեք 5 վ Pin- ի

(կարող եք դրանք միացնել Arduino- ին կամ վարորդին, ես խորհուրդ եմ տալիս վարորդին)

Նշում. Սենսորները միացրեք 5 վ -ից բարձր լարման, հակառակ դեպքում այն վնասված կլինի:

Շարժիչային վարորդ

L298N H- կամուրջ. Դա IC է, որը կարող է թույլ տալ ձեզ վերահսկել երկու DC շարժիչների արագությունը և ուղղությունը կամ հեշտությամբ վերահսկել մեկ երկբևեռ սլացիկ շարժիչը: L298N H-bridge վարորդը կարող է օգտագործվել շարժիչների հետ, որոնք ունեն լարման միջև 5 և 35V DC

Կա նաև ինքնաթիռի 5 վ կարգավորիչ, այնպես որ, եթե ձեր մատակարարման լարումը մինչև 12 վ է, կարող եք նաև 5 վ աղբյուր բերել տախտակից:

Հաշվի առեք պատկերը. Թվերը համապատասխանեցրեք նկարի ներքևի ցուցակին.

  1. DC շարժիչ 1 «+»
  2. DC շարժիչ 1 «-»
  3. 12 վ ցատկիչ - հեռացրեք այն, եթե օգտագործում եք 12 վ DC- ից ավելի հոսանքի լարում: Սա հնարավորություն է տալիս ներկառուցված 5 վ կարգավորիչ
  4. Միացրեք ձեր շարժիչի մատակարարման լարումը այստեղ, առավելագույնը 35v DC:
  5. GND
  6. 5 վ ելք, եթե 12 վ ցատկող տեղում
  7. DC շարժիչ 1 -ը միացնում է թռիչքը: Հեռացրեք jumper- ը և միացեք PWM ելքին `DC շարժիչի արագության վերահսկման համար:
  8. IN1 ուղղության հսկողություն
  9. IN2 ուղղության հսկողություն
  10. IN3 ուղղության հսկողություն
  11. IN4 ուղղության հսկողություն
  12. DC շարժիչ 2 հնարավորություն է տալիս jumper. Հեռացրեք jumper- ը և միացեք PWM ելքին ՝ DC շարժիչի արագության կառավարման համար
  13. DC շարժիչ 2 «+»
  14. DC շարժիչ 2 «-»

Նշում. Այս վարորդը թույլատրում է 1 Ա մեկ ալիքի համար, ավելի հոսանքի արտահոսքը վնասում է IC- ին:

Մարտկոց

Ես օգտագործել եմ 12 վ մարտկոց ՝ 1000 մԱ / ժ հզորությամբ:

Վերևի աղյուսակը ցույց է տալիս, թե ինչպես է լարումը նվազում, երբ մարտկոցը լիցքաթափվում է: դուք պետք է դա նկատի ունենաք, և դուք պետք է անընդհատ լիցքավորեք մարտկոցը:

Լիցքաթափման ժամանակը հիմնականում Ah կամ mAh գնահատականն է `բաժանված հոսանքի վրա:

Այսպիսով, 1000 մԱ / ժ մարտկոցի համար, որի բեռը 300 մԱ է, դուք ունեք.

1000/300 = 3.3 ժամ

Եթե ավելի շատ հոսանք եք հոսում, ժամանակը կնվազի և այլն: Նշում. Համոզվեք, որ դուք չեք գերազանցում մարտկոցի լիցքավորման հոսանքը, հակառակ դեպքում այն վնասված կլինի:

Նաև կրկին ստեղծեք ընդհանուր հիմք և միացրեք բոլոր GND- ները դրան (տվիչներ, Arduino, Driver), բոլոր հիմքերը պետք է միացված լինեն:

Քայլ 5: Կոդավորում

Կոդավորում
Կոդավորում
Կոդավորում
Կոդավորում

Ես դրանք դարձրեցի գործառույթներ և զվարճացա կոդավորելով այս ռոբոտին:

Հիմնական գաղափարն այն է, որ խուսափենք պատերին հարվածելուց և լաբիրինթոսից դուրս գալը: մենք ունեինք 2 պարզ լաբիրինթոս, և ես պետք է դա նկատի ունենայի, քանի որ դրանք տարբեր էին:

Կապույտ լաբիրինթոսն օգտագործում է աջ պատը ՝ հետևելով ալգորիթմին:

Կարմիր լաբիրինթոսն օգտագործում է ձախ պատը ՝ հետևելով ալգորիթմին:

Վերը նշված լուսանկարը ցույց է տալիս ելքը երկու լաբիրինթոսներում:

Կոդի հոսք.

  1. քորոցների սահմանում
  2. ելքային և մուտքային կապերի սահմանում
  3. ստուգեք տվիչների ընթերցումները
  4. պատերի սահմանման համար օգտագործեք տվիչների ընթերցումը
  5. ստուգեք առաջին ուղին (եթե այն ձախ էր, ապա հետևեք ձախ պատին, եթե ճիշտ է ՝ հետևեք աջ պատին)
  6. Օգտագործեք PID- ը `պատերին հարվածելուց և շարժիչների արագությունը վերահսկելու համար

Դուք կարող եք օգտագործել այս ծածկագիրը, բայց փոխել լավագույն կապերը և հաստատուն թվերը `լավագույն արդյունքը ստանալու համար:

Կոդի համար հետևեք այս հղմանը:

create.arduino.cc/editor/is7aq_shs/391be92…

Հետևեք այս հղմանը գրադարանի և Arduino կոդի ֆայլերի համար:

github.com/Is7aQ/Maze-Solving-Robot

Քայլ 6: Haveվարճացեք

Համոզվեք, որ զվարճացեք. D Սա ամեն ինչ զվարճանքի համար է, մի խուճապի մատնվեք, եթե այն չի աշխատում կամ եթե ինչ -որ բան սխալ է: հետևեք սխալին և մի հանձնվեք: Շնորհակալություն ընթերցման համար և հուսով եմ, որ դա օգնեց: Կապ.

Էլ. Փոստ ՝ [email protected]

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