Innholdsfortegnelse:

Automatisk søppelbøtte: 7 trinn
Automatisk søppelbøtte: 7 trinn

Video: Automatisk søppelbøtte: 7 trinn

Video: Automatisk søppelbøtte: 7 trinn
Video: Как проверить генератор. За 3 минуты, БЕЗ ПРИБОРОВ и умений. 2024, Juni
Anonim
Automatisk søppelbøtte
Automatisk søppelbøtte
Automatisk søppelbøtte
Automatisk søppelbøtte

Dette er en bevegelsesdetekterende søppelbøtte som åpnes automatisk. Den har wifi -tilkobling og sender en tekstmelding når den er full. Dette er laget for ECE -297DP ved University of Massachusetts - Amherst. Hovedmålet med dette kurset var å få erfaring med praktisk elektronikk da jeg følte at jeg sto bak mine jevnaldrende og ville ha fordel av meg å kombinere tingene jeg lærte fra forelesningene mine med opplevelsesarbeid.

Nødvendige materialer:

- 1x Arduino Uno

- 1x ESP-8266

- 2x Microservos

- 2x ultralyd HC-SR04 bevegelsesdetektorer

- 1x RBG LED

- 3x 330 Ω motstander

- 1x 3,3 spenningsregulator

- 2x 100 uF elektrolytisk kondensator

- 1x 0,1 uF keramisk kondensator

- 1x Corona Extra 12-pack Longneck Bottle Beer Container

Trinn 1: Originale planer og fremgang

Originale planer og fremgang
Originale planer og fremgang
Originale planer og fremgang
Originale planer og fremgang
Originale planer og fremgang
Originale planer og fremgang
Originale planer og fremgang
Originale planer og fremgang

I begynnelsen av semesteret hadde jeg ingen planer for hva jeg ville gjøre. Jeg hoppet inn i denne klassen uten en idé i tankene. Så for å starte utviklet jeg en enkel måte for meg å sakte krysse meg selv i hobbyelektronikkens verden.

Trinn:

1. Lær det grunnleggende om Arduino

- Dette ble gjort ved å følge oppfinnerguiden til SparkFun som følger med startpakken. Det tillot meg å lære det grunnleggende om motstander, lysdioder, piezo -elementer (lyd), sansing og generell koding med Arduino.

2. Se på online DIY Arduino -prosjekter

- Dette var for å finne litt inspirasjon til å lage kreativ og nyttig elektronikk

3. Bruk inspirasjonen til å finne det jeg ønsket å lage

- Fordi jeg er en lat person, og fordi vennene mine som jeg romer med neste semester ikke rydder veldig godt, bestemte jeg meg for å lage en automatisk søppelbøtte.

Den opprinnelige planen for dette kom med å snakke med en av mine Peer Mentors, Bryan Tam, en annen datamaskiningeniørstudent. Å snakke høyt med ham om å kritisere designene mine hjalp meg med å forstå designprosessen. Prosessen med å ta et problem og tenke på en løsning uansett hvor umulig det er, og deretter debattere om hvordan prosjektet skal gjøres. Det lærte meg at ambisjoner og kreativitet er avgjørende for design i ingeniørfag.

I utgangspunktet ønsket jeg å lage en søppelbøtte som automatisk ville oppdage når søppeldunken var full og deretter lukke eller pakke posen. Etter å ha undersøkt mulige måter å designe dette på, innså jeg at dette var langt ute av mine hender. Dermed endret jeg litt på målet - å lage en søppelbøtte som kan sende en tekst når den er full.

Kommer mot slutten av semesteret, jeg hadde problemer med å integrere WiFi -komponenten for å sende teksten og var bekymret, så jeg tenkte på andre alternativer som et alarmsystem. Jeg så mot piezo -elementer for å kanskje lage en irriterende lyd som ikke ville stoppe før søpla er tatt ut. Jeg undersøkte også bruk av lysdioder for å lage forskjellige farger for å indikere søppelnivået.

For å lage dette vil det være nødvendig med to sensorer: En for utsiden for å kjenne når en hånd er over den for å åpne, og en på innsiden for å oppdage søppelnivået. Opprinnelig var det bare WiFi -modulen som ville sende teksten som en alarm, men nær slutten av semesteret bestemte jeg meg for å legge til et lys på toppen av søppelkassen for å støtte dette.

Dette er prosjektdesignet jeg holdt meg til og gikk gjennom til slutten.

Trinn 2: Forskning

For å forberede meg på denne prøven, undersøkte jeg flere ting.

Først undersøker jeg den generelle måten å kode Arduino på. Å trene med SparkFun -oppfinnerpakken hjalp enormt; bli vant til å måtte koble pinnene til Arduino og hvordan jeg bruker et brødbrett.

Da praktiserte jeg spesielt bruk av servoer, ettersom jeg visste at det var slik jeg måtte kontrollere lokket for å rotere. Først trener jeg på å kontrollere timingen og deretter kombinere bruken med betingelser slik at jeg kan kontrollere når de aktiveres.

Deretter undersøkte jeg hvilke sensorer jeg skulle bruke. Det var to typer: En ultralydsensor (HC-SR04) og en infrarød sensor (PIR Motion Sensor). Ultralydsensoren sender ut en puls som deretter returneres og leses av HC-SR04, beregner tiden i dette intervallet, for å bestemme avstanden mellom den og plasseringen av sprettingen. Jeg bestemte meg for å bruke ultralydsensoren til den indre sensoren, da det ville være mer nyttig å oppdage avstand, spesielt siden søppel ikke avgir mye stråling. Da bestemte jeg meg for at det ville være lettere å bare bruke en HC-SR04 for både den indre og ytre sensoren.

Ved å undersøke ESP-8266 lærte jeg mye om hvordan wifi fungerer. Jeg lærte om tilgangspunkter og stasjonspunkter. Jeg lærte også om webservere som et mulig alternativ. Til slutt. ESP er sitt eget bord som kan programmeres helt separat til Arduino. Dermed er det til og med mulig å gjøre hele dette prosjektet bare ved å bruke det. For å programmere ESP, koblet jeg den til Arduino og koblet GND i Arduino til Reset for å deaktivere den og få den til å fungere som en kommunikator mellom ESP og USB -kabelen.

Jeg lærte da at jeg kan få ESP til å fungere som en klient som ønsker å få tilgang til eller be om data fra et nettsted. Da jeg visste dette, brukte jeg nettstedet IFTTT.com til å lage en applet for å koble webhooks til SMS -meldinger i det hele tatt, slik at når en hendelse utløses (når en klient ber om data fra en bestemt URL, vil den sende en tekst).

En annen ting jeg undersøkte var spenningsregulatorer, dioder og motstander. Motstander var nødvendig for at LED -en skulle koble LED -en til Arduino. Diodene og spenningsregulatorene var mulige løsninger for å drive ESP-8266 ettersom det strengt tatt krever en 3,3V for Vcc. Spenningsregulatoren var den enkleste løsningen. Selv om det er et 3.3V -alternativ på Arduino, tok jeg det som en mulighet til å lære mer.

Etter dette lærte jeg om kondensatorer som de er nødvendige for en fungerende spenningsregulator. Kondensatorene hjelper til med å jevne ut spenningen i tilfelle den "spretter" eller "hikker" for mye. 2 elektrolytiske og 1 keramiske kondensatorer er det vanlige oppsettet for spenningsregulatorer.

Det meste av forskningen prøvde å feilsøke koden min, da det var mange feil da jeg laget den.

Trinn 3: Vanskelige problemer og hvordan jeg overvant dem

Mye av vanskeligheten i begynnelsen av semesteret var ganske enkelt det faktum at jeg var uerfaren. Jeg hadde aldri engang tenkt på å bygge noe før, så jeg var redd for å være for ambisiøs eller for enkel. Dette er grunnen til at jeg utsatte å velge en idé så lenge.

For å overvinne dette hjalp det definitivt å snakke med en senior som hadde erfaring. Bryan klarte å kritisere ideene mine og fortelle meg hvilke som gikk i riktig retning og hvilke som gikk i feil retning. Han hjalp meg med å innse at jeg måtte vurdere mitt ferdighetsnivå, ressursene jeg hadde tilgang til og tidsstyring.

Tidsstyring var også veldig vanskelig for meg. Jeg vet allerede at jeg har en svakhet når det gjelder tidsstyring, spesielt siden dette semesteret var utrolig fullt siden jeg var overbelastet med 21 studiepoeng.

Det var tider da jeg måtte ofre arbeidet med prosjektet mitt, men for å overvinne dette dedikerte jeg minst en time med forskning i helgene til å jobbe med prosjektet, og annenhver uke i helgene for å gå til M5 for å jobbe med det.

En annen vanskelighet jeg hadde var med min mangel på kunnskap om mange av delene. Jeg visste ikke hvordan de fungerte eller hvilke ledninger som var koblet til hvor. For å overvinne dette lærte jeg den verdifulle eiendelen ved å slå opp databladene på nettet, noe som hjalp meg å forstå hva som var nødvendig spenningsinngang, og hvor VCC, GND og innganger måtte koble til. Jeg husker jeg jobbet spesielt med å prøve å koble servoene til bevegelsesdetektorene og ble frustrert fordi servoene ikke fungerte i det hele tatt.

Dette fikk meg til å prøve forskjellige servoer, i håp om at noe var galt med dem. Imidlertid fungerte de fortsatt ikke, noe som betydde at det enten måtte være ledningene mine eller koden min. Jeg prøvde deretter å bruke en ekstern strømkilde ved å koble servoene til 4 AA -batterier, da jeg noen ganger hadde lest at USB -en på en PC ikke gir nok spenning til å drive dem. Til slutt bestemte jeg meg for å bare se på databladet og innså at det var bare fordi ledningene mine var feil hele tiden.

Min vanskeligste hindring i dette var å prøve å integrere WiFi -komponenten til Arduino. Jeg lette etter mange opplæringsprogrammer på nettet og forsto programmeringen, for det var vanskelig for meg å forstå. Imidlertid hjalp et bestemt nettsted meg og introduserte meg for IFTTT. Jeg trodde jeg hadde oppnådd en seier, men jeg skjønte ikke at brettene var atskilt, og jeg hadde endt opp med å programmere brettene med annen kode. Jeg satt fast i en uke og prøvde å finne ut hvordan jeg skulle koble dem til, men internett hjalp ikke. For å overvinne denne hindringen spurte jeg endelig bare om Dr. Mallochs hjelp. Jeg er en veldig stolt person og har en tendens til å ville gjøre ting alene. Han hadde hjulpet meg tidligere, men det var ikke et stort problem jeg hadde, men snarere en diskusjon om mulige måter å nærme meg prosjektet mitt. Bare spør Dr. Malloch løste umiddelbart integreringen av ESP-8266.

Dette prosjektet bidro til å sette meg på plass og innse at jeg burde jobbe og be folk om hjelp mer siden ingeniørarbeid ikke er et soloprosjekt, men en teamdynamikk.

Trinn 4: Endringer i M5 for å effektivisere læringsprosessen

Endringer i M5 for å effektivisere læringsprosessen
Endringer i M5 for å effektivisere læringsprosessen

M5 var et fantastisk verktøy for meg dette semesteret. Det kommer allerede med mange ressurser for nye oppdagere og erfarne veteraner.

Jeg tror M5 kan bidra til å effektivisere læringsprosessen ved å ha flere workshops om et bredere utvalg av emner og ved å gjøre dem mer kunngjort. Jeg hadde knapt hørt om verkstedene som foregikk på M5, og de eneste jeg visste om var loddeverkstedene.

Andre workshops som "Hvordan gå til design" eller "Hvordan bruke 3D -skriveren" vil også være nyttig. Kanskje de har disse verkstedene, men jeg klarte aldri å høre om dem.

Trinn 5: Hva jeg oppnådde til slutt

Jeg klarte å lage en automatisk søppelbøtte

Enda viktigere, men jeg lærte viktigheten av tidsstyring, hvordan man bygger kretser og bruker elektroniske deler. Jeg lærte om Arduino, bølger og sensing, motstander, brødbrett, WiFi, ESP-8266, webservere, spenningsregulatorer, dioder, etc. Jeg klarte å oppnå akkurat det jeg hadde i tankene. For å få en forståelse av et praktisk nivå om elektronikk og kretser.

Det utløste også en kreativ brann i meg da det var veldig morsomt og givende å lage dette prosjektet, selv om det til tider var ekstremt frustrerende. Endelig å forstå hvordan en del fungerer eller å få koden til å fungere slik jeg ønsket, var verdt timene med tweaks og endringer jeg måtte gjøre. Det hjalp meg å forstå at dette var det jeg ønsket å gjøre. I begynnelsen av semesteret var jeg nølende med elektro- og datateknikk, ettersom jeg ikke hadde erfaring med å vite om jeg likte det eller ikke. Som hvordan noen ikke vet om de liker sport, videospill eller hobby med mindre de prøver det.

Min største prestasjon av dette var å kunne si trygt at jeg vil fortsette med elektro- og datateknikk.

Trinn 6: Hvordan noen andre kunne følge i mine fotspor

Hvis noen er i samme situasjon som jeg var i begynnelsen av semesteret, vil jeg anbefale å gjøre de samme trinnene som jeg skisserte i "Orignal Plans and Progression". Det hjalp meg sakte med å trekke frem det jeg var interessert i å gjøre og hva jeg kunne gjøre.

Spesielt for dette prosjektet vil jeg skissere nedenfor hvordan du lager en.

Trinn 1: Gå til IFTTT.com, registrer telefonnummeret ditt og opprett deretter en applet. Velg "hvis" for å være webhooks og "det" for å være SMS. Når den er opprettet, søker du etter Maker Webhooks i søkeboksen og klikker på dokumentasjon. Fyll ut informasjonen med ditt eget hendelsesnavn og kopier URLen. Dette er nettadressen du vil bruke for ESP-8266-koden som du finner nederst.

Trinn 1: Koble ESP-8266 slik:

RXD -> RX

TXD -> TX

VCC -> VCC

CH_PD VCC

GPIO0 -> GND

GND -> GND

Koble deretter GND på Arduino til Reset på den for å deaktivere den.

Trinn 2: Skriv inn koden nederst og last den opp til ESP-8266 (last ned først esp-8266-kortet på IDE). Koble deretter fra ESP-8266.

Trinn 3: Koble servoer til pinne 8 og pinne 9 på Arduino

Trinn 4: Koble den første HC-SR04-sensoren til pinne 10 og 13 (for henholdsvis trig og ekko). Koble deretter den andre til pinnene 11 og 12 (igjen for henholdsvis trig og ekko).

Trinn 5: Koble RGB -LED -en til pinne 4 (rød), 5 (grønn) og 6 (blå).

Trinn 6: Koble GPIO2 til pin 2

Trinn 7: Skriv inn koden nederst (ECE_297_DP) og last den opp til Arduino.

Trinn 8: Finn en gammel resirkulert øleske og et stykke papp til lokket. Varm lim popsicleen fester seg til servoene og deretter limer servoen på innsiden av boten på hver side. Tape lokket på popsicle -pinnene. Tape de to sensorene til lokket (innsiden er den som oppdager søpla (pinne 11 og 12) og utsiden er den som skal registrere bevegelse (pinne 10 og 13.). Tape deretter LED -en på toppen av lokket. Og teip ledningene bak boksen for å skjule de stygge ledningene.

Trinn 7: Hva jeg ville gjøre videre

Fremover med prosjektet hadde jeg noen ideer om å implementere en lydalarm i tillegg til LED -en. Fordi jeg fikk ESP-8266 til å fungere, bestemte jeg meg for å ikke gjøre det. Men hvis jeg skulle gå videre, ville det være interessant å legge til en og irritere folk til å ta ut søpla.

Dessuten ville jeg gjerne jobbet med et mer definitivt prosjekt, siden dette stort sett er et proof of concept -prosjekt. Hvis jeg skulle gå fremover, ville jeg ha brukt en egentlig søppelbøtte eller en tyngre plastbeholder. I tillegg ville jeg gjerne vært mer effektiv med ledningene, da det er veldig rotete.

Et alternativ til ESP-8266 jeg så på mens jeg var bekymret for ikke å kunne integrere den, var å bruke en Bluetooth-modul. Vennen min Sean hadde nevnt for meg at han tidligere hadde laget et prosjekt der han måtte sende data fra prosjektet til telefonen og bruke en Bluetooth -modul. Han sa at det var relativt enkelt. Imidlertid fikk jeg WiFi -modulen til å fungere før jeg gjorde noe alvorlig detektivarbeid. Jeg tror det ville være interessant å se hvor den veien ville ha ført meg.

Annet enn det, ville jeg gjerne implementert delen "automatisk søppelposeinnpakning", men det er fortsatt ute av ligaen min fra nå av. Kanskje på et senere tidspunkt vil jeg gå tilbake til dette prosjektet og prøve å gjøre det mer effektivt.

Anbefalt: