Tiny RTC wielki – mały moduł

5/5 - (5 votes)

Wielki bo z przemyślaną funkcjonalnością, niewielki rozmiarami ;-p

moduł Tiny RTC widok z góryModuł Tiny RCT oryginalnie wygląda tak:

moduł Tiny RTC widok z dołu

ma dodatkowe miejsce na PCB przewidziane na termometr cyfrowy DS18B20 lub podobny. Można go przylutować nad złączem P2 koło rezonatora, Ja przyczepiłem sobie gniazdko. Układ wyposażony został w ogniwo LIR2032 i to zasługuje na szczególną uwagę … napięcie jakim dysponujemy z niego to 3,6V. Dodatkowo PCB zostało wyposażone w możliwość wyposażenia w jedno z dwóch złączy  (bądź oba jeśli ma ktoś ochotę), w zależności od tego jaką funkcjonalność planujemy. Złącze mniejsze P2 umożliwia użycie termometru i dostęp do dwóch układów scalonych, w które moduł został wyposażony. Są to RTC DS1307, oraz pamięć nieulotna AT24C32. Natomiast złącze P1 ma do dyspozycji oprócz punktów GND, VCC, SDA, SCL, DS, dodatkowo punkty BAT i SQ dla wykorzystania pełni możliwości i funkcjonalności modułu. Złącze BAT wyprowadza napięcie baterii np do pomiaru, a SQ „wypuszcza” przebieg prostokątny z RTC na „zewnątrz” modułu. Dzięki obudowom SMD układów scalonych, cały układ jest niewiele większy od użytego ogniwa, które znajduje zastosowanie po odłączeniu zasilania głównego.

Przy uruchamianiu  oryginalnej konfiguracji modułu Tiny RTC napotkałem problem funkcjonalny. Polegał na zatrzymywaniu zliczania czasu po przejściu układu na zasilanie backup-owe. Co ciekawe wprowadzone data i czas nie ulegały skasowaniu, a jedynie zegar nie inkrementował czasu. Po włączeniu zasilania głównego wszystko wracało do normy.
Dodatkowo nie jestem pewny czy na ogniwie LIR2032 nie odkładało się za wysokie napięcie … „bateryjka ździebko napuchła” … po kilku godzinach zabawy z modułem. Szczegół dodatkowy to to, że jest to ogniwo -> 3.6V Li-Ion Rechargeable Button Cells  😯

Krótka charakterystyka:

  • Long service time: Under normal condition and correct operate ion, LIR2032 battery can maintain 80% capacity after 500 cycles.
  • High energy density: Batteries are easy to meet the mini equipment, with small volume and lightweight.
  • High working voltage: About 3.6V working voltage, 3 times higher than NiCd or NiMh battery, it could reduce the amount of the batteries needed.
  • No memory effect: Without memory effect, LIR2032 battery could provide you enough power whenever and wherever you are.
  • Good consistency:  Manufacturing processes are under a strict control of ISO9000 quality control system, The capacity, internal resistance, discharge plateau and self-discharge of each battery has good consistency.
  • Safety:  A built-in safety vent
  • Money Saving: In most case,  it can replace CR2032 Lithium primary button cell . One LiR2032  =  200 pcs CR2032

Mój problem polegał na tym, iż nie posiadałem prawidłowego schematu do modułu. Ten który miałem okazał się być dokumentacją do podobnej konstrukcji. Gdy na to wpadłem wypatrzyłem układ ładowania akumulatorka, i dopiero wtedy dotarło do mnie, że tam siedzi akumulatorek … 😀 W związku z tym zacząłem bardzo intensywne poszukiwania lepszego schematu bo lenistwo wzięło górę i nie było mowy nawet o próbie rysowania schematu z dwustronnego PCB! Tak że schemat który zamieściłem w artykule sterownik łazienkowy do bojlera, ogrzewania i wentylacji nie jest prawidłowy dla tego modułu …

Teraz trzeba było dostosować moduł Tiny RTC do współpracy ze zwykłą baterią CR2032. Jak to zrobiłem pokażę na fotce:

sposób na udoskonalenie ideału ;-)

sposób na udoskonalenie ideału 😉

cztery elementy do usunięcia, jedna zworka do wykonania. Dodatkowo przylutowałem sobie rezystor pull up dla magistrali 1wire, prosto do padów sensora.

Po rozbudowaniu funkcjonalności i modyfikacji do pracy z baterią moduł wygląda następująco:modul po przerobkachmodul po przerobkach spod Tym sposobem pozbyłem się problemu z zatrzymywaniem zliczania czasu po odłączeniu zasilania głównego. Funkcjonalność modułu związaną z RTC i pomiarem temperatury przetestowałem i wszystko działa prawidłowo – ale po przeróbkach. Będę musiał dodatkowo powalczyć ze spieszeniem się zegara … Właściwie to podczas testów borykałem się z jeszcze jednym paskudnym zjawiskiem … było to szybkie rozładowywanie bateryjki gdy układ zostawał odłączony od zasilania głównego, a do punktu BAT podłączony był PIN µC odpowiedzialny za pomiar napięcia ogniwa. O zgrozo po około 4 godzinach bez zasilania uciekło gdzieś w granicach 0,4V … przy 3V – sporo. Prąd upływu wynosił ponad 13 mA gdy układ podłączony był programatorem i konwerterem RS-USB do komputera i nie był zasilany. Gdy wtyczki powyciągałem z komputera, uciekało tylko 8mA. Rezystancja wspomnianego pina względem masy ponad 22MΩ.  Problem rozwiązałem przez wstawienie między punkt pomiarowy a pin ADC opornika 1MΩ. Zupełnie nie odbiło się to na wynikach pomiaru, a bateria nie jest już rozładowywana. Uciekający prąd mierzony przez ten opornik nie jest namierzalny moimi przyrządami – czyli mogę powiedzieć że go nie ma 🙂 . Bateria po takim zabiegu i długotrwałych testach jest w bardzo dobrej kondycji 😉

Cóż byłby to za opis bez cyfr parametrów i temu podobnych. Więc trzeba przytoczyć te kilka suchych faktów … Większość parametrów pracy całego modułu wyznacza będzie układ scalony RTC. I tak napięcie zasilania dla modułu powinno mieścić się w zakresie 4,5 do 5,5 V DC. Temperatura otoczenia powinna zawierać się w przedziale 0°C to +70°C lub -40°C to +85°C w zależności od użytego typu układu scalonego zegara. Temepraturę otoczenia dodatkowo ograniczy rodzaj użytego ogniwa dla zasilania podtrzymującego pracę RTC. SCL Clock Frequency maksymalnie może wynieść 100kHz, RTC szybciej „gadać” nie potrafi. Konstruktor modułu pozbawił nas możliwości korzystania z funkcjonalności pinu WP dla układu IC EEPROM, łącząc go na stałe do GND. A wystarczyło dodać zworkę w postaci goldpina by cieszyć się tą cechą.

A.D. 2014-09-10 Dzięki uprzejmości Pana Wojciecha u którego ostatnimi czasy robiłem zakupy zamieszczam schemat do modułu. Mam jedną uwagę do niego, mój moduł nie posiada rezystora pull-up dla magistrali 1WIRE.

schemat TinyRTC


nota katalogowa RTC DS1307.pdf (3254 pobrania )
nota katalogowa EEPROM AT24C32.pdf (3479 pobrań )
nota katalogowa sensora temperatury DS18B20.pdf (3512 pobrań )


Otagowano , , , , , .Dodaj do zakładek Link.

6 odpowiedzi na „Tiny RTC wielki – mały moduł

  1. Sebski komentarz:

    Witam. Super artykuł. Wylutowanie którego rezystora sprawia że po odłączeniu zasilania czas się dalej odlicza i w jaki sposób to pomaga? Dzięki 

  2. Jarek komentarz:

    LIR2032 to nie jest akumulatorek, to zwykła bateria, która po prostu była doładowywana z głównego zasilania.

  3. Arkadiusz Wernicki komentarz:

    Witajcie. Ja obecnie używam DS3231 w mini module z małą baterią na pokładzie. DS u góry a bateria po drugiej stronie i jedno złącze żeńskie 5pin. DS3231 też ma w sobie termometr i jak coś to można się nim posługiwać. EEPROM’ oczywiście brak bo i miejsca już nie ma. Całość bryka po i2C. Wspomniany EEPROM można w razie co wstawić tuż przy złączu RTC bo się zmieści. Więc na PCB zajmie pole 12x12mm i w górę około 12mm. Działa stabilniej niż DS1307, który wcześniej używałem nawet samodzielnie projektując układ na moich płytkach. Pozdrawiam

  4. Tomek komentarz:

    Czy przypadkiem moduł powinien być pozbawiony R2 i R3 w przypadku już posiadanego pullup ?

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *

18 + trzy =

Witryna wykorzystuje Akismet, aby ograniczyć spam. Dowiedz się więcej jak przetwarzane są dane komentarzy.