Energie-
Verbrauch
Bewegungs-
melder
ioBroker-DHT22
ioBroker-
Laufschrift
ioBroker LED-
Thermometer
ioBroker-OLED
ioBroker
Multi-OLEDs
ioBroker
Mini-Mülltonne
Ball on Plate
Sonstige
Basteleien
Müllduino = elektronischer Abfallkalender ;-) | ||
https://youtu.be/DDTkK2ugfqo |
Der "Müllduino" ist ein elektronischer Abfallkalender. Ich habe ihn gebaut, weil ich öfters vergessen hatte, die entspr. Mülltonne zur Abholung bereit zu stellen und die Mülltonnen dann bis zum nächsten Abholungstermin überqollen. Funktionsprinzip: Von der Gemeinde wird der Müllkalender in Papierform, oder als PDF-Datei am Ende des Jahres für das Folgejahr ausgegeben. Die darin enthaltenen Abholtermine werden manuell in ein Array auf den Arduino-Nano übertragen. Eine Echtzeituhr (RTC DS3231) stellt die aktuelle Zeit und das aktuelle Datum für den Arduino bereit. Der Arduino prüft anhand des o.a. Arrays (=Abholtermine), ob für den nächsten Tag eine Abholung ansteht. Steht nichts an, wird auf dem Display und den darunter befindlichen LED-hinterleuchteten Feldern, die aktuelle Zeit und das aktuelle Datum angezeigt. Steht aber am nächsten Tag die Leerung einer Mülltonne an, wird im Display wechselweise das aktuelle Datum/Zeit, bzw. Datum/Wochentag des nächsten Tages angezeigt, sowie zusätzlich die entspr. Müllsorte, welche abgeholt wird. Damit die anstehende Müllabholung mehr Aufmerksamkeit erregt, sind unterhalb des Displays noch 31 LED's für das Datum, sowie 12 LED's für die Monate angebracht. Steht eine Müllabholung an, blitzt die entspr. Datums-LED für den nächten Tag in Intervallen fortwährend auf (siehe obiges Video). Beim Frühstück/Abendessen kann das Aufblitzen der LED nicht übersehen werden und es ist an der Zeit, die entspr. Mülltonne(n) auf den Bürgersteig zu rollen. Einen "Mülltonne ist bereitgestellt"-Taster, mit dem das Aufblitzen manuell abgeschaltet werden kann, habe ich mir erspart, da das Datum um Mitternacht sowieso wechselt und somit das Aufblitzen automatisch aufhört. übertragen der Mülltermine in den Arduino-Sketch: In der nachstehenden Grafik ist ein Ausschnitt des Müllkalenders (PDF) unserer Gemeinde zu sehen. Da unsere Gemeinde aus mehreren Ortsteilen besteht, müssen zuerst die Termine für den eigenen Wohnort ermittelt werden. (Am Besten mit Textmarker markieren). Als Beispiel wurde der 5. Februar gewählt, an dem die "gelben Säcke" abgeholt werden. "Gelber Sack" ist im Arduino-Sketch mit der Variablen "1" definiert, also muss im Array am 5. Februar eine "1" eingetragen werden. Für die restlichen Termine ist analog zu verfahren. ![]() Die verschiedenen Müllsorten sind im Sketch wie folgt definiert: /* // Kind of waste: 1: Gelber Sack // "yellow sack" for packaging waste 2: Biomuell // organic waste 3: Restmuell // residual waste 4: Papier // paper 5: Biotonne & Papier // organic waste and paper are collected on the same day */ Eine Besonderheit stellt die Variable "5" dar, an diesem Datum werden 2 Mülltonnen geleert, nämlich die Bio- und die Papiertonne. Wichtig: Da der verfügbare Speicher des Arduino begrenzt ist, musste ich 2 Sketche erstellen, einen für Schaltjahre und einen für Nicht-Schaltjahre. Es ist daher zu prüfen, ob ein Schaltjahr vorliegt und dann der entspr. Sketch (s. Downloads unten auf dieser Seite) zu verwenden. Hardware: Die verwendete Hardware ist am Besten aus dem Schaltplan (Bild 0) zu entnehmen. Eine Echtzeituhr (RTC DS3231) liefert akt. Zeit und Datum an den Arduino-Nano. Diese Informationen, sowie die Mülltermine, werden auf einem 16x2 LCD-Display dargestellt. Die Helligkeit des Displays läßt sich mit dem Potentiometer P1 regulieren. Zusätzlich sind an den Arduino 3 Stck. 16 Kanal LED-Treiber (TLC 5940) angeschlossen, die seriell vom Arduino angesteuert werden. An den Ausgängen der TLC 5940 sind wiederum 31 SMD-LED's für die Monatstage, sowie 12 SMD-LED's für die Monate angeschlossen, also insges. SMD-43 LED's. SMD-LED's deshalb, weil sie schön flach sind und besser in's Gehäuse paasten. Die Helligkeit der LED's läßt sich mittels PWM (Puls Weiten Modulation) über die TLC 5940 ebenfalls vom Arduino steuern. Als Gehäuse habe ich 2 handelsübliche Kunststoff-Bilderrahmen verwendet. Einen Rahmen habe ich nur zur Erhöhung der Tiefe benötigt, da die Elektronik sonst über die Rückseite herausgeragt hätte. Aufgbaut habe die Elektronik auf Lochrasterplatinen, daher auch der "wilde Kabelverhau" (s. Bild 5). Die Schablone für die Tages-/Monats-LED's habe ich maßstabsgerecht mit CorelDraw entworfen und dann mit einem Tintenstrahldrucker auf transparenter Folie ausgedruckt. Allerdings musste ich 2 (oder waren es 3 ?) dieser Folien mit Klebefilm übereinander fixieren, da die aufgedruckte schwarze Tinte nicht ganz lichtdicht war und die LED's somit zu sehr durchgeschimmert haben. Zur zusätzlichen Diffusion des LED-Lichts, habe ich noch einen Bogen rotes Transparentpapier zugeschnitten und zwischen LED's und Schablone geklebt. Hinweise: Man muss natürlich bei jedem Jahreswechsel, wenn der neue Müllkalender der Gemeinde vorliegt, die neuen Termine in den Sketch einpflegen. Für das Einstellen der Echtzeituhr habe ich keine extra Taster vogesehen, da die Uhr nur geringe Abweichungen hat. Eine Sommer-/Winterzeitumstellung ist im Sketch integriert, so daß bzgl. Zeiteinstellung i.d.R. keine Maßnahmen erforderlich sind. Für das erstmalige Stellen der Uhr bei Inbetriebnahme, möchte ich auf die div. im Internet verfügbaren Sketche für die RTC DS3231, bzw. DS1307 verweisen. "Müllduino-Light": Für eine harwaremäßig einfachere Variante kann man auch auf die LED-Treiber (TLC 5940), bzw. die LED's verzichten und sich nur über das LCD-Display informieren lassen. Dabei besteht allerdings die "Gefahr", daß man doch einen Mülltermin verpasst, da das rel. kleine Display nicht so sehr in's Auge fällt, wie eine blitzende LED. |
Downloads | |
Sketch Nicht-Schaltjahr-Version: | Muellduino_kein_Schaltjahr.ino |
Sketch Schaltjahr-Version: | Muellduino_Schaltjahr.ino |
DS1307RTC-Library: | DS1307RTC.zip (ist auch für RTC DS3231 verwendbar) |
TLC5940-Library: | Tlc5940.zip |