Obsah:
Video: Skutočné binárne hodiny so synchronizáciou NTP: 4 kroky
2024 Autor: John Day | [email protected]. Naposledy zmenené: 2024-01-30 11:55
Skutočné binárne hodiny zobrazujú denný čas ako súčet binárnych zlomkov celého dňa, na rozdiel od tradičných „binárnych hodín“, ktoré zobrazujú čas ako binárne kódované desatinné číslice zodpovedajúce hodinám/minútam/sekundám. Tradičné „binárne hodiny“skutočne používajú sexagesimal s binárnym kódovaním-desatinným kódom. Aký neporiadok! Skutočné binárne hodiny veci veľmi zjednodušujú.
V skutočných binárnych hodinách vám prvá číslica hovorí pol dňa, druhá číslica je štvrť dňa, tretia číslica je ôsma deň atď. Je možné ju veľmi rýchlo prečítať v akomkoľvek rozlíšení (samozrejme s praxou)). Prvá číslica efektívne kóduje AM oproti PM, druhá číslica kóduje, či je skorá dopoludnia/PM alebo neskorá dopoludnia/PM atď.
Pri navrhovaní mojich skutočných binárnych hodín som použil rozlíšenie dvanástich číslic, takže deň je rozdelený na 2^12 = 4096 častí (každý prírastok je približne 20 sekúnd). Namiesto toho, aby boli všetky číslice v rade, bolo 12 číslic rozdelených do 3 radov po 4 číslice. Aj keď sú skutočné binárne číslice nezmenené, umožňujú to hodiny čítať ako tri binárne kódované hexadecimálne číslice, pričom prvý riadok zobrazuje 16-te dni (1,5 hodiny), druhý riadok zobrazuje 256-tý deň (~ 5 minút) a tretí riadok ukazuje 4096 minút dňa (~ 20 sekúnd).
Hodiny sú synchronizované s NTP (Network Time Protocol) pomocou ESP8266. ESP8266 je nakonfigurovaný tak, aby pri spustení stlačením tlačidla na hodinách prešiel do režimu nastavenia. V režime nastavení hodiny vytvoria sieť WiFi, ktorá slúži na webovú stránku, pomocou ktorej je možné zadať vlastné nastavenia siete Wi -Fi, server NTP a časové pásmo. Tieto informácie sú uložené v EEPROM ESP8266 a čítajú sa pri spustení hodín v režime hodín, aby sa mohli pripojiť k internetu a načítať čas.
Zásoby:
- NodeMCU ESP8266
- LED pás WS2812B
- Tlačidlo
- Odpor 470 ohmov
- Rezistor 10K Ohm
- Kondenzátor 470 uF
- Nanukové tyčinky
- Mramory
- Drevo (alebo iný materiál) pre puzdro
Krok 1: Okruh
Na to, aby mal tento displej displej, používa RGB LED pás usporiadaný v 3 radoch. Z prúžku LED WS2812B som odrezal 3 pásy z 8 LED a spájkoval ich dohromady. (Sú krehké a spájkovanie malých podložiek môže byť náročné. Spájkované konce som zabalil do elektrickej pásky, aby som ich izoloval od akéhokoľvek ohybu.) Napriek tomu, že som potreboval iba 4 diódy na riadok, vystrihol som pásy po 8 kusoch. mohol mať väčšiu vzdialenosť medzi svetlami iba pomocou všetkých ostatných LED. Tieto prúžky sa potom prilepili na rovný podklad vyrobený z nanukových paličiek. Medzi každým radom poskytuje profil dvojitá vrstva nanuku, takže prednú stranu je možné prilepiť o vnútornú stranu puzdra hodín (pozri fotografiu).
LED pás je napájaný z VU a GND NodeMCU. VU je napájanie (takmer) priamo z USB, takže poskytuje 5V LED WS2812B, aj keď ESP8266 pracuje pri 3,3V. Cez výkon pre pás WS2812B som umiestnil kondenzátor 470 uF na ochranu LED diód. Údaje pre LED pásik sú pripojené k pinu D3 NodeMCU cez odpor 470 Ohm. V tomto návode nájdete ďalšie informácie o tom, ako ovládať diódy WS2812B pomocou ESP8266. Obvod bol spájkovaný na proto-doske s niektorými hlavičkami medzi mužmi a ženami pre NodeMCU.
K D6 NodeMCU bolo tiež pripevnené tlačidlo. Toto tlačidlo je možné stlačiť pri spustení hodín, aby sa odoslali do režimu nastavení (v ktorom je možné zmeniť nastavenia wifi, server NTP a predvoľby časového pásma). Na jednom konci je tlačidlo pripojené k D6 a tiež k GND cez odpor 10K Ohm a na druhom konci je pripojené k napájaniu. Keď nie je tlačidlo stlačené, D6 číta nízko; keď je stlačený, D6 číta vysoko.
Krok 2: Softvér
Softvér pre ESP8266 bol napísaný pomocou kódu Arduino. LED diódy sú ovládané pomocou knižnice FastLED a synchronizáciu NTP vykonáva knižnica NTPClient. Čas je synchronizovaný pomocou NTP každú hodinu.
Na začiatku funkcie nastavenia program skontroluje, či je stlačené tlačidlo pripojené k D6. Ak je, ESP8266 vytvorí wifi sieť (SSID a heslo je možné v kóde zmeniť, predvolené SSID je „TrueBinary“a heslo „thepoweroftwo“). Pripojte sa k tejto sieti z akéhokoľvek zariadenia a prejdite na adresu 192.168.1.1. ESP8266 bude slúžiť ako webová stránka s formulármi, kde môžete zadať svoje SSID a heslo wifi, preferovaný server NTP a časový posun offsetu od UTC. Po odoslaní týchto formulárov do ESP8266 údaje uloží do svojho interného úložiska EEPROM.
Ak tlačidlo nestlačíte, hodiny sa spustia normálne, načítajú nastavenia z EEPROM, pripoja sa k sieti Wi -Fi a používajú protokol NTP a začnú zobrazovať čas.
POZNÁMKA: Funkcia setDisplay (int index) preberá číslice od 0 do 11, kde 0 je prvá číslica (poldeň) a 11 je posledná (1/4096 dňa) a rozsvieti príslušnú diódu LED pomocou „ pole LED. Túto funkciu je potrebné vyplniť podľa toho, ako ste nakonfigurovali displej. Môj komentovaný príklad zodpovedá tomu, ako som spájkoval riadky cik-cak, a nie end-to-end a preskočil všetky ostatné LED diódy.
Krok 3: Bývanie
Na uloženie hodín som použil uhol lakovaného dreva, ktoré som náhodou mal. Na jednom vonkajšom čele som vyvŕtal 12 otvorov do mriežky zodpovedajúcej polohám LED diód. Potom som LED diódy prilepil na vnútornú stranu uhla prilepením vyvýšených tvárí tyčiniek nanuku medzi riadky k drevu (ako je znázornené). Aby som rozptýlil svetlo z LED diód, nalepil som na otvory diery sklenené guličky. Dosiahol som to tak, že spodnú polovicu každého mramoru namočím do epoxidovej živice a potom ich vložím do otvorov. NodeMCU a proto-doska boli zaskrutkované do druhej vnútornej strany uhla. Boky boli pokryté malými trojuholníkmi z dreva, prichytenými lepidlom na drevo. Jedna zo strán má otvor pre port micro USB NodeMCU a výrez v rohu pre tlačidlo.
Krok 4: Hotovo
Naše pravé binárne hodiny sú hotové! Ak ho chcete nastaviť, podržte tlačidlo zapojené a prepnite ho do režimu nastavení a potom zadajte poverenia WiFi na jeho webovej stránke. Po nastavení je možné hodiny zapojiť kdekoľvek a automaticky sa pripoja k internetu a začnú zobrazovať čas v binárnom formáte.
Čítanie času v skutočnom binárnom formáte vyžaduje určité miesto na cvičenie, ale je to zábavné cvičenie a po chvíli sa z neho stane rýchly spôsob, ako si nájsť čas jediným pohľadom!
Odporúča:
Binárne stolné hodiny: 9 krokov (s obrázkami)
Binárne stolné hodiny: Binárne hodiny sú úžasné a výlučne pre osoby, ktoré poznajú binárne súbory (jazyk digitálnych zariadení). Ak ste technologický chlap, tieto podivné hodiny sú pre vás. Vytvorte si teda svojpomocne a zachovajte čas v tajnosti! Nájdete tu množstvo binárnych
Binárne hodiny V1.0: 5 krokov
Binárne hodiny V1.0: Každý miluje binárne hodiny, obzvlášť nerd tvorcovia ako ja. V tomto návode vám ukážem, ako si môžete vytvoriť vlastné binárne hodiny pomocou bežných a perfboardových modulov. S návrhom hotového binárneho c
Sieťové hodiny ESP8266 bez akéhokoľvek RTC - Hodiny Nodemcu NTP Žiadne RTC - PROJEKT INTERNETOVÝCH HODÍN: 4 kroky
Sieťové hodiny ESP8266 bez akéhokoľvek RTC | Hodiny Nodemcu NTP Žiadne RTC | PROJEKT INTERNETOVÝCH HODÍN: V rámci projektu sa bude realizovať projekt hodín bez RTC, bude to trvať nejaký čas z internetu pomocou wifi a zobrazí sa to na displeji st7735
Digitálne a binárne hodiny s 8 číslicami x 7 segmentov LED displej: 4 kroky (s obrázkami)
Digitálne a binárne hodiny v 8 čísliciach X 7 segmentov LED displej: Toto je moja aktualizovaná verzia digitálneho & Binárne hodiny pomocou 8 -miestneho segmentového LED displeja x 7. Rád poskytujem nové funkcie pre bežné zariadenia, špeciálne hodiny, a v tomto prípade je použitie 7segového displeja pre binárne hodiny netradičné a
Postavte si pre svoj počítač skutočne zvonivé hodiny a hodiny s hasiacim prístrojom .: 3 kroky (s obrázkami)
Postavte si na svojom PC skutočné zvonkohry a hodiny, ktoré zasiahnu hasiaci prístroj: Mosadzný zvonček, malé relé, niekoľko ďalších vecí a skutočný zvonček dokážu odpáliť hodiny na ploche. Napriek tomu, že tento projekt beží na Windows a Mac V systéme OS X som sa tiež rozhodol nainštalovať Ubuntu Linux na počítač, ktorý som našiel v koši, a pracovať na tom: Nikdy som