Это уже 2 версия часов матрицы на Arduino и адресных светодиодах WS2812B. Первый вариант собирал год назад. Допустил пару ошибок. От выбора пластика до реализации рассеивателя. Но обо всем по порядку.
Распечатался детали для часов. 3D модели сам не делал, а взял готовый из интернета. Вы можете скачать модели со страницы автора или внизу страницы в разделе «файлы для скачивания».
Печатаю я на своём принтере Anet A8 на стекло. Это достаточно недорогой, но эффективный способ печати.
Для того, чтобы деталь держалась хорошо, используя клей ПВА, наношу его на стекло. Но перед тем как печатать данный проект, у меня закончился клей, которым я мазал стекло. И решил я нанести столярный клей.
Предварительно развёл его водой. На первый взгляд результат ничем не отличался. Детали приклеились ещё лучше. Клей при высыхании становится прозрачным. Ну, в принципе, как всегда. После распечатки клей смываю горячей водой. Но, тут ожидал меня сюрприз.При смывании клей не отходил, становился белым.
Это меня очень сильно расстроила. После чего положил заготовки в горячую воду и оставил на ночь. Клей так и не отошёл. Хороший клей. Но нельзя этих целей.
Принял решение покрасить часы темно – серым цветом, развёл краску.
Цвет подбирать помогал сын. В итоги вот такой оттенок получился, мне очень понравился. С помощью тампона из губки нанёс краску на корпус часов в 2 слоя. И вот что получилось. Теперь можно приступить к сборке часов.
Приступаю к сборке часов. Для этого нам понадобится светодиодная лента, 60 светодиодами на метр.
Клеим на 2 плоские пластины-основания. Таким образом, чтобы подключение ленты была в левом нижнем углу. И укладываем ленту в виде зигзага. Важно на данном этапе не перепутать направление ленты.
Беру шлейф от компьютера, который раньше использовали для подключения CD-rom. Разделяю на 3 проводника. Нарезаю проводники нужной длины. И зачищаю края каждого провода.
Припаял провода по направлению светодиодной ленты так, чтобы получился зигзаг.
Подключаю к ESP8266, в которой загружен код из предыдущего проекта: «Елочная гирлянда на ESP8266 (ESP32). Управление с приложения».
Тестирование показала, что все сделано правильно, и светодиоды светятся. Устанавливаю решётки поверх светодиодной ленты. На светодиоды нанёс термоклей. Чтобы усилить эффект рассеивания.
После чего приступает к сборке корпуса. Для соединения двух основных частей, использую специальные фиксаторы, которые ставятся сверху и снизу в местах соединения корпуса часов.
На решётку корпуса устанавливаю матовый пластик, который вырезал из коробки под нитки. Коробку под нитки купил незадорого в фикс-прайсе.
Установил внутреннюю часть со светодиодами в корпус. Затем поставил боковые накладки, которые закрывают провода. Поверх накладок устанавливаются ножки. И с помощью винтов М3 длинной 10 мм. Закрепляю корпус и ножки. По центру часов устанавливаю корпус под электронику, который также служит фиксатором конструкции.Все скрепляю винтами М3.
Пришло время проверить работоспособность часов на Arduino и адресных светодиодах WS2812B. Для этого собираем электронику на макетной плате.
Для проекта на Arduino понадобится следующая электроника:
Для тестирования и проверки кода часов матрицы собрал электронику на макетной плате по схеме.
Протестировал и поправил код, и вот что получилось.
Пришло время установить электронику в корпус часов. Плату решил использовать Arduino Pro Mini. Так как они есть у меня в наличии, и занимает меньше места в корпусе часов.
Подготовил всю необходимую электронику.Нарезал провода нужной длины. На необходимые проводники установил разъём Dupont. Загрузил прошивку в Arduino Pro Mini. Как это сделать, читайте в статье: «Прошивка Arduino Pro Mini с помощью конвертера PL2303HX». И после чего приступим к пайке.
Паяем электронику по схеме.
Вот такой результат получился, осталось уложить все в корпус часов.
Чтобы Arduino Pro Mini и DS-3231 не стучали об корпус, приклеил их на двухсторонний вспененный скотч.
А сейчас немного о прошивке часов.
Для начала необходимо установить 2 библиотеки: DS3232RTC –для работы с модулем реального времени DS3231 и FastLED – для управления адресными светодиодами WS2812B.
Внимание! При установке библиотеки FastLED будьте внимательны нужно ставить версию, не больше, чем 3.3.2. Если у вас уже установлена более поздняя версия библиотеки, её нужно переустановить.
Установить эти библиотеки можно из файла. Скачать их можно внизу статьи в разделе "файлы для скачивания".
Также установить данные библиотеки можно через менеджер библиотек. Для этого в Arduino IDE переходим в пункт меню Скетч > Подключить библиотеку > Управлять библиотеками ...
Подождите, пока диспетчер библиотек загрузит индекс библиотек и обновит список установленных библиотек.
Выбираем версию 3.3.2. и устанавливаем. Если у вас была установлена более новая версия, её нужно переустановить что можно сделать через менеджер – библиотека. Аналогичным образом.Выбрать нужную версию и нажать, установить. Ваша версия библиотеки будет переустановлена на ту версию, которую вы выбрали.
Модуль DS-3231 подключён по шине I2C, по этому контакт SDA подключаем к пину А4 Arduino и SCL подключаем к A5.
#define LED_PIN 6 // Пин поключения ленты 6
Контакт данных ленты подключаем к 6 пину Arduino. Тактовые кнопки подключаем к 3 и 4 пинам Arduino.
byte button_1 = 4; // кнопка byte button_2 = 3; // кнопка
Данные настройки можно оставить без изменений, но про них нужно знать.
После чего можно приступить к загрузке скетча в Arduino. Код мы рассмотрели, тут ничего сложного нет, а сейчас приступим к сравнению предыдущей версии часов с текущей.
Подобные часы я уже собирал около года назад, но допустил ряд ошибок:
На этом различия заканчиваются. Первая версия часов тоже неплохая. Я бы их повесил в коридоре или поставил в комнате. Но так как пластик потрескался, они пылятся на полке. Возможно, я их разберу и комплектующие, используя при реализации других проектов.
Понравился проект Часы – матрица на Arduino и адресных светодиодах WS2812B? Не забудь поделиться с друзьями в соц. сетях.
А также подписаться на наш канал на YouTube, вступить в группу Вконтакте, в группу на Facebook.
Спасибо за внимание!
Технологии начинаются с простого!
Фотографии к статье
Файлы для скачивания
![]() |
Код часов на Arduino и светодиодах WS2812B.ino | 11 Kb | 3199 | Скачать |
![]() |
библиотека FastLED .zip | 331 Kb | 2062 | Скачать |
![]() |
библиотека DS3232RTC .zip | 48 Kb | 2067 | Скачать |
![]() |
Файлы для печати .zip | 958 Kb | 1967 | Скачать |
Здравствуйте. Как суда вписать ds18b20 ? Чтоб в минус работали , будет очень хорошо. Для 8.32 матрицу переделал теперь сделать чтоб температура была в минусе .
Повторил ваши часы. Подскажите, как сдвинуть показания в право на 2 пикселя. Что бы время было посередине.У меня 24х6 светодиода.
Добрый день
Можно добавить в проект датчик DHT22 чтобы температуру и влажность отображались?
Привет
Как подружить твои часы с DHT22 ?
помогите развернуть чтоб зеркально не показывала панель ws2812 .
Спасибо огромное автору за проделанную работу, часы работают отлично.
Взял матрицу 8х32 категорически не хочет работать. если в программе выставить меньше пикселей (например 18х6) то работает, но разумеетсяДля этого нужно переписать прошивку под данную матрицу.
показывает фигню какуюто. как заставить работать часы на матрице 8х32?
Взял матрицу 8х32 категорически не хочет работать. если в программе выставить меньше пикселей (например 18х6) то работает, но разумеется показывает фигню какуюто. как заставить работать часы на матрице 8х32?
Здравствуйте ,старая прошивка работает а вот новая не компилируется выдает ошибку exit status 1Все библиотеки прикреплены к статье Файлы для скачивания
fonts.h: No such file or directory штук двадцать fonts.h библ установил не
получается не могли бы вы скинуть полный ide с библ яндекс диск или еше
куда нибудь очень прошу заранее спасибо
Здравствуйте, собрал, все работает, спасибо. Вопрос а что в коде изменить чтобы они показывали только время и температуру? Дата и год не нужны да и отвлекают.
И в режиме часов первый столбик не задействован, странно смотрится, из этого вопрос как сделать часы полностью до левого края?
Здравствуйте, все работает. А что в коде переделать чтобы избавится от вывода даты и года и оставить только время и температуру???
Здравствуйте, повторил ваши часы, все работает но хотелось бы убрать вывод даты и года, оставить время и температуру. Что в коде убрать или изменить?
Здравствуйте ,старая прошивка работает а вот новая не компилируется выдает ошибку exit status 1
fonts.h: No such file or directory штук двадцать fonts.h библ установил не получается не могли бы вы скинуть полный ide с библ яндекс диск или еше куда нибудь очень прошу заранее спасибо
Очень красивые часы получились. Блин, росли бы у меня руки откуда надо. собрал бы.
Отличные часы получились. Спасибо за ваш код, все работает отлично.
Подскажите, для Nano скетч подходит, не проходит компиляция - постоянно ошибкаДа подходит. Вы бы хотя бы выложили какую ошибку выводит. Возможно невнимательно читали статью и установили не ту версию библиотеки.
Подскажите, для Nano скетч подходит, не проходит компиляция - постоянно ошибка
Не понимаю ,зачем делать матрицу, если из 108 пикселей задействовано только 62, а остальные просто баласт?
На одной картинке вход в ленту снизу-справа (пока еще без решетки), а с решеткой когда, то уже вроде как снизу-слева. Магия да и только.Да. начал клеить не в том направлении. Но в видео и в статье предупреждаю что нужно клеить с левого нижнего угла.
На одной картинке вход в ленту снизу-справа (пока еще без решетки), а с решеткой когда, то уже вроде как снизу-слева. Магия да и только.
Arduino проекты
21 января , 2021
Комментариев:20
Файлов для скачивания:4
Фото:27
Понравилась статья? Нажми
Виджеты для Easy HMI
Читайте также
Мы в соц сетях
Комментарии