Sisukord:

Automaatne prügikast: 7 sammu
Automaatne prügikast: 7 sammu

Video: Automaatne prügikast: 7 sammu

Video: Automaatne prügikast: 7 sammu
Video: 😬 Лучший в классе? Или совсем наоборот? Чем страдает Audi Q7 I ? 2024, Juuni
Anonim
Automaatne prügikast
Automaatne prügikast
Automaatne prügikast
Automaatne prügikast

See on liikumist tuvastav prügikasti automaatne avanemine. Sellel on WiFi -ühendus ja see saadab tekstsõnumi, kui see on täis. See on tehtud ECE -297DP jaoks Massachusettsi ülikoolis - Amherst. Selle kursuse põhieesmärk oli omandada kogemusi praktilise elektroonikaga, kuna tundsin, et olen oma eakaaslastest maha jäänud ja oleks kasulik, kui ühendaksin oma loengutest õpitu kogemustega.

Vajalikud materjalid:

- 1x Arduino Uno

- 1x ESP-8266

- 2x mikroservot

- 2x ultraheli HC-SR04 liikumisandurit

- 1x RBG LED

- 3x 330 Ω takistid

- 1x 3.3 pingeregulaator

- 2x 100 uF elektrolüütkondensaator

- 1x 0,1 uF keraamiline kondensaator

- 1x Corona Extra 12-pakendiline Longneck Bottle õllemahuti

Samm: esialgsed plaanid ja edenemine

Algsed plaanid ja areng
Algsed plaanid ja areng
Algsed plaanid ja areng
Algsed plaanid ja areng
Algsed plaanid ja edenemine
Algsed plaanid ja edenemine
Algsed plaanid ja edenemine
Algsed plaanid ja edenemine

Semestri alguses polnud mul plaane, mida teha tahan. Hüppasin sellesse klassi ilma mõtet silmas pidamata. Nii et alustuseks töötasin välja lihtsa viisi, kuidas end aeglaselt hobielektroonika maailmas läbida.

Sammud:

1. Õppige Arduino põhitõdesid

- Seda tehti, järgides SparkFuni leiutaja juhendit, mis on kaasas stardikomplektiga. See võimaldas mul õppida takistite, LED -ide, piesoelementide (heli), sensori ja üldise kodeerimise põhitõdesid Arduino abil.

2. Vaadake veebipõhiseid DIY Arduino projekte

- See pidi leidma inspiratsiooni loomingulise ja kasuliku elektroonika tegemiseks

3. Kasutage inspiratsiooni, et leida see, mida ma teha tahtsin

- Kuna ma olen laisk inimene ja kuna mu sõbrad, kellega ma järgmisel semestril tuba teen, ei koristu eriti hästi, otsustasin teha automaatse prügikasti.

Algne plaan selleks oli vestlus ühe mu eakaaslaste mentori, teise arvutitehnika üliõpilase Bryan Tamiga. Temaga valjuhäälselt arutlemine minu kavandite kritiseerimise üle aitas mul disainiprotsessist aru saada. Probleemi võtmise ja lahenduse väljamõtlemise protsess, ükskõik kui teostamatu, ja seejärel arutelu selle üle, kuidas seda projekti teha. See õpetas mulle, et inseneriteaduste projekteerimisel on esmatähtsad ambitsioonid ja loovus.

Esialgu tahtsin teha prügikasti, mis tuvastaks automaatselt, millal prügikast täis sai, ja sulgeda kott. Olles uurinud selle kujundamise võimalikke viise, mõistsin, et see pole minu kätes. Seega muutsin veidi eesmärki - teha prügikast, mis saaks teksti saata, kui see on täis.

Semestri lõpus oli mul probleeme teksti saatmiseks WiFi komponendi integreerimisega ja olin mures, nii et mõtlesin häiresüsteemina muudele alternatiividele. Vaatasin piesoelementide poole, et ehk tekitada tüütu heli, mis ei peatu enne, kui prügikast on välja viidud. Samuti uurisin LED -ide kasutamist erinevate värvide valmistamiseks, et näidata prügikasti taset.

Selle loomiseks oleks vaja kahte andurit: ühte väljastpoolt, et tajuda, kui käsi on selle kohal, avamiseks, ja teist seest, et tuvastada prügi taset. Algselt saatis häireteksti teksti ainult WiFi -moodul, kuid semestri lõpus otsustasin selle toetamiseks lisada prügikasti ülaossa tule.

See on projekti kavand, mille juurde ma jäin ja lõpuni läbi läksin.

2. samm: uurige

Selle katsumuse ettevalmistamiseks uurisin mitmeid asju.

Kõigepealt uurin Arduino kodeerimise üldist viisi. SparkFuni leiutajakomplektiga harjutamine aitas tohutult; harjusin sellega, et pean nööpnõelad Arduinoga ühendama ja leivaplaati kasutama.

Siis harjutasin eriti servode kasutamist, kuna teadsin, et sel viisil pean pöörlema kaane juhtimiseks. Esiteks harjutan nende ajastuse juhtimist ja seejärel kombineerin kasutamise tingimustega, et saaksin kontrollida, millal need aktiveeritakse.

Seejärel uurisin, milliseid andureid kasutada. Neid oli kahte tüüpi: ultraheliandur (HC-SR04) ja infrapunaandur (PIR-liikumisandur). Ultraheliandur saadab välja impulsi, mis seejärel tagasi lükatakse ja mida HC-SR04 loeb, arvutades selle intervalli aja, et määrata kaugus selle ja põrkekoha vahel. Otsustasin sisemise anduri jaoks kasutada ultraheliandurit, kuna kauguse tuvastamine oleks kasulikum, eriti kuna prügikast ei kiirga palju kiirgust. Siis otsustasin, et lihtsam oleks kasutada HC-SR04 nii sise- kui ka välisanduri jaoks.

ESP-8266 kohta uurides sain palju teada, kuidas wifi töötab. Sain teada juurdepääsupunktidest ja jaamapunktidest. Samuti õppisin võimaliku variandina veebiserverite kohta. Lõpuks. ESP on oma plaat, mida saab Arduinole täielikult eraldi programmeerida. Seega on võimalik isegi kogu see projekt lihtsalt selle abil ära teha. ESP -i programmeerimiseks ühendasin selle Arduinoga ja ühendasin GND Arduino -s lähtestamiseks, et see keelata ja lasta tal toimida ESP ja USB -kaabli vahelise suhtlejana.

Seejärel sain teada, et saan panna ESP tegutsema kliendina, kes soovib veebisaidi andmetele juurde pääseda või neid taotleda. Seda teades kasutasin IFTTT.com veebisaiti apleti loomiseks, et ühendada veebihaagid SMS -sõnumite saatmisega tervikuna nii, et sündmuse käivitamisel (kui klient soovib andmeid konkreetselt URL -ilt saata, saadab see teksti).

Teine asi, mida uurisin, olid pingeregulaatorid, dioodid ja takistid. LED -i ühendamiseks Arduinoga oli vaja takisteid. Dioodid ja pingeregulaatorid olid võimalikud lahendused ESP-8266 toiteks, kuna see võtab Vcc jaoks rangelt 3,3 V. Pingeregulaator oli lihtsaim lahendus. Kuigi Arduino -l on 3,3 V võimalus, võtsin seda kui võimalust rohkem teada saada.

Pärast seda sain teada kondensaatorite kohta, kuna need on toimiva pingeregulaatori jaoks vajalikud. Kondensaatorid aitavad pinget tasandada, kui see liiga palju põrkab või luksub. Pingeregulaatorite jaoks on tavaliselt paigaldatud 2 elektrolüütilist ja 1 keraamiline kondensaator.

Enamik uuringuid üritas minu koodi siluda, kuna selle tegemisel oli palju vigu.

3. samm: tekkinud raskused ja kuidas ma neist üle sain

Suur osa raskustest semestri alguses oli lihtsalt asjaolu, et mul polnud kogemusi. Ma polnud kunagi isegi mõelnud midagi ehitada, nii et kartsin olla liiga ambitsioonikas või liiga lihtne. Seetõttu lükkasin idee valimise nii kauaks edasi.

Sellest ülesaamiseks aitas kindlasti vestlus kogemustega vanuriga. Bryan suutis minu ideid kritiseerida ja öelda, millised neist liiguvad õiges suunas ja millised vales suunas. Ta aitas mul mõista, et pean arvestama oma oskuste taseme, ressurssidega, millele mul oli juurdepääs, ja aja juhtimisega.

Ka ajaplaneerimine oli minu jaoks väga raske. Ma juba tean, et mul on ajajuhtimises nõrkus, eriti kuna see semester oli uskumatult täis, kuna olin 21 ainepunktiga üle koormatud.

Olid ajad, kui pidin oma projekti kallal töötamise ohverdama, kuid selle ületamiseks pühendasin nädalavahetustel vähemalt ühe tunni uurimistöö projektiga tegelemiseks ja igal teisel nädalal nädalavahetustel, et minna M5 -sse selle kallale.

Teine raskus oli see, et ma ei teadnud paljusid osi. Ma ei teadnud, kuidas need toimivad või millised juhtmed kuhu ühenduvad. Selle ületamiseks õppisin võrgust andmelehtede otsimisest väärtuslikku vara, mis aitas mul mõista, mis on vajalik pingesisend ja kus on vaja ühendada VCC, GND ja sisendid. Mäletan, et töötasin spetsiaalselt selle nimel, et proovisin servosid liikumisanduritega ühendada ja olin pettunud, sest servod ei töötanud üldse.

See pani mind proovima erinevaid servosid, lootes, et nendega on midagi valesti. Kuid need ikkagi ei töötanud, mis tähendas, et see pidi olema kas minu juhtmestik või minu kood. Seejärel proovisin kasutada välist toiteallikat, ühendades servod 4 AA patareiga, kuna olin lugenud, et mõnikord ei pruugi arvuti USB toiteallikaks piisavalt pinget anda. Lõpuks otsustasin lihtsalt andmelehte vaadata ja mõistsin, et see oli lihtsalt sellepärast, et mu juhtmestik oli kogu aeg vale.

Minu kõige raskem takistus selles oli WiFi komponendi integreerimine Arduinoga. Otsisin veebist palju õpetusi ja lihtsalt sain aru programmeerimisest, sest seda oli mul raske mõista. Üks konkreetne veebisait aitas mind aga ja tutvustas mulle IFTTT -d. Ma arvasin, et olen saavutanud võidu, aga ma ei saanud aru, et lauad olid eraldi ja olin lõpuks programmeerinud lauad erineva koodiga. Olin nädal aega ummikus, püüdes aru saada, kuidas neid ühendada, kuid Internet ei aidanud. Selle takistuse ületamiseks palusin lõpuks lihtsalt dr Mallochi abi. Olen väga uhke inimene ja soovin asju üksi teha. Kuid ta oli mind varem aidanud, see ei olnud mul suur probleem, vaid pigem arutelu võimalike viiside kohta, kuidas oma projektile läheneda. Lihtsalt dr Mallochi küsimine lahendas kohe minu ESP-8266 integreerimise.

See projekt aitas mind oma kohale asetada ja mõista, et peaksin rohkem töötama ja inimestelt abi paluma, kuna inseneriteadus ei ole sooloprojekt, vaid meeskonnadünaamika.

4. samm: muudatused M5 -s, et aidata õppeprotsessi sujuvamaks muuta

Muudatused M5 -s, et aidata õppeprotsessi sujuvamaks muuta
Muudatused M5 -s, et aidata õppeprotsessi sujuvamaks muuta

M5 oli minu jaoks sel semestril fantastiline tööriist. Uute maadeavastajate ja kogenud veteranide jaoks on sellega juba palju ressursse kaasas.

Arvan, et M5 võiks aidata õppeprotsessi sujuvamaks muuta, korraldades rohkem töötubasid laiemate teemade kohta ja muutes need rohkem välja kuulutatuks. Ma olin vaevu kuulnud M5 -s toimuvatest töötubadest ja ainsad, millest ma teadsin, olid jootetöökojad.

Abiks oleksid ka muud töötoad, näiteks „Kuidas projekteerimisel edasi liikuda“või „Kuidas kasutada 3D -printerit“. Võib -olla on neil need töötoad, kuid ma ei saanud neist kunagi kuulda.

Samm: mida ma lõpuks saavutasin

Sain teha automaatse prügikasti

Veelgi olulisem on aga see, et ma õppisin ajajuhtimise tähtsust, vooluahelate ehitamist ja elektrooniliste osade kasutamist. Õppisin tundma Arduino, lainete ja andurite, takistite, leivalaudade, WiFi, ESP-8266, veebiserverite, pingeregulaatorite, dioodide jms kohta. Elektroonika ja vooluahela praktilise taseme mõistmiseks.

See tekitas minus ka loomingulise tule, kuna selle projekti loomine, kuigi kohati äärmiselt masendav, oli väga lõbus ja tasuv. Lõpuks mõistmine, kuidas mõni osa töötab, või koodi toimimine nii, nagu ma tahtsin, oli väärt tundide pikkuseid muudatusi ja muudatusi, mida ma tegema pidin. See aitas mul mõista, et ma tahan seda teha. Semestri alguses kõhklesin ma elektri- ja arvutitehnika osas, kuna mul polnud selles osas kogemusi, et teada saada, kas see mulle meeldib või mitte. Nagu see, kuidas keegi ei tea, kas talle meeldib sport, videomäng või hobi, kui ta seda ei proovi.

Minu suurim saavutus sellest oli see, kui sain kindlalt öelda, et tahan jätkata elektri- ja arvutitehnikaga.

6. samm: kuidas keegi teine võiks minu jälgedes käia

Kui keegi on samas olukorras, kus ma olin semestri alguses, siis soovitaksin teha samu samme, mida kirjeldasin jaotises „Orignal Plaanid ja progress”. See aitas mul tõepoolest aeglaselt välja tuua, mis mind huvitab ja mida ma teha saan.

Täpsemalt kirjeldan selle projekti jaoks allpool, kuidas seda teha.

Samm: minge saidile IFTTT.com, registreerige oma telefoninumber ja looge seejärel aplett. Valige veebikonksudeks "kui" ja SMS -ideks "see". Kui see on loodud, otsige otsingukastist tegija Webhooks ja klõpsake dokumentatsiooni. Täitke teave oma sündmuse nimega ja kopeerige URL. See on URL, mida kasutate allosas oleva ESP-8266 koodi jaoks.

Samm: ühendage ESP-8266 sellisena:

RXD -> RX

TXD -> TX

VCC -> VCC

CH_PD VCC

GPIO0 -> GND

GND -> GND

Seejärel ühendage Arduino GND selle keelamiseks selle lähtestamisega.

Samm: sisestage kood allosas ja laadige see üles ESP-8266-sse (laadige esmalt esp-8266 tahvel IDE-s alla). Seejärel ühendage ESP-8266 vooluvõrgust lahti.

Samm: ühendage servod Arduino tihvtiga 8 ja tihvtiga 9

Samm 4: Ühendage esimene HC-SR04 andur tihvtidega 10 ja 13 (vastavalt trig ja kaja jaoks). Seejärel ühendage teine tihvtidega 11 ja 12 (vastavalt trig ja kaja jaoks).

Samm: ühendage RGB LED tihvtidega 4 (punane), 5 (roheline) ja 6 (sinine).

Samm: ühendage GPIO2 tihvtiga 2

Samm: sisestage kood allosas (ECE_297_DP) ja laadige see Arduino.

Samm: leidke vana ringlussevõetud õllekast ja kaane jaoks papitükk. Kuum liim popsicle kleepub servod ja seejärel kuum liimi servod bot sisemusse mõlemal küljel. Kleepige kaas popsikupulkade külge. Kleepige kaks andurit kaane külge (sisemine osa on prügikasti tuvastav (tihvtid 11 ja 12) ja välispind on liikumist tuvastav (tihvtid 10 ja 13). Seejärel kleepige LED kaane ülaosale. Ja kleepige juhtmestik kasti taha, et peita kole juhtmestik.

7. samm: mida ma järgmisena teeksin

Projektiga edasi liikudes tekkis mul mõned ideed lisaks LED -ile rakendada ka helisignaali. Kuna sain ESP-8266 tööle, otsustasin seda mitte teha. Kui aga peaksin edasi liikuma, oleks huvitav üks lisada ja tüüta inimesi prügi välja viima.

Samuti oleksin tahtnud töötada kindlama projekti kallal, kuna see on enamasti kontseptsiooniprojekti tõend. Kui ma peaksin edasi liikuma, oleksin kasutanud tegelikku prügikasti või kopsakamat plastmahutit. Lisaks oleksin tahtnud juhtmestikuga tõhusam olla, kuna see on väga räpane.

Üks alternatiiv ESP-8266-le, mida uurisin, olles mures selle pärast, et ei saa seda integreerida, oli Bluetooth-mooduli kasutamine. Mu sõber Sean oli mulle maininud, et oli varem teinud projekti, kus ta pidi oma projekti andmed oma telefoni saatma ja Bluetooth -moodulit kasutama. Ta ütles, et see on suhteliselt lihtne. Siiski sain WiFi mooduli tööle enne, kui sellega tõsist detektiivitööd tegin. Ma arvan, et oleks huvitav näha, kuhu see tee mind oleks viinud.

Peale selle oleksin tahtnud rakendada "automaatse prügikoti pakkimise" osa, kuid see on praeguse seisuga endiselt minu liigast väljas. Võib -olla vaatan tulevikus selle projekti uuesti läbi ja püüan seda tõhusamaks muuta.

Soovitan: