Sensorgesteuerte Mülleimer Öffnung: Unterschied zwischen den Versionen

Aus HSHL Mechatronik
Zur Navigation springen Zur Suche springen
Keine Bearbeitungszusammenfassung
Zeile 3: Zeile 3:
<!-- Kopieren Sie diesen Header in Ihren Artikel, damit er aufgelistet wird.  -->
<!-- Kopieren Sie diesen Header in Ihren Artikel, damit er aufgelistet wird.  -->
'''Autor: Ken Hilz & Denim Hilz''' <br/>
'''Autor: Ken Hilz & Denim Hilz''' <br/>
'''Betreuer: Prof. Göbel & Prof. Schneider''' <br/>
'''Betreuer: Prof. Schneider''' <br/>





Version vom 15. Januar 2024, 09:16 Uhr

Autor: Ken Hilz & Denim Hilz
Betreuer: Prof. Schneider


Einleitung

Das Fachpraktikum "Angewandte Elektrotechnik" des Masterstudiengangs "Business and Systems Engineering (BSE)" enthält neben den vier Praktikumsversuchen ein Projekt in Eigenarbeit. Dieses Projekt wird in Gruppen durchgeführt. In der Gruppe "BSE_4“ ist die Projektidee eines sich selbst öffnenden Mülleimers entstanden.

Die Idee sieht vor, in einen Tretmülleimer einen Microcontroller, einen Servomotor und einen Ultraschallsensor zu integrieren, damit sich der Deckel sensorgesteuert öffnet. Das Fußpedal soll dabei entfernt werden, um an dieser Stelle ein Kunststoffgehäuse anzubringen. Das Gehäuse soll platz für den Ultraschallsensor bieten. Dieser soll erkennen, wenn sich ein Objekt oder eine Person unmittelbar davor befindet. Über den Controller soll dann der Servomotor angesteuert werden, sodass der Deckel automatisch geöffnet wird. Sobald sich kein Objekt oder keine Person mehr im Wirkbereich des Sensors befindet, muss der Motor nach den Deckel wieder schließen. Gleichzeitig soll es ein visuelles Benutzerfeedback geben, welches Signal der Sensor gerade erhält. Die genauen Anforderungen sind im nachfolgenden Abschnitt aufgelistet.

Anforderungen

Tabelle 1: Anforderungen des Projekts

ID Beschreibung Klasse Bereich Autor Datum Status
1 Arduino wird als Hardware verwendet. constraint Hardware Ken Hilz & Denim Hilz 05.10.2023 Offen
2 Die Komponenten (Mülleimer, Ultraschallsensor und Servomotor) werden benötigt. constraint Hardware Ken Hilz & Denim Hilz 05.10.2023 Offen
3 Die Elektronik muss im Mülleimer unterhalb des Müllbehälters integriert werden. constraint Hardware Ken Hilz & Denim Hilz 05.10.2023 Offen
4 Die Stromversorgung wird über eine 9V Batterie bereitgestellt. constraint Hardware Ken Hilz & Denim Hilz 05.10.2023 Offen
5 Der Algorithmus muss in MATLAB Simulink entwickelt werden. constraint Software Ken Hilz & Denim Hilz 05.10.2023 Offen
6 Der Sensor erkennt den Gegenstand bis 30cm Entfernung. NFR Software Ken Hilz & Denim Hilz 05.10.2023 Offen
7 Solange der Sensor einen Gegenstand wahrnimmt leuchtet, für den Nutzer sichtbar, eine LED Lampe. FR Software Ken Hilz & Denim Hilz 05.10.2023 Offen
8 Befindet sich ein Gegenstand 30cm oder näher vor dem Mülleimer wird der Servomotor direkt angesteuert. FR Software Ken Hilz & Denim Hilz 05.10.2023 Offen
9 Der Servomotor öffnet die Einwurfklappe in einem Winkel von maximal 60 Grad direkt nach dem Signal des Sensors. FR Software Ken Hilz & Denim Hilz 05.10.2023 Offen
10 Registriert der Sensor keine Bewegung mehr innerhalb von 30cm Entfernung für eine Dauer von 5 Sekunden, wird der Servomotor angesteuert. NFR Software Ken Hilz & Denim Hilz 05.10.2023 Offen
11 Der Servomotor schließt die Einwurfklappe direkt nach dem Signal des Sensors. FR Software Ken Hilz & Denim Hilz 05.10.2023 Offen

Bill of materials (BOM)

Tabelle 2: BOM

Anzahl Komponente Preis Link
1 Arduino Uno Starter Kit 43,99€ https://www.amazon.de/dp/B01ILR6AX4/ref=cm_sw_r_apin_dp_WZ4V7M55W61B3PP83N6Y
1 Servo Motor 14,99€ https://www.amazon.de/Miuzei-Servo-Torque-Digital-Waterproof/dp/B07Q65JY1K/ref=asc_df_B07Q65JY1K/?tag=&linkCode=df0&hvadid=356509582715&hvpos=&hvnetw=g&hvrand=15352743004812799599&hvpone=&hvptwo=&hvqmt=&hvdev=c&hvdvcmdl=&hvlocint=&hvlocphy=9117197&hvtargid=pla-836619218557&mcid=8a335a4ae9d8331891978ed322e6824f&th=1&ref=&adgrpid=76119332550
1 Mülleimer 19,95€ https://www.amazon.de/Spirella-Kosmetikeimer-M%C3%BClleimer-Treteimer-Abfalleimer/dp/B00C1ZV3R6/ref=sr_1_7?__mk_de_DE=%C3%85M%C3%85%C5%BD%C3%95%C3%91&crid=YA4PKGCSQOMP&keywords=kosmetikm%C3%BClleimer%2Bgr%C3%BCn&qid=1704118288&sprefix=kosmetikm%C3%BClleimer%2Bgr%C3%BCn%2Caps%2C83&sr=8-7&th=1
1 Bodenplatte 4,59€ https://www.globus-baumarkt.de/p/gutta-hartschaumplatte-25-x-50-cm-3-mm-schwarz-0779401546/
1 Klingeldraht 8,99€ https://www.globus-baumarkt.de/p/klingeldraht-yk-2-x-0-6-25-meter-rot-weiss-0775060113/
1 Schrauben inkl. Unterlegscheiben und Muttern 4,74€ https://www.globus-baumarkt.de/p/connex-gewindeschraube-m6-x-30-mm-sechskant-innen-4-mm-flachkopf-1-stk-0763025236/

Funktionaler Systementwurf/Technischer Systementwurf

Funktionaler Systementwurf

Der folgende Abschnitt zeigt die geplante Umsetzung der angestrebten späteren Funktion des Projekts.

Abbildung 1 zeigt den Auf- und Einbau der Hardware. Dabei ist zu sehen, wie der Mülleimer umgebaut werden soll, um den Deckel sensorgesteuert öffnen zu können. Es kann auch entnommen werden, wo die Komponenten für den späteren Umbau im und am Mülleimer platziert werden sollen.

Abb. 1: Funktionaler Systementwurf

Abbildung 2 und Abbildung 3 zeigen die Modellierung des Sensorgehäuses in CAD. Das Gehäuse wird mithilfe der Zeichnung aus einer Plastikplatte ausgesägt und anschließend gebogen. Die Maße des Gehäuses lassen sich aus Abbildung 3 entnehmen.

Technischer Systementwurf

In diesem Abschnitt wird die geplante technische Umsetzung der Hard- und Software aufgezeigt.

Der Mülleimer soll über eine Schaltung geregelt werden (vgl. Abbildung 4). Dabei dient der Ultraschallsensor als Eingangssignal. Sobald dieser in der vorgegeben Entfernung (vgl. Abschnitt Anforderungen) ein Objekt erkennt, wird ein Signal an den Arduino weitergegeben. Dieser verarbeitet die Eingabe entsprechend seiner aufgespielten Software und gibt die erforderlichen Signale an die LEDs und den Motor weiter. Je nach Eingangssignal, wird der Arduino dann die rote oder grüne LED und den Servomotor entsprechend zum Deckel öffnen oder schließen ansteuern.

Abb. 4: Technischer Systementwurf

Die Verkabelung der Elektronik kann Abbildung 5 entnommen werden, beispielhaft in Fritzing auf einem Breadboard aufgebaut. Die Umsetzung der Schaltung auf dem Breadboard anhand des Verkabelung Plans ist in Abbildung 6 zu sehen.



Komponentenspezifikation

In diesem Kapitel werden die benötigten Komponenten für die Umsetzung des Projekts beschrieben. In der obigen Liste BOM sind alle verwendeten Kaufteile aufgelistet.

Hardware Board:
Für die Umsetzung wurde ein Arduino Uno R3 Hardwareboard benötigt.

Sensor:
Damit der Mülleimer ab einer bestimmten Entfernung des Objekts automatisch öffnet, wurde ein Ultraschall Sensor (Ultrasonic Sensor HC SR 04) verwendet. Dieser Sensor besitzt zwei Hauptkomponenten. Zum einen den Ultraschallsender (Trigger-Pin), der die Ultraschallwellen aussendet und zum anderen den Ultraschallempfänger (Echo-Pin), der die zurückgeworfenen Wellen auffängt. Dieser Sensor kann in einem Bereich von 2cm bis zu 4 Metern eingesetzt werden und misst dabei auf 3mm genau. Da die Anforderung für die Entfernung zur Öffnung des Mülleimers 30cm beträgt, wurde dieser Sensor ausgewählt, da der Wert im angegebenen Bereich des Sensors liegt.

Motor:
Um den Deckel des Mülleimers zuverlässig öffnen zu können, wurde ein Servomotor mit hohem Drehmoment beschafft. Der "DS3218 20kg digital servo" weist bei einer Betriebsspannung von 5V eine Kraft von 18 kg/cm auf. Mit diesem Motor kann der Mülleimerdeckel problemlos geöffnet werden. Der Motor wird durch das Signal vom Arduino auf 15 Grad eingestellt. In Simulink erfolgt dies mit der Verstärkung 20. Da der Motor maximal 270 Grad stellen kann erhält man 270/360=0,75. Dies wird mit 20 multipliziert und ergibt 15 Grad. Das führt dazu, dass der Mülleimerdeckel (der Anforderung 9) entsprechend geöffnet wird.

Benutzerfeedback:
Damit die Person vor dem Mülleimer auch sieht, ob der Sensor die Person erkannt hat, befinden sich am oberen Rand zwei LEDs. Eine grüne, die leuchtet, sobald der Sensor ein Objekt erkannt hat und eine rote LED, sobald sich das Objekt außerhalb der definierten Entfernung befindet.

Umsetzung (HW/SW)

Hardware Umsetzung
Der Mülleimer stellt die Hauptkomponente dar, in welcher die Elektronik und die Komponenten für die automatische Funktion untergebracht sind. Der Arduino, die Kabel und die Schaltung sind dabei unter dem Müllbehälter im Mülleimer verstaut. Für die LEDs, eine rote und eine grüne, welche vorne unterhalb des Deckels sitzen, wurden zwei Löcher gebohrt. So können die Kabel innen am Mülleimer verlaufen. Das Fußpedal des Mülleimers wurde entfernt und durch ein Gehäuse aus Plastik ersetzt (vgl. Abb. 8 und 9). Dieses beinhaltet den Ultraschallsensor. Für den Servomotor muss voraussichtlich eine zusätzliche Bodenplatte installiert werden, auf welcher dieser befestigt ist. An dem Motor ist die Umlenkstange montiert, über welche der Deckel geöffnet und geschlossen werden kann. Die vorhandene Substanz "Mülleimer" wurde somit in seiner grundsätzlichen Funktion nicht verändert, lediglich durch den Einbau einer Steuerung automatisiert. Abbildung 7 zeigt den Prototypen des Sensorgehäuses aus Pappe gefertigt. Die Abbildungen 8 und 9 zeigen das Sensorgehäuse, welches Anhand der Zeichnung in der oberen Abbildung 2 manuell ausgeschnitten und gebogen wurde. Der Abbildung 10 kann die Position des Servomotors im Mülleimer und der Öffnungsmechanismus entnommen werden.

Herausforderungen
Der Servomotor SG90 reichte nicht aus, da die Stellkraft zu gering ist. Aus diesem Grund wurde der stärkere Servomotor "DS3218 20kg digital servo" benötigt, die genaue Beschreibung des Servomotors ist im Abschnitt Komponentenspezifikation vorzufinden. Für den DS3218 reichte eine Spannungsversorgung über eine 9V Batterie jedoch nicht aus. Aus diesem Grund wird ein 12V Netzteil benötigt, um den Motor zuverlässig zu betreiben.

Software Umsetzung
In der folgenden Abbildung 11 ist die Software Umsetzung mittels Simulink zu sehen.

Abb. 11: Simulink Schaltung Mülleimer

Zu sehen ist, dass der Sensor als Eingangssignal für den Arduino fungiert. Die Eingänge für den Trigger- und Echo-PIN sind die digitalen PINs 3 und 2. Dieses Signal wird über einen Moving Average (Gleitender Mittelwert) Block geführt, sodass dieses geglättet wird, um etwaige Peaks herauszufiltern und ungewollte Öffnungen zu verhindern. Anschließend wird das Signal mit einem Wert von 0,3 verglichen, dieser Wert stellt die Entfernung von 30cm ein. Wird der Wert unterschritten wird ein Signal an die grüne LED (PIN 5) rausgegeben und über einen Moving Average (dieser dient dem langsameren Öffnen des Deckels) an den Motor (PIN 8) weitergegeben. Der Deckel wird nun geöffnet. Sobald der Sensor nichts mehr registriert, wird das Signal auf die rote LED (PIN 6) herausgegeben. Der Deckel schließt nicht direkt, sondern zeitverzögert. Die notwendige Programm-Schleife ist in der unteren Abbildung 12 zu sehen.


Abb. 12: Stateflow Schaltung Mülleimer

Startpunkt des Stateflow Charts ist der geschlossene Motor bei dem "Close OutputState = 0" Block. Erhält dieser nun ein Signal (InputState == 1) wird der Deckel geöffnet und der Arduino wechselt in den Block "Open OutputState = 1". Ändert sich nun das Eingangssignal von 1 auf 0 geht der Arduino in die „ReadytoClose“ Phase. In dieser verweilt er 5 Sekunden bevor der Deckel geschlossen wird. Registriert der Sensor innerhalb dieser Verweildauer ein Signal, startet die "ReadytoClose" Phase erneut.

Die Entfernung und die Zeit bis zum Schließen des Deckels wird in den jeweiligen Blöcken angegeben.

Herausforderungen
Nach dem Einbau der Hardware kam es zu Problemen mit der Öffnung des Mülleimerdeckels. Dieser öffnete und schloss unkontrolliert. Des Weiteren wurden die LEDs nicht mehr angesteuert. Das Problem lag in der Verstärkung die zum Öffnen des Motors verwendet wurde. Anfangs lag diese bei 25 und wurde durch die Optimierung der Schaltung auf 20 heruntergesetzt, wodurch die genannten Probleme behoben wurden. Ein weiteres Problem besteht, welches die Schließung des Mülleimer in der Zeit extrem variieren ließ, obwohl ein spezifischer Wert in dem Stateflow Chart angegeben wurde (siehe Abbildung 12). Dieses Problem konnte trotz der Verwendung verschiedener "Solver Selections" in den "Model Settings" von Simulink nicht gänzlich behoben werden, allerdings konnte die Variation der Zeit verringert werden. Lediglich leichte Abweichungen sind dennoch vorhanden.

Komponententest

Die Komponenten, die getestet werden mussten, sind:
● Der Servomotor
● Der Ultraschallsensor
● Die rote und grüne LED

Servomotor:

Der Servomotor kann erfolgreich über das Arduino Uno R3 Board betrieben werden. Damit der Motor genug Spannung erhält, muss eine externe Spannungsversorgung über ein Netzteil bereit gestellt werden. Wird das Signal zum Öffnen an den Motor ausgegeben, stellt dieser den geforderten Winkel ein. In Abbildung 13 ist der geschlossene und in Abbildung 14 der geöffnete Servomotor zu sehen. Die Abbildung 15 stellt die Ergebnisse der durchgeführten Tests in Bezug auf die Anforderungen ID 4, 8 und 10 dar.

Abb. 15: Testbericht Ultraschallsensor mit Servomotor


Ultraschallsensor:

Der Ultraschallsensor kann problemlos über das Arduino Uno R3 Board betrieben werden. Zwei Pins dienen der Spannungsversorgung und der Ground-Verbindung. Die restlichen der 4 PINs werden zur Messung benötigt. Wie in dem Kapitel Komponentenspezifikation beschrieben, wird ein Trigger-Pin zur Ultraschallwellen Aussendung benötigt und der Echo-Pin zum Empfangen dieser Wellen. In der Abbildung 16 ist der angeschlossene Ultraschallsensor zu sehen. Die Abbildung 17 zeigt die aufgenommenen Messsignale über Simulink. In der oberen Messdarstellung ist das ungefilterte Signal des Sensors zu sehen. Dort wird deutlich, dass eine Filterung des Eingangssignals notwendig ist, damit die Öffnung des Mülleimers zuverlässig funktioniert. In der Darstellung darunter ist das gefilterte Signal zu sehen. Deutlich wird die Glättung des Signals, da keine extremen Peaks des Sensors mehr zu sehen sind. Aus diesem Grund reagiert die Simulink Schaltung zur Öffnung zuverlässiger. Abbildung 18 stellt das Ergebnis des durchgeführten Tests von dem Ultraschallsensor in Bezug zu der Anforderung ID 6 dar.

Abb. 16: Ultraschallsensor Mülleimer
Abb. 17: Ultraschallsensor Messwerte Mülleimer
Abb. 18: Testbericht Ultraschallsensor


Benutzerfeedback über LED:

Damit der Benutzer sieht, ob dieser vom Sensor registriert wurde, sollen zwei LEDs verbaut werden. Die rote LED leuchtet solange kein Objekt registriert wird. Erkennt der Sensor ein Objekt, wird die rote LED ausgeschaltet und die grüne LED eingeschaltet. Diese leuchtet solange der Sensor ein Objekt registriert. Die LEDs wurden für den Komponententest auf einem Breadboard aufgebaut und über die digitalen Pins des Arduino angesteuert. In den folgenden Abbildungen 19 und 20 sind die beiden LEDs zu sehen. Abbildung 21 stellt das Ergebnis des durchgeführten Tests für die LED mit Ultraschallsensor in Bezug zu der Anforderung ID 7 dar.

Abb. 21: Testbericht Ultraschallsensor mit LED


Gesamtkomponententest:

Abschließend wurde ein Gesamtkomponententest durchgeführt, bei dem die verwendeten Komponenten in der Hardware Umgebung eingebaut wurden. Die daraus gewonnenen Ergebnisse sind dem folgenden Testbericht in Abbildung 22 zu sehen.

Abb. 22: Testbericht Ultraschallsensor mit LED

Ergebnis

In dem folgenden Kapitel werden die in Tabelle 1 aufgestellten Anforderungen überprüft, inwieweit diese umgesetzt werden konnten und ob das Projekt das Ziel erreicht hat, den Mülleimerdeckel sensorgesteuert öffnen zu können. In Tabelle 3 sind die Ergebnisse des Projekts aufgelistet. Der sich darunter befindende Link führt zu dem Youtube-Video des sensorgesteuerten Mülleimers.

Tabelle 3: Getestete Anforderungen

ID Beschreibung Bereich Autor Überprüft am Status
1 Arduino wird als Hardware verwendet. Hardware Ken Hilz & Denim Hilz 25.10.2023 Erfolgreich
2 Die Komponenten (Mülleimer, Ultraschallsensor und Servomotor) werden benötigt. Hardware Ken Hilz & Denim Hilz 25.10.2023 Erfolgreich
3 Die Elektronik muss im Mülleimer unterhalb des Müllbehälters integriert werden. Hardware Ken Hilz & Denim Hilz 26.12.2023 Erfolgreich
4 Die Stromversorgung wird über eine 9V Batterie bereitgestellt. Hardware Ken Hilz & Denim Hilz 02.11.2023 Nicht erfolgreich. Es wird ein externes Netzteil benötigt.
5 Der Algorithmus muss in MATLAB Simulink entwickelt werden. Software Ken Hilz & Denim Hilz 26.10.2023 Erfolgreich
6 Der Sensor erkennt den Gegenstand bis 30cm Entfernung. Software Ken Hilz & Denim Hilz 26.10.2023 Erfolgreich
7 Solange der Sensor einen Gegenstand wahrnimmt leuchtet, für den Nutzer sichtbar, eine LED Lampe. Software Ken Hilz & Denim Hilz 26.10.2023 Erfolgreich
8 Befindet sich ein Gegenstand 30cm oder näher vor dem Mülleimer wird der Servomotor direkt angesteuert. Software Ken Hilz & Denim Hilz 26.10.2023 Erfolgreich
9 Der Servomotor öffnet die Einwurfklappe in einem Winkel von maximal 60 Grad direkt nach dem Signal des Sensors. Software Ken Hilz & Denim Hilz 27.12.2023 Erfolgreich
10 Registriert der Sensor keine Bewegung mehr innerhalb von 30cm Entfernung für eine Dauer von 5 Sekunden, wird der Servomotor angesteuert. Software Ken Hilz & Denim Hilz 26.10.2023 Zeitdauer variiert
11 Der Servomotor schließt die Einwurfklappe direkt nach dem Signal des Sensors. Software Ken Hilz & Denim Hilz 27.12.2023 Erfolgreich

Die funktionalen Ergebnisse des Projekts, können dabei unter dem Punkt YouTube Video eingesehen oder hier direkt auf YouTube aufgerufen werden.

Zusammenfassung

Ziel des Projektes war es, einen Mülleimer mit einem Fußpedal mithilfe eines Microcontrollers zu automatisieren. Dieses Ziel konnte im Laufe des Semesters erreicht werden. Die Soft- und Hardware wurde in dem Mülleimer implementiert und öffnet den Deckel, wenn der Sensor ein Objekt in der festgelegten Entfernung erkennt. Somit konnten die meisten Anforderungen erfolgreich getestet werden. Lediglich die Anforderung ID4 und ID10 konnten nicht wie vorgenommen umgesetzt werden. Bezüglich ID4 reicht eine 9V Batterie nicht aus, damit der Servomotor den Deckel öffnen kann, weshalb die Stromversorgung über ein externes Netzteil bereitgestellt werden muss. ID10 konnte nur teilweise erfolgreich umsetzt werden, da die Zeitdauer zum Schließen des Deckels durch den Servomotor nicht bei genau 5sek liegt, sondern zwischen 4 und 8 Sekunden variiert. Die einzelnen Schritte sind zusätzlich zu diesem Wikipedia Eintrag in SVN dokumentiert.

Lessons Learned

Das Projekt „Sensorgesteuerte Mülleimer Öffnung“ ermöglichte einen Einblick in das Thema Projektmanagement. Dabei konnte erlernt werden, wie ein Projektplan gestaltet werden kann und worauf es in der Planungsphase, für eine erfolgreiche Umsetzung, ankommt . Gleichzeitig wurde ein erster Umgang mit einem Microcontroller sowie mit elektrischen Bauteilen und dem Aufbau einer Schaltung ermöglicht. Neben der Hardware Umsetzung bezüglich Schaltungsaufbau und Bauteilverständnisse, wurde die Handhabung der Software erlernt. Dazu zählt der Aufbau einer Steuerung für den Microcontroller mit der entsprechenden Kenntnis über die verfügbaren Matlab und Simulink Bausteine, sowie der Filterung von Signalen, um den Ultraschallsensor in seiner Funktion effizienter zu machen.

Projektunterlagen

Projektplan

In Abbildung 23 ist der vorab erstellte Projektplan zu sehen, anhand welchem die Umsetzung erfolgen soll.

Abb. 23: Projektplan

Die folgende Abbildung 24 zeigt den Ressourcenplan für dieses Projekt.

Abb. 24: Ressourcenplan

Projektdurchführung

Die Projektdurchführung orientiert sich dabei an dem aufgestellten Projektplan. Es wurde darauf geachtet, die terminlichen Vorgaben einzuhalten. Die Durchführung an sich hat, abgesehen von krankheits- und feiertagsbedingten Ausfällen, zwischenzeitlich zu einer Verzögerung von 7 Tagen geführt. Durch Doppelschichten und einer guten Motivation ist es trotzdem gelungen, dass Projekt bis Ende des Jahres 2023 abzuschließen.

YouTube Video

Video vom Projekt: Sensorgesteuerte Mülleimer Öffnung


Weblinks

Literatur


→ zurück zur Übersicht: WS 22/23: Angewandte Elektrotechnik (BSE)