Elektroda.pl
Elektroda.pl
X
Mitronik
Proszę, dodaj wyjątek www.elektroda.pl do Adblock.
Dzięki temu, że oglądasz reklamy, wspierasz portal i użytkowników.

Prosty zegar na dużych wyświetlaczach led

11111olo 30 Wrz 2015 09:41 7134 13
  • Witam

    Prosty zegar na dużych wyświetlaczach led

    Przedstawiony zegar nie jest niczym szczególnym i powstał z potrzeby ponad 6 lat temu. Choć nie jest to konstrukcja w pełni zasługująca na miano udanej jestem z niej zadowolony bo wciąż działa.
    Moja mama która najmłodsza już nie jest potrzebowała jakiś zegar. Chciała coś kupić jednak ciężko było znaleźć zegar inny niż LCD – te nawet podświetlane są w nocy niezbyt czytelne, zwłaszcza z większej odległości – a z wyświetlaczami LED były same radio budziki.
    Postanowiłem temu zaradzić i wykonałem zegar który jest na wyświetlaczach LED i to całkiem dużych, aby był czytelny nawet z kilku metrów oraz co najważniejsze w nocy. Dodałem także akumulator który zapobiega kasowaniu zegara po braku zasilania z sieci. No tak! Z sieci. Wyświetlacze LED zasilane z baterii doprowadziły by do bankructwa. Dodałem także programową korekcję czasu aby zegar odmierzał czas z jak najmniejsza odchyłką.

    W załączniku jest schemat który podzieliłem na cztery części, w celu łatwiejszego omówienia.

    PŁYTKA ZASILACZA
    Postanowiłem wewnątrz obudowy umieścić mały transformator sieciowy. Wybór padł na TS2/15. Do skrajnych pinów złącza ARK3 podłączone jest zasilanie 230V~ które łączy z transformatorem bezpiecznik 100mA. Po pierwotnej stronie jest mostek prostowniczy. Użyłem smd ponieważ wtedy taki miałem pod ręką. Dalej są dwa kondensatory filtrujące i stabilizator 7805, na wyjściu którego uzyskujemy stabilizowane napięcie +5V a właściwie nieco większe. Dziwić może dioda podłączona między masę a środkową nogę stabilizatora. Zastosowałem ją aby podnieść napięcie wyjściowe o spadek napięcia na diodzie. Napięcie stabilizowane filtrują dwa kondensatory. Dalej napięcie za pomocą diod jest rozdzielone na mikrokontroler – pin1 – oraz wyświetlacz pin3. Z pinu nr3 także pobierane jest napięcie dla podłączonego programatora. Pin nr4 jest bezpośrednio podłączony do mikrokontrolera – pin PD0 – i służy detekcji braku zasilania sieciowego. Współpracujący rezystor 1k ściąga potencjał do masy. Na płytce zasilacza znajduje się także akumulatorek 3,6V 60mA który ładowany jest przez rezystor 100R a po zaniku zasilania zasila jedynie mikrokontroler.

    PŁYTKA MIKROKONTORLERA
    Zastosowałem Attiny 2313 w wersji do montażu powierzchniowego, tak jak i większość części na tej płytce. Zajmuje się on obsługą wyświetlaczy, dwóch przycisków oraz sprawdzaniem czy jest obecne napięcie sieciowe. Rezonator kwarcowy 8MHz wraz z dwoma kondensatorami 22p służy do precyzyjnego odmierzania czasu (o tym dalej). Dwa kondensatory 47uF i 100nF filtrują zasilanie. Cały port B mikrokontrolera służy do obsługi wyświetlaczy LED. Osiem rezystorów 100R ustala jasność wyświetlacza. Należy pamiętać że wybrana wartość jest cztery razy mniejsza niż wyliczona ze znanego wzoru na prawo Ohma, z powodu ich multipleksowania. Cztery tranzystory wraz z rezystorami 1k, podłączonymi do portu D sterują każdym z wyświetlaczy.





    PŁYTKA WYŚWIETLACZA
    Zastosowałem 4 wyświetlacze ze wspólną anodą. Mają one wysokość 1 cala aby były dobrze widoczne z większej odległości. Poza nimi znajdują się cztery diody LED. Dwie z nich służą do migania co sekundę (dwukropek) i dwie służące do sygnalizacji… Teraz nie pamiętam czego, najprawdopodobniej trybu pomiaru temperatury i czegoś jeszcze. Ostatecznie ich nie montowałem.
    Na schemacie nie uwzględniłem gniazda programowania które jest zgodne ze standardem Kanda.

    PŁYTKA PRZYCISKÓW

    W zamierzeniu miały być cztery przyciski. Ostatecznie zostały dwa skrajne.

    OPROGRAMOWANIE
    Całość napisałem w Bascomie. Sam kod nie jest skomplikowany i działając w nieskończonej pętli sprawdza stan przycisków, stanu zasilania sieci, dodawania czasu oraz wyświetlania aktualnego na wyświetlaczu. Oprócz zliczania godzin, minut i sekund, wykorzystany jest licznik do 200, który po przepełnieniu dodaje 1 sekundę. Przyjąłem przerwanie z TIMER1 co 1/200s. Także co jedno takie przerwanie zmieniany jest wyświetlacz LED na kolejny. Daje to odświeżanie 50Hz dzięki czemu nie widać migotania. Wspominałem także o programowej korekcji czasu. Polega ona na jednokrotnym dodaniu lub odjęciu wyliczonej ilości przerwań. Zdecydowałem się aby to następowało o północy. Z pomiarów wyszło że zegar dziennie się śpieszył około 3s. Niby to niewiele ale po miesiącu zmiana czasu wynosiła 1,5 minuty. Po korekcji zmiana czasu jest niewielka i wynosi góra kilka sekund na miesiąc.

    ZMIANY
    Jak wspomniałem nie jest to konstrukcja w pełni zasługująca na odwzorowanie. Po tylu latach dziwię się czemu w zasilaczu po stronie wyjściowej stabilizatora dałem kondensator o przesadzonej wartości 3300uF. Wystarczy tam 10-47uF. Również pomysł z akumulatorem i odmierzaniem czasu przez mikrokontroler podczas braku zasilania z sieci zastąpił bym jakimś RTC, np. PCF8583 i baterią litową.
    Jestem przekonany że spostrzeżecie że ścieżki nie są zabezpieczone przed utlenianiem. Zrobiłem to aby sprawdzić na ile są prawdziwe opowieści o szkodliwości ich niezabezpieczenia. Jak widać nie ma to wpływu na działanie. Mały rezystor 47R w pobliżu trzeciego wyświetlacza został przylutowany po jej przecięciu. Służy od do obniżenia jasności kropki która ostatecznie nie jest wykorzystana.

    URUCHOMIENIE
    Montaż czterech płytek jest typowy. Należy zacząć od najmniejszych elementów a zakończyć na największych. Płytka zasilacza i mikrokontrolera jest połączona taśmą z czterema przewodami. Przyciski są połączone taśmą pięcioprzewodową, przy czym wykorzystałem tylko trzy. Płytka wyświetlacza jest połączona z płytką mikrokontrolera za pomocą kontowej listwy goldpin.
    Aby zegar ruszył należy zaprogramować mikrokontroler. Aby to zrobić poza jego podłączeniem należy włączyć zasilanie zegara i nie podłączać zasilania z programatora! Trzeba także zmienić fusebits na zewnętrzny rezonator.
    Na płytce wyświetlacza diody od kropek należy połączyć od strony ścieżek.
    Jak wszystko będzie dobrze zrobione po zaprogramowaniu na wyświetlaczu zobaczysz przesuwający się napis HELLO. Po nim zaczną migać wszystkie cyfry co oznacza że należy ustawić czas. Dwa przyciski służą do ustawiania godzin i minut. Naciśnięcie przycisku minut poza dodaniem zeruje także licznik sekund i przerwań. Dodanie godzin nie zmienia stanu sekund ani przerwań więc podczas zmiany czasu wystarczy skorygować samą godzinę.

    Prosty zegar na dużych wyświetlaczach led Prosty zegar na dużych wyświetlaczach led Prosty zegar na dużych wyświetlaczach led Prosty zegar na dużych wyświetlaczach led Prosty zegar na dużych wyświetlaczach led Prosty zegar na dużych wyświetlaczach led Prosty zegar na dużych wyświetlaczach led Prosty zegar na dużych wyświetlaczach led


    Fajne! Ranking DIY
    Potrafisz napisać podobny artykuł? Wyślij do mnie a otrzymasz kartę SD 64GB.
  • Mitronik
  • #2 30 Wrz 2015 12:59
    endymion
    Poziom 13  

    Bardzo dokładnie opisałeś ten zegarek, miło się czyta, mam jednak kilka pytań:
    1. Czy nie zdarza się np. przy sprzątaniu, że niechcący ktoś przestawi godzinę (z opisu wynika ze nie trzeba wcisnąć żadnego dodatkowego przycisku do ustawiania czasu) ?
    2. Czy na wyświetlacz jest nałożony czerwony filtr czy tylko ta przeźroczysta szybka, jeśli tak to co z czytelnością ?
    3. Czy wyświetlacz jest jakoś mocowany do obudowy czy tylko tak wisi na goldpinach ?

  • Mitronik
  • #3 30 Wrz 2015 13:56
    11111olo
    Poziom 43  

    1. Przy przecieraniu z kurzu nie zdarzają się sytuacje przestawienia zegara. Przyciski są dość długie co nie sprzyja przypadkowemu wciskaniu.
    2. Na zdjęciach widać że jest bezbarwny filtr. Pierwotnie miał być czerwony ale coś pomylili w zamówieniu, a mi się nie chciało tego odsyłać. Z czytelnością czy to w dzień czy w nocy nie ma problemu.
    3.Wyświetlacz "wisi" na goldpinach. Płytka z mikrokontrolerem jest przymocowana na dwóch śrubach.

    Starałem się dokładnie opisać i zapomniałem o mocowaniu płytek. Są one przykręcone do plastikowych dystansów które są przyklejone do obudowy klejem na gorąco.

  • #4 30 Wrz 2015 14:27
    r3w4rd
    Poziom 15  

    Mogłeś poświęcić odrobinę więcej czasu nad rozmieszczeniem elementów zasilacza. Ten kondensator brzydko wygląda "zza" płytki.
    Ogólnie projekt fajny.

  • #6 30 Wrz 2015 18:14
    kombo
    Poziom 12  

    Ten klej na gorąco razi mnie w oczy, i co się wylało na płytkę ?

  • #7 30 Wrz 2015 18:16
    11111olo
    Poziom 43  

    Jak razi to nie patrz :D
    Nie pamiętam co ale wygląda na kalafonię. Konstrukcja ma kilka lat i niestety nie pamiętam jak dokładnie to składałem.
    Klej na gorąco ma tą zaletę że nie musiałem wiercić w obudowie.

  • #8 30 Wrz 2015 20:10
    didi71
    Poziom 15  

    A czy jest możliwość "dorobienie" do tego zegarka wyświetlania sekund? Jeżeli tak to może jakaś mała podpowiedź. Ładna konstrukcja - pozdrawiam.

  • #10 03 Paź 2015 15:37
    didi71
    Poziom 15  

    Dziękuję za podpowiedź. Z elektryką to sobie jakoś poradzę ale z kodem będzie mały problem. Może by tak szanowny Kolega podrzucił gotowca, taka prośba by była :)

  • #12 03 Paź 2015 18:05
    eurotips
    Poziom 35  

    Albo są różne wersje tych TS2/15 albo przesadziłeś z tym napięciem elki za mostkiem, zobacz jakie tam masz napięcie w czasie wyświetlania samych jedynek, u mnie takie trafo daje DC27V na wyjściu po wyprostowaniu za mostkiem i musiałem dać LM317 bo 7805 maksymalnie do 24V katalogowo.

  • #13 03 Paź 2015 18:10
    11111olo
    Poziom 43  

    TS2/15 daje około 10VAC a po wyprostowaniu to będzie około 14V. Jak by było więcej to dawno by poleciał kondensator 2200uF/16V. 2V zapasu nie uważam za przesadę.
    Stabilizator jest bez radiatora i w czasie pracy jest wyczuwalnie ciepły (nie parzy).

  • #14 16 Paź 2015 14:23
    miko-rot
    Poziom 1  

    sugeruję zrobić segmenty wyświetlacza z pasków diod led można wówczas zwiększyć wielkość wyświetlacza.