Я давно засматривался на адресные светодиоды WS2812 и наконец, решился их заказать. Конкретной идеи у меня не было, но когда они пришли, решил сделать небольшую светодиодную матрицу. Размер матрицы получился 15 х 8. И в качестве применения — часы. Контролер — ESP 8266 – 12E. Выбор мой не спроста, ESP нужен для соединяются с Wi-Fi-роутером и синхронизации времени через интернет. Итак, начнем.
Для часов использовал:
— WS2812 лента со 120 светодиодами, 60 штук на метр
— ESP 8266 — 12E
— ненужная, но рабочая зарядка от телефона на 5 вольт
— стабилизатор напряжения 3.3v
И по мелочам: резисторы 10 kOm 0.25 W 5шт., переключатель, кнопка, провода, USB-TTL, прозрачный пластик 2 мм, болты 3х20, гайки и шайбы 3мм.
В качестве основы я использовал канцелярский планшет. Из него вырезал прямоугольник 252х85 мм. На него приклеил светодиодную ленту. Разрезав на полосы по 15 диодов, клеил их горизонтально на основу, начиная сверху. Первую полоску слева – направо. Следующую полосу наоборот, справа – налево. Третью опять слева – направо. Итак, далее. Если следовать по путь сигнала, получилось зигзагообразно, начиная с верхнего левого угла. Далее спаял все полосы короткими проводами. + 5 от первой полости к +5 второй. GND к GND. От OUT первой полосы к IN второй полосы, от OUT второй полосы к IN третьей, и так далее. Получилось следующее.
ESP будет находиться с обратной стороны основы, поэтому первую полосу, в месте пайки, перегнул на обратную сторону.
Итак, для запуска и прошивки ESP-8266 надо сделать минимальную обвязку. Напрямую к питанию подключается только вывод VCC, остальные выводы: CH_PD, RESET, GPIO0, GPIO2, должны быть подтянуты к питанию (VCC) через резистор. Резисторы на 10kOm можно заменить на другие, от 4,7kOm до 50kOm, кроме GPIO15 — его номинал должен быть до 10k. Напрямую, к минусу (GND) питания подключаем только GND, а GPIO0 подтягиваем тоже через резистор до 10kOm, для перевода модуля в режим загрузки прошивки, к GND. Нашу матрицу подключаем к GPIO13. Провод нужно припаять к IN первой полосы. Вот схема.
Закрепил все детали на двусторонний скотч с обратной стороны основы.
Для защиты матрицы вырезал прямоугольник из прозрачного пластика размером 260х105 мм. А также просверлил 4 отверстия диаметром 3.2 мм для крепления.
Светодиоды очень яркие, да и выглядят не очень эстетично. Если бы под руками был матовый пластик, то проблем никаких, а вот если пластик прозрачный, как у меня, придется изготовить «светофильтр». Вариантов много, самый простой – взять лист белой бумаги, вырезать прямоугольник нужного размера, проделать отверстия и надеть приложив к пластику. Я использовал пленку от папочки, которая у меня была.
В прозрачный прямоугольник вставляем болтики, с обратной стороны надеваем светофильтр, затем шайбы и затягиваем гайками.
Сверху кладем «матрицу» светодиодами вниз. Для фиксации я использовал металлические пластинки от детского железного конструктора. Закрепил их гайками.
Светодиодная лента WS2812 питается от 5 вольт. Поэтому для питания нужен стабилизированный источник питания в 5 вольт. Я использую старую зарядку от телефона.
После пуска ESPпытается подключится к точке доступа указанной в скетче, если не удается, становится точкой доступа. Доступ можно получить подключившись и введя в браузере 192.168.1.1. Синхронизацию времени с интернетом я никак не допишу, пока что есть только web — интерфейс для настройки. В нем можно ввести время вручную, указать точку доступа к которой надо подключится, а также имя часов и название и пароль точки доступа которую подымает ESP. Все изменения, кроме времени, вступают в силу после перезагрузки. Перезагрузить модуль можно тоже через web –интерфейс.
Скетч для Arduino IDE