Natürlich kann man einen Küchentimer auch kaufen. Aber wo bleibt denn da der Spaß?
Vor kurzem entstand bei mir die Idee einen mehrkanäligen Küchentimer selbst zu bauen. Das Gerät sollte fest an der Wand verschraubt sein, ein Display besitzen und die Vorwahl der jeweiligen Zeiten sollte über einen Drehgeber und jeweils einer Taste pro Kanal passieren. Nach Ablauf der Zeit soll ein Signalton zu hören sein. Ein spezieller Kanal soll das Thermostat des Backofens abschalten.
Die meisten Komponenten dazu hatte ich bereits bei mir herumliegen. Es fehlte nur noch am Drehgeber, dem Piezo-Signalgeber und dem Solid-State-Relais für die Abschaltung des Backofens.
Umsetzung
Herzstück des Timers ist ein Arduino Mega. Ich habe mich für den Mega entschieden, da dieser noch bei mir herumlag. Von den technischen Anforderungen her – also hauptsächlich der Anzahl der Ein- und Ausgänge – hätte auch ein wesentlich kleinerer Arduino ausgereicht. Der Arduino steuert ein 20×4 Zeichen LCD Display per I2C an. Für den Drehgeber gibt es fertige Bibliotheken, um die aus der Drehbewegung resultierenden Signale zu interpretieren. Die Tasten und der Signalgeber sind keine große Herausforderung. So werden die Tasten je an einem Eingang mit aktiviertem Pull-Up Widerstand angeschlossen. Die LEDs der einzelnen Tasten und der Signalgeber jeweils über einen digitalen Ausgang. Für den Signalgeber habe ich sicherheitshalber noch einen Transistor dazwischen geschalten. Denn meine Messungen haben ergeben, dass die Stromaufnahme schon sehr an der Grenze der GPIO-Limits liegt.
Aufbau
Als das Programm soweit fertig war, habe ich mich an den mechanischen Teil des Projekts gewagt. Zur Entwicklung lag die ganze Schaltung noch mit fliegender Verdrahtung auf meinem Schreibtisch. Das musste jetzt natürlich alles ordentlich werden und in ein schönes Gehäuse passen. Hierzu waren einige Ausschnitte, sowie ein paar Bohrungen für Taster und Leitungen im Gehäuse notwendig. Zur Verteilung der Potentiale und zur einfachen und sauberen Verdrahtung habe ich eine Platine mit Schraubklemmen angefertigt. Diese verteilt beispielsweise die Potentiale +5V und GND. Außerdem sitzt auf dieser der Transistor für den Piezo-Summer.
Hierzu folgendes Bild, bei dem der Arduino, die Platine, sowie die Front (von hinten) zu sehen ist. Die Verdrahtung ist noch nicht vollständig:

Das Endergebnis war folgendes:

Backofen-Abschaltung
Moderne Backöfen können mittlerweile nach einer vorgegebenen Zeit den Backvorgang automatisch beenden. Da unser Exemplar so eine Funktion jedoch noch nicht hat, sollte diese Aufgabe auch gleich vom Küchentimer übernommen werden.
Ich habe mich dazu entschieden, den Kanal 3 zur Backofen-Abschaltung zu benutzen. Hierzu habe ich in die Leitung zwischen Thermostat und Heizung im Backofen ein Solid-State-Relais eingebaut. Dieses wird vom Arduino im Normalfall immer angesteuert (Backofen ist freigegeben). Ist auf dem Kanal 3 aber momentan ein Alarm aktiv, steuert der Arduino das Relais nicht mehr an und sperrt somit den Backofen.
Fertig ist die Backofen-Abschaltung!
Bedienung
Der Timer kann über einen Kippschalter aus- und eingeschalten werden. Dieser befindet sich auf der linken Seite des Geräts.
Wird der Timer eingeschalten, dauert es ca. 2 Sekunden bis der Arduino hochgefahren ist. Jetzt können direkt einzelne Timer gestellt werden.
Hierzu hält man die entsprechende Taste für den gewünschten Kanal gedrückt und dreht am Drehgeber, um die Einstellung in Minuten-Schritten vorzunehmen. Sollte eine feinere Einstellung nötig sein, so drück man einmal kurz auf den Drehgeber. Daraufhin schaltet sich die Skalierung von x60s auf x10s um. Jetzt kann die Zeiteinstellung in 10er Sekunden Schritten vorgenommen werden. Lässt man die Taste für den Kanal los, startet auch schon die Zeit.
Dieses Vorgehen ist für alle drei Kanäle analog. Wie bereits erwähnt unterscheidet sich nur der dritte Kanal dadurch, dass er auch den Backofen abschalten würde, wenn dieser gerade eingeschaltet ist.