Talaan ng mga Nilalaman:

Recycle Sorting Robot: 15 Hakbang (na may Mga Larawan)
Recycle Sorting Robot: 15 Hakbang (na may Mga Larawan)

Video: Recycle Sorting Robot: 15 Hakbang (na may Mga Larawan)

Video: Recycle Sorting Robot: 15 Hakbang (na may Mga Larawan)
Video: DR. VICKI BELO's TRANSFORMATION💖🤩#vickibelo #doctor #transformation #viral #trending 2024, Nobyembre
Anonim
Image
Image
Pagkuha ng Data
Pagkuha ng Data

Alam mo bang ang average rate ng kontaminasyon sa mga pamayanan at negosyo ay umaabot sa 25%? Nangangahulugan iyon na ang isa sa bawat apat na piraso ng pag-recycle na itinapon mo ay hindi maa-recycle. Ito ay sanhi sanhi ng pagkakamali ng tao sa mga sentro ng pag-recycle. Ayon sa kaugalian, ang mga manggagawa ay aayos sa pamamagitan ng basurahan sa iba't ibang mga bins depende sa materyal. Kailangang magkamali ang mga tao at magtapos na hindi ayusin nang maayos ang basura, na hahantong sa kontaminasyon. Habang ang polusyon at pagbabago ng klima ay naging higit na makabuluhan sa lipunan ngayon, ang pag-recycle ay may malaking bahagi sa pagprotekta sa ating planeta. Sa pamamagitan ng paggamit ng mga robot upang maiayos ayon sa basurahan, ang mga rate ng kontaminasyon ay mababawas ng husto, hindi pa mailalagay ang mas mura at mas napapanatiling. Upang malutas ito, lumikha ako ng isang robot ng pag-uuri ng recycle na gumagamit ng pag-aaral ng makina upang pag-uri-uriin sa pagitan ng iba't ibang mga materyales sa recycle.

Hakbang 1: Mga Bahagi

Tiyaking mayroon kang mga sumusunod na bahagi na susundan kasama ng tutorial na ito:

Mga Naka-print na Bahaging 3D (tingnan ang hakbang sa ibaba)

Raspberry Pi RPI 4 4GB

Google Coral USB Accelerator

Arduino Uno R3

Raspberry Pi Camera Module V2

5V 2A DC Wall Power Supply

DC 12V Power Supply

SG90 9g Micro Servos 4pcs.

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

M3x20 Button Head Titanium Screws 10pcs.

MG996R Metal Gear Torque Analog Servo Motor 4pcs.

Samsung 32GB Piliin ang Memory Card

Adafruit Flex Cable para sa Raspberry Pi Camera - 1 metro

M2 Lalaki Babae Brass Spacer Standoff Screw Nut Assortment Kit

60mm 12V Fan

6.69 "x 5.12" x 2.95 "Project Box

Hakbang 2: Mga Naka-print na Bahaging 3D

Kakailanganin mong i-print ang 3D sa lahat ng mga bahagi para sa robotic arm. Mahahanap mo ang lahat ng mga file dito.

Hakbang 3: Code

Mangyaring i-clone ang aking GitHub repository upang sundin kasama ang tutorial na ito.

Hakbang 4: Pagkuha ng Data

Upang sanayin ang modelo ng pagtuklas ng bagay na makakakita at makikilala ang iba't ibang mga materyales sa pag-recycle, ginamit ko ang trashnet dataset na may kasamang 2527 na mga imahe:

  • 501 baso
  • 594 papel
  • 403 karton
  • 482 na plastik
  • 410 metal
  • 137 basurahan

Ang larawan sa itaas ay isang halimbawa ng isa sa mga imahe mula sa dataset.

Napakaliit ng dataset na ito upang sanayin ang isang modelo ng pagtuklas ng bagay. Mayroon lamang tungkol sa 100 mga imahe ng basurahan na masyadong maliit upang sanayin ang isang tumpak na modelo, kaya't nagpasya akong iwanan ito.

Maaari mong gamitin ang folder ng google drive na ito upang i-download ang dataset. Tiyaking i-download ang file na dataset-resized.zip. Naglalaman ito ng hanay ng mga imahe na nabago na ang laki sa isang mas maliit na sukat upang payagan ang mas mabilis na pagsasanay. Kung nais mong baguhin ang laki sa mga hilaw na imahe ayon sa gusto mo, huwag mag-atubiling i-download ang file na data-original.zip.

Hakbang 5: Pagbibigay ng label sa Mga Larawan

Pagmarka ng mga Larawan
Pagmarka ng mga Larawan

Susunod, kailangan naming lagyan ng label ang maraming mga imahe ng iba't ibang mga materyales sa pag-recycle upang maaari naming sanayin ang modelo ng pagtuklas ng bagay. Upang magawa ito, gumamit ako ng labelImg, isang libreng software na nagbibigay-daan sa iyo upang lagyan ng label ang mga hangganan ng object object sa mga imahe.

Lagyan ng label ang bawat imahe ng wastong label. Ipinapakita sa iyo ng tutorial na ito kung paano. Tiyaking gawin ang bawat kahon ng hangganan na malapit sa hangganan ng bawat bagay upang matiyak na ang modelo ng pagtuklas ay tumpak hangga't maaari. I-save ang lahat ng mga.xml file sa isang folder.

Ipinapakita ng larawan sa itaas kung paano lagyan ng label ang iyong mga imahe.

Ito ay isang napaka-nakakapagod at nakakapagod na karanasan. Sa kabutihang palad para sa iyo, na-label ko na ang lahat ng mga imahe para sa iyo! Mahahanap mo ito rito.

Hakbang 6: Pagsasanay

Sa mga tuntunin ng pagsasanay, nagpasya akong gumamit ng pag-aaral ng paglilipat gamit ang Tensorflow. Pinapayagan kaming sanayin ang isang disenteng tumpak na modelo nang walang isang malaking halaga ng data.

Mayroong isang pares ng mga paraan na magagawa natin ito. Maaari natin itong gawin sa aming lokal na desktop machine sa cloud. Ang pagsasanay sa aming lokal na makina ay tatagal ng napakahabang oras depende sa kung gaano kalakas ang iyong computer at kung mayroon kang isang malakas na GPU. Marahil ito ang pinakamadaling paraan sa aking palagay, ngunit muli na may downside ng bilis.

Mayroong ilang mga pangunahing bagay na dapat tandaan tungkol sa pag-aaral ng paglipat. Kailangan mong tiyakin na ang paunang sanay na modelo na ginagamit mo para sa pagsasanay ay katugma sa Coral Edge TPU. Maaari kang makahanap ng mga katugmang modelo dito. Ginamit ko ang modelo ng MobileNet SSD v2 (COCO). Huwag mag-atubiling mag-eksperimento din sa iba.

Upang sanayin ang iyong lokal na makina, inirerekumenda ko ang pagsunod sa tutorial ng Google o EdjeElectronics tutorial kung tumatakbo sa Windows 10. Personal, nasubukan ko ang EdjeElectroncs tutorial at naabot ang tagumpay sa aking desktop. Hindi ko makumpirma kung gagana ang tutorial ng Google, ngunit magtataka ako kung hindi.

Upang sanayin sa cloud, maaari mong gamitin ang AWS o GCP. Natagpuan ko ang tutorial na ito na maaari mong subukan. Gumagamit ito ng cloud TPU ng Google na maaaring sanayin ang modelo ng pagtuklas ng iyong object nang napakabilis. Huwag mag-atubiling gumamit din ng AWS.

Sanay ka man sa iyong lokal na makina o sa cloud, dapat kang magtapos sa isang may kasanayang modelo ng tensorflow.

Hakbang 7: Pag-iipon ng Modelong Sinasanay

Pag-iipon ng Na-Modelong Modelo
Pag-iipon ng Na-Modelong Modelo

Upang gumana ang iyong sinanay na modelo sa Coral Edge TPU, kailangan mo itong ipunin.

Sa itaas ay isang diagram para sa daloy ng trabaho.

Pagkatapos ng pagsasanay, kailangan mong i-save ito bilang isang nakapirming grap (.pb file). Pagkatapos, kailangan mong i-convert ito sa isang modelo ng Tensorflow Lite. Tandaan kung paano sinasabi na "Post-training quantization". Kung ginamit mo ang mga katugmang pre-trained na modelo kapag gumagamit ng pag-aaral ng transfer, hindi mo kailangang gawin ito. Tingnan ang buong dokumentasyon tungkol sa pagiging tugma dito.

Gamit ang modelo ng Tensorflow Lite, kailangan mong isulat ito sa isang modelo ng Edge TPU. Tingnan ang mga detalye kung paano ito gawin dito.

Hakbang 8: Modelo ng Pagtuklas ng Recycle

Kung hindi mo nais na mapunta sa abala ng pagsasanay, pag-convert, at pagsasama-sama ng modelo ng pagtuklas ng bagay, suriin ang modelo ng aking pagtuklas sa recycle dito.

Hakbang 9: I-deploy ang Model

I-deploy ang Model
I-deploy ang Model

Ang susunod na hakbang ay upang i-set up ang Raspberry Pi (RPI) at Edge TPU upang patakbuhin ang sanay na modelo ng pagtuklas ng bagay.

Una, i-set up ang RPI gamit ang tutorial na ito.

Susunod, i-set up ang Edge TPU na sumusunod sa tutorial na ito.

Panghuli, ikonekta ang module ng RPI camera sa raspberry pi.

Handa ka na ngayon upang subukan ang iyong modelo ng pagtuklas ng object!

Kung na-clone mo na ang aking imbakan, gugustuhin mong mag-navigate sa direktoryo ng RPI at patakbuhin ang test_detection.py file:

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_coco_2019_01_03 / labels.txtite

Ang isang maliit na bintana ay dapat na mag-pop up at kung maglagay ka ng isang plastik na bote ng tubig o iba pang materyal na recycle, dapat itong tuklasin tulad ng imahe sa itaas.

Pindutin ang titik na "q" sa iyong keyboard upang wakasan ang programa.

Hakbang 10: Buuin ang Robotic Arm

Buuin ang Robotic Arm
Buuin ang Robotic Arm

Ang robotic arm ay isang 3D naka-print na braso na nakita ko dito. Sundin lamang ang tutorial sa pag-set up nito.

Ipinapakita ng imahe sa itaas kung paano naging ang aking robotic arm.

Tiyaking ikinonekta mo ang mga servo pin sa alinsunod sa mga pin ng Arduino I / O sa aking code. Ikonekta ang mga servo mula sa ibaba hanggang sa tuktok ng braso sa pagkakasunud-sunod na ito: 3, 11, 10, 9, 6, 5. Ang hindi pagkonekta nito sa pagkakasunud-sunod na ito ay magiging sanhi ng paggalaw ng maling braso sa braso!

Subukan upang makita itong gumagana sa pamamagitan ng pag-navigate sa direktoryo ng Arduino at pagpapatakbo ng basicMovement.ino file. Ito ay kukuha lamang ng isang bagay na iyong inilagay sa harap ng braso at i-drop ito sa likuran.

Hakbang 11: Pagkonekta sa RPI & Robotic Arm

Pagkonekta sa RPI & Robotic Arm
Pagkonekta sa RPI & Robotic Arm

Kailangan muna naming i-mount ang module ng camera sa ilalim ng claw. Ipinapakita ng imahe sa itaas kung paano ito dapat magmukhang.

Subukang ihanay ang camera nang diretso hangga't maaari upang i-minimize ang mga error sa pag-agaw ng kinikilalang materyal na recycle. Kakailanganin mong gamitin ang mahabang camera module ribbon cable tulad ng nakikita sa listahan ng mga materyales.

Susunod, kailangan mong i-upload ang roboticArm.ino file sa Arduino board.

Sa wakas, kailangan lang naming ikonekta ang isang USB cable sa pagitan ng USB port ng RPI at USB port ng Arduino. Papayagan nitong makipag-usap sila sa pamamagitan ng serial. Sundin ang tutorial na ito kung paano i-set up ito.

Hakbang 12: Mga Pangwakas na Pag-ugnay

Pangwakas na Pag-ugnay
Pangwakas na Pag-ugnay
Pangwakas na Pag-ugnay
Pangwakas na Pag-ugnay

Ang hakbang na ito ay ganap na opsyonal ngunit nais kong ilagay ang lahat ng aking mga bahagi sa isang magandang maliit na kahon ng proyekto.

Ipinapakita ng mga imahe sa itaas ang hitsura nito.

Mahahanap mo ang kahon ng proyekto sa listahan ng mga materyales. Nag-drill lang ako ng ilang mga butas at gumamit ng mga standoff ng tanso upang mai-mount ang electronics. Nag-mount din ako ng 4 na mga tagahanga ng paglamig upang mapanatili ang isang pare-pareho na airflow sa pamamagitan ng RPI at TPU kapag mainit.

Hakbang 13: Tumatakbo

Handa ka na ngayong mag-kapangyarihan sa parehong robotic arm at RPI! Sa RPI, maaari mo lamang patakbuhin ang recycle_detection.py file. Bubuksan nito ang isang window at ang robot na braso ay magsisimulang tumakbo tulad ng sa demo na video! Pindutin ang titik na "q" sa iyong keyboard upang wakasan ang programa.

Huwag mag-atubiling maglaro sa paligid ng code at magsaya!

Hakbang 14: Trabaho sa Hinaharap

Sana gamitin ang R. O. S. upang makontrol ang robotic arm na may mas tumpak na paggalaw. Papayagan nito ang mas tumpak na pagpili ng mga object.

Hakbang 15: Mga Katanungan?

Huwag mag-atubiling mag-iwan ng isang puna sa ibaba kung mayroon kang anumang mga katanungan!

Inirerekumendang: