Bitte stell die Tonne raus

 Februar 2013


-----
 

Ausgangssituation

Inzwischen werden bei uns fünf Typen Müll entsorgt. Und für jedes dieser Ereignisse gibt es einen Termin der im Abfallkalender vermerkt ist. Am Vorabend muss also jemand die entsprechende Tonne rausstellen oder im Fall vom Schadstoffmobil organisieren, dass jemand die Kiste mit angesammeltem Sondermüll hinträgt.  

[Bild(81.5k)]


Nun habe ich aber keine Lust jeden Abend auf den Abfallkalender zu sehen. Und wenn es auch sonst in der Familie keiner tut, bleibt die Tonne schon mal ungeleert.
Oder meine Frau erinnert sich früh morgends an den Müllwagen und scheucht mich notdürftig bekleidet in den Garten um hektisch eine Tonne durch die (meist durch Fahrräder zugestellte) Garage auf die Straße zu rumpeln. Wer schon mal mit 'ner gelben Tonne im Arm in Badelatschen durch den Schnee gerannt ist weiß warum ich das hasse!  

  Also kam mir die Idee, eine aktive Erinnerung an die bevorstehende Leerung zu basteln. Eine App für's Handy wäre schön einfach zu realisieren, bedeutet aber, dass ich allein für die Tonnen verantwortlich wäre.
Besser wäre eine Anzeige irgendwo gut sichtbar im Haus. Ein 3,5Zoll Monitor und ein Raspberry-Pi liegen bei mir noch irgendwo rum. Fehlt nur die Stromversorgung und ein wenig Software.  

  Hm, eigentlich geht mir das gegen den Strich, dass die Anzeige dann dauernd Strom braucht. Das muss auch anders gehen!

-----
 

Meine Lösung

Ein Pico-Power-Mikroprozessor der mit einer Batterie 10 Jahre laufen würde kriegt den Kalender eingepflanzt und feuert am Abend vor einer Tonnenleerung einen ordentlichen Stromimpuls auf eine Spule.
Am Eisenkern der Spule hängt ein kleiner Magnet mit einem farbigen Röhrchen dran. Kommt der Stromimpuls wird der Magnet abgestoßen und das Röhrchen fällt runter. Das dient dann als Anzeige. Hier habe ich das mal mit 5 Alu-Röhrchen aufgebaut die in PVC-Führungsröhrchen stecken:  

[Bild(39.0k)]

Wie man sieht, muss morgen die schwarze Tonne raus.  

  Meine Neodymmagnete waren viel zu stark. Also wurden sie mit Eisendraht künstlich schwächer gemacht und mit Heißkleber im Röhrchen fixiert.  

[Bild(10.0k)] [Bild(13.9k)]

Hier kann man sehen, wie der Eisendraht am Spulenkern klebt:  

[Bild(33.7k)]

Die Spulen waren mal kleine vergossene Relais die ich mit einer Wasserpumpenzange als Nussknacker aufgebrochen habe.  

  Was mit einer Spule hervorragend funktioniert hat war mit den 5 Röhrchen eine Katastrophe: Wurde ein Röhrchen gefeuert riß es alle anderen mit sich sobald es unten an den Anschlag knallte. Diverse Versuche das zu dämpfen waren enttäuschend - einfach nicht zuverlässig genug.  

  Ein Fall für die Tonne. Nur die Relais wurden recycled.  

 
-----
 

Meine zweite Lösung

Erstmal habe ich die Elektronik aufgebaut. Der Prozessor sieht mit 40Pins total überdimensioniert aus. Jepp, aber das ist nun mal der stromsparenste momentan lieferbare Atmel-Prozessor (0,6 Microampere). Außerdem hatte ich noch einen.  

[Bild(87.3k)]

Die anderen Bauteile bilden einen Hochsetzsteller um die 3V der Batterien auf 24V für die Spulen hochzujubeln. Die Spulen haben zwar nur 12V man kann aber problemlos kurzzeitig das doppelte reinballern. Dann wird das abstoßende Magnetfeld halt stärker!
Das kleine IC enthält 8 Transistoren um die Spulen anzusteuern. Da ich keine 18polige Fassung hatte tat es auch eine eine 16polige, denn ich nutze ja nur 5 der Transistoren.  

[Bild(29.6k)]

Auf der Rückseite noch ein paar SMD-Bauteile und Fädeldraht:  

[Bild(91.3k)]

 

  Statt runterfallender Röhrchen klappen nun kleine U-Profile aus Plastik herunter und pendeln sanft aus.  

  Die Neodymmagnete sind nur noch 2x3mm klein aber auch für 24V in der Spule zu stark und müssen durch Eisen geschwächt werden. Hier mit aufgeklebten Unterlegscheiben:  

[Bild(63.6k)]

Da die Unterlegscheibchen manchmal beim Strompuls kleben blieben habe ich die Ladung verdoppelt (zweiten 47µ Elko eingelötet) und später auch noch kleine Gewichte aus PVC in einige U-Profile geklebt.  

  So sah das Gesamtgebilde aus:  

[Bild(60.4k)]

Mit Kinderhilfe hübsch angemalt sieht das eingeklappt so aus:  

[Bild(39.9k)]

Der Apparillo bekam noch eine Trägerplatte, Abstandsscheiben zwischen den U-Profilen und eine Spulenabdeckung.
An der Trägerplatte hängt er nun unter dem Küchenoberschrank in unmittelbarer Nähe zum Kühlschrank:  

[Bild(46.3k)]

Hier mal mit Erinnerung an die blaue Tonne:  

[Bild(51.8k)]

Und jetzt die schwarze Restmülltonne:  

[Bild(18.4k)]

Wenn jemand an den Kühlschrank oder die Obstschale geht kann er/sie das unmöglich übersehen. Und die Kühlschranktür öffnet sich am Abend häufig genug!  

  Damit ich mitbekomme ob die Uhr aus dem Ruder läuft habe ich eine Piezo-Piepser spendiert. Jeden Abend um 18Uhr piepst das Ding einmal kurz. Und für jedes rausklappende Fingerchen nochmal mit höherem Ton.  

 
-----
 

Details

Hardware

 

  Den Hochsetzsteller der aus 3V die 24V machen soll habe ich erstmal in LTSpice simuliert um mich an die erforderlichen Pulszeiten ranzutasten.  

[Bild(25.4k)]

Der letztlich daraus entwickelte Schaltplan:  

[Bild(53.9k)]

Wenn ein Finger ausgeklappt werden soll, werden an PD4 Pulse mit steigender Frequenz ausgegeben wodurch die Spannung in den 47uF Elkos steigt. Steigt sie über 24V wird irgendwann der Eingang PD0 high und der Prozessor hört mit den Pulsen auf. Dann schaltet er einen der Ausgänge PA0..PA4 auf High um die 24V durch eine der Spulen zu jagen. Anschließend legt er sich wieder schlafen - nur der 32KHz Uhrenquarz läuft weiter.  

   

Software

 

  Der Abfallkalender ist einfach direkt im Quellcode untergebracht:  

[Bild(71.5k)]

Damit ich den schnell eingeben kann wird diese Tabelle mittels eines Perl-Scriptes aus einer simpleren Tabelle erzeugt. Eingeben muss man nur die Tage an denen etwas abgeholt wird. Die Monate bestimmt der Script aus dem Zusammenhang.  

[Bild(31.1k)]

So läßt sich der Jahreskalender in wenigen Minuten eingeben.  

  Natürlich war die Softwareentwicklung wieder mal eine kleine Katastrophe. Der Prozessor wacht alle 8 Sekunden aus einem stromsparenden Tiefschlaf auf und schaut, ob der Tag rum ist. Aus sportlichem Ehrgeiz wollte ich die Zeit in der er das testet möglichst kurz halten und habe daher den Teil handoptimiert. Dazu wurden alle Variablen fest bestimmten Registern zugeordnet und ein paar Befehle in Assembler geschrieben.
Der Compiler hat aber trotzdem unnötig komplizierten Code daraus gemacht. Also wurden weitere Befehle in Assembler umgebaut. Die Uhr lief dann aber viel zu langsam. Ich habe ziemlich lange gebraucht bis ich durch Analyse um wieviel die Uhr falsch geht rausgefunden habe dass der Compiler (WinAVR) einen meiner Befehle einfach wegoptimiert hat.
Ein 20 Minuten Abschnitt (meine interne Zeiteinheit statt Stunden) war dann 256*8=34,13Min statt der geplanten 150*8s=20Min Sekunden lang.
Daraufhin habe ich nun die gesamte Routine in Assembler umgesetzt. Grmbl.  

  Zum Testen der Uhr hatte ich einen Stundengong eingebaut der alle 20 Minuten piepst und zur vollen Stunde wie eine Kirchenuhr so oft piepst wie der kleine Zeiger der Uhr zeigt. Das war ganz hilfreich.
In der momentan laufenden Version ist der Gong noch drin weil ich vergessen hatte ihn auszukommentieren.
Blöd.
Manchmal haben Compilerfehler auch was gutes: der Gong wird einfach nicht aufgerufen. Prima!
Und ich will eigentlich auch gar nicht wissen warum.  

  Das Flashen des Prozessors ist dann auch noch so ein Abenteuer: Ich benutze den internen 128KHz Oszillator als Prozessortakt weil der so schön stromsparend ist. Aber mit dem Takt kann man kein Programm auf den Prozessor laden sondern nur die Fuses umprogrammieren. Also muss man erst den Takt des Programmers auf 30KHz runterdrehen , dann den des Prozessors auf 8MHz umstellen, dann den Takt des Programmers wieder auf 125KHz hochschrauben, das Programm flashen und den Prozessor wieder auf 128KHz umstellen. Was ein Eiertanz!  

  Ich habe mir jetzt einen PCF8563T Uhrenchip bestellt. Sollte ich nochmal eine Uhr bauen bastel ich da auf jedenfall der Chip rein. Der braucht noch weniger Strom und könnte den Prozessor pünktlich zu irgendwas wieder aufwecken. Das wird hoffentlich problemloser!  

   

Download


-----
Schaltplan, Quellcode, Perlscript und LTSpice-Simulationsdateien des Apparillos: 135muellerinnerung.zip

-----
 

Kommentieren
   
Startseite

Diese Seiten sind darauf optimiert mit möglichst jedem Browser zu funktionieren.

Aber der Seitenquelltext (strg-U) sieht auch interessant aus, zumindest wenn man ihn mit einem Monospace Font in sehr kleiner Schriftgröße betrachtet.

Valid HTML 4.01! CSS ist valide!