Orodha ya maudhui:
- Hatua ya 1: Kabla ya kuanza
- Hatua ya 2: Unda Mfano wa ML maalum katika Lobe
- Hatua ya 3: Jenga: Vifaa
- Hatua ya 4: Kanuni: Programu
- Hatua ya 5: Jaribu: Endesha Programu
- Hatua ya 6: (Hiari) Ujenge: Kamilisha Mzunguko Wako
- Hatua ya 7: (Kwa hiari) Jenga: Kesi
- Hatua ya 8: Sakinisha na Tumia
Video: Tengeneza Kitambulishaji cha Tupio cha Pi Na ML!: Hatua 8 (na Picha)
2024 Mwandishi: John Day | [email protected]. Mwisho uliobadilishwa: 2024-01-30 12:48
Mradi wa Kuainisha takataka, unaojulikana kwa upendo kama "Unaenda wapi ?!", umeundwa kutengeneza vitu mbali haraka na kwa kuaminika zaidi.
Mradi huu unatumia mtindo wa Kujifunza Mashine (ML) uliofunzwa kwa Lobe, mjenzi wa mtindo wa mwanzo (hakuna kificho!) ML modeli mjenzi, kubaini ikiwa kitu huenda kwenye takataka, kuchakata upya, mbolea, au taka hatari. Mfano huo hupakiwa kwenye kompyuta ya Raspberry Pi 4 kuifanya iweze kutumika mahali popote ambapo unaweza kupata mapipa ya takataka!
Mafunzo haya hukusogezea jinsi ya kuunda mradi wako wa Kuainisha Takataka kwenye Raspberry Pi kutoka kwa mfano wa Lobe TensorFlow huko Python3.
Ugumu: Kompyuta ++ (maarifa mengine w / mizunguko na uandishi ni muhimu)
Wakati wa Kusoma: 5 min
Wakati wa Kuunda: 60 - 90 min
Gharama: ~ $ 70 (pamoja na Pi 4)
Ugavi:
Programu (upande wa PC)
- Lobe
- WinSCP (au njia nyingine ya kuhamisha faili ya SSH, inaweza kutumia CyberDuck kwa Mac)
- Kituo
- Uunganisho wa Desktop ya mbali au RealVNC
Vifaa
- Pi Raspberry, Kadi ya SD, na usambazaji wa umeme wa USB-C (5V, 2.5A)
- Kamera ya Pi
- Pushbutton
-
5 LEDs (4 kiashiria LEDs na 1 hali LED)
- Njano ya LED: takataka
- LED ya Bluu: kusaga tena
- Kijani cha LED: mbolea
- LED nyekundu: taka hatari
- LED nyeupe: hadhi
- 6 220 vipinzani vya Ohm
- Waya 10 za kuruka kwa M-to-M
- Bodi ya mkate, saizi ya nusu
Ikiwa unachagua kutengenezea:
- Kontakt 1 ya JST, mwisho wa kike tu
- 2 waya za kuruka za M-to-F
- Waya 10 za kuruka F-to-F
- PCB
Ufungaji
- Kesi ya mradi (k.m kadibodi, mbao, au sanduku la plastiki, takriban. 6 "x 5" x 4 ")
-
0.5 "x 0.5" (2cm x 2cm) mraba wazi wa plastiki
Mfano. kutoka kifuniko cha chombo cha chakula cha plastiki
- Velcro
Zana
- Wakata waya
- Kisu cha usahihi (kwa mfano kisu halisi) na kitanda cha kukata
- Chuma cha kulehemu (hiari)
- Chombo moto kuyeyuka (au gundi nyingine isiyo ya kusonga - epoxy inafanya kazi nzuri lakini ni ya kudumu)
Hatua ya 1: Kabla ya kuanza
Mradi huu unafikiria unaanza na Raspberry Pi iliyowekwa kikamilifu katika usanidi usio na kichwa. Hapa kuna mwongozo rafiki wa Kompyuta jinsi ya kufanya hivyo.
Inasaidia pia kuwa na ujuzi wa mambo yafuatayo:
-
Kujulikana na Raspberry Pi
- Hapa kuna mwongozo mzuri wa kuanza!
- Inasaidia pia: Kuanza na kamera ya Pi
-
Kusoma na kuhariri nambari ya chatu (hautahitaji kuandika programu, hariri tu)
Utangulizi wa Chatu na Raspberry Pi
- Kusoma michoro ya wiring ya Fritzing
-
Kutumia ubao wa mkate
Jinsi ya kutumia mafunzo ya ubao wa mkate
Tafuta mahali ambapo takataka yako huenda
Kila mji kote Amerika (na ningechukulia ulimwengu) una takataka zake / kuchakata / mbolea / n.k. mfumo wa ukusanyaji. Hii inamaanisha kuwa ili kufanya kitambulisho sahihi cha takataka, tutahitaji 1) kujenga mtindo wa ML wa kawaida (tutashughulikia hii katika hatua inayofuata - hakuna nambari!) Na 2) kujua wapi kila kipande cha takataka huenda.
Kwa kuwa sikujua kila wakati pipa sahihi kwa kila kitu nilichokuwa nikifundisha mtindo wangu, nilitumia kipeperushi cha Seattle Utilities (Picha 1), na pia hii ya kupendeza "Inakwenda wapi?" tafuta zana kwa mji wa Seattle! Angalia ni rasilimali zipi zinapatikana katika jiji lako kwa kutafuta huduma ya kukusanya taka ya jiji lako na kutumia wavuti yake.
Hatua ya 2: Unda Mfano wa ML maalum katika Lobe
Lobe ni zana rahisi kutumia ambayo ina kila kitu unachohitaji ili kuleta maoni ya mashine yako ya kujifunza. Onyesha mifano ya kile unachotaka kufanya, na hufundisha kiatomati mtindo wa ujifunzaji wa mashine ambao unaweza kusafirishwa kwa vifaa na programu za pembeni. Haihitaji uzoefu wowote kuanza. Unaweza kufundisha kwenye kompyuta yako mwenyewe bure!
Hapa kuna muhtasari wa haraka wa jinsi ya kutumia Lobe:
1. Fungua programu ya Lobe na uunda mradi mpya.
2. Chukua au uingize picha na uziweke lebo katika aina zinazofaa. (Picha 1) Tutahitaji lebo hizi baadaye kwenye sehemu ya programu.
Kuna njia mbili za kuagiza picha:
- Piga picha za vitu moja kwa moja kutoka kwa kamera ya wavuti ya kompyuta yako, au
-
Leta picha kutoka folda zilizopo kwenye kompyuta yako.
Kumbuka kwamba jina la folda ya picha litatumika kama jina la lebo ya kitengo, kwa hivyo hakikisha inalingana na lebo zilizopo
Kando: Niliishia kutumia njia zote mbili, kwani picha unazo, mfano wako ni sahihi zaidi.
3. Tumia kipengee cha "Cheza" kujaribu usahihi wa kielelezo. Badilisha umbali, taa, nafasi za mikono, nk kutambua mfano uko wapi na sio sahihi. Ongeza picha zaidi inapohitajika. (Picha 3 - 4)
4. Ukiwa tayari, toa nje mfano wako wa Lobe ML katika muundo wa TensorFlow (TF) Lite.
Vidokezo:
-
Kabla ya kuagiza picha, andika orodha ya vitengo vyote utakavyohitaji na jinsi unavyotaka kuziweka lebo (kwa mfano "takataka," "kusindika tena," "mbolea," n.k.)
Kumbuka: Tumia lebo sawa na inavyoonyeshwa kwenye picha ya "Lebo za Mfano wa Lobe" hapo juu ili kupunguza idadi ya nambari unayohitaji kubadilisha
- Jumuisha kitengo cha "sio takataka" kilicho na picha za kitu kingine chochote kinachoweza kuwa kwenye picha (k.m mikono na mikono yako, usuli, nk.)
- Ikiwezekana, piga picha kutoka kwa Kamera ya Pi na uingize kwenye Lobe. Hii itaboresha sana usahihi wa mfano wako!
- Unahitaji picha zaidi? Angalia hifadhidata za chanzo wazi juu ya Kaggle, pamoja na picha hii ya uainishaji wa takataka!
- Unahitaji msaada zaidi? Ungana na Jumuiya ya Lobe kwenye Reddit!
Hatua ya 3: Jenga: Vifaa
1. Unganisha kwa uangalifu Kamera ya Pi na Pi (tembelea mwongozo wa kuanza wa Pi Foundation kwa habari zaidi). (Picha 1)
2. Fuata mchoro wa wiring kuunganisha kitufe cha kushinikiza na LED kwenye pini za Pi GPIO.
- Pushbutton: Unganisha mguu mmoja wa kifungo na pini ya GPIO 2. Unganisha mwingine, kupitia kontena, kwa pini ya GPIO GND.
- Njano ya LED: Unganisha mguu mzuri (mrefu) kwa pini ya GPIO 17. Unganisha mguu mwingine, kupitia kontena, kwa pini ya GPIO GND.
- LED ya Bluu: Unganisha mguu mzuri kwa pini ya GPIO 27. Unganisha mguu mwingine, kupitia kontena, kwa pini ya GPIO GND.
- Kijani cha LED: Unganisha mguu mzuri na pini ya GPIO 22. Unganisha mguu mwingine, kupitia kontena, kwa pini ya GPIO GND.
- LED Nyekundu: Unganisha mguu mzuri na pini ya GPIO 23. Unganisha mguu mwingine, kupitia kontena, kwa pini ya GPIO GND.
- LED Nyeupe: Unganisha mguu mzuri na pini ya GPIO 24. Unganisha mguu mwingine, kupitia kontena, kwa pini ya GPIO GND.
3. Inashauriwa kujaribu mzunguko wako kwenye ubao wa mkate na uendeshe programu kabla ya kutengeneza au kutengeneza unganisho lolote kudumu. Ili kufanya hivyo, tutahitaji kuandika na kupakia programu yetu ya programu, kwa hivyo twende hatua inayofuata!
Hatua ya 4: Kanuni: Programu
1. Kwenye PC yako, fungua WinSCP na unganisha kwenye Pi yako. Unda folda ya Lobe kwenye saraka yako ya nyumbani ya Pi na uunda folda ya mfano katika saraka hiyo.
2. Buruta yaliyomo kwenye folda ya Lobe TF kwenye Pi. Andika maelezo ya njia ya faili: / home / pi / Lobe / model
3. Kwenye Pi, fungua kituo na upakue maktaba ya lobe-python ya Python3 kwa kutumia amri zifuatazo za bash:
kusanikisha pip3
pip3 kufunga lobe
4. Pakua msimbo wa Kiainishaji cha Takataka (rpi_trash_classifier.py) kutoka repo hii kwenye Pi (bonyeza kitufe cha "Msimbo" kama inavyoonyeshwa kwenye Picha 1).
- Unapendelea kunakili / kubandika? Pata nambari mbichi hapa.
- Ungependa kupakua kwenye kompyuta yako? Pakua repo / nambari kwenye kompyuta yako kisha uhamishe nambari ya Python kwa Pi kupitia WinSCP (au mpango wako wa kuhamisha faili ya mbali).
5. Mara tu ukiunganisha vifaa kwenye pini za GPIO ya Pi, soma nambari ya mfano na usasishe njia zozote za faili inahitajika.
- Mstari wa 29: njia ya faili kwa mfano wa Lobe TF
- Mstari wa 47 na 83: njia ya faili ya picha zilizopigwa kupitia Kamera ya Pi
6. Ikiwa ni lazima, sasisha lebo za mfano katika nambari ili zilingane kabisa na maandiko katika mfano wako wa Lobe (pamoja na mtaji, uakifishaji, n.k.):
- Mstari wa 57: "takataka"
- Mstari wa 60: "kusaga"
- Mstari wa 63: "mbolea"
- Mstari wa 66: "kituo hatari cha taka"
- Mstari wa 69: "sio takataka!"
7. Endesha programu kwa kutumia Python3 kwenye dirisha la terminal:
python3 rpi_trash_classifier.py
Hatua ya 5: Jaribu: Endesha Programu
Muhtasari wa Programu
Unapoanza programu kwanza, itachukua muda kupakia maktaba ya TensorFlow na mfano wa Lobe ML. Wakati mpango uko tayari kunasa picha, taa ya hadhi (nyeupe LED) itapiga.
Mara tu unapochukua picha, programu italinganisha picha na mfano wa Lobe ML na kutoa utabiri unaosababishwa (mstari wa 83). Pato huamua ni taa ipi imewashwa: manjano (takataka), bluu (kusaga), kijani (mbolea), au nyekundu (taka hatari).
Ikiwa hakuna kiashiria chochote cha LED kinachowasha na hali ya LED inarudi kwenye hali ya kunde, inamaanisha kuwa picha iliyonaswa haikuwa "takataka", kwa maneno mengine, pata picha tena!
Kukamata Picha
Bonyeza kitufe cha kushinikiza kunasa picha. Kumbuka kuwa unaweza kuhitaji kushikilia kitufe cha kushinikiza kwa angalau 1s kwa mpango wa kusajili vyombo vya habari. Inashauriwa kuchukua picha kadhaa za jaribio, kisha uzifungue kwenye Desktop ili uelewe vizuri mwonekano wa kamera na fremu.
Kuruhusu wakati wa mtumiaji kuweka kitu na viwango vya taa ya kamera kurekebisha, inachukua kama 5s kukamata picha kikamilifu. Unaweza kubadilisha mipangilio hii kwenye nambari (mistari 35 na 41), lakini kumbuka kwamba Pi Foundation inapendekeza kiwango cha chini cha 2s kwa marekebisho ya kiwango cha mwanga.
Utatuzi wa shida
Changamoto kubwa ni kuhakikisha kuwa picha iliyonaswa ndio tunayotarajia, kwa hivyo chukua muda kukagua picha na kulinganisha matokeo yanayotarajiwa na pato la LED inayoashiria. Ikiwa ni lazima, unaweza kupitisha picha kwa mfano wa Lobe ML kwa ukiukaji wa moja kwa moja na kulinganisha haraka.
Vitu vichache vya kuzingatia:
- Maktaba ya TensorFlow labda itatupa ujumbe wa onyo - hii ni kawaida kwa toleo linalotumiwa katika nambari hii ya sampuli.
- Lebo za utabiri lazima ziwe sawa kama ilivyoandikwa katika kazi ya led_select (), pamoja na herufi kubwa, uakifishaji, na nafasi. Hakikisha kubadilisha hizi ikiwa una mtindo tofauti wa Lobe.
- Pi inahitaji usambazaji wa umeme thabiti. Nuru ya nguvu ya Pi inapaswa kuwa mkali, nyekundu nyekundu.
- Ikiwa taa moja au zaidi haziwashi wakati inavyotarajiwa, angalia kwa kuzilazimisha na amri:
red_led.on ()
Hatua ya 6: (Hiari) Ujenge: Kamilisha Mzunguko Wako
Sasa kwa kuwa tumejaribu na, ikiwa ni lazima, tumesuluhisha, mradi wetu ili ufanye kazi kama inavyotarajiwa, tuko tayari kutengeneza mzunguko wetu!
Kumbuka: Ikiwa hauna chuma cha kutengeneza, unaweza kuruka hatua hii. Njia moja ni kupaka unganisho la waya kwenye gundi moto (chaguo hili litakuruhusu kurekebisha / kuongeza / kutumia vitu baadaye, lakini ina uwezekano mkubwa wa kuvunja), au kutumia epoxy au gundi ya kudumu sawa (chaguo hili litakuwa la kudumu zaidi lakini hautaweza kutumia mzunguko au uwezekano wa Pi baada ya kufanya hivi)
Maoni ya haraka juu ya chaguo langu la kubuni (Picha 1):
- Nilichagua waya za kike za kuruka kwa LED na Pi GPIO kwa sababu zinaniruhusu kuondoa LED na kubadilisha rangi au kuzisogeza ikiwa inahitajika. Unaweza kuruka hizi ikiwa unataka kufanya uhusiano uwe wa kudumu.
- Vivyo hivyo, nilichagua kiunganishi cha JST kwa kitufe cha kushinikiza.
Songa mbele kwa ujenzi
1. Kata kila waya za kike za kuruka kwa nusu (ndio, zote!). Kutumia vipande vya waya, ondoa karibu 1/4 (1 / 2cm) ya insulation ya waya.
2. Kwa kila moja ya taa, tengeneza kontena la 220Ω kwa mguu hasi (mfupi). (Picha 2)
3. Kata kipande kidogo, karibu 1 (2cm) ya bomba linalopunguza joto na usukume juu ya makutano ya LED na kontena. Hakikisha mguu mwingine wa kontena unapatikana, halafu pasha moto bomba la kusinyaa hadi ipate kuunganishwa. (Picha 3)
4. Ingiza kila LED kwenye jozi ya waya za kuruka za kike. (Picha 4)
5. Andika lebo za waya za kuruka (k.v. na mkanda), kisha waya za jumper kwenye bodi yako ya mzunguko iliyochapishwa (PCB). (Picha 5)
6. Halafu, tumia (kata) waya ya kuruka ya kike kuunganisha kila LED kwenye pini yake ya Pi GPIO. Solder na uweke lebo waya ya kuruka ili chuma wazi kiunganishwe na mguu mzuri wa LED kupitia PCB. (Picha 5)
Kumbuka: Pale utakapoingiza waya huu itategemea mpangilio wa PCB yako. Unaweza pia kuuza waya huu moja kwa moja kwa waya mzuri wa jumper ya LED.
7. Solder kontena 220Ω hadi mwisho hasi (mweusi) wa kiunganishi cha JST. (Picha 6)
8. Solder kontakt JST na resistor kwa kifungo cha kushinikiza. (Picha 6)
9. Unganisha waya za kuruka za M-to-F kati ya kiunganishi cha kifungo na pini za GPIO (ukumbusho: nyeusi ni GND).
10. Uunganisho wa kanzu PCB kwenye gundi moto au epoxy kwa unganisho salama zaidi.
Kumbuka: ukichagua kutumia epoxy, huenda usiweze kutumia pini za GPIO za Pi kwa miradi mingine baadaye. Ikiwa una wasiwasi juu ya hili, ongeza kwenye kebo ya Ribbon ya GPIO na unganisha waya za kuruka badala yake.
Hatua ya 7: (Kwa hiari) Jenga: Kesi
Tengeneza kizuizi kwa Pi yako ambayo itashikilia kamera, kitufe cha kushinikiza, na taa za LED mahali pake pia ikilinda Pi. Buni kiambata chako mwenyewe au fuata maagizo yetu ya ujenzi hapa chini kwa kuchapisha haraka kizuizi cha kadibodi!
-
Juu ya sanduku ndogo ya kadibodi, fuatilia maeneo ya kitufe cha kushinikiza, taa ya hadhi, taa za kitambulisho, na dirisha la kamera ya pi (Picha 1).
Kumbuka: Dirisha la kamera inapaswa kuwa karibu 3/4 "x 1/2"
-
Kutumia kisu chako cha usahihi, kata alama.
Kumbuka: unaweza kutaka kujaribu saizi unapoenda (Picha 1)
- Hiari: Rangi kesi! Nilichagua rangi ya dawa:)
- Kata kifuniko cha "dirisha" la mstatili kwa Kamera ya Pi (Picha 4) na gundi ndani ya sanduku
-
Mwishowe, kata nafasi ya kebo ya nguvu ya Pi.
Inapendekezwa kusanikisha vifaa vyote vya elektroniki ili kupata mahali pazuri pa nafasi ya kebo ya umeme wa pi
Hatua ya 8: Sakinisha na Tumia
Hiyo ndio! Uko tayari kusanikisha na kupeleka mradi wako! Weka kiambatisho juu ya mapipa yako ya takataka, ingiza Pi, na uendeshe programu kupata njia ya haraka na ya kuaminika zaidi ya kupunguza taka zetu. Ndio!
Kwenda mbele
- Shiriki miradi yako na maoni na watu wengine kupitia jamii ya Lobe Reddit!
- Angalia repo ya Lobe Python GitHub kwa muhtasari wa jumla juu ya jinsi ya kutumia Python kupeleka miradi anuwai ya Lobe
- Maswali au maombi ya mradi? Acha maoni juu ya mradi huu au tuwasiliane moja kwa moja: [email protected]
Ilipendekeza:
Tengeneza Kiashiria chako cha Kiwango cha Betri cha LED yako: Hatua 4
Tengeneza Kiashiria chako cha Kiwango cha Betri cha LED yako: Katika mradi huu nitakuonyesha jinsi tunaweza kutumia LM3914 IC ya kawaida kuunda Kiashiria cha Kiwango cha Batri cha LED. Njiani nitakuonyesha jinsi IC inafanya kazi na kuelezea kwa nini sio mzunguko sahihi zaidi kwa kifurushi cha betri ya Li-Ion. Na katika
Tengeneza Kioo cha infinity cha kupendeza: Hatua 12 (na Picha)
Tengeneza Mirror isiyo na rangi ya rangi: Katika maagizo yangu ya mwisho, nilitengeneza kioo cha infinity na taa nyeupe. Wakati huu nitaunda moja na taa za kupendeza, kwa kutumia ukanda wa LED na LEDs zinazoweza kushughulikiwa. Nitakuwa nikifuata hatua nyingi sawa kutoka kwa hiyo ya mwisho inayoweza kufundishwa, kwa hivyo mimi si g
Mfupi Bin - Gundua na Upange Tupio lako: Hatua 9
Mfupi Bin - Gundua na Panga Tupio lako: Je! Umewahi kuona mtu ambaye hatumii tena au anafanya vibaya? Je! Umewahi kutamani mashine ambayo itasindika tena kwako? Endelea kusoma mradi wetu, hautajuta! Bin fupi ni mradi ulio na msukumo wazi wa msaada
Kutengeneza Toys za Ubora Kutoka kwa Tupio la Plastiki: Mwongozo wa Kompyuta: Hatua 8 (na Picha)
Kutengeneza Toys za Ubora Kutoka kwa Tupio la Plastiki: Mwongozo wa Kompyuta: Hello. Jina langu ni Mario na tunatengeneza vitu vya kuchezea vya kisanii kwa kutumia takataka za plastiki. Kutoka vibrobots ndogo hadi silaha kubwa za cyborg, mimi hubadilisha vinyago vilivyovunjika, kofia za chupa, kompyuta zilizokufa na vifaa vilivyoharibiwa kuwa ubunifu ulioongozwa na vichekesho, sinema, michezo
Tengeneza Kishikiliaji laini cha betri cha 3V: Hatua 4 (na Picha)
Tengeneza Mmiliki wa Battery Laini 3V: Mafunzo haya yataonyesha jinsi ya kutengeneza mmiliki laini wa betri kwa betri zenye ukubwa wa sarafu za 3V. Unahitaji vipande 5 tu vya vipande vya kujisikia na vipande viwili vya kitambaa. Unaweza kukata vipande na mkasi. Pata vipande kutoka kwa sto yoyote ya hapa