Мазмуну:

Arduino - Лабиринт чечүүчү робот (MicroMouse) Роботтун артынан ээрчүү: 6 кадам (сүрөттөр менен)
Arduino - Лабиринт чечүүчү робот (MicroMouse) Роботтун артынан ээрчүү: 6 кадам (сүрөттөр менен)

Video: Arduino - Лабиринт чечүүчү робот (MicroMouse) Роботтун артынан ээрчүү: 6 кадам (сүрөттөр менен)

Video: Arduino - Лабиринт чечүүчү робот (MicroMouse) Роботтун артынан ээрчүү: 6 кадам (сүрөттөр менен)
Video: Робот для лабиринта. Ардуино 2024, Ноябрь
Anonim
Arduino | Лабиринт чечүүчү робот (MicroMouse) Wall Follow Robot
Arduino | Лабиринт чечүүчү робот (MicroMouse) Wall Follow Robot
Arduino | Лабиринт чечүүчү робот (MicroMouse) Wall Follow Robot
Arduino | Лабиринт чечүүчү робот (MicroMouse) Wall Follow Robot
Arduino | Лабиринт чечүүчү робот (MicroMouse) Wall Follow Robot
Arduino | Лабиринт чечүүчү робот (MicroMouse) Wall Follow Robot
Arduino | Лабиринт чечүүчү робот (MicroMouse) Wall Follow Robot
Arduino | Лабиринт чечүүчү робот (MicroMouse) Wall Follow Robot

Кош келиңиз, мен Исхакмын жана бул менин биринчи роботум "Striker v1.0". Бул робот жөнөкөй лабиринтти чечүү үчүн иштелип чыккан. Сынакта бизде эки лабиринт болгон жана робот аларды аныктай алган. Лабиринттеги башка өзгөрүүлөр. кодду жана дизайнды өзгөртүүнү талап кылышы мүмкүн, бирок мунун баары оңой.

1 -кадам: Бөлүктөр

Бөлүктөр
Бөлүктөр
Бөлүктөр
Бөлүктөр
Бөлүктөр
Бөлүктөр

Биринчиден, сиз эмне менен алектенип жатканыңызды билишиңиз керек.

Роботтор = Электр + Аппаратура + Программалык камсыздоо

2- Техникалык жабдыктар: "Дене, Мотор, Мотор Драйвер, Сенсорлор, Зымдар жана Контроллер", сиз тапшырманы аткаруучу маанилүү бөлүктөрдү гана алышыңыз керек, жөнөкөй тапшырма үчүн кымбат баалуу Контроллерди алуунун кажети жок.

3- Программалык камсыздоо: код логика жөнүндө. Контроллердин кантип иштээрин түшүнгөндөн кийин функцияларды тандоо жана кодду жөнөкөйлөтүү оңой болуп калат. Коддун тили контроллердин түрү боюнча аныкталат.

Тетиктер тизмеси:

  1. Arduino UNO
  2. 12v DC кыймылдаткычтары (x2)
  3. Дөңгөлөктөр (x2)
  4. Мотор айдоочу (L298N)
  5. Алыстык сенсору (Ultra Sonic)
  6. Зымдар
  7. 12v Батарея (1000 мАч)

Куралдардын тизмеси:

  1. Батарея кубаттагычы
  2. Акрил барагы
  3. Кандооч
  4. Зым кескич
  5. Нейлон Zip ороо

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

2 -кадам: Дененин дизайны

Дене дизайны
Дене дизайны
Дене дизайны
Дене дизайны
Дене дизайны
Дене дизайны

Негизги идея - дененин үстүндөгү бөлүктөрдү жыйноо жана нейлон Zip Wrapти колдонуу Arduino жана Wires калганын туруктуулугун жеңилдетүү.

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

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

PDF файлы жана CorelDRAW файлы тиркелет.

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

3 -кадам: Ишке ашыруу (имарат)

Ишке ашыруу (имарат)
Ишке ашыруу (имарат)
Ишке ашыруу (имарат)
Ишке ашыруу (имарат)
Ишке ашыруу (имарат)
Ишке ашыруу (имарат)

Дизайн денедеги сенсорлорду оңдоону жеңилдетти.

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

Электр өткөргүчтөрү
Электр өткөргүчтөрү
Электр өткөргүчтөрү
Электр өткөргүчтөрү
Электр өткөргүчтөрү
Электр өткөргүчтөрү

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

Мен "УЗИ сенсорун" түшүндүргүм келет

УЗИ сенсору - үн толкундарынын жардамы менен объектке чейинки аралыкты өлчөй турган түзүлүш. Ал белгилүү бир жыштыкта үн толкунун жөнөтүп, кайра артка кайтуусун угуу менен аралыкты өлчөйт. Үн толкуну менен артка секирип жаткан үн толкунунун ортосундагы өткөн убакытты жазуу менен, бул Sonar менен Radarдын иштешине окшош окшойт.

УЗИ сенсорунун Arduino менен байланышы:

  1. GND пин Жерге туташкан.
  2. VCC пин Позитивдүү (5v) туташкан.
  3. Эхо пин Ардуино менен туташкан. (каалаган пинти тандап, аны кодго дал келтир)
  4. TRIG пин Arduino менен туташкан. (каалаган пинти тандап, аны кодго дал келтир)

Сиз жалпы Ground түзөсүз жана ага бардык GND'дерди туташтырасыз (сенсорлор, Arduino, Driver) бардык негиздер туташышы керек.

Vcc Pins үчүн 3 сенсорду 5v пинге туташтырыңыз

(сиз аларды Arduino же драйверге туташтыра аласыз, мен айдоочуну сунуштайм)

Эскертүү: Сенсорлорду 5v жогору чыңалууга туташтырбаңыз, болбосо ал бузулуп калат.

Мотор айдоочу

L298N H-көпүрөсү: бул эки DC кыймылдаткычынын ылдамдыгын жана багытын көзөмөлдөөгө же бир биполярдуу тепкичтүү моторду башкарууга мүмкүндүк берген IC 5 жана 35В DC.

Бортто 5в жөнгө салгыч дагы бар, андыктан эгерде сиздин чыңалууңуз 12в чейин болсо, сиз дагы 5v доскадан ала аласыз.

Сүрөттү карап көрүңүз - сандын астындагы тизмеге дал келиңиз:

  1. DC мотору 1 "+"
  2. DC мотору 1 "-"
  3. 12в секиргич - 12в DCден чоңураак камсыздоо чыңалуусун колдонсоңуз, муну алып салыңыз. Бул борттогу 5v жөндөгүчтү иштетет
  4. Моторуңуздун чыңалуусун бул жерге туташтырыңыз, эң көп 35v DC.
  5. GND
  6. 12v секиргич болсо, 5v чыгаруу
  7. DC мотору 1 jumper. Remove алып салуу жана DC мотор ылдамдыгын көзөмөлдөө үчүн PWM чыгаруу туташуу иштетүү.
  8. IN1 багытын башкаруу
  9. IN2 багытын башкаруу
  10. IN3 багытын башкаруу
  11. IN4 багытын башкаруу
  12. DC мотору 2 секиргичти иштетет. Өткөргүчтү алып салыңыз жана DC моторунун ылдамдыгын көзөмөлдөө үчүн PWM чыгуусуна туташыңыз
  13. DC мотору 2 "+"
  14. DC мотору 2 "-"

Эскертүү: Бул драйвер каналга 1А берет, көбүрөөк токту төгүү ICге зыян келтирет.

Батарея

Мен 1000 мАч менен 12 в батареяны колдондум.

Жогорудагы таблица батарейканын заряды чыкканда чыңалуу кантип төмөндөгөнүн көрсөтөт. Сиз муну эстен чыгарбооңуз керек жана батарейканы дайыма толтуруп турушуңуз керек.

Бошотуу убактысы негизинен Ah же mAh рейтинги агымга бөлүнөт.

Ошентип, 300мА тарткан 1000 мАч батарейка үчүн сизде:

1000/300 = 3,3 саат

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

Дагы бир жолу жалпы негиз түзүп, ага бардык GNDлерди туташтырыңыз (сенсорлор, Arduino, айдоочу) бардык негиздер туташтырылышы керек.

5 -кадам: Коддоо

Coding
Coding
Coding
Coding

Мен буларды функцияларга айландырдым жана бул роботту коддоо мен үчүн кызыктуу болду.

Негизги идея дубалдарга тийбөө жана лабиринттен чыгуу. Бизде 2 жөнөкөй лабиринт бар болчу жана мен муну эстен чыгарбашым керек болчу, анткени алар башка болчу.

Көк лабиринт оң дубалдын төмөнкү алгоритмин колдонот.

Кызыл лабиринт төмөнкү дубалды алгоритмди колдонот.

Жогорудагы сүрөттө эки лабиринтте чыгуунун жолу көрсөтүлгөн.

Код агымы:

  1. казыктарды аныктоо
  2. чыгаруу жана киргизүү казыктарын аныктоо
  3. сенсорлордун окуусун текшерүү
  4. дубалдарды аныктоо үчүн сенсорлордун окуусун колдонуңуз
  5. биринчи жолду текшериңиз (эгер ал калган болсо, анда сол дубалды ээрчиңиз, эгер туура болсо, оң дубалды ээрчиңиз)
  6. Дубалдарга тийбөө жана мотордун ылдамдыгын көзөмөлдөө үчүн PID колдонуңуз

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

Код үчүн бул шилтемени басыңыз.

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

Китепкана жана Arduino Code File үчүн бул шилтемеге өтүңүз.

github.com/Is7aQ/Maze-Solving-Robot

6 -кадам: Көңүл ачыңыз

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

Электрондук почта: [email protected]

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