Съдържание:
- Стъпка 1: Неща, които трябва да се направят
- Стъпка 2: Разбиране на концепциите
- Стъпка 3: Необходими инструменти
- Стъпка 4: Приемане за кодиране на AVR
- Стъпка 5: Хардуерни връзки:
- Стъпка 6: Код
- Стъпка 7: Видео
Видео: Робот за избягване на Utrasonic, използващ Arduino: 7 стъпки
2024 Автор: John Day | [email protected]. Последно модифициран: 2024-01-30 07:53
В този урок ще ви покажа как да направите своето собствено препятствие, избягвайки робота! Ще използваме дъската Arduino UNO и ултразвуков сензор. Ако роботът открие пред себе си обект, с помощта на малък серво мотор, той сканира зоната наляво и надясно, за да намери най -добрия начин за завиване. Той също така има светодиод за уведомяване, зумер за възпроизвеждане на тон при откриване на обект и бутон за промяна на функцията на робота (спрян/придвижващ се напред).
Много е лесно да го направите!
Стъпка 1: Неща, които трябва да се направят
За този проект ще ви трябва:
- Arduino UNO (купете го от gearbest.com)
- Мини макет (купете го от gearbest.com)
- Модул драйвер за двигател L298 (купете го от gearbest.com)
- 2x DC двигатели с колела ултразвуков сензор HC-SR04 (купете го от gearbest.com)
- Микро серво мотор (купете го от gearbest.com)
- Бутон Червен LED220 Ohm резистор 9V държач на батерията (със или без захранващ жак)
- 8 дистанционни елемента (мъж-жена),
- 8 гайки и 8 винта ще ви трябва и един голям (метал)
кламер и мънисто за направата на задното поддържащо колело.
За базата на робота използвах акрилен шаси от Aliexpress. Можете също да използвате парче дърво или метал (или две електрически плочи).
Цената на целия проект е около 20 $
Инструменти: Пробивна машина супер лепило екипаж водач горещо лепило пистолет (по избор) Мощност:
Ще използваме 9V батерия за захранване на нашия робот, защото е малък и евтин, но не е много мощен и ще се изпразни след около час. Помислете дали искате да използвате акумулаторна батерия (мин 6V, макс 7V), която ще бъде по -мощна, но ще бъде и по -скъпа и по -голяма от батерията 9V.
Стъпка 2: Разбиране на концепциите
Целта е да се направи роботът наясно с препятствията пред себе си, за да може да промени посоката и да ги избегне. В предишната статия направихме робота да се движи - сега ще му дадем известна автономия.
Ултразвуков сензор
HC-SR04 е схема, способна да измерва разстояние до обекти до 4 метра с помощта на ултразвукови вълни. Той изпраща пинг (като подводница) и измерва времето (в микросекунди) между изпращането и получаването на каквото и да било обратно. След това това време се разделя на 2, докато вълната се движи напред -назад. И след това разделете на 29, за да получите разстояние в сантиметри (или 74 за инчове), защото звукът преминава 29,4 μs на сантиметър (340 m/s). Сензорът е много точен с ~ 3 мм толеранс и лесен за интегриране с Arduino.
Свързан ултразвуков сензор с микроконтролер AVR
Всеки автономен робот трябва да има избягване на препятствия и прикрепен сензор за измерване на разстояние. Двойка IR приемо-предавател или сензор в сиви тонове могат лесно да работят за откриване на препятствия в диапазона от 1 до 10 см. Инфрачервените далекомери (например остри) могат да измерват разстояние до най -близкото препятствие с обхват до 100 см. Въпреки това, IR сензорите са засегнати от слънчева светлина и други източници на светлина. Инфрачервените далекомери имат по -малък обхват и също скъпи за това, което правят. Ултразвуковите сензори (известни още като ултразвукови сензори за близост или сонар за отрепки) изпълняват и двете задачи на разумна цена и изключителна точност. Диапазонът е всичко между 3 см и 350 см с точност ~ 3 мм. Завързването на един от тези ултразвукови сензори в нашия робот може да действа както като избягващо препятствие, така и като сензор за измерване на разстояние.
„Ултразвуков“звук се отнася до всичко над честотите на звуковия звук и номинално включва всичко над 20 000 Hz или 20 kHz! Евтините ултразвукови сензори, използвани за роботика, обикновено работят в диапазон от 40 kHz до 250 kHz, докато тези, използвани в медицинското оборудване, достигат до 10Mhz.
Стъпка 3: Необходими инструменти
- Мултиметър
- Платка
- Клещи за иглени носове
- Машинка за отстраняване на тел
- Резачка за тел
- Пистолет за лепило
Мултицет Мултицетът всъщност е просто устройство, използвано предимно за измерване на напрежение и съпротивление и за определяне дали веригата е затворена. Подобно на отстраняването на грешки в компютърния код, мултицетът ви помага да „отстраните грешките“в електронните си схеми.
Строителни материали
Лесно достъпно предлагане на тънка дървесина и/или плексиглас за направата на механичната рамка е много полезно. Метали като алуминий и стомана често са ограничени до тези с достъп до механичен магазин, въпреки че тънкият алуминий може да се реже с ножици и да се огъва на ръка. Механичните рамки могат дори да бъдат изградени от домакински предмети като пластмасови контейнери.
Въпреки че са възможни други материали като пластмаси (освен плексиглас) или по -екзотични материали като фибростъкло и въглеродни влакна, те няма да бъдат разгледани в това ръководство. Няколко производители отбелязват, че за повечето любители не е лесно да произвеждат свои собствени механични части и са създали модулни механични части. Лидер в това е Lynxmotion, който предлага широка гама от роботизирани дизайни, както и частите, необходими за направата на ваши собствени персонализирани роботи.
Ръчни инструменти
Необходими са отвертки и клещи с различни видове и размери (включително набор от инструменти за бижутери: малки отвертки, които обикновено се предлагат в доларови магазини). Свредлото (за предпочитане бормашина за прави отвори) също е важно. Ръчен трион за рязане на строителни материали (или фреза) също е важен актив. Ако бюджетът позволява, малък настолен лентов трион (диапазон от 200 долара) определено е инструмент за разглеждане.
Непояна дъска
Макет без запояване ви позволява да оптимизирате оформлението си и да свързвате компоненти с лекота. Заедно с планка за запояване, трябва да закупите предварително оформен комплект джъмперна жица, който се състои от предварително нарязани и огънати проводници, предназначени за използване с без спойка. Това прави връзките много лесни.
Малък комплект отвертки
Тези малки отвертки са необходими при работа с електроника. Не ги насилвайте твърде много - размерът им ги прави по -крехки.
Редовен комплект отвертки
Всички работилници се нуждаят от многофункционален инструмент или набор от инструменти, който включва плоски / крестообразни и други отвертки.
Клещи за иглени носове
комплект клещи за иглени носове е изключително полезен при работа с малки компоненти и части и е много евтино допълнение към кутията с инструменти. Те са различни от обикновените клещи, защото стигат до точка, която може да проникне в малки площи.
Машини за рязане на тел/фрези
Планирате да отрежете всички проводници, стриперът ще ви спести значително време и усилия. Машината за отстраняване на тел, когато се използва правилно, ще премахне само изолацията на кабела и няма да доведе до прегъване или повреда на проводниците. Другата алтернатива на тел за сваляне е ножица, въпреки че крайният резултат може да бъде объркан. Ножици, линийка, химикалка, молив за маркиране, нож Exacto (или друг ръчен инструмент за рязане) Това са основни елементи във всеки офис.
Стъпка 4: Приемане за кодиране на AVR
Изчисляване на скоростта на звука спрямо ултразвуковите сензори
Малка математика, но не се плашете. По -просто е, отколкото си мислите.
Скоростта на звука в сух въздух при стайна температура (~ 20 ° C) = 343 метра/секунда
За да удари звуковата вълна и да направи двупосочно пътуване до близкия обект е = 343/2 = 171,5 m/тъй като максималният обхват на евтин ултразвуков сензор е не повече от 5 метра (двупосочно пътуване), би било по -разумно да променете мерните единици на сантиметри и микросекунди.
1 метър = 100 сантиметра 1 секунда = 10^6 микросекунди = (s/171.5) x (m/100 cm) x ((1x10^6)/s) = (1/171.5) x (1/100) x (1000000/ 1) = 58,30903790087464 us/cm = 58,31 us/cm (закръгляване до две цифри, за да се улеснят изчисленията)Следователно, времето, необходимо за импулс да пътува до обект и да отскочи 1 сантиметър, е 58,31 микросекунди.
малкият фон на циклите на часовника AVR
За да разберете циклите на AVR часовника, е необходима съвсем различна глава, но накратко ще разберем как работи, за да улесним изчисленията си
За нашия пример ще използваме дъска AVR Draco, която има 8-битов AVR-Atmega328P микроконтролер. За да опростим нещата, няма да ощипваме настройките на микроконтролер. Не са докоснати предпазители; Няма прикрепен външен кристал; Без главоболие. При фабричните настройки той работи на вътрешен 8MHz осцилатор с /8 предусилвател; Ако не разбирате всичко това, това просто означава, че микроконтролерът работи на 1MHz вътрешен RC осцилатор и всеки тактов цикъл отнема 1 микросекунда.
1 2 1MHz = от 1000000 цикъла в секунда Следователно 1s/1000000 = 1/1000000 = 1us
AVR часовници и преобразуване на разстояние
Почти стигнахме! След като знаем как да преобразуваме циклите на часовника на AVR в разстоянието, изминато от звукови вълни, прилагането на логиката в програма е лесно.
Знаем, че скоростта на ултразвуковия звук при идеална среда е: 58,31 us/cm
Знаем, че разделителната способност на микроконтролера AVR е 1us/такт (CLK)
Следователно, изминатото разстояние по звук за такт (CLK) е:
1 2 3 = (58,31 us/ cm) x (1us/ clk) = 58,31 тактови цикъла/ cm или = 1/ 58,31 cm/ clk
Ако броят на тактовите цикли, необходими за преминаване и отскачане на звука, е известен, можем лесно да изчислим разстоянието. Например, ако сензорът отнеме 1000 цикъла на движение, за да се движи и да отскочи назад, тогава разстоянието от сензор до най -близкия обект е = 1000/58,31 = 17,15 cm (приблизително)
Сега има ли смисъл всичко? Не? Прочетете го отново
Ако сте наясно с цялата логика, спомената по-горе, ние ще я приложим в реален сценарий, като свържем евтин ултразвуков сензор HC-SR04 към нашата платка AVR Arduino.
Стъпка 5: Хардуерни връзки:
Arduino Board улеснява свързването на външни сензори и също така преглежда резултатите на LCD. За ултразвуково измерване на обхват използваме евтин HC-SR04 модул. Модулът има 4 пина, които могат да бъдат свързани към платката на микроконтролера: VCC, TRIG, ECHO и GND.
Свържете VCC щифт към 5V и GND щифт към масата на платката Arduino.
ПИН TRIG и ECHO могат да бъдат свързани към всички налични щифтове на платката. Изпращането на минимум 10us „висок“сигнал за задействане на щифт изпраща осем 40 kHz звукови вълни и издърпва ехо пина високо. Ако звукът отскача от близкия обект и се върне, той се улавя чрез приемане на преобразувател и ехоконта се изтегля „ниско“.
Други варианти на ултразвукови сензорни модули също се предлагат само с 3 пина. Принципът на работа все още е същият, но функционалността на тригера и ехо пиновете се комбинират в един щифт.
Веднъж свързани, тригерните и ехо пиновете могат да бъдат конфигурирани чрез софтуер. За да поддържаме този пример прост, в този пример няма да използваме никакви щифтове за прекъсване (или Input Capture Pin). Неизползването на специални пинове за прекъсване също ни дава свобода да свържем модула към всички налични пинове на платката.
Стъпка 6: Код
Код Кодът по-долу съдържа само „ултразвуково“разширение за управление на електродвигателя с постоянен ток с помощта на H-Bridge от предишната статия. Когато роботът открие препятствие пред него, той се обръща (произволна степен) и продължава да се движи напред. Тази функционалност може лесно да бъде разширена, за да продължи да се обръща и открива препятствия едновременно - така че роботът няма да се обърне на случаен принцип, но ще започне да се движи напред само когато не бъде открит обект.
За обяснение на кода вижте видеоклипа в YouTube, изброен в канала.
Стъпка 7: Видео
Гледайте видеото за целия процес.
Препоръчано:
Робот за избягване на препятствия, използващ ултразвуков сензор (Proteus): 12 стъпки
Робот за избягване на препятствия, използващ ултразвуков сензор (Proteus): Обикновено срещаме робот за избягване на препятствия навсякъде. Хардуерната симулация на този робот е част от конкуренцията в много колежи и в много събития. Но софтуерната симулация на робот с препятствия е рядкост. Въпреки че можем да го намерим някъде
Робот за избягване на препятствия, използващ Arduino Nano: 5 стъпки
Робот за избягване на препятствия, използващ Arduino Nano: В тази инструкция ще опиша как можете да направите робот, който избягва препятствия, използвайки Arduino
Робот за избягване на препятствия, използващ микроконтролер (Arduino): 5 стъпки
Робот за избягване на препятствия, използващ микроконтролер (Arduino): В тази инструкция ще ви науча как да направите робот за избягване на препятствия, който работи с Arduino. Трябва да сте запознати с Arduino. Arduino е контролна платка, която използва микроконтролера atmega. Можете да използвате всяка версия на Arduino, но аз
Робот за избягване на препятствия, използващ Arduino Uno: 5 стъпки (със снимки)
Робот за избягване на препятствия, използващ Arduino Uno: Здравейте, момчета, това е много прост и работещ проект, наречен робот за избягване на препятствия, използващ arduino, а специалността на този проект е, че дава команди за начина, по който пътува на смартфон чрез Bluetooth
Робот за избягване на препятствия, използващ EBot8: 4 стъпки (със снимки)
Робот за избягване на препятствия, използващ EBot8: В този урок ще научите как да създадете автомобил -робот, който да избягва препятствията, присъстващи по пътя му. Концепцията може да се използва и прилага по различни начини според условията. Необходими материали: 1. колела x4 2. шаси (можете да закупите или