
Բովանդակություն:
- Քայլ 1: Մասեր
- Քայլ 2: 3D տպագիր մասեր
- Քայլ 3: Կոդ
- Քայլ 4: Տվյալների ստացում
- Քայլ 5: Պատկերների պիտակավորում
- Քայլ 6: Վերապատրաստում
- Քայլ 7. Վերապատրաստված մոդելի կազմում
- Քայլ 8. Վերամշակման հայտնաբերման մոդել
- Քայլ 9. Տեղադրեք մոդելը
- Քայլ 10. Կառուցեք ռոբոտային թևը
- Քայլ 11: RPI- ի և Robotic Arm- ի միացում
- Քայլ 12: Վերջնական հպումներ
- Քայլ 13: Վազում
- Քայլ 14: Ապագա աշխատանք
- Քայլ 15: Հարցեր:
2025 Հեղինակ: John Day | [email protected]. Վերջին փոփոխված: 2025-01-23 14:48



Գիտե՞ք, որ համայնքներում և ձեռնարկություններում վարակման միջին մակարդակը տատանվում է մինչև 25%: Դա նշանակում է, որ ձեր նետած վերամշակման յուրաքանչյուր չորս կտորից մեկը չի վերամշակվում: Դա պայմանավորված է վերամշակման կենտրոններում մարդկային սխալի պատճառով: Ավանդաբար, աշխատողները աղբը կտեսնեն տարբեր աղբամանների մեջ `կախված նյութից: Մարդիկ պարտավոր են սխալներ թույլ տալ և վերջում աղբը ճիշտ չեն տեսակավորում ՝ հանգեցնելով վարակման: Քանի որ այսօրվա հասարակության մեջ աղտոտվածությունն ու կլիմայի փոփոխությունն ավելի էական են դառնում, վերամշակումը հսկայական դեր է խաղում մեր մոլորակի պաշտպանության գործում: Օգտագործելով ռոբոտներին աղբը տեսակավորելու համար, աղտոտվածության մակարդակը կտրուկ կնվազի, էլ չենք ասում շատ ավելի էժան և ավելի կայուն: Խնդիրը լուծելու համար ես ստեղծեցի վերամշակման տեսակավորման ռոբոտ, որը մեքենայական ուսուցման միջոցով տեսակավորում է տարբեր վերամշակման նյութերի միջև:
Քայլ 1: Մասեր
Համոզվեք, որ այս ձեռնարկին հետևելու համար ունեք հետևյալ մասերը.
3D տպագիր մասեր (տես ստորև բերված քայլը)
Raspberry Pi RPI 4 4 ԳԲ
Google Coral USB արագացուցիչ
Arduino Uno R3
Raspberry Pi Camera Module V2
5V 2A DC պատի սնուցման սարք
DC 12V էլեկտրամատակարարում
SG90 9 գ Micro Servos 4 հատ:
M3 x 0.5 մմ Չժանգոտվող պողպատից ինքնալրվող նեյլոնե վեցանկյուն կողպեքի ընկույզ 100 հատ:
M3x20 կոճակի գլուխ տիտանի պտուտակներ 10 հատ:
MG996R Metal Gear Torque Analog Servo Motor 4 հատ:
Samsung 32GB Ընտրեք հիշողության քարտ
Adafruit Flex մալուխ ազնվամորի Pi տեսախցիկի համար `1 մետր
M2 Արական իգական արույր փողկապի անջատիչ պտուտակավոր ընկույզի տեսականի
60 մմ 12V օդափոխիչ
6.69 "x 5.12" x 2.95 "Նախագծի տուփ
Քայլ 2: 3D տպագիր մասեր
Դուք պետք է եռաչափ տպեք ռոբոտային թևի բոլոր մասերը: Բոլոր ֆայլերը կարող եք գտնել այստեղ:
Քայլ 3: Կոդ
Խնդրում ենք կլոնավորել իմ GitHub պահոցը ՝ այս ձեռնարկին հետևելու համար:
Քայլ 4: Տվյալների ստացում
Օբյեկտների հայտնաբերման մոդելը վերապատրաստելու համար, որը կարող է հայտնաբերել և ճանաչել տարբեր վերամշակման նյութեր, ես օգտագործեցի աղբարկղերի հավաքածուն, որը ներառում է 2527 պատկեր.
- 501 ապակի
- 594 թուղթ
- 403 ստվարաթուղթ
- 482 պլաստիկ
- 410 մետաղ
- 137 աղբ
Վերոնշյալ պատկերը տվյալների օրինակից մեկի օրինակն է տվյալների հավաքածուից:
Այս տվյալների հավաքածուն շատ փոքր է ՝ օբյեկտների հայտնաբերման մոդելը պատրաստելու համար: Կան միայն աղբի մոտ 100 պատկերներ, որոնք շատ քիչ են ճշգրիտ մոդել պատրաստելու համար, ուստի որոշեցի այն բաց թողնել:
Դուք կարող եք օգտագործել այս google drive պանակը ՝ տվյալների հավաքածուն ներբեռնելու համար: Համոզվեք, որ ներբեռնել dataset-resized.zip ֆայլը: Այն պարունակում է մի շարք պատկերներ, որոնք արդեն չափափոխվել են ավելի փոքր չափի `ավելի արագ ուսուցման հնարավորություն տալու համար: Եթե ցանկանում եք չափափոխել հումքի պատկերները ըստ ձեր ցանկության, ազատ զգալ ներբեռնեք dataset-original.zip ֆայլը:
Քայլ 5: Պատկերների պիտակավորում

Հաջորդը, մենք պետք է պիտակավորենք տարբեր վերամշակման նյութերի մի քանի պատկերներ, որպեսզի կարողանանք պատրաստել առարկաների հայտնաբերման մոդելը: Դա անելու համար ես օգտագործեցի labelImg- ը ՝ անվճար ծրագրակազմ, որը թույլ է տալիս պատկերների մեջ պիտակավորել օբյեկտներին սահմանափակող արկղերը:
Պիտակեք յուրաքանչյուր պատկերին համապատասխան պիտակով: Այս ձեռնարկը ցույց է տալիս, թե ինչպես: Համոզվեք, որ յուրաքանչյուր սահմանափակ տուփը դնում եք յուրաքանչյուր օբյեկտի եզրագծին մոտ `ապահովելու համար, որ հայտնաբերման մոդելը հնարավորինս ճշգրիտ լինի: Պահպանեք բոլոր.xml ֆայլերը թղթապանակում:
Վերոնշյալ լուսանկարը ցույց է տալիս, թե ինչպես պիտակավորել ձեր պատկերները:
Սա շատ հոգնեցուցիչ և մտահոգիչ փորձ է: Շնորհակալ եմ ձեզ համար, ես արդեն պիտակեցի բոլոր պատկերները ձեզ համար: Այն կարող եք գտնել այստեղ:
Քայլ 6: Վերապատրաստում
Վերապատրաստման առումով ես որոշեցի օգտագործել փոխանցման ուսուցումը `օգտագործելով Tensorflow- ը: Սա թույլ է տալիս վերապատրաստել արժանապատիվ ճշգրիտ մոդել ՝ առանց մեծ քանակի տվյալների:
Կան մի քանի եղանակներ, որոնք մենք կարող ենք դա անել: Մենք կարող ենք դա անել մեր տեղական աշխատասեղանի վրա ամպի վրա: Մեր տեղական մեքենայի վրա ուսուցումը շատ երկար կտևի ՝ կախված նրանից, թե որքան հզոր է ձեր համակարգիչը և եթե ունեք հզոր GPU: Սա, հավանաբար, ամենահեշտ ձևն է իմ կարծիքով, բայց կրկին արագության բացասական կողմերով:
Տեղափոխման ուսուցման վերաբերյալ պետք է նշել մի քանի կարևոր բաներ: Դուք պետք է համոզվեք, որ նախապես պատրաստված մոդելը, որը դուք օգտագործում եք վերապատրաստման համար, համատեղելի է Coral Edge TPU- ի հետ: Այստեղ կարող եք գտնել համատեղելի մոդելներ: Ես օգտագործել եմ MobileNet SSD v2 (COCO) մոդելը: Ազատորեն փորձեք նաև ուրիշների հետ:
Տեղական մեքենայի վրա մարզվելու համար խորհուրդ կտամ հետևել Google- ի ձեռնարկին կամ EdjeElectronics- ի ձեռնարկին, եթե աշխատում եք Windows 10 -ով: Անձամբ ես փորձարկել եմ EdjeElectroncs ձեռնարկը և հաջողության հասել աշխատասեղանիս վրա: Ես չեմ կարող հաստատել, թե արդյոք Google- ի ձեռնարկը կաշխատի, բայց ես կզարմանայի, եթե այն չաշխատեր:
Ամպում մարզվելու համար կարող եք օգտագործել AWS կամ GCP: Ես գտա այս ձեռնարկը, որը կարող եք փորձել: Այն օգտագործում է Google- ի ամպային TPU- ները, որոնք կարող են շատ արագ պատրաստել ձեր օբյեկտների հայտնաբերման մոդելը: Ազատ զգացեք օգտագործել նաև AWS- ը:
Անկախ նրանից, թե մարզվում եք ձեր տեղական մեքենայի վրա, թե ամպի մեջ, դուք պետք է հայտնվեք պատրաստված tensorflow մոդելով:
Քայլ 7. Վերապատրաստված մոդելի կազմում

Որպեսզի ձեր պատրաստված մոդելը աշխատի Coral Edge TPU- ի հետ, դուք պետք է կազմեք այն:
Վերը նշված է աշխատանքային հոսքի դիագրամ:
Վերապատրաստումից հետո դուք պետք է այն պահեք որպես սառեցված գրաֆիկ (.pb ֆայլ): Այնուհետեւ, դուք պետք է այն փոխակերպեք Tensorflow Lite մոդելի: Նկատի ունեցեք, թե ինչպես է այն գրված «Հետպատրաստման քվանտացում»: Եթե փոխանցման ուսուցումն օգտագործելիս օգտվել եք նախապես պատրաստված համատեղելի մոդելներից, ապա ձեզ հարկավոր չէ դա անել: Համատեղելիության վերաբերյալ ամբողջական փաստաթղթերին ծանոթացեք այստեղ:
Tensorflow Lite մոդելի հետ դուք պետք է այն կազմեք Edge TPU մոդելի: Մանրամասներին, թե ինչպես դա անել, տես այստեղ:
Քայլ 8. Վերամշակման հայտնաբերման մոդել
Եթե չեք ցանկանում անցնել վերապատրաստման, օբյեկտի հայտնաբերման մոդելը փոխակերպելու և կազմելու դժվարությունները, ստուգեք այստեղ իմ վերամշակման հայտնաբերման մոդելը:
Քայլ 9. Տեղադրեք մոդելը

Հաջորդ քայլը Raspberry Pi (RPI) և Edge TPU- ի ստեղծումն է ՝ վարժեցված օբյեկտների հայտնաբերման մոդելը գործարկելու համար:
Նախ, ստեղծեք RPI ՝ օգտագործելով այս ձեռնարկը:
Հաջորդը, այս ձեռնարկից հետո ստեղծեք Edge TPU- ն:
Վերջապես, միացրեք RPI տեսախցիկի մոդուլը ազնվամորու pi- ի հետ:
Դուք այժմ պատրաստ եք փորձարկել ձեր օբյեկտի հայտնաբերման մոդելը:
Եթե դուք արդեն կլոնավորել եք իմ պահեստը, կցանկանաք նավարկել դեպի RPI գրացուցակ և գործարկել test_detection.py ֆայլը.
python test_detection.py -մոդել recycle_ssd_mobilenet_v2_quantized_300x300_coco_2019_01_03/dete_edgetpu.tflite --labels recycle_ssd_mobilenet_v2_quantized_300x300_coco_2019_09/09
Մի փոքր պատուհան պետք է բացվի, և եթե դուք պլաստիկ ջրի շիշ կամ այլ վերամշակման նյութ եք դնում, այն պետք է հայտնաբերի այն ինչպես վերևի պատկերը:
Սեղմեք «q» տառը ձեր ստեղնաշարի վրա `ծրագիրը ավարտելու համար:
Քայլ 10. Կառուցեք ռոբոտային թևը

Ռոբոտացված ձեռքը 3D տպված թև է, որը ես գտել եմ այստեղ: Պարզապես հետևեք այն կարգավորելու ձեռնարկին:
Վերևի պատկերը ցույց է տալիս, թե ինչպես է ստացվել իմ ռոբոտացված ձեռքը:
Համոզվեք, որ սերվո կապերը միացնում եք իմ կոդի Arduino I/O կապերին: Սերվոները թևից ներքև միացրեք այս հաջորդականությամբ ՝ 3, 11, 10, 9, 6, 5:
Փորձարկեք, որ այն աշխատի ՝ նավարկելով Arduino գրացուցակում և գործարկելով BasicMovement.ino ֆայլը: Սա պարզապես կբռնի մի առարկա, որը դուք դնում եք թևի դիմաց և այն հետ կթողնեք:
Քայլ 11: RPI- ի և Robotic Arm- ի միացում

Նախ պետք է խցիկի մոդուլը ամրացնել ճանկի ներքևի մասում: Վերոնշյալ պատկերը ցույց է տալիս, թե ինչպիսին պետք է լինի այն:
Փորձեք հնարավորինս հարթեցնել տեսախցիկը `նվազագույնի հասցնելու ճանաչված վերամշակման նյութը գրավելու սխալները: Դուք պետք է օգտագործեք երկար տեսախցիկի մոդուլի ժապավենային մալուխը, ինչպես երևում է նյութերի ցանկում:
Հաջորդը, դուք պետք է roboticArm.ino ֆայլը վերբեռնեք Arduino տախտակին:
Ի վերջո, մենք պարզապես պետք է միացնենք USB մալուխ RPI- ի USB պորտի և Arduino- ի USB պորտի միջև: Սա նրանց թույլ կտա շփվել սերիայի միջոցով: Հետևեք այս ձեռնարկին, թե ինչպես դա կարգավորել:
Քայլ 12: Վերջնական հպումներ


Այս քայլը լիովին կամընտիր է, բայց ես սիրում եմ իմ բոլոր բաղադրիչները դնել գեղեցիկ փոքրիկ նախագծի տուփի մեջ:
Վերևի պատկերները ցույց են տալիս, թե ինչպես է այն նայում:
Դուք կարող եք գտնել նախագծի տուփը նյութերի ցանկում: Ես պարզապես մի քանի անցք բացեցի և օգտագործեցի փողային կանգառներ `էլեկտրոնիկան տեղադրելու համար: Ես նաև տեղադրեցի սառեցման 4 օդափոխիչ ՝ տաք վիճակում մշտական օդի հոսք պահելու համար RPI և TPU- ով:
Քայլ 13: Վազում
Դուք այժմ պատրաստ եք միացնել ինչպես ռոբոտային ձեռքը, այնպես էլ RPI- ն: RPI- ի վրա կարող եք պարզապես գործարկել recycle_detection.py ֆայլը: Սա կբացի պատուհան, և ռոբոտացված ձեռքը կսկսի աշխատել այնպես, ինչպես ցուցադրական տեսանյութում: Սեղմեք «q» տառը ձեր ստեղնաշարի վրա `ծրագիրը ավարտելու համար:
Ազատ զգացեք խաղալ կոդի հետ և զվարճացեք:
Քայլ 14: Ապագա աշխատանք
Հուսով եմ ՝ կօգտագործեմ R. O. S. ավելի ճշգրիտ շարժումներով վերահսկել ռոբոտացված ձեռքը: Սա հնարավորություն կտա ավելի ճշգրիտ վերցնել օբյեկտները:
Քայլ 15: Հարցեր:
Ազատորեն թողեք մեկնաբանություն ստորև, եթե ունեք հարցեր:
Խորհուրդ ենք տալիս:
Արդուինո - Լաբիրինթոս լուծող ռոբոտ (MicroMouse) Wall հետևող ռոբոտ. 6 քայլ (նկարներով)

Արդուինո | Maze Solving Robot (MicroMouse) Wall After Robot: Բարի գալուստ, ես Իսահակն եմ, և սա իմ առաջին ռոբոտն է " Striker v1.0 ". Այս ռոբոտը նախատեսված էր պարզ լաբիրինթոս լուծելու համար: Մրցույթում մենք ունեինք երկու լաբիրինթոս և ռոբոտը կարողացավ դրանք բացահայտել: Լաբիրինթոսում ցանկացած այլ փոփոխություն կարող է պահանջել փոփոխություն
Հավասարակշռող ռոբոտ / 3 անիվի ռոբոտ / STEM ռոբոտ ՝ 8 քայլ

Հավասարակշռող ռոբոտ / 3 անիվի ռոբոտ / STEM ռոբոտ. Մենք կառուցել ենք համակցված հավասարակշռող և եռանիվ ռոբոտ `կրթական օգտագործման համար դպրոցներում և դպրոցից հետո կրթական ծրագրերում: Ռոբոտը հիմնված է Arduino Uno- ի, սովորական վահանի վրա (շինարարության բոլոր մանրամասները տրամադրված են), Li Ion մարտկոցի տուփով (բոլորը կառուցված են
LittleBits կախարդական մարմարի տեսակավորման մեքենա. 11 քայլ (նկարներով)

LittleBits կախարդական մարմարի տեսակավորման մեքենա. Երբևէ ցանկացե՞լ եք մարմարները տեսակավորել: Հետո կարող եք կառուցել այս մեքենան: Դուք այլևս կարիք չեք ունենա խառնվել մարմարե տոպրակի միջով: Այն մարմարի տեսակավորման կախարդական մեքենա է, որն օգտագործում է Adafruit- ի գույնի տվիչը ՝ TCS34725 տիպի և Լեոնարդո Արդուինոյի
Պտուտակների տեսակավորման մեքենա ՝ 7 քայլ (նկարներով)

Պտուտակների տեսակավորման մեքենա. Մի օր լաբորատորիայում (FabLab Մոսկվա) ես տեսա իմ գործընկերոջը, որը զբաղված էր պտուտակների, ընկույզների, օղակների և այլ սարքավորումների ամբողջ տուփը տեսակավորելով: Կանգնելով նրա կողքին ՝ ես մի վայրկյան նայեցի և ասացի. &Quot; Դա կատարյալ աշխատանք կլիներ մեքենայի համար " Արագ հայացքից հետո
Վերամշակման նյութերի միջոցով կայծակնային վզնոցի պատրաստում. 5 քայլ (նկարներով)

Վերամշակման նյութերի միջոցով կայծակի վզնոց պատրաստելը. Ողջույն, մոտ մեկ ամիս առաջ ես Bangood.com- ից գնեցի մի քանի մատչելի LED լուսադիոդային լույսեր: Դուք կարող եք տեսնել, որ LED շերտի լույսերն օգտագործվում են տան/այգու ներքին/արտաքին ձևավորման մեջ և այլն: Ես որոշել եմ լուսավոր վզնոց պատրաստել, երբ նոր