Go Down

Topic: Wie Uhrzeit in den Arduino bekommen? (Read 1 time) previous topic - next topic

Kurzundknapp

Hi,

bin neu hier und muss gleich mal 'ne Frage zur besten Vorgehensweise stellen  :)

Ich "bastel" mir gerade ein autarkes Alarmierungssystem mit einem Arduino. Das System soll im Alarmzustand (z.B. offener Schalter) selbstsändig eine Nummer anrufen, soweit so einfach. Zur Funktionskontrolle soll das System einmal täglich zu einer definierten Uhrzeit anrufen. Das ganze ist nicht zeitkritisch, es geht nur darum den Alarmzustand festzustellen, ob das nun 1min früher oder später passiert ist egal. Aktuell habe ich per TTL-RS232 ein altes Siemens S55 angeschlossen. Das Wählen, bzw. anrufen funktioniert auch schon. Evtl. soll das ganze aber später z.B. mit einem Siemens TC35 (GSM-Modul) oder wenn denn mal erhältlich dem Arduino GSM-Modul funktionieren. Da fängt allerdings mein Problem an. Für den täglichen Kontrollanruf benötige ich eine einigermßaen genaue Uhrzeit. Und die brauche ich auch dann, wenn das System autark irgendwo draussen steht und ich es nicht mit dem Computer neu programmieren/updaten kann.

Mit dem angeschlossenen Handy ist das noch unproblematisch. Ich kann das Handy mit der Uhrzeit programmieren und dann per AT-Befehl auslesen (und z.B. im Arduino die time-library nutzen). Wenn ich aber ein GSM-Modul nutze, habe ich keine Eingabemöglichkeit mehr.

Ich habe schon http://arduino.cc/forum/index.php/topic,138073.0.html gefunden, finde das aber ein wenig Overkill. Andere Idee wäre ein RTC-Modul anzuflanschen. Aber wie lange hält ein 2032 auf so einem Modul? Zweite Idee wäre, ein DCF77-Modul anzuflanschen und z.B. einmal am Tag oder einmal in der Woche die Zeit des Arduino zu synchronisieren. Wäre das machbar?

Oder gibt es sonst irgendwas was ich noch nicht gefunden habe?

Danke vorab!

Grüße
Michael

uwefed

Eine CR2032 hält ca 10 Jahre.

Die genaue Uhrzeit kannst Du von einem GPS Modul, einem RDS Signal eines UKW-Radiosenders, einem NTS Server im Internet oder dem DCF77 bekommen.

Wen oder was soll Dein System denn anrufen?

grüße Uwe


Kurzundknapp


Eine CR2032 hält ca 10 Jahre.

Die genaue Uhrzeit kannst Du von einem GPS Modul, einem RDS Signal eines UKW-Radiosenders, einem NTS Server im Internet oder dem DCF77 bekommen.

Wen oder was soll Dein System denn anrufen?


Na 10 Jahre wären ja schon mal was. Das ganze soll "natürlich" möglichst günstig ausfallen. Ich denke ein GPS-Modul nur für die Uhrzeit wäre daher etwas übertrieben. NTS-Server fällt aus, da das Modul später keinen Internet-Zugriff haben wird. Daher ja mein Gedanke an DCF77, das sollte ja eigentlich überall in DE verfügbar sein. Gibt es für RDS ein Shield oder wie macht man das?

Das System soll mich, also mein Handy :-), anrufen. Die Nummer wird vorher fest programmiert. Oder evtll. programmiere ich das noch so, dass z.B. mit dem anzurufenden Handy einmal das Handy im Alarmierungssystem anrufen, dann dort per AT-Befehl den letzten Anruf auswertet und dann die Nummer im EEPROM speichert.

Grüße
Michael

Udo Klein

Eine CR2032 kann aber mit einer RTC schneller ausgesaugt werden. Allerdings muß der Strom für das Handy ja auch irgendwo herkommen. Von daher ist der Puffer für das RTC Modul nicht sooo kritisch.

Nimm ein DS3232 basiertes Modul und gut. Zur Not kannst Du ja die Zeit gelegentlich per Handy aus dem Telefonnetz holen.

DCF77 geht auch, da bin ich gerade dran ;)

Ansonsten kann man sich auch einen Takt aus der Netzfrequenz saugen. Die 50 Hz werden ja langzeitstabil gehalten. In Deutschland kann man das ÜBERALL empfangen. Auch ohne Netzanschluß, es reicht ja, wenn eine Leitung wenigstens in ein paar km Nähe ist. Allerdings kann das unter Umständen mehr Aufwand bedeuten als ein DCF77 Empfänger.
Check out my experiments http://blog.blinkenlight.net

Dixi

Ich hab gerade mit DCF77 rumgespielt und das ist super einfach und sehr genau.

Es giebt alle Biblioteken schon fertig, alles easy.

Und es ist billig. Du brauchst nur das Antennenmodul für ein paar Euronen.

Die Erklärung wie es funktioniert und die Biblioteken giebts hier:

http://playground.arduino.cc/Code/DCF77

Go Up