Arduino

технологии

Лампа на светодиодной ленте с красивыми эффектами

Awesome lamp

Сразу скажу, что проект не мой, а является немного доработанной версией лампы от Alex Gyver, за что ему большое спасибо!

Вот ссылка на оригинальный проект: огненный светильник.

Из изменений:

  • корпус напечатан на 3D-принтере (файлы для печати ниже)
  • разъем для подключения блока питания
  • не сенсорная а обычная кнопка, размещенная сбоку внизу

Лампу делал не с целью улучшения, а в подарок, но решил все-таки добавить описание на сайт - вдруг кому-то пригодится.

Подготовка

Итак, для реализации проекта использовался все тот же плафон из Леруа-мерлен "плафон цилиндр":

    

Все остальное можно заказать у китайцев:

  • Arduino Nano: 1 2 3
  • Адресная RGB-лента WS2812B: 1 2 3
  • Блок питания на 5 вольт (3А, но хватит и 2A): 1 2 3
  • Кнопка (использовал самую большую): 1 2 3
  • Резистор на 220 Ом: 1 2 3
  • Разъем питания использовал такой: 1

Были использованы следующие инструменты:

  • Паяльник (пользуюсь таким давно, идеальный по соотношения цена/качество): 1 2 3
  • 3D-принтер (закрытый корпус, можно печатать и PLA, и ABS без проблем): 1, 2 3
  • Инструмент для зачистки и обжима проводов (фирменный китайский LAOA): 1, 2 3

Сборка

Файлы для печати верхней и нижней части: lamp.zip.

При печати следует учесть, что, хоть размеры подгонялись под конкретный плафон, все же могут быть небольшие расхождения в размерах. Зависит от того, на каком 3D-принтере вы печатаете, с какими настройками и каким пластиком. Поэтому для плотного прилегания плафона к напечатанным частям может понадобится чуть подкорректировать размер моделей и перепечатать, либо применить изоленту/напильник.

Для лампы я использовал 4 куска светодиодной ленты по 10 светодиодов на каждом. У вас может быть другое количество светодиодов, в зависимости от типа ленты. Главное: лента должна быть именно адресная WS2812B.

После печати нижней части можно приступать к сборке. В модели предусмотрено гнездо для кнопки. Сажаем ее туда, приклеив на любой подходящий клей (я использовал клеевой пистолет). Предварительно нужно отломать 2 из 4 ножек, а 2 оставшиеся должны пропускать ток при нажатии (они расположены рядом). Просовываем их в отверстие сверху от углубления. И вставляем разъем питания.

Lamp DIY step 1    Lamp DIY step 2

Ну и наклеиваем куски ленты. Обратите внимание на то, что наклеивать их нужно одинаково, контактами DO вниз. Так как при использовании ленты она нагревается, я после всей остальной сборки закрепил ленту небольшими хомутами, через каждые 2 светодиода, чтобы она не отклеилась.

Lamp DIY step 3

Далее - спаиваем 4 части адресной ленты - контакты 5v, gnd и сигнальный. Как именно - подробно показано в видео на странице оригинального проекта. Если вы только учитесь паять - не следует бояться паять адресную ленту, паяется все она очень легко. Единственный совет - я использую жидкий флюс ЛТИ-120. Он в разы лучше, чем твердая канифоль. Наносить его удобнее всего кисточкой от лака для ногтей. Также он не является активным, поэтому после его применения не нужно очищать контакты.

Lamp DIY step 4

Вся остальная сборка делается по инструкции оригинального проекта, там все подробно показано, а также есть схема, что и как спаять. Разница только в использовании механической кнопки, припаять ее нужно к разъемам gnd (земле) и любому цифровому пину платы.

Код

Код был полностью взять с оригинального проекта. Единственное изменение, которое нужно сделать, это поменять тип используемой кнопки. Для этого в основном файле прошивки (на данный момент это gyverLight_v1.4.ino) меняем строчку 39:

GButton touch(BTN_PIN, LOW_PULL, NORM_OPEN);
на
GButton touch(BTN_PIN, HIGH_PULL, NORM_OPEN);

В общем то и все.

Result