Съдържание:
Видео: Истински двоичен часовник с NTP синхронизация: 4 стъпки
2024 Автор: John Day | [email protected]. Последно модифициран: 2024-01-30 07:49
Истинският двоичен часовник показва часа на деня като сума от двоични части от цял ден, за разлика от традиционния "двоичен часовник", който показва времето като двоично кодирани десетични цифри, съответстващи на часовете/минутите/секундите. Традиционните "двоични часовници" наистина използват двоично-кодирано-десетично-кодирано-шестнадесетично. Каква бъркотия! Истинските двоични часовници опростяват нещата изключително.
В истински двоичен часовник първата цифра ви казва, че е половин ден, втората цифра е четвърт ден, третата цифра е осма от деня и т. Н. Тя може да бъде прочетена до всяка резолюция много бързо (с практика разбира се). Първата цифра ефективно кодира AM срещу PM, втората цифра кодира дали е рано AM/PM или късно AM/PM и т.н.
При проектирането на моя истински двоичен часовник използвах дванадесет цифри на разделителна способност, така че денят е разделен на 2^12 = 4096 части (всяко увеличение е приблизително 20 секунди). Вместо да съхраняват всички цифри в ред, 12 -те цифри бяха разделени на 3 реда по 4 цифри. Въпреки че действителните двоични цифри са непроменени, това позволява часовникът да се чете като 3 двоично кодирани шестнадесетични цифри, като първият ред показва 16-и от деня (1,5 часа), вторият ред показва 256-ия ден (~ 5 минути) и третият ред показва 4096 -и от деня (~ 20 секунди).
Часовникът се синхронизира с NTP (Network Time Protocol) с помощта на ESP8266. ESP8266 е конфигуриран така, че при стартиране, натискането на бутон на часовника ще го изпрати в режим на настройки. В режим на настройки часовникът ще създаде WiFi мрежа, която обслужва уеб страница, която може да се използва за въвеждане на вашите собствени настройки за wifi, NTP сървър и часова зона. Тази информация се съхранява в EEPROM на ESP8266 и се чете, когато часовникът стартира в часовник, така че да може да се свърже с интернет и да извлече часа.
Консумативи:
- NodeMCU ESP8266
- WS2812B LED лента
- Натисни бутона
- Резистор 470 ома
- Резистор 10K Ohm
- 470 uF кондензатор
- Елементни пръчици
- Мрамори
- Дърво (или друг лист материал) за кутията
Стъпка 1: Схема
За да има дисплей, този проект използва RGB LED лента, поставена в 3 реда. Изрязах 3 ленти от 8 светодиода от лентата на светодиодите WS2812B и ги запоявах заедно. (Те са крехки и запояването на малките подложки може да бъде трудно. Увих запоените краища в електрическа лента, за да ги изолирам от всяко огъване.) Въпреки че имах нужда само от 4 светодиода на ред, изрязах ленти от 8, така че да може да има по -голямо разстояние между светлините, като използва само всеки друг светодиод. След това тези ленти бяха залепени за плоска основа, изработена от пръчици от сладкиши. Между всеки ред, двоен слой пръчици за лайсни осигурява профила, така че предната страна да може да бъде залепена към вътрешността на корпуса на часовника (вижте снимката).
Светодиодната лента се захранва от VU и GND на NodeMCU. VU се захранва (почти) директно от USB, така че осигурява 5V към светодиодите WS2812B, въпреки че ESP8266 работи при 3.3V. Поставих 470 uF кондензатор на захранването за лентата WS2812B, за да защитя светодиодите. Данните за LED лентата са свързани към D3 извода на NodeMCU чрез резистор 470 Ohm. Вижте тази инструкция за повече информация как да управлявате светодиодите WS2812B с ESP8266. Веригата беше запоена върху прото-платка с някои заглавия от мъжки към женски за NodeMCU.
Бутон също беше прикрепен към D6 на NodeMCU. Този бутон може да бъде натиснат, докато часовникът се стартира, за да го изпрати в режим на настройки (в който настройките за wifi, NTP сървъра и предпочитанията за часовата зона могат да бъдат променени). От единия край бутонът е свързан към D6, а също и към GND чрез 10K Ohm резистор, а от другия край е свързан към захранването. Когато бутонът не е натиснат, D6 чете ниско; когато се натисне, D6 чете високо.
Стъпка 2: Софтуер
Софтуерът за ESP8266 е написан с код Arduino. Светодиодите се обработват с помощта на библиотеката FastLED и синхронизирането на NTP се извършва от библиотеката NTPClient. Времето се синхронизира от NTP на всеки час.
В началото на функцията за настройка програмата проверява дали бутонът, свързан към D6, е натиснат. Ако е така, ESP8266 създава wifi мрежа (SSID и паролата могат да се променят в кода, SSID по подразбиране е "TrueBinary", а паролата е "thepoweroftwo"). Свържете се с тази мрежа от всяко устройство и отидете на 192.168.1.1. ESP8266 ще обслужва уеб страница с формуляри, където можете да въведете своя wifi SSID и парола, предпочитан NTP сървър и отместване на часовата зона от UTC. След като тези формуляри бъдат изпратени до ESP8266, той ще запише информацията във вътрешното си EEPROM хранилище.
Ако бутонът не е натиснат, часовникът се стартира нормално, чете настройките от EEPROM, свързва се с wifi, за да използва NTP, и започва да показва часа.
ЗАБЕЛЕЖКА: функцията setDisplay (int index) приема цифровото число от 0-11, където 0 е първата цифра (половин ден), а 11 е последната (1/4096 от деня) и включва съответния светодиод, като използва " LED "масив. Тази функция трябва да бъде попълнена според начина, по който сте конфигурирали дисплея. Моят коментиран пример съответства на това как запоявах редовете по зиг-заг, а не от край до край и пропуснах всеки друг светодиод.
Стъпка 3: Жилища
За да поместя часовника, използвах ъгъл от боядисано дърво, който случайно имах. На една външна страна пробих 12 дупки в решетка, съответстваща на позициите на светодиодите. След това залепих светодиодите във вътрешността на ъгъла, като залепих повдигнатите повърхности на пръчките за сладкиши между редовете към дървото (както е показано). За да разсея светлината от светодиодите, залепих стъклени мрамори върху дупките. Постигнах това, като потопих долната половина на всеки мрамор в епоксидна смола и след това ги поставих в дупките. NodeMCU и прото-платката бяха завинтени в другата вътрешна страна на ъгъла. Страните бяха покрити с малки триъгълници от дърво, прикрепени с лепило за дърво. Едната от страните има отвор за микро USB порта на NodeMCU и разрез в ъгъла за бутона.
Стъпка 4: Готово
Нашият истински двоичен часовник приключи! За да го настроите, задръжте бутона натиснат, докато го включвате, за да го поставите в режим на настройки и след това въведете идентификационните данни за WiFi на уеб страницата му. След като бъде настроен, часовникът може да бъде включен навсякъде и автоматично ще се свърже с интернет и ще започне да показва времето в двоичен формат.
Отнема малко практика, за да се чете времето в истински двоичен формат, но това е забавно упражнение и след известно време се превръща в бърз начин да получите време само с един поглед!
Препоръчано:
Микро двоичен часовник: 10 стъпки (със снимки)
Микро двоичен часовник: След като преди това беше създаден Instructable (двоичен DVM), който използва ограничената област на дисплея, използвайки двоичен. Това беше само малка стъпка, след като преди това беше създаден основният код модул за десетично в двоично преобразуване до създаване на двоичен часовник, но t
Дисплей на двоичен часовник BigBit: 9 стъпки (със снимки)
Дисплей на двоичен часовник BigBit: В предишен инструктируем (Microbit двоичен часовник) проектът беше идеален като преносим настолен уред, тъй като дисплеят беше доста малък, поради което изглеждаше подходящо следващата версия да бъде версия на камина или на стена, но много по -голяма
Истински часовник TIme, използващ AT89s52: 3 стъпки
Real TIme Clock Използване на AT89s52: ДОБРЕ ДОШЛИ, Това е shubham Trivedi и днес ще проектирам часовника в реално време, използвайки микроконтролер At89s52. Микроконтролерът AT89S52 е сърцето на този проект. DS1307 IC се използва като RTC. Тази DS1307 IC изисква I2C интерфейс, но 89
ESP8266 Мрежов часовник без RTC - Nodemcu NTP Часовник Няма RTC - ИНТЕРНЕТЕН ЧАСОВНИК ПРОЕКТ: 4 стъпки
ESP8266 Мрежов часовник без RTC | Nodemcu NTP Часовник Няма RTC | ИНТЕРНЕТЕН ЧАСОВНИК ПРОЕКТ: В проекта ще се прави часовник проект без RTC, ще отнеме време от интернет с помощта на wifi и ще го покаже на дисплея st7735
Изградете истински часовник с камбани за вашия компютър и часовник с пожарогасител: 3 стъпки (със снимки)
Създайте истински часовник за камбани за вашия компютър и часовник, който порази пожарогасителя: Месингова камбана, малко реле, още няколко неща и истинска камбана могат да ударят часовете на вашия работен плот. Въпреки че този проект работи на Windows и Mac OS X също реших да инсталирам Ubuntu Linux на компютър, който намерих в кошчето, и да работя върху това: никога не съм