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

Гадил/бөөрөлзгөнө Pi + веб камертай Arduino Rover: 9 алхам
Гадил/бөөрөлзгөнө Pi + веб камертай Arduino Rover: 9 алхам

Видео: Гадил/бөөрөлзгөнө Pi + веб камертай Arduino Rover: 9 алхам

Видео: Гадил/бөөрөлзгөнө Pi + веб камертай Arduino Rover: 9 алхам
Видео: Сколько энергии потребляет Raspberry Pi? #шорты 2024, Арваннэгдүгээр
Anonim
Банана/бөөрөлзгөнө Pi + вэб камертай Arduino Rover
Банана/бөөрөлзгөнө Pi + вэб камертай Arduino Rover

Чөлөөт цагаараа хийсэн төсөл. Энэ бол вэб хөтөчөөр удирддаг 4 дугуйтай 4 хөтлөгчтэй робот юм. Хэрэв танд ямар нэгэн сэтгэгдэл, асуулт байвал надтай холбоо бариарай. Энэхүү төсөл нь өөрөө 3D хэвлэсэн эд анги, бусад хүмүүсийн бүтээсэн кодын зарим хэсгийг ашигладаг. Та кредит олж, Instructuble -ийн төгсгөлд байгаа анхны хэсгүүдийг үзэх боломжтой.

Бид эхлэх үү?

Алхам 1: Танд хэрэгтэй бүрэлдэхүүн хэсгүүд

Танд хэрэгтэй бүрэлдэхүүн хэсгүүд
Танд хэрэгтэй бүрэлдэхүүн хэсгүүд
Танд хэрэгтэй бүрэлдэхүүн хэсгүүд
Танд хэрэгтэй бүрэлдэхүүн хэсгүүд
Танд хэрэгтэй бүрэлдэхүүн хэсгүүд
Танд хэрэгтэй бүрэлдэхүүн хэсгүүд

Миний ашигласан холбоосууд болон өөр хувилбаруудын жагсаалт энд байна. Би Хятадын Шэньжэн хотод амьдардаг бөгөөд эд ангиудыг шууд Taobao дээрээс худалдаж авсан.

4 мотортой робот явах эд анги Альтернатив: Ямар ч хангалттай том явах эд анги хийх болно. Энэ төхөөрөмж нь нэмэлт момент хийх 4 хөдөлгүүртэй. Мотор бол ердийн хямд шар мотор юм

L293D Arduino Motor Shield rev.1 clone Альтернатив хувилбар: Илүү их гүйдлийн хувьд илүү сайн хөдөлгүүрийн бамбай

Arduino Uno клон хувилбар: Та кодонд мэдэгдэхүйц өөрчлөлт оруулахгүйгээр өөр Arduino самбарыг ашиглаж болно.

6V 4.5Ah Pb батерейны өөр хувилбар: Хэрэв та хөнгөн робот авахыг хүсвэл жижиг LiPo батерейг туршиж үзэх боломжтой/зөвхөн хоёр мотор ашиглах боломжтой.

Banana Pi -ийн өөр хувилбар: Кодод мэдэгдэхүйц өөрчлөлт оруулахгүйгээр Raspberry Pi 1/2/3 эсвэл Orange Pi -ийг сольж болно. Би гадил жимсний Pi -г зөвхөн хажууд нь хэвтэж байсан болохоор л хэрэглэсэн.

Вэб камерын өөр хувилбар: Raspberry Pi/Banana Pi/Orange Pi -д зориулж CSI камер ашиглана уу

Sg60 servos бүхий камерын налуу/налалтын бэхэлгээ Альтернатив хувилбар: 3D хэвлэлийн налуу/тавган бэхэлгээ нь үүнийг ашиглаж болно.

3D хэвлэмэл хэсгүүд Альтернатив: Таны төсөөлөл, 3D дизайны авъяас чадвар таныг удирдан чиглүүлээрэй! Бас Thingverse:)

Алхам 2: L293D мотор бамбай ашиглан моторуудыг холбоно уу

Моторуудыг L293D мотор бамбайгаар холбоно уу
Моторуудыг L293D мотор бамбайгаар холбоно уу
Моторуудыг L293D мотор бамбайгаар холбоно уу
Моторуудыг L293D мотор бамбайгаар холбоно уу

Мотор бүрийг хөдөлгүүрийн бамбай шурагтай холбоно. Утасны диаграмыг энд харуулав. Хэрэв та зөвхөн хоёр мотортой бөгөөд кодыг өөрчлөхийг хүсэхгүй байгаа бол тэдгээрийг MOTOR 1 ба MOTOR 3 -т хавсаргана уу.

ТАЙЛБАР: Өндөр гүйдлийн үнэлгээтэй өөр мотор ашигладаг хүмүүст өөр мотор драйвер хэрэгтэй байж магадгүй юм. Эсвэл саяхан олж мэдсэн жижигхэн хакердсан зүйл бол та одоо байгаа драйверын дээр L293D гэсэн хоёр драйверыг буцааж авах боломжтой (энэ нь самбар дээрх дунд чип юм)!

Алхам 3: Arduino Uno, Motor Shield Assembly

Arduino Uno, Мотор бамбай угсралт
Arduino Uno, Мотор бамбай угсралт

Arduino Uno -ийг хайрцагт хийж, дээр нь Motor Shield суулгаарай. Үүнийг хийх цорын ганц арга бий, хэрэв энэ нь тохирохгүй бол та жаахан вон хийж байна!

Arduino Uno эвхдэг хайрцаг

Энд миний ашиглаж байсан загвар, Esquilo -ийн бүтээсэн загвар байна.

Алхам 4: Power -ийг Banana Pi болон Arduino руу холбоно уу

Power -ийг Banana Pi болон Arduino руу холбоно уу
Power -ийг Banana Pi болон Arduino руу холбоно уу

Би SATA интерфэйсийг ашиглан Banana Pi (6v) хүчийг өгдөг байсан. Хэрэв та ижил самбартай бол үүнийг хийж болно, хүчдэл 5v-6v байгаа эсэхийг шалгаарай. Энэ нь зохицуулалтгүй цахилгаан хангамж тул Banana Pi M1 дээр SATA тэжээлийг хамгаалах хэлхээ байна гэж би бодож байна.

Анхаарна уу: Raspberry Pi-ийн хувьд танд хэд хэдэн сонголт байна: аюулгүй (USB холбогчийг 5v-ээр хангах), тийм ч аюулгүй биш (GPIO тээглүүр ашиглан). Raspberry Pi GPIO тээглүүрт хүчийг холбох талаар унших линк энд байна. Та итгэлтэй байгаарай

1) Зохицуулалттай цахилгаан хангамжийг ашиглах

2) Хүчдэлийг 5v болгож тохируулна уу

GPIO тээглүүрийг хамгаалах хэлхээ байхгүй байна! Хэрэв та буруу зүйл хийвэл самбар дээрх цахилгаан хэрэгслийг гэмтээх ноцтой эрсдэл бий.

Arduino -ийн хувьд моторын бамбай дээрх оролтын шураг терминал руу хүчээ залгаарай. Энэ нь 12 вольт хүртэл ажиллах боломжтой.

Алхам 5: Banana Pi -ийг 3D хэвлэсэн хайрцагт хийж, Rover -ийн үлдсэн хэсгийг угсарна уу

Banana Pi -ийг 3D хэвлэсэн хайрцагт хийж, Rover -ийн үлдсэн хэсгийг угсарна уу
Banana Pi -ийг 3D хэвлэсэн хайрцагт хийж, Rover -ийн үлдсэн хэсгийг угсарна уу
Banana Pi -ийг 3D хэвлэсэн хайрцагт хийж, Rover -ийн үлдсэн хэсгийг угсарна уу
Banana Pi -ийг 3D хэвлэсэн хайрцагт хийж, Rover -ийн үлдсэн хэсгийг угсарна уу

Би энэ хэргийг GermanRobotics -ийн бүтээсэн зүйлээс Banana Pi -д ашигласан. Үүний нүүрийг би өөрөө хийсэн.

Гадил жимсний хайрцгийг хайрцагт хийж, тагийг нь таглаад, цавуугаар буу ашиглан гадил жимсний хайрцгийн дээд хэсэгт Arduino Uno -ийг бэхлээрэй.

Батерейгаа энэ бүрхэвчээр таглаад вэб камерын тогоо/хазайлтын бэхэлгээг дээд талд нь бэхлээрэй.

Хэрэв та Banana Pi ашиглаж байгаа бол танд USB hub хэрэгтэй болно, учир нь энэ нь зөвхөн хоёр USB үүртэй (Raspberry 2, 3 нь дөрвөн ширхэг). Гоо үзэсгэлэнгийн үүднээс би OTG 1-2 USB төвийг ашиглаж, Banana Pi хайрцгийн доторхи утсыг нуухаар шийдсэн.

Алхам 6: Тоног төхөөрөмжийн угсралт дууссан

Тоног төхөөрөмжийн угсралт дууссан!
Тоног төхөөрөмжийн угсралт дууссан!

Өнөөдрийг хүртэл хийсэн ажлаа хурдан тоймлоё.

Бид роботын платформыг суурилуулж, Banana Pi, Arduino Uno -д хүч, мотор драйверт мотор, servo холбож, USB камер, Arduino Uno -г Banana Pi -д холбох зорилгоор USB төвийг ашигласан. Одоо та тоног төхөөрөмжийг шалгаж, алдааг олж засварлах боломжтой. Энэ холболтын бүх холболтыг харуулсан утасны диаграммыг зураг дээр үзүүлэв.

Алхам 7: Системийн тохиргоо

Системийн тохиргоо
Системийн тохиргоо

Би pi дээр системд Raspbian Lite зургийг ашигласан. Lite хувилбар нь GUI-гүй бөгөөд зөвхөн нэг үндсэн багцыг дагалддаг. Гэхдээ энэ нь хамаагүй бага зай эзэлдэг бөгөөд энэ нь бид жижиг хэмжээтэй SD карт ашиглах боломжтой гэсэн үг юм. Хэрэв танд GUI байхгүй бол та бүрэн дүрсийг суулгаж болно.

Пи -ээ Ethernet кабелиар интернетэд холбоно уу. Үүнийг асаасны дараа эхний алхам бол Wi-Fi сүлжээнд холбох явдал юм.

Дараах тушаалыг терминал дээр ажиллуулна уу

sudo нано /etc/wpa_supplicant/wpa_supplicant.conf

Тохиргооны файлыг WiFi итгэмжлэлийн мэдээллээр засварлана уу

сүлжээ = {ssid = "туршилт" psk = "testPassword"}

Pi -г дахин ачаална уу. Воила! Та одоо Wi-Fi-д холбогдсон байна.

Дараа нь бид pip (Python Package Manager) суулгах хэрэгтэй болно.

sudo apt-get python-setuptools суулгана уу

sudo easy_install pip

Одоо бид пип ашиглан вэб сервер ажиллуулахын тулд Flask -ийг суулгаж, цуваа холболтоор Arduino -той харилцахын тулд pi -ийн pyserial -ийг ашиглаж байна.

sudo pip суулгах колбо

sudo pip суулгах pyserial

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

Үүнийг хийхийн тулд энэхүү агуу зааварчилгааг дагана уу.

Одоо бид хашгирахад бэлэн байна!

Алхам 8: Програм хангамжийг эхлүүлэх

Програм хангамжийг эхлүүлж байна
Програм хангамжийг эхлүүлж байна
Програм хангамжийг эхлүүлж байна
Програм хангамжийг эхлүүлж байна

Бид шуугилдахад бэлэн байна гэж хэлснийг санаж байна уу?

За, жаахан нунтаглаад дараа нь бид дуугарч эхэллээ:)

Github репозитороос шаардлагатай бүх файлыг татаж авцгаая.

git clone

Rover.ino -г Arduino Uno дээр байршуулах. Хэрэв та тоног төхөөрөмжийн өөрчлөлт хийсэн бол (жишээлбэл, өөр өөр хөдөлгүүрийн бамбай ашиглан) ноорогоо өөрчлөх шаардлагатай болно.

Хэрэв та вэб камер ашиглаж байгаа бол загварын хавтас дахь index.html файлын доод талын мөрийг өөрчилнө үү. IFRAME мөр дэх URL -г өөрийн видео дамжуулалтын src URL -тай тааруулахаар өөрчилнө үү.

Одоо та вэб серверийг эхлүүлж болно. Дараах тушаалыг ажиллуулна уу

sudo python pi_rover.py

Хэрэв та миний бүтцийг маш ойрхон дагаж, Arduino -ийг холбосон бол терминал дээр дараах (эхний зургийг) харах болно.

Вэб хөтөч дээр роботынхоо IP хаягийг бичнэ үү (жишээлбэл миний хувьд энэ нь 192.168.1.104 байсан), та Linux хаягаар $ ifconfig командыг ашиглан ip хаягийг шалгаж болно.

/энд баярын бүжиг хий!/

Хэрэв танд ямар нэгэн асуулт байвал сэтгэгдэл дээр надаас асуугаарай. Энэхүү гарын авлага нь анхан шатны түвшний хүмүүст зориулагдсан боловч эхлэгчдэд зориулагдаагүй тул та Google дээр хийж болох зүйлсийн талаар товчхон ярьсан (жишээлбэл: системийн зургийг SD карт руу бичих, Arduino ноорог оруулах гэх мэт).

Алхам 9: Зээл

Энэхүү санаа, вэб серверийн код нь jscottb -ийн гайхалтай зааварчилгаанаас үүдэлтэй юм. Би үүнийг Arduino Uno гэх мэт илүү нийтлэг тоног төхөөрөмжийг ашиглахаар өөрчилсөн.

Thingverse -ийн 3D хэвлэсэн хэсгүүд.

www.thingiverse.com/thing:994827

www.thingiverse.com/thing:2816536/files

www.thingiverse.com/thing:661220