Elektroda.pl
Elektroda.pl
X
Please add exception to AdBlock for elektroda.pl.
If you watch the ads, you support portal and users.

Zegar na ATMega16, współpraca z DCF.

KB 17 Jul 2018 11:37 167313 526
Altium Designer Computer Controls
  • #511
    badyl00
    Level 30  
    Osobiście do swojego zegara dodałem moduł WiFi na ESP8266 w postaci płytki NodeMCU. ESP pobiera aktualny czas i datę z serwera NTP a następnie wysyła w postaci DCF do zegara. Nie trzeba wykonywać żadnych przeróbek na PCB. Koszt płytki na portalu aukcyjnym to ok 20zł.

    Wykorzystałem gotowy kod Hiroki Mori zamieszczony pod adresem:
    https://github.com/yamori813/ntp2dcf77

    W kodzie należy zmienić tylko:
    NTPSERVER - adres serwera NTP
    TIMEOFFSET - strefa czasowa (offset w sekundach)
    DCF77OUT - Pin wyjściowy sygnału DCF
    ssid[] - SSID sieci
    passwd[] - hasło sieci WiFi

    Zmieniłem - dodałem również negację sygnału wyjściowego.

    Poniżej poprawiony działający kod gotowy do skompilowania (po uzupełnieniu podanych wyżej danych) i wgrania w ArduinoIDE:

    Code: c
    Log in, to see the code


    Poniżej rysunek połączeń z zegarem:
    Zegar na ATMega16, współpraca z DCF.

    Do ponownej synchronizacji wciskamy przycisk reset umieszczony na płytce. Zegar pracuje bardzo dobrze. Brak zakłóceń i problemów jak w przypadku odbiornika DCF.

    W przypadku pytań spróbuję pomóc w miarę możliwości.
  • Altium Designer Computer Controls
  • #512
    badyl00
    Level 30  
    Kilka osób pisało do mnie w jaki sposób mają skompilować i wgrać program. Spróbuję szczegółowo opisać.

    1.Pierwszą czynnością jest instalacja środowiska Arduino IDE (link poniżej):

    https://www.arduino.cc/en/Main/Software

    2.Po pomyślej instalacji uruchamiamy program. Klikamy Plik => Preferencje. W polu Dodatkowe adresy URL do menadżera płytek wklejamy:
    Code:
    http://arduino.esp8266.com/staging/package_esp8266com_index.json


    Zegar na ATMega16, współpraca z DCF.

    Klikamy OK.

    3. Wybieramy Narzędzia => Płytka .... => Menadżer płytek . W wyszukiwarce wpisujemy esp8266. Klikamy esp8266 by ESP8266 Comunity a następnie instaluj.

    Zegar na ATMega16, współpraca z DCF.

    4. Wybieramy Narzędzia => Płytka .... => NodeMCU 1.0 (ESP-12E Module)

    5. Wybieramy Szkic => Dołącz bibliotekę => Zarządzaj bibliotekami... => Wpisujemy NTP i instalujemy bibliotekę NTPClient

    Zegar na ATMega16, współpraca z DCF.

    6. Podłączamy moduł przez USB do komputera, sterowniki powinny zainstalować się automatycznie. Gdyby coś poszło nie tak należy zainstalować ręcznie: https://www.arduined.eu/files/CH341SER.zip

    7. Wklejamy program do Arduino IDE, uzupełniamy potrzebne dane i klikamy wgraj.

    Zegar na ATMega16, współpraca z DCF.

    8. Program zakomunikuje prawidłowe zakończenie procesu. W przypadku problemów sprawdzić ustawienia portu COM (numer) w menadżerze urządzeń i Arduino IDE.

    Zegar na ATMega16, współpraca z DCF.

    9. Klikamy narzędzia => Monitor portu szeregowego. Wciskamy RESET na płytce NodeMCU. Po prawidłowym połączeniu powinniśmy zobaczyć coś takiego:

    Zegar na ATMega16, współpraca z DCF.

    10. Jeżeli wszystko jest ok podłączamy moduł do zegara i cieszymy się synchronizacją z serwerem NTP.

    Pozdrawiam.
  • Altium Designer Computer Controls
  • #513
    gavron04
    Level 21  
    Witam. Przymierzam się do wykonania nowych PCB do tego projektu, złożyłem z 3-4lata temu już 2 takie zegarki i czas do nich wrócić :) Czy ma ktoś jakieś uwagi co do oryginalnego schematu? Może jakieś zmiany?

    Na pewno będzie na pokładzie dodany:
    - FT232, żeby połączyć się bezpośrednio po USB z zegarem.
    - dodane miejsce na DS18B20, aktualnie jest na złącze 2x6 z tego co pamiętam
    - to co się da to w SMD.
    - dodanie gniazda na ESP, które wyżej kolega opisał (super pomysł, dzięki!)

    PCB pod lampy będę robić pod IN-12

    Pozdrawiam
  • #515
    gavron04
    Level 21  
    No będą pady pod ESP + wyprowadzone gniazdo u.fl co by przedłużyć antenkę :)

    Można zrobić 2 w 1, czyli i goldpiny i pady smd pod esp :)

    EDIT: Chociaż z tego co widzę to są gotowe ESP w wersji z padami smd + zamontowanym już złączem U.FL . Trzeba kupić i potestować :)
  • #516
    Czeslaw10
    Level 15  
    Prośba do "valdi2003"
    Z postów wynika że kontaktujesz się z autorem projektu.
    Chętnie zobaczyłbym sterowanie intensywnością wyświetlaczy poprzez fotorezystor lub fototranzystor.
    Ustawienie godzinowe jest ok ale gasimy światło w pokoju o różnych godzinach.
    Takie sterowanie zapewniłoby natychmiastowe przygaszenie lamp.
    Oczywiście w programie zostawiłbym możliwość ustawienia w procentach przygaszania w zależności od upodobań użytkownika.
    To tylko sugestia pozdrawiam
  • #517
    valdi2003
    Level 15  
    Dawno nie odwiedzałem strony z tym projektem , ale jak widzę zegar dalej cieszy się powodzeniem chociaż minęło 13 lat . Wracając do prośby kolegi Czeslaw10 , aby dodać fotorezystor do projektu trzeba by było zmienić program , a z tego co się orientuję to Stefan nie jest jego autorem . Możesz napisać do niego i zapytać , adres do korespondencji jest na jego stronie internetowej . Jeżeli masz pojęcie o pisaniu programów , to możesz pobrać kod źródłowy programu v1.1 napisany w C i dostosować do swoich potrzeb .
  • #518
    Czeslaw10
    Level 15  
    Od niedawna jestem szczęśliwym posiadaczem lamp Z566
    Chciałbym zmontować zegar Nixie sterowany z DCF lub GPS oraz przyciemniany automatycznie poprzez fotorezystor.
    Wykonanie płytek oraz samo zaprogramowanie procesora nie stanowi dla mnie problemu,ale pisanie programu w C to ponad moje siły.
    Przeszukałem wiele stron i nie znalazłem takiego zegara który miałby obie funkcje.
    Jak posiada synchronizacje z DCF to nie ma fotorezystora i odwrotnie.
    Może przypadkiem ktoś zna stronę z takim zegarem z wsadem udostępnionym dla wszystkich maniaków Nixie ?
  • #520
    Tomotron
    Level 12  
    Sporo czasu minęło kiedy zbudowałem zegar, przez te lata funkcjonuje bezawaryjnie. Ostatnio nasilił się problem z odbiorem DCF, już nie wnikałem w czym problem, zainteresowałem się modułem GPS.

    Zakupiłem moduł GG-1802 i po małych zmianach w konfiguracji przez program u-center, bez problemu synchronizuje zegar.
    Trzeba ustawić szybkość transmisji na 4800 i wyłączyć "glonass" i ewentualnie inne pozostawiając tylko włączoną opcje "GPS", aby ramka z GNRMC była w standardzie GPRMC.

    Nadmienię, że nie jest potrzebne podłączenie sygnału PPS. O ile dobrze zrozumiałem tłumaczenie na stronie autora zegara, to sygnał PPS jest potrzebny kiedy jest nadawana ramka w standardzie bez "kropki" np. GPRMC 08194800. Natomiast jak jest nadawany GPRMC 081948.00 to sygnał PPS jest zbędny. W moim przypadku nie zauważyłem żadnej różnicy po podpięciu sygnału PPS.

    Nie stosowałem konwertera 3,3V na 5V, działa perfekcyjnie i bez błędów. Trzeba tylko pamiętać, aby wysyłana była tylko jedna ramka GPRMC, w przypadku większej ilości przesyłanych ramek, występuje czasami błąd synchronizacji - tak na ok 10 prób, 1-2 są błędne.
  • #521
    basto
    Level 14  
    Szukam od jakiegoś czasu zegara synchronizowanego przez DCF. Ten projekt jest idealny dla mnie, ale chciałbym zamiast lamp zastosować zwykłe wyświetlacze 7 segmentowe. Jak wyglądają możliwości takiej przeróbki?
  • #522
    HD-VIDEO
    Level 42  
    Do tego zegara nie ma kodu źródłowego; teoretycznie dołożyć sprzętowy dekoder 1z10 na kod siedmiosegmentowy.

    DCF LED:
    Link
    Link
    Link
    Link
  • #523
    User removed account
    Level 1  
  • #524
    basto
    Level 14  
    HD-VIDEO wrote:
    Do tego zegara nie ma kodu źródłowego; teoretycznie dołożyć sprzętowy dekoder 1z10 na kod siedmiosegmentowy.

    DCF LED:
    Link
    Link
    Link
    Link


    Złożyłem zegar z pierwszego linka, ale niestety mam problem z zaprogramowaniem procesora. Pierwszy procesor zablokowałem po zmianie na zewnętrzny oscylator kwarcowy. Więc drugi postanowiłem ustawić na 4Mhz z wewnętrznego, lecz przy takim ustawieniu zegar spieszy o sekundę na jedną minutę. Postanowiłem spróbować jeszcze raz ustawić zewnętrzny oscylator, tak jak jest to opisane i niestety, uśmierciłem kolejny procek. Czy może ktoś mi pomóc w zaprogramowaniu procesora? Nie wiem co robię źle. Używam AVR STUDIO 4.
  • #525
    HD-VIDEO
    Level 42  
    Ustawienia są prawidłowe.

    C5/C6 sprawdź lub je odłącz.

    Podłącz jakiś inny rezonator i sprawdź czy da się go odczytać
  • #526
    basto
    Level 14  
    Opanowane, o 4:00 rano niestety nie myślałem już racjonalnie. Okazało się że musiałem na programatorze włączyć generator żeby procek ruszył bo przecież zmieniłem na zewnętrzny oscylator. Niestety AVR Studio 4 nie udało mi się poprawnie zaprogramować procka, musiałem użyć MkAvrCalkulator. Teraz zegar działa prawidłowo.
  • #527
    tomek_miszczyk
    Level 11  
    Witam.Czy ktoś ma może NCC 2.1.1 hex?Mam wgrany nowy NCC 2.1.2 i coś nie za bardzo komunikuje się z zegarem,z programem Stefana 2,1a,wiem,że jest 2022 rok i to trochę wiekowy temat ale może ma ktoś ten program?Widziałem na stronie 2,że Valdi go używał i działał mu dobrze,widać to na zrzutach ekranowych na stronie 2.