Съдържание:
Видео: Направете робот за лабиринт: 3 стъпки (със снимки)
2024 Автор: John Day | [email protected]. Последно модифициран: 2024-01-30 07:54
Роботите за решаване на лабиринт произхождат от 70-те години на миналия век. Оттогава IEEE провежда състезания за решаване на лабиринти, наречени Състезание за микро мишка. Целта на конкурса е да се проектира робот, който да намери средата на лабиринта възможно най -бързо. Алгоритмите, използвани за бързо решаване на лабиринта, обикновено попадат в три категории; произволно търсене, картографиране на лабиринт и дясна или лява стена по следните методи.
Най -функционалният от тези методи е методът след стената. При този метод роботът следва дясната или лявата странична стена в лабиринта. Ако изходната точка е свързана с външните стени на лабиринта, роботът ще намери изхода. Тази бележка за приложението използва метода, следващ дясната стена.
Хардуер
Това приложение използва:
- 2 остри аналогови сензора за разстояние
- Сензор за проследяване
- Енкодер
- Двигатели и водач на мотор
- Silego GreenPAK SLG46531V
- Регулатор на напрежение, шаси на робот.
Ще използваме аналоговия сензор за разстояние, за да определим разстоянията до дясната и предната стена. Сензорите за разстояние Sharp са популярен избор за много проекти, които изискват точни измервания на разстоянието. Този инфрачервен сензор е по -икономичен от сонарните далекомери, но осигурява много по -добри показатели от другите алтернативи за инфрачервена връзка. Има нелинейна, обратна връзка между изходното напрежение на сензора и измереното разстояние. Графиката, показваща връзката между изхода на сензора и измереното разстояние, е показана на фигура 1.
Бяла линия срещу черен цвят е зададена като цел. Ще използваме сензора за проследяване, за да открием бялата линия. Сензорът за проследяване има пет аналогови изхода, а изведените данни се влияят от разстоянието и цвета на открития обект. Откритите точки с по -висока инфрачервена отразяваща способност (бяло) ще доведат до по -висока изходна стойност, а по -ниската инфрачервена отразяваща способност (черна) ще доведе до по -ниска изходна стойност.
Ще използваме енкодера на колелото pololu, за да изчислим разстоянието, което роботът изминава. Тази квадратурна енкодерна платка е проектирана да работи с мотори с редуктори от микро метал от pololu. Той функционира, като държи два инфрачервени сензора за отражение вътре в главината на колело Pololu 42 × 19 мм и измерва движението на дванадесетте зъба по ръба на колелото.
За управление на двигателите се използва платка с двигател (L298N). Щифтовете INx се използват за насочване на двигателите, а ENx щифтовете се използват за настройка на скоростта на двигателите.
Също така, регулатор на напрежение се използва за намаляване на напрежението от батерията до 5V.
Стъпка 1: Описание на алгоритъма
Тази инструкция включва следния метод на дясната стена. Това се основава на организиране на приоритет на посоката, като се предпочита най -дясната възможна посока. Ако роботът не може да открие стената отдясно, той се обръща надясно. Ако роботът открие дясната стена и няма стена отпред, той отива напред. Ако има стена отдясно на робота и отпред, той се обръща наляво.
Важна забележка е, че няма стена за справка, след като роботът току -що се е обърнал надясно. Следователно „завиването надясно“се осъществява в три стъпки. Движете се напред, завийте надясно, продължете напред.
В допълнение, роботът трябва да спазва дистанцията си от стената, когато се движи напред. Това може да стане, като настроите единия двигател да бъде по -бърз или по -бавен от другия. Крайното състояние на диаграмата е показано на фигура 10.
Един робот за лабиринт може много лесно да бъде реализиран с една конфигурируема GreenPAK смесена сигнална IC (CMIC). Можете да преминете през всички стъпки, за да разберете как чипът GreenPAK е програмиран за управление на робота Maze Runner. Ако обаче просто искате лесно да създадете Maze Runner Robot, без да разбирате цялата вътрешна схема, изтеглете софтуера GreenPAK, за да видите вече завършения Maze Runner Robot GreenPAK Design File. Включете компютъра си в комплекта за разработка на GreenPAK и натиснете програмата, за да създадете персонализирана интегрална схема за управление на вашия робот Maze Runner. Следващата стъпка ще обсъди логиката, която е в дизайна на файла Mape Runner Robot GreenPAK за тези, които се интересуват да разберат как работи схемата.
Стъпка 2: GreenPAK Design
Дизайнът GreenPAK се състои от две части. Това са:
- Интерпретация / обработка на данни от сензори за разстояние
- ASM състояния и изходи на двигателя
Интерпретация / обработка на данни от сензори за разстояние
Важно е да се интерпретират данните от сензорите за разстояние. Движенията на робота се преценяват според изходите на сензорите за разстояние. Тъй като датчиците за разстояние са аналогови, ще използваме ACMP. Положението на робота спрямо стената се определя чрез сравняване на напреженията на сензорите с предварително определените прагови напрежения.
Ще използваме 3 ACMP;
- За откриване на предната стена (ACMP2)
- За откриване на дясната стена (ACMP0)
- За да защитите разстоянието до дясната стена (ACMP1)
Тъй като ACMP0 и ACMP1 зависят от един и същ сензор за разстояние, използвахме един и същ IN+ източник за двата сравнителя. Постоянната промяна на сигнала може да бъде предотвратена, като се даде ACMP1 25mv хистерезис.
Можем да определим сигналите за посоката въз основа на изходите на ACMP. Веригата, показана на фигура 12, изобразява схемата на потока, очертана на фигура 7.
По същия начин схемата, която показва позицията на робота спрямо дясната стена, е показана на фигура 13.
ASM състояния и моторни изходи
Това приложение използва асинхронната държавна машина или ASM за управление на робота. Има 8 състояния в ASM и 8 изхода във всяко състояние. Изходната RAM може да се използва за регулиране на тези изходи. Състоянията са изброени по -долу:
- Старт
- Контрол
- Отдалечете се от дясната стена
- Близо до дясната стена
- Завийте наляво
- Преместване напред-1
- Обърни се на дясно
- Преместване напред-2
Тези състояния определят изхода към водача на двигателя и насочват робота. Има 3 изхода от GreenPAK за всеки двигател. Два определят посоката на двигателя, а другият изход определя скоростта на двигателя. Движението на двигателя според тези изходи е показано в следните таблици:
Изходната RAM на ASM се извлича от тези таблици. Това е показано на фигура 14. В допълнение към драйверите на двигателя има още два изхода. Тези изходи отиват до съответните блокове за забавяне, за да позволят на робота да измине определено разстояние. Изходите на тези блокове за забавяне също са свързани към ASM входове.
ШИМ бяха използвани за регулиране на скоростта на двигателите. ASM беше използван за определяне на какъв PWM ще работи двигателят. Сигналите PWMA-S и PWMB-S са настроени към битовете за избор на mux.
Стъпка 3:
В този проект създадохме робот за решаване на лабиринт. Ние интерпретирахме данни от множество сензори, контролирахме състоянието на робота с ASM на GreenPAK и задвижвахме двигателите с шофьор на мотор. Като цяло в такива проекти се използват микропроцесори, но GreenPAK има няколко предимства пред MCU: той е по -малък, по -достъпен и може да обработва изхода на сензора по -бързо от MCU.
Препоръчано:
Arduino - Робот за решаване на лабиринт (MicroMouse) Робот след стена: 6 стъпки (със снимки)
Arduino | Робот за решаване на лабиринт (MicroMouse) Wall Следващ робот: Добре дошли, аз съм Исак и това е първият ми робот "Striker v1.0". Този робот е проектиран да решава прост лабиринт. В състезанието имахме два лабиринта и робота е успял да ги идентифицира. Всички други промени в лабиринта може да изискват промяна в
Направете танцуващ робот без 3D принтер и Arduino/#smartcreativity: 11 стъпки (със снимки)
Направете танцуващ робот без 3D принтер и Arduino/#smartcreativity: Здравейте приятели, в този урок ще ви покажа как да си направите танцуващ робот у дома без 3D принтер и без Arduino. Този робот е в състояние да танцува, да балансира автоматично, да произвежда музика и да ходи. И дизайнът на Robot също изглежда толкова готин
[Робот Arduino] Как да си направим робот за улавяне на движение - Робот Thumbs - Серво мотор - Изходен код: 26 стъпки (със снимки)
[Робот Arduino] Как да си направим робот за улавяне на движение | Робот Thumbs | Серво мотор | Изходен код: Thumbs Robot. Използва се потенциометър на серво мотор MG90S. Много е забавно и лесно! Кодът е много прост. Има само около 30 реда. Изглежда като заснемане на движение. Моля, оставете всеки въпрос или обратна връзка! [Инструкция] Изходен код https: //github.c
Игра Лабиринт за управление със смартфон: 5 стъпки (със снимки)
Игра за лабиринт за управление със смартфон: Игра за лабиринт за управление със смарт телефон. Лабиринтът се движи според наклона на смартфона. Първо, моля, вижте видеото. Изображение за движение1. Raspberry Pi е сървър на Websocket. Смартфонът е клиент на Websocket. Смартфонът изпраща
Изградете много малък робот: Направете най -малкия колесен робот в света с грайфер: 9 стъпки (със снимки)
Изградете много малък робот: Направете най -малкия колесен робот в света с грайфер. Постройте робот от 1/20 кубически инча с грайфер, който може да вдига и премества малки обекти. Управлява се от микроконтролер Picaxe. В този момент считам, че това може да е най -малкият колесен робот в света с грайфер. Това без съмнение ще