Der Zahnputztimer ist ein interaktives GerĂ€t, das Kindern und Erwachsenen dabei hilft, die empfohlene Putzzeit von 3 Minuten einzuhalten. Basierend auf einem ESP32-Mikrocontroller steuert das GerĂ€t einen WS2812B LED-Ring mit 35 LEDs, der die Zeit in vier Quadranten (je 45 Sekunden) visualisiert. Ein grĂŒner Taster startet den Timer, ein roter Taster bricht ihn ab. Ein passiver Summer gibt akustisches Feedback, und am Ende wird eine Super-Mario-Melodie als Belohnung abgespielt. Das GehĂ€use wird 3D-gedruckt und bietet Platz fĂŒr alle Komponenten.
Hardware-Komponenten
- Mikrocontroller: ESP32-basierter Mikrocontroller. ESP32 auf Amazon
- WS2812B LED-Ring: 35 LEDs fĂŒr visuelles Feedback. LED-Ring auf Amazon
- Taster: GrĂŒner Taster (Start) und roter Taster (Abbruch). Taster auf Amazon
- Summer: Passiver Summer fĂŒr Töne und Melodien. Summer auf Amazon
- 3D-gedrucktes GehĂ€use: MaĂgeschneidertes GehĂ€use fĂŒr LED-Ring, Taster, Summer und ESP32 (STL-Datei separat verfĂŒgbar).
- ZusÀtzliche Materialien: Verbindungskabel, BatteriegehÀuse (z.B. 3x AAA). BatteriegehÀuse auf Amazon
Anschlussplan
Komponente | Anschluss am ESP32 | Beschreibung |
---|---|---|
WS2812B LED-Ring | GPIO 15 | Datenleitung fĂŒr die Steuerung des LED-Rings (35 LEDs). |
5V | Stromversorgung fĂŒr den LED-Ring. | |
GND | Masseverbindung fĂŒr den LED-Ring. | |
GrĂŒner Taster | GPIO 4 | Eingangs-Pin mit internem Pull-up-Widerstand (startet Timer). |
GND | Masseverbindung fĂŒr den Taster. | |
Roter Taster | GPIO 5 | Eingangs-Pin mit internem Pull-up-Widerstand (bricht Timer ab). |
GND | Masseverbindung fĂŒr den Taster. | |
Summer | GPIO 12 | Ausgang fĂŒr Töne und Melodien. |
GND | Masseverbindung fĂŒr den Summer. | |
ESP32 Stromversorgung | VIN / 5V | Stromversorgung fĂŒr den Mikrocontroller (z.B. ĂŒber BatteriegehĂ€use). |
GND | Masseverbindung fĂŒr den Mikrocontroller. |
Hinweise
- Pull-up-WiderstĂ€nde: Interne Pull-up-WiderstĂ€nde des ESP32 fĂŒr Taster verwendet (INPUT_PULLUP).
- Stromversorgung: Externe 5V-Stromquelle fĂŒr den LED-Ring bei hohem Strombedarf empfohlen.
- Summer: Passiver Summer, kompatibel mit 3.3V oder 5V, fĂŒr Töne und Melodien.
Software
Die Software wurde in C++ fĂŒr die Arduino-Plattform geschrieben und nutzt folgende Bibliotheken:
- Adafruit_NeoPixel: Steuerung des WS2812B LED-Rings.
Funktionen
- Timer-Logik: 3-Minuten-Timer, aufgeteilt in 4 Quadranten (je 45 Sekunden), visualisiert durch LED-Ring.
- Visuelles Feedback: LED-Ring zeigt Fortschritt in vier Farben (Rot, GrĂŒn, Blau, Gelb) fĂŒr die Quadranten.
- Akustisches Feedback: Piepton bei Quadrantenwechsel, Super-Mario-Melodie bei Abschluss.
- Startanimation: GrĂŒnes Lauflicht im Uhrzeigersinn bei Systemstart.
- Abschlussanimation: GrĂŒnes Blinken und Super-Mario-Melodie als Belohnung.
- Abbruch-Funktion: Roter Taster zeigt Abbruch durch roten LED-Ring und 1-Sekunden-Ton.
Aufbau und Verkabelung
Die Komponenten sind wie im Anschlussplan verkabelt. Das 3D-gedruckte GehĂ€use bietet Platz fĂŒr:
- LED-Ring an der Oberseite fĂŒr Sichtbarkeit.
- GrĂŒner und roter Taster zugĂ€nglich fĂŒr die Bedienung.
- Summer und ESP32 sicher im Inneren.
Installation und Inbetriebnahme
- 3D-Druck: STL-Datei fĂŒr das GehĂ€use drucken (0.2 mm Schichthöhe, PLA).
- Hardware-Montage: Komponenten im GehÀuse befestigen und gemÀà Anschlussplan verkabeln.
- Software-Installation:
- Arduino IDE und ESP32-Board-UnterstĂŒtzung installieren.
- Bibliothek (Adafruit_NeoPixel) herunterladen.
- Code in die Arduino IDE kopieren und auf den ESP32 laden.
- Testen:
- GerĂ€t einschalten; Startanimation (grĂŒnes Lauflicht) und Piepton sollten ablaufen.
- Timer starten (grĂŒner Taster): LED-Ring zeigt Fortschritt, Piepton bei Quadrantenwechsel.
- Timer abbrechen (roter Taster): Roter Ring und 1-Sekunden-Ton.
- Abschluss testen: GrĂŒnes Blinken und Super-Mario-Melodie nach 3 Minuten.
Herausforderungen und Lösungen
- Energieverbrauch: Helligkeit des LED-Rings auf 8% reduziert (strip.setBrightness(20)).
- Taster-Entprellung: Software-Debouncing durch 200ms-Verzögerung.
- Melodie: Vereinfachtes Super-Mario-Theme fĂŒr Belohnung implementiert.
- Benutzerfreundlichkeit: Klare visuelle und akustische Signale fĂŒr Timerstart, -fortschritt und -ende.
Fazit
Der Zahnputztimer ist ein motivierendes und interaktives GerÀt, das das ZÀhneputzen durch visuelles und akustisches Feedback spannender macht. Die Kombination aus LED-Ring, Tastern und Summer in einem 3D-gedruckten GehÀuse bietet eine einfache und effektive Lösung, um die empfohlene Putzzeit einzuhalten. Das Projekt ist anpassbar und erweiterbar durch Open-Source-Bibliotheken und 3D-Druck.
3D-Druck-Datei: 3MF Projekt siehe Links