Spisu treści:

KONIEC WIOSNY NAPRZÓD: 5 kroków
KONIEC WIOSNY NAPRZÓD: 5 kroków

Wideo: KONIEC WIOSNY NAPRZÓD: 5 kroków

Wideo: KONIEC WIOSNY NAPRZÓD: 5 kroków
Wideo: POBUDKA 2024, Listopad
Anonim
KONIEC WIOSNY NAPRZÓD
KONIEC WIOSNY NAPRZÓD
KONIEC WIOSNY NAPRZÓD
KONIEC WIOSNY NAPRZÓD

Tytuł alternatywny: Zegar czasu IP, część 3

Jeśli Ci się spodoba, biorę udział w konkursie Zegar.

Czy jesteś zmęczony koniecznością skakania do przodu?

Czy jesteś zmęczony koniecznością wycofania się?

Dobrze, jestem. Mam ten stary budzik, który to naprawił (na chwilę) (patrz zdjęcie) Automatycznie dostosuje się do czasu letniego i (chyba) ma zapasową baterię na wypadek utraty zasilania. Niestety kilka lat temu Stany Zjednoczone postanowiły zmienić dni na zmianę czasu. Więc teraz ten zegar musi być ręcznie zmieniany cztery razy w roku! Używam tego tylko jako kopii zapasowej.

Więc ten Lazy Old Geek (LOG) chciał idealnego zegara. Każdy jest inny i zmieniają się czasy (Ha!Ha!) i ideały. Oto mój idealny zegar do sypialni.

Zawsze widoczny w nocy. OSTRZEŻENIE: Żadnych mrugających sekund w nocy, to zbyt rozprasza.

Automatyczny czas letni (czas letni). Nienawidzę zmieniać czasu zegara dwa razy w roku.

Wyświetla dzień tygodnia. Odkąd jestem STARA i nie pamiętam.

Więc lubię sekundy nad ranem. Reklama mówi płukanie gardła przez 30 sekund, więc lubię zegar, który wyświetla sekundy.

Brak niebieskiego światła. Wszyscy wiemy, że niebieskie światło jest dla ciebie złe. Nie zawsze prawda, zobacz to:

www.instructables.com/id/Blue-Light-Proje…

Dobra, to całkiem proste. Wiele zegarów jest widocznych w nocy i wiele nie jest niebieskich. Niektóre z nich to zegary „atomowe”, które dostosowują się do czasu letniego. Właściwie niektóre z moich „atomowych” zegarów muszę majstrować przy zmianie czasu letniego.

Teraz sytuacja sekund jest bardziej szczegółowa. Właściwie zaprojektowałem własny, aby to zrobić w tym Instructable (chociaż zauważyłem, że nie wyjaśniłem tego zbyt dobrze):

www.instructables.com/id/IP-Time-Clock-Par…

Ten zegar działał około czterech lat, stosunkowo bezobsługowy, aż kilka miesięcy temu przestał działać.

Krok 1: Naprawianie, pierwszy krok

Naprawianie, pierwszy krok
Naprawianie, pierwszy krok
Naprawianie, pierwszy krok
Naprawianie, pierwszy krok
Naprawianie, pierwszy krok
Naprawianie, pierwszy krok

Niebieski ekran śmierci, zegar IP (w rzeczywistości jest czarny).

Technobabble:

Krótki opis Zegara IP. Wykorzystuje mikrokontroler ESP-03, który łączy się z internetem za pomocą WiFi. Przylutowałem dwie męskie listwy nagłówkowe 2mm do ESP-03, więc będzie można je podłączyć do gniazda na płytce drukowanej.

Wykorzystuje dwa 7-segmentowe 3-cyfrowe wyświetlacze, takie jak:

Nie pamiętam, czy to była zwykła katoda czy anoda.

Max7219 do sterowania wyświetlaczami i poszczególnymi diodami LED na dni tygodnia.

Aby uzyskać więcej informacji, spójrz na mój zegar IP część 2 Instructable.

Cóż, pierwszą rzeczą, którą spróbowałem, było przeprogramowanie ESP-03 (mikrokontrolera), więc spojrzałem na mój Instructable i spróbowałem, ale nie pozwoliło mi go zaprogramować.

NIEPOTRZEBNA HISTORIA: OK, jestem STARYM mężczyzną, więc mój umysł błądzi. Jednym z powodów, dla których dostałem się do Instructables.com, było to, że miał świetne Instructables na Arduino. Był to jeden z głównych powodów, dla których dostałem się do Arduino i nauczyłem się ich używać. Instruktorzy pisarzy mają różne poziomy i umiejętności, ale często mogę znaleźć takich, które są na poziomie, który mogę zrozumieć. Więc dziękuję Instructables za pomaganie mi przez lata.

Aby odwdzięczyć się za przysługę, piszę Instruktaże, które mam nadzieję pomogą innym.

Drugim powodem, dla którego piszę Instructables, jest pomoc w zapamiętaniu, jak robiłem projekty. Pisząc Instructables staram się podać wszystkie szczegóły, aby zrobić to, co zrobiłem. Wydaje mi się, że nie zawsze wykonuję dobrą robotę.

Dobra, odłożyłem zegar IP na tylny palnik.

Moja teoria mówi, że więcej niebieskiego światła dało mi więcej energii (patrz powyżej blueproject Instructable) i skupiłem się na ponownym przejrzeniu tego problemu. W końcu doszedłem do wniosku, że metoda, której używałem do programowania ESP-03, już nie działała. Zapisałem to w innym Instruktażowym:

www.instructables.com/id/2020-ESP8266/

Problem 1 rozwiązany, mogę teraz programować ESP-03s za pomocą szkiców Arduino.

Krok 2: Napraw następny problem

Naprawianie następnego problemu
Naprawianie następnego problemu
Naprawianie następnego problemu
Naprawianie następnego problemu
Naprawianie następnego problemu
Naprawianie następnego problemu

Cóż, zaprogramowałem ESP-03 moim starym szkicem Arduino, umieściłem go w moim zegarze IP, nadal nie działał. Sposób, w jaki napisałem szkic, nic się nie wyświetlało, dopóki nie nawiązano udanego połączenia z Internetem i serwerem NTP (zapewnia dokładny czas w Internecie), więc miałem pusty ekran.

Korzystając z monitora Arduino Serial, mogłem zobaczyć, że nie łączy się z serwerem NTP.

UWAGA: ESP-03 wykorzystuje mikrokontroler ESP8266. Jedną z miłych rzeczy w ESP8266 jest to, że ma wbudowane WiFi. Pod względem technicznym może łączyć się z hotspotem WiFi lub routerem WiFi, które posiada wiele domów, w tym mój.

Zaczynając dość technicznie, nowe routery WiFi mają dwie przepustowości, 2,4 GHz i 5,0 GHz. (Zobacz zdjęcie mojego routera) Lubię myśleć o nich jako o różnicy między radiem AM i FM. (Pamiętasz to?)

Ograniczeniem ESP8266 jest to, że używają one tylko pasma 2,4 GHz.

Bardziej techniczne rzeczy, kiedy łączysz się z Wi-Fi, potrzebujesz identyfikatora zwanego SSID. To jak indywidualna stacja radiowa, K Earth 101. A ze względów bezpieczeństwa potrzebujesz również hasła.

Cóż, wiele routerów dwupasmowych WiFi (2,4 GHz i 5 GHz) używa tego samego identyfikatora SSID dla obu pasm.

W każdym razie z jakiegoś powodu nie mogłem połączyć ESP-03 z moim routerem. Przypominam sobie, że inne osoby miały podobne problemy.

Konkluzja: skonfigurowałem inny router, który miał oddzielne identyfikatory SSID dla pasma 2,4 i 5 GHz, np. „mtslink24” i „mtslink50” i był w stanie rozmawiać przez Internet.(Patrz zdjęcie)

OSTRZEŻENIE: Jeśli masz router dwuzakresowy z tymi samymi identyfikatorami SSID na obu pasmach, może nie działać z ESP8266.

Krok 3: Naprawianie ostatniego problemu

Naprawianie ostatniego problemu
Naprawianie ostatniego problemu

To, co widziałem, to to, że nadal nie mogę połączyć się z serwerem NTP. Znalazłem inny Sketch, aby sprawdzić, czy mogę korzystać z Internetu i to zadziałało, więc następnym problemem wydawało się połączenie z serwerem NTP.

W moim oryginalnym szkicu użyłem adresu IP do połączenia z serwerem NTP:

tf.nist.gov/tf-cgi/servers.cgi

Wypróbowałem więc kilka adresów IP od Boulder i FT. Collins, które są bliżej mojego miejsca. Żaden z nich nie działał. Trochę się bawiłem i faktycznie udało mi się stworzyć globalny szkic, ale zatrzasnął się tylko może jeden na pięć razy. Przeprowadziłem dalsze badania i znalazłem coś o nazwie pool.ntp.org. Najwyraźniej to, co robi, to rotacja przez kilka adresów IP, więc żaden pojedynczy adres nie jest przeciążony i wszystkie powinny być aktywne.

Cóż, tak naprawdę nie rozumiem zbyt dobrze tego programowania WiFi, ale udało mi się znaleźć przykład, który mógłbym dostosować do mojego szkicu i udało mi się go uruchomić. Jezu!

Krok 4: Szkic Arduino

Szkic Arduino
Szkic Arduino

W załączeniu mój szkic roboczy, Special.ino

Oto kilka komentarzy na ten temat:

Tutaj umieszczasz swój własny identyfikator SSID i hasło. (Musi to być 2,4 GHz.)

char ssid = "Twój identyfikator SSID"; // SSID sieci (nazwa)

char pass = "Twoje hasło SSID"; // hasło sieciowe

Korzystanie z listy serwerów pool.ntp.org.

IPAdres IPSerweraczasu; // adres serwera NTP time.nist.gov

const char* ntpServerName = "pool.ntp.org";

//pobierz losowy serwer z puli WiFi.hostByName(ntpServerName,timeServerIP);

Dwie funkcje czasu letniego:

void znajdźDatyZmian(); // Znajdź daty zmiany wiosennej/jesiennej

bool IsDST(); // Sprawdź, czy jest czas letni

znajdźDatyZmian(); bierze bieżący rok i ustala, które dni w marcu i listopadzie są datami wymiany waluty

bool IsDST(); określa, czy bieżący dzień jest dniem letnim, czy nie

nieważny wyświetlacz zegara cyfrowego ()

Cóż, niestety mój stary mózg nie może już tego rozgryźć. Myślę, że wyłącza wyświetlanie sekund po 21:00. i włącza je z powrotem około 5 rano. Bardzo denerwuje mnie patrzenie na zegar, kiedy jestem w łóżku i widzę, jak odliczają sekundy. Ale kiedy wstaję nad ranem, lubię widzieć sekundy, żeby móc „zaplanować” płukanie.

Krok 5: Programowanie ESP-03 i wnioski

Programowanie ESP-03 i wnioski
Programowanie ESP-03 i wnioski

Obecnie używam Arduino w wersji 1.8.12.

Najłatwiejszym sposobem na zainstalowanie rzeczy ESP8266 jest użycie Menedżera płyty za pomocą tej metody:

github.com/esp8266/Arduino#installing-with…

Po zainstalowaniu, wybierając płytkę, wybieram „Generic ESP8266 module”.

UWAGA: Na moim komputerze są dwie wersje „Generic ESP8266 module”. Ta z kategorii „Płyty ESP8266” działa, ta pod Sparkfun nie.

Cóż, jestem leniwy. To, co właściwie zrobiłem, to wziąłem ESP-03 i zaprogramowałem go w moim zmodyfikowanym adapterze ESP z:

www.instructables.com/id/2020-ESP8266/

To, co mogłem zrobić, to zmodyfikować moją płytkę PCB IP Clock 2 zgodnie z tym schematem, dodając tylko kilka zworek.

Dodatkowo zmodyfikowałem przejściówkę USB CP2102 tak, aby RTS był podłączony do pinu obok GND.

Dzięki tym modyfikacjom przypomina to ładowanie zwykłego szkicu Arduino bez konieczności naciskania jakichkolwiek przycisków.

WNIOSKI: Cóż, podoba mi się mój zegar IP. Spełnia wszystkie moje kryteria. Wbrew temu, co widać na zdjęciu, diody LED są czerwone, a nie białe, więc nie ma niebieskiego.

Zalecana: