RGB гирлянда на Arduino


Доброго времени суток, товарищи!
В канун прошлого нового года, моя супруга начала жаловаться что ей надоела наша старая одноцветная гирлянда. Я сразу же вспомнил пост комрада Lvr про его гирлянду, еще когда я его читал сразу подумал «о! вот такую штуку точно надо на будущий год собрать!»
Гирлянду хотел преподнести супруге в подарок на новый год, но в эти выходные она предложила нарядить елку ))) что бы пораньше ощутить атмосферу праздника, пришлось доставать рояль из кустов раньше срока.


За основу я взял проект комрада Lvr, ссылка на GitHub. Большое спасибо автору проекта за проделанную работу! Так же благодарю комрада Dimon за консультации.

Что использовалось для проекта:
1. Адресные светодиоды 1 713,09 руб
Лента представляет из себя два отрезка по 50 модулей (во влагостойком исполнении). Соединяются между собой 3х пиновым разъемом, так же с каждого конца есть провода для подачи дополнительного питания.
Каждый модуль это RGB светодиод с контроллером WS2811, яркость светодиодов, подключенных к WS2811, управляется последовательным цифровым кодом, который формируется микроконтроллером. Данные при этом передаются всего лишь по 1 проводу. Цифровой сигнал управления проходит сквозь микросхему WS2811, так что несколько микросхем WS2811 могут быть объединены в длинную цепочку с сохранением возможности управлять каждым светодиодом в цепочке по отдельности.
В нашем случае модули соединены трехжильным проводом, цвет которого можно выбрать при заказе, расстояние между модулями 10 см. На странице продавца нет информации о сечении проводов, изоляция из ПВХ и пахнет очень резко, я проветривал ее в кладовке дня 4 наверное.
2. Провод трехжильный 320,88 руб
По скольку располагать блок питания под елкой не хотелось, а провода на концах ленты тоже всего по 10 см, приобрел на али 5 метров трехжильного провода сечением 18AWG. К сожалению не нашел зеленого цвета, по этому заказал еще нейлоновую оплетку для провода.
3. Оплетка для кабеля 468,51 руб (помимо эстетической миссии так же дополнительно защищает питающие и управляющий провод от клыков домашних питомцев)
4. Ардуино нано 150,39 руб
5. Блок питания 770 руб
Блок питания выбирал так:
Питаются модули от напряжения 5 В, заявленное потребление тока 60 мА, но я рассчитывал исходя из потребления 50 мА т.к. на полную яркость белым светом все 100 диодов зажигать мы не будем. 50mA * 100 штук = 5000 mA = 5 ампер. По таким параметрам и подбирал БП, а т.к. хотел спрятать его в корпус с ардуиной то искал в соответствующем исполнении.
6.3D печать корпуса примерно 150 руб (корпус «проектировался» в OpenScad, вот ссылка на оригинальный проект параметрического корпуса для самоделок)

Схема подключения проще некуда:


Управляющий сигнал уходит на средний провод гирлянды с пина D2, но в принципе можно назначить любой другой, только нужно не забыть поправить в прошивке значение "#define PIN 2" (в файле «anim.h», 6я строка) на нужный нам.

Я не хотел делать все навесным монтажом, и давно хотел попробовать сервис разработки и изготовления печатных плат, так что заказал плату. Практического смысла в этом нет ни какого.

И того, плату с адруиной и блок питания я поместил в корпус напечатанный на 3D принтере. Питание от розетки подал на блок питания кабелем с вилкой от компьютера, с блока питания подал питание на плату с ардуиной. С этой платы питание и управляющий сигнал пошел на гирлянду. На проводах гирлянды «минусовый провод» маркирован так что ошибиться при монтаже достаточно сложно, нужно лишь помнить что центральный провод это провод управления.





Нормальных кабельных выводов я в оффлайне не нашел, по этому в ход пошли какие-то гильзы из леруа. Крепил все на термоклей + силиконовые ножки на низ корпуса.

Просадка напряжения на конце гирлянды существенная, напряжение падает до 3,8 В. Однако заметной на глаз разницы в яркости диодов я не заметил и по этому забил. К тому же уж очень не хотелось тащить провода питания к концу гирлянды.

Автор проекта реализовал управление всей этой радостью по bluetooth и даже написал приложение в котором можно выбирать анимации и цветовые палитры. Но автор использовал модуль HC-05 а он не совместим с iOS устройствами которые водятся у нас дома. В теории можно заменить модуль на HM-10 и модифицировать прошивку, тогда можно будет посылать на ардуину команды из BT терминала с iPhone. Но эту задачу я пока оставлю в планах на будущее.

Общая длинна гирлянды получилась +- 10м сама гирлянда + 1,5 метра подводящие провода. На елку ростом 170 см ее как раз хватает.

По программной части мне особенно сказать нечего, все очень хорошо описано автором тут и тут.

Не забудьте указать основные параметры в файле «anim.h»

#define PIN 2 // WS2812 pin number
#define LEDS 100 // number of LEDs in the strip 
#define BRIGHTNESS 256// brightness adjustment, up to 256


В не управляемом варианте, как у меня, ардуина случайным образом перебирает все анимации (9 штук) и так же случайно выбирает для них цветовые палитры (7 штук). Что дает достаточно большое разнообразие и выглядит красиво.
Да, гирлянда запитана от WiFI розетки сяоим :) Так что номинально она тоже управляемая ))))))

В итоге получилось ну очень небюджетно, раза в два дороже чем можно было бы купить в офлайне. Однако то что я видел в магазинах было как-то скучно что ли. А эта гирлянда действительно «радует» :) Прежде чем закидывать пост минусами посмотрите демонстрацию работы гирлянды и если после этого вы не измените свое мнение, ну что же — значит мы просто очень по-разному смотрим на мир.
Всех с наступающим и всех благ! :)



Хвостатый бонус
Планирую купить +24 Добавить в избранное +36 +62
+
avatar
+22
Честно, не увидел тут ни обзора, ни DIY. Больше похоже на хвасталку в духе отзывов на Aliexpress… Ни слова про товары, не приведен код, который заливался в ардуину. Как собиралось, куда подключалось, практические рекомендации в конце концов. В итоге: полезная составляющая стремится к нулю.

Посмотрите эти обзоры:
mySKU.me/blog/ebay/58417.html
mySKU.me/blog/aliexpress/58913.html

Они тоже максимально краткие, но из них можно извлечь массу полезной информации. А из вашего?
+
avatar
0
Вот здесь неправильно подключили esp8266 к ленте mySKU.me/blog/ebay/58417.html
+
avatar
-5
+
avatar
  • sir0ta
  • 23 ноября 2018, 00:39
-1
Так и постить вам не было ни какого смысла в таком случае! На кой опус если ни в чем смысла нет?
+
avatar
0
Попытался немного исправиться.
+
avatar
0
Какого калибра провода там? Какое напряжение падает на последний диод? Что то мне подсказывает что запитывать эти 10 метров желательно с двух сторон.
+
avatar
  • Saloed
  • 22 ноября 2018, 12:43
0
На первичной анимации видно как идёт падение
Нужно запитывать с двух сторон
+
avatar
0
На глаз я не смогу определить, а продавец не указывал этот параметр. В одном из обзоров писали что в описании товара 20 AWG.
Напряжение проседает до 3,8 В.
+
avatar
  • Frolv
  • 22 ноября 2018, 09:33
+1
А если ленту с WS2812 нарезать посветодиодно? Надо подумать как каждый элементик упаковать… Может в старую новогоднюю гирлянду?
+
avatar
+1
так продаются же отдельными элементами, даже влагозащищенными
+
avatar
  • Frolv
  • 22 ноября 2018, 09:52
0
Ленты уже есть в наличии. Отдельно покупать — приехать не успеют до НГ.
+
avatar
0
А можно ссылку?
+
avatar
  • Frolv
  • 22 ноября 2018, 10:17
0
ссылку на что?
+
avatar
0
Тыц
Так понимаю что речь о чем то таком
+
avatar
0
Я хотел бы точно такую же, только в прикольном корпусе
+
avatar
0
а для них есть вроде как держатель с рефлектором, этож стандартная платка для диодов
+
avatar
  • lsa1nik
  • 22 ноября 2018, 09:48
+1
Может в прозрачную термоусадку, с запасом для проводов?
+
avatar
0
Если есть много свободного времени на упаковку каждого элемента и пайку проводов между ними, то конечно можно и нарезать. Работать будет.
+
avatar
  • Serg32
  • 22 ноября 2018, 09:34
+4
Схема простая, но все равно стоит опубликовать.
+
avatar
  • AlexVel
  • 22 ноября 2018, 09:47
+2
У Вас в проекте как такового управления нет? На гитхабе там вроде как дополнительный модуль блютуз и управление через него со смартфона используется. У Вас, насколько я понял, блютуза нет — т.е. какие эффекты зашили в ардуино, такие и будут использоваться?
+
avatar
0
Так сложилось что у нас в семье только блокофоны и подключиться к модулю используемому в оригинальном проекте не выйдет. Нужен другой модуль и модификация прошивки, тогда можно хотя бы с БТ терминала отправлять команды. Ну либо написать приложение для iOS, это все в планах.
+
avatar
0
Гспди, здоровые-то какие…

А почему не на PL9823? или аналогах?
Точно лучше бы смотрелось.
+
avatar
  • koalexx
  • 22 ноября 2018, 10:04
+3
в эти выходные она предложила нарядить елку ))) что бы пораньше ощутить атмосферу праздника
… все раньше и раньше… скоро с июня НГ начнем ожидать и елки ставить (это в бОльшей степени к гипермаркетам всяким относится)… :(
+
avatar
+1
Собрал гирлянду по этому обзору
mySKU.me/blog/aliexpress/58913.html
БП ткаой
https://ru.gearbest.com/development-boards/pp_189255.html?wid=1433363
корпус такой
ru.aliexpress.com/item/-/32857413777.html?spm=a2g0s.9042311.0.0.274233edrsI86g
теперь дело за белой ёлкой ))
+
avatar
+1
Чем коробка у нас не угодила? Дешевле почти в 3 раза.
+
avatar
+1
В москве и мо реально приобрести фабричный вариант Twinkly с управлением со смартфона в магазинах «твой дом». Сейчас она правда стоит в два раза дороже чем этот DYI комплект, но перед самым НГ цены на них стремительно падают. В прошлом году купил 105-ти ламповую за 4800. После НГ была еще дешевле.
+
avatar
0
Навороченная штука :)
+
avatar
+1
Не знаю как у Вас, но лично я больше удовлетворения получая, собирая подобные вещи самостоятельно. Купить для меня — слишком просто, да и просто дороже, как Вы уже заметили.
+
avatar
0
Я тут недавно наталкивался на проект со светодиодной матрицей, приложением для андроид и рисованием почти как в этой Twinkly. По сути там те же адресные диоды использовались, так что нечто подобное вполне можно реализовать самому.
+
avatar
+1
Да, гайвер там обещал на окно экран выкатить скоро, хотя тут на муске они уже пару лет как есть в обзорах.
+
avatar
+1
Все равно любопытно будет взглянуть :)
+
avatar
0
Это была информация для тех кто не способен получить удовольствия скручивая 100 источников света в гирлянду, но хотел бы разнообразить свою «новогоднюю» жизнь. После нового года эта гирлянда стоила 3500, что дешевле этого комплекта при этом она более функциональна чем этот комплект.
+
avatar
  • sergey73
  • 18 декабря 2018, 11:24
+1
Налетай, подешевело! )))

+
avatar
  • ABATAPA
  • 22 ноября 2018, 10:19
+3
По традиции размещу здесь это:
+
avatar
  • makon
  • 22 ноября 2018, 10:32
+2
В топку Ардуино. Я просто оставлю это здесь
Из неочевидного — обязательно сделать согласование уровней 3.3 -> 5. На полевике хорошо работает.
+
avatar
0
а можно подробнее про это не очевидное?
+
avatar
  • makon
  • 22 ноября 2018, 14:00
0
При питании 12В ленты от компа и подаче 3.3 лог уровней на вход ленты все работает без проблем. При питании этого хозяйства от отдельного 12В БП происходят ужасные глюки. При переходе на сигнальный уровень 5В все стабилизировалось.
+
avatar
0
ммм, ну просто тут все питается от 5В.
+
avatar
  • makon
  • 22 ноября 2018, 14:09
0
Я не люблю 5В для длинных лент (ну можно я и эти модули с проводами буду лентой звать?). Просадка напряжения к концу ленты начинает делать свое дело и последние светодиоды горят ощутимо менее ярко. Возможно в динамике этого и не видно, но вот такой я капризный, перестраховался и взял на 12В. Плюс указанный мной проект, имхо, побогаче на возможности. Куча эффектов, включение-выключение, таймер отключения, любимые пресеты, управление с любого браузера, наличие мобильной версии управлялки (пока через браузер) и т. д.
+
avatar
+1
Нет, ни кто не спорит что проект отличный. Но это вот прямо первый мой опыт с контроллерами, и решил начать с чего попроще. И вопрос мой был вызван именно тем что если я чего-то не понимаю, то хотел бы это понять.
+
avatar
  • repon06
  • 22 ноября 2018, 13:53
0
тоже не понял, зачем Ардуинка, когда все силами одной ЕСПхи можно сделать.
+
avatar
0
На одном полевике? нет, не очень хорошо. Длинные фронты.
+
avatar
  • makon
  • 22 ноября 2018, 17:19
0
Прекрасно работает, просто замечательно
+
avatar
0
Лучше осциллограмму покажите.
+
avatar
  • makon
  • 22 ноября 2018, 18:02
0
уже не смогу
+
avatar
  • makon
  • 08 февраля 2019, 16:44
0
Оживлю некропост :) Только собрал другому человеку. На шумы не смотрите, у меня тут в 3,8 км /Останкино на прямой видимости (моя метрологическая боль)…




+
avatar
  • ssurneed
  • 09 февраля 2019, 19:57
0
)) и что это за осциллограммы? 3,3v с выхода ардуинки или esp?
+
avatar
  • makon
  • 09 февраля 2019, 22:39
0
Это сигнал на входе ленты. Таки претензии к фронтам есть?
+
avatar
  • ssurneed
  • 10 февраля 2019, 00:23
0
А что они 3.3v? Должны же 5v быть
+
avatar
  • makon
  • 12 февраля 2019, 10:04
0
Ждите ответа :) Надо же свою ленту убранную достать :)
+
avatar
  • alivan
  • 22 ноября 2018, 14:54
0
А можете для чайников нарисовать-написать как сделать, например в WLED управляющий идет на GPIO2, а как согласовать все на 12 вольт то?
+
avatar
  • makon
  • 22 ноября 2018, 17:13
+2
12 Вольт только питание. Сигнал же лента хочет 5В. А ЕСПха у нас 3.3 выдает. Поэтому сигнал подключаем по этой схеме:
+
avatar
0
Дайте осциллограммы.
Ну хотя на WS2811 400 кГц может ещё и ни чего, а вот с ws2812 у которых 1 МГц я что то сильно сомневаюсь…
+
avatar
+1
И кстати какой длинны гирлянда получается, а то ни у продавца ни у Вас не нашел… :(
+
avatar
0
Да, померить длину до наматывания на елку не успел. Елка высотой 170 см, двух сегментов по 50 диодов хватило аккурат на данный размер.
+
avatar
  • Lagros
  • 22 ноября 2018, 10:51
+1
Исходя из того, что расстояние между светодиодами 10 см., а светодиодов 100 шт, длина гирлянды около 10 метров.
+
avatar
0
Могу вечером измерить. Лежит до выходных, а там тоже паять буду. Кстати, по поводу придет/не придет к НГ — заказанные с али светодиоды дошли за 2,5 недели, так что если есть желание — собрать успеете. БП заказывал вместе со светодиодами, а вот ардуина одна из двух заказанных до сих пор не пришла, но цена небольшая, поэтому решил не рисковать и заказал две. Заказывал тут, трек для подтверждения срока доставки RB628122779SG.
+
avatar
  • Saloed
  • 22 ноября 2018, 13:10
+1
Между диодами ~7см

Тут Немного дешевле диоды. В Беларусь пришли ровно за месяц.
+
avatar
0
В Беларусь пришли ровно за месяц.
Дешевле-да. Но, доставка(как Кольт!)-делает цену «в пипец»:-(
+
avatar
  • Kostja
  • 22 ноября 2018, 16:19
0
Три метра
+
avatar
+16
Господа-а-а...-да что ж вы такие злые-то? Вот никак вам не угодить..-то жемчуг мелок, то блестит не так!
Ну, поставил человек ёлку, детей радует, создаёт настроение и себе, и окружающим! Что, лучше трусами на голой заднице восхищаться, или бесконечно мусолить тривиальные фонарики(-о-о-о! новая кнопка! на целый метр дальше!..)...??!
Пусть будут и гирлянды, и фонарики, и трусы, наконец!-каждый выберет то, что ему ближе и родней
Автору-за обзор!-спасибо. Концепция понравилась, а дальше можно и прикинуть, что лучше «допилить» самому и под себя.
+
avatar
  • dsprts
  • 22 ноября 2018, 12:58
+1
ух. новый год скоро. все ставим елки
+
avatar
+2
Премного благодарен активным «минусаторам»..-я, джентельмены, даже от вашего негатива получаю позитив! ;-)
Бо, знаю(-не гонясь за статусами\медалями и званиями от рождения..), что обычно это те, кто даже грамотно не может описать корень своих бед в развитии… Желаю Вам успехов!(в «искромётном юморе» при обсуждении нижнего белья и строения «женских прелестей»)…

P.S.: Я, кстати, ёлку не поставил, но,-посадил..-перед окнами, метрах в 5-ти. Уже вымахала под 3 метра! Скоро принаряжу, гирляндочку накину, снег на ней сам появится(надеюсь)… Ляпота-а-а!
+
avatar
+2
Вот мой вообще не бюджетный вариант подобной гирлянды
youtu.be/LCAvk0hPD-Y
Тоже скорее похвастаться)))
+
avatar
0
Прикольно!
+
avatar
  • qedroo
  • 22 ноября 2018, 14:43
0
А можно поподробнее про корпус? Я хочу сдельтт светофор из ардуино и матричных модулей max7219
+
avatar
0
С корпусом все просто. Качаете OpenScad, качаете с www.thingiverse.com файл корпуса, открываете его в OpenScad, меняете параметры (размеры, вентиляционные щели, скругления) по своему вкусу и экспортируете stl файлы. Их уже печатаете где больше нравится.
Раньше можно было прямо на сингеверс в веб приложении «кастомайзер» настроить модель, но оно давно уже не работает отчего-то.
+
avatar
  • qedroo
  • 22 ноября 2018, 20:04
0
А где автор за 150₽ распечатал? Я на авито зашел, а там по 8₽ за см. берут.
+
avatar
0
По объявлению, у себя в городе.
+
avatar
  • sayser
  • 22 ноября 2018, 15:25
0
А никто в продаже не встречал корпусов под ардуинки нано или про мини?
+
avatar
  • Kostja
  • 22 ноября 2018, 16:09
+1
Тоже похвалюсь.Может кому-то и мой проект будет интересен.Ему уже второй год.Видео с 50 светодиодами, сейчас удлинил до 100 светодиодов.
youtu.be/a033JcsHJ8g
+
avatar
0
А где можно скетч скачать, для гирлянды?
+
avatar
+3
В итоге получилось ну очень небюджетно
Зато каждый НГ я заливаю новую программу моргания с Муськи и устройство не надоедает.
+
avatar
+1
Соглашусь :)
+
avatar
  • alexys
  • 23 ноября 2018, 16:19
0
А может, кто подскажет. Почему не работает?
Компилируется, загружается. Arduino Nano 328.
Стою осцилом на втором пине, и тихо.
Не могу понять почему. Может версия IDE нужна старее?
+
avatar
  • Worker
  • 23 ноября 2018, 17:30
0
Вот недавно только брал 50 шт WS2811 и вот ESP8266 Ну так как я раньше с Ардуино не работал (как впрочем и с другими микроконтроллерами) наловил кучу подводных камней. Зато опыт получил огромный.
Весь товар пришел за 16 дней. Гирлянду доставил СДЭК, а ESP обычной почтой.
+
avatar
  • Lagros
  • 23 ноября 2018, 22:58
0
Страница не найдена.
+
avatar
  • Worker
  • 24 ноября 2018, 10:59
0
Может так лучше будет
WS28211

ESP8266
+
avatar
  • alexys
  • 23 ноября 2018, 18:58
0
С другими скетчами моя ws2812 работает.
А может быть потому что загрузчик старой версии?
+
avatar
+1
Я вот по этой статье делаю НОВОГОДНЮЮ ГИРЛЯНДУ на ЁЛКУ
stephenculley.blogspot.com/2018/09/arduino-project-fx-v10e-publicrelease.html
+
avatar
  • alexys
  • 23 ноября 2018, 23:07
0
обязательно попробую
+
avatar
  • sayser
  • 24 ноября 2018, 14:36
+1
Ох… как-то не просто там всё. Может поделитесь опытом по итогу?
+
avatar
  • slvr73
  • 23 ноября 2018, 23:06
0
Светодиоды WS2812 на данный момент времени вне конкуренции!!!
+
avatar
  • alexys
  • 23 ноября 2018, 23:08
+1
С этим скетчем все заработало
github.com/Vasil-Pahomov/ArWs2812/tree/before_bluetooth
+
avatar
0
да, где-то в коментах к посту автора прошивки уже проскакивало что не на всех ардуинках она компилируется нормально. не хватает памяти на некоторых моделях. а вот версия прошивки без управления по БТ влазит нормально и компилируется без ошибок.
+
avatar
0
Я правильно понял — длинна получившейся гирлянды составляет 10м? Блин, это не многовато?
Ps: ТС, судя по нику вы с Тюмени? Если так, то привет землякам, я из Кургана :)
+
avatar
0
Точно так, Тюмень :) Привет землякам! :)
По длине, померить ее я не успел, продавец заявляет что м/у модулями 10 см, люди тут в комментариях показывали замеры 7 см… так что длинна самой гирлянды должна быть от +-7 до +- 10 м. По поводу не много ли, для елки ростом 170 см в самый раз. Будь она чуть короче уже было бы мало.
+
avatar
0
Подскажите у меня есть Гирлянда на WS2811 и есть ESP8266 что-то нужно править в скетче?
github.com/toblum/McLighting
что бы можно было запустить светодиоды WS2811
+
avatar
0
Здравствуйте!
В ридми пишут:
The project is based on the ESP8266 and WD2811/WS2812 LED strips.
т.е. должно работать на WD2811.

В скетче:
строка 78 WS2812FX strip = WS2812FX(NUMLEDS, PIN, NEO_GRB + NEO_KHZ800);
Описание параметров:
// Parameter 1 = number of pixels in strip
// Parameter 2 = Arduino pin number (most are valid)
// Parameter 3 = pixel type flags, add together as needed:
// NEO_KHZ800 800 KHz bitstream (most NeoPixel products w/WS2812 LEDs)
// NEO_KHZ400 400 KHz (classic 'v1' (not v2) FLORA pixels, WS2811 drivers)
// NEO_GRB Pixels are wired for GRB bitstream (most NeoPixel products)
// NEO_RGB Pixels are wired for RGB bitstream (v1 FLORA pixels, not v2)

т.е. для WS2811 нужно использовать параметр NEO_KHZ400
WS2812FX strip = WS2812FX(NUMLEDS, PIN, NEO_GRB + NEO_KHZ400);

Что бы понять какой из параметров NEO_GRB или NEO_RGB подойдет к WS2811 нужно читать описание библиотеки WS2812FX. (но скорее всего подойдет NEO_RGB)
Параметры NUMLEDS, PIN, определяются в файле definitions.h (начиная с 4й строки).