Товары из Китая

Часы с Wi-Fi на светодиодных матрицах


Часы с Wi-Fi на светодиодных матрицах

Здравствуйте, уважаемые читатели. Прошло уже два года как я собирал часы газоразрядных индикаторах (ссылка), наконец нашлось время и я закончил новый проект, сегодня хочу рассказать о нём, на этот раз часы на светодиодных матрицах. Часы будут с Wi-Fi подключением к сети, с синхронизацией времени и получением данных о погоде из интернет, с отображением температуры и влажности в помещении, многофункциональным будильником и управлением всем этим добром через веб-интерфейс.

Под катом — схема, прошивка, процесс сборки, описание функционала часов.

Наткнулся я как-то на эти часы в сети, заинтересовался, решил попробовать сделать сам. На тот момент функционал у часов был не такой богатый, пока я покупал запчасти у китайцев и собирал часы, автор обновлял прошивку и часы обрастали новыми функциями, но об этом ниже. У автора есть свой телеграм канал — t.me/jeeui

Дисплеем для данных часов служит светодиодная матрица 32 на 8 точек, на драйвере MAX7219, набрана из четырёх матриц 8 на 8 светодиодов, ссылка

Часы с Wi-Fi на светодиодных матрицах

В качестве мозгов — микроконтроллер ESP8266 (автор рекомендует на основе модуля ESP-12F), ссылка

Часы с Wi-Fi на светодиодных матрицах

Собственно схема часов:

Часы с Wi-Fi на светодиодных матрицахДатчик DHT22 необходим для измерения температуры и влажности в помещении, фоторезистор 5537 для автоматической регулировки яркости дисплея в зависимости от освещения, сенсорная кнопка TTP223 для управления, и активная пищалка для будильника.

Прошивка

Перед сборкой схемы наших часов необходимо прошить микроконтроллер, ссылка на прошивку и программы — тут.

Сначала необходимо установить драйвер для платы микроконтроллера, что бы «Диспетчере устройств» появилось наше устройство, запоминаем номер порта нашего устройства.

Часы с Wi-Fi на светодиодных матрицах

Далее с правами администратора, запускаем программу flash_download_tools, нажимаем кнопку «ESP8266 Download tool»

Часы с Wi-Fi на светодиодных матрицах

В появившемся окне в верхней строчке указываем путь к нашей прошивке (файл с расширением bin), внизу выбираем номер порта нашего устройства, все остальные настройки выставляем как на скриншоте:

Часы с Wi-Fi на светодиодных матрицах

С начала нажимаем кнопку «ERASE» и очищаем на всякий случай содержимое флеш памяти микроконтроллера, после нажимаем «START» и заливаем нашу прошивку.

Собрал схему на проводках, первое включение:

Часы с Wi-Fi на светодиодных матрицахЧасы заработали сразу, к сети конектятся, время, температуру показывают. Надо всё это дело собирать в корпус.

Корпус и сборка

Корпус для часов решил сделать из листового вспененного ПВХ толщиной 4 мм, из такого же я делал игрушечный светофор для сына. В иллюстраторе сделал раскройку корпуса, если кому понадобится — ссылка

Часы с Wi-Fi на светодиодных матрицах

Напечатал на самоклеящейся бумаге, наклеил на лист ПВХ и вырезал:

Часы с Wi-Fi на светодиодных матрицах

С помощью цианоакрилата склеил корпус:

Часы с Wi-Fi на светодиодных матрицахЧасы с Wi-Fi на светодиодных матрицах

Ещё фото корпуса
Часы с Wi-Fi на светодиодных матрицахЧасы с Wi-Fi на светодиодных матрицах

Всю электронику я решил разместить на монтажной плате позади светодиодной матрицы, вырезал по размерам матрицы две монтажные платы и с помощью пайки скрепил их вместе (в тот момент напал на меня приступ лени, не захотел я рисовать и вытравливать плату). На матрицу со светодиодами припаял два прямых PLS разъёма с обеих сторон, а на получившеюся монтажную плату два PBS разъёма:

Часы с Wi-Fi на светодиодных матрицах

Получился такой себе «бутерброд», конструкция получилась достаточно жесткая, на монтажной плате теперь можно собирать схему:

Часы с Wi-Fi на светодиодных матрицахЧасы с Wi-Fi на светодиодных матрицах

В первой версии часов, если можно так выразится, была задумка установить встроенный блок питания:

Часы с Wi-Fi на светодиодных матрицахЧасы с Wi-Fi на светодиодных матрицах

Фото монтажной платы со стороны пайки, слабонервным не смотреть
Часы с Wi-Fi на светодиодных матрицах

Заднюю панель сделал с разъемом для провода питания, датчик температуры и влажности также приклеил внутри:

Часы с Wi-Fi на светодиодных матрицахЧасы с Wi-Fi на светодиодных матрицах

Это была ошибка, показания датчика в таком варианте, мягко говоря, не соответствовали действительности. А со встроенным блоком питания часы работали как-то не стабильно, мог не засветится экран при включении, пропадала связь с роутером.

В итоге отказался от встроенного блока питания, поставил разъём 5,5 x 2,1 мм для внешнего блока питания. Для датчика DHT22 также установил разъём на задней панели, чтобы вывести его за пределы корпуса.

Часы с Wi-Fi на светодиодных матрицах

Заднюю панель установил на металлические стойки:

Часы с Wi-Fi на светодиодных матрицах

Вернёмся к корпусу, в верней его части вырезал углубление для сенсорной кнопки, и вклеил её туда. Переднюю часть корпуса покрасил в черный, чтобы не просвечивал белый цвет когда будет установлено затемненное стекло:

Часы с Wi-Fi на светодиодных матрицах

Провод от сенсорной кнопки вывел назад, кстати для корректной работы сенсорной кнопки нужно запаять перемычку А на плате сенсора:

Часы с Wi-Fi на светодиодных матрицах

Обклеиваем корпус виниловой пленкой с рисунком под дерево:

Часы с Wi-Fi на светодиодных матрицахЧасы с Wi-Fi на светодиодных матрицах

Собираем всё вместе, вид спереди:

Часы с Wi-Fi на светодиодных матрицах

Вид сзади:

Часы с Wi-Fi на светодиодных матрицах

Фото во включенном состоянии:

Часы с Wi-Fi на светодиодных матрицахЧасы с Wi-Fi на светодиодных матрицах

Функционал

При первом включении часы создают точку доступа, и на экране пробежит бегущая строка:

Подключитесь к WiFi: WiFi-CLOCK (пароль: 0000-0000) и откройте в браузере адрес 192.168.4.1 для настройки!

После подключения к этой точке доступа заходим по указанному адресу и попадаем в веб-интерфейс часов:

Часы с Wi-Fi на светодиодных матрицах

В настройках присутствует восемь разделов меню — Главная, Часы, Дисплей, Будильник, Праздники, Погода, Система, WiFi.

Разделы веб-интерфейса
Часы с Wi-Fi на светодиодных матрицахЧасы с Wi-Fi на светодиодных матрицах

Нас нужен в первую очередь раздел WiFi, в нём вводим имя нашей домашней точки доступа и пароль, переключаем часы в режим клиента и нажимаем кнопку «Перезагрузить». Часы перезагрузятся и в этот раз подключатся к домашней Wi-Fi сети. Как это выглядит можно увидеть на видео:

Роутер выдаст новый IP-адрес для наших часов, о чем они сообщат в бегущей строке, теперь чтобы попасть в настройки нужно заходить по этому новому IP-адресу. Чтобы правильно показывало температуру в помещении нужно указать тип датчика, заходим в раздел «Система» и выбираем тип внешнего датчика — DHT22 (возможны ещё DS18B20 и DHT11).

Для того чтобы часы показывали данные о погоде, нужно сначала зарегистрироваться в одном из трёх на выбор погодных сервисов, для получения API ключа и ID местности.

AccuWeather — для бесплатного тарифа ограничение сервиса 50 запросов в сутки (мин. 1 раз в 30 мин)

API key: Открываем Developer AccuWeather и регистрируемся, после регистрации создаём API тут API AccuWeather.

ID города: Открываем AccuWeather и в строке поиска обязательно пишем свое место положение. После этого смотрим в строку адреса браузера, цифры после последнего / и будут нужный нам ID.

Apixu — для бесплатного тарифа ограничение сервиса 1000 запросов в месяц (мин. 1 раз в 45 мин)

API key: Открываем Apixu (weatherstack) и регистрируемся, после регистрации API берем тут Dashboard.

ID города: Пишем только латиницей.

OpenWeatherMap

API key: Открываем OpenWeatherMap и регистрируемся, после регистрации API создаем тут API OpenWeatherMap.

ID города: Пишем только латиницей.

По умолчанию часы работают в таком режиме — 25 секунд показывают текущее время, потом бегущая строка с днём недели и датой, далее снова 25 секунд показывают текущее время, потом снова бегущая строка уже с погодой, температурой и влажностью в помещении, далее цикл повторяется. Все параметры, что когда показывать, меняются в настройках, для себя я настроил так что постоянно показывается текущее время, а погоду и температуру показывает при касании сенсорной кнопки.

Часы имеют многофункциональный будильник, который может работать в нескольких режимах:

Сигнал – воспроизводит звуковой сигнал в заданное время

Изменить состояние пина GPIO12 — возможно использовать как реле или как сигнальное значение

GET запрос — отправка заданного http запроса, будет полезно для умного дома или чего-либо ещё

Отправка кода — в зависимости от радиомодуля, на частоте 433 или 315 возможна отправка кода для управления устройствами, поддерживающими данную возможность

Есть возможность настройки отображения стиля цифр часов — обычный, жирный, жирный с засечками:

Часы с Wi-Fi на светодиодных матрицах

Настраивается также регулировка яркости матрицы по датчику, плюс есть настройка порога срабатывания датчика освещенности.

Есть возможность вывода сообщений на дисплей по GET запросу

Есть возможность показывать праздники, можно добавить до 15 своих праздников.

И наконец есть возможность обновлять прошивку файлом через веб-интерфейс (ссылка в меню FW Update)

Часы с Wi-Fi на светодиодных матрицах

Вот такие получились часы, всем удачных поделок, спасибо за внимание.


СМОТРИ ТАКЖЕ

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *