Obsah:
- Krok 1: Diely
- Krok 2: 3D tlačené diely
- Krok 3: Kód
- Krok 4: Získanie údajov
- Krok 5: Označenie obrázkov
- Krok 6: Školenie
- Krok 7: Zostavenie trénovaného modelu
- Krok 8: Recyklačný model detekcie
- Krok 9: Nasadenie modelu
- Krok 10: Postavte si robotickú ruku
- Krok 11: Pripojenie RPI a robotického ramena
- Krok 12: Konečné dotyky
- Krok 13: Beh
- Krok 14: Budúca práca
- Krok 15: Otázky?
Video: Robot na triedenie odpadu: 15 krokov (s obrázkami)
2024 Autor: John Day | [email protected]. Naposledy zmenené: 2024-01-30 11:57
Vedeli ste, že priemerná miera kontaminácie v komunitách a podnikoch sa pohybuje až do 25%? To znamená, že jeden zo každých štyroch kusov recyklácie, ktoré vyhodíte, sa nerecykluje. Je to spôsobené ľudskou chybou v recyklačných strediskách. Pracovníci tradične triedia odpadky do rôznych košov v závislosti od materiálu. Ľudia sú povinní robiť chyby a skončiť tak, že nebudú správne triediť odpadky, čo povedie ku kontaminácii. Keďže znečistenie a zmena klímy sú v dnešnej spoločnosti ešte dôležitejšie, recyklácia zohráva obrovskú úlohu pri ochrane našej planéty. Použitím robotov na triedenie odpadu sa miera kontaminácie drasticky zníži, nehovoriac o oveľa lacnejších a udržateľnejších. Aby som to vyriešil, vytvoril som robot na triedenie odpadu, ktorý pomocou strojového učenia triedi medzi rôznymi recyklovanými materiálmi.
Krok 1: Diely
Spolu s týmto tutoriálom sa uistite, že máte k dispozícii nasledujúce časti:
3D tlačené diely (pozri krok nižšie)
Raspberry Pi RPI 4 4 GB
Google Coral USB Accelerator
Arduino Uno R3
Modul kamery Raspberry Pi V2
Napájanie na stenu 5V 2A DC
Napájanie DC 12V
Micro servo SG90 9g, 4 kusy.
Samojistná nylonová šesťhranná poistná matica M3 x 0,5 mm z nerezovej ocele 100 ks.
Skrutky s titánovou hlavou M3x20 s titánovou hlavou, 10 kusov.
Analógový servomotor MG996R s kovovým prevodom a krútiacim momentom, 4 kusy.
Samsung 32 GB pamäťová karta Select
Flex kábel Adafruit pre kameru Raspberry Pi - 1 meter
Súprava sortimentu skrutiek s oddelenými maticami a dištančnými skrutkami M2
60 mm 12V ventilátor
Krabica projektu 6,69 palcov x 5,12 palcov x 2,95 palcov
Krok 2: 3D tlačené diely
Budete musieť 3D tlačiť všetky diely robotického ramena. Všetky súbory nájdete tu.
Krok 3: Kód
Klonujte moje úložisko GitHub a postupujte podľa tohto tutoriálu.
Krok 4: Získanie údajov
Na trénovanie modelu detekcie objektov, ktorý dokáže detekovať a rozpoznať rôzne recyklačné materiály, som použil súbor údajov koša, ktorý obsahuje 2527 obrázkov:
- Sklo 501
- Papier 594
- 403 kartón
- 482 plast
- 410 kov
- 137 odpadkov
Vyššie uvedený obrázok je príkladom obrázkov z množiny údajov.
Tento súbor údajov je veľmi malý na trénovanie modelu detekcie objektov. Existuje iba asi 100 obrázkov koša, ktoré sú príliš málo na to, aby sa vycvičil presný model, a preto som sa rozhodol to vynechať.
Tento priečinok na Disku Google môžete použiť na stiahnutie súboru údajov. Nezabudnite si stiahnuť súbor dataset-resized.zip. Obsahuje sadu obrázkov, ktorých veľkosť je už zmenená na menšiu veľkosť, aby bolo umožnené rýchlejšie školenie. Ak by ste chceli zmeniť veľkosť nespracovaných obrázkov podľa vlastného vkusu, pokojne si stiahnite súbor dataset-original.zip.
Krok 5: Označenie obrázkov
Ďalej musíme označiť niekoľko obrázkov rôznych recyklačných materiálov, aby sme mohli trénovať model detekcie objektov. Na to som použil labelImg, bezplatný softvér, ktorý vám umožňuje na obrázkoch označovať rámčeky ohraničujúce objekty.
Každý obrázok označte správnym štítkom. Tento tutoriál vám ukáže ako. Uistite sa, že každé ohraničovacie pole je čo najbližšie k okraju každého objektu, aby bol detekčný model čo najpresnejší. Uložte všetky súbory.xml do priečinka.
Vyššie uvedená fotografia ukazuje, ako označiť obrázky.
Je to veľmi únavný a otupujúci zážitok. Našťastie pre vás som už všetky obrázky označil! Nájdete ho tu.
Krok 6: Školenie
Čo sa týka školení, rozhodol som sa využiť transferové učenie pomocou Tensorflow. To nám umožňuje trénovať slušne presný model bez veľkého množstva údajov.
Môžeme to urobiť niekoľkými spôsobmi. Môžeme to urobiť na našom lokálnom stolnom počítači v cloude. Školenie na našom miestnom počítači bude trvať veľmi dlho v závislosti od toho, aký výkonný je váš počítač a či máte výkonný grafický procesor. Toto je podľa mňa asi najľahší spôsob, ale opäť s poklesom rýchlosti.
O prenosovom vzdelávaní je potrebné poznamenať niekoľko kľúčových vecí. Musíte sa uistiť, že vopred vyškolený model, ktorý používate na školenie, je kompatibilný s procesorom Coral Edge TPU. Kompatibilné modely nájdete tu. Použil som model MobileNet SSD v2 (COCO). Nebojte sa experimentovať aj s ostatnými.
Ak chcete trénovať na svojom lokálnom počítači, odporučil by som postupovať podľa pokynov spoločnosti Google alebo návodu pre program EdjeElectronics, ak beží na systéme Windows 10. Osobne som testoval návod pre program EdjeElectroncs a dosiahol som úspech na pracovnej ploche. Nemôžem potvrdiť, či bude návod od Googlu fungovať, ale bol by som prekvapený, ak nie.
Na tréning v cloude môžete použiť AWS alebo GCP. Našiel som tento návod, ktorý môžete vyskúšať. Využíva cloudové TPU od spoločnosti Google, ktoré dokáže super rýchlo natrénovať váš model detekcie objektov. Neváhajte použiť aj AWS.
Bez ohľadu na to, či trénujete na miestnom počítači alebo v cloude, mali by ste skončiť s natrénovaným modelom tensorflow.
Krok 7: Zostavenie trénovaného modelu
Aby váš trénovaný model fungoval s Coral Edge TPU, musíte ho skompilovať.
Hore je diagram pracovného postupu.
Po tréningu ho musíte uložiť ako zmrazený graf (súbor.pb). Potom ho musíte previesť na model Tensorflow Lite. Všimnite si, ako sa hovorí „Kvantizácia po tréningu“. Ak ste pri prenosovom učení používali kompatibilné vopred vyškolené modely, nemusíte to robiť. Pozrite sa na úplnú dokumentáciu o kompatibilite tu.
Pri modeli Tensorflow Lite ho musíte skompilovať s modelom Edge TPU. Podrobnosti o tom, ako to urobiť, nájdete tu.
Krok 8: Recyklačný model detekcie
Ak nechcete absolvovať školenia, prevádzanie a zostavovanie modelu detekcie objektov, pozrite sa na môj model detekcie recyklácie tu.
Krok 9: Nasadenie modelu
Ďalším krokom je nastavenie Raspberry Pi (RPI) a Edge TPU na spustenie modelu trénovanej detekcie objektov.
Najprv pomocou tohto tutoriálu nastavte RPI.
Ďalej nastavte Edge TPU podľa tohto tutoriálu.
Nakoniec k malinovému pi pripojte modul kamery RPI.
Teraz ste pripravení otestovať svoj model detekcie objektov!
Ak ste už klonovali moje úložisko, budete chcieť prejsť do adresára RPI a spustiť súbor test_detection.py:
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.txt
Malo by vyskočiť malé okno a ak dáte plastovú fľašu s vodou alebo iný recyklovaný materiál, malo by to zistiť ako na obrázku vyššie.
Program ukončíte stlačením písmena „q“na klávesnici.
Krok 10: Postavte si robotickú ruku
Robotické rameno je rameno s 3D tlačou, ktoré som našiel tu. Pri nastavovaní postupujte podľa pokynov.
Obrázok vyššie ukazuje, ako moja robotická ruka dopadla.
Uistite sa, že ste pripojili servopiny k vstupným/výstupným kolíkom Arduino v mojom kóde. Pripojte serva zdola k hornej časti ramena v tomto poradí: 3, 11, 10, 9, 6, 5. Ak ho nezapojíte v tomto poradí, rameno posunie nesprávne servo!
Vyskúšajte, či to funguje, prejdite do adresára Arduino a spustite súbor basicMovement.ino. Jednoducho uchopíte predmet, ktorý mu položíte pred ruku a odhodíte ho za seba.
Krok 11: Pripojenie RPI a robotického ramena
Najprv musíme namontovať modul kamery na spodok pazúry. Obrázok vyššie ukazuje, ako by to malo vyzerať.
Pokúste sa fotoaparát zarovnať čo najrovnejšie, aby ste minimalizovali chyby pri uchopení rozpoznaného recyklovaného materiálu. Budete musieť použiť plochý kábel modulu kamery, ako je vidieť v zozname materiálov.
Ďalej musíte nahrať súbor roboticArm.ino na dosku Arduino.
Nakoniec musíme len pripojiť kábel USB medzi port USB RPI a port USB Arduino. To im umožní komunikovať prostredníctvom sériovej linky. Nasledujte tento návod, ako to nastaviť.
Krok 12: Konečné dotyky
Tento krok je úplne voliteľný, ale rád by som vložil všetky svoje súčasti do pekného malého boxu projektu.
Obrázky vyššie ukazujú, ako to vyzerá.
Rámček projektu nájdete v zozname materiálov. Práve som vyvŕtal niekoľko otvorov a na montáž elektroniky som použil mosadzné podpery. Namontoval som tiež 4 chladiace ventilátory, aby v horúcom stave udržiaval konštantný prúd vzduchu cez RPI a TPU.
Krok 13: Beh
Teraz ste pripravení zapnúť robotické rameno aj RPI! Na RPI môžete jednoducho spustiť súbor recycle_detection.py. Otvorí sa okno a robotické rameno začne bežať rovnako ako v demo videu! Program ukončíte stlačením písmena „q“na klávesnici.
Neváhajte sa hrať s kódom a bavte sa!
Krok 14: Budúca práca
Dúfam, že použijem R. O. S. na ovládanie robotického ramena presnejšími pohybmi. To umožní presnejšie vyberanie predmetov.
Krok 15: Otázky?
V prípade akýchkoľvek otázok neváhajte zanechať komentár nižšie!
Odporúča:
Elektronické triedenie mincí: 7 krokov (s obrázkami)
Elektronický triedič mincí: Dávno, veľmi dávno, keď bolo ešte možné chodiť do školy, sme prišli so zaujímavým nápadom vyrobiť zariadenie, ktoré funguje pomerne jednoduchým spôsobom - po vhodení správneho množstva peňazí sme vydá konkrétny výrobok. Nemôžem sa odhaliť
Stroj na triedenie magického mramoru LittleBits: 11 krokov (s obrázkami)
LittleBits Magical Marble Triediaci stroj: Chceli ste niekedy triediť guličky? Potom ste mohli postaviť tento stroj. Už nikdy nebudete musieť miešať vrece mramoru! Je to čarovný mramorový triediaci stroj, ktorý používa farebný senzor od spoločnosti Adafruit, typ TCS34725 a Leonardo Arduino od
Stroj na triedenie skrutiek: 7 krokov (s obrázkami)
Stroj na triedenie skrutiek: Jedného dňa som v laboratóriu (FabLab Moskva) videl svojho kolegu zaneprázdneného triedením celej škatule so skrutkami, maticami, krúžkami a iným hardvérom. Zastavil som vedľa neho, chvíľu som to sledoval a povedal som: " Pre stroj by to bola perfektná práca. &Quot; Po rýchlom pohľade
Výroba kvalitných hračiek z plastového odpadu: Príručka pre začiatočníkov: 8 krokov (s obrázkami)
Výroba kvalitných hračiek z plastového odpadu: Príručka pre začiatočníkov: Dobrý deň. Moje meno je Mario a vyrábam umelecké hračky z plastového odpadu. Od malých vibrobotov po veľké kyborgské brnenia transformujem rozbité hračky, uzávery fliaš, mŕtve počítače a poškodené spotrebiče na výtvory inšpirované mojimi obľúbenými komiksmi, filmami, hrami
Twitchy, váš priateľ z elektronického odpadu: 11 krokov (s obrázkami)
Twitchy, váš priateľ z elektronického odpadu: Je čistejší ako škrečok a má väčšiu osobnosť ako väčšina plazov a je oveľa múdrejší ako tento pes, ktorého som mal. Navyše je vyrobený z harabúrd a jeho tvorba je zábavná. Ľudskú populáciu možno (a pravdepodobne by mala byť) rozdeliť na