Indholdsfortegnelse:

Automatisk skraldespand: 7 trin
Automatisk skraldespand: 7 trin

Video: Automatisk skraldespand: 7 trin

Video: Automatisk skraldespand: 7 trin
Video: 40 полезных автотоваров с Aliexpress, которые упростят жизнь любому автовладельцу #7 2024, December
Anonim
Automatisk skraldespand
Automatisk skraldespand
Automatisk skraldespand
Automatisk skraldespand

Dette er en bevægelsesdetekterende skraldespand, der åbner automatisk. Den har wifi -forbindelse og sender en tekstbesked, når den er fuld. Dette er lavet til ECE -297DP ved University of Massachusetts - Amherst. Hovedformålet med dette kursus var at få erfaring med praktisk elektronik, da jeg følte, at jeg stod bag mine jævnaldrende og ville gavne mig at kombinere de ting, jeg lærte fra mine foredrag, med oplevelsesmæssigt arbejde.

Nødvendige materialer:

- 1x Arduino Uno

- 1x ESP-8266

- 2x Microservos

- 2x ultralyd HC-SR04 bevægelsesdetektorer

- 1x RBG LED

- 3x 330 Ω modstande

- 1x 3,3 spændingsregulator

- 2x 100 uF elektrolytisk kondensator

- 1x 0,1 uF keramisk kondensator

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

Trin 1: Originale planer og fremskridt

Originale planer og fremskridt
Originale planer og fremskridt
Originale planer og fremskridt
Originale planer og fremskridt
Originale planer og fremskridt
Originale planer og fremskridt
Originale planer og fremskridt
Originale planer og fremskridt

I begyndelsen af semesteret havde jeg ingen planer om, hvad jeg ville gøre. Jeg sprang ind i denne klasse uden en idé i tankerne. Så til at begynde med udviklede jeg en let måde for mig langsomt at krydse mig selv i hobbyelektronikens verden.

Trin:

1. Lær det grundlæggende i Arduino

- Dette blev gjort ved at følge SparkFun -opfinderguiden, der følger med startsættet. Det tillod mig at lære det grundlæggende om modstande, lysdioder, piezo -elementer (lyd), sansning og generel kodning med Arduino.

2. Se på online DIY Arduino -projekter

- Dette var for at finde lidt inspiration til at lave kreativ og nyttig elektronik

3. Brug inspirationen til at finde det, jeg gerne ville lave

- Fordi jeg er en doven person, og fordi mine venner, som jeg indkvarterer med næste semester, ikke rydder særlig godt op, besluttede jeg mig for at lave en automatisk skraldespand.

Den oprindelige plan for dette kom med at tale med en af mine Peer Mentors, Bryan Tam, en anden computeringeniørstuderende. At tale højt med ham om at kritisere mine designs hjalp mig med at forstå designprocessen. Processen med at tage et problem og tænke på en løsning, uanset hvor uhensigtsmæssig det er, og derefter debattere om, hvordan projektet skal udføres. Det lærte mig, at ambitioner og kreativitet er altafgørende for at designe inden for teknik.

I første omgang ville jeg lave en skraldespand, der automatisk ville registrere, hvornår skraldespanden var fuld og derefter lukke eller pakke posen. Efter at have undersøgt mulige måder at designe dette på, indså jeg, at dette var langt ude af mine hænder. Således ændrede jeg lidt målet - at lave en skraldespand, der kunne sende en tekst, når den er fuld.

Ved slutningen af semesteret havde jeg problemer med at integrere WiFi -komponenten til at sende teksten og var bekymret, så jeg tænkte på andre alternativer som et alarmsystem. Jeg kiggede mod piezo -elementer for måske at lave en irriterende lyd, der ikke ville stoppe, før skraldespanden blev fjernet. Jeg kiggede også på at bruge lysdioder til at lave forskellige farver for at angive skraldespanden.

For at skabe dette ville der være brug for to sensorer: En til ydersiden for at mærke, når en hånd er over den for at åbne, og en på indersiden for at registrere skraldespanden. Oprindeligt ville kun WiFi -modulet sende teksten som en alarm, men nær slutningen af semesteret besluttede jeg at tilføje et lys på toppen af skraldespanden for at understøtte dette.

Dette er det projektdesign, jeg holdt fast i og gik igennem til slutningen.

Trin 2: Forskning

For at forberede denne prøvelse undersøgte jeg flere ting.

Først undersøger jeg om den generelle måde at kode Arduino på. At øve med SparkFun -opfindelsessættet hjalp enormt; vænne mig til at skulle tilslutte stifterne til Arduino og hvordan man bruger et brødbræt.

Derefter praktiserede jeg især brugen af servoer, da jeg vidste, at det var sådan, jeg skulle styre låget for at rotere. Først øvede jeg på at kontrollere deres timing og derefter kombinere brugen med conditionals, så jeg kan kontrollere, hvornår de aktiveres.

Derefter undersøgte jeg, hvilke sensorer der skulle bruges. Der var to typer: En ultralydssensor (HC-SR04) og en infrarød sensor (PIR Motion Sensor). Ultralydssensoren udsender en puls, der derefter hopper tilbage og læses af HC-SR04, beregner tiden i dette interval for at bestemme afstanden mellem den og placeringen af bounce. Jeg besluttede at bruge ultralydssensoren til den indre sensor, da det ville være mere nyttigt at registrere afstand, især da affald ikke udsender meget stråling. Derefter besluttede jeg, at det ville være lettere at bare bruge en HC-SR04 til både den indre og ydre sensor.

Ved at undersøge ESP-8266 lærte jeg meget om, hvordan wifi fungerer. Jeg lærte om adgangspunkter og stationspunkter. Jeg lærte også om webservere som en mulig mulighed. Til sidst. ESP er sit eget board, der kan programmeres helt separat til Arduino. Således er det endda muligt at lave hele dette projekt bare ved at bruge det. For at programmere ESP'en tilsluttede jeg den til Arduino og tilsluttede GND i Arduino til Reset for at deaktivere den og få den til at fungere som en kommunikator mellem ESP og USB -kablet.

Jeg lærte derefter, at jeg kan få ESP til at fungere som en klient, der ønsker at få adgang til eller anmode om data fra et websted. Da jeg vidste dette, brugte jeg webstedet IFTTT.com til at oprette en applet til at forbinde webhooks til sms -beskeder i det hele taget, så når en begivenhed udløses (når en klient anmoder om data fra en bestemt URL, ville den sende en tekst).

En anden ting, jeg undersøgte, var spændingsregulatorer, dioder og modstande. Modstande var nødvendige for at LED'en skulle forbinde LED'en med Arduino. Dioderne og spændingsregulatorerne var mulige løsninger til at drive ESP-8266, da det strengt taget kræver en 3,3V for Vcc. Spændingsregulatoren var den letteste løsning. Selvom der er en 3.3V mulighed på Arduino, tog jeg det som en mulighed for at lære mere.

Efter dette lærte jeg om kondensatorer, da de er nødvendige for en fungerende spændingsregulator. Kondensatorerne hjælper med at udligne spændingen, hvis den "hopper" eller "hikker" for meget. 2 elektrolytiske og 1 keramiske kondensatorer er den sædvanlige opsætning til spændingsregulatorer.

Det meste af forskningen forsøgte at fejlsøge min kode, da der var mange fejl, da jeg lavede den.

Trin 3: Opståede vanskeligheder, og hvordan jeg overvandt dem

Meget af vanskelighederne i begyndelsen af semesteret var simpelthen det, at jeg var uerfaren. Jeg havde aldrig engang lagt tanken i at bygge noget før, så jeg var bange for at være enten for ambitiøs eller for simpel. Det er derfor, jeg har udskudt at vælge en idé så længe.

For at overvinde dette har det bestemt hjulpet at tale med en senior, der havde erfaring. Bryan var i stand til at kritisere mine ideer og fortælle mig, hvilke der gik i den rigtige retning, og hvilke der gik i den forkerte retning. Han hjalp mig med at indse, at jeg var nødt til at overveje mit færdighedsniveau, de ressourcer, jeg havde adgang til, og tidsstyring.

Tidsstyring var også meget svært for mig. Jeg ved allerede, at jeg har en svaghed, når det kommer til tidsstyring, især da dette semester var utroligt pakket, da jeg var overbelastet med 21 point.

Der var tidspunkter, hvor jeg måtte ofre arbejdet på mit projekt, men for at overvinde dette dedikerede jeg mindst en times forskning i weekenderne til at arbejde med projektet og hver anden uge i weekenderne for at gå til M5 for at arbejde på det.

En anden vanskelighed, jeg havde, var med min mangel på viden om mange af delene. Jeg vidste ikke, hvordan de fungerede, eller hvilke ledninger der var forbundet hvor. For at overvinde dette lærte jeg det værdifulde aktiv ved at søge databladene online, hvilket hjalp mig med at forstå, hvad den nødvendige spændingsindgang var, og hvor VCC, GND og input skulle forbindes. Jeg kan huske, at jeg specifikt arbejdede på at forsøge at forbinde servoerne til bevægelsessensorerne og blev frustreret, fordi servoerne slet ikke fungerede.

Dette fik mig til at prøve forskellige servoer i håb om, at der var noget galt med dem. Men de virkede stadig ikke, hvilket betød, at det enten måtte være min ledning eller min kode. Jeg forsøgte derefter at bruge en ekstern strømkilde ved at slutte servoerne til 4 AA -batterier, da jeg havde læst, at nogle gange giver USB på en pc muligvis ikke nok spænding til at drive dem. Endelig besluttede jeg mig for at se på databladet og indså, at det var bare fordi mine ledninger var forkerte hele tiden.

Min vanskeligste hindring i dette var at prøve at integrere WiFi -komponenten til Arduino. Jeg ledte efter mange tutorials online og forstod simpelthen programmeringen, for det var svært for mig at forstå. Et bestemt websted hjalp mig imidlertid og introducerede mig til IFTTT. Jeg troede på, at jeg havde opnået en sejr, men jeg var ikke klar over, at tavlerne var adskilte, og jeg var endt med at programmere tavlerne med anden kode. Jeg sad fast i en uge og forsøgte at finde ud af, hvordan jeg forbinder dem, men internettet hjalp ikke. For at overvinde denne forhindring bad jeg endelig blot om Dr. Mallochs hjælp. Jeg er en meget stolt person og har en tendens til at ville gøre tingene alene. Han havde tidligere hjulpet mig, men det var ikke et stort problem, jeg havde, men snarere en diskussion af mulige måder at gribe mit projekt an. Bare at spørge Dr. Malloch løste med det samme at integrere min ESP-8266.

Dette projekt hjalp med at sætte mig på min plads og indse, at jeg burde arbejde og bede folk om hjælp mere, da ingeniørarbejde ikke er et soloprojekt, men en teamdynamik.

Trin 4: Ændringer til M5 for at hjælpe med at strømline læringsprocessen

Ændringer til M5 for at strømline læringsprocessen
Ændringer til M5 for at strømline læringsprocessen

M5 var et fantastisk værktøj for mig i dette semester. Det indeholder allerede mange ressourcer til nye opdagelsesrejsende og erfarne veteraner.

Jeg tror, at M5 kan hjælpe med at strømline læringsprocessen ved at have flere workshops om en bredere vifte af emner og ved at gøre dem mere annonceret. Jeg havde knap hørt om de workshops, der fandt sted på M5, og de eneste, jeg kendte til, var loddeværkstederne.

Andre workshops såsom "Sådan går du til design" eller "Sådan bruges 3D -printeren" ville også være nyttige. Måske har de disse workshops, men jeg kunne aldrig høre om dem.

Trin 5: Hvad jeg opnåede i sidste ende

Jeg kunne lave en automatisk skraldespand

Endnu vigtigere er det, at jeg lærte vigtigheden af tidsstyring, hvordan man bygger kredsløb og bruger elektroniske dele. Jeg lærte om Arduino, bølger og sansning, modstande, brødbrætter, WiFi, ESP-8266, webservere, spændingsregulatorer, dioder osv. Jeg var i stand til at opnå præcis det, jeg havde i tankerne. For at få en forståelse af et praktisk niveau om elektronik og kredsløb.

Det udløste også en kreativ ild i mig, da det var meget sjovt og givende at lave dette projekt, selvom det til tider var ekstremt frustrerende. Endelig at forstå, hvordan en del fungerer, eller få koden til at fungere, som jeg ville, var værd at timevis af tweaks og ændringer, jeg skulle gøre. Det hjalp mig med at forstå, at det var det, jeg ville gøre. I begyndelsen af semesteret tøvede jeg med el- og computerteknik, da jeg ikke havde erfaring med det at vide, om jeg kunne lide det eller ej. Ligesom hvordan nogen ikke ved, om de kan lide en sport, videospil eller hobby, medmindre de prøver det.

Min største bedrift heraf var at kunne sige med sikkerhed, at jeg vil fortsætte med el- og computerteknik.

Trin 6: Hvordan en anden kunne følge i mine fodspor

Hvis nogen er i samme situation, som jeg var i begyndelsen af semesteret, vil jeg anbefale at gøre de samme trin, som jeg skitserede i "Orignal Plans and Progression". Det hjalp mig virkelig langsomt med at udpege, hvad jeg var interesseret i at gøre, og hvad jeg kunne gøre.

Specifikt for dette projekt vil jeg nedenfor skitsere, hvordan man laver et.

Trin 1: Gå til IFTTT.com, registrer dit telefonnummer og opret derefter en applet. Vælg "hvis" for at være webhooks og "det" for at være SMS. Når den er oprettet, skal du søge efter Maker Webhooks i søgefeltet og klikke på dokumentation. Udfyld oplysningerne med dit eget begivenhedsnavn og kopier webadressen. Dette er den URL, du vil bruge til ESP-8266-koden, der findes nederst.

Trin 1: Tilslut ESP-8266 som sådan:

RXD -> RX

TXD -> TX

VCC -> VCC

CH_PD VCC

GPIO0 -> GND

GND -> GND

Tilslut derefter GND på Arduino til Reset på den for at deaktivere den.

Trin 2: Indtast koden i bunden, og upload den til ESP-8266 (download først esp-8266-kortet på IDE). Tag derefter stikket ud af ESP-8266.

Trin 3: Tilslut servoer til pin 8 og pin 9 på Arduino

Trin 4: Tilslut den første HC-SR04 sensor til ben 10 og 13 (for henholdsvis trig og ekko). Tilslut derefter den anden til ben 11 og 12 (igen for henholdsvis trig og ekko).

Trin 5: Tilslut RGB -LED'en til ben 4 (rød), 5 (grøn) og 6 (blå).

Trin 6: Tilslut GPIO2 til pin 2

Trin 7: Indtast koden i bunden (ECE_297_DP) og upload den til Arduino.

Trin 8: Find en gammel genanvendt ølkasse og et stykke pap til låget. Varm lim popsicle klistrer til servoer og derefter lim lim servoer til indersiden af bot på hver side. Tape låget til popsicle sticks. Tape de to sensorer til låget (indersiden er den, der skal registrere skraldespanden (ben 11 og 12), og ydersiden er den, der skal registrere bevægelse (ben 10 og 13). Tape derefter LED'en fast på toppen af låget. Og tape ledningerne bag kassen for at skjule de grimme ledninger.

Trin 7: Hvad jeg ville gøre næste gang

Fremad med projektet havde jeg nogle ideer til at implementere en lydalarm ud over LED'en. Fordi jeg fik ESP-8266 til at fungere, besluttede jeg mig for ikke at gøre det. Men hvis jeg skulle komme videre, ville det være interessant at tilføje en og irritere folk til at tage skraldespanden ud.

Jeg ville også gerne have arbejdet på et mere definitivt projekt, da dette for det meste er et proof of concept -projekt. Hvis jeg skulle komme videre, ville jeg have brugt en egentlig skraldespand eller en kraftigere plastbeholder. Derudover ville jeg gerne have været mere effektiv med ledningerne, da det er meget rodet.

Et alternativ til ESP-8266 kiggede jeg på, mens jeg var bekymret for ikke at kunne integrere det, var ved hjælp af et Bluetooth-modul. Min ven Sean havde nævnt for mig, at han tidligere havde lavet et projekt, hvor han skulle sende data fra sit projekt til sin telefon og bruge et Bluetooth -modul. Han sagde, at det var relativt let. Jeg fik dog WiFi -modulet til at fungere, før jeg lavede noget seriøst detektivarbejde i det. Jeg synes, det ville være interessant at se, hvor den vej ville have ført mig.

Bortset fra det ville jeg have elsket at implementere delen "automatisk indpakning af skraldespand", men det er stadig ude af min liga i øjeblikket. Måske på et senere tidspunkt vil jeg besøge dette projekt igen og forsøge at gøre det mere effektivt.

Anbefalede: