ARDUINO Параллельное подключение ARGB-вентиляторов/лент

poty

★★★★★★✩
19 Фев 2020
3,237
942
@zeke14zeke, потому что я говорил не про Ваш код, а про стандартные программы, предлагаемые производителями, в которых можно настроить от какого цвета в какой позиционно распределён спектр.
Если мы перешли плавно к написанию программы, то здесь есть полная необходимость делать такую же регулировку, например, с помощью кнопок или энкодера. При настройке эффекта с помощью этих нехитрых инструментов можно "развернуть" радугу хоть на 9, хоть на 300 диодов. И даже тогда можно не угадать с каким-нибудь навороченным вентилятором. У одного будут две ленты с двух сторон, у другого - отдельная подсветка контура и отдельно - лопастей, у третьего - какой-нибудь зигзаг на проводе для подключения... Собственно, поэтому я и начал говорить про программы, которые вначале строят сцены, а потом этими сценами управляют.
 

kDn

★★★★★✩✩
18 Ноя 2019
1,103
437
3 куска ленты, соединенных как? Параллельно? Мы уже не говорим о параллельном включении. Для меня этот вопрос уже ясен (за исключением гальванической развязки или ее отсутствия контроллеров светодиодов, входы которых соединены, - св-ды, которые первые в каждой ленте)
Ну лично я размышлял об отдельном канале на каждый кусок ленты, поскольку если использовать один канал на все ленты сразу - то тут и обсуждать особо нечего :), аналогично в случае последовательного включения; так как и для параллельного и для последовательно - у вас получается сильно ограниченные возможности, если же независимые каналы - то тут уже можно реализовывать более гибкое поведение, правда ценой более сложного кода, естественно.
 

bort707

★★★★★★✩
21 Сен 2020
3,064
912
Во понаписали, пока меня не было ... @zeke14zeke, похоже, что вы не понимаете, как делается " кручение круга". Возьмем ваш пример с 50 цветами и всего 9 диодами. В первый момент вы посылаете в ленту свои 50 цветов, начиная с нулевого - соответственно и светятся первые 9 цветов. При каждом следующем показе вы смещаете круг на одну позицию, то есть во втором цикле отсылаете цвета не с нулевого, а с 1 -го, потом со 2-го, третьего и так далее. Поэтому и ваш вентилятор в первом цикле показывает цвета 0-8, потом 1-9, далее 2-10 и так пока не пройдет их все. В итоге у вас будет красивый перелив с полным кругом, несмотря на то, что у вас 50 цветов и всего 9 диодов.
И не надо думать, что я это сейчас выдумал - так работают многие покупные RGB контроллеры
 

bort707

★★★★★★✩
21 Сен 2020
3,064
912
Ну лично я размышлял об отдельном канале на каждый кусок ленты, поскольку если использовать один канал на все ленты сразу - то тут и обсуждать особо нечего :), аналогично в случае последовательного включения; так как и для параллельного и для последовательно - у вас получается сильно ограниченные возможности, если же независимые каналы - то тут уже можно реализовывать более гибкое поведение, правда ценой более сложного кода, естественно.
в данном случае особой разницы между последовательным и параллельным соединением не будет , так как число светодиодов по определению невелико а эффекты в основном медленные, в итоге даже если соединить десяток вентиляторов последовательно - на скорости "кручения круга" :)это не скажется
 

kDn

★★★★★✩✩
18 Ноя 2019
1,103
437
@bort707, я же вроде пояснил что рассматривал вообще не способ подключения как таковой, а сравнивал поведение в многоканальном варианте, где отдельный канал на каждую ленту. Все каналы могут крутить как один эффект, так и разные. Что у вас подразумевается под "медленным" эффектом я вообще не в курсе, да мне и не интересно, если честно. По свободному времени может соберу стенд для проверки теории, но явно не сегодня и не завтра, поскольку есть другие развлекухи :)
 

bort707

★★★★★★✩
21 Сен 2020
3,064
912
@kDn, ну а что там проверять, понятно что многоканальный вывод быстрее. Просто далеко не в каждом проекте он нужен. Напомните, я вам показывал картинки своей матрицы 90х88? - вот где реально нужно много каналов, иначе все просто будет ползать...
 

kDn

★★★★★✩✩
18 Ноя 2019
1,103
437
@bort707, еще раз. Я вообще ничего не говорю о скорости, пока суммарное число диодов не превышает пару сотен, то получить 50+ кадров в секунду не проблема ни разу, а говорю я о другом - возможности вывода различных эффектов одновременно на различные ленты. Т.е. одна лента выводит радугу, другая - заливку цветом, третья - просто мигалка, четвертая зависит от температуры, а пятая от звука.

Так понятно?
 

bort707

★★★★★★✩
21 Сен 2020
3,064
912
@kDn, так понятно, не понятно зачем для вывода "разных эффектов на разные куски" обязательно подключать эти куски к разным пинам?
И что именно вы собрались тестировать, этот функционал в Фастледе есть из коробки

Оффтоп - чего раздражаться-то? Не хотите - не пишите
 

kDn

★★★★★✩✩
18 Ноя 2019
1,103
437
Оффтоп - чего раздражаться-то? Не хотите - не пишите
Я не раздражаюсь совершенно))). Не у меня же проблемы с пониманием. Если вы подумаете немного, то самостоятельно найдете ответ на вопрос вида: "почему подключать разные каналы на разные пины" правильнее и проще чем делать эмуляцию разных каналов на одном пине. Я вас верю, начинайте думать :).
 

bort707

★★★★★★✩
21 Сен 2020
3,064
912
@kDn, я рад, что вы в меня верите, постараюсь не подвести, тем более что я давно без проблем применяю многоканальное подключение в своих проектах...
На самом деле мы могли бы оказаться полезны друг другу - вы б мне про вебморды, я бы вам про каналы...:)
Шучу, не возбуждайтесь.
 

zeke14zeke

✩✩✩✩✩✩✩
23 Июн 2021
12
0
Поэтому и ваш вентилятор в первом цикле показывает цвета 0-8, потом 1-9, далее 2-10 и так пока не пройдет их все
И в каждый момент времени вы теряете 41 оттенок.
Про кручение - да, я просто затупил. Но при вашей "схеме" вы будете наблюдать (в определенный момент или отрезок времени) только определённый сектор цветового круга. Если вы поставите паузу (хотя бы полсекунды) между сменой начального элемента массива [50], вы сможете даже узреть это. А если без паузы - будет мигающее говно
 

kDn

★★★★★✩✩
18 Ноя 2019
1,103
437
На самом деле мы могли бы оказаться полезны друг другу - вы б мне про вебморды, я бы вам про каналы...:)
Все кто работают над фреймворком или проектами со мной совместно - полезны, все кто отвлекают - не особо полезны. Будет желание работать - присоединяйтесь, опенсорс такая штука, что двери для любого открыты. Моя позиция простая - я подскажу и помогу любому, просто так, даром :) , требуется лишь одно - потратить немного времени, чуть сил, попробовать, задать вопросы.

Если же мне потребуется от вас помощь, то я обращусь. Пока таковая не требуется. И я кстати ни секунды не шучу. Любой участник форума может присоединиться в любой момент как к нашей работе, так и стартануть свою работу, взяв за основу наши наработки. В случае лампы лицензия GPL - чтобы код всегда был открыт, а в случае фреймворка - MIT - тут попроще и итоговый код может быть закрытым. Коммерческую же разработку допускают оба проекта, от любых материальных претензий я уже несколько раз отказался и не собираюсь пересматривать свою позицию.

Другое дело, что кругом лентяи. Лентяй ли вы - решать вам. :)
 

bort707

★★★★★★✩
21 Сен 2020
3,064
912
И в каждый момент времени вы теряете 41 оттенок.
это же вы сами выбрали круг на 50 оттенков при том что у вас всего 9 диодов. Вам выше уже сказали, что при таких установках вы ни при каком типе подключения не увидите всех цветов одновременно.
Возьмите период круга поменьше - например 10 оттенков, расположите их циклично на длине в 50 пикселей - и у вас на вашем вентиляторе всегда будет 90% радуги. При этом возможность подключать хоть 1 вентилятор, хоть 3,хоть 5, не настраивая каждый раз число светодиодов - останется.
Я к тому, что придумывать какой-то заумный способ определять число светодиодов по току - совершенно незачем.
 

zeke14zeke

✩✩✩✩✩✩✩
23 Июн 2021
12
0
Короче, закрываю вопрос с RGB Fusion. К одному ARGB коннектору матери подключил только PCCooler CORONA max FRGB (кольцевая подсветка с большим количеством светодиодов) , ко второму - только Cooler Master SickleFlow ARGB (центральная подсветка с малым количеством светодиодов). Попереключал эффекты эффекты на кажом и остановился на одном - Digital Wave (на каждом), чтобы якобы "сбросить" настройки (если они сохраняются). Digital Wave выводит цветовой круг.
На PCCooler цветовой круг выводится 2 раза (по одному на каждую половину окружности). Ровно 2 раза или почти 2 раза (сложно определить).
А на Cooler Master - менее одного раза, причем коэффициент сильно меньше 1 (примерно 0.5). Сначала одна часть цветового круга, потом это все плавно перетекает в "конец" цветового круга.

Таким образом, RGB Fusion НЕ ОПРЕДЕЛЯЕТ количество светодиодов на каждом выходе контроллера, а удачное количество светодиодов у PCCooler ввело меня в заблуждение.

Считаю все вопросы закрытыми.
 

Barovka

✩✩✩✩✩✩✩
10 Янв 2022
3
0
Ну что ж...) Господа @kDn, @poty, @bort707, @zeke14zeke.

Очень хочется взять несколько ARGB вентиляторов, подключить их к разным пинам на NodeMCU \ ArduinoNano (так как цепочку не собрать, из-за отсутствия хвоста лент "DO") и "срастить" эту ленту в одну длинную адресную. (вот похожее https://community.alexgyver.ru/threads/mnogokanalnost-ehffektov-dlja-ws2812.3785/ )

Если так сделать, то любой проект типа gayverTwink или Lamp v2 - можно было бы адаптировать под использование с несколькими несоединяемыми "обрезками"...

А в идеале получить что то такое:

Есть идеи? при условии что кол-во светодиодов в одной ленте известно :) (=18 шт)
 
Изменено:

kDn

★★★★★✩✩
18 Ноя 2019
1,103
437
Очень хочется взять несколько ARGB вентиляторов, подключить их к разным пинам на NodeMCU \ ArduinoNano (так как цепочку не собрать, из-за отсутствия хвоста лент "DO") и "срастить" эту ленту в одну длинную адресную.
Вам хочется странного. Если есть желание выкинуть родные светодиоды и заменить их на ленту - меняйте, кто же вам не дает. Если же в вентиляторах уже используются адресные, то значит надо найти последний, крайний и вывести выход с него.
 

bort707

★★★★★★✩
21 Сен 2020
3,064
912

@Barovka,
нет ничего проще, FastLEd поддерживает работу с несколькими лентами как одной единой, этот режим там есть "из коробки".
 
  • Лойс +1
Реакции: Barovka