Forum: Mikrocontroller und Digitale Elektronik möglichst simpler langzeittimer?


von Homy (Gast)


Lesenswert?

Hi,

ich würde mir gerne ein kleines "Erinnerungs-Gerät" basteln (z.B. für 
Blumen gießen etc.); es soll einfach nach einer bestimmten Zeit (bis ca. 
1 Woche) eine kleine LED aufleuchten lassen und mit einem kleinen Taster 
resettet werden können. Habt ihr eine Idee, wie ich das möglichst 
einfach realisieren kann? Ich schätze um einen Mikrocontroller kommt man 
nicht herum oder gibt es Timer-Bausteine die so lange Zeiten 
realisieren? Ich habe einen Arduino, da müsste man doch mit Delays und 
Schleifen auch so eine lange Wartezeit hinkriegen oder klappt das aus 
irgendeinem Grund nicht? Genauigkeit ist nicht so wichtig, bei einer 
Zeit von einer Woche kanns auch mal ne Stunde daneben liegen.

von Eumel (Gast)


Lesenswert?

Jeder Mikrocontroller dürfte dafür geeignet sein.

von Harald W. (wilhelms)


Lesenswert?

Homy schrieb:

> gibt es Timer-Bausteine die so lange Zeiten realisieren?

Mit einem 4060 plus 4020 lässt sich sowas sicherlich realisieren.
Wenn Du die Programmierung von µCs beherrschst, wird vielleicht
etwas einfacher.
Gruss
Harald

von Homy (Gast)


Lesenswert?

dann würde ich wohl einen ATTiny benutzen...würde den dann auch gerne 
per Batterie betreiben, so ein ATTiny zieht ja wahrscheinlich auch nicht 
so viel Strom, das müsste dann auch eine Weile halten oder?

von (prx) A. K. (prx)


Lesenswert?

Früher ging das für µC-Verächter leichter, weil es einen dafür perfekten 
Baustein gab, den XR2240. Den gibts heute aber nur noch als Antiquität.

Dessen Prinzip lässt sich zwar mit dem 4060 und etwas Drumrum nachbauen, 
heute nimmt man aber einen einfachen µC, der das auch mit Knopfzelle 
ewig durchhält.

von mannem (Gast)


Lesenswert?

Homy schrieb:
> so ein ATTiny zieht ja wahrscheinlich auch nicht
> so viel Strom, ... ?

der nicht. Aber die Led.

von (prx) A. K. (prx)


Lesenswert?

mannem schrieb:
> der nicht. Aber die Led.

Eine mit 1%ED blinkende LED ist auffälliger als eine dauernd leuchtende.

von cppler (Gast)


Lesenswert?

Die LED soll ja angehen wenn's Zeit ist also nicht dauernd blinken,
ein Tiny V mit passendem Quarz, Taster und Low-Current-LED sollte es 
tun.

von (prx) A. K. (prx)


Lesenswert?

Wozu braucht man da einen Quarz? Derart pingelig sind Blumen nicht.

von cppler (Gast)


Lesenswert?

A. K. schrieb:
> Wozu braucht man da einen Quarz? Derart pingelige Blumen gibts nicht.

Weil:

Homy schrieb:
> es soll einfach nach einer bestimmten Zeit (bis ca.
> 1 Woche)

das auch eine tausendstel Sekunde sein könnte :-P

von (prx) A. K. (prx)


Lesenswert?

Du gehörst wohl auch zu denen, die ihre per RC-Oszillator betriebene 
UART der Genauigkeit wegen möglichst langsam takten. ;-)

von Markus W. (Firma: guloshop.de) (m-w)


Lesenswert?

Homy schrieb:
> dann würde ich wohl einen ATTiny benutzen...würde den dann auch gerne
> per Batterie betreiben, so ein ATTiny zieht ja wahrscheinlich auch nicht
> so viel Strom, das müsste dann auch eine Weile halten oder?

Im Prinzip geht da jeder Mikrocontroller. Schön handlich und wirklich 
billig ist der ATtiny13A. Mit internem 128-KHz-Oszillator müsste er 
unter 100 μA ziehen, das heißt, wenn du zwei Mikrozellen zur 
Stromversorgung verwendest, reicht das mehr als 2 Jahre.

Die LED würde ich – wie A. K. schon vorgeschlagen hat – nicht leuchten, 
sondern immer wieder aufblitzen lassen.

von (prx) A. K. (prx)


Lesenswert?

Markus Weber schrieb:
> Mit internem 128-KHz-Oszillator müsste er
> unter 100 μA ziehen, das heißt,

Das wär dann der Watchdog-Oszillator, und der ist dann doch ein arg 
grobes Schätzeisen. Ich würde schon den normalen nehmen, aber man kann 
den passend prescalen.

von Eumel (Gast)


Lesenswert?

Markus Weber schrieb:
> Im Prinzip geht da jeder Mikrocontroller. Schön handlich und wirklich
> billig ist der ATtiny13A. Mit internem 128-KHz-Oszillator müsste er
> unter 100 μA ziehen, das heißt, wenn du zwei Mikrozellen zur
> Stromversorgung verwendest, reicht das mehr als 2 Jahre.

Weil die Zeit nicht sonderlich genau sein muss kann man auch den 
Watchdog nehmen um ihn aus dem Schlaf zu wecken. Dann musst du die 
Batterie wahrscheinlich erst wechseln wenn sie ausgelaufen ist ;)

von Kein Name (Gast)


Lesenswert?

Hatte für so etwas Aldi Zeitschaltuhren zerlegt.

Die Uhrenplatinen kann man überall einbauen. 3 Kabel - Masse, 1,5 Volt 
und Signal.

Mit der 220 Volt Platine kann man bestimmt auch noch irgendwas mal 
anfangen.

von Eumel (Gast)


Lesenswert?

Eumel schrieb:
> Markus Weber schrieb:
>> Im Prinzip geht da jeder Mikrocontroller. Schön handlich und wirklich
>> billig ist der ATtiny13A. Mit internem 128-KHz-Oszillator müsste er
>> unter 100 μA ziehen, das heißt, wenn du zwei Mikrozellen zur
>> Stromversorgung verwendest, reicht das mehr als 2 Jahre.
>
> Weil die Zeit nicht sonderlich genau sein muss kann man auch den
> Watchdog nehmen um ihn aus dem Schlaf zu wecken. Dann musst du die
> Batterie wahrscheinlich erst wechseln wenn sie ausgelaufen ist ;)

Mit fällt gerade ein, dass der Watchdog eh mit dem 128 KHz Oszillator 
läuft. Also ändert sich an der Genauigkeit nichts, nur beim 
Stromverbrauch kannst du die beiden Nullen streichen.

von Markus W. (Firma: guloshop.de) (m-w)


Lesenswert?

Eumel schrieb:
> Mit fällt gerade ein, dass der Watchdog eh mit dem 128 KHz Oszillator
> läuft. Also ändert sich an der Genauigkeit nichts, nur beim
> Stromverbrauch kannst du die beiden Nullen streichen.

Da hast du wohl Recht. :-)
Zusätzlich den Prescaler so einstellen, dass der CPU-Takt für die noch 
verbleibenden Wach-Zeiten bei 500 Hz liegt. Dann reichen wahrscheinlich 
eine Solarzelle mit Elko oder zwei Elektroden, die man in die Blumenerde 
steckt. ;-)

von (prx) A. K. (prx)


Lesenswert?

Eumel schrieb:
> Mit fällt gerade ein, dass der Watchdog eh mit dem 128 KHz Oszillator
> läuft. Also ändert sich an der Genauigkeit nichts, nur beim
> Stromverbrauch kannst du die beiden Nullen streichen.

Der Tiny13A braucht laut Datasheet bei 100kHz Takt nur um die 5µA idle. 
Weiter runter ist dort nicht dokumentiert, aber das geht mit dem Takt 
sicherlich noch weiter runter bis zum Minimum von 4MHz/256=16kHz.

Im Power-Down mit aktivem Watchdog braucht er um die 4µA, also effektiv 
mehr Strom als im Idle ohne Watchdog bei 16kHz.

von Eumel (Gast)


Lesenswert?

A. K. schrieb:
> aber das geht linear weiter
> runter bis zum Minimum von 4MHz/256=16kHz.

Wieso sollte das das Minimum sein?

A. K. schrieb:
> Im Power-Down mit aktivem Watchdog braucht er um die 4µA, also effektiv
> mehr Strom als im Idle ohne Watchdog bei 16kHz.

Interessanter Gedanke, muss ich mal nach messen.

von (prx) A. K. (prx)


Lesenswert?

Eumel schrieb:
> Wieso sollte das das Minimum sein?

Weil der Prescaler nur durch maximal 256 teilen kann. Weiter runter 
gehts nur auf der Basis des unkalibrierten 128kHz Watchdog-Oszillators 
und der ist so ungenau, dass es nach 1 Woche evtl. irgendwann nachts um 
3 Uhr blinkt.

Korrektur: Es sind 4,8MHz, nicht 4MHz, also 19kHz Minimum.

von Eumel (Gast)


Lesenswert?

A. K. schrieb:
> dass es nach 1 Woche evtl. irgendwann nachts um
> 3 Uhr blinkt.

Ist den Blumen doch egal ob sie jetzt einen Tag früher oder später 
gegossen werden :)

von (prx) A. K. (prx)


Lesenswert?

Den Blumen schon. Aber einige Stunden überflüssigen Blinken ruiniert dir 
die Energiebilanz. ;-)

von Eumel (Gast)


Lesenswert?

A. K. schrieb:
> Den Blumen schon. Aber einige Stunden überflüssigen Blinken ruiniert dir
> die Stromersparnis. ;-)

Richtig, argl!

von (prx) A. K. (prx)


Lesenswert?

Ich bin allerdings nicht sicher, wie die Kurve 19-7 im Datasheet zu 
interpretieren ist. Möglicherweise ist da der Stromverbrauch des 
Oszillators nicht drin enthalten. Dann ist meine Rechnung natürlich 
Käse.

von Peter R. (pnu)


Lesenswert?

Als Anzeige sollte man da ein LCD-Element benutzen. Z.B ein 
zweistelliges Display, wie es reichelt anbietet, und dann von inaktiv 
auf 88 umschalten.

von (prx) A. K. (prx)


Lesenswert?

Nochmal Strom: Ein vergleichsweise dicker Klops wie der ATmega48PA ist 
mit 32kHz Uhrenquarz im Power-save mit 1µA sparsamer als jeder ATtiny. 
Und nebenbei auch noch viel genauer.

von (prx) A. K. (prx)


Lesenswert?

Peter R. schrieb:
> Als Anzeige sollte man da ein LCD-Element benutzen. Z.B ein
> zweistelliges Display, wie es reichelt anbietet, und dann von inaktiv
> auf 88 umschalten.

Zu unauffällig. Musst du immer eigens draufgucken. Eine blinkende LED 
sieht man auch so, insbesondere wenns dunkel ist.

von Markus W. (Firma: guloshop.de) (m-w)


Lesenswert?

A. K. schrieb:
> Nochmal Strom: Ein vergleichsweise dicker Klops wie der ATmega48PA ist
> mit 32kHz Uhrenquarz im Power-save mit 1µA sparsamer als jeder ATtiny.
> Und nebenbei auch noch viel genauer.

Interessante Sache!

Leider zeigt das Datenblatt für den ATmega48PA im Kapitel 32.4 auf der 
Seite 531 keine Grafik. Liegt das an meinem Viewer?
http://www.atmel.com/Images/Atmel-8271-8-bit-AVR-Microcontroller-ATmega48A-48PA-88A-88PA-168A-168PA-328-328P_datasheet.pdf

Für den ATmega88PA ist der Graph zu sehen (Seite 555). Nehme an, der für 
den 48PA schaut ähnlich aus.

Was ich aber auch interessant finde: der ATmega328P ist sogar noch ein 
bisschen sparsamer als der ATmega88PA. Je größer desto sparsamer?

von Eumel (Gast)


Lesenswert?

Markus Weber schrieb:
> Je größer desto sparsamer?

Vielleicht ein bisschen neuer?

von (prx) A. K. (prx)


Lesenswert?

Markus Weber schrieb:
> Seite 531 keine Grafik. Liegt das an meinem Viewer?

Ich sehe in der aktuellen Version auch nichts, habe aber eine ältere 
Version hier rumliegen, noch im alten Layout.

von (prx) A. K. (prx)


Lesenswert?

Eumel schrieb:
>> Je größer desto sparsamer?
>
> Vielleicht ein bisschen neuer?

Alterung des Datasheets. In der 2011er Version brauchte er mehr als in 
der 2013er.

von Eumel (Gast)


Lesenswert?

A. K. schrieb:
> Alterung des Datasheets. In der 2011er Version brauchte er mehr als in
> der 2013er.

Dann hat sich vielleicht der Herstellungsprozess gebessert oder Atmel 
hat ähhhh "besser" gemessen ;)

von MaWin (Gast)


Lesenswert?

> Früher ging das für µC-Verächter leichter, weil es einen
> dafür perfekten Baustein gab, den XR2240.

CD4536 ist der übliche Langzeittimer heute.
Reicht aber nicht für 1 Woche, eher 4 Stunden,
also noch einen CD4020 nachschalten.

Hat leider das Problem, daß man zwar mit einem Poti die zeit
einstellen kann, aber 1 Woch warten muß um zu überprüfen ob die
Einstellung auch gestimmt hat.

Also braucht man wohl doch eher was digital einstellbares
mit einem Display, also eine fertige Zeitschaltuhr,
am einfachsten zu Einstöpseln in die Steckdose.

von kukuk (Gast)


Lesenswert?

Moeglichst einfach ...ist ein Eimer mit feinem TroepfelLoch.
Die richtige Menge Wasser fuellen.Kalibrieren ;-)
Wenn es nicht mehr troepfelt,dann ist es Zeit zum giessen.

Automatische Kompensation: bei grosser Waerme verringert sich
die Zeit wegen Verdunstung

von Thomas E. (thomase)


Lesenswert?

kukuk schrieb:
> Moeglichst einfach ...ist ein Eimer mit feinem TroepfelLoch.
Noch einfacher ist es, sich einen Zettel an den Badezimmerspiegel zu 
pappen: "Donnerstag Blumen giessen!".

Mann, hier geht es ums Elektronik basteln.

mfg.

von Anfänger (Gast)


Lesenswert?

MaWin schrieb:
> Hat leider das Problem, daß man zwar mit einem Poti die zeit
> einstellen kann, aber 1 Woch warten muß um zu überprüfen ob die
> Einstellung auch gestimmt hat.

Hallo
Das muss nicht sein. Zum Einstellen benutzt du einen niedrigeren 
Teilerausgang. Die Schaltzeit lässt sich daraus digital hochrechnen. Mit 
dem CD 4536 solltest du direkt hinkommen. Den 4060 habe ich schon als 
Timer oberhalb von 10 h benutzt. Der Einganstakt liegt hierbei deutlich 
unter einem Hertz und das funktioniert problemlos. Mit einem solchen 
Eingangstakt kämst auf über 1Jahr Schaltzeit beim 4536.

Das scheint mir das Bauteil der Wahl zu sein.

von Homy (Gast)


Lesenswert?

Hallo, vielen Dank für die vielen Antworten und Anregungen!

Ich hab hier noch einen ATTiny45 rumliegen, aus dem werde ich mir dann 
demnächst mal einen Prototypen basteln. Für die nächste Version kann ich 
dann ja den ATTiny13A ausprobieren ;)

Wie funktioniert das genau mit diesem Watchdog und dem Prescalen? Das 
muss man wahrscheinlich irgendwie initialisieren? Meine 
Mikrocontroller-kenntnisse sind äußerst beschränkt ;) Ich hab das so 
vor: Ich programmiere die Funktion auf meinem Arduino Uno und übertrage 
den Code dann so: https://www.youtube.com/watch?v=30rPt802n1k auf den 
Attiny. Hoffe das klappt, hab es noch nie ausprobiert :)

von (prx) A. K. (prx)


Lesenswert?

Homy schrieb:
> Ich hab hier noch einen ATTiny45 rumliegen, aus dem werde ich mir dann
> demnächst mal einen Prototypen basteln. Für die nächste Version kann ich
> dann ja den ATTiny13A ausprobieren ;)

Klar. Der Tiny45 ist zwar weit weniger sparsam als der Tiny13A (das A 
ist dabei wichtig), aber fürs Prinzip reicht er.

> Wie funktioniert das genau mit diesem Watchdog

Der Watchdog selbst ist etwas härterer Tobak, weil der beim Tiny45 nur 
als Reset-Quelle taugt, nicht als Interrupt-Quelle. Der Controller 
kriegt also alle 4 Sekunden einen Reset und im Programm muss man 
unterscheiden, ob das eben der Watchdog war, oder beispielsweise ein 
Power-Up. Und braucht Daten, die einen Reset überleben.

Einfacher: Lass den Watchdog weg und probier mit normalem Programm rum. 
Mit normalem Timer und Idle-Modus (SLEEP Befehl) zum Strom sparen.

> und dem Prescalen?

Siehe Datasheet. Man kann den Systemtakt runterskalieren. Der 
Stromverbrauch ist näherungsweise proportional zum Takt.

> Das muss man wahrscheinlich irgendwie initialisieren?

Ja.

> Meine Mikrocontroller-kenntnisse sind äußerst beschränkt ;)

Das wird sich nun ändern.

> Ich programmiere die Funktion auf meinem Arduino Uno und übertrage
> den Code dann so

[Video ignoriert] Programme von einem AVR sind auf einen anderen nicht 
allzu oft ohne Anpassung übertragbar. Timer funktionieren etwas anders, 
Register sehen anders aus usw. Ausser wenn die aus der gleichen Reihe 
sind, wie Mega88 und Mega168.

von (prx) A. K. (prx)


Lesenswert?

Eine andere Frage wäre, wie du die Zeit eieruhrmässig einstellen willst, 
wenn nicht fest eingebrannt. Wenn digital per Schalter, dann könnte ein 
8-Pin Tiny unpraktisch klein sein.

von Homy (Gast)


Lesenswert?

Ja, darüber habe ich mir auch schon Gedanken gemacht, fürs erste würde 
ich einfach mit einer festen Zeit arbeiten. Mit einem Schalter zum 
Einstellen wäre dann der nächste Schritt, da bräuchte ich dann 
vermutlich wirklich einen größeren Mikrocontroller.

von M. N. (Gast)


Lesenswert?

(Trimm-)Potis oder Dekadenschalter+Rs für Tage, 10er-Stunden und 
1er-Stunden (oder anderer Aufteilung) an den ADC-Eingängen könnten doch 
reichen.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.