Isi kandungan:

Robot Melempar Gula Dengan Arduino, Bahagian Kitar Semula, dan Dlib .: 6 Langkah
Robot Melempar Gula Dengan Arduino, Bahagian Kitar Semula, dan Dlib .: 6 Langkah

Video: Robot Melempar Gula Dengan Arduino, Bahagian Kitar Semula, dan Dlib .: 6 Langkah

Video: Robot Melempar Gula Dengan Arduino, Bahagian Kitar Semula, dan Dlib .: 6 Langkah
Video: Bengkel KSSR RBT (Semakan 2017) Tahun 5 JPN WPKL 2024, November
Anonim
Robot Melempar Gula Dengan Arduino, Bahagian Kitar Semula, dan Dlib
Robot Melempar Gula Dengan Arduino, Bahagian Kitar Semula, dan Dlib

Dengan beberapa bahagian yang dikitar semula, pelindung motor Arduino +, dan perisian komputer Dlib, anda boleh membuat pelontar gula-gula yang dapat dikesan wajah.

Bahan:

  • Kerangka kayu
  • Komputer riba / komputer (lebih disukai yang lebih hebat daripada Raspberry Pi!).
  • Arduino (Sebaiknya Uno, atau yang sesuai dengan pelindung motor anda.)
  • Perisai motor Arduino (saya menggunakan perisai Adafruit lama, seperti yang masih dijual di sini)
  • Sebarang kamera web standard
  • Mesin basuh kecil

Bahagian kitar semula:

  • Sarung (kotak logam lama berfungsi dengan baik.)
  • Motor stepper, motor DC dari pencetak lama yang dibongkar.
  • Bekalan kuasa pencetak lama
  • Dispenser gula-gula (Bekas yogurt besar).

Inner produk siap akan kelihatan seperti gambaran keseluruhan yang dilampirkan.

Amaran

Pastikan anda mencabut kuasa ke persediaan Arduino / motor sebelum pendawaian / pendawaian semula. Pastikan untuk memasang kuasa dengan kekutuban yang betul!

Ini adalah projek peringkat pertengahan yang menggunakan Arduino dan perisian yang anda perlukan untuk memasang atau menyusun di komputer anda. Arahan mungkin berbeza dan diuji bekerja di Ubuntu.

Anda mungkin perlu menyesuaikan kod Arduino dengan pelindung motor apa pun yang anda gunakan, jika anda tidak menggunakan pelindung motor Adafruit lama.

Langkah 1: Bor, Sambungkan dan Pasang Motor

Bor, Sambungkan dan Pasang Motor
Bor, Sambungkan dan Pasang Motor
Bor, Sambungkan dan Pasang Motor
Bor, Sambungkan dan Pasang Motor

Bor lubang pada casing, pasangkan motor stepper sehingga kamera web dapat bergerak di atas, dan dispenser dapat berputar di bahagian bawah.

Motor stepper dapat bergerak secara bertahap kecil (4 wayar), tidak seperti motor DC (2 wayar) yang bergerak ke belakang / ke depan, bukan di tangga.

Motor DC mempunyai 2 wayar (berjalan dengan cara yang sama), motor stepper pilihan akan mempunyai 4 dalam dua gegelung (uji dengan meter rintangan multimeter untuk melihat di mana gegelung itu berwayar, seperti yang dijelaskan di sini.)

Sekiranya anda menggunakan pelindung Adafruit lama seperti dalam contoh saya, anda harus menyambungkan motor pemutar permen DC ke motor # 3, dan stepper ke dua motor pertama (# 1, # 2) seperti yang dijelaskan dalam dokumentasi mereka.

Setelah disambungkan, pasangkan motor ke Arduino Motor Shield yang dipasang pada Arduino. Untuk hasil terbaik, disyorkan untuk mempunyai bekalan kuasa kedua ke motor, yang mana anda boleh memasang hingga output DC pada dinding kutil $ 2 dari kedai barang terpakai.

Langkah 2: Memasang Bekas

Memasang Bekas
Memasang Bekas
Memasang Bekas
Memasang Bekas
Memasang Bekas
Memasang Bekas
Memasang Bekas
Memasang Bekas

Ukur bahagian tengah bekas yogurt atau bekas plastik besar yang lain, dan gerakkan penahan yang lebih besar daripada hujung motor.

Pasang bekas ke dalam kotak menggunakan mesin basuh kecil - Krazy-lekatkan ke bahagian bawah bekas, dan ke gelendong motor elektrik.

Biarkan lem kering selama satu atau dua hari sehingga sembuh sepenuhnya - anda mungkin mahu meletakkan spacer kecil di antara kotak dan bekas berputar untuk memastikannya tidak bengkok.

Langkah 3: Buat Lubang Kecil untuk Candy Thrower

Buat Lubang Kecil untuk Candy Thrower
Buat Lubang Kecil untuk Candy Thrower

Setelah pemintal dilekatkan dengan betul, gunakan hujung pisau tajam untuk menggariskan lubang kecil agar gula-gula dibuang dari hujung - ini mestilah tepat di atas bahagian bawah, di mana bibir berada.

(Untuk hasil terbaik, kira-kira 30 keping gula-gula boleh dimuat ke hujung penutup dispenser, yang akan berada di bahagian bawah.)

Terus garis dengan lembut dengan pisau tajam sehingga terkeluar, meninggalkan lubang kecil (anda boleh mengembang lubang kemudian jika perlu).

Langkah 4: Persediaan Arduino

Sekiranya anda belum memasang perisian Arduino, dapatkannya

www.arduino.cc/en/Main/Software

Sebarang versi terkini mesti berfungsi.

Uji motor DC / Stepper dengan contoh yang diberikan dalam kod contoh Arduino Shield anda.

Sekiranya anda menggunakan perisai ini (masih tersedia dari beberapa penjual semula), anda boleh menggunakan kod saya secara langsung:

github.com/programmin1/HowToTrainYourRobot…

Setelah anda menguji dan dapat mengeluarkan gula-gula dengan memasukkan "d" di tetingkap bersiri Arduino, sudah tiba masanya untuk menghubungkan ini ke pengecam Dlib.

Langkah 5: Persediaan Dlib

Dlib (https://dlib.net/) menyediakan pustaka sumber terbuka dan mudah digunakan untuk pengecaman gambar. Pasang modul Python Dlib menggunakan:

sudo pip pasang Dlib

- atau -

sudo easy_install Dlib

Tunggu Dlib dipasang dan disusun. (Anda memerlukan komputer dengan beberapa pilihan RAM, atau anda perlu menunggu lama dan memperluas ruang pertukaran). Kod ini juga menggunakan OpenCV untuk modul kamera web, jadi jalankan:

sudo apt-get install python-opencv

Langkah pemasangan mungkin berbeza jika anda menggunakan MacOS atau sistem operasi lain.

Sekarang ambil data mercu tanda pengesanan wajah dari

dlib.net/files/shape_predictor_68_face_land…

Buka zip (dengan Pengurus Arkib / 7zip) dan letakkan di RUMAH / Muat turun / shape_predictor_68_face_landmarks.dat

Langkah 6: Menghubungkan Pengecam Wajah ke Robot Anda

Menghubungkan Pengecam Wajah ke Robot Anda
Menghubungkan Pengecam Wajah ke Robot Anda

Pasang USB pengawal Arduino ke komputer dan sahkan bahawa fail "/ dev / ttyACM0" ada (ini adalah peranti untuk menghantar arahan bersiri). Sekiranya ia tidak berfungsi dan direktori lain yang serupa dengan nama yang muncul di / dev semasa anda memasangnya, ganti / dev / ttyACM0 di file faceDetectThreadCorrelationCV2FaceSmile.py di repo.

Pasang kamera web (jika tidak ada kamera web terpasang di komputer yang anda gunakan), dan jalankan fail.py itu di baris arahan atau dengan perintah Run / F5 di editor teks Geany. Sekiranya anda ingin menggunakan kamera web kedua / luaran pada komputer riba, anda mungkin ingin menukar "VideoCapture (0)" menjadi "VideoCapture (1)" untuk menggunakan kamera web kedua, yang boleh anda letakkan di motor stepper di atas kotak robot.

Sekiranya semuanya berjalan lancar, anda akan melihat garis besar senyuman ketika wajah berada di hadapan kamera web.

Baca gambaran keseluruhan dan kod sumber fail.py untuk melihat matematik bagaimana pengesanan senyuman berfungsi dari titik yang diberikan oleh Dlib dari fungsi tanda muka.:)

Disyorkan: