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

Oszczedna wersja zegara Nixie na PIC16F84 by pimap

pimap 10 Paź 2011 23:00 10575 14
  • Oszczedna wersja zegara Nixie na PIC16F84 by pimap

    Witam!
    Niedawno dokończyłem budowę swojego zegara Nixie, będącego lekko przerobioną wersją projektu bruno4, znalezionego na stronie Gonzy:
    http://www.gregorkarnas.com/radio/projekt/nixieclock/index.htm
    http://www.gonza.tsi.net.pl/nixieclock.htm
    Zegar pozostał w pewnym sensie "oszczędny", ale wszystko co się dało to w nim zamontowałem. Postaram się tutaj wszystko ładnie opisać :)

    A więc po kolei:
    1. Całą "zabawę" rozpocząłem od sprawdzenia dostępności elementów w lokalnych sklepach elektronicznych (Elga i Altron w Lublinie). Dostałem tam wszystko oprócz lamp i układu 74141.
    2. Sprawdziłem na Allegro dostępność lamp i sterownika 74141 - o ile z tymi pierwszymi nie było problemu, o tyle sterownika nie znalazłem. Szukając w zakończonych aukcjach zauważyłem, że pewien użytkownik regularnie wystawia po kilka sztuk, więc założyłem, że za jakiś czas uda mi się dostać ten układ.
    3. Zakupiłem lampy LC-513A wraz z podstawkami - niestety ich ceny ostatnimi czasy poszły znacząco w górę, przez co zapłaciłem za to wszystko około 90 zł.
    4. Zająłem się programatorem układu PIC16F84A - wybór padł na programator JDM z projektu:
    http://hobby-elektronika.eu/programator.html
    Płytkę wykonałem metodą termotransferu, po uprzednim przerobieniu schematu montażowego w linuxowym odpowiedniku Painta ;) Do tej pory mozaikę ścieżek przenosiłem wkładając płytkę i wydruk na folii między dwie metalowe płytki skręcone śrubami, które szły do elektrycznego piekarnika z ustawianą temperaturą. Metoda ta dawała mi różne wyniki, ale ta płytka wyszła niemal idealnie.
    5. W międzyczasie nie zawiodłem się na sprzedawcy z Allegro - 74141 pojawiły się po 6,50 zł za sztukę, zakupiłem kilka na zapas - spodziewam się, że to dopiero początek mojej przygody z Nixie i ogólnie z lampami :)
    6. Zabrałem się za przerabianie płytki lamp, niestety znów w KolourPaintcie. Wyrzuciłem podstawki na lampy zastępując je 12to pinowymi złączami goldpin. To samo zrobiłem z miejscem na neonówkę, dodatkowo przenosząc rezystor w miejsce jednego mostka.
    7. Ponieważ płytki do zegara nie mieściły się w moją "prasę", wypróbowałem metodę żelazkową. Trochę przesadziłem z temperaturą, przez co płytki nie przeniosły się idealnie, ale nie było źle - musiałem poprawić markerem około 2-3 miejsca. Ale do metody piekarnikowej już nie wrócę ;)
    8. Nadszedł czas na wytrawianie i wlutowywanie elementów. W celu uproszczenia sobie roboty, na główną płytkę nakleiłem wydruk schematu montażowego.
    9. Podłączyłem napięcie 9V - przetwornica ruszyła bez najmniejszych problemów, na pinach HV miałem 250V. Przykręciłem napięcie do 135V.
    10. Programowanie mikrokontrolera - tutaj zaczęły się schody. W żaden sposób nie mogłem zmusić programatora do jakiejkolwiek reakcji, chociażby zapalenia się zielonej diody wskazującej zasilanie 5V. W końcu znalazłem zwarcie między pinami podstawki. Niestety, problemy się ode mnie nie odczepiły. Próbowałem programować z dwóch starych laptopów z portem RS232 w replikatorze portów (win XP i 98), cały czas otrzymywałem błędy. Ostatecznie programowanie ruszyło z komputera stacjonarnego (win 7).
    11. Zrobiłem 1 kabelek łączący podstawkę do lamy z płytką. Włożyłem PICa, podłączyłem jedną lampę, neonówkę, zasilanie - neonówka zaczęła się żarzyć, a lampa patrzyła na mnie smutną czernią. Próbowałem sprawdzić lampę bezpośrednio z przetwornicy. Z posiadanych rezystorów udało mi się uzyskać wypadkowo mniej więcej 66 kOm, czyli trochę za dużo. Mimo wszystko podłączyłem lampę i nic. Wziąłem inną - zaświeciła słabo, połową cyfry (spodziewam się, że to przez zbyt duży opornik). Wziąłem kolejną i... znów nic. Po próbach na kilku pinach któraś cyfra mi zamigała i w końcu się zapaliła. Potem reszta też zaczęła działać. To samo było z kolejną lampą. Dlaczego miały one taki opóźniony zapłon - tego nie wiem do tej pory :)
    12. Przygotowałem pozostałe trzy podstawki i przykręciłem je prowizorycznie do kawałka plastiku. Okazało się, że lampa, którą wcześniej uznałem za uszkodzoną, po kilku kliknięciach guzika do zmiany godziny (a zatem i wyświetlanej cyfry) zaczęła świecić. Po podkręceniu napięcia przetwornicy na 145V reagowała już szybciej, chociaż po dłuższej przerwie od pracy potrafiła przez kilka sekund nie wyświetlać nic. Po kilkudziesięciogodzinnej pracy te objawy znikły.
    13. Pomierzyłem urządzenie i zaprojektowałem obudowę. Deski zamówiłem jak zawsze w OBI. Wybrałem płytę MDF o grubości 12 mm (teraz stwierdzam, że 8 mm spokojnie by wystarczyło). Stwierdziłem, że lampy, neonówkę i guziki przykręcę od środka (lampy w podstawkach, reszta na kawałkach laminatu). Gniazdo zasilania miałem wkręcane od zewnątrz. Do elektroniki chciałem mieć dostęp, zatem dolnej ścianki obudowy nie przyklejałem na wikol. Wsunąłem ją nieco wgłąb urządzenia, w którego środku (w rogach) przykleiłem drewniane klocki z nawierconymi otworami. Spód można dzięki temu w każdej chwili odkręcić.
    14. Podobne klocki jak do podtrzymywania dolnej ścianki użyłem do skręcenia płytek. Skręciłem tylko 2 rogi, przeciwna krawędź trzymała się wystarczająco na samych goldpinach. Płytki przykręciłem za pomocą kątowników do odkręcanego segmentu obudowy. Całość obudowy okleiłem okleiną.
    15. Okazało się, że lampy jednak posiadają kropkę, która świeci się zawsze. Niezbyt mi się to podobało, dlatego wysunąłem kabelki od kropek z gniazd goldpin na kablach idących od podstawek.
    16. Wykonując obudowę zauważyłem, że zegar ma spore problemy z dokładnością - późnił się około 10 sekund na dobę. Zgodnie z zaleceniami w tym temacie, zająłem się kondensatorami przy kwarcu. Bezskutecznie. Ostatecznie postanowiłem zajść problem od strony programowej, do kondensatorów dolutowałem jedynie 2 kolejne, 2 pF każdy (wg. miernika pojemności moje 33p miały 31p).
    17. Tutaj kolejne schody. Dorwałem źródła programu, jednak moja wiedza na temat asemblera była prawie zerowa... Miałem 2 opcje: poczekać pół roku, aż ten język będę miał wyłożony na studiach, albo wykorzystując metodę prób i błędów postarać się opanować go we własnym zakresie. Dla chcącego nic trudnego, więc oczywiście wybrałem drugą opcję :) Bardzo szybko znalazłem deklarację cyfr wyświetlanych na lampach, poprawiłem je pod swój zegar. Następnie, po kilkunastu godzinach myślenia nad istniejącym kodem, szukania poleceń w Internecie, około 20 lub 30 próbach, udało mi się osiągnąć swój cel :) O każdej godzinie kończącej się na 1, 3, 5 lub 8 (w sumie jest tych godzin 10), w 59 minucie urządzenie dolicza jedną dodatkową sekundę. 59 minutę wybrałem po to, aby czas nie zmieniał się podczas ustawiania czasu. Nie powinno być z tym problemów, chociaż zauważyłem, że teraz da się zegar zawiesić na około 3-4 minuty. Aby to osiągnąć, należy wyjść poza zakres sekund, tzn. suma sekund dodanych i pozostałych do następnej minuty (bez uwzględniania tych świeżo dodanych) nie może przekraczać 60 (np. można dodać 10 sekund w czasie 49 sekund, ale nie można dodać 5 po upływie 56). Na zaistnienie takiej sytuacji jest jednak mała szansa, zazwyczaj wymagałoby to "przekręcenia" całej doby na 59 minucie kilka razy.
    18. Skoro już jako tako znałem asemblera, postanowiłem nie pozostawić miejsca na trzeci guzik niewykorzystanego. Nie chciałem znów modyfikować obudowy, więc zamiast guzika dałem kawałek drutu, który trzeba przywrzeć do odpowiedniej ścieżki. W programie wpisałem, że po wciśnięciu tego guzika ma się zerować licznik sekund. Ta modyfikacja jest raczej przyszłościowa, do kolejnych zegarów, ja użyłem jej tylko do pierwszego ustawienia czasu (patrząc na sekundnik zegara na komputerze, zwarłem drut w momencie, gdy zobaczyłem "00"). Dołączyłem baterię 3,6V (uniwersalna do telefonów bezprzewodowych, 35 zł).
    19. Skręciłem obudowę i zacząłem cieszyć się ze swojej konstrukcji :)

    Cena wszystkich materiałów, łącznie z baterią i zasilaczem to około 250 zł. Aż tyle głównie ze względu na wysokie ceny lamp, ale i inne elementy w Lublinie tanie nie są...

    Co dalej, czyli moja własna ocena:
    1. Na zdjęciach widocznych jest kilka wad wizualnych. Okazało się, że lampy i podstawki minimalnie się różnią, przez co niestety tylko jedna lampa ustawiona jest równo, pozostałe 3 są lekko przekrzywione. Następnym razem będę miał to na uwadze.
    2. Wg. mnie zegar wyszedł nieco "wołowaty", ładniej by wyglądał na płasko. Jeżeli przyjdzie mi robić kolejny w tym stylu, płytki w środku ułożę w poziomie, zwiększając głębokość urządzenia, ale zmniejszając jego wysokość.
    3. Nie do końca podobają mi się łączenia okleiny na krawędziach - chciałem nakleić tam kątowniki w stylu starego złota, ale nie wiem gdzie takie dostać... Jak mi się uda to jeszcze je dodam :) Podobnie z napisem, zastanawiam się nad złotymi literami "Nixie Clock", ewentualnie z numerkiem - który to już będzie w tym temacie? :)
    4. Następnym razem albo dam krótsze guziki i będę je wciskał np. długopisem, albo umieszczę je na dole. Zdarzyło mi się kilka razy przez przypadek wcisnąć któryś z nich.

    W wolnej chwili zmodyfikuję jeszcze schematy montażowe i postaram się je tutaj umieścić. Dorzucę też zmodyfikowane wzory płytek i wsad do PICa, razem z kodem programu.

    Już teraz załączam zdjęcia i czekam na Wasze opinie :)

    Oszczedna wersja zegara Nixie na PIC16F84 by pimap Oszczedna wersja zegara Nixie na PIC16F84 by pimap Oszczedna wersja zegara Nixie na PIC16F84 by pimap Oszczedna wersja zegara Nixie na PIC16F84 by pimap Oszczedna wersja zegara Nixie na PIC16F84 by pimap Oszczedna wersja zegara Nixie na PIC16F84 by pimap Oszczedna wersja zegara Nixie na PIC16F84 by pimap Oszczedna wersja zegara Nixie na PIC16F84 by pimap Oszczedna wersja zegara Nixie na PIC16F84 by pimap Oszczedna wersja zegara Nixie na PIC16F84 by pimap Oszczedna wersja zegara Nixie na PIC16F84 by pimap Oszczedna wersja zegara Nixie na PIC16F84 by pimap


    Wydzielono z https://www.elektroda.pl/rtvforum/topic703397.html

    Fajne! Ranking DIY
    Potrafisz napisać podobny artykuł? Wyślij do mnie a otrzymasz kartę SD 64GB.
    O autorze
    pimap
    Poziom 9  
    Offline 
    pimap napisał 6 postów o ocenie 51, pomógł 0 razy. Mieszka w mieście Lublin. Jest z nami od 2009 roku.
  • #2
    tangofox
    Poziom 14  
    Witam.
    Małe pytanie : W czym programowałeś PIC'a ?
  • #4
    Svavo
    Poziom 23  
    michal1997 napisał:
    Z wyglądu ładnie tylko ta okleina źle położona

    A mnie rażą "powygryzane" otwory w przednim panelu...
    Pozdro.
  • #5
    lukas1121
    Poziom 18  
    Technicznie cud miód i malinka w śmietanie:P ale jak nie zwykłem oceniać w co się wkłada swe wypociny tak dziś powiem, obudowa dno, może nie cała ale przedni panel napewno, krzywe i nie równe otwory krzywa lampa, psuję ci to efekt, jak jeszcze mam to mogę ci podesłać plastikowe(malowane na aluminium) oprawki do żarówek pasowały mi do takich lamp idealnie.
  • #6
    Urgon
    Poziom 36  
    AVE...

    Ja mam tylko jedno pytanie: nie łatwiej byłoby dodać zewnętrzny RTC dla uzyskania lepszej dokładności? Najtańsze chodzą po trzy złote, sporo można jako próbki zamówić. Dokładność wzrośnie i nie będziesz musiał uciekać się do sztuczek programowych...
  • #7
    dj_volt
    Poziom 22  
    A mi się podoba :-)
    Kto powiedział, że konstrukcja amatorska ma być zawsze super dopieszczona i wyglądać jak z fabryki? Mój nixie clock pracuje już jakieś 6 lat. Obudowa jest z drewna i plexi. Plexi troszkę zmatowiała, zresztą jest nierówno docięta. Ale kto po raz pierwszy zobaczy mój zegar - mówi "chcę taki!". Magia lampek jest niesamowita, a fakt, że masz w domu coś czego nie mają inni potrafi zamaskować niedociągnięcia.
    W końcu jesteśmy amatorami :-)

    73!
    SQ3LLX
  • #8
    pimap
    Poziom 9  
    PIC zaprogramowany w IC-Progu. Źródła kompilowane w MPLabie.

    bruno4, wybacz, zapomniałem dopisać, że to Twój projekt, mimo, że znaleziony gdzie indziej :) Zaraz to poprawię.

    Ogólnie macie rację, obudowa idealna nie jest, ale w końcu zajmuję się elektroniką a nie stolarką ;)
    "Powygryzane" otwory są kwestią tego, że nie mogłem znaleźć suwmiarki... Nie pomyślałem też, że wymiary na pewno można znaleźć w Internecie :( Chyba następnym razem takie rzeczy będę robił z rana a nie późnym wieczorem ;) Pomiar zwykłą miarką idealny nie był, przez co wywiercone otwory musiałem jeszcze poszerzać pilnikiem. W kolejnej wersji na pewno ten szczegół lepiej dopracuję :)

    dj_volt, dzięki za pozytywną opinię! :)
  • #10
    pimap
    Poziom 9  
    Problemu duchów nie odnotowałem :) Szczegółów multipleksowania nie znam, trzeba by poszukać w kodzie.
  • #11
    LKSbratek
    Poziom 10  
    Co do przedniego panelu jeśli masz jeszcze materiału wykonaj go ponownie.
    Tylko dziury wierć delikatnie od strony wewnętrznej, dzięki temu wiertło nie będzie wyrywało kawałków okleiny.

    Pozdrawiam i gratuluję, świetny zegar.
  • #12
    pimap
    Poziom 9  
    Otwory tak czy tak były nawiercone (i później, niestety, poszerzane) przed oklejeniem. Ale macie rację, przedni panel jest do wymiany. Wygryzienie okleiny (przy trzeciej lampie) było wynikiem wycinania nożykiem, przy pozostałych lampach okleinę tylko ponacinałem, tak aby było 8 części, które schowają się do środka.

    michal1997 napisał:
    Z wyglądu ładnie tylko ta okleina źle położona

    A czy ktoś mógłby mi podpowiedzieć, jak należy oklejać takie skrzynki?
  • #13
    maliniak80
    Poziom 16  
    Fakt, trochę niedokładnie wyciąłeś ale i tak klimatycznie wygląda :D, jednak lampy + drewno to dobre połączenie, ale jak taką wielką skrzynkę zrobiłeś to zasilacz trzeba było upchnąć w środku. Poza tym skoro "ugryzłeś" ASM to mogłeś pokusić sie o napisanie kodu od nowa i zrobić jak juz ktoś wyżej pisze obsługę RTC a może nawet DCF :D wtedy nikt nie zarzucił by Ci ze projekt jest z jego strony, a nauka i tak nie poszła by w las skoro na studiach będziesz miał asemblera. Pozdrawiam
  • #14
    pimap
    Poziom 9  
    "Ugryzłem" to dobre słowo ;) Z napisaniem kodu od zera bym sobie jeszcze nie poradził. Ale przy kolejnej konstrukcji może skorzystam z sugestii :)
  • #15
    witek1
    Poziom 13  
    pimap napisał:

    A czy ktoś mógłby mi podpowiedzieć, jak należy oklejać takie skrzynki?


    Okleina drewnopodobna ładnie wygląda na dużych powierzchniach gdzie jest możliwość ukrycia miejsc cięcia, czy wywinięcia.
    Do małych skrzyneczek, w dodatku wykonanych z równiutkiego MDF-u idealny jest fornir naturalny.
    Fornir jest dostępny w pojedynczych arkuszach i w szerokiej gamie gatunków drewna.
    Warto poczytać w necie o fornirowaniu. Moim zdaniem technologia łatwa i dająca doskonałe efekty końcowe.