Блок с датойБлок с временемБлок с возрастом сайта
Mr.ALB

    Анатолий Беляев (aka Mr.ALB). Персональный сайт

    Да пребудут с вами Силы СВЕТА!

     

    Ардуино (Arduino). #17

    Часы с синхронизацией времени по WiFi

    Подписчик моего сайта Анатолий К. любезно прислал свой проект часов, созданных на основе модуля Esp8266 NodeMcu v3(LoLin) и модулей RTC DS3231 и TM1637. Изюминка этого проекта в том, что эти часы могут синхронизировать время по WiFi.

    Публикация этого проекта в разделе Arduino, но нужно учитывать, что данный проект основан на несколько иной платформе.

    Внешний вид готовых часов
    Внешний вид готовых часов

    Подразделы


    Описание

    Здравствуйте, уважаемые читатели!

    Как ни странно, на создание сего девайса меня cподвигло приобретение 3D-принтера.

    Появилась возможность делать стильные корпуса для различных электронных устройств на любой вкус и цвет. А для хорошего корпуса нужна и хорошая начинка. Было решено сделать часы с разрядами секунд, чтобы было видно как утекает время. Ну и без подключения к интернету современному устройству уже не обойтись. Да и Web-интерфейс не помешает, так как уже у детей есть смартфоны и планшеты. Работа шла трудно, пришлось осваивать SolidWorks и Simplify3D. Очень долго отлаживал программу, так как хотелось стабильной работы устройства - чтобы время не сбивалось при отключении питания, отключении интернета или сети WiFi и прочих нехороших событиях. Было собрано десяток экземпляров часов - в течение полугода все они сломались работали без сбоев и после долгих уговоров разошлись по друзьям и знакомым.

    При первом включении необходимо при помощи Web-интерфейса ввести данные Вашей WiFi сети - название и пароль. Берем планшет или смартфон и читаем инструкцию - как сделать. Я думаю - это просто невозможно очень легко! Главное, чтобы в данный момент интернет был оплачен и кот на полу не грыз антенну от роутера. Далее часы перезагружаются и тикают сами не требуя вмешательства человека (только необходимо через несколько лет поменять батарею в RTC ). Да, еще если надо рано утром проснуться после встречи с друзьями тяжелой работы, надо понажимать пару кнопок и включить будильник.


    Схема часов

    Схема часов приведена ниже на картинке. Как указывалось выше, схема собрана не на основе Arduino, а на основе модуля NodeMcu v3(LoLin), в котором используется микроконтроллер Esp8266. Такой подход позволяет достаточно просто подключиться к сетям WiFi, чтобы использовать функцию синхронизации времени часов. Индикация осуществляется семисегментными индикаторами, которые управляются специализированной микросхемой TM1637. Модуль DS3231 имеет высокую точность поддержания времени. К порту A0 подключен фоторезистор, с помощью которого производится регулировка яркости индикаторов в зависимости от освещённости. Питается схема часов от сети ~220В через модуль питания с выходным напряжением +5В.

    Схема электрическая принципиальная часов с Wifi синхронизацией
    Pic 1. Схема электрическая принципиальная часов с Wifi синхронизацией

    Конструкция

    Часы собраны на модуле NodeMcu v3 (LoLin) с микроконтроллером ESP8266, модуле RTC DS3231 (не забываем вставить батарейку), микросхеме TM1637 и семисегментных индикаторах GNS15011 и KEM1106. Блок питания использован готовый — S-10-5. Конструктивно все это расположено на 3 печатных платах — блок микроконтроллера, блок индикации и блок управления. Плата индикации — двухсторонняя, остальные — односторонние. Между собой блоки соединяются посредством разъемов и соединительных шлейфов. Также на разъемах установлены Buzzer, фоторезистор и сигнальный светодиод. Все это монтируется в корпусе часов вместе с блоком питания, предохранителем и сетевым разъемом. Модули и семисегментные индикаторы установлены в панельки. Индикаторы закрываются прозрачным акрилом толщиной 1 мм, который вклеивается в переднюю часть корпуса. Сам корпус выполнен из пластика и напечатан на 3D-принтере.

    Часы. Расположение плат в корпусе
    Pic 2. Часы. Расположение плат в корпусе
    Часы. Внешний корпус снят
    Pic 3. Часы. Внешний корпус снят
    Часы. Вид на блок питания с тыльной стороны
    Pic 4. Часы. Вид на блок питания с тыльной стороны
    Часы. Вид на блок питания с лицевой стороны
    Pic 5. Часы. Вид на блок питания с лицевой стороны
    Часы. Вид на плату индикаторов. Тыльная сторона
    Pic 6. Часы. Вид на плату индикаторов. Тыльная сторона
    Часы. Вид на плату индикаторов. Лицевая сторона
    Pic 7. Часы. Вид на плату индикаторов. Лицевая сторона
    Часы. Вид на плату индикаторов. Лицевая сторона
    Pic 8. Часы. Вид на плату индикаторов. Лицевая сторона
    Часы. Сборка часов
    Pic 9. Часы. Сборка часов

    Описание программы

    Программа для часов написана в среде Arduino IDE и снабжена достаточным количеством комментариев для понимания ее работы. Для корректной работы с шестью семисегментными индикаторами пришлось внести изменения в стандартную библиотеку <TM1637.h>. Изменённая библиотека <TM1637_AH.h> в полном архиве (см. Приложение). Перед заливкой скетча в плату NodeMcu желательно удалить содержимое flash - памяти ESP8266. Программа будет работать только при полностью собранной схеме.

    Управление

    Инструкция для управления часами находится Приложении в полном архиве в файле: Часы с синхронизацией времени по WiFi.docx.


    Перечень элементов

    • Модуль 1: NodeMcu v3(LoLin) ESP8266
    • Модуль 2: Часы реального времени DS3231
    • Модуль 3: Блок питания S-10-5
    • Индикаторы: GNS15011 - часы и минуты, KEM1106 - секунды. Цвет - по желанию и возможностям.
    • D1 микросхема TM1637
    • R2 Фоторезистор GL5516
    • VT1 Транзистор КТ340
    • HL1 L-113GDT - плоский светодиод
    • HL2 L-56BID - мигающий светодиод
    • BA1 Активный Buzzer 3v
    • C1,C2,C4,C5,C6 Керамика
    • C3 Электролитический
    • Кнопки Тактильная Кнопка DIP,12*12*7,3 мм, с цветной крышкой
    • Сетевой разъем AC-11
    • Сетевой предохранитель ВП1-1 0,5A
    • Держатель предохранителя ВП1-1
    • Сетевой выключатель KCD-1
    • Панелька под индикаторы SCSL-40 (режем как надо)
    • Панелька под модули 1,2 PBS-40 (режем как надо)
    • Резисторы 0,125Вт или 0,25Вт металлопленочные, R7 - при необходимости подобрать
    • Разъемы HU-2, HU-4. WF-2, WF-4.

    Приложение

    Все, что необходимо для повторения конструкции, включая файлы для печати 3D можно скачать по ссылке:

    Спасибо всем, кто смог дочитать до конца! УДАЧИ!

    Анатолий К.


    Публикация и редакция статьи: Анатолий Беляев


    . Mr.ALB
    Предыдущая страница Страница 18