7-сегментные настенные часы для умного дома
7-сегментные настенные часы
Основная часть часов представляет собой светодиодную ленту WS2812B 5В. Я взял тот, у которого 100 светодиодов на 1м. Таким образом, в одном сегменте поместилось бы 3 светодиода. Двоеточие уже достаточно плотно прилегает, поэтому для всех больших сегментов светодиодной ленты могут возникнуть труднос��и.
Вам понадобится клей для пластика, кабели, светодиоды, базовые электронные компоненты (подробности в разделе «Электроника») и, конечно же, твердая рука для пайки. :)
Корпус часов
Пожалуйста, распечатайте чехол в двух разных цветах. Я рекомендую коробки сделать черными, а пластины сверху — белыми или полупрозрачными, чтобы светодиодный свет светил красиво и равномерно. Здесь может помочь полупрозрачная нить, если она слишком толстая.
Мой напечатан толщиной слоя 0,2 мм с использованием белой нити EXTRUDR, и свет внутри хорошо виден.
Электрическая цепь
ВНИМАНИЕ: ВСЯ ЭЛЕКТРОПРОВОДКА ВЫПОЛНЯЕТСЯ НА СОБСТВЕННЫЙ РИСК. НЕТ НИКАКИХ ГАРАНТИЙ ВАШЕЙ БЕЗОПАСНОСТИ, ПОЛНОТЫ ИЛИ ПРАВИЛЬНОСТИ ПОКАЗАННОЙ СХЕМЫ.
И… Не работайте с электросетью, если у вас нет необходимых навыков.
Общая схема подключения довольно проста:
Моя готовая плата выглядела примерно так:
Нижний правый 5-контактный разъем предназначен для подключения моего источника питания USB. Верхний правый разъем предназначен для ESP. Но нет, я ��е могу гарантировать, что это подойдет и вам, поскольку это сильно зависит от ваших компонентов и размеров конденсаторов.
Толстый корпус для электроники необходим только потому, что мои компоненты были немного… не так компактны. Итак, если вы приобретете более аккуратную печатную плату профессионального производства, вы сможете сделать ее немного аккуратнее.
Необходимые электрические компоненты:
Светодиодная лента, конечно (WS2812B, 100 светодиодов на метр).
Модуль ESP8266-01
Порт micro USB или любой другой разъем питания 5 В.
Какой-то преобразователь напряжения. Я использовал LD33VC/LD117AV33. Пожалуйста, проверьте соответствующую настройку конденсатора.
Дополнительно приобретите пару токоограничивающих резисторов. Я использовал 1K для контакта включения чипа и 220 для контакта данных светодиодной ленты.
Примечание. В нижней части приведенной выше схемы показано типичное содержимое светодиодной ленты. Вам не нужно слишком беспокоиться об этом, но я разместил это здесь для полноты и понимания.
Для работы примера кода необходимо соединить части светодиодной ленты блоками по 3 светодиода.
Схема подключения каждого сегмента C → D → E → G → B → A → F.
Да, я знаю. Пайка — это работа, и она занимает некоторое время. Но после первого сегмента все пошло вполне гладко.
В середине четырех сегментов необходимо подключить двоеточие как один светодиод. Просто наденьте кабели, прежде чем вставлять их в маленький кирпич. Затем приклейте его к большей части разъема.
Если вам нужна другая проводка, обновите следующие определения чисел внутри этого блока кода приведенного примера.
bool ZERO[SEGMENT_CNT] = {1, 1, 1, 0, 1, 1, 1};
bool ONE[SEGMENT_CNT] = {1, 0, 0, 0, 1, 0, 0};
bool TWO[SEGMENT_CNT] = {0, 1, 1, 1, 1, 1, 0};
bool THREE[SEGMENT_CNT] = {1, 1, 0, 1, 1, 1, 0};
bool FOUR[SEGMENT_CNT] = {1, 0, 0, 1, 1, 0, 1};
bool FIVE[SEGMENT_CNT] = {1, 1, 0, 1, 0, 1, 1};
bool SIX[SEGMENT_CNT] = {1, 1, 1, 1, 0, 1, 1};
bool SEVEN[SEGMENT_CNT] = {1, 0, 0, 0, 1, 1, 0};
bool EIGHT[SEGMENT_CNT] = {1, 1, 1, 1, 1, 1, 1};
bool NINE[SEGMENT_CNT] = {1, 1, 0, 1, 1, 1, 1};
bool BLANK[SEGMENT_CNT] = {0, 0, 0, 0, 0, 0, 0};
bool UNDERSCORE[SEGMENT_CNT] = {0, 1, 0, 0, 0, 0, 0};
bool OVERSCORE[SEGMENT_CNT] = {0, 0, 0, 0, 0, 1, 0};
bool *ALL[] = {НОЛЬ, ОДИН, ДВА, ТРИ, ЧЕТЫРЕ, ПЯТЬ, ШЕСТЬ, СЕМЬ, ВОСЕМЬ, ДЕВЯТЬ};
Программное обеспечение
В примере необходимо сначала заменить ssid и пароль своими данными. Во-вторых, замените часовые пояса соответствующими часовыми поясами.
Также не��бходимо установить библиотеки:
ESP-библиотеки (Adafruit_ESP8266)
Adafruit_GFX_Library
ESPAsyncWebServer
Часовой пояс
Адафрут_НеоПиксель
NTPClient
(я





























