Inhaltsverzeichnis:

Automatischer Mülleimer - Gunook
Automatischer Mülleimer - Gunook

Video: Automatischer Mülleimer - Gunook

Video: Automatischer Mülleimer - Gunook
Video: Beste SENSOR MÜLLEIMER Vergleich | Top 3 Automatische Mülleimer mit Sensoren 2024, November
Anonim
Automatischer Mülleimer
Automatischer Mülleimer
Automatischer Mülleimer
Automatischer Mülleimer

Dies ist ein automatisch öffnender Mülleimer mit Bewegungserkennung. Es verfügt über WLAN-Konnektivität und sendet eine Textnachricht, wenn es voll ist. Dies ist für ECE-297DP an der University of Massachusetts - Amherst gemacht. Das Hauptziel dieses Kurses war es, Erfahrungen mit praktischer Elektronik zu sammeln, da ich das Gefühl hatte, hinter meinen Kollegen zu stehen und es mir zugute kommen würde, die Dinge, die ich aus meinen Vorlesungen gelernt habe, mit erfahrungsbezogenen Arbeiten zu kombinieren.

Benötigte Materialien:

- 1x Arduino Uno

- 1x ESP-8266

- 2x Mikroservos

- 2x Ultraschall-Bewegungsmelder HC-SR04

- 1x RGB-LED

- 3x 330 Ω Widerstände

- 1x 3.3 Spannungsregler

- 2x 100 uF Elektrolytkondensator

- 1x 0,1 uF Keramikkondensator

- 1x Corona Extra 12er-Pack Longneck Flaschenbierbehälter

Schritt 1: Ursprüngliche Pläne und Fortschritt

Ursprüngliche Pläne und Fortschritt
Ursprüngliche Pläne und Fortschritt
Ursprüngliche Pläne und Fortschritt
Ursprüngliche Pläne und Fortschritt
Ursprüngliche Pläne und Fortschritt
Ursprüngliche Pläne und Fortschritt
Ursprüngliche Pläne und Fortschritt
Ursprüngliche Pläne und Fortschritt

Zu Beginn des Semesters hatte ich keine Pläne für das, was ich machen wollte. Ich bin ohne eine Idee in diese Klasse gesprungen. Also habe ich für den Anfang einen einfachen Weg entwickelt, um mich langsam in die Welt der Hobbyelektronik zu bewegen.

Schritte:

1. Lernen Sie die Grundlagen von Arduino

- Dies geschah nach dem SparkFun-Erfinderleitfaden, der mit dem Starter-Kit geliefert wird. Es ermöglichte mir, die Grundlagen von Widerständen, LEDs, Piezoelementen (Sound), Sensorik und allgemeinem Codieren mit Arduino zu erlernen.

2. Schauen Sie sich Online-DIY-Arduino-Projekte an

- Dies war, um etwas Inspiration zu finden, um kreative und nützliche Elektronik herzustellen

3. Nutze die Inspiration, um zu finden, was ich machen wollte

- Weil ich ein fauler Mensch bin und meine Freunde, bei denen ich nächstes Semester unterkomme, nicht sehr gut aufräumen, habe ich beschlossen, einen automatischen Mülleimer zu bauen.

Der ursprüngliche Plan dafür bestand darin, mit einem meiner Peer-Mentoren, Bryan Tam, einem anderen Studenten der Computertechnik, zu sprechen. Die laute Diskussion mit ihm über die Kritik an meinen Designs half mir, den Designprozess zu verstehen. Der Prozess, ein Problem anzunehmen und über eine Lösung nachzudenken, egal wie unmöglich sie ist, und dann darüber zu diskutieren, wie das Projekt durchgeführt werden soll. Es hat mich gelehrt, dass Ehrgeiz und Kreativität für die Konstruktion im Ingenieurwesen von größter Bedeutung sind.

Ursprünglich wollte ich einen Mülleimer bauen, der automatisch erkennt, wenn der Mülleimer voll ist und dann den Beutel schließt oder einwickelt. Nachdem ich nach Möglichkeiten gesucht hatte, dies zu gestalten, wurde mir klar, dass dies weit außerhalb meiner Hände lag. Daher habe ich das Ziel leicht geändert - einen Mülleimer zu erstellen, der einen Text senden kann, wenn er voll ist.

Gegen Ende des Semesters hatte ich Probleme mit der Integration der WiFi-Komponente zum Senden des Textes und machte mir Sorgen, also dachte ich an andere Alternativen als Alarmsystem. Ich habe nach Piezo-Elementen geschaut, um vielleicht ein nerviges Geräusch zu machen, das nicht aufhört, bis der Müll rausgebracht wird. Außerdem habe ich mir die Verwendung von LEDs angesehen, um verschiedene Farben zu erstellen, um den Müllpegel anzuzeigen.

Um dies zu schaffen, wären zwei Sensoren erforderlich: Einer für die Außenseite, um zu erkennen, wenn sich eine Hand darüber befindet, um sich zu öffnen, und einer an der Innenseite, um den Müllpegel zu erkennen. Ursprünglich würde nur das WiFi-Modul den Text als Alarm senden, aber gegen Ende des Semesters beschloss ich, ein Licht oben auf dem Mülleimer anzubringen, um dies zu unterstützen.

Dies ist das Projektdesign, bei dem ich geblieben bin und bis zum Ende durchgegangen bin.

Schritt 2: Recherche

Um mich auf diese Tortur vorzubereiten, habe ich mehrere Dinge recherchiert.

Zuerst recherchiere ich über die allgemeine Art und Weise, Arduino zu codieren. Das Üben mit dem SparkFun-Erfinder-Kit hat sehr geholfen; Ich gewöhne mich daran, die Pins mit dem Arduino zu verbinden und ein Steckbrett zu verwenden.

Dann habe ich besonders die Verwendung von Servos geübt, da ich wusste, dass ich so den Deckel zum Drehen steuern musste. Zuerst übe ich, ihr Timing zu kontrollieren und dann die Verwendung mit Bedingungen zu kombinieren, damit ich kontrollieren kann, wann sie aktiviert werden.

Dann habe ich recherchiert, welche Sensoren ich verwenden sollte. Es gab zwei Typen: Einen Ultraschallsensor (HC-SR04) und einen Infrarotsensor (PIR Motion Sensor). Der Ultraschallsensor sendet einen Impuls aus, der dann zurückgeworfen und vom HC-SR04 gelesen wird, wobei die Zeit in diesem Intervall berechnet wird, um den Abstand zwischen ihm und dem Ort des Rückpralls zu bestimmen. Ich entschied mich, den Ultraschallsensor für den inneren Sensor zu verwenden, da die Erkennung der Entfernung hilfreicher wäre, zumal Müll nicht viel Strahlung aussendet. Dann entschied ich, dass es einfacher wäre, nur einen HC-SR04 sowohl für den inneren als auch für den äußeren Sensor zu verwenden.

Bei meiner Recherche zum ESP-8266 habe ich viel über die Funktionsweise von WLAN gelernt. Ich habe Zugangspunkte und Stationspunkte kennengelernt. Ich habe auch Webserver als mögliche Option kennengelernt. Schlussendlich. Das ESP ist ein eigenes Board, das komplett unabhängig vom Arduino programmiert werden kann. Somit ist es sogar möglich, dieses ganze Projekt einfach damit zu machen. Um den ESP zu programmieren, habe ich ihn mit dem Arduino verbunden und GND im Arduino mit Reset verbunden, um ihn zu deaktivieren und als Kommunikator zwischen dem ESP und dem USB-Kabel zu fungieren.

Ich habe dann erfahren, dass ich den ESP als Client fungieren lassen kann, der auf Daten von einer Website zugreifen oder diese anfordern möchte. In diesem Wissen habe ich die Website IFTTT.com verwendet, um ein Applet zu erstellen, um Webhooks mit SMS-Texten insgesamt zu verbinden, sodass, wenn ein Ereignis ausgelöst wird (wenn ein Client Daten von einer bestimmten URL anfordert, ein Text gesendet wird).

Eine andere Sache, die ich recherchierte, waren Spannungsregler, Dioden und Widerstände. Widerstände wurden für die LED benötigt, um die LED mit dem Arduino zu verbinden. Die Dioden und die Spannungsregler waren mögliche Lösungen für die Stromversorgung des ESP-8266, da für Vcc strikt 3,3 V benötigt werden. Der Spannungsregler war die einfachste Lösung. Obwohl es beim Arduino eine 3,3-V-Option gibt, habe ich dies zum Anlass genommen, mehr zu erfahren.

Anschließend lernte ich Kondensatoren kennen, wie sie für einen funktionierenden Spannungsregler notwendig sind. Die Kondensatoren helfen, die Spannung auszugleichen, falls sie zu stark "springt" oder "schluckt". 2 Elektrolyt- und 1 Keramikkondensator ist der übliche Aufbau für Spannungsregler.

Die meiste Forschung hat versucht, meinen Code zu debuggen, da es viele Fehler gab, während ich ihn erstellte.

Schritt 3: Aufgetretene Schwierigkeiten und wie ich sie überwunden habe

Die Schwierigkeit am Anfang des Semesters war einfach die Tatsache, dass ich unerfahren war. Ich hatte mir noch nie Gedanken gemacht, etwas zu bauen, also hatte ich Angst, entweder zu ehrgeizig oder zu einfach zu sein. Deshalb habe ich die Auswahl einer Idee so lange aufgeschoben.

Um dies zu überwinden, hat es definitiv geholfen, mit einem erfahrenen Senior zu sprechen. Bryan konnte meine Ideen kritisieren und mir sagen, welche in die richtige und welche in die falsche Richtung gingen. Er half mir zu erkennen, dass ich mein Qualifikationsniveau, die Ressourcen, auf die ich Zugriff hatte, und mein Zeitmanagement berücksichtigen musste.

Auch das Zeitmanagement war für mich sehr schwierig. Ich weiß schon, dass ich eine Schwäche beim Zeitmanagement habe, zumal dieses Semester unglaublich voll war, da ich mit 21 Credits überladen war.

Es gab Zeiten, in denen ich die Arbeit an meinem Projekt opfern musste, aber um dies zu überwinden, widmete ich an den Wochenenden mindestens eine Stunde Recherchearbeit für das Projekt und jede zweite Woche an den Wochenenden, um zu M5 zu gehen, um daran zu arbeiten.

Eine weitere Schwierigkeit, die ich hatte, war mein Mangel an Wissen mit vielen der Teile. Ich wusste nicht, wie sie funktionierten oder welche Drähte wo angeschlossen waren. Um dies zu überwinden, lernte ich den wertvollen Vorteil, die Datenblätter online nachzuschlagen, die mir halfen zu verstehen, was der erforderliche Spannungseingang war und wo VCC, GND und Eingänge verdrahtet werden mussten. Ich erinnere mich, dass ich speziell daran gearbeitet habe, die Servos an die Bewegungsmelder anzuschließen, und frustriert war, weil die Servos überhaupt nicht funktionierten.

Dies führte mich dazu, verschiedene Servos auszuprobieren, in der Hoffnung, dass etwas mit ihnen nicht stimmte. Sie funktionierten jedoch immer noch nicht, was bedeutete, dass es entweder meine Verkabelung oder mein Code sein musste. Ich habe dann versucht, eine externe Stromquelle zu verwenden, indem ich die Servos an 4 AA-Batterien angeschlossen habe, da ich gelesen hatte, dass der USB an einem PC manchmal nicht genügend Spannung liefert, um sie mit Strom zu versorgen. Schließlich entschied ich mich, einfach auf das Datenblatt zu schauen und stellte fest, dass es nur daran lag, dass meine Verkabelung die ganze Zeit falsch war.

Mein schwierigstes Hindernis dabei war der Versuch, die WiFi-Komponente in das Arduino zu integrieren. Ich habe online nach vielen Tutorials gesucht und die Programmierung einfach zu verstehen, weil es für mich schwer zu verstehen war. Eine bestimmte Website hat mir jedoch geholfen und mich mit IFTTT bekannt gemacht. Ich glaubte, einen Sieg errungen zu haben, wusste jedoch nicht, dass die Boards getrennt waren und ich hatte die Boards mit unterschiedlichem Code programmiert. Ich steckte eine Woche lang fest, um herauszufinden, wie man sie verbindet, aber das Internet hat nicht geholfen. Um dieses Hindernis zu überwinden, habe ich schließlich einfach Dr. Malloch um Hilfe gebeten. Ich bin ein sehr stolzer Mensch und neige dazu, Dinge alleine zu tun. Er hatte mir zuvor geholfen, aber es war kein großes Problem, das ich hatte, sondern eine Diskussion über mögliche Wege, mein Projekt anzugehen. Eine einfache Nachfrage bei Dr. Malloch löste sofort die Integration meines ESP-8266.

Dieses Projekt hat mir geholfen, mich in meine Lage zu versetzen und zu erkennen, dass ich mehr arbeiten und Leute um Hilfe bitten sollte, da Engineering kein Einzelprojekt, sondern eine Teamdynamik ist.

Schritt 4: Änderungen an M5 zur Optimierung des Lernprozesses

Änderungen an M5 zur Optimierung des Lernprozesses
Änderungen an M5 zur Optimierung des Lernprozesses

M5 war dieses Semester ein fantastisches Werkzeug für mich. Es enthält bereits viele Ressourcen für neue Entdecker und erfahrene Veteranen.

Ich denke, M5 könnte dazu beitragen, den Lernprozess zu rationalisieren, indem mehr Workshops zu einem breiteren Themenspektrum angeboten und bekannter gemacht werden. Ich hatte kaum von den Workshops gehört, die bei M5 stattfanden, und die einzigen, die ich kannte, waren die Lötworkshops.

Hilfreich wären auch weitere Workshops wie "So geht das Gestalten" oder "Wie man den 3D-Drucker benutzt". Vielleicht haben sie diese Workshops, aber ich konnte nie etwas davon hören.

Schritt 5: Was ich am Ende erreicht habe

Ich konnte einen automatischen Mülleimer bauen

Noch wichtiger ist jedoch, dass ich gelernt habe, wie wichtig Zeitmanagement ist, wie man Schaltungen baut und elektronische Teile verwendet. Ich lernte Arduino, Wellen und Sensoren, Widerstände, Steckbretter, WiFi, den ESP-8266, Webserver, Spannungsregler, Dioden usw. kennen. Ich konnte genau das erreichen, was ich mir vorgestellt hatte. Um ein praktisches Verständnis für Elektronik und Schaltungen zu erlangen.

Es entfachte auch ein kreatives Feuer in mir, da die Erstellung dieses Projekts, obwohl es manchmal extrem frustrierend war, sehr lustig und lohnend war. Endlich zu verstehen, wie ein Teil funktioniert oder den Code so funktioniert, wie ich es wollte, war die stundenlangen Optimierungen und Änderungen wert, die ich vornehmen musste. Es hat mir geholfen zu verstehen, dass ich das machen wollte. Zu Beginn des Semesters war ich in Bezug auf Elektrotechnik und Informationstechnik zögerlich, da ich keine Erfahrung darin hatte, um zu wissen, ob es mir gefällt oder nicht. Zum Beispiel, dass jemand nicht weiß, ob er einen Sport, ein Videospiel oder ein Hobby mag, es sei denn, er versucht es.

Meine größte Errungenschaft dabei war, selbstbewusst sagen zu können, dass ich die Elektro- und Informationstechnik weiterführen möchte.

Schritt 6: Wie jemand anders in meine Fußstapfen treten könnte

Wenn sich jemand in der gleichen Situation wie zu Beginn des Semesters befindet, würde ich empfehlen, die gleichen Schritte zu machen, die ich in "Ursprüngliche Pläne und Progression" beschrieben habe. Das hat mir wirklich geholfen, langsam herauszufinden, was mich interessiert und was ich tun kann.

Insbesondere für dieses Projekt werde ich im Folgenden skizzieren, wie man eines macht.

Schritt 1: Gehen Sie auf IFTTT.com, registrieren Sie Ihre Telefonnummer und erstellen Sie dann ein Applet. Wählen Sie das "wenn" für Webhooks und das "das" für SMS. Suchen Sie nach der Erstellung im Suchfeld nach Maker Webhooks und klicken Sie auf Dokumentation. Geben Sie die Informationen mit Ihrem eigenen Veranstaltungsnamen ein und kopieren Sie die URL. Dies ist die URL, die Sie für den ESP-8266-Code unten verwenden.

Schritt 1: Schließen Sie den ESP-8266 als solchen an:

RXD -> RX

TXD -> TX

VCC -> VCC

CH_PD VCC

GPIO0 -> GND

GND -> GND

Verbinden Sie dann den GND des Arduino mit dem Reset, um ihn zu deaktivieren.

Schritt 2: Geben Sie den Code unten ein und laden Sie ihn auf den ESP-8266 hoch (laden Sie zuerst das ESP-8266-Board auf die IDE herunter). Ziehen Sie dann den ESP-8266 ab.

Schritt 3: Servos an Pin 8 und Pin 9 des Arduino anschließen

Schritt 4: Verbinden Sie den ersten HC-SR04-Sensor mit den Pins 10 und 13 (für Trig bzw. Echo). Verbinden Sie dann den zweiten mit den Pins 11 und 12 (wieder für Trig bzw. Echo).

Schritt 5: Verbinden Sie die RGB-LED mit den Pins 4 (rot), 5 (grün) und 6 (blau).

Schritt 6: Verbinden Sie GPIO2 mit Pin 2

Schritt 7: Geben Sie unten den Code ein (ECE_297_DP) und laden Sie ihn auf den Arduino hoch.

Schritt 8: Finden Sie eine alte recycelte Bierkiste und ein Stück Pappe für den Deckel. Kleben Sie die Popsicle-Sticks mit Heißkleber auf die Servos und kleben Sie die Servos dann auf jeder Seite an die Innenseite des Bots. Kleben Sie den Deckel auf die Eisstiele. Kleben Sie die beiden Sensoren auf den Deckel (die Innenseite erkennt den Müll (Pins 11 und 12) und die Außenseite erkennt die Bewegung (Pins 10 und 13). Kleben Sie dann die LED auf die Oberseite des Deckels. Und kleben Sie die Verkabelung hinter der Box ab, um die hässliche Verkabelung zu verbergen.

Schritt 7: Was ich als nächstes tun würde

Im weiteren Verlauf des Projekts hatte ich einige Ideen, um zusätzlich zur LED einen akustischen Alarm zu implementieren. Da ich den ESP-8266 zum Laufen gebracht habe, habe ich mich dagegen entschieden. Wenn ich jedoch weitermachen würde, wäre es interessant, einen hinzuzufügen und die Leute dazu zu bringen, den Müll rauszubringen.

Außerdem hätte ich gerne an einem definitiveren Projekt gearbeitet, da es sich meistens um ein Proof-of-Concept-Projekt handelt. Wenn ich vorwärts gehen würde, hätte ich einen echten Mülleimer oder einen schwereren Plastikbehälter verwendet. Außerdem hätte ich mir eine effizientere Verkabelung gewünscht, da sie sehr unordentlich ist.

Eine Alternative zum ESP-8266, die ich untersuchte, während ich befürchtete, dass es nicht integriert werden konnte, war die Verwendung eines Bluetooth-Moduls. Mein Freund Sean hatte mir gegenüber erwähnt, dass er in der Vergangenheit bereits ein Projekt gemacht hatte, bei dem er Daten aus seinem Projekt an sein Telefon senden musste und ein Bluetooth-Modul verwendet hatte. Er sagte, es sei relativ einfach. Ich habe das WiFi-Modul jedoch zum Laufen gebracht, bevor ich ernsthafte Detektivarbeit geleistet habe. Ich denke, es wäre interessant zu sehen, wohin mich dieser Weg geführt hätte.

Ansonsten hätte ich gerne den Teil "automatische Müllsackverpackung" implementiert, aber das ist derzeit noch nicht in meiner Liga. Vielleicht werde ich dieses Projekt zu einem späteren Zeitpunkt erneut aufgreifen und versuchen, es effizienter zu gestalten.

Empfohlen: