Arduino Forum

International => Deutsch => Topic started by: beeble2 on Jun 07, 2013, 05:59 pm

Title: Realtime clock status
Post by: beeble2 on Jun 07, 2013, 05:59 pm
Hallo,

kann man bei einer RTC eigentlich den Status abfragen, sprich Batterie noch voll -> Zeit gültig ?
Ich würde gerne eine RTC parrallel mit NTP betreiben.
Kommt nach einem Stromausfall das Internet nicht wieder (router abgestürzt oder so)
so soll die RTC die Kontrolle bekommen. Aber dann will ich wissen ob ihre Zeit gültig ist, sonst
kriegen die Fische im Aquarium nacher keinen Schlaf wenn ich nicht da bin :-)

Ulli
Title: Re: Realtime clock status
Post by: pylon on Jun 07, 2013, 06:40 pm
Du kannst bei den mir bekannten RTC den Batteriestatus nicht abfragen, aber Du kannst natürlich einen Plausibilitätscheck auf die Zeitangaben durchführen, die Du zurück kriegst. Wenn der Strom komplett weg war, wird die Zeit auf 0 initialisiert (Datum auch). Wenn das Datum also kleiner als 2013 ist, hast Du keine gültige Zeit. Die Batterie wird nur benutzt, wenn Du keinen Strom auf der Versorgungsleitung lieferst. Eine Batterie, die nur bei Stromausfällen einspringen muss, hält normalerweise etwa 10 Jahre.
Title: Re: Realtime clock status
Post by: uwefed on Jun 07, 2013, 07:36 pm
Die DS1307 hat ein Bit das die Gültigkeit der Werte anzeigt.
zB:
Code: [Select]
if (! RTC.isrunning()) {
    Serial.println("RTC is NOT running!");
    // following line sets the RTC to the date & time this sketch was compiled
    RTC.adjust(DateTime(__DATE__, __TIME__));
  }

aus der RTClib.h gefunden in http://forum.arduino.cc/index.php?topic=170515.0 Ich weiß aber nicht wo er die Bibliothek her hat.

Du hast aber keine Möglichkeit den Ladezustand der Batterie zu messen.
Die Batterie hält auch ohne Versorgungsspannung am RTC 10 Jahre. Wenn Du auf Nummer sicher gehen willst dann tausche die Batterie alle 2 Jahre aus. Bei 2€ pro Batterie ist das finanziell verkraftbar.

Grüße Uwe