Проект кольцевой RGB Led лампы
Доступно 28 различных визуальных эффектов подсветки
- Плавная регулировка яркости
- Точная регулировка цвета
- Управление 3 кнопками
- Управление по WiFi через веб интерфейс
- Возможность подключения как к вашей WiFi сети, так и создание точки доступы на самой лампе.
- Обновление прошивки через веб интерфейс
- Поиск доступных wifi сетей в веб интерфейсе возможность подключения к ним
- Сохранение учетных данных вашей сети WiFi в eeprom памяти
Для сборки лампы вам понадобятся следующие компоненты:
- Около 50 см RGB светодиодной ленты WS2812b плотностью 144 светодиода на метр
- 3 тактовые кнопки
- Небольшой кусок макетной платы для размещения кнопок 30х15 мм
- Wemos D1 Mini
- Провода для соединений
- MicroUSB разъем
- USB зарядное устройство для мобильного телефона 5В 3А. Пиковое потребление лампы около 2.8 на максимальной яркости белого света
- Штатив для мобильного телефона По цене выходит следующее. Метр светодиодной ленты стоит в районе 600 рублей. Кнопки идут по 3 рубля за штуку. Wemos D1 Mini около 150 рублей. Разъем micro USB - 10 рублей. Макетная плата около 30 рублей. Провода взял от куска витой пары 5 см. Плюс на корпус понадобится около 80 грамм черного PETG пластика - это где-то 100 рублей. И 30 грамм белого для рассеивателя- около 40 рублей. Штатив для мобильного телефона в FixPrice продается примерно за 300 рублей. Итоговая сумма с расчетом израсходованных материалов будет равна 600/2 + 3*3 + 150 + 10 + 30 + 100 + 40+ 300. Это примерно 950 рублей.
Общая принципиальная схема проекта представлена на рисунке ниже:
Я пошел по самому простому варианту и напечатал корпус на 3д принтере. Если хотите пойти по моим стопам, то в папке 3d архива проекта есть все необходимые файлы для печати. Печатал, как обычно черным PETG, плотность заполнения 15%. На рисунке ниже фото всех необходимых деталей. Если 3д принтера нет в наличии, то можно попробовать сделать их из картона или фанеры. В общем широкий простор полета мысли.
Рассеиватель или верхнюю крышку для корпуса печатал также на 3д принтере из белого PETG с плотностью заполнения 15%. В целом со совей задачей рассеивания света он вполне справляется, но наверно стоит для этих целей использовать PLA. Недостаток PETG выражающийся в повышенной тягучести горячего пластика, дает некоторые дефекты на просвет в виде небольших тонких полос. Хотя тщательная шлифовка должна исправить этот недостаток.
Размещаем кнопки на куске макетной платы, припаиваем их к плате и подпаиваем провода согласно схемы. Далее размещаем светодиодную ленту в корпусе лампы. Чтобы уложить ее по кругу, пришлось разрезать ее на куски по 7 светодиодов. Уложив в корпус, спаял ее снова. Далее припаиваем провода к microUSB разъему и выводам rgb ленты. Далее разъем вместе с кнопками размещаем их в корпусе. Кнопки дополнительно фиксируем стопорной пластиной. Припаиваем провода к ESP8266, заливаем прошивку и тестируем работоспособность: Далее аккуратно укладываем все в корпус, для надежности заизолировав оголенные контакты термоклеем: Далее приклеиваем на суперклей рассеиватель света и закрепляем лампу на штативе с помощью хомута. Общий вид будет следующим:
Теперь поговорим немного о прошивке устройства.
Для сборки прошивки использовались ядра и библиотеки следующих версий:
- Ядро ESP8266 - 2.7.4
- ElegantOTA - 2.2.9
- FastLED - 3.2.9
- EncButton - 2.0
Прежде всего укажите общее количество светодиодов в ленте:
#define LED_COUNT 85 // число светодиодов в кольце/ленте
Далее укажите SSID и пароль для режима точки доступа:
const char* APssid = "RGBRing"; const char* APpass = "12345678";
На этом предварительные настройки прошивки закончены. Подключите внешнее питание в распаянный вами разъем microUSB, подключите через usb разъем на плате ESP8266 к компьютеру и залейте прошивку.
Управлять лампой можно как кнопками так и через веб интерфейс.
Для удобства обозначим кнопки по расположению сверху вниз К1, К2, К3.
- Долгое нажатие К2
- Смена режима работы
- К1 - следующий режим
- К3- предыдущий режим
- Удержание К1 - увеличение яркости
- Удержание К3 - уменьшение яркости
Данный режим активен сразу после включения лампы.
- Короткое нажатие К2 - выбор цвета для изменения. (красный, зеленый, синий). Лампа кратковременно моргнет выбранным цветом.
- Удержание К1 - увеличить интенсивность выбранного цвета
- Удержание К3 - уменьшить интенсивность выбранного цвета
Для управления лампой через веб интерфейc, прежде всего, необходимо подключится к ней по wifi. При первом запуске устройства автоматически создается точка доступа RGBRing с паролем 12345678. Подключитесь к ней со смартфона и передите в браузере по адресу http://192.168.4.1
Веб интерфейс лампы выглядит следующим образом: Помимо всего того, что вы могли делать кнопками здесь также можно запустить режим обновления прошивки и указать параметры подключения к вашей домашней WiFi сети. Также исключительно в веб интерфейсе доступны настройки скорости и цвета эффектов