Съдържание:

Arduino - Робот за решаване на лабиринт (MicroMouse) Робот след стена: 6 стъпки (със снимки)
Arduino - Робот за решаване на лабиринт (MicroMouse) Робот след стена: 6 стъпки (със снимки)

Видео: Arduino - Робот за решаване на лабиринт (MicroMouse) Робот след стена: 6 стъпки (със снимки)

Видео: Arduino - Робот за решаване на лабиринт (MicroMouse) Робот след стена: 6 стъпки (със снимки)
Видео: The Fastest Maze-Solving Competition On Earth 2024, Юни
Anonim
Arduino | Робот за решаване на лабиринт (MicroMouse) Робот след стена
Arduino | Робот за решаване на лабиринт (MicroMouse) Робот след стена
Arduino | Робот за решаване на лабиринт (MicroMouse) Робот след стена
Arduino | Робот за решаване на лабиринт (MicroMouse) Робот след стена
Arduino | Робот за решаване на лабиринт (MicroMouse) Робот след стена
Arduino | Робот за решаване на лабиринт (MicroMouse) Робот след стена
Arduino | Робот за решаване на лабиринт (MicroMouse) Робот след стена
Arduino | Робот за решаване на лабиринт (MicroMouse) Робот след стена

Добре дошли, аз съм Исак и това е първият ми робот "Striker v1.0". Този робот е проектиран да решава прост лабиринт. В състезанието имахме два лабиринта и роботът успя да ги идентифицира. Всякакви други промени в лабиринта може да изисква промяна в кода и дизайна, но всичко това е лесно.

Стъпка 1: Части

Части
Части
Части
Части
Части
Части

Първо трябва да знаете с какво си имате работа.

Роботи = Електричество + Хардуер + Софтуер 1- Електричество: батериите имат много спецификации, трябва да знаете само колко ток и напрежение имате нужда.

2- Хардуер: „Корпус, двигател, водач на мотор, сензори, проводници и контролер“трябва да получите само важните части, които изпълняват задачата, няма нужда да се сдобивате с фантастичен скъп контролер за проста задача.

3- Софтуер: Кодът е свързан с логиката. След като разберете как работи контролерът, ще ви бъде лесно да изберете функциите и да направите кода по -опростен. Кодовият език се определя от типа на контролера.

Списък на частите:

  1. Arduino UNO
  2. 12v DC двигатели (x2)
  3. Колела (x2)
  4. Шофьор на мотор (L298N)
  5. Сензор за разстояние (ултразвуков)
  6. Проводници
  7. 12v батерия (1000 mAh)

Списък с инструменти:

  1. Зарядно устройство
  2. Акрилен лист
  3. Поялник
  4. Резачка за тел
  5. Найлонова обвивка с цип

За допълнително забавление можете да използвате светодиоди, за да го запалите, но това не е много важно.

Стъпка 2: Дизайн на тялото

Дизайн на тялото
Дизайн на тялото
Дизайн на тялото
Дизайн на тялото
Дизайн на тялото
Дизайн на тялото

Основната идея беше да се подреждат частите над тялото и да се използва найлоновата ципа за стабилизиране на Arduino, а проводниците ще стабилизират останалите благодарение на тяхното леко тегло.

Използвах CorelDRAW за проектиране на тялото И направих допълнителни дупки в случай на бъдещи промени.

Отидох в местна работилница, за да използвам лазерния нож, след което започнах да го изграждам заедно. По -късно направих някои промени, защото двигателите бяха по -дълги, отколкото очаквах. Искам да кажа, че вашият робот не трябва да бъде изграден по същия начин като моя.

Прикачени са PDF файл и файлът CorelDRAW.

Ако не можете да изрежете лазерно дизайна, не се притеснявайте. Докато имате Arduino, същите сензори и двигатели, тогава трябва да можете да накарате кода ми да работи на вашия робот с малки промени.

Стъпка 3: Внедряване (изграждане)

Изпълнение (изграждане)
Изпълнение (изграждане)
Изпълнение (изграждане)
Изпълнение (изграждане)
Изпълнение (изграждане)
Изпълнение (изграждане)

Дизайнът улеснява фиксирането на сензорите върху тялото.

Стъпка 4: Окабеляване

Електрически инсталации
Електрически инсталации
Електрически инсталации
Електрически инсталации
Електрически инсталации
Електрически инсталации

Ето схематична диаграма на робота. тези връзки са свързани с кода. Можете да промените връзките, но не забравяйте да промените кода с него. Частите. Сензори

Бих искал да обясня "Ултразвуковия сензор"

Ултразвуков сензор е устройство, което може да измери разстоянието до обект с помощта на звукови вълни. Той измерва разстоянието, като изпраща звукова вълна с определена честота и слуша тази звукова вълна да отскочи обратно. Записвайки изминалото време между генерираната звукова вълна и отскачащата звукова вълна. Това изглежда подобно на работата на сонара и радара.

Връзката на ултразвуковия сензор с Arduino:

  1. GND изводът е свързан към земята.
  2. VCC изводът е свързан към положителния (5v).
  3. Ехо пинът е свързан към Arduino. (изберете всеки пин и го съпоставете с кода)
  4. ПИНът TRIG е свързан към Arduino. (изберете всеки пин и го съпоставете с кода)

Ще направите общо заземяване и ще свържете всички GND към него (сензори, Arduino, драйвер) всички основания трябва да бъдат свързани.

За Vcc пинове също свържете 3 -те сензора към 5v щифт

(можете да ги свържете към Arduino или драйвера, препоръчвам драйвера)

Забележка: Не свързвайте сензорите към напрежение по -високо от 5v или ще се повреди.

Шофьор на мотор

L298N H-мост: това е интегрална схема, която ви позволява да контролирате скоростта и посоката на два DC двигателя или да управлявате с лекота един биполярен стъпков двигател. Драйверът L298N H-мост може да се използва с двигатели с напрежение между 5 и 35V DC.

Има и вграден 5v регулатор, така че ако захранващото ви напрежение е до 12v, можете също да източите 5v от платката.

Помислете за изображението - сравнете числата със списъка под изображението:

  1. DC мотор 1 „+“
  2. DC мотор 1 “-”
  3. 12v джъмпер - премахнете това, ако използвате захранващо напрежение по -голямо от 12v DC. Това позволява вградения 5V регулатор
  4. Свържете захранващото напрежение на вашия двигател тук, максимум 35v DC.
  5. GND
  6. 5v изход, ако 12v джъмпер е на място
  7. Прекъсвач за разрешаване на DC мотор 1. Премахнете джъмпера и се свържете към PWM изхода за управление на скоростта на DC двигателя.
  8. IN1 Контрол на посоката
  9. IN2 Контрол на посоката
  10. IN3 Контрол на посоката
  11. IN4 Контрол на посоката
  12. DC мотор 2 разрешава джъмпера. Извадете джъмпера и се свържете към PWM изхода за управление на скоростта на двигателя на DC
  13. DC мотор 2 „+“
  14. DC двигател 2 “-”

Забележка: Този драйвер позволява 1A на канал, източването на повече ток ще повреди IC.

Батерия

Използвах 12v батерия с 1000 mAh.

Таблицата по -горе показва как напрежението пада при разреждане на батерията. трябва да го имате предвид и трябва да презареждате батерията постоянно.

Времето за разреждане е основно Ah или mAh рейтинг, разделен на тока.

Така че за 1000mAh батерия с товар, който извлича 300mA имате:

1000/300 = 3,3 часа

Ако източите повече ток, времето ще намалее и така нататък. Забележка: Уверете се, че не надвишавате тока на разреждане на батерията, в противен случай той ще се повреди.

Също така отново направете общо заземяване и свържете всички GND към него (сензори, Arduino, драйвер) всички основания трябва да бъдат свързани.

Стъпка 5: Кодиране

Кодиране
Кодиране
Кодиране
Кодиране

Превърнах ги във функции и се забавлявах да кодирам този робот.

Основната идея е да избегнем ударите по стените и да излезем от лабиринта. Имахме 2 прости лабиринта и трябваше да го имам предвид, защото те бяха различни.

Синият лабиринт използва алгоритъм на дясната стена.

Червеният лабиринт използва алгоритъм на лявата стена.

Снимката по -горе показва изхода и в двата лабиринта.

Кодов поток:

  1. определяне на щифтовете
  2. дефиниране на изходните и входните щифтове
  3. проверете показанията на сензорите
  4. използвайте показанията на сензорите, за да определите стените
  5. проверете първия маршрут (ако е бил вляво, следвайте лявата стена, ако е дясна, следвайте дясната стена)
  6. Използвайте PID, за да избегнете удари по стените и да контролирате скоростта на двигателя

Можете да използвате този код, но променете пиновете и постоянните числа, за да получите най -добри резултати.

Следвайте тази връзка за кода.

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

Следвайте тази връзка за библиотеката и кодовия файл на Arduino.

github.com/Is7aQ/Maze-Solving-Robot

Стъпка 6: Забавлявайте се

Уверете се, че се забавлявате: DТова е само за забавление, не се паникьосвайте, ако не работи или ако нещо не е наред. проследявайте грешката и не се отказвайте. Благодаря за четенето и се надявам да е помогнало.

Имейл: [email protected]

Препоръчано: