Mundarija:

Arduino, qayta ishlangan qismlar va dlibli konfet tashlaydigan robot: 6 qadam
Arduino, qayta ishlangan qismlar va dlibli konfet tashlaydigan robot: 6 qadam

Video: Arduino, qayta ishlangan qismlar va dlibli konfet tashlaydigan robot: 6 qadam

Video: Arduino, qayta ishlangan qismlar va dlibli konfet tashlaydigan robot: 6 qadam
Video: Arduinouz#5 INPUT OUTPUT,raqamli kirish chiqish portlari 2024, Iyul
Anonim
Arduino, qayta ishlangan qismlar va Dlib bilan konfet tashlaydigan robot
Arduino, qayta ishlangan qismlar va Dlib bilan konfet tashlaydigan robot

Qayta ishlangan bir nechta qismlar, Arduino + dvigatel qalqoni va Dlib kompyuter dasturidan foydalanib, siz yuzni aniqlaydigan qand tashlagichni yasashingiz mumkin.

Materiallar:

  • Yog'och ramka
  • Noutbuk/kompyuter (yaxshisi Raspberry Pi -dan kuchliroq!).
  • Arduino (Yaxshisi Uno yoki sizning motor qalqoningizga mos keladigan.)
  • Arduino dvigatel qalqoni (men eski Adafruit qalqonini ishlatardim, hozir ham shu erda sotiladi)
  • Har qanday standart veb -kamera
  • Kichik kir yuvish mashinasi

Qayta ishlangan qismlar:

  • Koson (eski metall quti yaxshi ishlaydi.)
  • Qadamli dvigatel, demontaj qilingan eski printerdan shahar dvigateli.
  • Eski printer quvvat manbai
  • Shakar tarqatuvchi (katta yogurtli idish).

Tayyor mahsulotning ichki qismi ilova qilingan umumiy ko'rinishga o'xshaydi.

Ogohlantirish

Kabelni ulash/qayta ulashdan oldin Arduino/dvigatel sozlamalarini o'chirib qo'yganingizga ishonch hosil qiling. Quvvatni to'g'ri qutbga ulaganingizga ishonch hosil qiling!

Bu Arduino va kompyuteringizga o'rnatishingiz yoki kompilyatsiya qilishingiz kerak bo'lgan dasturlardan foydalangan holda o'rta darajali loyihadir. Ko'rsatmalar boshqacha bo'lishi mumkin va Ubuntu -da ishlagan.

Agar siz eski Adafruit dvigatel qalqonidan foydalanmasangiz, Arduino kodini ishlatayotgan dvigatel qalqoniga moslashtirishingiz kerak bo'lishi mumkin.

1 -qadam: Dvigatelni burg'ulash, ulash va o'rnatish

Dvigatelni burg'ulash, ulash va o'rnatish
Dvigatelni burg'ulash, ulash va o'rnatish
Dvigatelni burg'ulash, ulash va o'rnatish
Dvigatelni burg'ulash, ulash va o'rnatish

Kosonda teshiklarni burab, qadam motorini ulang, shunda veb -kamera tepada harakatlana oladi va dispenser pastda aylana oladi.

Bosqichli motorlar asta -sekin emas, balki orqaga/oldinga ishlaydigan shahar motorlaridan (2 simli) farqli o'laroq, kichik qadamlarda (4 sim) harakatlanishi mumkin.

Shahar dvigatelida 2 ta sim bor (har ikki tomonda ham ishlaydi), ixtiyoriy qadam dvigatelida 4 ta ikkita rulon bo'ladi (bu erda tasvirlanganidek, rulmanlarning qayerga ulanganligini ko'rish uchun multimetrli qarshilik o'lchagich bilan tekshiring.)

Agar siz mening misolimdagidek eski Adafruit qalqonidan foydalansangiz, siz shahar konfetlarini aylantiruvchi dvigatelni #3 -dvigatelga va qadamni dastlabki ikkita dvigatelga (#1, #2) o'z hujjatlarida tasvirlanganidek ulashingiz kerak.

Ulagandan so'ng, dvigatellarni Arduino -ga ulangan Arduino dvigatel qalqoniga ulang. Eng yaxshi natijalarga erishish uchun dvigatellarni ikkinchi quvvat manbai bilan jihozlash tavsiya etiladi, uni siz ikkinchi darajali do'kondan 2 dollarlik devorli siğilga shahar oqimiga ulashingiz mumkin.

2 -qadam: konteynerni ulash

Konteynerni ulash
Konteynerni ulash
Konteynerni ulash
Konteynerni ulash
Konteynerni ulash
Konteynerni ulash
Konteynerni ulash
Konteynerni ulash

Qatiq yoki boshqa katta plastik idishning o'rtasini o'lchang va dvigatelning uchidan kattaroq tutqichni burg'ulang.

Konteynerni kichik yuvish vositasi yordamida qutiga mahkamlang - Krazy -uni idishning pastki qismiga va elektr motor miliga ulang.

Yelimni to'liq quritish uchun bir -ikki kun quriting - egri bo'lmagani uchun quti va aylanadigan idish orasiga kichik oraliq qo'yishingiz mumkin.

3 -qadam: Candy Thrower uchun kichik teshik qiling

Shakar tashlagich uchun kichik teshik qiling
Shakar tashlagich uchun kichik teshik qiling

Spinner to'g'ri biriktirilgandan so'ng, o'tkir pichoqning uchidan foydalanib, konfet uchidan chiqarib yuboriladigan kichik teshikni belgilang - bu labning pastki qismidan pastda bo'lishi kerak.

(Eng yaxshi natijaga erishish uchun, dispenserning qopqog'ining uchiga taxminan 30 dona konfet yuklash mumkin, bu pastki bo'ladi.)

O'tkir pichoq bilan muloyimlik bilan chizib turing, u chiqib ketguncha, kichik teshik qoldiring (kerak bo'lganda teshikni keyinroq kengaytirishingiz mumkin).

4 -qadam: Arduino -ni sozlash

Agar siz Arduino dasturini o'rnatmagan bo'lsangiz, uni oling

www.arduino.cc/en/Main/Software

Har qanday so'nggi versiya ishlashi kerak.

DC/Stepper dvigatelini Arduino Shield misol kodida keltirilgan misollar bilan sinab ko'ring.

Agar siz ushbu qalqondan foydalanayotgan bo'lsangiz (hali ham ba'zi sotuvchilarda mavjud), siz mening kodimni to'g'ridan -to'g'ri ishlatishingiz mumkin:

github.com/programmin1/HowToTrainYourRobot…

Siz sinovdan o'tkazganingizdan va Arduino seriyali oynasiga "d" ni kiritib, konfet tarqatishingiz mumkin bo'lsa, buni Dlib -ni tanuvchisiga ulash vaqti keldi.

5 -qadam: Dlib -ni sozlash

Dlib (https://dlib.net/) tasvirni tanib olish uchun ochiq manbali, ishlatish uchun qulay kutubxonani taqdim etadi. Python Dlib modulini quyidagicha o'rnating:

sudo pip Dlib -ni o'rnating

- yoki -

sudo easy_install Dlib

Dlib o'rnatilishini va kompilyatsiya qilinishini kuting. (Sizga bir nechta operativ xotirali kompyuter kerak bo'ladi, yoki siz uzoq kutishingiz va almashtirish maydonini kengaytirishingiz kerak bo'ladi). Kod shuningdek veb -kamera moduli uchun OpenCV -dan foydalanadi, shuning uchun quyidagilarni bajaring:

sudo apt-get install python-opencv

Agar siz MacOS yoki boshqa operatsion tizimlardan foydalansangiz, o'rnatish bosqichlari farq qilishi mumkin.

Endi yuzni aniqlash belgilarini oling

dlib.net/files/shape_predictor_68_face_land…

Uni oching (Arxiv menejeri/7zip bilan) va uni HOME/Yuklamalar/shakl_predictor_68_face_landmarks.dat -ga joylashtiring.

6-qadam: Yuzni aniqlash moslamasini robotingizga ulash

Yuz tanib oluvchini robotingizga ulash
Yuz tanib oluvchini robotingizga ulash

Arduino-ni boshqaradigan USB-ni kompyuterga ulang va "/dev/ttyACM0" faylining mavjudligini tekshiring (bu ketma-ket buyruqlarni yuboradigan qurilma). Agar u ishlamasa va uni ulashda /dev -da ko'rsatiladigan boshqa shunga o'xshash nomli katalog bo'lsa, repo -dagi faceDetectThreadCorrelationCV2FaceSmile.py faylidagi /dev /ttyACM0 -ni almashtiring.

Veb -kamerani ulang (agar ishlatilayotgan kompyuterda o'rnatilgan veb -kamera bo'lmasa) va bu.py faylini buyruq satrida yoki Geany matn muharririda Run/F5 buyrug'i bilan ishga tushiring. Agar siz noutbukda ikkinchi/tashqi veb -kameradan foydalanmoqchi bo'lsangiz, "VideoCapture (0)" ni "VideoCapture (1)" ga o'zgartirib, ikkinchi veb -kamerani ishlatishingiz mumkin, uni robot qutisiga qadam dvigateliga qo'yishingiz mumkin..

Agar hammasi yaxshi bo'lsa, veb -kamera oldida yuz turganida tabassumning konturini ko'rasiz.

Jadvalning funktsional imkoniyatlaridan Dlib bergan nuqtalardan tabassumni aniqlashning qanday ishlashini bilish uchun.py faylining umumiy ko'rinishi va manba kodini o'qing.:)

Tavsiya: