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

Zegar na lampie IW 18

zygfryd.W 27 Gru 2012 15:16 15054 26
  • Zegar na lampie IW 18

    Nadeszła w końcu pora, aby się pochwalić własnym wykonaniem zegara.
    Zegar powstał jako prezent dla mojej dziewczyny. :)
    Sercem zegara jest układ wykonany na ATmedze 8515, znany już w sieci i kilka razy publikowany na elektrodzie. Poza programem innym niż w pierwotnej wersji (jaki jest w sieci), nie różni się niczym. No może poza paroma zmianami na płytce.
    Zamiast zewnętrznego generatora, korzystam z wewnętrznego 8MHz generatora w ATmedze. Na pierwotnym schemacie i płytce występuje błąd przy układzie PCF 8583. Kondensator zamiast do masy powinien być podpięty do plusa zasilania.
    Zamiast trymerka do dokładnego ustawiania taktowania czasu jest dany zwykły kondensator, przez to zegar ma 4s błędu na dobę, ale z braku możliwości sprawdzenia miernikiem częstotliwości i ustawienia dokładnego czasu (zawsze jakiś błąd będzie występował) zegarek raz na dobę dodaje sobie 4s extra. :)
    Tak naprawdę do oceny pozostaje tylko i wyłącznie obudowa, uprzedzam od razu i każdego pragnącego wyrazić swą jakże ważną opinię w postaci " nic odkrywczego" proszę o ugryzienie się w język, tylko niezbyt mocno, żebym potem języka nie miał na sumieniu.

    Obudowa wykonana z drewna dębowego, z jednego kawałka deski, aby słoje się zgadzały, pierwszą próbę popsułem upuszczając element w olej i musiałem robić od nowa wszystko.
    Obecnie na zdjęciu barwiona na odpowiedni kolor, jest to z tego co pamiętam sama bejca, na to w najbliższych dniach pójdzie jeszcze lakier bezbarwny.
    Jedynym minusem tej obudowy jest fakt, że w razie awarii nie ma możliwości wymiany lampy, jest zaklejona.
    W zamierzeniu miała być z tyłu w miejscu przycisków i przełącznika jasności lampy miedziana tabliczka, ale nie mogę nigdzie dostać miedzianej blaszki o odpowiedniej grubości...

    Dodam tylko, że zdjęcia nawet w 20% nie oddają rzeczywistego efektu, nie widać np. słojów, które co do milimetra zgadzają się na poszczególnych elementach.
    A na pionowych dwóch widać ciemniejsze miejsca, które w rzeczywistości są ledwo widoczne. Wina oświetlenia prawdopodobnie podczas robienia zdjęcia.

    Chciałbym również podziękować kilku forumowiczom za pomoc w odpowiedzeniu na kilka pytań związanych z programowaniem kontrolera, oraz do autora projektu elektroniki za pomoc. :)

    I pozdrawiam chłopaków z włóczykija. :D

    A teraz zdjęcia:

    Zegar na lampie IW 18 Zegar na lampie IW 18 Zegar na lampie IW 18 Zegar na lampie IW 18 Zegar na lampie IW 18
    Zegar na lampie IW 18 Zegar na lampie IW 18 Zegar na lampie IW 18

    Ps. Co do szczeliny na zdjęciu z klawiaturą, brak po prostu jednej ze śrub z tej strony. :)

    Fajne! Ranking DIY
    Potrafisz napisać podobny artykuł? Wyślij do mnie a otrzymasz kartę SD 64GB.
    O autorze
    zygfryd.W
    Poziom 20  
    Offline 
    Specjalizuje się w: elektromechanika.
    zygfryd.W napisał 403 postów o ocenie 43, pomógł 24 razy. Mieszka w mieście kraina wielkiego kornika. Jest z nami od 2012 roku.
  • PCBway
  • #2
    Użytkownik usunął konto
    Użytkownik usunął konto  
  • #3
    zygfryd.W
    Poziom 20  
    Podtrzymywanie jest oczywiste, bez tego przy zasilaniu z sieci zegar dla mnie w ogóle nie był by funkcjonalny. Szczerze powiedziawszy pomysł na zegar jako prezent wziął się z tąt że jej obecny zegar tego podtrzymywania nie ma i albo stoi nie włączony albo ze złą godziną.
    Zasilany jest z transformatora 12v, poboru prądu powiem szczerze nie sprawdzałem. 3 stopniowa przetwornica do zasilania lampy 15v 25v i 40v z tego co pamiętam, do wyboru przełącznikiem z tyłu obudowy.
    Mnie osobiście się taka obudowa umyślała już dawno temu, chciałem w tym stylu na nixe zrobić ale wpadła mi w ręce oryginalna lampa z kalkulatora elwro, jak się okazało jeden sektor słabo świecił i musiałem dać zamiennik, a szkoda bo oryginalna daje 10 razy lepszy efekt.
    Wieczorem jak nie zapomnę wstawię zdjęcie oryginalnej lampy sprzed 30l i obecnej jej wersji.

    Nazwy własne...
    3.1.13. Zabronione jest publikowanie wpisów naruszających zasady pisowni języka polskiego, niedbałych i niezrozumiałych.
    (dj-MatyAS)
  • PCBway
  • #4
    zygfryd.W
    Poziom 20  
    W pamięci jest miejsce na budzik, ba jest nawet wyprowadzenie do buzera:) ale jest to tak naprawdę zbędny bajer. Ja nigdy nie korzystam u siebie z budzika w zegarze a jedynie w telefonie, tak samo moja dziewczyna. Jedynie gdyby to zrobić na pilota, wtedy miało by to sens. Ale to już przerost formy nad treścią.
    Zamiast daty jest wstawione wyświetlanie zegara bez sekundnika, gdyby miganie co sekundę moją lube denerwowało:)


    Ja mówię o prawdziwych dziewczynach, tych normalnych te, o których ty mówisz musiałbym określić epitetem, przez który pierwszy moderator czytający posta podarował by mi na święta bana.
    Masz racje większość dziewczyn teraz taka jest ale ja z taką bym nie był i wierz mi bardziej ją ucieszy coś ode mnie, a już na pewno nie "lecie" u mnie na kase, bo jej nie mam:P
  • #5
    blue_17
    Poziom 32  
    Witam fajna konstrukcja pięknie wykonana obudowa (zwłaszcza te doszlifowane krawędzie do krągłosci) i też myślałem że to jakaś kasa na początku. ;)

    Mam tylko jedno pytanie jak może Ci się spóźniać zegarek jeśli korzystasz z zewnętrznego zegara RTC który ma kwarc 36kHz i dokładnie co co 1s generuje przerwanie na wyprowadzeniu int to jak zegar może się spóźniać ?

    Pozdrawiam
  • #6
    zygfryd.W
    Poziom 20  
    Kolego każdy zegar o którym piszesz ma opóźnienie lub przyśpieszenie ma to związek właśnie z tym kwarcem, nie ma idealnego a przynajmniej nie w takiej cenie.
    Do regulacji właśnie tego przerwania na dokładnie 1s służy trymerek który można zastąpić zwykłym kondensatorem, jak dobrze pamiętam 27p, z tym że tak naprawdę bez dobrego miernika częstotliwości można to ustawić dopiero po jakimś tygodniu, co dobę kręcąc trymerem aż będzie działać w miarę równo, lub wachlować kwarcami aż będzie dobrze.
    Błąd na tym zegarze ma charakter 4 cyfry po przecinku jak dobrze liczę (w pamięci) i bez dobrego częstotliwościomierze nic się nie zrobi jeśli się nie ma masy czasu.
  • #7
    tmf
    Moderator Mikrokontrolery Projektowanie
    Nie przesadzaj, 4s/dobę to ponad 46ppm, nawet podłe kwarce mają lepiej niż 20ppm. Zestroić to też się da, wzorce czasu są dostępne, chociażby DCF77. Swoją drogą to wrzucenie do środka DCF77 nie byłoby złym pomysłem.
  • #8
    zygfryd.W
    Poziom 20  
    Jak na mój gust równie dobrym rozwiązaniem jest dodawanie tych sekund, chociaż gdy tylko dopcham się do miernika częstotliwości mogę wstawić trymer i ustawić i ten kwarc.
  • #9
    chaka
    VIP Zasłużony dla elektroda
    Tworząc zegar na mikrokontrolerze, zaprzęgłeś tak na prawdę potwora do roboty głupiego. W dodatku roboty było by więcej, a ty dajesz mu wolne.

    Czemu nie wykorzystałeś fotorezystora do pomiaru natężenia oświetlenia i automatycznej zmiany jasności? W zasadzie wystarczyło by podpiąć go pod wolny ADC, i dopisać 2 linijki kodu. Chciałoby ci się 2 razy dziennie ustawiać jasność?

    Jako że obudowa jest integralną częścią tego urządzenia, to nie powinniśmy unikać dyskusji o niej.

    Twoja obudowa, choć wykonana dość dokładnie, jest po prostu brzydka. Wygląda jak waga sklepowa, kasa fiskalna albo żelazko na dusze. Niebiesko-zielony wyświetlacz ni jak nie pasuje do drewna a łączenia poszczególnych elementów są widoczne od czoła urządzenia co wcale nie dodaje uroku.

    Choćbym nie wiem jak się starał to nie mogę sobie wyobrazić Twojego zegara pasującego do jakiegokolwiek wnętrza.
  • #10
    zygfryd.W
    Poziom 20  
    Obudowa rzecz gustu mnie osobiście się podoba a żadnych łączeń w rzeczywistości nie widać lub widać nieznacznie. Drewno pasuje do wszystkiego i zawsze mnie się podoba, takie moje zdanie. Co do jasności, nikt nie każe zmieniać jasności ja mam ustawioną od 4 dni na 3 stopniu i nie przeszkadza w nocy w ogóle.
    Z chęcią bym zobaczył kolegi konstrukcje w drewnie, polecam w dębie.

    Ps kolejny pościk gdy pisałem mój o obudowie:P
    A w co ten wyświetlacz by koledzy upchneli? w kran jak już tu raz widziałem? Pomiędzy 2 "dechy" i przykryć pleksą? a może w plastik? lub drewnianą prostokątną obudowę z wycięciem na wyświetlacz? no nie przesadzajcie. Co jak co ale akurat ona mi się z tego wszystkiego najbardziej podoba.
  • #11
    satanistik
    Poziom 27  
    Dokładność 4s/24h dało by się zrealizować na kwarcu przy procesorze , bez konieczności stosowania innych układów.
  • #12
    movzx
    Poziom 39  
    zygfryd.W napisał:
    A w co ten wyświetlacz by koledzy upchneli? w kran jak już tu raz widziałem? Pomiędzy 2 "dechy" i przykryć pleksą? a może w plastik?
    Skoro nawet wersja "kasa fiskalna" jest jak widać do przyjęcia, to zawsze można zrobić okrągłą obudowę. Albo trójkątną.
    Narobić się to jedno (i to widać u ciebie), ale tu jeszcze przydaje się tzw. "dizajn". Ja np. nie mając do tego ręki, wolę proste sprawdzone rozwiązania.

    Można było za to włożyć więcej pracy w sterowanie - wspomniane 4s na dobę to słabiutki wynik.

    No i oczywiście zgadzam się z chaka - pojawia się ostatnio dużo projektów gdzie dość mocny mikrokontroler zajmuje się przekładaniem bajtów lub podobną mało ambitną działalnością. Dla przyzwoitości (a nawet "z rozpędu") można było dodać parę bajerów jak np. wspomniane przyciemnianie.
  • #13
    zgierzman
    Poziom 22  
    zygfryd.W napisał:
    Jak na mój gust równie dobrym rozwiązaniem jest dodawanie tych sekund, chociaż gdy tylko dopcham się do miernika częstotliwości mogę wstawić trymer i ustawić i ten kwarc.

    Pierwszym moim projektem na µC też był zegar (na nixie). I też byłem zdegustowany tym PCF-em. Nadaje się pewnie do czegoś, ale na pewno nie jest to RTC dla amatora bez dostępu do koszmarnie drogich przyrządów do strojenia.
    Eksperymentowałem z zegarami dallasa, które nie potrzebują kondensatora do strojenia, ale na koniec zostałem z tym: Link.
    Nie wyświetlam sekund, więc odchyłkę we wskazaniach zauważyłem dopiero po dwóch czy trzech latach (rozjechało się o ok. minutę).
    Układ drogi, ale przy produkcji jednostkowej DIY jak znalazł. A zegarek można zastosować taki jaki się lubi czy ma - także tego PCF-a.
    Co więcej, możesz wywalić kwarc i na pajączka podpiąć DS32kHz - zapomnisz o niedokładnościach ;-)
  • #14
    movzx
    Poziom 39  
    Jak ktoś ma parę złotych (i dobrze poszuka) to może wstawić stare dobre DS12887 - po wymianie baterii odpada problem podtrzymania wskazań, a cała reszta też robi się sama.
  • #15
    tmf
    Moderator Mikrokontrolery Projektowanie
    zgierzman napisał:
    zygfryd.W napisał:
    Jak na mój gust równie dobrym rozwiązaniem jest dodawanie tych sekund, chociaż gdy tylko dopcham się do miernika częstotliwości mogę wstawić trymer i ustawić i ten kwarc.

    Pierwszym moim projektem na µC też był zegar (na nixie). I też byłem zdegustowany tym PCF-em. Nadaje się pewnie do czegoś, ale na pewno nie jest to RTC dla amatora bez dostępu do koszmarnie drogich przyrządów do strojenia.


    Nie wiem co się tak przyczepiłeś do koszmarnie drogich urządzeń do strojenia. Pomijając, że pewnie można pójść na jakąś politechnikę i skorzystać z miernika, to przecież wzorce czasu są. Wspominałem o DCF77, odbiornik to kilkanaście złotych, sygnał stabilizowany zegarem atomowym, jedyne odchyłki to jitter. Inna możliwość to np. odbiornik GPS, zwykle mają wyprowadzony sygnał 1 Hz, też stabilizowany zegarem atomowym. Generatory stabilizowane temperaturowo jakby się uprzeć też są dostępne. Można zestroić też wykorzystując radio, można wykorzystać komputer i czas z Internetu, z pewnością zjedziesz do <kilkunastu ms/d.
    Nie czepiam się estetyki bo to rzecz gustu. Projekt z pewnością udany bo działa tak jak to założyłeś. Ale koledzy też słusznie wskazują na możliwość ulepszeń. Jak już masz MCU to trzeba z niego korzystać. Oprócz dimmera, jak bym wykorzystał MCU z RTC, po co pakować zewnętrzny, to dodatkowy koszt i robota.
  • #16
    zgierzman
    Poziom 22  
    tmf napisał:
    Nie wiem co się tak przyczepiłeś do koszmarnie drogich urządzeń do strojenia.(...)

    Przyczepiłem się, bo są drogie i niewiele osób ma do nich dostęp. A pisząc "strojenie" mam na myśli regulację częstotliwości wewnętrznego rezonatora, a nie raz w tygodniu ustawianie wskazań zgodnie z sygnałem z Wieży Mariackiej.
    Nawet najlepiej stabilizowany wzorcowy sygnał 1 Hz nie pozwoli zestroić zegara, bo nadal musisz mieć czym zmierzyć różnicę pomiędzy sygnałem wzorcowym a Twoim. Albo czekać na tyle długo, żeby ta różnica stała się widoczna "gołym okiem". A takie strojenie na oko może potrwać tygodniami/miesiącami.
    Wkładanie zaś takiego wzorca do zegarka to chyba przesada.
    DCF jest ok, ale nie zawsze działa (np. u mnie w domu nie w każdym pomieszczeniu), więc musisz uważać gdzie będziesz taki zegar umieszczał.
    GPS można by pewnie zastosować tylko do zegarów zewnętrznych (nie działa w pomieszczeniach zamkniętych) a o użyciu go jako wzorca pisałem już wyżej - musisz mieć dokładny sprzęt pomiarowy.
    Czas z internetu - super, ale musisz mieć w zegarku kartę sieciową (najlepiej WiFi, żeby się z kablami nie plątać). Albo znów strojenie na oko.
    Generator stabilizowany temperaturowo (jak ten DS32kHz), to moim zdaniem jedyna droga. Lutujesz układ, zamykasz obudowę, ustawiasz zegarek i na lata zapominasz o ponownym jego ustawianiu.
  • #17
    tmf
    Moderator Mikrokontrolery Projektowanie
    Chyba kolego nie zrozumiałeś tego co napisałem. DCF77/GPS/komputer można właśnie wykorzystać do zestrojenia, co nie znaczy, że zegar musi mieć kartę sieciową czy GPSa. Jaki miernik do tego potrzebujesz? Masz f wzorcowe 1 Hz z GPSa, podajesz na wejście OCR timera taktowanego ze strojonego przebiegu (czyli twój MCU sterujący zegarem taktowany np. 16 MHz.). Kręcisz tak długo aż timer wskaże 16000000, ot cała filozofia, po czym odłączasz wyjście GPSa i to wszystko. Przy tak prostym strojeniu masz 0,06ppm odchyłki, w praktyce sprowadzasz odchyłkę do parametrów granicznych użytego kwarcu. Oczywiście to pewne uproszczenie, ale jak widać żaden drogi sprzęt potrzebny nie jest.
    Albo bieżesz nowocześniejszy AVR i zamiast stroić kwarc stroisz licznik RTC - wychodzi na 1 s np. 29000 Hz to tyle wpisujesz do rejestru przepełnienia licznika i już masz 1 Hz.
    A wbudowując w to DCF77 zegar wcale nie musi mieć ciągle sygnału stacji. Wystarczy, że ma go okresowo - wtedy się synchronizuje i przy okazji może wprowadzić poprawki w strojeniu własnego zegara, który dostarcza wzorcową częstotliwość kiedy sygnał z DCF77 jest niedostępny.
  • #18
    zgierzman
    Poziom 22  
    tmf napisał:
    Masz f wzorcowe 1 Hz z GPSa, podajesz na wejście OCR timera taktowanego ze strojonego przebiegu

    A widzisz, i tu mnie masz. Rzeczywiście nie zrozumiałem Twojego posta.
    Zrobiłem tylko jeden zegarek, a wtedy nie wpadłem na to rozwiązanie.
    Jest proste, ale nie załatwia problemu kompensacji temperaturowej. W domu ma się mniej więcej stałą temperaturę, trzeba tylko pamiętać o strojeniu przy zamkniętej obudowie. Ale już na zewnątrz, czy do auta nie bardzo, bo wahania temperatury od -20°C do +50°C w zamkniętej obudowie wystawionej na słońce, czy zaparkowanym samochodzie.
    Ja po prostu nie chcę się zastanawiać nad dokładnością ani bawić w trymerki.
    A do jednego układu wepchnąłem nawet moduł GSM/GPRS, bo i tak potrzebowałem dostępu do netu. ;-)
  • #19
    zygfryd.W
    Poziom 20  
    Co do zegara, mam układ ze starej płyty głównej z własnym podtrzymywaniem, jak tylko znajde chwile nie widzę problemu wstawić go zamiast PCF-a
  • #20
    ja.czekanski
    Poziom 12  
    Ja w swoim zegarku użyłem MCP79411 od Microchipa. Gdy podłączyłem sam kwarc bez kondensatorów, zegar potrafił gubić kilka sekund na godzinę.
    Kwarc 32KHz stabilizowany dwoma kondensatorami 22pF i czas trzymał idealnie, nawet po odłączeniu zasilania na kilka dni. Układ umożliwia dodatkowo kalibrację.
    Scalak obsługiwany przez i2c, posiada SRAM i EEPROM oraz wyjście na przerwanie (alarm) lub sygnał zegarowy.
  • #21
    tmf
    Moderator Mikrokontrolery Projektowanie
    Pytanie tylko po co stosować takie dziwactwa, skoro większość AVRów ma reat-time counter (podobine jak inne MCU), w połączeniu z time.h daje to kompletny układ zegarowy.
  • #22
    ja.czekanski
    Poziom 12  
    tmf napisał:
    Pytanie tylko po co stosować takie dziwactwa, skoro większość AVRów ma reat-time counter (podobine jak inne MCU), w połączeniu z time.h daje to kompletny układ zegarowy.

    Bateryjne podtrzymywanie czasu.
  • #23
    zygfryd.W
    Poziom 20  
    Oj ludzie przez was w kompleksy wpadnę, ale zmobilizowaliście mnie i ustawiam dokładność tego zegarka, już złapałem mniejsze spóźnienie bo 2s ale zanim ustawie idealnie to jeszcze że 3 dni miną bez miernika częstotliwości.
  • #24
    tmf
    Moderator Mikrokontrolery Projektowanie
    kubx napisał:
    tmf napisał:
    Pytanie tylko po co stosować takie dziwactwa, skoro większość AVRów ma reat-time counter (podobine jak inne MCU), w połączeniu z time.h daje to kompletny układ zegarowy.

    Bateryjne podtrzymywanie czasu.


    A MCU nie może mieć podtrzymania? Od tego są tryby uśpienia, pomijam już, że niektóre mają autonomiczny układ podtrzymania.
  • #25
    ja.czekanski
    Poziom 12  
    tmf napisał:
    kubx napisał:
    tmf napisał:
    Pytanie tylko po co stosować takie dziwactwa, skoro większość AVRów ma reat-time counter (podobine jak inne MCU), w połączeniu z time.h daje to kompletny układ zegarowy.

    Bateryjne podtrzymywanie czasu.


    A MCU nie może mieć podtrzymania? Od tego są tryby suśpienia, pomijam już, że niektóre mają autonomiczny układ podtrzymania.

    Oczywiście, że może, jednakże taki układ daje już gotowe rozwiązanie pobierające mniej niż 1µA na bateryjce. W przypadku AVR można rozwiązać problem jak napisałeś wcześniej. Nie wiem jak to wygląda dla innych mikrokontrolerów jak STM32, które mają dedykowane wejście na zasilanie bateryjne.
  • #26
    tmf
    Moderator Mikrokontrolery Projektowanie
    Wygląda dokłądnie tak samo jak dla zewnętrznego RTC - znika zasilanie procka, ale RTC pracuje w oddzielnej domenie napięciowej i ciągle działa. Wraca zasilanie procka - licznik RTC zawiera prawidłowo zliczany czas. Dla AVR bez podtrzymania (a niektóre mają) implementacja tego samego wymaga diody, wolnego pinu IO i 2 instrukcji :)
    Oczywiście czepiam się, ale jaki jest sens ładować procesor, który jest w takiej aplikacji obciążony w 0,1%, a jakieś 60% pamięci leży odłogiem i do tego dodajemy zewnętrzne układy RTC. Żeby nudził się jeszcze bardziej?:) Swoją droga to dobrze napisane funkcje obsługi I2C zajmują więcej pamięci niż programowa implementacja funkcjonalności takiego PCFa.
  • #27
    elektryku5
    Poziom 38  
    Mój zegarek opiera się na procesorku Attiny2313 (i wyświetlaczach 7seg.), w zupełności wystarcza on do tego co robi, do wejścia przerwania wpiąłem kolektor NPN, emiter do masy, a do bazy opornik, do opornika dioda i wyjście z generatora od zegarka, masy połączone ze sobą.

    Cała sytuacja wygląda tak, że co 2s dostaję sygnał na nogę przerwania i idzie to dość dokładnie (oczywiście w programie dodają się 2s co jedno przerwanie).

    Tak to mniej więcej wygląda, tylko że jest jedna dioda (i dlatego co 2s).
    http://www.seekic.com/uploadfile/ic-circuit/201292442139420.jpg

    Taka mała porada gdyby ktoś chciał mieć w miarę dokładny zegarek tanim kosztem. (Dokładnie nie wiem, ale gdybym miał od razu kupić części to 20zł pewnie by starczyło.)