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
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
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.
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
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.
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.
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
Wenn deine Schaltuhr ohnehin Kontakt zur Netzspannung hat, dann nimm
doch die Netzfrequenz als Takt. Die ist wenigstens langzeitstabil. Eine
Diode und ein einfacher Spannungsteiler hinterm Trafo reichen da schon.
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.
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.
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
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.
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.