Мазмуну:

LEGO роботу лабиринт аркылуу айдайт: 9 кадам
LEGO роботу лабиринт аркылуу айдайт: 9 кадам

Video: LEGO роботу лабиринт аркылуу айдайт: 9 кадам

Video: LEGO роботу лабиринт аркылуу айдайт: 9 кадам
Video: Мудрец без яец ► 15 Прохождение The Legend of Zelda: Tears of the Kingdom 2024, Ноябрь
Anonim
Image
Image
Роботтун базасы
Роботтун базасы

Бул жөнөкөй, автономдуу робот, лабиринттен чыгуу үчүн иштөө үчүн иштелип чыккан. Бул LEGO Mindstorms EV3 жардамы менен курулган. EV3 программасы компьютерде иштейт жана программаны түзөт, андан кийин EV3 кыш деп аталган микроконтроллерге жүктөлөт. Программалоо ыкмасы иконаларга негизделген жана жогорку деңгээлде. Бул абдан жеңил жана ар тараптуу.

БӨЛҮКТӨР

  1. LEGO Mindstorms EV3 топтому
  2. LEGO Mindstorms EV3 УЗИ сенсору. Бул EV3 топтомуна киргизилген эмес.
  3. Лабиринт үчүн гофр картон. Эки картон жетиштүү болушу керек.
  4. Кичине жука картон кээ бир бурчтарды жана дубалдарды турукташтырууга жардам берет.
  5. Картон кесимдерин бириктирүү үчүн клей жана лента.
  6. Лабиринттин чыгышын аныктоо үчүн кызыл куттуктоо баракчасы.

КУРАЛДАР

  1. Картон кесүү үчүн пайдалуу бычак.
  2. Болот сызгыч кесүү процессине жардам берет.

MAZE-ЧЕЧҮҮ ЫКМАСЫ

Лабиринтте чабыттоонун бир нече ыкмалары бар. Эгер сиз аларды изилдөөгө кызыкдар болсоңуз, алар төмөнкү Википедия макаласында абдан жакшы сүрөттөлгөн:

Мен сол жактагы дубал ээрчиген эрежени тандадым. Идея робот лабиринттен өтүп баратканда төмөнкү чечимдерди кабыл алуу менен дубалды сол капталында кармап турат:

  1. Эгерде солго бурулушу мүмкүн болсо, анда муну жасаңыз.
  2. Болбосо, мүмкүн болсо түз барыңыз.
  3. Эгерде ал солго же түз бара албаса, мүмкүн болсо, оңго буруңуз.
  4. Эгерде жогоруда айтылгандардын бири да мүмкүн болбосо, бул туюк болуш керек. Айлануу.

Бир сактык, лабиринтте илмек болсо, бул ыкма ишке ашпай калышы мүмкүн. Укуруктун жайгашуусуна жараша, робот айланып, айланып жүрө бермек. Бул көйгөйдүн мүмкүн болгон чечими, роботтун бир циклде бара жатканын түшүнсө, оң колу менен дубал ээрчиген эрежеге өтүшү болмок. Мен бул тактоону долбоорума кошкон жокмун.

РОБОТ КУРУУГА КАДАМДАР

LEGO Mindstorms EV3 абдан ар тараптуу болгону менен, бир кирпичке туташтырылган сенсорлордун ар бир түрүнөн көп эмес. Эки же андан көп кирпич чынжырлуу болушу мүмкүн, бирок мен башка кирпич сатып алгым келбеди, ошондуктан мен төмөнкү сенсорлорду (үч ультрадыбыштуу сенсордун ордуна) колдондум: инфракызыл сенсор, түстүү сенсор жана УЗИ сенсору. Төмөндөгү сүрөттөрдүн жуптары роботту кантип жасоону көрсөтөт. Ар бир жуптун биринчи сүрөтү керектүү бөлүктөрдү көрсөтөт, ал эми экинчи сүрөттө ошол эле бөлүктөр бири -бири менен байланышкан.

1 -кадам: Роботтун базасы

Роботтун базасы
Роботтун базасы

Биринчи кадам көрсөтүлгөн бөлүктөрдү колдонуу менен роботтун базасын куруу болуп саналат. Робот базасы өйдө каратып көрсөтүлгөн. Роботтун арт жагындагы кичинекей L формасындагы бөлүк далыга таяныч болуп саналат. Ал робот жылган сайын жылат. Бул жакшы иштейт. EV3 комплектинде тоголок шар түрүндөгү бөлүк жок.

2 -кадам: базанын үстү

Базанын үстү
Базанын үстү
Базанын үстү
Базанын үстү
Базанын үстү
Базанын үстү

Кийинки 3 кадам роботтун, түстүү сенсордун жана 26 дюймдук кабелдердин чокусунун үстү үчүн.

3 -кадам: Инфракызыл жана УЗИ сенсорлору

Инфракызыл жана УЗИ сенсорлору
Инфракызыл жана УЗИ сенсорлору
Инфракызыл жана УЗИ сенсорлору
Инфракызыл жана УЗИ сенсорлору

Кийинки, инфракызыл сенсор (роботтун сол жагында) жана УЗИ сенсору (оңдо). Ошондой эле, кирпичти үстүнө бекитүү үчүн 4 казык.

Инфракызыл жана УЗИ сенсорлору кадимки горизонталдын ордуна тигинен жайгашкан. Бул дубалдардын бурчтарын же учтарын жакшыраак аныктоону камсыздайт.

4 -кадам: Кабелдер

Кабелдер
Кабелдер

Кирпичти тиркеп, кабелдерди төмөнкүдөй туташтырыңыз:

  • Порт В: сол чоң мотор.
  • Порт С: оң чоң мотор.
  • Порт 2: УЗИ сенсор.
  • Порт 3: түстүү сенсор.
  • 4 -порт: инфракызыл сенсор.

5 -кадам: Роботту куруунун акыркы кадамы: Декорация

Роботту куруунун акыркы кадамы: Декорация
Роботту куруунун акыркы кадамы: Декорация
Роботту куруунун акыркы кадамы: Декорация
Роботту куруунун акыркы кадамы: Декорация
Роботту куруунун акыркы кадамы: Декорация
Роботту куруунун акыркы кадамы: Декорация

Канаттары менен сүзгүчтөрү жасалгалоо үчүн гана.

6 -кадам: Программа үчүн псевдокод

  1. 3 секунд күтө туруңуз жана "Бар" деп айтыңыз.
  2. Роботту түз алдыга жылдырыңыз.
  3. Эгерде солго бурулушу мүмкүн болсо (б.а. инфракызыл сенсор жакын жердеги нерсени сезбесе), "Солго" деп айт жана солго кет.
  4. Жалган солго бурулбоо үчүн болжол менен 15 дюйм алдыга жылыңыз. Себеби, робот бурулгандан кийин, сенсор жаңы эле келген боштукту көрүп, робот солго бурулушу керек деп ойлойт, бул туура эмес. 2 -кадамга кайтыңыз.
  5. Эгерде солго бурулууга мүмкүн болбосо, Түстүү сенсор роботтун алдында эмнени көрүп жатканын текшериңиз.
  6. Эгерде түс жок болсо (б.а. эч кандай объект), анда 2 -кадамга кайтыңыз.
  7. Эгерде түс кызыл болсо, бул чыгуу. Роботту токтотуңуз, фанфик ойноңуз жана программаны токтотуңуз.
  8. Эгерде түс Браун болсо (б.а. күрөң картон алдыда), анда роботту токтотуңуз.

    1. Эгер оңго бурулушу мүмкүн болсо (б.а., эгерде УЗИ сенсору жакын жердеги нерсени сезбесе), "Оңго" деп айт жана оңго кет. 2 -кадамга кайтыңыз.
    2. Эгерде оңго бурулууга мүмкүн болбосо, "ух-о" деп айтыңыз, болжол менен 5 дюйм (12,5 см) артка буруп, артка буруңуз. 2 -кадамга кайтыңыз.

7 -кадам: Программа

Программа
Программа

LEGO Mindstorms EV3 сөлөкөткө негизделген абдан ыңгайлуу программалоо ыкмасына ээ. Блоктор компьютердеги дисплей экрандын ылдый жагында көрсөтүлөт жана программаны куруу үчүн программалоо терезесине сүйрөп барып таштап койсо болот. Скриншот бул долбоордун программасын көрсөтөт. Блоктор кийинки кадамда сүрөттөлөт.

Мен силерге программаны жүктөөнү кантип орнотууну түшүнө алган жокмун, андыктан Блоктор кийинки кадамда сүрөттөлөт. Ар бир блокто параметрлер жана параметрлер бар. Бул абдан жеңил жана ар тараптуу. Программаны иштеп чыгууга жана/же аны муктаждыктарыңызга ылайыкташтырууга көп убакыт кетпеши керек. Адаттагыдай эле, программаны иштеп чыгууда мезгил -мезгили менен сактап туруу жакшы идея.

EV3 кыш компьютерге USB кабели, Wi-Fi же Bluetooth аркылуу туташтырылышы мүмкүн. Ал туташып жана күйгүзүлгөндө, бул компьютердеги EV3 терезесинин төмөнкү оң бурчундагы кичинекей терезеде көрсөтүлөт. Оң жактагы "EV3" кызылга айланат. Бул дисплей Порт Көрүүгө коюлганда, ал реалдуу убакытта ар бир сенсор эмнени аныктап жатканын көрсөтөт. Бул эксперимент үчүн пайдалуу.

Бул программаны түзүүдө мен солдон оңго жана өйдөдөн төмөн карай иштөөнү жана ичиндеги башка блокторду сүйрөөдөн мурун Циклди жана Блокторду чоңойтууну сунуштайт элем. Мен чоңойтуудан мурун ичине кошумча блокторду киргизүүгө аракет кылып, башаламан көйгөйлөргө туш болдум.

8 -кадам: Программалык блоктор

  1. Программанын сол тарабынан башталып, программа иштелип жатканда Start Block автоматтык түрдө болот.
  2. Кийинки - программаны баштагандан кийин роботту лабиринттин кире беришине 3 секунд берүү үчүн Күтүү блогу.
  3. Үн блогу роботту "Бар" деп айтууга мажбурлайт.
  4. Loop Block программасынын көпчүлүгүн камтыйт. Дисплей 4 же 5 эсе кичирейтилүүгө тийиш жана бул Цикл Блокун Блокторду киргизүүдөн мурун Программалык Кенептин оң четине чейин чоңойтуу керек. Андан кийин кичирейтүүгө болот.
  5. Циклдин ичиндеги биринчи блок - бул рулду башкаруу менен нөлгө, ал эми кубаттуулукту 20га коюу. Ылдамыраак ылдамдык роботту кийинки кадамдарда сүйлөп жатып алдыга жылганда өтө алыска жылдырат.
  6. Инфракызыл сенсордун жакындык режиминдеги которуштуруу блогу 30дан чоңураак бир нерсенин бар -жогун текшерет. Бул күрөң картон үчүн болжол менен 9 дюймга (23 см) барабар. Эгерде мааниси 30дан чоң болсо, анда 7, 8 жана 9 -блоктор аткарылат, антпесе программа төмөндөгү 10 -блокко өтөт.
  7. Sound Block роботту "Солго" деп айтууга мажбурлайт.
  8. Рулу -45ке, кубаттуулугу 20га, айлануулар 1.26га, тормоз соңунда "True" деп коюлган. Бул роботту солго бурат.
  9. Рулу нөлгө, кубаттуулугу 20га, айлануулар 1,2ге, тормоз соңунда "Чын" деп коюлган. Бул роботтун солго бурулушун болтурбоо үчүн болжол менен 15 дюйм (15 см) алдыга жылат.
  10. Түстү өлчөөчү түс режиминдеги которуштуруу блогу роботтун алдында кандай түс турганын текшерет. Эгерде түс жок болсо (б.а. эч кандай объект), анда программа циклдин аягына чейин барат. Эгерде түс кызыл болсо, анда 11, 12 жана 13 -блоктор аткарылат. Эгерде түс Браун болсо, программа төмөндөгү 14 -блокко барат.
  11. Моторлорду токтотуу үчүн Өчүрүү режиминдеги рулдук блок.
  12. A Sound Block фанфар ойнойт.
  13. Loop Interrupt Block Loopтен чыгат.
  14. Моторлорду токтотуу үчүн Өчүрүү режиминдеги рулду башкаруучу блок.
  15. УЗИ сенсорундагы которуштуруу блогу Distance Inches режимин салыштыруу режиминде 8 дюймдан (20 см) алысыраак бир нерсенин бар -жогун текшерет. Эгерде ал 8 дюймдан ашса, анда Blocks16 жана 17 аткарылат, антпесе программа төмөндөгү 18 Блокко өтөт.
  16. Үн блогу роботту "Туура" деп айтууга мажбурлайт.
  17. A Move Steering Block with the Steering set with -55, Power set to -20, Rotations set to 1.1, and Brake End to True. Бул роботту оңго бурат.
  18. Үн блогу роботту "ух-о" деп айтууга мажбурлайт.
  19. Кыймыл танкы блогу Power Left менен -20га, Power Right -20га, Rotations 1ге жана Brake In End чыныгыга коюлган. Бул роботту артка буруп кетүү үчүн болжол менен 12,5 см артка чыгарат.
  20. A Move Tank Block with Power Left -20, Power Right -20, Rotations -1.14, Brake In End -True. Бул роботту артка бурат.
  21. Loopтун чыгышында Stop Stop программасы бар.

9 -кадам: МАЗА КУРУУ

БУЛ КУРУУ
БУЛ КУРУУ
БУЛ КУРУУ
БУЛ КУРУУ
БУЛ КУРУУ
БУЛ КУРУУ

Лабиринт үчүн эки гофр картон жетиштүү болушу керек. Мен лабиринттин дубалын 5 дюйм (12,5 см) бийиктикке чыгардым, бирок эгерде гофр картон жетишпей жатса, 10 дюйм (4 дюйм) ошондой иштеши керек.

Биринчиден, түбүнөн 25 дюйм (25 сантиметр) болгон картондордун дубалдарын кесип алдым. Анан дубалдын түбүн 5 дюймга тегерете кесип алдым. Бул бир нече 5 дюймдук дубалдарды камсыз кылат. Ошондой эле, стабилдүүлүк үчүн дубалдарга 2,5 дюймга жакын тирөөчтөрдү калтырып, картондордун түбүн кесип алдым.

Ар кандай бөлүктөр лабиринтти түзүү үчүн керектүү жерде кесилип, желимделип же скотч менен жазылышы мүмкүн. Дубалдын ортосунда туюк болгон бардык жолдордо 12 дюймдук (30 см) боштук болушу керек. Бул аралык роботтун айлануусу үчүн керек.

Лабиринттин кээ бир бурчтарын күчөтүү керек болушу мүмкүн, ошондой эле кээ бир түз дубалдар картон бурчун камтыса, аларды ийилүүдөн сактоо керек. Жука картондун кичинекей кесимдери көрсөтүлгөн жерлерге түбүнө жабыштырылышы керек.

Чыгышта көрсөтүлгөндөй кызыл тосмонун жарымы кызыл куттуктоо баракчасы жана 2 даана жука картондон жасалган база бар.

Бир сактык лабиринт чоң болбошу керек. Эгерде роботтун бурулушу туура келгенден кичине бурчта болсо, дал келбөөчүлүк бир нече бурулуштан кийин кошулат. Мисалы, эгер солго 3 градуска бурулган болсо, анда 5 солго бурулгандан кийин робот 15 градуска өчүп баратат. Чоң лабиринтте кичинекейге караганда көбүрөөк бурулуштар жана узак жолдор болмок, робот дубалдарга кирип кете алмак. Мен жасаган кичинекей лабиринт аркылуу да ийгиликтүү дискке жетүү үчүн, мен бир нече жолу бурулуштардын айлануу жөндөөлөрү менен скрипка жасоого туура келди.

КЕЛЕЧЕКТИН ЖАКШЫРТУУЛАРЫ

Түшүнүктүү кийинки долбоор-бул роботту лабиринттин ичинде түз жолду аныктоого жөндөмдүү кылуу, андан кийин бул түз жолду (туюк жерлерден качуу) кууп чыгуу.

Бул учурдагы долбоорго караганда алда канча татаал. Робот басып өткөн жолун эстеп, туюк жерлерди алып салып, жаңы жолду сактап, анан жаңы жолго түшүшү керек. Жакын арада бул долбоордун үстүндө иштөөнү пландап жатам. Мен LEGO Mindstorms EV3 менен Array Operations Blocks жана математикага байланыштуу айрым блокторду колдонуу менен ишке ашса болот деп күтөм.

Жыйынтыктоочу эскертүү

Бул кызыктуу долбоор болду. Сизге да кызыктуу болот деп ишенем.

Сунушталууда: