richtig "gehende" Uhr mit Atmega168

Gast #2359907
Lesenswert?

Hi,

ich möchte mir eine Schaltuhr mit einem Atmega168 bauen.

Meine Frage:

Wie bekomme ich eine genau "gehende" Uhr mit dem Atmega168 möglichst 
einfach ohne DCF77 hin?

Mir fällt da eigentlich nur eine RTC ein. Wenn wirklich nur eine RTC in 
frage kommt dann möglichts:

einfach beschaffbar
schnell implementierbar

Ich möchte schnell zum Ziel kommen.
Habt Ihr einen tip?

Danke,
Peter
#2359929
Lesenswert?

Vermutlich steht das in dem Artikel schon drin: Du koenntest Deinen µC 
mit einem Uhrenquarz takten. Evtl. noch ein bisschen kalibrieren und 
dann bist Du auch nicht ungenauer als eine externe RTC (oder jede andere 
Quarzuhr in Deinem Haushalt). ;)

Wenn Du DCF77 wegen der relativ teuren Module ausschliesst: Hier ist 
gerade letztens wieder ein Thread aufgetaucht, der das Modul eines 
fertigen Funk-Weckers zur Verwendung mit dem µC erklaerte.


Volker
#2360117
Lesenswert?

Peter schrieb:
> Wie bekomme ich eine genau "gehende" Uhr mit dem Atmega168 möglichst
> einfach ohne DCF77 hin?
>
> Mir fällt da eigentlich nur eine RTC ein. Wenn wirklich nur eine RTC in
> frage kommt dann möglichts:

DS3232 ist sehr genau

sonst gibt es noch  DS1337 (Reichelt 2,10€ glaub ich)
Allerdings soll die nicht so doll sein. Hab ich gehört - ich kann da 
aber nichts dazu sagen. Habs das Ding noch nie selbst verbaut.

Volker Schulz schrieb:
> Vermutlich steht das in dem Artikel schon drin: Du koenntest Deinen µC
> mit einem Uhrenquarz takten. Evtl. noch ein bisschen kalibrieren und
> dann bist Du auch nicht ungenauer als eine externe RTC (oder jede andere
> Quarzuhr in Deinem Haushalt). ;)

Das ist nicht so toll - ich empfehle trotzdem eine RTC - so spart man 
sich viel Mühe und Frust.

> Wenn Du DCF77 wegen der relativ teuren Module ausschliesst: Hier ist
> gerade letztens wieder ein Thread aufgetaucht, der das Modul eines
> fertigen Funk-Weckers zur Verwendung mit dem µC erklaerte.

ein DCF Modul sollte so 5€ kosten.

Es gibt allerdings auch PICs mit RTC nur so als Hinweis nebenbei.
Gast #2360144
Lesenswert?

Hi, Peter,

> Wie bekomme ich eine genau "gehende" Uhr mit dem Atmega168 möglichst
> einfach ohne DCF77 hin?

1. Stabilisiere die Versorgungsspannung.

2. Wähle die niedrigstmögliche Ansteuerung für den Quarz, befreie ihn 
von fremden Lasten, denn je freier er schwingt, je weniger Energie der 
Transistor nachführen muss, desto präziser schwingt er.

3. Packe ihn rundum ein in Styropor, eine Kupferhaube darum herum und um 
diese noch mal luftdichtes Styropor.

4. Gleiche ihn ab durch einen Trimmer. Mit einem Temperaturfühler neben 
dem Quarz erkennst Du dann, wann sich seine Temperatur stabilisiert hat 
dafür.

Je genauer Du es haben willst, umso länger musst Du warten, beste 
Ergebnisse wären mit einer Zeitkonstante > 1 Jahr zu erwarten ;-)

5. Wenn Du es noch stabiler haben willst, dann ersetze die äußere Hülle 
Styropor durch einen temperaturgeregelten Ofen, heize den auf etwa 75° 
und nimm einen Quarz, der bei 75° gerade den Wendepunkt der 
Temperaturabhängigkeit hat. Aber dafür gibt`s OVXO schon handelsüblich 
für ein Mittagessen.

Ciao
Wolfgang Horn
Gast #2360171
Lesenswert?

Peter schrieb:
> Wie bekomme ich eine genau "gehende" Uhr mit dem Atmega168 möglichst
> einfach ohne DCF77 hin?
Das setzt jedoch auch voraus, dass am späteren Einsatzort DCF Empfang 
möglich ist. Mein Funkwecker hat z.B. genau neben meinem Bett keinen 
Empfang (warum auch immer).

Wenn es unbedingt eine RTC sein soll, schau mal hier:
http://www.maxim-ic.com/products/timers/ds3234.cfm
Ist jedoch nicht ganz billig und für Privatpersonen wahrscheinlich auch 
nicht so einfach erhältlich in DE. Hier im Forum gibt es ja öfter 
Sammelbestellungen bei Mouser oder Digikey. Das wäre dann eine 
Alternative.
Gast #2360499
Lesenswert?

Peter schrieb:
> Wie bekomme ich eine genau "gehende" Uhr mit dem Atmega168 möglichst
> einfach ohne DCF77 hin?

Wie genau solls denn sein?
Mit einem externen Quarz kommst du ohne besondere Maßnahmen auf etwa 
eine Sekunde Abweichung pro Tag, mit entsprechenden Maßnahmen (Die genUe 
Sekunde hast du ja schon entdeckt) wirds sogar noch wesentlich genauer. 
Eine extra RTC ist überflüssig.
Gast #2360538
Lesenswert?

Hallo,

"genau" ist immer relativ - ist schon klar. Also wenn ich eine 
Armbanduhr kaufe, eine günstige digitale oder eine Zeitschaltuhr bei 
Lidl, dann muss ich die vielleicht einmal im Jahr stellen. Ich denke im 
Schnitt haben diese Art Uhren 1Minute pro Jahr, also ca. eine Sekunde in 
der Woche.

Da ich keine oder wenig Zeit in das Abgleichen oder die Gangenauigkeit 
investieren wollte, hoffe ich hier auf den einen oder anderen guten Tip.

Weiterlauf im Stromausfall Fall ist nicht nötig aber auch nicht schlecht 
:-)

Ich würde gern etwas nehmen und nutzen, und gerade bei so einem 
beliebten Projekt wie dem Uhrenbau muss es doch eine einfache 
Universallösung geben.

Die Netzfrequenz würde ich auch nehmen können, fällt mir gerade ein, 
aber es wäre mir lieber das nicht zu machen.

Gruß,
Peter
Gast #2360543
Lesenswert?

...als externen Quarz nutze ich meist 16Mhz - soetwas:

http://www.reichelt.de/Quarze/16-0000-HC49U-S/index.html?;ACTION=3;LA=444;GROUP=B41;GROUPID=3173;ARTICLE=32852;START=0;SORT=artnr;OFFSET=500;SID=11TZm53X8AAAIAAA5G1O0a84449dde95f1dba7189557beed97bd0

wenn ich überhaupt einen nutze. Das meiste geht mit dem internen 8Mhz 
Oszi. Der ist jedoch für eine Uhr denkbar ungeeignet...

Der Tip mit dem Pic ist gut, aber ich denke ich bleibe jetzt bei den 
Atmels. Pic habe ich nur in asm gemacht und damit will ich nicht wieder 
anfangen...

Peter
#2360701
Lesenswert?

Ich würde auch die Netzspannung vorschlagen. Eventuell kannst Du die 
auch über eine Spule holen. Die Abweichung der Netzzeit ist ungefähr 
+-20 Sekunden, sie driftet aber nicht, sprich wenn Du damit leben 
kannst, dass Deine Uhr um bis zu 40 Sekunden falsch geht, ist das ideal. 
Der Vorteil ist, dass auch in 10 Jahren, das nur maximal 40 Sekunden 
sind.

Willst Du noch das noch billiger haben, nimm einen ungeglätteten 
Halbwellengleichrichter und lass den Brown-Out Detektor deinen µC 100 
mal pro Sekunde resetten.
#2360915
Lesenswert?

Peter schrieb:
> Da ich keine oder wenig Zeit in das Abgleichen oder die Gangenauigkeit
> investieren wollte, hoffe ich hier auf den einen oder anderen guten Tip.

Ich hab das für eine Schaltuhr nach "der genauen Sekunde" so gemacht, 
daß beim manuellen Stellen der Uhr ein automatischer Abgleich gemacht 
wird. D.h. die Uhr wird erstmalig gestellt. Nach einiger Zeit (wenn die 
Abweichung ein paar Sekunden ist) wird die Uhr wieder gestellt. Jetzt 
wird der für "die genaue Sekunde" notwendige Korrekturfaktor berechnet 
und im EEPROM gespeichert.
Damit läuft die Uhr jetzt mit einer Abweichung von < 1sec. pro Monat.
Gast #2360977
Lesenswert?

geile Idee!

Ich habe bisher immer einen offsetfaktor in einem Untermenue zum stellen 
des Drifts angegeben.

Was für einen Quarz nimmst du? Ich habe noch nie einen Trimmer 
eingesetzt...

Gibts was zu beachten? besondere Spannungsversorgung? nehme meist einen 
7805 Low drop typ o.ä. (Elko vor und hinter ...) und natürlich 100nF am 
Controller - klassich.

Gruß,
Dennis
Gast #2361022
Lesenswert?

Peter schrieb:
>Also wenn ich eine
> Armbanduhr kaufe, eine günstige digitale oder eine Zeitschaltuhr bei
> Lidl, dann muss ich die vielleicht einmal im Jahr stellen. Ich denke im
> Schnitt haben diese Art Uhren 1Minute pro Jahr, also ca. eine Sekunde in
> der Woche.

Das sollte mit der "genauen Sekunde" machbar sein. Ist allerdings mit 
etwas Aufwand für die Kalibrierung verbunden.
Gast #2361046
Lesenswert?

Karlo schrieb:
> Das sollte mit der "genauen Sekunde" machbar sein. Ist allerdings mit
> etwas Aufwand für die Kalibrierung verbunden.

Mit Trimmer hat man mindestens den gleichen Kalibrieraufwand.
Es läßt sich natürlich auch ein einfaches GPS-Modul als Zeitempfänger 
verwenden, der für den Hausgebrauch die NMEA-Daten über die serielle 
Schnittstelle liefert. Für genauere Zeitpulse oder natürlich für die 
Kalibrierung einer autarken Uhr, ist ein Modul mit 1PPS-Ausgang (genauer 
Sekundenpuls) eine gute Möglichkeit.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren