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

Arduino хэт авианы гар утасны Sonar: 7 алхам (зурагтай)
Arduino хэт авианы гар утасны Sonar: 7 алхам (зурагтай)

Видео: Arduino хэт авианы гар утасны Sonar: 7 алхам (зурагтай)

Видео: Arduino хэт авианы гар утасны Sonar: 7 алхам (зурагтай)
Видео: Кодовый дверной замок своими руками 😂😂 2024, Долдугаар сарын
Anonim
Arduino хэт авианы хөдөлгөөнт Sonar
Arduino хэт авианы хөдөлгөөнт Sonar

Пирамидын дотор талыг хэрхэн судлах талаар та бодож байсан уу? Далайн гүн харанхуй хэсэг үү? Сая олдсон агуй? Эдгээр газруудыг эрэгтэйчүүд ороход аюултай гэж үздэг тул үл мэдэгдэх хэсгийг шууд үзэх, зураглахын тулд ихэвчлэн камер, хэт улаан туяаны камер гэх мэт тоноглогдсон робот, нисгэгчгүй онгоц гэх мэт нисгэгчгүй машин хайгуул хийх шаардлагатай байдаг. тодорхой гэрлийн эрч хүч шаарддаг бөгөөд олж авсан өгөгдөл харьцангуй их байдаг. Тиймээс sonar системийг ерөнхий хувилбар гэж үздэг.

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

Алхам 1: Үндсэн онол

Үндсэн онол
Үндсэн онол

A. Сонар

Энэхүү төсөлд ашигласан HC-SR04 хэт авианы мэдрэгч нь 2см-ээс 400см хүртэл скан хийх чадвартай. Эргэдэг ажиллагаатай sonar бүтээхийн тулд бид мэдрэгчийг servo мотор дээр холбодог. Бид servo -ийг 0.1 сек эргүүлж, 0.1 секундын турш 180 градус хүртэл нэгэн зэрэг зогсоогоод анхны байрлал руу буцаж давтана, мөн Arduino ашиглан servo зогсох бүрт мэдрэгчийн заалтыг авах болно. Өгөгдлийг нэгтгэн бид 180 градусын зайд 400 см радиустай зайны уншилтын графикийг зурдаг.

B. Акселерометр

MPU-6050 акселерометрийн мэдрэгчийг x, y, z тэнхлэг дээрх хурдатгалын хэмжээг хэмжихэд ашигладаг. Хэмжилтийг 0.3 секундын өөрчлөлтийн өөрчлөлтөөс бид эдгээр тэнхлэгийг тойрсон шилжилтийг олж авдаг бөгөөд үүнийг сканнер бүрийн байрлалыг тодорхойлохын тулд sonar өгөгдөлтэй нэгтгэж болно. Өгөгдлийг Arduino IDE дээрх цуваа дэлгэцээс үзэх боломжтой.

C. RC 2WD машин

Модуль нь L298N мотор драйвераар хянагддаг 2 тогтмол гүйдлийн мотор ашигладаг. Үндсэндээ хөдөлгөөнийг мотор бүрийн эргэлтийн хурд (өндөр ба бага хооронд) ба түүний чиглэлээр хянадаг. Кодод хөдөлгөөний хяналтыг (урагш, хойш, зүүн, баруун) хөдөлгүүр бүрийн хурд, чиглэлийг хянах команд болгон хөрвүүлж, дараа нь моторыг хянадаг мотор драйвераар дамжуулдаг. HC-06 Bluetooth модулийг Arduino болон Android дээр суурилсан бусад төхөөрөмжүүдийн хооронд утасгүй холболт хийхэд ашигладаг. Модулийг дамжуулах, хүлээн авах зүүгээр холбосны дараа төхөөрөмжтэй холбогдоно. Хэрэглэгч ямар ч Bluetooth хяналтын програмыг суулгаж, 5 үндсэн товчлуурыг тохируулж, холболт хийгдсэний дараа товчлуурт (l, r, f, b, s) энгийн команд өгөх боломжтой. (хосолсон анхдагч код нь 0000) Дараа нь хяналтын хэлхээг хийнэ.

D. PC болон өгөгдлийн үр дүнгийн холболт

Олсон өгөгдлийг Arduino болон MATLAB -д уншихын тулд компьютерт буцааж дамжуулах шаардлагатай. Тохиромжтой арга бол ESP8266 гэх мэт wifi модулийг ашиглан утасгүй холболт хийх явдал юм. Модуль нь утасгүй сүлжээг тохируулдаг бөгөөд PC нь түүнтэй холбогдож, өгөгдлийг уншихын тулд утасгүй холболтын портоор дамжуулан унших шаардлагатай болдог. Энэ тохиолдолд бид USB өгөгдлийн кабелийг ашиглан прототипийг компьютерт холбох боломжтой хэвээр байна.

Алхам 2: эд анги ба бүрэлдэхүүн хэсгүүд

Эд анги ба бүрэлдэхүүн хэсгүүд
Эд анги ба бүрэлдэхүүн хэсгүүд
Эд анги ба бүрэлдэхүүн хэсгүүд
Эд анги ба бүрэлдэхүүн хэсгүүд
Эд анги ба бүрэлдэхүүн хэсгүүд
Эд анги ба бүрэлдэхүүн хэсгүүд
Эд анги ба бүрэлдэхүүн хэсгүүд
Эд анги ба бүрэлдэхүүн хэсгүүд

Алхам 3: Угсрах, утас холбох

1. Хэт авианы мэдрэгчийг мини талхны тавцан дээр байрлуулж, мини талхны хавтанг servo -ийн жигүүрт холбоно. Серво нь машины иж бүрдэл хэсгийн урд талд бэхлэгдсэн байх ёстой.

2. Оруулсан зааврын дагуу машины иж бүрдэл угсрах.

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

4. Утас:

A. Эрчим хүч:

L298N мотор драйвераас бусад бусад хэсгүүдэд Arduino -ийн 5V гаралтын портоос авах боломжтой 5V тэжээлийн оролт шаардагддаг бол GND нь Arduino -ийн GND порт руу холбогддог тул хүч чадал ба GND -ийг талхны самбар дээр зэрэгцүүлж болно. Arduino -ийн хувьд тэжээлийг компьютер эсвэл powerbank -т залгагдсан USB кабелиар авдаг.

B. HC-SR04 хэт авианы мэдрэгч

Гох зүү - 7

Цуурай зүү - 4

C. SG-90 Servo

Хяналтын зүү - 13

D. HC-06 Bluetooth модуль

Rx Pin - 12

Tx Pin - 11

*Bluetooth командууд:

Урд - 'f'

Буцах - 'b'

Зүүн - 'l'

Зөв - 'r'

Аливаа хөдөлгөөнийг зогсоо

E. MPU-6050 хурдасгуур

SCL Pin - Аналог 5

SDA зүү - Аналог 4

INT пин - 2

F. L298N мотор жолооч

Vcc - 9V батерей ба Arduino 5V гаралт

GND - Аливаа GND ба 9V зай

+5 - Arduino VIN оролт

ИНА - 5

INB - 6

INC - 9

IND - 10

OUTA - Зөв DC мотор

OUTB - Зөв DC мотор +

OUTC - Зүүн DC мотор

OUTD - Зүүн DC мотор +

ENA - Жолооч 5V (таслуур)

ENB - Жолооч 5V (таслуур)

Алхам 4: Arduino код

Файлд оруулсан анхны кодыг бүтээгчид болон Сатявратад олгосон кредитүүд

www.instructables.com/id/Ultrasonic-Mapmake…

Алхам 5: MATLAB код

COM портыг ашиглаж буй портынхоо дагуу солино уу.

Код нь портоор дамжуулан Arduino -аас дамжуулсан өгөгдлийг авах болно. Үүнийг ажиллуулсны дараа энэ нь sonar -ийн гүйцэтгэсэн цэвэрлэгээний дараа өгөгдлийг байнга цуглуулдаг. Нумын график график хэлбэрээр өгөгдөл олж авахын тулд ажиллаж байгаа MATLAB кодыг зогсоох шаардлагатай. Төв цэгээс график хүртэлх зай нь sonar хэмжсэн зай юм.

Алхам 6: Үр дүн

Үр дүн
Үр дүн

Алхам 7: Дүгнэлт

Нарийвчлалтай ашиглахын тулд энэ төсөл нь төгс төгөлдөр биш тул мэргэжлийн хэмжих ажилд тохиромжгүй болно. Гэхдээ энэ бол судлаачид sonar, Arduino төслүүдийн талаар мэдлэгтэй болоход туслах DIY төсөл юм.

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