Isi kandungan:

Kitar Semula Robot Menyusun: 15 Langkah (dengan Gambar)
Kitar Semula Robot Menyusun: 15 Langkah (dengan Gambar)

Video: Kitar Semula Robot Menyusun: 15 Langkah (dengan Gambar)

Video: Kitar Semula Robot Menyusun: 15 Langkah (dengan Gambar)
Video: KEREN..!!! membuat robot dari kardus #kreatif #robot #craft #diy 2024, Julai
Anonim
Image
Image
Mendapatkan Data
Mendapatkan Data

Tahukah anda bahawa kadar pencemaran rata-rata dalam komuniti dan perniagaan berkisar hingga 25%? Ini bermaksud satu daripada setiap empat kitar semula yang anda buang tidak boleh dikitar semula. Ini disebabkan oleh kesalahan manusia di pusat kitar semula. Secara tradisional, pekerja akan menyusun sampah ke tong sampah yang berbeza bergantung pada bahan. Manusia pasti melakukan kesalahan dan akhirnya tidak menyusun sampah dengan betul, yang menyebabkan pencemaran. Oleh kerana pencemaran dan perubahan iklim menjadi lebih ketara dalam masyarakat hari ini, kitar semula berperanan besar dalam melindungi planet kita. Dengan menggunakan robot untuk menyaring sampah, kadar pencemaran akan berkurang secara drastik, apatah lagi jauh lebih murah dan lebih mampan. Untuk menyelesaikannya, saya membuat robot penyortiran kitar semula yang menggunakan pembelajaran mesin untuk menyusun antara bahan kitar semula yang berbeza.

Langkah 1: Bahagian

Pastikan anda mempunyai bahagian berikut untuk diikuti dengan tutorial ini:

Bahagian Bercetak 3D (lihat langkah di bawah)

Raspberry Pi RPI 4 4GB

Pemecut USB Coral Google

Arduino Uno R3

Modul Kamera Raspberry Pi V2

Bekalan Kuasa Dinding 5V 2A DC

Bekalan Kuasa DC 12V

Servos Mikro SG90 9g 4pcs.

M3 x 0.5mm Stainless Steel Self-Lock Nylon Hex Lock Nut 100pcs.

Skru Titanium Kepala Butang M3x20 10pcs.

MG996R Metal Gear Torque Analog Servo Motor 4pcs.

Kad Memori Pilih Samsung 32GB

Adafruit Flex Cable untuk Kamera Raspberry Pi - 1 meter

M2 Assortment Nut Assassment Kit Kacamata Laki-laki Brass Spacer Standoff

Kipas 60mm 12V

Kotak Projek 6.69 "x 5.12" x 2.95"

Langkah 2: Bahagian Bercetak 3D

Anda perlu mencetak 3D semua bahagian untuk lengan robot. Anda boleh mendapatkan semua fail di sini.

Langkah 3: Kod

Sila klon repositori GitHub saya untuk mengikuti tutorial ini.

Langkah 4: Mendapatkan Data

Untuk melatih model pengesanan objek yang dapat mengesan dan mengenali bahan kitar semula yang berbeza, saya menggunakan set data trashnet yang merangkumi 2527 gambar:

  • 501 gelas
  • 594 kertas
  • 403 kadbod
  • 482 plastik
  • 410 logam
  • 137 tong sampah

Gambar di atas adalah contoh gambar pada set data.

Set data ini sangat kecil untuk melatih model pengesanan objek. Hanya terdapat sekitar 100 gambar sampah yang terlalu sedikit untuk melatih model yang tepat, jadi saya memutuskan untuk membuangnya.

Anda boleh menggunakan folder pemacu google ini untuk memuat turun set data. Pastikan memuat turun fail dataset-resized.zip. Ini berisi sekumpulan gambar yang sudah diubah ukurannya ke ukuran yang lebih kecil untuk memungkinkan latihan lebih cepat. Sekiranya anda ingin mengubah saiz gambar mentah mengikut keinginan anda, sila muat turun fail dataset-original.zip.

Langkah 5: Melabel Gambar

Melabel Gambar
Melabel Gambar

Seterusnya, kita perlu melabelkan beberapa gambar bahan kitar semula yang berbeza supaya kita dapat melatih model pengesanan objek. Untuk melakukan ini, saya menggunakan labelImg, perisian percuma yang membolehkan anda melabelkan kotak pengikat objek dalam gambar.

Labelkan setiap gambar dengan label yang betul. Tutorial ini menunjukkan kepada anda bagaimana. Pastikan untuk membuat setiap kotak pembatas sedekat dengan batas setiap objek untuk memastikan model pengesanan setepat mungkin. Simpan semua fail.xml ke dalam folder.

Foto di atas menunjukkan cara melabel gambar anda.

Ini adalah pengalaman yang sangat membosankan & mematikan fikiran. Syukurlah untuk anda, saya sudah melabel semua gambar untuk anda! Anda boleh menemuinya di sini.

Langkah 6: Latihan

Dari segi latihan, saya memutuskan untuk menggunakan pembelajaran transfer menggunakan Tensorflow. Ini membolehkan kita melatih model yang tepat tanpa banyak data.

Terdapat beberapa cara untuk melakukan ini. Kita boleh melakukannya di mesin desktop tempatan kita di awan. Latihan di mesin tempatan kami akan memakan masa yang sangat lama bergantung pada seberapa kuat komputer anda dan jika anda mempunyai GPU yang kuat. Ini mungkin cara termudah pada pendapat saya, tetapi sekali lagi dengan kelajuan yang menurun.

Terdapat beberapa perkara penting yang perlu diperhatikan mengenai pemindahan pembelajaran. Anda perlu memastikan bahawa model pra-latihan yang anda gunakan untuk latihan serasi dengan Coral Edge TPU. Anda boleh mendapatkan model yang serasi di sini. Saya menggunakan model MobileNet SSD v2 (COCO). Jangan ragu untuk bereksperimen dengan orang lain juga.

Untuk melatih mesin tempatan anda, saya akan mengesyorkan mengikuti tutorial Google atau tutorial EdjeElectronics jika berjalan di Windows 10. Secara peribadi, saya telah menguji tutorial EdjeElectroncs dan mencapai kejayaan di desktop saya. Saya tidak dapat memastikan sama ada tutorial Google akan berfungsi, tetapi saya akan terkejut jika tidak.

Untuk berlatih di awan, anda boleh menggunakan AWS atau GCP. Saya dapati tutorial ini yang boleh anda cuba. Ia menggunakan TPU awan Google yang dapat melatih model pengesanan objek anda dengan pantas. Jangan ragu untuk menggunakan AWS juga.

Sama ada anda melatih mesin tempatan atau di awan, anda harus menggunakan model tensorflow yang terlatih.

Langkah 7: Menyusun Model Terlatih

Menyusun Model Terlatih
Menyusun Model Terlatih

Agar model terlatih anda dapat bekerja dengan Coral Edge TPU, anda perlu menyusunnya.

Di atas adalah rajah untuk aliran kerja.

Selepas latihan, anda perlu menyimpannya sebagai grafik beku (fail.pb). Kemudian, anda perlu menukarnya menjadi model Tensorflow Lite. Perhatikan bagaimana tertulis "Kuantiti pasca latihan". Sekiranya anda menggunakan model pra-latihan yang serasi ketika menggunakan pembelajaran transfer, anda tidak perlu melakukan ini. Lihat dokumentasi lengkap mengenai keserasian di sini.

Dengan model Tensorflow Lite, anda perlu menyusunnya ke model TPU Edge. Lihat perincian mengenai cara melakukannya di sini.

Langkah 8: Model Pengesanan Kitar Semula

Sekiranya anda tidak mahu melakukan kerumitan latihan, menukar, dan menyusun model pengesanan objek, lihat model pengesanan kitar semula saya di sini.

Langkah 9: Terapkan Model

Terapkan Model
Terapkan Model

Langkah seterusnya adalah menyiapkan Raspberry Pi (RPI) dan Edge TPU untuk menjalankan model pengesanan objek terlatih.

Pertama, sediakan RPI menggunakan tutorial ini.

Seterusnya, sediakan TPU Edge mengikuti tutorial ini.

Akhirnya, sambungkan modul kamera RPI ke raspberry pi.

Anda kini bersedia untuk menguji model pengesanan objek anda!

Sekiranya anda sudah mengklon repositori saya, anda mahu menavigasi ke direktori RPI dan jalankan fail test_detection.py:

python test_detection.py --model recycle_ssd_mobilenet_v2_quantized_300x300_coco_2019_01_03 / detect_edgetpu.tflite - label recycle_ssd_mobilenet_v2_quantized_300x300_coco_2019_01_01_01_01_01190

Tetingkap kecil akan muncul dan jika anda meletakkan botol air plastik atau bahan kitar semula lain, tetingkap itu akan mengesannya seperti gambar di atas.

Tekan huruf "q" pada papan kekunci anda untuk mengakhiri program.

Langkah 10: Bina Lengan Robotik

Bina Lengan Robotik
Bina Lengan Robotik

Lengan robot adalah lengan bercetak 3D yang saya dapati di sini. Ikuti saja tutorial menyiapkannya.

Gambar di atas menunjukkan bagaimana lengan robot saya berubah.

Pastikan anda menyambungkan pin servo ke pin Arduino I / O dalam kod saya. Sambungkan servo dari bawah ke atas lengan mengikut urutan ini: 3, 11, 10, 9, 6, 5. Tidak menghubungkannya dalam urutan ini akan menyebabkan lengan menggerakkan servo yang salah!

Uji untuk melihatnya berfungsi dengan menavigasi ke direktori Arduino dan menjalankan fail basicMovement.ino. Ini hanya akan menarik objek yang anda letakkan di depan lengan dan menjatuhkannya ke belakang.

Langkah 11: Menyambungkan RPI & Robotic Arm

Menyambungkan RPI & Robotic Arm
Menyambungkan RPI & Robotic Arm

Mula-mula kita perlu memasang modul kamera ke bahagian bawah cakar. Gambar di atas menunjukkan bagaimana rupa.

Cuba selaraskan kamera selurus mungkin untuk mengurangkan kesalahan dalam pengambilan bahan kitar semula yang dikenali. Anda perlu menggunakan kabel pita modul kamera panjang seperti yang terdapat dalam senarai bahan.

Seterusnya, anda perlu memuat naik fail roboticArm.ino ke papan Arduino.

Akhirnya, kita hanya perlu menyambungkan kabel USB antara port USB RPI dan port USB Arduino. Ini akan membolehkan mereka berkomunikasi melalui siri. Ikuti tutorial ini mengenai cara mengaturnya.

Langkah 12: Sentuhan Akhir

Sentuhan Akhir
Sentuhan Akhir
Sentuhan Akhir
Sentuhan Akhir

Langkah ini benar-benar pilihan tetapi saya ingin memasukkan semua komponen saya ke dalam kotak projek kecil yang bagus.

Gambar di atas menunjukkan bagaimana rupanya.

Anda boleh mendapatkan kotak projek dalam senarai bahan. Saya hanya menggerudi beberapa lubang dan menggunakan penutup kuningan untuk memasang elektronik. Saya juga memasang 4 kipas penyejuk untuk memastikan aliran udara berterusan melalui RPI dan TPU ketika panas.

Langkah 13: Berlari

Anda kini bersedia untuk menggunakan kedua-dua lengan robot dan RPI! Pada RPI, anda hanya boleh menjalankan fail recycle_detection.py. Ini akan membuka tetingkap dan lengan robot akan mula berjalan seperti dalam video demo! Tekan huruf "q" pada papan kekunci anda untuk mengakhiri program.

Jangan ragu untuk bermain-main dengan kod dan bersenang-senang!

Langkah 14: Kerja Masa Depan

Saya harap dapat menggunakan R. O. S. untuk mengawal lengan robot dengan pergerakan yang lebih tepat. Ini akan membolehkan pengambilan objek lebih tepat.

Langkah 15: Soalan?

Jangan ragu untuk memberikan komen di bawah jika anda mempunyai sebarang pertanyaan!

Disyorkan: