Sommario:

Cestino automatico: 7 passaggi
Cestino automatico: 7 passaggi

Video: Cestino automatico: 7 passaggi

Video: Cestino automatico: 7 passaggi
Video: MINECRAFT ⛏ CESTINO AUTOMATICO (trash can) 🗑 - TUTORIAL #shorts 2024, Giugno
Anonim
Cestino automatico
Cestino automatico
Cestino automatico
Cestino automatico

Questo è un bidone della spazzatura ad apertura automatica che rileva il movimento. Dispone di connettività wifi e invia un SMS quando è pieno. Questo è fatto per ECE-297DP presso l'Università del Massachusetts - Amherst. L'obiettivo principale di questo corso era acquisire esperienza con l'elettronica pratica poiché mi sentivo indietro rispetto ai miei colleghi e mi avrebbe aiutato a combinare le cose che ho imparato dalle mie lezioni con il lavoro esperienziale.

Materiale necessario:

- 1x Arduino Uno

- 1x ESP-8266

- 2x Microservi

- 2x rilevatori di movimento ad ultrasuoni HC-SR04

- 1x LED RGB

- 3x 330 resistori

- 1x regolatore di tensione 3.3

- 2 condensatori elettrolitici da 100 uF

- 1x condensatore ceramico da 0,1 uF

- 1x Contenitore per birra con bottiglia a collo lungo da 12 pezzi Corona Extra

Passaggio 1: piani originali e progressione

Piani originali e progressione
Piani originali e progressione
Piani originali e progressione
Piani originali e progressione
Piani originali e progressione
Piani originali e progressione
Piani originali e progressione
Piani originali e progressione

All'inizio del semestre, non avevo piani per quello che volevo fare. Mi sono buttato in questa classe senza un'idea in mente. Quindi, per iniziare, ho sviluppato un modo semplice per attraversarmi lentamente nel mondo dell'elettronica per hobby.

Passaggi:

1. Impara le basi di Arduino

- Questo è stato fatto seguendo la guida all'inventore SparkFun fornita con lo starter kit. Mi ha permesso di apprendere le basi di resistori, LED, elementi piezo (suono), rilevamento e codifica generale con Arduino.

2. Guarda i progetti Arduino fai da te online

- Questo era per trovare un po' di ispirazione per creare elettronica creativa e utile

3. Usa l'ispirazione per trovare quello che volevo fare

- Poiché sono una persona pigra, e perché i miei amici con cui vado in camera il prossimo semestre non puliscono molto bene, ho deciso di fare un cestino automatico.

Il piano originale per questo è venuto parlando con uno dei miei Peer Mentor, Bryan Tam, un altro studente di Ingegneria Informatica. Discutere ad alta voce con lui, criticando i miei progetti, mi ha aiutato a capire il processo di progettazione. Il processo di prendere un problema e pensare a una soluzione, non importa quanto irrealizzabile, e poi discutere su come realizzare detto progetto. Mi ha insegnato che l'ambizione e la creatività sono fondamentali per la progettazione in ingegneria.

Inizialmente, volevo creare un cestino che rilevasse automaticamente quando il cestino era pieno e quindi chiudeva o avvolgeva il sacchetto. Dopo aver studiato i possibili modi per progettare questo, mi sono reso conto che questo era lontano dalle mie mani. Pertanto, ho leggermente modificato l'obiettivo: creare un cestino che possa inviare un messaggio di testo quando è pieno.

Verso la fine del semestre, avevo dei problemi nell'integrare il componente WiFi per inviare il testo ed ero preoccupato quindi ho pensato ad altre alternative come un sistema di allarme. Ho guardato verso gli elementi piezoelettrici per forse emettere un suono fastidioso che non si sarebbe fermato finché la spazzatura non fosse stata portata fuori. Inoltre, ho esaminato l'utilizzo dei LED per creare colori diversi per indicare il livello di spazzatura.

Per creare questo, sarebbero necessari due sensori: uno per l'esterno per rilevare quando una mano è sopra di esso per aprirsi e uno all'interno per rilevare il livello di spazzatura. Originariamente, solo il modulo WiFi inviava il testo come allarme, ma verso la fine del semestre ho deciso di aggiungere una luce nella parte superiore del cestino per supportare questo.

Questo è il design del progetto che ho seguito e che ho portato a termine fino alla fine.

Fase 2: ricerca

Per prepararmi a questo calvario, ho fatto ricerche su più cose.

Per prima cosa cerco il modo generale di codificare Arduino. Esercitarsi con il kit dell'inventore SparkFun ha aiutato immensamente; abituarmi a dover collegare i pin ad Arduino e come usare una breadboard.

Quindi mi sono particolarmente esercitato nell'uso dei servi poiché sapevo che era così che avrei avuto bisogno di controllare il coperchio per ruotare. In primo luogo, esercitandomi a controllare il loro tempismo e poi combinando l'uso con i condizionali in modo da poter controllare quando vengono attivati.

Poi ho studiato quali sensori usare. C'erano due tipi: un sensore a ultrasuoni (HC-SR04) e un sensore a infrarossi (sensore di movimento PIR). Il sensore a ultrasuoni emette un impulso che viene poi rimbalzato e viene letto dall'HC-SR04, calcolando il tempo in questo intervallo, per determinare la distanza tra esso e la posizione del rimbalzo. Ho deciso di utilizzare il sensore a ultrasuoni per il sensore interno poiché il rilevamento della distanza sarebbe stato più utile, soprattutto perché la spazzatura non emette molte radiazioni. Quindi ho deciso che sarebbe stato più semplice utilizzare un HC-SR04 sia per il sensore interno che per quello esterno.

Facendo ricerche sull'ESP-8266, ho imparato molto su come funziona il wifi. Ho imparato a conoscere i punti di accesso e i punti di stazione. Ho anche imparato a conoscere i server web come possibile opzione. Alla fine. L'ESP è una scheda propria che può essere programmata completamente separatamente dall'Arduino. Pertanto, è persino possibile realizzare l'intero progetto semplicemente utilizzandolo. Per programmare l'ESP, l'ho collegato ad Arduino e collegando GND in Arduino a Reset per disabilitarlo e farlo agire da comunicatore tra l'ESP e il cavo USB.

Ho quindi appreso che posso far funzionare ESP come un client che desidera accedere o richiedere dati da un sito Web. Sapendo questo, ho utilizzato il sito Web IFTTT.com per creare un'applet per connettere i webhook ai messaggi SMS in modo tale che quando viene attivato un evento (quando un client richiede dati da un particolare URL, invierebbe un testo).

Un'altra cosa che ho studiato sono stati i regolatori di tensione, i diodi e i resistori. Erano necessari resistori per il LED per collegare il LED all'Arduino. I diodi e i regolatori di tensione erano possibili soluzioni per alimentare l'ESP-8266 poiché richiede solo 3,3 V per Vcc. Il regolatore di tensione era la soluzione più semplice. Sebbene ci sia un'opzione a 3,3 V su Arduino, l'ho presa come un'opportunità per saperne di più.

In seguito, ho imparato a conoscere i condensatori in quanto sono necessari per un regolatore di tensione funzionante. I condensatori aiutano a livellare la tensione nel caso in cui "rimbalzi" o "singhiozzi" troppo. 2 condensatori elettrolitici e 1 ceramico è la configurazione usuale per i regolatori di tensione.

La maggior parte della ricerca stava cercando di eseguire il debug del mio codice poiché c'erano molti errori mentre lo facevo.

Fase 3: Difficoltà incontrate e come le ho superate

Gran parte della difficoltà all'inizio del semestre era semplicemente il fatto che ero inesperto. Non avevo mai pensato di costruire qualcosa prima, quindi avevo paura di essere troppo ambizioso o troppo semplice. Questo è il motivo per cui ho rimandato la scelta di un'idea per così tanto tempo.

Per superare questo problema, parlare con un anziano che aveva esperienza ha sicuramente aiutato. Bryan è stato in grado di criticare le mie idee e dirmi quali stavano andando nella direzione giusta e quali stavano andando nella direzione sbagliata. Mi ha aiutato a capire che dovevo considerare il mio livello di abilità, le risorse a cui avevo accesso e la gestione del tempo.

Anche la gestione del tempo è stata molto difficile per me. So già di avere un punto debole quando si tratta di gestione del tempo, soprattutto perché questo semestre è stato incredibilmente ricco dato che ero sovraccarico di 21 crediti.

Ci sono stati momenti in cui ho dovuto sacrificare il lavoro sul mio progetto, ma per superare questo ho dedicato almeno un'ora di ricerca nei fine settimana per lavorare sul progetto, e ogni due settimane nei fine settimana per andare a M5 per lavorarci.

Un'altra difficoltà che ho avuto è stata la mia mancanza di conoscenza di gran parte delle parti. Non sapevo come funzionassero o quali fili fossero collegati dove. Per superare questo problema, ho imparato la preziosa risorsa di cercare le schede tecniche online, che mi ha aiutato a capire quale fosse l'ingresso di tensione necessario e dove VCC, GND e ingressi dovevano essere cablati. Ricordo di aver lavorato specificamente per provare a collegare i servi ai rilevatori di movimento e di essere frustrato perché i servi non funzionavano affatto.

Questo mi ha portato a provare diversi servi, sperando che ci fosse qualcosa che non andava. Tuttavia, non funzionavano ancora, il che significava che doveva essere il mio cablaggio o il mio codice. Ho quindi provato a utilizzare una fonte di alimentazione esterna collegando i servi a 4 batterie AA poiché avevo letto che a volte l'USB su un PC potrebbe non fornire abbastanza tensione per alimentarli. Alla fine, ho deciso di guardare semplicemente la scheda tecnica e mi sono reso conto che era solo perché il mio cablaggio era errato per tutto il tempo.

Il mio ostacolo più difficile in questo è stato cercare di integrare il componente WiFi su Arduino. Stavo cercando molti tutorial online e capire semplicemente la programmazione era difficile per me da comprendere. Tuttavia, un particolare sito Web mi ha aiutato e mi ha fatto conoscere IFTTT. Credevo di aver ottenuto una vittoria tuttavia, non mi rendevo conto che le schede erano separate e avevo finito per programmare le schede con un codice diverso. Sono rimasto bloccato per una settimana cercando di capire come collegarli ma Internet non ha aiutato. Per superare questo ostacolo, alla fine ho semplicemente chiesto l'aiuto del dottor Malloch. Sono una persona molto orgogliosa e tendo a voler fare le cose da solo. Tuttavia, mi aveva aiutato in precedenza, non era un grosso problema che avevo ma piuttosto una discussione sui possibili modi di affrontare il mio progetto. Semplicemente chiedendo al Dr. Malloch ho risolto immediatamente l'integrazione del mio ESP-8266.

Questo progetto mi ha aiutato a mettermi al mio posto e a rendermi conto che avrei dovuto lavorare e chiedere più aiuto alle persone poiché l'ingegneria non è un progetto da solista ma una dinamica di squadra.

Passaggio 4: modifiche a M5 per semplificare il processo di apprendimento

Modifiche a M5 per aiutare a semplificare il processo di apprendimento
Modifiche a M5 per aiutare a semplificare il processo di apprendimento

M5 è stato uno strumento fantastico per me questo semestre. Viene già fornito con molte risorse per nuovi esploratori e veterani esperti.

Penso che M5 potrebbe aiutare a semplificare il processo di apprendimento organizzando più workshop su una più ampia varietà di argomenti e rendendoli più annunciati. Avevo appena sentito parlare dei workshop che si svolgevano all'M5, e gli unici che conoscevo erano i workshop di saldatura.

Sarebbero utili anche altri workshop come "Come procedere per la progettazione" o "Come utilizzare la stampante 3D". Forse hanno questi workshop, ma non sono mai riuscito a sentirne parlare.

Passaggio 5: cosa ho realizzato alla fine

Sono riuscito a fare un cestino automatico

Ancora più importante, tuttavia, ho imparato l'importanza della gestione del tempo, come costruire circuiti e utilizzare le parti elettroniche. Ho imparato a conoscere Arduino, onde e rilevamento, resistori, breadboard, WiFi, ESP-8266, server web, regolatori di tensione, diodi, ecc. Sono stato in grado di realizzare esattamente ciò che avevo in mente. Per acquisire una comprensione di un livello pratico su elettronica e circuiti.

Ha anche acceso un fuoco creativo in me poiché creare questo progetto, anche se a volte estremamente frustrante, è stato molto divertente e gratificante da fare. Alla fine, capire come funziona una parte o far funzionare il codice come volevo è valsa la pena delle ore di modifiche e modifiche che ho dovuto fare. Mi ha aiutato a capire che questo è quello che volevo fare. All'inizio del semestre, ero titubante sull'ingegneria elettrica e informatica perché non avevo esperienza per sapere se mi piaceva o no. Ad esempio, come qualcuno non sa se gli piace uno sport, un videogioco o un hobby a meno che non lo provino.

Il mio più grande risultato è stato poter dire con sicurezza che voglio continuare con l'ingegneria elettrica e informatica.

Passaggio 6: come qualcun altro potrebbe seguire le mie orme

Se qualcuno si trova nella stessa situazione in cui mi trovavo io all'inizio del semestre, consiglierei di fare gli stessi passaggi che ho delineato in "Piani originali e progressione". Questo mi ha davvero aiutato a individuare lentamente cosa mi interessava fare e cosa potevo fare.

Nello specifico, per questo progetto, illustrerò di seguito come realizzarne uno.

Passaggio 1: vai su IFTTT.com, registra il tuo numero di telefono e quindi crea un'applet. Scegli "se" come webhook e "quello" come SMS. Una volta creato, cerca Maker Webhook nella casella di ricerca e fai clic su documentazione. Compila le informazioni con il nome del tuo evento e copia l'URL. Questo è l'URL che utilizzerai per il codice ESP-8266 che trovi in basso.

Passaggio 1: collega l'ESP-8266 come tale:

RXD -> RX

TXD -> TX

VCC -> VCC

CH_PD VCC

GPIO0 -> GND

GND -> GND

Quindi collega il GND su Arduino al Reset su di esso per disabilitarlo.

Passaggio 2: inserisci il codice in basso e caricalo su ESP-8266 (prima scarica la scheda esp-8266 sull'IDE). Quindi scollegare l'ESP-8266.

Passaggio 3: collegare i servi al pin 8 e al pin 9 su Arduino

Passaggio 4: collegare il primo sensore HC-SR04 ai pin 10 e 13 (rispettivamente per trigger ed echo). Quindi collegare il secondo ai pin 11 e 12 (sempre rispettivamente per trig ed echo).

Passaggio 5: collegare il LED RGB ai pin 4 (rosso), 5 (verde) e 6 (blu).

Passaggio 6: collegare GPIO2 al pin 2

Passaggio 7: inserisci il codice in basso (ECE_297_DP) e caricalo su Arduino.

Passaggio 8: trova una vecchia scatola di birra riciclata e un pezzo di cartone per il coperchio. Incolla a caldo il ghiacciolo che si attacca ai servi e poi incolla a caldo i servi all'interno del bot su ciascun lato. Attacca il coperchio ai bastoncini del ghiacciolo. Fissare i due sensori al coperchio (l'interno è quello per rilevare la spazzatura (pin 11 e 12) e l'esterno è quello per rilevare il movimento (pin 10 e 13), quindi fissare il LED alla parte superiore del coperchio. E fissa il cablaggio dietro la scatola per nascondere il brutto cablaggio.

Passaggio 7: cosa farei dopo?

Andando avanti con il progetto, ho avuto alcune idee per implementare un allarme sonoro oltre al LED. Poiché ho fatto funzionare l'ESP-8266, ho deciso di non farlo. Tuttavia, se dovessi andare avanti, sarebbe interessante aggiungerne uno e infastidire le persone a portare fuori la spazzatura.

Inoltre, mi sarebbe piaciuto lavorare su un progetto più definitivo, poiché questo è principalmente un progetto proof of concept. Se fossi andato avanti avrei usato un vero bidone della spazzatura o un contenitore di plastica più pesante. Inoltre, mi sarebbe piaciuto essere più efficiente con il cablaggio in quanto è molto disordinato.

Un'alternativa all'ESP-8266 che stavo esaminando mentre ero preoccupato di non essere in grado di integrarlo stava usando un modulo Bluetooth. Il mio amico Sean mi aveva detto che aveva precedentemente realizzato un progetto in passato in cui doveva inviare dati dal suo progetto al suo telefono e utilizzare un modulo Bluetooth. Ha detto che era relativamente facile. Tuttavia, ho fatto funzionare il modulo WiFi prima di fare un serio lavoro investigativo su di esso. Penso che sarebbe interessante vedere dove mi avrebbe condotto quel percorso.

A parte questo, mi sarebbe piaciuto implementare la parte "avvolgimento automatico del sacchetto della spazzatura", ma al momento è ancora fuori dalla mia portata. Forse in futuro rivedrò questo progetto e cercherò di renderlo più efficiente.

Consigliato: