INHOUDSOPGAWE:

Herwinde sorteerrobot: 15 stappe (met foto's)
Herwinde sorteerrobot: 15 stappe (met foto's)

Video: Herwinde sorteerrobot: 15 stappe (met foto's)

Video: Herwinde sorteerrobot: 15 stappe (met foto's)
Video: Verover Mijn Hart, Win €1000 2024, Julie
Anonim
Image
Image
Kry die data
Kry die data

Het u geweet dat die gemiddelde besmettingsyfer in gemeenskappe en besighede tot 25%beloop? Dit beteken dat een uit elke vier stukke herwinning wat u weggooi nie herwin word nie. Dit word veroorsaak deur menslike foute in herwinningsentrums. Tradisioneel sorteer werkers asblik in verskillende asblikke, afhangende van die materiaal. Mense is geneig om foute te maak en uiteindelik nie die asblik behoorlik te sorteer nie, wat tot besmetting kan lei. Namate besoedeling en klimaatsverandering in die hedendaagse samelewing nog meer betekenisvol word, neem herwinning 'n groot rol in die beskerming van ons planeet. Deur robotte te gebruik om asblik te sorteer, sal besmettingsyfers drasties afneem, om nog maar te praat van baie goedkoper en meer volhoubaar. Om dit op te los, het ek 'n herwinningsorteringsrobot geskep wat masjienleer gebruik om tussen verskillende herwinningsmateriaal te sorteer.

Stap 1: Onderdele

Maak seker dat u die volgende dele saam met hierdie tutoriaal volg:

3D -gedrukte onderdele (sien stap hieronder)

Framboos Pi RPI 4 4GB

Google Coral USB -versneller

Arduino Uno R3

Framboos Pi -kameramodule V2

5V 2A DC muurkragvoorsiening

DC 12V kragtoevoer

SG90 9g Micro Servos 4 stuks.

M3 x 0.5mm Roesvrye staal Self-Lock Nylon Hex Lock Moer 100 stuks.

M3x20 knoppie kop titanium skroewe 10 stuks.

MG996R Metal Gear Torque Analoge servomotor 4 stuks.

Samsung 32GB Kies geheue kaart

Adafruit Flex -kabel vir Raspberry Pi -kamera - 1 meter

M2 Manlike vroulike koper spacer afstandhouer skroef moer assortiment kit

60mm 12V waaier

6,69 "x 5,12" x 2,95 "projekboks

Stap 2: 3D -gedrukte onderdele

U moet al die dele vir die robotarm in 3D druk. U kan al die lêers hier vind.

Stap 3: Kodeer

Kloon my GitHub -bewaarplek om saam met hierdie tutoriaal te volg.

Stap 4: Kry die data

Om die voorwerpopsporingsmodel op te lei wat verskillende herwinningsmateriaal kan opspoor en herken, het ek die asblikdataset gebruik wat 2527 beelde bevat:

  • 501 glas
  • 594 papier
  • 403 karton
  • 482 plastiek
  • 410 metaal
  • 137 asblik

Die prent hierbo is 'n voorbeeld van een op die beelde uit die datastel.

Hierdie datastel is baie klein om 'n voorwerpopsporingsmodel op te lei. Daar is slegs ongeveer 100 afvalbeelde wat te min is om 'n akkurate model op te lei, so ek het besluit om dit weg te laat.

U kan hierdie gids van Google Drive gebruik om die datastel af te laai. Laai die dataset-resized.zip-lêer af. Dit bevat die stel beelde wat alreeds in 'n kleiner grootte verander is om vinniger opleiding moontlik te maak. As u die ruwe beelde na u smaak wil verander, kan u die lêer dataset-original.zip aflaai.

Stap 5: Etiketteer die beelde

Etiketteer die beelde
Etiketteer die beelde

Vervolgens moet ons verskeie beelde van verskillende herwinningsmateriaal etiketteer sodat ons die voorwerpopsporingsmodel kan oplei. Om dit te doen, het ek labelImg gebruik, 'n gratis sagteware waarmee u bokse met voorwerpe in beelde kan benoem.

Benoem elke prentjie met die regte etiket. Hierdie handleiding wys u hoe. Maak seker dat elke omhulsel boks so naby aan die grens van elke voorwerp is om te verseker dat die opsporingsmodel so akkuraat as moontlik is. Stoor al die.xml -lêers in 'n gids.

Die foto hierbo wys hoe u u beelde kan benoem.

Dit is 'n baie vervelige en verstommende ervaring. Gelukkig vir u het ek al die beelde vir u gemerk! U kan dit hier vind.

Stap 6: Opleiding

Wat opleiding betref, het ek besluit om oordragleer te gebruik met behulp van Tensorflow. Dit stel ons in staat om 'n redelik akkurate model op te lei sonder 'n groot hoeveelheid data.

Daar is 'n paar maniere waarop ons dit kan doen. Ons kan dit op ons plaaslike tafelrekenaar in die wolk doen. Afhangend van hoe sterk u rekenaar is en as u 'n kragtige GPU het, neem opleiding op ons plaaslike masjien baie lank. Dit is na my mening waarskynlik die maklikste manier, maar weer met die nadeel van spoed.

Daar is 'n paar belangrike dinge om op te let oor oordragleer. U moet seker maak dat die vooraf opgeleide model wat u vir opleiding gebruik, versoenbaar is met die Coral Edge TPU. U kan versoenbare modelle hier vind. Ek het die MobileNet SSD v2 (COCO) model gebruik. Eksperimenteer gerus ook met ander.

Om op u plaaslike masjien te oefen, sou ek aanbeveel dat u die tutoriaal van Google of die tutoriaal van EdjeElectronics volg as ek op Windows 10. Persoonlik het ek die EdjeElectroncs -tutoriaal getoets en sukses op my lessenaar bereik. Ek kan nie bevestig of die tutoriaal van Google sal werk nie, maar ek sal verbaas wees as dit nie die geval is nie.

Om in die wolk te oefen, kan u AWS of GCP gebruik. Ek het hierdie tutoriaal gevind wat u kan probeer. Dit gebruik Google se wolk -TPU's wat u objekopsporingsmodel baie vinnig kan oplei. Gebruik gerus ook AWS.

Of u nou op u plaaslike masjien of in die wolk oefen, u moet 'n opgeleide tensorflow -model kry.

Stap 7: Stel die opgeleide model saam

Stel die opgeleide model saam
Stel die opgeleide model saam

Om u opgeleide model met die Coral Edge TPU te kan werk, moet u dit saamstel.

Hierbo is 'n diagram vir die werkstroom.

Na opleiding moet u dit as 'n bevrore grafiek (.pb -lêer) stoor. Dan moet u dit omskakel in 'n Tensorflow Lite -model. Let op hoe dit sê "Kwantisering na opleiding". As u die versoenbare vooraf opgeleide modelle gebruik het tydens die gebruik van oordragleer, hoef u dit nie te doen nie. Kyk hier na die volledige dokumentasie oor verenigbaarheid.

Met die Tensorflow Lite -model moet u dit saamstel na 'n Edge TPU -model. Sien besonderhede oor hoe u dit kan doen hier.

Stap 8: Herwin opsporingsmodel

As u nie die moeite wil doen met die opleiding, omskakeling en opstel van die voorwerpopsporingsmodel nie, kyk dan na my herwinningsopsporingsmodel hier.

Stap 9: Ontplooi die model

Ontplooi die model
Ontplooi die model

Die volgende stap is om die Raspberry Pi (RPI) en Edge TPU op te stel om die opgeleide voorwerpopsporingsmodel uit te voer.

Stel eers die RPI op met behulp van hierdie tutoriaal.

Stel vervolgens die Edge TPU op volgens hierdie tutoriaal.

Koppel laastens die RPI -kameramodule aan die framboospi.

U is nou gereed om u voorwerpopsporingsmodel te toets!

As u my bewaarplek reeds gekloon het, wil u na die RPI -gids gaan en die test_detection.py -lêer uitvoer:

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.t

'N Klein venster moet verskyn, en as u 'n plastiekbottel of ander herwinningsmateriaal plaas, moet dit dit opspoor soos op die foto hierbo.

Druk die letter "q" op u sleutelbord om die program te beëindig.

Stap 10: Bou die robotarm

Bou die robotarm
Bou die robotarm

Die robotarm is 'n 3D -gedrukte arm wat ek hier gevind het. Volg net die tutoriaal om dit op te stel.

Die prent hierbo wys hoe my robotarm uitgedraai het.

Maak seker dat u die servo -penne aansluit op die volgens Arduino I/O -penne in my kode. Koppel die servo's van onder na bo aan die arm in hierdie volgorde: 3, 11, 10, 9, 6, 5. As u dit nie in hierdie volgorde koppel nie, sal die arm die verkeerde servo laat beweeg!

Toets om te sien of dit werk deur na die Arduino -gids te gaan en die basicMovement.ino -lêer uit te voer. Dit gryp eenvoudig 'n voorwerp wat jy voor die arm plaas en laat dit agter.

Stap 11: Verbind die RPI en die robotarm

Verbind die RPI en die robotarm
Verbind die RPI en die robotarm

Ons moet eers die kameramodule aan die onderkant van die klou monteer. Die prent hierbo wys hoe dit moet lyk.

Probeer om die kamera so reguit as moontlik in lyn te bring om die foute in die gryp van herkende herwinningsmateriaal tot 'n minimum te beperk. U moet die lang lintkabel van die kameramodule gebruik, soos in die materiaallys verskyn.

Vervolgens moet u die roboticArm.ino -lêer na die Arduino -bord laai.

Uiteindelik moet ons net 'n USB -kabel tussen die RPI se USB -poort en die Arduino se USB -poort aansluit. Dit sal hulle in staat stel om via reekse te kommunikeer. Volg hierdie handleiding oor hoe u dit instel.

Stap 12: Laaste aanraking

Finale aanraking
Finale aanraking
Finale aanraking
Finale aanraking

Hierdie stap is heeltemal opsioneel, maar ek hou daarvan om al my komponente in 'n mooi klein projekkas te plaas.

Die foto's hierbo wys hoe dit lyk.

U kan die projekkas op die materiaallys vind. Ek het net 'n paar gate geboor en koperblokke gebruik om die elektronika te monteer. Ek het ook 4 koelwaaiers gemonteer om 'n konstante lugvloei deur die RPI en TPU te behou as dit warm is.

Stap 13: Hardloop

U is nou gereed om die robotarm en RPI aan te skakel! Op die RPI kan u die lêer recycle_detection.py eenvoudig uitvoer. Dit maak 'n venster oop en die robotarm begin hardloop, net soos in die demo -video! Druk die letter "q" op u sleutelbord om die program te beëindig.

Speel gerus met die kode en geniet dit!

Stap 14: Toekomstige werk

Ek hoop om R. O. S. om die robotarm met meer presiese bewegings te beheer. Dit sal 'n meer akkurate opneem van voorwerpe moontlik maak.

Stap 15: Vrae?

Laat gerus 'n opmerking hieronder as u vrae het!

Aanbeveel: