Sisällysluettelo:
- Vaihe 1: Osat
- Vaihe 2: 3D -tulostetut osat
- Vaihe 3: Koodi
- Vaihe 4: Tietojen hankkiminen
- Vaihe 5: Kuvien merkitseminen
- Vaihe 6: Koulutus
- Vaihe 7: Koulutetun mallin kokoaminen
- Vaihe 8: Kierrätyksen tunnistusmalli
- Vaihe 9: Ota malli käyttöön
- Vaihe 10: Rakenna robotti
- Vaihe 11: RPI- ja robottivarren liittäminen
- Vaihe 12: Viimeiset kosketukset
- Vaihe 13: Juoksu
- Vaihe 14: Tulevaisuuden työ
- Vaihe 15: Kysymyksiä?
Video: Kierrätä lajittelurobotti: 15 vaihetta (kuvilla)
2024 Kirjoittaja: John Day | [email protected]. Viimeksi muokattu: 2024-01-30 09:00
Tiesitkö, että yhteisöjen ja yritysten keskimääräinen saastumisaste vaihtelee jopa 25 prosenttiin? Tämä tarkoittaa sitä, että joka neljäs hävitettävä kierrätyskappale ei kierrätetä. Tämä johtuu inhimillisestä virheestä kierrätyskeskuksissa. Perinteisesti työntekijät lajittelevat roskat eri roskakoriin materiaalista riippuen. Ihmiset tekevät virheitä eivätkä lopulta lajittele roskia oikein, mikä johtaa saastumiseen. Kun saastuminen ja ilmastonmuutos ovat yhä merkittävämpiä nyky -yhteiskunnassa, kierrätyksellä on valtava osa planeettamme suojelemisessa. Käyttämällä robotteja roskien lajitteluun saastumisaste laskee rajusti, puhumattakaan paljon halvemmasta ja kestävämmästä. Tämän ratkaisemiseksi loin kierrätyslajittelurobotin, joka käyttää koneoppimista erilaisten kierrätysmateriaalien lajitteluun.
Vaihe 1: Osat
Varmista, että sinulla on seuraavat osat tämän opetusohjelman mukana:
3D -tulostetut osat (katso alla oleva vaihe)
Raspberry Pi RPI 4 4 Gt
Google Coral USB -kiihdytin
Arduino Uno R3
Raspberry Pi -kameramoduuli V2
5V 2A DC seinävirtalähde
DC 12V virtalähde
SG90 9g Micro Servot 4kpl.
M3 x 0,5 mm ruostumaton teräs itselukittuva nailonkuusiomutteri 100kpl.
M3x20 -nappipään titaaniruuvit 10kpl.
MG996R Metal Gear Moment Analoginen servomoottori 4kpl.
Samsung 32GB Valitse muistikortti
Adafruit Flex -kaapeli Raspberry Pi -kameralle - 1 metri
M2 urospuolinen naaras messinki välikappaleen ruuvimutterin valikoimasarja
60mm 12V tuuletin
6,69 x 5,12 x 2,95 tuuman projektilaatikko
Vaihe 2: 3D -tulostetut osat
Sinun on tulostettava 3D -robotin kaikki osat 3D -tulostuksella. Löydät kaikki tiedostot täältä.
Vaihe 3: Koodi
Kloonaa GitHub -arkistoni seurataksesi tätä opetusohjelmaa.
Vaihe 4: Tietojen hankkiminen
Koulutin kohteen tunnistusmallia, joka pystyy havaitsemaan ja tunnistamaan erilaisia kierrätysmateriaaleja, käytin roskakoritiedostoa, joka sisältää 2527 kuvaa:
- 501 lasia
- 594 paperia
- 403 pahvi
- 482 muovia
- 410 metallia
- 137 roskaa
Yllä oleva kuva on esimerkki yhdestä tietojoukon kuvista.
Tämä tietojoukko on hyvin pieni opettamaan kohteen havaitsemismallia. Roskakorista on vain noin 100 kuvaa, jotka ovat liian vähän tarkan mallin kouluttamiseen, joten päätin jättää sen pois.
Voit ladata tietojoukon tämän Google -aseman kansion avulla. Muista ladata dataset-resized.zip-tiedosto. Se sisältää joukon kuvia, jotka on jo muutettu pienempään kokoon nopeamman harjoittelun mahdollistamiseksi. Jos haluat muuttaa raakakuvien kokoa haluamallasi tavalla, voit ladata dataset-original.zip-tiedoston.
Vaihe 5: Kuvien merkitseminen
Seuraavaksi meidän on merkittävä useita kuvia eri kierrätysmateriaaleista, jotta voimme kouluttaa objektin tunnistusmallin. Tätä varten käytin labelImg -ilmaisohjelmistoa, jonka avulla voit merkitä objektien rajauslaatikot kuvissa.
Merkitse jokainen kuva oikealla tarralla. Tämä opetusohjelma näyttää kuinka. Varmista, että jokainen rajoituslaatikko on mahdollisimman lähellä kunkin objektin reunaa, jotta tunnistusmalli on mahdollisimman tarkka. Tallenna kaikki.xml -tiedostot kansioon.
Yllä oleva kuva näyttää kuvien merkitsemisen.
Tämä on erittäin tylsä ja mieltä järkyttävä kokemus. Onneksi olen jo merkinnyt kaikki kuvat sinulle! Löydät sen täältä.
Vaihe 6: Koulutus
Koulutuksen suhteen päätin käyttää siirto -oppimista Tensorflow'n avulla. Näin voimme kouluttaa kohtuullisen tarkan mallin ilman suurta tietomäärää.
Meillä on pari tapaa tehdä tämä. Voimme tehdä sen paikallisella pöytäkoneella pilvessä. Paikallisen koneemme harjoittelu kestää erittäin kauan riippuen siitä, kuinka tehokas tietokoneesi on ja onko sinulla tehokas GPU. Tämä on luultavasti helpoin tapa mielestäni, mutta jälleen nopeuden haittapuolen kanssa.
Siirron oppimisessa on huomioitava muutamia tärkeitä asioita. Sinun on varmistettava, että harjoitteluun käyttämäsi esikoulutettu malli on yhteensopiva Coral Edge TPU: n kanssa. Löydät yhteensopivat mallit täältä. Käytin MobileNet SSD v2 (COCO) -mallia. Kokeile rohkeasti myös muiden kanssa.
Jos haluat treenata paikallisessa koneessasi, suosittelen seuraamaan Googlen opetusohjelmaa tai EdjeElectronics -opetusohjelmaa, jos käytössäsi on Windows 10. Henkilökohtaisesti olen testannut EdjeElectroncs -opetusohjelman ja saavuttanut menestyksen työpöydälläni. En voi vahvistaa, toimiiko Googlen opetusohjelma, mutta olisin yllättynyt, jos se ei toimi.
Voit harjoitella pilvessä käyttämällä AWS: ää tai GCP: tä. Löysin tämän opetusohjelman, jota voit kokeilla. Se käyttää Googlen pilvipohjaisia TPU -laitteita, jotka voivat kouluttaa objektin tunnistusmallisi erittäin nopeasti. Voit myös käyttää AWS: ää.
Harjoitteletpa sitten paikallisella koneellasi tai pilvessä, sinun pitäisi saada koulutettu tensorflow -malli.
Vaihe 7: Koulutetun mallin kokoaminen
Jotta koulutettu mallisi toimisi Coral Edge TPU: n kanssa, sinun on koottava se.
Yllä on kaavio työnkulusta.
Harjoituksen jälkeen sinun on tallennettava se jäädytettynä kaaviona (.pb -tiedosto). Sitten sinun on muutettava se Tensorflow Lite -malliksi. Huomaa, miten siinä lukee "Koulutuksen jälkeinen kvantisointi". Jos käytit yhteensopivia esikoulutettuja malleja siirron oppimisen aikana, sinun ei tarvitse tehdä tätä. Katso kaikki yhteensopivuutta koskevat asiakirjat täältä.
Tensorflow Lite -mallissa sinun on käännettävä se Edge TPU -malliin. Katso lisätietoja tämän tekemisestä täältä.
Vaihe 8: Kierrätyksen tunnistusmalli
Jos et halua käydä läpi harjoitusta, muuntamista ja objektin tunnistusmallin kokoamista, tutustu kierrätyksen tunnistusmalliini täältä.
Vaihe 9: Ota malli käyttöön
Seuraava askel on määrittää Raspberry Pi (RPI) ja Edge TPU suorittamaan koulutetun kohteen tunnistusmalli.
Määritä ensin RPI tämän opetusohjelman avulla.
Määritä seuraavaksi Edge TPU tämän opetusohjelman mukaisesti.
Kytke lopuksi RPI -kameramoduuli vadelmapi: hen.
Olet nyt valmis testaamaan objektin tunnistusmallisi!
Jos olet jo kloonannut arkistoni, haluat siirtyä RPI -hakemistoon ja suorittaa test_detection.py -tiedoston:
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
Pienen ikkunan pitäisi avautua, ja jos laitat muovisen vesipullon tai muun kierrätysmateriaalin, sen pitäisi havaita se yllä olevan kuvan mukaisesti.
Lopeta ohjelma painamalla näppäimistön kirjainta "q".
Vaihe 10: Rakenna robotti
Robottivarsi on 3D -painettu varsi, jonka löysin täältä. Seuraa vain opetusohjelmaa sen asettamiseksi.
Yllä oleva kuva osoittaa, kuinka robotti käsivarteni osoittautui.
Varmista, että liität servotapit koodini Arduino I/O -nastojen mukaisesti. Liitä servot käsivarren alhaalta ylöspäin tässä järjestyksessä: 3, 11, 10, 9, 6, 5. Jos et liitä sitä tässä järjestyksessä, varsi liikuttaa väärää servoa!
Testaa sen toimiminen siirtymällä Arduino -hakemistoon ja suorittamalla basicMovement.ino -tiedosto. Tämä yksinkertaisesti nappaa esineen, jonka asetat käsivarren eteen, ja pudottaa sen taakse.
Vaihe 11: RPI- ja robottivarren liittäminen
Meidän on ensin asennettava kameramoduuli kynsien pohjaan. Yllä oleva kuva näyttää, miltä sen pitäisi näyttää.
Yritä kohdistaa kamera mahdollisimman suoraan, jotta tunnistetun kierrätysmateriaalin tarttumisvirheet minimoituvat. Sinun on käytettävä pitkää kameramoduulin nauhakaapelia materiaaliluettelon mukaisesti.
Seuraavaksi sinun on ladattava roboticArm.ino -tiedosto Arduino -taululle.
Lopuksi meidän on vain liitettävä USB -kaapeli RPI: n USB -portin ja Arduinon USB -portin väliin. Näin he voivat kommunikoida sarjaliikenteen kautta. Seuraa tätä opetusohjelmaa, miten tämä määritetään.
Vaihe 12: Viimeiset kosketukset
Tämä vaihe on täysin valinnainen, mutta haluan laittaa kaikki komponentit mukavaan pieneen projektilaatikkoon.
Yllä olevat kuvat osoittavat, miltä se näyttää.
Löydät projektiruudun materiaaliluettelosta. Porasin juuri joitain reikiä ja käytin messinkisiä seinäkiinnikkeitä elektroniikan kiinnittämiseen. Asensin myös 4 jäähdytystuuletinta pitämään jatkuvan ilmavirran RPI: n ja TPU: n läpi kuumana.
Vaihe 13: Juoksu
Olet nyt valmis käynnistämään sekä robottivarren että RPI: n! RPI: ssä voit yksinkertaisesti suorittaa recycle_detection.py -tiedoston. Tämä avaa ikkunan ja robottivarsi alkaa toimia aivan kuten esittelyvideossa! Lopeta ohjelma painamalla näppäimistön kirjainta "q".
Voit vapaasti leikkiä koodilla ja pitää hauskaa!
Vaihe 14: Tulevaisuuden työ
Toivottavasti käytän R. O. S. ohjata robottivartta tarkemmilla liikkeillä. Tämä mahdollistaa kohteiden tarkemman noutamisen.
Vaihe 15: Kysymyksiä?
Jätä kommentti alle, jos sinulla on kysyttävää!
Suositeltava:
Kierrätä vanhat piirilevyosat veistoksiksi: 4 vaihetta
Kierrätä vanhat piirilevyosat veistoksiksi: Sen sijaan, että poistat kaikki vanhat piirilevyt ja komponentit, miksi et käytä niitä uudelleen oman veistoksen tekemiseen, joka voi osoittautua upeaksi
Kierrätä kirja IPad Stealth -koteloon: 8 vaihetta (kuvilla)
Kierrätä kirja IPad Stealth -koteloon: Joskus et halua kaikkien tietävän, että kannat iPadin mukana. Kukaan ei huomaa, että sinulla on kirja mukana, varsinkin jos se on 1970-luvun vanha kirjastokappale "Uusi-Seelanti värillisenä". Harrasteveitsellä paperi
Vähennä, palauta, kierrätä: 6 vaihetta
Vähennä, palauta, kierrätä: Sosiaaliset tapahtumat tuottavat suuria määriä jätettä alumiinipurkkeista muovikuppeihin, jotka kaikki voidaan kierrättää. Aiemmin ei ollut olemassa ohjelmia tämän kierrätyksen edistämiseksi, joten opiskelijat heittivät ne pois ja aiheuttivat kielteisiä vaikutuksia ympäristöön
Kierrätä pullo laserilla!: 4 vaihetta (kuvilla)
Kierrätä pullo laserilla !: Onko sinulla täysin kunnollinen pullo (ruuvi korkilla ja kaikki!) Ja haluat antaa sille uuden elämän? Käytä LASERIA! Tämä opas näyttää prosessin 4 helpossa vaiheessa
Kierrätä vanhat valaisimet taiteellisen LED -valaistuksen luomiseksi: 4 vaihetta
Kierrätä vanhoja valaisimia luodaksesi taiteellisen LED -valaistuksen: Löydä vanhat valaisimet säästökaupoista, autotallimyynneistä jne. Puhdista ne ja liitä sitten LED -valoketjut futuristisen näköiseen valaistukseen