
Ранее я уже делал подобные проекты, но в этот раз я хотел сделать что-то попроще, то, что будет легким в изготовлении, и то, что смогли бы сделать многие из вас. "Механические" части лампы печатаются на 3D-принтере, электронная часть довольно проста, а пластиковое оптическое волокно притягивает взгляд. Сейчас я расскажу, как легко и просто изготовить такую светодиодную лампу.
Шаг 1. Детали, необходимые материалы
Много картинок компонентов











Детали, распечатанные на 3D-принтере, файлы tinkercad;
Пластиковое оптоволокно бокового свечения. Толщина – 3 мм, длина – примерно 5 м;
Адресные светодиоды WS2812 (изготавливаются из ленты, 60 светодиодов на 1 м) – 32 шт.;
Arduino Mini Pro микроконтроллер 5 В – 1 шт.;
Нажимная кнопка 12x12x7,3 мм – 1 шт.;
Кабель питания 5 В с вилкой постоянного тока 5,5x2,5 мм – 1 шт.;
Кабель питания 5 В/1 А со штепсельной вилкой 5,5x2,5 мм – 1 шт.;
И ещё немного по мелочи: провода, термоусаживаемые муфты для соединений и клей для горячего склеивания.
Если у вас нет опыта работы в tinkercad, прилагаю файлы stl:
Шаг 2. Электрическая схема

Как видно из рисунка, cхема устройства чрезвычайно проста.
Шаг 3. Сборка
Много картинок сборки












Я начал с 3D-печати компонентов. Сам процесс занимает довольно много времени, поэтому во время печати компонентов я занимался тем, что соединял друг с другом части светодиодной ленты. Перед установкой паяных деталей желательно проверить правильность работы светодиодов в соответствии с инструкциями, приведёнными на шаге 3 проекта "Волоконная оптика и светодиодные лампы – Украшение стен" (единственное, что я изменил, – это значение DATA PIN на 5 и NUM_LEDS на 32).
После завершения печати рамы последовала самая сложная часть – установка и крепление в каналах рамы лампы четырёх полосок светодиодной ленты по 8 светодиодов в каждой. Я чуть-чуть приподнял защитный пластик самоклеющегося слоя светодиодной ленты и для более точной фиксации использовал несколько волоконно-оптических концов, вставленных через боковые отверстия. Затем я аккуратно снял защитный слой и, прижав ленту к раме, закрепил её. На фотографиях выше эти операции показаны в деталях.
После этой процедуры я вставил в боковые отверстия несколько кусков пластикового оптоволокна. Я вырезал куски как можно более перпендикулярно, используя тот же шаблон, что и в проекте "Волоконная оптика и светодиодные лампы - Украшение стен". Получилось 8 отрезков волокна, всего 16 отрезков разной длины соединяют пары отверстий, находящихся на одинаковом расстоянии от боковых сторон рамы лампы (см. фотографии выше).
Остальные соединения я сделал в соответствии с электронной схемой, затем установил опору лампы и зафиксировал её большим количеством клея для горячего склеивания, нажимную кнопку я прикрепил также с помощью клея для горячего склеивания (это надо делать после установки нажимного штифта), после чего в соответствующем месте опоры закрепил модуль Arduino Pro Mini. Вот и всё!
Шаг 4. Программное обеспечение


Последний шаг в изготовлении лампы – загрузка программы на микроконтроллер Arduino. Как видно из фотографий выше, я использовал адаптер с USB-порта на последовательный порт с подключённым чипом FT232RL. Естественно, загрузить код можно с помощью других адаптеров с USB-порта на последовательный порт. О технике программирования модуля Arduino Pro Mini есть много статей в Интернете.
Исходный код программы можно загрузить отсюда: github.
Несколько слов о программе…
Лампа работает в трёх основных режимах, которые можно выбирать двойным нажатием на кнопку: режим сплошного цвета (с эффектом "дыхания"), режим палитры и режим эффектов. Однократным нажатием на кнопку в режиме сплошного цвета выбираются различные цвета (9 цветов) также с эффектом "дыхания", в режиме палитры выбираются несколько цветовых палитр, которые можно взять здесь: PaletteKnife для FastLED, а в режиме эффектов выбираются… да, вы правы, эффекты:)
Программа представляет собой адаптированные коды из FastLED Breath для создания эффекта "дыхания", коды из palettes with button control для создания различных цветовых палитр и коды из DemoReel100 with button для создания эффектов. Для того чтобы перевести модуль Arduino Pro Mini в спящий режим двойным нажатием на кнопку, я воспользовался инструкциями из следующей статьи. При таком двойном нажатии также сохраняются текущий режим работы и настройки каждого режима работы.
Я воспользовался следующими внешними библиотеками (библиотеки sleep.h и EEPROM.h уже встроены в модуль Arduino): FastLED и ArduinoMultiButton.
Шаг 5. Пользование лампой
Как пользоваться лампой, показано на видео ниже.
Шаг 6. Некоторые выводы
Должен признаться, что я делал эту лампу для себя, так как мне хотелось получить в итоге нечто необычное.

Я поставил лампу на прикроватный столик, пользовался ею несколько дней, и мне она очень понравилась. Я весьма доволен, что лампа в итоге так хорошо себя показала. Однако, возможно, в будущем я внесу в её конструкцию некоторые изменения…
Например, в режиме цветовой палитры я бы несколько понизил яркость или выбрал бы цветовые палитры с меньшей яркостью. Ещё я добавил бы ряд эффектов. Например, добавить шумовой эффект или запитать светодиодную ленту через транзистор MOSFET, снизив тем самым энергопотребление лампы в спящем режиме. Сейчас, если я выключаю лампу двойным нажатием на кнопку, она потребляет около 30 мА, в рабочем режиме она потребляет максимум 400 мА.
Спасибо что прочитали и удачного крафта!

Узнайте подробности, как получить Level Up по навыкам и зарплате или востребованную профессию с нуля, пройдя онлайн-курсы SkillFactory со скидкой 40% и промокодом HABR, который даст еще +10% скидки на обучение.
Другие профессии и курсы
ПРОФЕССИИ
КУРСЫ