Агуулгын хүснэгт:

Arduino ашиглан хэт авианы зайлсхийх робот: 7 алхам
Arduino ашиглан хэт авианы зайлсхийх робот: 7 алхам

Видео: Arduino ашиглан хэт авианы зайлсхийх робот: 7 алхам

Видео: Arduino ашиглан хэт авианы зайлсхийх робот: 7 алхам
Видео: Ежедневные новости Crypto Pirates — вторник, 19 января 2022 г. — последнее обновление новостей о криптовалютах 2024, Долдугаар сарын
Anonim
Image
Image
Arduino ашиглан хэт авианы зайлсхийх робот
Arduino ашиглан хэт авианы зайлсхийх робот

Энэхүү гарын авлагад би роботоос зайлсхийх саадыг хэрхэн яаж хийхийг танд үзүүлэх болно. Бид Arduino UNO самбар болон хэт авианы мэдрэгчийг ашиглах болно. Хэрэв робот жижиг servo моторын тусламжтайгаар урд талын объектыг илрүүлвэл эргүүлэх хамгийн сайн арга замыг олохын тулд зүүн болон баруун хэсгийг сканнерддаг. Түүнчлэн мэдэгдэх LED, объект илрэх үед дуугарах дохио, роботын функцийг өөрчлөх товчлууртай (зогсох/урагшлах).

Үүнийг хийх нь маш амархан!

Алхам 1: Хийх ёстой зүйлүүд

Хийх ёстой зүйлүүд!
Хийх ёстой зүйлүүд!
Хийх ёстой зүйлүүд!
Хийх ёстой зүйлүүд!
Хийх ёстой зүйлүүд!
Хийх ёстой зүйлүүд!
Хийх ёстой зүйлүүд!
Хийх ёстой зүйлүүд!

Энэ төслийн хувьд танд хэрэгтэй болно:

  1. Arduino UNO (үүнийг gearbest.com дээрээс худалдаж аваарай)
  2. Мини талхны самбар (үүнийг gearbest.com дээрээс худалдаж аваарай)
  3. L298 мотор драйвер модуль (үүнийг gearbest.com дээрээс худалдаж аваарай)
  4. HC-SR04 дугуйтай хэт авианы мэдрэгч бүхий 2х тогтмол гүйдлийн мотор (үүнийг gearbest.com дээрээс худалдаж аваарай)
  5. Бичил servo мотор (үүнийг gearbest.com дээрээс худалдаж аваарай)
  6. Товч Улаан LED220 Ом эсэргүүцэл 9В батерейны эзэмшигч (цахилгаан залгууртай эсвэл ороогүй)
  7. 8 зай (эрэгтэй-эмэгтэй),
  8. 8 самар, 8 эрэг танд бас нэг том хэрэгтэй болно (металл)

цаасан хавчаар ба ирмэгийг дэмжих дугуй хийх.

Робот баазын хувьд би Aliexpress -аас Acryllic Chasis ашигласан. Та мөн мод эсвэл металл (эсвэл хоёр цахилгаан хавтан) ашиглаж болно.

Төслийн нийт өртөг нь ойролцоогоор 20 доллар

Багаж хэрэгсэл: Өрөмдлөгийн машин супер цавуу багийн жолооч халуун буу цавуу (заавал биш) Эрчим хүч:

Бид 9В батерейг ашиглан роботоо асаах болно, учир нь энэ нь жижиг бөгөөд хямд боловч тийм ч хүчирхэг биш бөгөөд нэг цагийн дараа хоосон болно. Та дахин цэнэглэдэг батерей (мин 6V, хамгийн их 7V) ашиглахыг хүсч байгаа эсэхээ бодоорой, гэхдээ энэ нь илүү хүчирхэг боловч 9В батерейгаас илүү үнэтэй, том байх болно. Манай YouTube сувгийг энд дарна уу.

Алхам 2: Үзэл баримтлалыг ойлгох

Үзэл баримтлалыг ойлгох
Үзэл баримтлалыг ойлгох
Үзэл баримтлалыг ойлгох
Үзэл баримтлалыг ойлгох
Үзэл баримтлалыг ойлгох
Үзэл баримтлалыг ойлгох

Зорилго нь роботыг урд нь тулгарч буй саад бэрхшээлийг ойлгуулах бөгөөд ингэснээр тэр чиглэлээ өөрчилж, түүнээс зайлсхийх боломжтой юм. Өмнөх нийтлэлд бид роботыг хөдөлгөсөн - одоо бид түүнд бие даасан байдал өгөх болно.

Хэт авианы мэдрэгч

HC-SR04 нь хэт авианы долгион ашиглан объект хүртэлх зайг 4 метр хүртэл хэмжих боломжтой хэлхээ юм. Энэ нь пинг (шумбагч онгоц гэх мэт) илгээж, ямар нэгэн зүйлийг буцааж илгээх, хүлээн авах хоорондох хугацааг (микросекундээр) хэмждэг. Дараа нь долгион нааш цааш хөдөлж байх үед энэ хугацааг 2 -т хуваана. Дуу нь сантиметр тутамд 29.4µs (340 м/с) дамждаг тул сантиметр (эсвэл инчээр 74 инч) зай авахын тулд 29 -ийг хуваана. Мэдрэгч нь ~ 3 мм -ийн хүлцэл маш нарийвчлалтай бөгөөд Arduino -той нэгтгэхэд хялбар байдаг.

AVR микроконтроллертой хэт авианы мэдрэгчийг холбох

Аливаа бие даасан робот нь саад бэрхшээлээс зайлсхийж, зайг хэмжих мэдрэгч хавсаргасан байх ёстой. IR дамжуулагч хос эсвэл саарал өнгөний мэдрэгч нь 1см-10см хүртэлх саадыг илрүүлэхэд хялбар ажилладаг. IR туяа илрүүлэгч (жишээлбэл, хурц үзүүртэй) нь хамгийн ойрхон саад хүртэлх зайг 100см хүртэл хэмжиж чаддаг. Гэсэн хэдий ч IR мэдрэгч нь нарны гэрэл болон бусад гэрлийн эх үүсвэрт нөлөөлдөг. IR туяа хэмжигч нь харьцангуй бага хүрээтэй бөгөөд хийж буй зүйлдээ үнэтэй байдаг. Хэт авианы мэдрэгч (хэт авианы ойролцоо мэдрэгч буюу геекст зориулсан sonar гэж нэрлэдэг) эдгээр ажлыг хоёуланг нь боломжийн өртөг, онцгой нарийвчлалтайгаар гүйцэтгэдэг. Хэмжээ нь 3см -ээс 350см хүртэлх хэмжээтэй бөгөөд ~ 3мм нарийвчлалтай. Эдгээр хэт авианы мэдрэгчүүдийн нэгийг манай роботод холбосноор энэ нь саад тотгороос зайлсхийх болон зайг хэмжих мэдрэгчийн үүрэг гүйцэтгэдэг.

"Хэт авианы" дуу чимээ нь дууны давтамжаас давсан бүх зүйлийг хэлдэг бөгөөд нэрлэсэн утгаараа 20,000 Гц эсвэл 20 кГц -ээс их зүйлийг агуулдаг. Робот техникт ашигладаг хямд хэт авианы мэдрэгч нь ерөнхийдөө 40 кГц -ээс 250 кГц -ийн хооронд ажилладаг бол эмнэлгийн тоног төхөөрөмжид 10 МГц хүртэл ажилладаг.

Алхам 3: Шаардлагатай багаж хэрэгсэл

Шаардлагатай багаж хэрэгсэл
Шаардлагатай багаж хэрэгсэл
Шаардлагатай багаж хэрэгсэл
Шаардлагатай багаж хэрэгсэл
Шаардлагатай багаж хэрэгсэл
Шаардлагатай багаж хэрэгсэл
Шаардлагатай багаж хэрэгсэл
Шаардлагатай багаж хэрэгсэл
  1. Мультиметр
  2. Талхны самбар
  3. Зүү хамар бахө
  4. Утас хуулагч
  5. Утас таслагч
  6. Цавуу буу

Мультиметр нь үнэндээ хүчдэл ба эсэргүүцлийг хэмжих, хэлхээ хаагдсан эсэхийг тодорхойлоход ашигладаг энгийн төхөөрөмж юм. Компьютерийн кодыг дибаг хийхтэй адил Multimeter нь таны электрон хэлхээг "дибаг" хийхэд тусалдаг.

Барилгын материал

Механик хүрээ хийх нимгэн мод ба/эсвэл плексигласын бэлэн хангамж нь маш ашигтай байдаг. Хөнгөн цагаан, ган гэх мэт металлыг ихэвчлэн машины дэлгүүрт нэвтрэх боломжтой хүмүүсээр хязгаарладаг боловч нимгэн хөнгөн цагааныг хайчаар хайчилж, гараараа нугалж болдог. Механик хүрээг хуванцар сав гэх мэт гэр ахуйн эд зүйлсээс ч хийж болно.

Хэдийгээр хуванцар гэх мэт бусад материалууд (плексигласнаас бусад), эсвэл шилэн ховил, карбон файбер зэрэг чамин материалууд боломжтой боловч тэдгээрийг энэхүү гарын авлагад авч үзэхгүй. Хэд хэдэн үйлдвэрлэгчид ихэнх хобби сонирхогчид өөрсдөө механик эд анги үйлдвэрлэх нь амаргүй гэдгийг тэмдэглэж, модульчлагдсан механик эд анги бүтээжээ. Үүний тэргүүлэгч нь Lynxmotion бөгөөд олон төрлийн робот дизайн, өөрийн хүссэн робот хийхэд шаардлагатай эд ангиудыг санал болгодог.

Гар багаж

Янз бүрийн хэлбэр, хэмжээтэй халив, бахө (үнэт эдлэлийн хэрэгслийг багтаасан: долларын дэлгүүрт түгээмэл байдаг жижиг халив) шаардлагатай болно. Өрөм (шулуун цооног өрөмдөх нь зүйтэй) нь бас чухал юм. Барилгын материал (эсвэл чиглүүлэгч) огтлох гар хөрөө нь бас чухал хөрөнгө юм. Хэрэв төсөв зөвшөөрвөл ширээний жижигхэн хөрөө (200 долларын үнэтэй) нь анхаарах ёстой хэрэгсэл юм.

Гагнуургүй талхны самбар

Гагнуургүй талхны хавтан нь байршлыг оновчтой болгож, бүрэлдэхүүн хэсгүүдийг хялбархан холбох боломжийг олгодог. Гагнуургүй талхны хавтангийн хамт та гагнуургүй талхны тавцанд ашиглах зориулалттай урьдчилан хайчилж, нугалсан утаснаас бүрдсэн урьдчилан холбосон утсыг худалдаж авах хэрэгтэй. Энэ нь холболтыг маш хялбар болгодог.

Жижиг халивын багц

Эдгээр жижиг халив нь электрон төхөөрөмжтэй ажиллахад зайлшгүй шаардлагатай байдаг. Тэднийг хэт их хүчлэх хэрэггүй - хэмжээ нь тэднийг илүү эмзэг болгодог.

Ердийн халивын багц

Бүх семинаруудад хавтгай / Филлипс болон бусад халивын толгойг багтаасан олон багаж хэрэгсэл хэрэгтэй болно.

Зүү хамар бахө

Зүү хамар бахө нь жижиг эд анги, эд ангиудтай ажиллахад маш хэрэгтэй бөгөөд таны хэрэгслийн хайрцагт маш хямд нэмэлт болно. Эдгээр нь энгийн бахөгаас ялгаатай, учир нь тэд жижиг хэсгүүдэд хүрч чаддаг.

Утас хуулагч/таслагч

Та ямар ч утас таслахаар төлөвлөж байгаа бол утас тайлах нь танд ихээхэн цаг хугацаа, хүч чармайлт хэмнэх болно. Утас хуулагч нь зөв хэрэглэвэл зөвхөн кабелийн тусгаарлагчийг зайлуулж, ямар ч цооролт, дамжуулагчийг гэмтээхгүй. Утас тайлах өөр хувилбар бол хайч юм, гэхдээ эцсийн үр дүн нь эмх замбараагүй байж магадгүй юм. Хайч, захирагч, үзэг, маркер харандаа, Exacto хутга (эсвэл бусад гар зүсэх хэрэгсэл) Эдгээр нь аль ч оффист зайлшгүй шаардлагатай зүйл юм.

Алхам 4: AVR кодчилох тухай ойлголт

AVR кодчилох талаархи ойлголт
AVR кодчилох талаархи ойлголт

Хэт авианы мэдрэгчтэй харьцуулахад дууны хурдыг тооцоолох

Жижиг математик, гэхдээ бүү ай. Энэ нь таны бодож байгаагаас хамаагүй хялбар юм.

Өрөөний температурт (~ 20 ° C) хуурай агаарт гарах дууны хурд = 343 метр/секунд

Дууны долгионы цохилт өгч ойролцоох объект руу хоёр талын аялал хийх нь = 343/2 = 171.5 м/юм. Хэт авианы хэт авианы мэдрэгчийн хамгийн дээд хүрээ нь 5 метрээс хэтрэхгүй (эргэлт), үүнийг хийх нь илүү утга учиртай болно. нэгжийг сантиметр ба микросекунд болгон өөрчлөх.

1 метр = 100 сантиметр 1 секунд = 10^6 микрекунд = (s/171.5) x (m/100 см) 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 цагийн мөчлөгийг ойлгоход огт өөр бүлэг шаардлагатай боловч бидний тооцооллыг хөнгөвчлөхийн тулд хэрхэн ажилладаг талаар товчхон ойлгох болно.

Бидний жишээн дээр бид 8 битийн AVR-Atmega328P микроконтроллертой AVR Draco самбарыг ашиглах болно. Энгийн хялбар байлгахын тулд бид микроконтроллерийн тохиргоог өөрчлөхгүй. Гал хамгаалагчийн битийг хөндөөгүй; Гадна талст залгаагүй; Толгой өвдөхгүй. Үйлдвэрийн тохиргоонд энэ нь a /8 prescaler бүхий дотоод 8MHz oscillator дээр ажилладаг; Хэрэв та энэ бүхнийг ойлгохгүй байгаа бол энэ нь микроконтроллер нь 1MHz дотоод RC осциллятор дээр ажиллаж байгаа бөгөөд цаг бүрийн мөчлөг бүр 1 микросекунд зарцуулдаг гэсэн үг юм.

1 2 1MHz = секундэд 1000000 цикл Тиймээс 1s/1000000 = 1/1000000 = 1us

AVR цаг ба зайг хөрвүүлэх

Бид бараг тэнд байна! AVR цагны мөчлөгийг дууны долгионы дамжуулсан зайнд хэрхэн хөрвүүлэхээ мэддэг бол логикийг програмд хэрэгжүүлэх нь амархан болно.

Хамгийн тохиромжтой орчинд хэт авианы дууны хурд 58.31 ус/см гэдгийг бид мэднэ

AVR микроконтроллерийн нарийвчлал нь 1us/clock cycle (CLK) гэдгийг бид мэднэ.

Тиймээс, нэг мөчлөгт дуугаар дамжин өнгөрөх зай (CLK) нь:

1 2 3 = (58.31 us/ cm) x (1us/ clk) = 58.31 цагийн мөчлөг/ см эсвэл = 1/ 58.31 см/ clk

Хэрэв дуу чимээ өнгөрч, ухрахын тулд шаардагдах цагны тоог мэддэг бол бид зайг хялбархан тооцоолж чадна. Жишээлбэл, хэрэв мэдрэгч 1000 цагийн эргэлт хийж, ухрах юм бол мэдрэгчээс хамгийн ойрын объект хүртэлх зай = 1000/58.31 = 17.15 см (ойролцоогоор)

Одоо бүх зүйл утга учиртай байна уу? Үгүй ээ? Дахин уншаарай

Хэрэв та дээр дурдсан бүх логикийг ойлгомжтой байгаа бол бид үүнийг хямд үнэтэй HC-SR04 хэт авианы мэдрэгчийг AVR Arduino самбартаа холбох замаар бодит ертөнцөд хэрэгжүүлэх болно.

Алхам 5: Тоног төхөөрөмжийн холболт:

Тоног төхөөрөмжийн холболт
Тоног төхөөрөмжийн холболт
Тоног төхөөрөмжийн холболт
Тоног төхөөрөмжийн холболт
Тоног төхөөрөмжийн холболт
Тоног төхөөрөмжийн холболт
Тоног төхөөрөмжийн холболт
Тоног төхөөрөмжийн холболт

Arduino Board нь аливаа гадаад мэдрэгчийг холбоход хялбар бөгөөд үр дүнг нь LCD дэлгэцээр харах боломжтой. Хэт авианы хүрээ мэдрэхийн тулд бид хямд HC-SR04 модулийг ашигладаг. Модуль нь VCC, TRIG, ECHO, GND микроконтроллерийн самбартай холбогдож болох 4 голтой.

VCC зүүг 5V, GND зүүгээр Arduino самбар дээр холбоно уу.

TRIG зүү ба ECHO зүүг самбар дээрх боломжтой бүх тээглүүртэй холбож болно. Зүүг идэвхжүүлэхийн тулд хамгийн багадаа 10us "өндөр" дохио илгээж, 40 кГц давтамжтай 8 дууны долгион илгээж, цуурай зүүг өндөр татаж авдаг. Хэрэв дуу нь ойролцоох объектоос үсэрч, эргэж ирвэл түүнийг хувиргагчийг хүлээн авснаар цуурай зүүг "нам" татна.

Хэт авианы мэдрэгч модулийн бусад хувилбарыг зөвхөн 3 тээглүүрээр авах боломжтой. Ажлын зарчим ижил хэвээр байгаа боловч гох ба цуурайны зүүг нэг зүү болгон нэгтгэдэг.

Холбогдсоны дараа Trigger болон Echo Pins -ийг програмаар тохируулж болно. Энэ жишээг энгийн байлгахын тулд бид энэ жишээнд ямар ч таслах тээглүүр (эсвэл оролтын зураг авах пин) ашиглахгүй. Зориулалтын таслагч тээглүүрийг ашиглахгүй байх нь модулийг самбар дээрх боломжтой зүүтэй холбох боломжийг бидэнд олгодог.

Алхам 6: Код

Доорх код нь өмнөх өгүүллийн H-Bridge ашиглан DC моторын удирдлагын "хэт авианы" өргөтгөлийг агуулдаг. Робот урд талын саад тотгорыг олж мэдээд эргэж (санамсаргүй байдлаар) урагшаа үргэлжлүүлэв. Энэ функцийг хялбархан өргөжүүлж, саад тотгорыг нэгэн зэрэг эргүүлэх, илрүүлэх боломжтой тул робот санамсаргүйгээр эргэхгүй, харин объект илрээгүй үед л урагшилж эхэлдэг.

Кодын тайлбарыг суваг дээр жагсаасан Youtube видеоноос үзнэ үү.

Алхам 7: Видео

Бүх үйл явцын талаархи видеог үзээрэй.

Зөвлөмж болгож буй: