Mundarija:

Qayta ishlash robotini saralash: 15 qadam (rasmlar bilan)
Qayta ishlash robotini saralash: 15 qadam (rasmlar bilan)

Video: Qayta ishlash robotini saralash: 15 qadam (rasmlar bilan)

Video: Qayta ishlash robotini saralash: 15 qadam (rasmlar bilan)
Video: Faqat dahogina buni 15 soniyada yechishi mumkin! O'zingizni sinab ko'ring!!! 2024, Iyul
Anonim
Image
Image
Ma'lumot olish
Ma'lumot olish

Bilasizmi, jamoalar va korxonalarda o'rtacha ifloslanish darajasi 25%gacha. Bu shuni anglatadiki, siz tashlagan har to'rtta chiqindidan bittasi qayta ishlanmaydi. Buning sababi, qayta ishlash markazlarida odamlarning xatosi. An'anaga ko'ra, ishchilar axlatni materialga qarab turli xil qutilarga ajratadilar. Odamlar xato qilishlari va axlatni to'g'ri tartiblamasliklari kerak, bu esa ifloslanishga olib keladi. Zamonaviy jamiyatda ifloslanish va iqlim o'zgarishi yanada muhim ahamiyat kasb etar ekan, qayta ishlash sayyoramizni himoya qilishda katta rol o'ynaydi. Chiqindilarni ajratish uchun robotlardan foydalansangiz, ifloslanish darajasi keskin kamayadi. Buni hal qilish uchun men turli xil qayta ishlash materiallarini saralash uchun mashinasozlik texnologiyasidan foydalangan holda qayta ishlashni saralash robotini yaratdim.

1 -qadam: qismlar

Qo'llanma bilan birga quyidagi qismlarga ega bo'lishingizga ishonch hosil qiling:

3D bosilgan qismlar (quyidagi bosqichga qarang)

Raspberry Pi RPI 4 4 Gb

Google Coral USB tezlatgichi

Arduino Uno R3

Raspberry Pi kamera moduli V2

5V 2A shahar devorli quvvat manbai

DC 12V quvvat manbai

SG90 9g mikro servo 4 dona.

M3 x 0,5 mm zanglamaydigan po'latdan o'z-o'zidan qulflanadigan neylon olti burchakli somun 100 dona.

M3x20 tugmachali titan vintlardek 10 dona.

MG996R metall tishli moment analog analog servo dvigateli 4 dona.

Samsung 32GB xotira kartasini tanlang

Raspberry Pi kamerasi uchun Adafruit Flex kabeli - 1 metr

M2 Erkak Ayol Guruch Spacer Standoff Vint Nut Assortimenti To'plami

60 mm 12V fanati

6.69 "x 5.12" x 2.95 "Loyiha qutisi

2 -qadam: 3D bosilgan qismlar

Robot qo'lining barcha qismlarini 3D bosib chiqarish kerak bo'ladi. Bu erda barcha fayllarni topishingiz mumkin.

3 -qadam: kod

Iltimos, ushbu qo'llanmani bajarish uchun GitHub omborimni klonlang.

4 -qadam: ma'lumotlarni olish

Turli xil qayta ishlash materiallarini aniqlaydigan va taniy oladigan ob'ektlarni aniqlash modelini o'rgatish uchun men 2527 ta tasvirni o'z ichiga olgan axlat qutisi ma'lumotlar bazasidan foydalandim:

  • 501 stakan
  • 594 ta qog'oz
  • 403 ta karton
  • 482 plastmassa
  • 410 metall
  • 137 axlat

Yuqoridagi rasm ma'lumotlar to'plamidan olingan rasmlarga misol.

Bu ma'lumotlar to'plami ob'ektni aniqlash modelini o'rgatish uchun juda kichikdir. To'g'ri modelni o'rgatish uchun juda oz bo'lgan 100 ga yaqin axlat rasmlari bor, shuning uchun men ularni qoldirishga qaror qildim.

Ma'lumotlar to'plamini yuklab olish uchun siz ushbu Google disk papkasidan foydalanishingiz mumkin. Database-resized.zip faylini yuklaganingizga ishonch hosil qiling. U tezroq o'qitishga imkon berish uchun allaqachon kichikroq hajmga o'zgartirilgan tasvirlar to'plamini o'z ichiga oladi. Agar siz rasmlarning hajmini o'zingiz xohlagan darajada o'zgartirmoqchi bo'lsangiz, dataset-original.zip faylini yuklab olishingiz mumkin.

5 -qadam: Rasmlarni etiketkalash

Rasmlarni etiketkalash
Rasmlarni etiketkalash

Keyinchalik, biz ob'ektlarni aniqlash modelini o'rgatish uchun turli xil qayta ishlanadigan materiallarning bir nechta tasvirini belgilashimiz kerak. Buni amalga oshirish uchun men ob'ektlarni chegaralovchi katakchalarni rasmlarda belgilash imkonini beradigan labelImg bepul dasturidan foydalandim.

Har bir tasvirni tegishli yorliq bilan belgilang. Bu ko'rsatma sizga qanday qilib ko'rsatib beradi. Aniqlash modeli iloji boricha aniq bo'lishini ta'minlash uchun har bir chegara qutisini har bir ob'ekt chegarasiga yaqin qo'yganingizga ishonch hosil qiling. Barcha.xml fayllarini papkaga saqlang.

Yuqoridagi fotosuratda rasmlaringizni qanday etiketlash kerakligi ko'rsatilgan.

Bu juda zerikarli va aqldan ozdiradigan tajriba. Sizga minnatdorchilik bildiraman, men siz uchun barcha rasmlarni belgilab qo'yganman! Siz bu erda topishingiz mumkin.

6 -qadam: Trening

Ta'lim nuqtai nazaridan, men Tensorflow yordamida transferli o'qishni ishlatishga qaror qildim. Bu bizga katta hajmli ma'lumotsiz to'g'ri modelni o'rgatish imkonini beradi.

Buni amalga oshirishning bir necha yo'li bor. Biz buni bulutdagi mahalliy ish stolida qilishimiz mumkin. Mahalliy mashinamizda o'qish sizning kompyuteringiz qanchalik kuchli va GPU -ga bog'liq. Menimcha, bu, ehtimol, eng oson yo'li, lekin tezlikning pastligi bilan.

Ko'chirishni o'rganish jarayonida e'tiborga olish kerak bo'lgan asosiy narsalar mavjud. Siz mashg'ulot uchun oldindan tayyorlangan model Coral Edge TPU bilan mos kelishiga ishonch hosil qilishingiz kerak. Bu erda mos modellarni topishingiz mumkin. Men MobileNet SSD v2 (COCO) modelini ishlatardim. Boshqalar bilan ham tajriba o'tkazishga harakat qiling.

Mahalliy mashinangizda mashg'ulot o'tkazish uchun men Windows 10 da ishlayotgan bo'lsa, Google yoki EdjeElectronics o'quv qo'llanmasini o'qishni maslahat berardim. Shaxsan men EdjeElectroncs qo'llanmasini sinab ko'rdim va ish stolida muvaffaqiyatga erishdim. Google o'quv qo'llanmasi ishlaydimi yoki yo'qmi, men tasdiqlay olmayman, lekin bu ishlamasa, men hayron bo'lardim.

Bulutda mashq qilish uchun siz AWS yoki GCP dan foydalanishingiz mumkin. Men sinab ko'rishingiz mumkin bo'lgan ushbu darslikni topdim. U Google -ning bulutli TPU -laridan foydalanadi, bu sizning ob'ektni aniqlash modelini juda tez o'rgatadi. AWS -dan ham bemalol foydalaning.

Siz mahalliy mashinada yoki bulutda mashq qilasizmi, oxir -oqibat o'rgatilgan tensorflow modeliga ega bo'lishingiz kerak.

7 -qadam: O'rganilgan modelni kompilyatsiya qilish

O'qitilgan modelni yig'ish
O'qitilgan modelni yig'ish

Siz o'rgatgan model Coral Edge TPU bilan ishlashi uchun siz uni kompilyatsiya qilishingiz kerak.

Yuqorida ishning sxemasi ko'rsatilgan.

Treningdan so'ng uni muzlatilgan grafik (.pb fayli) sifatida saqlash kerak. Keyin uni Tensorflow Lite modeliga aylantirishingiz kerak. "Mashg'ulotdan keyingi kvantlashtirish" qanday yozilganiga e'tibor bering. Agar siz o'qitishni o'tkazish paytida mos keladigan oldindan o'qitilgan modellardan foydalansangiz, buni qilishingiz shart emas. Muvofiqlik haqidagi to'liq hujjatlarni bu erda ko'ring.

Tensorflow Lite modeli bilan siz uni Edge TPU modeliga kompilyatsiya qilishingiz kerak. Buni qanday qilish haqida batafsil ma'lumotni bu erda ko'ring.

8 -qadam: Qayta ishlab chiqarishni aniqlash modeli

Agar siz ob'ektni aniqlash modelini o'rgatish, konvertatsiya qilish va kompilyatsiya qilishni boshdan kechirishni istamasangiz, bu erda qayta ishlashni aniqlash modelini ko'rib chiqing.

9 -qadam: modelni joylashtiring

Modelni joylashtiring
Modelni joylashtiring

Keyingi qadam - o'rgatilgan ob'ektni aniqlash modelini ishga tushirish uchun Raspberry Pi (RPI) va Edge TPU ni sozlash.

Birinchidan, ushbu qo'llanma yordamida RPI -ni o'rnating.

Keyin, ushbu qo'llanmadan so'ng Edge TPU -ni o'rnating.

Nihoyat, RPI kamera modulini malina pi ga ulang.

Endi siz ob'ektni aniqlash modelini sinab ko'rishga tayyormiz!

Agar siz mening omborimni allaqachon klonlagan bo'lsangiz, siz RPI katalogiga o'tishni va test_detection.py faylini ishga tushirishni xohlaysiz:

python test_detection.py --model recycle_ssd_mobilenet_v2_quantized_300x300_coco_2019_01_03/detect_edgetpu.tflite -labels recycle_ssd_mobilenet_v2_quantized_300x300_01_0_0

Kichkina oyna ochilishi kerak va agar siz plastik suv idishi yoki boshqa qayta ishlash materialini qo'ysangiz, u yuqoridagi rasmga o'xshab aniqlanishi kerak.

Dasturni tugatish uchun klaviaturadagi "q" harfini bosing.

10 -qadam: Robot qo'lini yarating

Robot qo'lini yarating
Robot qo'lini yarating

Robot qo'l - men bu erda topilgan 3D bosma qo'l. Uni sozlash bo'yicha ko'rsatmaga amal qiling.

Yuqoridagi rasmda mening robot qo'lim qanday paydo bo'lganligi ko'rsatilgan.

Servo pimlarini mening kodimdagi Arduino I/U pinlariga ulanganingizga ishonch hosil qiling. Servolarni qo'lning pastidan yuqorisiga quyidagi tartibda ulang: 3, 11, 10, 9, 6, 5. Uni shu tartibda ulamaslik qo'lning noto'g'ri servo harakatlanishiga olib keladi!

Arduino katalogiga o'ting va basicMovement.ino faylini ishga tushiring. Bu qo'lning oldiga qo'ygan narsangizni ushlab, orqasiga tashlab yuboradi.

11 -qadam: RPI va Robotik qo'lni ulash

RPI va robot qo'lini ulash
RPI va robot qo'lini ulash

Avval kamera modulini panjaning pastki qismiga o'rnatishimiz kerak. Yuqoridagi rasmda u qanday ko'rinishi kerakligi ko'rsatilgan.

Qayta ishlangan materialni tanib olishda xatoliklarni kamaytirish uchun kamerani iloji boricha tekis qilib qo'yishga harakat qiling. Materiallar ro'yxatida ko'rinib turganidek, uzun kamera modulining tasma kabelidan foydalanish kerak bo'ladi.

Keyin robotikArm.ino faylini Arduino kartasiga yuklashingiz kerak.

Nihoyat, biz USB kabelini RPI USB porti va Arduino USB porti orasiga ulashimiz kerak. Bu ularga serial orqali muloqot qilish imkonini beradi. Buni qanday o'rnatish kerak, bu qo'llanmani bajaring.

12 -qadam: Yakuniy teginishlar

Yakuniy teginishlar
Yakuniy teginishlar
Yakuniy teginishlar
Yakuniy teginishlar

Bu qadam mutlaqo ixtiyoriy, lekin men barcha komponentlarimni chiroyli kichik loyiha qutisiga joylashtirishni yaxshi ko'raman.

Yuqoridagi rasmlar uning qanday ko'rinishini ko'rsatadi.

Materiallar ro'yxatida siz loyiha qutisini topishingiz mumkin. Men faqat bir nechta teshiklarni burg'iladim va elektronni o'rnatish uchun guruch tayanchlaridan foydalandim. Men, shuningdek, issiq bo'lganda RPI va TPU orqali doimiy havo oqimini ushlab turish uchun 4 ta sovutish fanatini o'rnatdim.

13 -qadam: yugurish

Endi siz robot qo'lini ham, RPIni ham yoqishga tayyormiz! RPIda siz recycle_detection.py faylini ishga tushirishingiz mumkin. Bu oynani ochadi va robot qo'l xuddi demo videodagi kabi ishlay boshlaydi! Dasturni tugatish uchun klaviaturadagi "q" harfini bosing.

Kod bilan o'ynang va dam oling!

14 -qadam: Kelgusi ish

Umid qilamanki, R. O. S. aniqroq harakatlar bilan robot qo'lini boshqarish. Bu ob'ektlarni aniqroq yig'ish imkonini beradi.

15 -qadam: Savollar bormi?

Agar sizda biron bir savol bo'lsa, quyida izoh qoldiring!

Tavsiya: