Hallo, ich möchte gerne bei einem neuen Projekt eine Echtzeituhr gepuffert implementieren. Idealerweise mit einem wartungsfreien Kondensator als Energiespeicher bei Stromausfall. Gangreserve ca. 4 Wochen wäre gut. Die meisten 32 Bit MCUs haben ja ein RTC integriert. Aber ich sehe folgende Unterschiede: Bei einem Hersteller (ich glaube es war ST) wird ein separater Pin herausgeführt, an dem die Hilfsspannung angeschlossen wird, die dann nur den RTC Schaltungsteil mit wenig Strom am Leben erhält. Bei Microchip gibt es so etwas wohl nicht. Hier muss bei Stromausfall die gesamte MCU unter Spannung gehalten werden und in des Sleep Modus versetzt werden, mit allen Problemchen die damit verbunden sind.... Sehe ich das so richtig ? Möchte gerne nicht auf einen externen RTC Chip aus Kostengründen zurückgreifen. Gruß Dirk
Dirk F. schrieb: > Gangreserve ca. 4 Wochen wäre gut. Ich weiss, das die Automobil-Industrie das verlangt (Werksferien), aber ich glaube nicht dass man das mit einem Kondensator garantieren kann. Ich habe immer Akkus oder Lithium-Knopfzellen eingebaut. Wenn man einen passenden Controller wählt braucht der im Schlafmodus auch nicht mehr als eine getrennte RTC. Georg
Georg schrieb: > Wenn man einen passenden Controller wählt braucht der im Schlafmodus > auch nicht mehr als eine getrennte RTC. Ja dann muss ich aber die 3.3V Versorgung der MCU vom Rest der Schaltung trennen. Wie ?
Bei einem Projekt haben wir einen Supercap benutzt. Damit sind wir auf
>=4 Wochen gekommen. Hängt aber von viele Details ab.
Georg schrieb: > Dirk F. schrieb: >> Gangreserve ca. 4 Wochen wäre gut. > > Ich weiss, das die Automobil-Industrie das verlangt (Werksferien), aber > ich glaube nicht dass man das mit einem Kondensator garantieren kann. > Ich habe immer Akkus oder Lithium-Knopfzellen eingebaut. > > Wenn man einen passenden Controller wählt braucht der im Schlafmodus > auch nicht mehr als eine getrennte RTC. > > Georg Es geht schon mit mit einem C. Vor Jahren baute ich ein Instrument mit einem DS1302 drin. Der RTC Baustein ladet da anstelle eines Akkus einen 0.15F oder 0.47F Goldcap. Es hat sich herausgestellt, daß die RTC mindestens sechs Monate oder noch länger läuft, wenn auch mit verminderter Genauigkeit, was dem großen Spannungsabfall am Supercap über lange Zeit zugrundeliegt. Ein Monat mit typischer DS1302 Genauigkeit ist definitiv möglich. Eine CRxxxx hat halt den Vorteil, daß der Spannungsverlauf über Zeit viel konstanter ist und deshalb bessere Gangergebnisse zu erwarten sind. Ich verwendete vor Jahren die RTC im STM32F103VET6 und das funktionierte auch sehr gut. Eine CR1225 lief da mit guter Genauigkeit über fünf Jahre im ausgeschalteten Gerätezustand. Der F103 hat einen Vbat Pin dafür.
:
Bearbeitet durch User
https://www.digikey.de/de/products/detail/micro-crystal-ag/RV-8263-C7-32-768KHZ-20PPM-TA-QC/10499245 Dirk F. schrieb: > Bei einem Hersteller (ich glaube es war ST) wird ein separater Pin > herausgeführt, an dem die Hilfsspannung angeschlossen wird, die dann nur > den RTC Schaltungsteil mit wenig Strom am Leben erhält. Bei ST gibt es den extra VBAT-Pin nur bei größeren Gehäusen. Vielleicht macht Microchip das ähnlich. > Möchte gerne nicht auf einen externen RTC Chip aus Kostengründen > zurückgreifen. https://www.digikey.de/de/products/detail/micro-crystal-ag/RV-8263-C7-32-768KHZ-20PPM-TA-QC/10499245 Ja, der hat auch keinen VBAT-Pin und keinen Umschalter. Das stört nicht, solange man den SuperCap aus 5V (oder so) laden kann. Ansonsten hat Micro Crystal auch welche mit Umschalter. Mit der richtigen Ladeschaltung hängt der RTC-Chip nur über einen Widerstand am Kondensator. Der kann dadurch von 3.3V bis runter zu 0.9V genutzt werden, und das mit max. 600nA@85°C (typ. 190nA). Die STM32 z.B. geben bei 1.65V auf. Der entscheidende Vorteil ist aber der integrierte Quarz, deshalb schwingt der auch auf einer versifften Platine und bei jedem Wetter an. Und er braucht trotzdem weniger Platz als Quarz, 2 Cs und evt. 1 R. Noch kleiner wird's, wenn man auch noch den MHz-Quarz sparen kann, weil der uC aus 32kHz per PLL seine internen MHz machen kann.
Gerhard O. schrieb: > Der RTC Baustein ladet da anstelle eines Akkus einen > 0.15F oder 0.47F Goldcap. Und wie lange hat der Goldcap gehalten? Meiner Erfahrung nach sind die nach 5-6 Jahren im Eimer. Die altern wie Sau. Dann musste tauschen, so wie bei einer Batterie, aber mit Lötkolben.
Martin schrieb: > Gerhard O. schrieb: >> Der RTC Baustein ladet da anstelle eines Akkus einen >> 0.15F oder 0.47F Goldcap. > > Und wie lange hat der Goldcap gehalten? Meiner Erfahrung nach sind die > nach 5-6 Jahren im Eimer. Die altern wie Sau. Dann musste tauschen, so > wie bei einer Batterie, aber mit Lötkolben. Ich hab vor ein paar Wochen meine Küchenuhr vom Elko-Siff befreien müssen. Dort hatte ich zwei 1F 2.7V in Reihe an 5V über eine rote LED und R geladen. Das ging dann an den VBat Pin eines F103. Die Gangreserve habe ich so gut wie nie gebraucht, 5 Jahre hat sie gehalten und dann gut 2 Stunden Arbeit, bis die Elkos da raus gefummelt und alles wieder sauber war. Hätte ich mal eine Batterie genommen...
Martin schrieb: > Gerhard O. schrieb: >> Der RTC Baustein ladet da anstelle eines Akkus einen >> 0.15F oder 0.47F Goldcap. > > Und wie lange hat der Goldcap gehalten? Meiner Erfahrung nach sind die > nach 5-6 Jahren im Eimer. Die altern wie Sau. Dann musste tauschen, so > wie bei einer Batterie, aber mit Lötkolben. Ich baute das Instrument um 2007 und es funktionierte noch vor ein paar Monaten. Die RTC läuft zumindest noch heute. Ich habe nachgesehen. Ich hatte allerdings ein Problem im Akai UKW Tuner und bei einem 700F 5V USV. Beim AKAI Tuner kommt nan leider schwer dran. Habe deswegen zwei AA Zellen eingebaut, mit Diode versteht sich:-)
Martin schrieb: > Und wie lange hat der Goldcap gehalten? Meiner Erfahrung nach sind die > nach 5-6 Jahren im Eimer. Wf88 schrieb: > Ich hab vor ein paar Wochen meine Küchenuhr vom Elko-Siff befreien > müssen. Waren das die alten Goldcaps? Heute sollte es doch etwas besseres geben? Was haltet ihr z.B. von diesen: https://www.digikey.de/de/products/filter/elektrische-doppelschichtkondensatoren-edlc-superkondensatoren/61?s=N4IgTCBcDaIA4AsBuAbEBdAvkA
1 | Lifetime: (3.9 V; 2 years @ +65°C, 5,000 hours @ +85°C) |
im Wohnraum wären das 30 Jahre. In einer Schaltung wie oben wird der nur bis ca. 3.1V geladen, macht 60 Jahre. Dann hat er den doppelten Innenwiderstand aber immer noch 70% Kapazität. Er überbrückt also immer noch 3 Wochen statt einem Monat. Der Innenwiderstand von dann 1 Ohm sollte für eine RTC gerade noch reichen. Also hält er effektiv noch deutlich länger, sagen wir 100 Jahre. Mit einem Faktor 2 für Werbelügen und einem Faktor 2 für Klimaerwärmung sind wir bei 25 Jahren bei dauernd 35°C. Allerdings: in einem Gerät, das normal dauernd am Netz hängt, sollte eine 3.6V-Tadiran-Batterie auch so lange halten. Bei der kann man nämlich statt der Schottkydiode eine BAV199 oder einen BC846 nehmen. Das ergibt dann immer noch das 10-fache der empfohlenen Lebensdauer von Mobiltelefonen ;)
Bauform B. schrieb: > Waren das die alten Goldcaps? Heute sollte es doch etwas besseres geben? Hah, ich konnte noch nachsehen. Die lagen bis grade eben noch im Aschenbecher in der Werkstatt. Tecate aus Woche 13, Jahr 2009 Am Code-Archive zu meiner Uhr sehe ich, wann die verbaut wurden. 2015. Habe die damals "neu" gekauft. Womit ich auch schon schlechte Erfahrungen gemacht habe waren "Hy Cap" (mit einem Blitz zwischen den Worten) 10F 2.7V. Davon hatte ich mal ~20 Stück auf einem Rest Lochraster verlötet und liess die Tagsüber an einer kleinen Solarzelle laden. Nachts war das Flur-Licht und im Bad ein Nachtlicht. Nach 3 Jahren fiel das Licht aus, mehr als die Hälfte der Kondensatoren war am Auslaufen. Die waren auch frisch gekauft als ich die verbaut habe, keine Schrottverwertung oder so. Die blieben von nem anderen Projekt übrig...
Dirk F. schrieb: > Bei Microchip gibt es so etwas wohl nicht. Hier muss bei Stromausfall > die gesamte MCU unter Spannung gehalten werden und in des Sleep Modus > versetzt werden, mit allen Problemchen die damit verbunden sind.... > Sehe ich das so richtig ? Ja, allerdings ist mir unklar, welche "Problemchen" du meinst. Offenbar haben Leute viel öfter mit dem umgekehrten Fall Probleme, weil sie Spannung an I/O Pins legen, währen der µC keine Stromversorgung hat.
:
Bearbeitet durch User
Hallo, habe beschlossen, diesen externen RTC zu nehmen. Er hat eine geringe Stromaufnahme von nur 130 nA, aber leider keinen eigenen Anschluss für den Supercap wie der RV-3149-C3 (800 nA). Würde die gezeigte Schaltung (5V Versorgung) so an einer 3,3V MCU laufen ?
Erstmal fehlt ein Widerstand zur Ladestrombegrenzung. Der gehört direkt in Reihe zum Supercap, sonst erwischt die RTC immer nur die Spannung am Supercap, und die ist zu Anfang Null bis wenig. Ansonsten könnte es knapp funktionieren, aber es ist ziemlich undefiniert. Der Spannungsabfall an der BAV199 kann schon mal 2V sein, wenn viel Ladestrom fließt, na gut, 0.3V über VDD sind an den RTC-Eingängen ja erlaubt. Wenn der Supercap richtig voll ist, fließen nur noch nA und der Spannungsabfall wird viel kleiner, RTC-VDD wird deutlich größer als 3.3V und der High-Pegel für die RTC-Eingänge (min. 70%) wird langsam knapp. Dass der Supercap bis auf über 4V aufgeladen wird, ist natürlich gut für die Laufzeit und funktioniert, nur halt die Lebensdauer... Naja, man kann nicht alles auf einmal haben.
Auf jeden Fall besser für den Supercap, aber deutlich weniger Laufzeit. Jetzt wird allerdings RTC-VDD bis zu 0.9V kleiner als die 3.3V. Damit reicht die SDO-Ausgangsspannung nur ganz knapp für den uC (wahrscheinlich 70% von 3.3V). Die RTC-Eingänge werden jetzt "überfahren" und leider widerspricht sich das Datenblatt in dem Punkt selbst: keine Schutzdiode nach VDD, aber Abs.max. VDD+0.5, aber Static characteristics 5.5V. Und ich dachte, Schweizer Uhrmacher wären besonders gewissenhaft :( Beim STM32 muss man mit der Eingangsspannung auch aufpassen. Die Werbung sagt 5V-tolerant, aber das gilt nicht für jeden Pin und nicht, wenn ein Pull-Up eingeschaltet wird und vor allem nicht, wenn VDD Null ist. Dann sind gerade mal 3.6V erlaubt. Ich wollte den Supercap als kleines Modul steckbar machen, damit man wahlweise eine CR2032 drauf stecken kann. Außerdem sind meine 5V nicht besonders stabil, deshalb sieht das Bild so kompliziert aus. Deshalb sorgt auch der Transistor V22 dafür, dass die Ladespannung nicht von den 5V abhängt. Nebenbei macht er Temperaturkompensation. V21 spielt auch Diode, und, wenn man den Gerüchten glauben darf, kann er das besser als eine BAV199 (viel konstanterer Spannungsabfall, viel höherer erlaubter Strom und genauso kleiner Leckstrom). Mit dem Spannungsteiler R82, R77 kann man den Ladeschluss einstellen und damit den Kompromiss zwischen Lebensdauer und Eingangsspannungen der ICs. Ein besonders netter Kompromiss ergibt sich, wenn man den Spannungsteiler weg lässt und den Emitter von V22 direkt an 3.3V legt.
Mal von der Frage der Spannungsversorgung abgesehen. Wenn Du die interne RTC eines Microcontrollers nutzt, mache Dich auf Schmerzen bei der Implementierung gefasst. Was nämlich fast immer der Fall, aber so gut wie nie dokumentiert: Die RTC läuft in einer anderen Clock Domain. D.h. nur weil Du in ein Register schreibst bedeutet das nicht, das die Daten übernommen werden. Das passiert häufig erst dann, wenn die nächste Millisekunde des RTC Quarzes abgelaufen ist. Das gleiche passiert beim Lesen aus Registern: Wenn Du die Uhrzeit ausliest (Tag, Stunde, Sekunde etc) kann es passieren, das zwischen den Zugriffen der Uhrenquarz weiter tickt. Die Daten sind dann unzuverlässig. Und in welcher Reihenfolge die RTC Perepherie die Register updated: Das steht natürlich auch nirgendwo. D.h. Du solltest beim Lesen der Zeit aus der RTC eine Schleife laufen lassen, die so lange liest, bis Du zwei mal das gleiche Ergebnis bekommst. (Have learned this the hard way: Kreditkarten Terminal, welches über die RTC die Gültikkeit des Zertifikates prüft und - wenn Zertifikat abgelaufen - das Gerät brickt. Ist schon doof, wenn es während der Entwicklung niemals aufritt, das durch die zwei Clock Domains Race Conditions entstehen, aber im Feld dann die Rückläufer kommen, weil grundlos die Geräte ihre Zertifikate verwerfen)..
Nils schrieb: > D.h. Du solltest beim Lesen der Zeit aus der RTC eine Schleife laufen > lassen, die so lange liest, bis Du zwei mal das gleiche Ergebnis > bekommst. Bei Benutzung der STM32 HAL kriegt man das schon geschenkt:
1 | /** |
2 | * @brief Read the time counter available in RTC_CNT registers. |
3 | * @param hrtc pointer to a RTC_HandleTypeDef structure that contains |
4 | * the configuration information for RTC. |
5 | * @retval Time counter |
6 | */ |
7 | static uint32_t RTC_ReadTimeCounter(RTC_HandleTypeDef *hrtc) |
8 | { |
9 | uint16_t high1 = 0U, high2 = 0U, low = 0U; |
10 | uint32_t timecounter = 0U; |
11 | |
12 | high1 = READ_REG(hrtc->Instance->CNTH & RTC_CNTH_RTC_CNT); |
13 | low = READ_REG(hrtc->Instance->CNTL & RTC_CNTL_RTC_CNT); |
14 | high2 = READ_REG(hrtc->Instance->CNTH & RTC_CNTH_RTC_CNT); |
15 | |
16 | if (high1 != high2) |
17 | { |
18 | /* In this case the counter roll over during reading of CNTL and CNTH registers, |
19 | read again CNTL register then return the counter value */ |
20 | timecounter = (((uint32_t) high2 << 16U) | READ_REG(hrtc->Instance->CNTL & RTC_CNTL_RTC_CNT)); |
21 | } |
22 | else |
23 | { |
24 | /* No counter roll over during reading of CNTL and CNTH registers, counter |
25 | value is equal to first value of CNTL and CNTH */ |
26 | timecounter = (((uint32_t) high1 << 16U) | low); |
27 | } |
28 | |
29 | return timecounter; |
30 | } |
Hallo, habe eben die LIthium Knopfzelle CR2032 in meinem Laptop nach 5 Jahren gewechselt. Hier ist ja auch ein RTC drin. War erstaunt, dass dise alte immer noch 3.07 V hat. Wenn ich mir jetzt so die Probleme mit den Supercaps so ansehem übelege ich doch, eine CR2032 als Backup für den RTC zu nehmen... Was meint ihr ?
CR2032 haben sich bewährt. Experimente mit Akkus lasse ich lieber in den 90er Jahren, wo sie her kommen.
Stefan F. schrieb: > CR2032 haben sich bewährt. Also bei einer Kapazität von 230 mAh (CR2032) und einen Stromverbrauch der RTC von max. 850 nA komme ich auf 30 Jahre. Wow....
Dirk F. schrieb: > Also bei einer Kapazität von 230 mAh (CR2032) und einen Stromverbrauch > der RTC von max. 850 nA komme ich auf 30 Jahre. Und bedenke, dass die Uhr vom 230V Netz versorgt wird, solange das Gerät eingeschaltet ist.
Stefan F. schrieb: > CR2032 haben sich bewährt. Experimente mit Akkus lasse ich lieber > in den 90er Jahren, wo sie her kommen. Mir kommen immernoch die Tränen, wenn ich an meinen 286er Commodore PC denke. Alles versaut rund um die Akkus. Leiterbahnen durch....
Wie ist das denn bei den Super-Kondensatoren, können die Auslaufen und dadurch Geräte beschädigen?
Stefan F. schrieb: > CR2032 haben sich bewährt. Experimente mit Akkus lasse ich lieber in den > 90er Jahren, wo sie her kommen. Sehe ich ähnlich. Ich verwende die DS1307 und eine stinknormale CR2032 in einer Batteriehalterung als Backup, wenn die Stromversorgung ausfällt. Bei Computern halten die CR2032 gut und gerne auch mal 10 Jahre. Aber selbst wenn die Computer dauerhaft vom Netz getrennt sind, halten die noch 5 Jahre. Ich glaube nicht, daß man mit Akkus und Ladeschaltungen eine ähnliche Zuverlässigkeit über 5 Jahre hinbekommt und dann auch noch zu dem Preis.
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.