Energooszczędny zegar LED

Energooszczędny zegar LED

Zegary mogą być różne: analogowe, cyfrowe, małe, duże, naręczne i nie tylko. Jednak dużym problemem konstrukcyjnym w zegarach elektronicznych jest pogodzenie czytelności odczytu z niskim poborem mocy. W zaprezentowanym projekcie zastosowano nietypowe rozwiązanie, które pomimo pewnych ograniczeń nie wpływa negatywnie na wygodę użytkowania.

Podstawowe parametry:
  • wyświetlanie godzin i minut w formacie 24-godzinnym,
  • czterocyfrowy, czytelny wyświetlacz LED,
  • załączanie wyświetlacza po dotknięciu odpowiedniego pola,
  • regulowany czas załączenia: od 50 ms do 2 s,
  • pobór prądu około 1 μA w stanie spoczynku i do 30 mA podczas wyświetlania,
  • zasilanie napięciem stałym 3…5 V,
  • wbudowane gniazdo baterii CR2032.

Elektroniczne układy zegarów możemy spotkać w różnych wykonaniach. Jedne z nich mają świecące ekrany (na przykład z wyświetlaczami OLED) lub diody LED imitujące tarczę zegara analogowego, inne są wyposażone w wyświetlacz LCD korzystający ze światła odbitego, które pochodzi z otoczenia. Te pierwsze pobierają sporo energii, te drugie zazwyczaj mniej, gdyż nie muszą świecić. Jednak co zrobić, kiedy chcielibyśmy pogodzić zalety obu rozwiązań? Czyli potrzebujemy zegara, który jest doskonale czytelny nawet w egipskich ciemnościach, a jednocześnie może działać zasilany małą bateryjką.

Niemożliwe do zrobienia? Wcale nie. Wystarczy pewien mały trik. Przecież zegar nie musi świecić cały czas, prawda? Wystarczy, że ktoś będzie w pobliżu, a nawet jeszcze lepiej: jednoznacznie wyrazi chęć odczytu aktualnej godziny. Majstrowanie przy jakichś przełącznikach w warunkach, umówmy się, niewystarczającej ilości światła nie jest rzeczą przyjemną ani wygodną, toteż wystarczy tylko taki zegar dotknąć. A gdzie? W sumie, możliwości jest sporo. Zapraszam do lektury!

Budowa i działanie

Schemat ideowy omawianego układu znajduje się na rysunku 1. Głównym podzespołem, sterującym jego pracą, jest mikrokontroler typu ATmega88PA-PU z 8-bitowym rdzeniem AVR. Ma wystarczającą liczbę konfigurowalnych wyprowadzeń, więc nie ma potrzeby stosowania dodatkowych układów zwiększających tę liczbę takich, jak rejestry przesuwne. Mikrokontroler przez większość czasu znajduje się w stanie uśpienia, z którego wybudza go przerwanie od zmiany stanu na wyprowadzeniu PD3. Nie realizuje zadań krytycznych czasowo, wobec czego częstotliwość zegara jest stabilizowana przez wbudowany układ oscylatora RC. Rezystor R1 podciąga wejście zerujące do dodatniego potencjału zasilania, co zmniejsza ryzyko samoczynnego zerowania się układu spowodowane ładunkami elektrostatycznymi osiadającymi na tym wejściu.

Rysunek 1. Schemat ideowy energooszczędnego zegara LED

Zegar ten nie zawiera zewnętrznego układu RTC do działania. Funkcję układu mierzącego czas spełnia sam mikrokontroler, a dokładniej - wbudowany moduł licznika - Timer2, który pracuje asynchronicznie taktowany sygnałem zegarowym wytwarzanym przy użyciu rezonatora kwarcowego Q1. Kondensatory C5 i C6 ułatwiają jego wzbudzenie oraz stabilizują pracę. Ponieważ nominalna pojemność obciążająca ten kwarc powinna wynosić 12,5 pF, użyto kondensatorów C5 i C6 o pojemności 8,2 pF. Po doliczeniu pojemności montażowych oraz pojemności wejściowej oscylatora mikrokontrolera uzyskana wartość jest zbliżona do wymaganej przez producenta rezonatora kwarcowego.

Istotnym parametrem wejściowym dla układu jest czas załączenia wyświetlacza LED po wybudzeniu mikrokontrolera. Parametr ten ustawia się potencjometrem P1, włączonym do układu jako dzielnik napięcia zasilającego. Źródłem tego napięcia jest wyprowadzenie PD2 mikrokontrolera ustawione jako wyjście. Im wyższe napięcie między masą a ślizgaczem P1, tym dłużej będzie się świecił wyświetlacz (szczegóły w dalszej części artykułu).

W układzie można znaleźć trzy przyciski monostabilne, służące ustawianiu aktualnego czasu. Zastosowano rezystory podciągające (łączące zwierany styk z dodatnim potencjałem zasilania) wbudowane w mikrokontroler, które w tym układzie są całkowicie wystarczające.

Napięcie zasilające układ powinno zawierać się w przedziale 3…5 V. Jego źródłem może być zarówno bateria CR2032, na którą zostało przewidziane miejsce na płytce drukowanej, jak i zewnętrzny zasilacz lub komplet bardziej pojemnych baterii, na przykład w rozmiarze AA. W układzie zastosowano kondensatory foliowe (MKT) i tantalowe, aby zmniejszyć prąd ich upływu i jeszcze bardziej zmniejszyć natężenie pobieranego przez układ prądu. Zewnętrzny zasilacz można podłączyć do zacisków złącza J1. Pola lutownicze PAD1 i PAD2 są przewidziane na koszyk wspomnianej wcześniej baterii CR2032, o czym dalej.

Wejście wyzwalające pomiar jest odseparowane od mikrokontrolera za pośrednictwem tranzystora unipolarnego T1. Zbliżenie palca do wyprowadzenia PAD3 powoduje nagłą zmianę jego potencjału, spowodowaną chociażby wpływem zewnętrznego pola elektromagnetycznego, jak również zgromadzonymi na powierzchni naszego ciała ładunkami elektrostatycznymi. To powoduje chwilowe podniesienie potencjału bramki T1 względem potencjału jego źródła, co otwiera kanał i powoduje pojawienie się zbocza opadającego na wejściu PD3. Aby zabezpieczyć delikatną bramkę T1 przed zniszczeniem, zostały dodane diody D1 i D2, które ograniczają dopuszczalny potencjał bramki. Rezystor R3 ogranicza prąd tych diod i spowalnia przeładowywanie pojemności wejściowej układu, dając tym diodom czas na reakcję. Rezystor R2 rozładowuje pojemność bramka-źródło po zabraniu palca. Jego rezystancja powinna być możliwie wysoka, ponieważ wprowadza obciążenie naszej anteny, czyli pola lutowniczego PAD3, zmniejszając czułość układu.

Całość jest uzupełniona przez czterocyfrowy, siedmiosegmentowy wyświetlacz LED. Anody poszczególnych cyfr są załączane przez tranzystory bipolarne typu BC556, zaś katody segmentów są zasilane wprost z wyjść mikrokontrolera. Rezystory 220 Ω, ograniczające prąd segmentów, wymuszają przepływ prądu o natężeniu około 7 mA przy zasilaniu napięciem 3 V. W ten sposób świecą one dostatecznie jasno, a pobór prądu przez układ nie jest w tym czasie zbyt wysoki. Jednocześnie, jeżeli napięcie zasilające wyniesie 5 V, układowi nie grozi zniszczenie - poszczególne segmenty będą pobierały prąd o wartości dopuszczalnej zarówno przez sam mikrokontroler, jak i znajdujące się w nich diody LED.

Montaż i uruchomienie

Układ został zmontowany na jednostronnej płytce drukowanej o wymiarach 55×75 mm, której schemat został pokazany na rysunku 2. W odległości 3 mm od krawędzi płytki znalazły się cztery otwory montażowe, każdy o średnicy 3,2 mm.

Rysunek 2. Schemat płytki PCB

Montaż proponuję rozpocząć od elementów o najmniejszej wysokości obudowy, czyli rezystorów, diod i trzech zworek z cienkiego drutu. Jedna z nich znajduje się pod układem US1, zaś dwie częściowo są schowane pod wyświetlaczem LED, więc lepiej o nich nie zapomnieć. Pod mikrokontroler proponuję zastosować podstawkę, aby ułatwić jego programowanie oraz wymianę w razie uszkodzenia. Zmontowany układ można zobaczyć na fotografii tytułowej. Zamiast tranzystora BS170 (T1) można z powodzeniem użyć innego, równie popularnego tranzystora MOSFET w obudowie TO92, czyli 2N7000. Jego skrajne wyprowadzenia (bramki i drenu) są zamienione w stosunku do BS170, więc należy wlutować go w płytkę odwrotnie - wypukłą częścią obudowy w stronę płaskiego fragmentu obrysu na płytce.

Koszyk na baterię CR2032, jeżeli w danym zastosowaniu okazałby się przydatny, można wlutować od drugiej strony płytki, po zakończeniu montażu wszystkich innych podzespołów i upewnieniu się co do poprawności ich przylutowania. Służą do tego dwa pola lutownicze, oznaczone symbolami + i -, umieszczone pod układem US1. Koszyk należy włożyć w otwory w tych polach, po czym cienkim grotem, prowadzonym równolegle do powierzchni laminatu, przylutować jego wyprowadzenia do pól miedzi. Są one w pewnym oddaleniu od krawędzi koszyka, ale można to zrobić bez uszkodzenia tworzywa sztucznego. Można też zagiąć wyprowadzenia koszyka, które wystają z drugiej strony laminatu, pod podstawką dla mikrokontrolera, aby mocniej trzymał się płytki. Koszyk po przylutowaniu można zobaczyć na fotografii 1.

Fotografia 1. Szczegóły montażu koszyka na baterię CR2032

Na etapie uruchamiania jest konieczne zaprogramowanie pamięci Flash mikrokontrolera dostarczonym wsadem oraz zmiana jego bitów zabezpieczających. Oto ich nowe wartości:

Low Fuse = 0xE2
High Fuse = 0xDF

Szczegóły są widoczne na rysunku 3, który zawiera widok okna konfiguracji tych bitów w programie BitBurner. W ten sposób zostanie wyłączony dzielnik częstotliwości wbudowanego generatora sygnału zegarowego. Nie będzie załączony obwód BOD - przy zbyt niskim napięciu zasilającym układ po prostu się wyłączy, a ciągła praca tego obwodu zużywa jakże cenną w tym układzie energię.

Rysunek 3. Szczegóły ustawienia bitów zabezpieczających

Poprawnie zaprogramowany układ jest gotowy do działania po podłączeniu zasilania do zacisków złącza J1 lub włożenia baterii typu CR2032 do koszyka. Napięcie zasilające, o ile będzie pochodziło z zewnętrznego zasilacza, powinno mieścić się w granicach 3…5 V. Dolna granica wynika z konieczności zapewnienia dostatecznie wysokiego prądu dla poszczególnych segmentów wyświetlacza LED, aby te świeciły dostatecznie jasno. Górna zaś granica wynika z wytrzymałości mikrokontrolera. Minimalnym napięciem zasilającym, przy którym układ jakkolwiek działa, jest 1,8 V - wynika to z dokumentacji użytego mikrokontrolera. Działający układ można zobaczyć na fotografii 2.

Fotografia 2. Sposób wyświetlania czasu

Pobór prądu przez ten układ zmienia się i to w szerokich granicach. Przy zasilaniu napięciem 3 V możemy liczyć na pobór rzędu 1 μA w uśpieniu i około 25…30 mA po wybudzeniu. Jeżeli napięcie zasilania wzrośnie do 5 V, pobór prądu również staje się większy: około 2 μA w stanie uśpienia i 60…70 mA podczas pracy wyświetlacza.

Dokładna wartość natężenia prądu pobieranego przez układ zależy od aktualnej zawartości wyświetlacza. Z kolei w stanie uśpienia pobór prądu fluktuuje, ponieważ co 1 s mikrokontroler wybudza się i aktualizuje zawartości zmiennych przechowujących informacje o aktualnej liczbie godzin, minut i sekund.

Niemniej jednak, zakładając typową pojemność baterii CR2032 (200 mAh) o napięciu 3 V, możemy liczyć na około… 22 lata pracy w uśpieniu! To jest jednak wynik niemożliwy do uzyskania w rzeczywistości, gdyż wybudzenia będą przyspieszały wyczerpywanie się energii z ogniwa, a ponadto jego trwałość wynosi zazwyczaj kilka lat.

Jednorazowe zbliżenie palca do pola PAD3 (oraz połączonego z nim polem miedzi) powoduje wybudzenie mikrokontrolera i wyświetlenie aktualnej wartości godziny. Potem układ sprawdza, jaki czas świecenia ekranu został ustawiony i po jego upływie wraca do stanu uśpienia. Czas świecenia może wynosić od około 50 ms do około 2 s, co ustawia się potencjometrem P1.

Na płytce znajdują się trzy przyciski S1…S3, którymi można ustawić aktualny czas, ponieważ układ - po włożeniu baterii lub załączeniu zewnętrznego zasilacza - zawsze startuje od godziny 00:00. Przycisk S1 służy do inkrementacji wartości minut i godzin, a S2 do dekrementacji. Wciśnięcie i dłuższe przytrzymanie powoduje przewijanie czasu, które przyspiesza ustawianie. Warto też zaznaczyć, że ustawiana godzina przewija się w kółko, czyli odejmując minutę od godziny 00:00, uzyskamy 23:59, zaś dodając minutę do 23:59 będziemy mieli 00:00. To może znacznie uprościć ustawianie zegara np. późnym wieczorem, ponieważ nie trzeba "przewijać" kilkunastu godzin do przodu, wystarczy kilka do tyłu. Jeszcze jedna, istotna rzecz: przy każdej zmianie wartości minut zerowany jest licznik sekund.

W jaki sposób wchodzi się do trybu edycji godziny? Do tego służy przycisk S3. Zalecana kolejność działań jest następująca:

  • wciśnięcie i trzymanie S3 w stanie wciśnięcia,
  • uaktywnienie wyświetlacza poprzez zbliżenie ręki do pola dotykowego,
  • dalsze trzymanie wciśniętego S3, kiedy wyświetlacz się załączy,
  • wciskanie S1 lub S2 w celu ustawienia czasu, cały czas zwierając styki S3.

Po co taka procedura? Dla bezpieczeństwa. Gdyby nie S3, można byłoby przypadkowo zmienić ustawione wartości czasu. Nie uda się to, jeżeli trzeba trzymać wciśnięty S3. Daje to też pewien komfort regulacji, gdyż wyświetlacz będzie świecił tak długo, jak długo trzymamy wciśnięty przycisk, czas świecenia ustawiony potencjometrem P1 nie ma tutaj znaczenia.

Dokładność tego zegara jest zbliżona do podobnych tego typu konstrukcji, które zawierają zegarkowy rezonator kwarcowy. Producent tego podzespołu deklaruje tolerancję ±20 ppm, co przekłada się na dopuszczalny błąd rzędu jednej minuty w ciągu miesiąca.

Michał Kurzela, EP

Wykaz elementów:
Rezystory: (THT, 0,25 W)
  • R1, R3, R4: 220 kΩ
  • R2: 10 MΩ
  • R5…R8: 2,2 kΩ
  • R9…R17: 220 Ω
  • P1: 100 kΩ montażowy leżący
Kondensatory:
  • C1, C7: 22 μF 10 V raster 2,54 mm tantalowy
  • C2…C4: 100 nF raster 5 mm MKT
  • C5, C6: 8,2 pF ceramiczny
Półprzewodniki:
  • D1, D2: 1N4148
  • DISP1: LED-AF5643FS
  • T1: BS170 lub 2N7000 (opis w tekście)
  • T2…T5: BC556
  • US1: ATmega88PA-PU (DIP28)
Pozostałe:
  • J1: ARK2/500
  • Q1: rezonator kwarcowy THT 32,768 kHz, 12,5 pF
  • S1…S3: microswich 6×6 13,5 mm
  • Jedna podstawka DIP28 wąska
  • Koszyk baterii CR2032 THT leżący (KOSZYK BAT 6)
Artykuł ukazał się w
Elektronika Praktyczna
kwiecień 2023
DO POBRANIA
Materiały dodatkowe
Elektronika Praktyczna Plus lipiec - grudzień 2012

Elektronika Praktyczna Plus

Monograficzne wydania specjalne

Elektronik grudzień 2024

Elektronik

Magazyn elektroniki profesjonalnej

Raspberry Pi 2015

Raspberry Pi

Wykorzystaj wszystkie możliwości wyjątkowego minikomputera

Świat Radio listopad - grudzień 2024

Świat Radio

Magazyn krótkofalowców i amatorów CB

Automatyka, Podzespoły, Aplikacje listopad - grudzień 2024

Automatyka, Podzespoły, Aplikacje

Technika i rynek systemów automatyki

Elektronika Praktyczna grudzień 2024

Elektronika Praktyczna

Międzynarodowy magazyn elektroników konstruktorów

Elektronika dla Wszystkich styczeń 2025

Elektronika dla Wszystkich

Interesująca elektronika dla pasjonatów