Kazalo:

Samodejni koš za smeti: 7 korakov
Samodejni koš za smeti: 7 korakov

Video: Samodejni koš za smeti: 7 korakov

Video: Samodejni koš za smeti: 7 korakov
Video: Как проверить генератор. За 3 минуты, БЕЗ ПРИБОРОВ и умений. 2024, Junij
Anonim
Samodejni koš za smeti
Samodejni koš za smeti
Samodejni koš za smeti
Samodejni koš za smeti

To je samodejno odpiranje koša za smeti, ki zazna gibanje. Ima povezavo Wi -Fi in pošlje besedilno sporočilo, ko je polno. To je narejeno za ECE -297DP na Univerzi v Massachusettsu - Amherst. Glavni cilj tega tečaja je bil pridobiti izkušnje s praktično elektroniko, saj sem čutila, da zaostajam za vrstniki in bi mi koristilo, če bi stvari, ki sem se jih naučila na predavanjih, združila z izkušnjami.

Potrebni materiali:

- 1x Arduino Uno

- 1x ESP-8266

- 2x mikroserva

- 2x ultrazvočni detektor gibanja HC-SR04

- 1x LED RBG

- 3x 330 Ω upori

- 1x 3.3 regulator napetosti

- 2x 100 uF elektrolitski kondenzator

- 1x 0,1 uF keramični kondenzator

- 1x posoda za stekleničko piva iz steklenic Corona Extra z 12 pakiranji

1. korak: Prvotni načrti in napredek

Prvotni načrti in napredek
Prvotni načrti in napredek
Prvotni načrti in napredek
Prvotni načrti in napredek
Prvotni načrti in napredek
Prvotni načrti in napredek
Prvotni načrti in napredek
Prvotni načrti in napredek

Na začetku semestra nisem imel načrtov, kaj bi rad počel. V ta razred sem skočil brez ideje. Tako sem za začetek razvil enostaven način, da se počasi prelevim v svet hobi elektronike.

Koraki:

1. Naučite se osnov Arduina

- To smo naredili tako, da smo upoštevali vodnik izumiteljev SparkFun, ki je priložen začetnemu kompletu. Omogočil mi je, da sem se naučil osnov uporov, LED, piezo elementov (zvok), zaznavanja in splošnega kodiranja z Arduinom.

2. Oglejte si spletne DIY Arduino projekte

- To je bilo iskanje navdiha za ustvarjanje ustvarjalne in uporabne elektronike

3. Z navdihom poišči tisto, kar sem želel narediti

- Ker sem len, in ker moji prijatelji, ki jih pripravljam v naslednjem semestru, niso čisto čisti, sem se odločil, da naredim samodejni koš za smeti.

Prvotni načrt za to je prišel s pogovorom z enim od mojih vrstniških mentorjev, Bryanom Tamom, drugim študentom računalniškega inženiringa. Glasna razprava z njim o kritiki mojih modelov mi je pomagala razumeti proces oblikovanja. Postopek sprejemanja problema in razmišljanja o rešitvi, ne glede na to, kako neizvedljiv je, in nato razprava o tem, kako narediti omenjeni projekt. Naučil me je, da sta ambicioznost in ustvarjalnost pri oblikovanju v inženiringu najpomembnejša.

Sprva sem želel narediti koš za smeti, ki bi samodejno odkril, kdaj je koš za smeti poln, nato pa zaprl ali zavil vrečko. Ko sem raziskal možne načine oblikovanja tega, sem spoznal, da mi to ni daleč od rok. Tako sem nekoliko spremenil cilj - narediti koš za smeti, ki bi lahko pošiljal besedilo, ko je napolnjen.

Ko sem prišel proti koncu semestra, sem imel težave pri integraciji komponente WiFi za pošiljanje besedila in sem bil zaskrbljen, zato sem pomislil na druge alternative kot alarmni sistem. Pogledala sem proti piezo elementom, da bi morda izdala nadležen zvok, ki se ne bi ustavil, dokler ne odstranimo smeti. Preučil sem tudi uporabo LED diod za izdelavo različnih barv, ki označujejo količino smeti.

Če želite to narediti, bi bila potrebna dva senzorja: eden za zunanjost, ki zazna, ko je roka nad njim, da se odpre, in en za notranji, da zazna raven smeti. Sprva bi besedilo kot alarm poslal samo modul WiFi, vendar sem se proti koncu semestra odločil, da na vrh koša za smeti podam luč, da to podprem.

To je načrt projekta, ki sem se ga držal in šel do konca.

2. korak: Raziščite

Za pripravo na to preizkušnjo sem raziskoval več stvari.

Najprej raziskujem splošen način kodiranja Arduina. Vadba s kompletom izumiteljev SparkFun je izjemno pomagala; privajanje na to, da moram priključiti zatiče na Arduino in kako uporabljati ploščo.

Potem sem še posebej vadil uporabo servomotorjev, saj sem vedel, da bom tako potreboval nadzor pokrova za vrtenje. Najprej vadba nadziranja njihovega časa in nato kombiniranje uporabe s pogoji, da lahko nadziram, kdaj so aktivirani.

Nato sem raziskal, katere senzorje naj uporabim. Obstajata dve vrsti: ultrazvočni senzor (HC-SR04) in infrardeči senzor (PIR senzor gibanja). Ultrazvočni senzor pošlje impulz, ki se nato odbije nazaj in ga odčita HC-SR04 ter izračuna čas v tem intervalu, da določi razdaljo med njim in lokacijo odboja. Odločil sem se, da za notranji senzor uporabim ultrazvočni senzor, saj bi bilo odkrivanje razdalje bolj koristno, še posebej, ker smeti ne oddajajo veliko sevanja. Potem sem se odločil, da bi bilo lažje uporabiti HC-SR04 za notranji in zunanji senzor.

Ko sem raziskoval ESP-8266, sem izvedel veliko o tem, kako deluje wifi. Spoznala sem dostopne točke in postaje. Spoznal sem tudi spletne strežnike kot možno možnost. Na koncu. ESP je lastna plošča, ki jo je mogoče popolnoma programirati ločeno od Arduina. Tako je celo mogoče celoten projekt narediti le z njegovo uporabo. Za programiranje ESP sem ga priključil na Arduino in povezal GND v Arduinu na Ponastavitev, da ga onemogočim in da deluje kot komunikator med ESP in kablom USB.

Nato sem izvedel, da lahko ESP deluje kot odjemalec, ki želi dostopati do podatkov ali zahtevati podatke s spletnega mesta. Zavedajoč se tega, sem na spletnem mestu IFTTT.com ustvaril programček za povezovanje spletnih klicev s pošiljanjem sporočil SMS, tako da bo ob sprožitvi dogodka (ko odjemalec zahteva podatke z določenega URL -ja poslal besedilo).

Druga stvar, ki sem jo raziskoval, so bili regulatorji napetosti, diode in upori. Za povezavo LED z Arduinom so bili potrebni upori. Diode in regulatorji napetosti so bile možne rešitve za napajanje ESP-8266, saj za Vcc potrebuje natančno 3,3 V. Regulator napetosti je bil najlažja rešitev. Čeprav na Arduinu obstaja možnost 3,3 V, sem to izkoristil kot priložnost, da izvedem več.

Po tem sem izvedel za kondenzatorje, saj so potrebni za delujoč regulator napetosti. Kondenzatorji pomagajo izravnati napetost, če preveč "odskoči" ali "kolca". 2 elektrolitska in 1 keramični kondenzator sta običajna nastavitev za regulatorje napetosti.

Večina raziskav je poskušala odpraviti napako v moji kodi, saj je bilo pri ustvarjanju veliko napak.

3. korak: Težave, s katerimi se srečujemo in kako sem jih premagal

Večina težav na začetku semestra je bila preprosto v tem, da nisem imel izkušenj. Nikoli prej nisem niti razmišljal o tem, da bi kaj ustvaril, zato sem se bal, da ne bom preveč ambiciozen ali preveč preprost. Zato sem tako dolgo odlašal z izbiro ideje.

Da bi to premagali, je zagotovo pomagal pogovor z starejšim, ki ima izkušnje. Bryan je lahko kritiziral moje ideje in mi povedal, katere gredo v pravo smer in katere v napačno. Pomagal mi je spoznati, da moram upoštevati svojo stopnjo znanja, vire, do katerih imam dostop, in upravljanje časa.

Tudi upravljanje časa mi je bilo zelo težko. Že vem, da imam pri upravljanju časa slabosti, še posebej, ker je bil ta semester neverjetno natrpan, saj sem bil preobremenjen z 21 krediti.

Bili so časi, ko sem moral žrtvovati delo pri svojem projektu, a da bi to premagal, sem vsaj eno uro raziskav ob koncih tedna posvetil delu na projektu, vsak drugi teden pa med vikendi, da bi se lotil dela na njem.

Druga težava, ki sem jo imel, je bila pomanjkanje znanja o večini delov. Nisem vedel, kako delujejo in katere žice so kje povezane. Da bi to premagal, sem se naučil dragocene prednosti iskanja podatkovnih listov na spletu, kar mi je pomagalo razumeti, kakšen je potreben vhod napetosti in kje je treba priključiti VCC, GND in vhode. Spomnim se, da sem posebej poskušal povezati servomotorje z detektorji gibanja in bil razočaran, ker servomotorji sploh niso delovali.

To me je pripeljalo do preizkušanja različnih servomotorjev v upanju, da je z njimi nekaj narobe. Vendar pa še vedno niso delovali, kar je pomenilo, da je to moralo biti moje ožičenje ali moja koda. Nato sem poskusil uporabiti zunanji vir napajanja, tako da sem servomotorje povezal s 4 baterijami AA, saj sem prebral, da včasih USB na računalniku morda ne daje dovolj napetosti za njihovo napajanje. Nazadnje sem se odločil, da preprosto pogledam podatkovni list in spoznal, da je to samo zato, ker je bilo moje ožičenje ves čas napačno.

Moja najtežja ovira pri tem je bil poskus integracije komponente WiFi v Arduino. Na spletu sem iskal številne vaje in preprosto razumel programiranje, saj mi je bilo to težko dojeti. Vendar mi je pomagalo eno posebno spletno mesto in me seznanilo z IFTTT. Verjel sem, da sem dosegel zmago, vendar se nisem zavedal, da so plošče ločene, zato sem plošče programiral z različno kodo. En teden sem obtičal in poskušal ugotoviti, kako jih povezati, vendar internet ni pomagal. Za premagovanje te ovire sem končno preprosto zaprosil za pomoč dr. Mallocha. Sem zelo ponosen človek in rad počnem stvari sam. Pomagal mi je že prej, vendar ni bil velik problem, ampak razprava o možnih načinih pristopa k mojemu projektu. Preprosto vprašanje dr. Mallocha je takoj rešilo integracijo mojega ESP-8266.

Ta projekt me je pomagal postaviti na svoje mesto in se zavedati, da bi moral delati in prositi ljudi za pomoč, saj inženiring ni samostojen projekt, ampak dinamika ekipe.

4. korak: Sprememba M5 za poenostavitev učnega procesa

Spremembe M5 za poenostavitev učnega procesa
Spremembe M5 za poenostavitev učnega procesa

M5 je bil zame v tem semestru odlično orodje. Že zdaj prinaša veliko sredstev za nove raziskovalce in izkušene veterane.

Menim, da bi M5 lahko pomagal racionalizirati učni proces z več delavnicami o več različnih temah in njihovo bolj najavljanjem. Komaj sem slišal za delavnice, ki so potekale v M5, in edine, ki sem jih poznal, so bile delavnice spajkanja.

V pomoč bi bile tudi druge delavnice, na primer "Kako se lotiti oblikovanja" ali "Kako uporabljati 3D tiskalnik". Morda imajo te delavnice, vendar nikoli nisem mogel slišati o njih.

5. korak: Kaj sem na koncu dosegel

Uspelo mi je narediti avtomatski koš za smeti

Še pomembneje pa je, da sem se naučil pomena upravljanja časa, kako zgraditi vezja in uporabljati elektronske dele. Spoznal sem Arduino, valove in zaznavanje, upore, plošče, WiFi, ESP-8266, spletne strežnike, regulatorje napetosti, diode itd. Uspelo mi je doseči točno to, kar sem imel v mislih. Za razumevanje praktične ravni o elektroniki in vezjih.

V meni je sprožil tudi ustvarjalni ogenj, saj je bilo ustvarjanje tega projekta, čeprav je bilo včasih zelo frustrirajuće, zelo zabavno in koristno. Končno je bilo razumeti, kako del deluje, ali pridobiti kodo, da deluje, kot sem želel, vredno ur urejanja in sprememb, ki sem jih moral narediti. Pomagalo mi je razumeti, da to želim narediti. Na začetku semestra sem bil v dvomih glede elektrotehnike in računalništva, saj v tem nisem imel izkušenj, da bi vedel, ali mi je všeč ali ne. Na primer, kako nekdo ne ve, ali ima rad šport, video igrico ali hobi, če tega ne poskusi.

Moj največji dosežek je bil, da sem lahko samozavestno rekel, da želim nadaljevati z elektrotehniko in računalništvom.

6. korak: Kako bi lahko nekdo drug sledil mojim stopinjam

Če je nekdo v isti situaciji, kot sem bil na začetku semestra, priporočam, da naredite iste korake, ki sem jih opisal v "Izvirnih načrtih in napredovanju". To mi je resnično pomagalo počasi izločiti, kaj me zanima in kaj lahko storim.

Za ta projekt bom spodaj opisal, kako ga narediti.

1. korak: Pojdite na IFTTT.com, registrirajte svojo telefonsko številko in nato ustvarite programček. Izberite "če" za webhooks in "to" za SMS. Ko je ustvarjen, poiščite Maker Webhooks v iskalnem polju in kliknite dokumentacijo. Izpolnite podatke z vašim imenom dogodka in kopirajte URL. To je URL, ki ga boste uporabili za kodo ESP-8266 na dnu.

1. korak: ESP-8266 priključite tako:

RXD -> RX

TXD -> TX

VCC -> VCC

CH_PD VCC

GPIO0 -> GND

GND -> GND

Nato priključite GND na Arduinu na ponastavitev na njem, da ga onemogočite.

2. korak: Vnesite kodo na dnu in jo naložite v ESP-8266 (najprej naložite ploščo esp-8266 v IDE). Nato odklopite ESP-8266.

3. korak: Povežite servomotorje na pin 8 in pin 9 na Arduinu

4. korak: Prvi senzor HC-SR04 priključite na nožici 10 in 13 (za sprožitev in odmev). Nato priključite drugega na nožice 11 in 12 (spet za trig in odmev).

5. korak: LED RGB priključite na nožice 4 (rdeča), 5 (zelena) in 6 (modra).

6. korak: Priključite GPIO2 na pin 2

7. korak: Vnesite kodo na dnu (ECE_297_DP) in jo naložite v Arduino.

8. korak: Poiščite staro reciklirano škatlo za pivo in kos kartona za pokrov. Vroče lepilo se prilepi na servomotorje, nato pa vroče prilepite servomotorje na notranjo stran bota na vsaki strani. Pokrov prilepite na palčke za popsicle. Dva senzorja pritrdite na pokrov (notranji je tisti, ki zazna smeti (zatiči 11 in 12), zunanji pa zazna gibanje (zatiči 10 in 13). Nato LED pritrdite na vrh pokrova). In prilepite ožičenje za škatlo, da skrijete grdo ožičenje.

7. korak: Kaj bi naredil naslednjič

Ko sem nadaljeval s projektom, sem imel nekaj idej, da poleg LED vključim tudi zvočni alarm. Ker sem ESP-8266 začel delati, sem se odločil, da ne bom. Če pa bi šel naprej, bi bilo zanimivo dodati eno in razjeziti ljudi, da odnesejo smeti.

Prav tako bi rad delal na dokončnejšem projektu, saj je to večinoma dokaz konceptnega projekta. Če bi šel naprej, bi uporabil dejansko smetnjak ali višjo plastično posodo. Poleg tega bi rad bil učinkovitejši pri ožičenju, saj je zelo grdo.

Ena alternativa ESP-8266, ki sem jo iskal, medtem ko me je skrbelo, da je ne morem integrirati, je bila z uporabo modula Bluetooth. Moj prijatelj Sean mi je omenil, da je v preteklosti že naredil projekt, v katerem je moral podatke iz svojega projekta poslati v telefon in uporabiti modul Bluetooth. Rekel je, da je to relativno enostavno. Vendar sem začel delati modul WiFi, preden sem se lotil resnega detektivskega dela. Mislim, da bi bilo zanimivo videti, kam bi me ta pot pripeljala.

Razen tega bi rad implementiral del "samodejno zavijanje vreč za smeti", vendar to zaenkrat še vedno ni v moji ligi. Morda bom v prihodnje ponovno pogledal ta projekt in ga poskušal narediti učinkovitejšega.

Priporočena: