Tartalomjegyzék:

Újrahasznosító robot: 15 lépés (képekkel)
Újrahasznosító robot: 15 lépés (képekkel)

Videó: Újrahasznosító robot: 15 lépés (képekkel)

Videó: Újrahasznosító robot: 15 lépés (képekkel)
Videó: 24 Часа в АВТОСЕРВИСЕ Челлендж ! 2024, Július
Anonim
Image
Image
Az adatok beszerzése
Az adatok beszerzése

Tudta, hogy a közösségekben és a vállalkozásokban az átlagos szennyeződési arány 25%-ig terjed? Ez azt jelenti, hogy minden negyedik kidobott újrahasznosításból egy nem kerül újrahasznosításra. Ennek oka az emberi újrahasznosító központok hibája. Hagyományosan a dolgozók az anyagtól függően különböző kukákba válogatják a szemetet. Az emberek kötelesek hibázni, és végül nem válogatják szét a szemetet, ami szennyeződéshez vezet. Ahogy a környezetszennyezés és az éghajlatváltozás még jelentősebbé válik a mai társadalomban, az újrahasznosítás óriási szerepet játszik bolygónk védelmében. Ha robotokat használ a szemét válogatásához, a szennyezés aránya drasztikusan csökken, nem beszélve sokkal olcsóbbról és fenntarthatóbbról. Ennek megoldásához létrehoztam egy újrahasznosító szortírozó robotot, amely gépi tanulást használ a különböző újrahasznosítható anyagok közötti válogatáshoz.

1. lépés: Alkatrészek

Győződjön meg arról, hogy a következő részeket követi az oktatóanyaggal együtt:

3D nyomtatott alkatrészek (lásd az alábbi lépést)

Raspberry Pi RPI 4 4 GB

Google Coral USB gyorsító

Arduino Uno R3

Raspberry Pi kamera modul V2

5V 2A DC fali tápegység

DC 12V tápegység

SG90 9g Micro Servo 4db.

M3 x 0,5 mm rozsdamentes acél önzáró nylon hatszögletű anya 100 db.

M3x20 gombfejű titán csavarok 10db.

MG996R Metal Gear Torque Analog Servo Motor 4db.

Samsung 32GB Válassza ki a memóriakártyát

Adafruit Flex kábel Raspberry Pi kamerához - 1 méter

M2 Férfi női sárgaréz távtartó csavaros anya választék készlet

60 mm -es 12 V -os ventilátor

6,69 x 5,12 x 2,95 hüvelykes projektdoboz

2. lépés: 3D nyomtatott alkatrészek

3D nyomtatással kell kinyomtatnia a robotkar összes részét. Az összes fájlt itt találja.

3. lépés: Kód

Kérjük, klónozza a GitHub -táromat, hogy kövesse ezt az oktatóanyagot.

4. lépés: Az adatok beszerzése

A különböző újrahasznosítható anyagok észlelésére és felismerésére alkalmas objektum -észlelési modell betanításához a kukát tartalmazó adatkészletet használtam, amely 2527 képet tartalmaz:

  • 501 üveg
  • 594 papír
  • 403 karton
  • 482 műanyag
  • 410 fém
  • 137 szemét

A fenti kép egy példa az adathalmaz képein látható egyikre.

Ez az adathalmaz nagyon kicsi az objektum -észlelési modell betanításához. Csak körülbelül 100 olyan kép van a szemétből, amely kevés ahhoz, hogy pontos modellt képezzen, ezért úgy döntöttem, hogy kihagyom.

Ezt a google meghajtó mappát használhatja az adatkészlet letöltéséhez. Töltse le a dataset-resized.zip fájlt. Tartalmazza a képeket, amelyek már át vannak méretezve kisebb méretre a gyorsabb edzés érdekében. Ha szeretné átméretezni a nyers képeket saját ízlése szerint, bátran töltse le a dataset-original.zip fájlt.

5. lépés: A képek címkézése

A képek címkézése
A képek címkézése

Ezután több képet kell felcímkéznünk a különböző újrahasznosító anyagokról, hogy betaníthassuk az objektum -észlelési modellt. Ehhez a labelImg nevű ingyenes szoftvert használtam, amely lehetővé teszi az objektumhatároló dobozok címkézését a képeken.

Címkézzen minden képet a megfelelő címkével. Ez az oktatóanyag megmutatja, hogyan. Ügyeljen arra, hogy minden határoló doboz legyen az objektumok határához közel, hogy az észlelési modell a lehető legpontosabb legyen. Mentse az összes.xml fájlt egy mappába.

A fenti fotó bemutatja, hogyan kell címkézni képeit.

Ez egy nagyon fárasztó és elmebeteg élmény. Hála neked, már felcímkéztem az összes képet! Itt megtalálod.

6. lépés: Képzés

Ami a képzést illeti, úgy döntöttem, hogy a transzfer tanulást használom a Tensorflow segítségével. Ez lehetővé teszi számunkra, hogy tisztességesen pontos modellt képezzünk nagy mennyiségű adat nélkül.

Ezt néhány módon tehetjük meg. Ezt megtehetjük a helyi asztali gépünkön a felhőben. A helyi gépünkön történő képzés szuper hosszú ideig tart, attól függően, hogy milyen erős a számítógép, és van -e erős GPU. Ez talán a legegyszerűbb módszer véleményem szerint, de ismét a sebesség hátrányával.

Néhány fontos dolgot meg kell jegyezni az áthelyezési tanulással kapcsolatban. Győződjön meg arról, hogy az edzésre használt előre betanított modell kompatibilis a Coral Edge TPU-val. Itt találhat kompatibilis modelleket. A MobileNet SSD v2 (COCO) modellt használtam. Bátran kísérletezzen másokkal is.

Ha a helyi gépen szeretne edzeni, azt javaslom, hogy kövesse a Google oktatóanyagát vagy az EdjeElectronics bemutatót, ha Windows 10 rendszeren fut. Nem tudom megerősíteni, hogy a Google bemutatója működik -e, de meglepődnék, ha nem.

A felhőben történő edzéshez használhatja az AWS -t vagy a GCP -t. Találtam ezt az oktatóanyagot, amit ki lehet próbálni. A Google felhőalapú TPU -ját használja, amely szupergyorsan betanítja az objektumfelismerő modellt. Nyugodtan használja az AWS -t is.

Függetlenül attól, hogy a helyi gépen vagy a felhőben edz, egy képzett tensorflow modellt kell választania.

7. lépés: A betanított modell összeállítása

A képzett modell összeállítása
A képzett modell összeállítása

Annak érdekében, hogy képzett modellje a Coral Edge TPU -val működjön, le kell fordítania.

A fenti ábra a munkafolyamatot mutatja.

Edzés után el kell mentenie lefagyott grafikonként (.pb fájl). Ezután át kell alakítania Tensorflow Lite modellgé. Figyelje meg, hogyan írják: "Edzés utáni kvantálás". Ha a kompatibilis, előre betanított modelleket használta a transzfer tanulás során, akkor ezt nem kell megtennie. Tekintse meg a teljes kompatibilitási dokumentációt itt.

A Tensorflow Lite modellel le kell fordítania egy Edge TPU modellre. Ennek részleteit itt találja.

8. lépés: Újrahasznosítás -észlelési modell

Ha nem akarja átvészelni az objektumfelismerési modell képzésével, konvertálásával és összeállításával kapcsolatos gondokat, nézze meg itt az újrahasznosítás -felismerési modellemet.

9. lépés: Telepítse a modellt

Telepítse a modellt
Telepítse a modellt

A következő lépés a Raspberry Pi (RPI) és az Edge TPU beállítása a betanított objektumészlelési modell futtatásához.

Először állítsa be az RPI -t ezzel az oktatóanyaggal.

Ezután állítsa be az Edge TPU -t az oktatóanyagot követve.

Végül csatlakoztassa az RPI kamera modult a málna pi -hez.

Most már készen áll az objektum észlelési modell tesztelésére!

Ha már klónozta a táromat, akkor navigáljon az RPI könyvtárhoz, és futtassa a test_detection.py fájlt:

python test_detection.py --modell 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

Egy kis ablaknak fel kell bukkannia, és ha műanyag vizespalackot vagy más újrahasznosított anyagot helyez el, akkor azt a fenti képnek megfelelően kell észlelnie.

A program befejezéséhez nyomja meg a billentyűzet "q" betűjét.

10. lépés: Építse fel a robotkart

Építsd fel a robotkart
Építsd fel a robotkart

A robotkar egy 3D nyomtatott kar, amelyet itt találtam. Csak kövesse a beállítási útmutatót.

A fenti kép azt mutatja, hogyan alakult ki a robotkarom.

Győződjön meg arról, hogy a szervo csapokat a kódomban szereplő Arduino I/O tűknek megfelelően csatlakoztatta. Csatlakoztassa a szervókat alulról felfelé a karban ebben a sorrendben: 3, 11, 10, 9, 6, 5. Ha nem ebben a sorrendben csatlakoztatja, akkor a kar rossz szervo mozog!

Tesztelje, hogy működik -e, ha navigál az Arduino könyvtárba, és futtatja a basicMovement.ino fájlt. Ez egyszerűen megragad egy tárgyat, amelyet a kar elé tesz, és elengedi.

11. lépés: Az RPI és a robotkar csatlakoztatása

Az RPI és a robotkar csatlakoztatása
Az RPI és a robotkar csatlakoztatása

Először fel kell szerelnünk a kamera modult a karom aljára. A fenti kép mutatja, hogyan kell kinéznie.

Próbálja a lehető legegyenesebben beállítani a fényképezőgépet, hogy minimálisra csökkentse a hibákat a felismert újrahasznosított anyag befogásakor. Az anyaglistában látható módon a hosszú kameramodul szalagkábelt kell használnia.

Ezután fel kell töltenie a roboticArm.ino fájlt az Arduino táblára.

Végül csak egy USB -kábelt kell csatlakoztatnunk az RPI USB -portja és az Arduino USB -portja között. Ez lehetővé teszi számukra a soros kommunikációt. Kövesse ezt az oktatóanyagot ennek beállításáról.

12. lépés: Utolsó érintések

Utolsó érintések
Utolsó érintések
Utolsó érintések
Utolsó érintések

Ez a lépés teljesen opcionális, de szeretem minden alkatrészemet egy szép kis projektdobozba tenni.

A fenti képek azt mutatják, hogy néz ki.

A projektdobozt megtalálja az anyagok listáján. Csak fúrtam néhány lyukat, és sárgaréz állványokat használtam az elektronika felszerelésére. Szereltem 4 hűtőventilátort is, hogy forró állapotban állandó légáramot tartsanak az RPI -n és a TPU -n.

13. lépés: Futás

Most már készen áll a robotkar és az RPI bekapcsolására! Az RPI -n egyszerűen futtathatja a recycle_detection.py fájlt. Ez megnyit egy ablakot, és a robotkar ugyanúgy futni kezd, mint a bemutató videóban! A program befejezéséhez nyomja meg a billentyűzet "q" betűjét.

Bátran játsszon a kóddal és érezze jól magát!

14. lépés: Jövőbeli munka

Remélem használni fogom az R. O. S. hogy pontosabb mozdulatokkal irányítsa a robotkart. Ez lehetővé teszi a tárgyak pontosabb felvételét.

15. lépés: Kérdések?

Ha kérdése van, nyugodtan hagyjon megjegyzést alább!

Ajánlott: