ARDUINO Цветомузыка на Arduino. Обсуждение проекта

viktor001

★✩✩✩✩✩✩
14 Окт 2019
113
36
Зачем поспешили заливать клеем? Уложили бы как вам надо с учётом центра эффектов и клеили бы потом. А сейчас гемора на полную голову.
 

Vitec

✩✩✩✩✩✩✩
11 Фев 2020
7
1
@Wan-Derer, этим способом я просто смещаю "центр". Может знаете способ как хотя бы программно сделать два центра?
 

Vitec

✩✩✩✩✩✩✩
11 Фев 2020
7
1
@viktor001, я их изготовил два месяца назад. На днях увидел этот проект и залил скейч, вот думаю теперь как этот скейч допилить под мои фары.
 

Старик Похабыч

★★★★★★★
14 Авг 2019
4,192
1,281
Москва
да все можно сделать.
пусть номера ламп будут
0 1 2 3 4 5 6 7, общее число N=8;
если делать эффект от середины к краям то, будет 3-4, 2-5, 1-6, 0-7
Середина рассчитывается каr s1=N/2-1 и s2=N/2, если четное, если нечетное число, то неудобненько, но можно , s1=(9-1)/2 s и s2=(9-1)/2 тоже
Цикл будет от 0 до (N-1)/2 , при 8 это от 0 до 3, при 9 от 0 до 4, что и надо.
Далее. если ВДРУГ надо сдвинуть центр. вводи смещение SM , к примеру -2
начинаем считать цикл. Для нечетного
шаг 0, 4 и 4, + SM получаем 2 и 2
шаг 1, 3 и 5 , +SM , 1 и 3
шаг 2, 2 и 6, +SM 0 и 4
шаг 3, 1 и 7 + SM -1 и 5!
ВОТ ОНО, если номер меньше нуля, то прибавляем к нему число светодиодов. Получаем 8 и 5
шаг 4 , 0 и 8, + SM -2 и 6
ВОТ ОНО опять, если номер меньше нуля, то прибавляем к нему число светодиодов. Получаем 7 и 6
Да, в другую сторону если число больше чем число светодиодов , то из полученного номера надо вычесть число светодиодов

Все. Алгоритм я вам расписал - долбите клавиши
 

Vitec

✩✩✩✩✩✩✩
11 Фев 2020
7
1
@Старик Похабыч, Спасибо большое за подробный ответ. Только вот был бы я чуть опытнее в программирование-то наверное я бы сразу же разобрался. Позвольте мне чуть-чуть принаглеть и попросить вас, тыкнуть меня носом в ту строчку (скейча этого проекта) в которой этот алгаритм можно реализовать?
 

Старик Похабыч

★★★★★★★
14 Авг 2019
4,192
1,281
Москва
@Vitec, Я пас сейчас, по заданию Родины коверкаю наливатор из одного жуткого кода , в другой такой же , но свой собственный. А свое оно ближе к телу и не пахнет.
Я не совсем так написал, видел только верхние картинки, где центр надо сместить, но никак на 2 центра. хотя это тоже не сложно. Но пока нет времени. голова занята другим.
 

Радио Сова

✩✩✩✩✩✩✩
15 Сен 2019
1
0
Добрый день . У меня продолжается проблема с ИК датчиком . Тот работает ( спасибо за отклик и помощь ) Но я поменял на новый , он принимает сигналы с пульта (судя по моргающему светодиоду при нажатий кнопок на пульте ) Но вот получить коды по прошивке Алекса ( прошивка , которая читает коды с кнопок пульта ) , она не выводит ничего в Ком Порт . (есть вероятность , что пяточёк у контакта Ардуины Д2 с одной стороны пяточёк оторвался . НО я подпаялся с другой стороны и припаял хорошо . Что ещё может быть и как решить .. я пока не знаю . Ни я , не вы " не ванги " , но жду ваши предположения . свои я уже опроверг . И в проблема , я залил прошивку без пульта . Кнопку ещё не припаял , но я не вижу шумов на светомузыке . Если раньше хоть какое то движение было . ТО после включения , она как обычно вспыхивает и как свойственно .. но потом уменьшатся до 3 горящих светодиодов с каждой стороны . Остальные же светятся ка и указано в прошивки - синим . Прошу помочь , так как калибровку планировал сделать пультом . ( прошу прощения за колхоз на фото , пришлось всё вытащить что бы найти причину проблемы :3 AJUFJwyiuo0.jpg
 

Wood

✩✩✩✩✩✩✩
26 Фев 2020
3
0
Приветствую. Простите за ламерский вопрос, а есть ли где-то описание, что куда подсоединять для этого проекта к плате контроллера arduino uno ? Или для нее еще и прошивку надо править ?
 

Wood

✩✩✩✩✩✩✩
26 Фев 2020
3
0
Попробовал собрать на макетке с платой Uno. Скетч 2.10 с переменным резистором (10 К), калибровкой уровня кнопкой, и моно-входом по правому каналу на А2. Как ни кручу, заставить работать на более чем 1-2 режимах, или хотя бы стабильно, пока не удалось. Блоки питания импульсные пробовал, достаточно мощные, один на 6А (вскетче ограничение 3А), второй от принтера, отрегулированный на 5,1 В выхода. Вход брал с выхода аудиокарты на наушники, и пробовал аудиовыход с телефона, результаты одинаковые. Если включить вход ЦМ параллельно наушникам через разветвитель-переходник, чтобы слышать ритм, слышно как от блококов питания обеих лезет такой мощный шум в канал звука, что просто уши заворачиваются. Ну и на вход ЦМ конечно. Может поэтому оно не хочет нормально работать ? .
..
Видео самого успешного случая, все остальное несопоставимо хуже
 

viktor001

★✩✩✩✩✩✩
14 Окт 2019
113
36
Сборка на макетке? Это изначально заложенная ошибка в работе всей схемы. Уделите повышенное внимание питанию. Используйте более толстый провод и фильтр, пара конденсаторов на 100мкф и 100 нано. Сигнальный вход отделите конденсатором и пин А2 подтяните на массу через резистор 10к. Качество звукового сигнала желательно выбирать получше. Чем хреновей тракт звучит в колонках, тем хреновей его динамика отображается на светодиодных пикселях. Не помешает добавочный конденсатор по питанию непосредственно на самой ленте.
 

Wood

✩✩✩✩✩✩✩
26 Фев 2020
3
0
Таки да, покрутил ее так и сяк, и пересобрал на другой макетке, уже паяльником. Как я понял, самая главная проблема, и причина неработоспособности - уровень входного сигнала. Он или выше или ниже нужного, и на этом скетче мне не удалось найти удачный вариант.
А вот скетч Lumazoid пошел у меня за милу душу. Правда, на вход пришлось таки добавить входной усилитель на КТ3102. Теперь работает стабильно, от любого аудиовыхода с гаджетов или компьютера.
Схема там чуть отличается, я скрестил 2 варианта, схему из набора ЦМ чип и дип, плюс усилитель на вход, из обсуждения этой версии на форуме умный дом.
Видео работы скетча и схемы на разных режимах
И еще одно видео этой же схемы
 

Вложения

onet

✩✩✩✩✩✩✩
15 Янв 2020
13
1
Вообще то по умолчанию должен быть синий, который можно поменять на другой более подходящий по вкусу, но это так, к слову.
Можете подсказать как поменять местами жёлтый на синий, как в старые
времена. Чтобы высокие были синие.
 

ShONik

★✩✩✩✩✩✩
30 Ноя 2019
53
14
@onet,
всё же есть в прошивке, нужно только прочитать

// ----- режим цветомузыки
float SMOOTH_FREQ = 0.8; // коэффициент плавности анимации частот (по умолчанию 0.8)
float MAX_COEF_FREQ = 1.2; // коэффициент порога для "вспышки" цветомузыки (по умолчанию 1.5)
#define SMOOTH_STEP 20 // шаг уменьшения яркости в режиме цветомузыки (чем больше, тем быстрее гаснет)
#define LOW_COLOR HUE_RED // цвет низких частот
#define MID_COLOR HUE_GREEN // цвет средних
#define HIGH_COLOR HUE_BLUE // цвет высоких

/*
Цвета для HSV
HUE_RED
HUE_ORANGE
HUE_YELLOW
HUE_GREEN
HUE_AQUA
HUE_BLUE
HUE_PURPLE
HUE_PINK
*/
 

onet

✩✩✩✩✩✩✩
15 Янв 2020
13
1
Спасибо. Просто в строчках цвет местами поменять? Больше нигде, ничего
прописывать не надо?
#define MID_COLOR HUE_GREEN // цвет средних
#define HIGH_COLOR HUE_BLUE // цвет высоких
 

Вложения

ShONik

★✩✩✩✩✩✩
30 Ноя 2019
53
14
@onet,
ничего местами не нужно менять, цвет высоких уже сменён на синий за место жёлтого (я себе тоже менял низкие красный, средние зелёный, высокие синий)
откройте прошивку и увидите разницу просто где у вас - цвет высоких замените на #define HIGH_COLOR HUE_BLUE // цвет высоких
если вам нужен цвет средних желтый то за место зеленого меняете на жёлтый

// ----- режим цветомузыки
float SMOOTH_FREQ = 0.8; // коэффициент плавности анимации частот (по умолчанию 0.8)
float MAX_COEF_FREQ = 1.2; // коэффициент порога для "вспышки" цветомузыки (по умолчанию 1.5)
#define SMOOTH_STEP 20 // шаг уменьшения яркости в режиме цветомузыки (чем больше, тем быстрее гаснет)
#define LOW_COLOR HUE_RED // цвет низких частот
#define MID_COLOR HUE_GREEN // цвет средних
#define HIGH_COLOR HUE_BLUE // цвет высоких
 
  • Лойс +1
Реакции: onet

onet

✩✩✩✩✩✩✩
15 Янв 2020
13
1
ничего местами не нужно менять, цвет высоких уже сменён на синий за место жёлтого
Спасибо. Вон оно оказывается как просто, вечером буду пробовать. И последний вопрос, а здесь на что изменить, чтобы подсветка была жёлтым
цветом:
режим подсветки

byte LIGHT_COLOR = 0; // начальный цвет подсветки
byte LIGHT_SAT = 255; // начальная насыщенность подсветки
byte COLOR_SPEED = 100;
int RAINBOW_PERIOD = 1;
float RAINBOW_STEP_2 = 0.5;
И какой у Вас цвет стоит на подсветку?
 

ShONik

★✩✩✩✩✩✩
30 Ноя 2019
53
14
@onet, ))))посмотрите видео Алекса, там же всё рассказано
#define EMPTY_COLOR HUE_PURPLE // цвет "не горящих" светодиодов.
замените на любой
/*
Цвета для HSV
HUE_RED
HUE_ORANGE
HUE_YELLOW
HUE_GREEN
HUE_AQUA
HUE_BLUE
HUE_PURPLE
HUE_PINK
*/
 
  • Лойс +1
Реакции: onet

Yuriy909

✩✩✩✩✩✩✩
2 Фев 2020
9
2
Привет!!! Переработал я схему да скетч. очень понравился проект, да не понравилась реализация. Хотелось и того и сего и вот так чтобы.
Большая благодарность OlegAnadyr. Я взял его доработку. На устранение всех ошибок ушла неделя. Очень криво было написано. Но устранение ошибок - по закону, порождало новые ошибки . Пришлось хорошо поработать. Схему я взял такую - хочу и микрофонный и линейный входы. никаких моно с линейного. обрабатываем оба выхода. регулировки чувствительности - и в первом режиме. Не лез исправлять в математическую часть. Лезть по конспектам 20 летней давности пока нет интереса. поэтому правил только "механику". И ещё раз благодарность OlegAnadyr за режим 0 - добавок к скетчу с очень красивыми эффектами! на режиме 1 теперь есть регулировка чувствительности. на пульте не хватило кнопок для включения микрофона. Поэтому сделал кнопку физическую. В скетче есть закомментированные блоки для отладки. Обязательно раскомментируйте - проверьте на макетке все параметры перед сборкой. Состояние при выключении - сохраняется. включается в ВЫКЛЮЧЕННОМ состоянии. Регулировка чувствительности - 4 раза в "тишине" нажать ОК. НО!!!! сначала нажать один раз! переход в меню. Светодиод горит зелёным! И теперь уже 4 раза. На последнем зелёный светодиод мигнёт! Если нет - то повторяем, пока не получится. :) И не спешим, и не делаем медленно. В НАЧАЛЕ скетча все расписано! Все режимы и что где. Больше в эту цветомузыку на данной arduino ничего не влезет. :) Код можно оптимизировать вечно. если кто сделает - будет хорошо. По БП! У меня три метра - 180 светодиодов потребляет в пике -2 Ампера!!! Так что 1А на метр - избыточно, если 60 светодиодов на метре. Совет - в работе меньше тыць кнопки. так как все происходит в слепую, то можно такого её наклацать, что придется идти, перешивать, обнулять. Посему - чувствительность остальное - аккуратно. Идея - сделать физ. кнопку обнуления памяти.
p.s. - Эту прошивку можно отлично использовать и со схемой Alexa. так как пины основные все на месте! и будет работать линейный вход. и пульт от wavgat.
обновил скетч. поправил баги.
Собрал по вашей схемке и скетчем, но от линейного входа работают первые 3 режима, а от микрофона работает только 9, в чем может быть проблема? Схемку 100 раз проверил. Режимы с пульта все переключаются...
 

technotrasher

★★★★✩✩✩
14 Ноя 2019
501
223
@Yuriy909, настройку на "шум" делали? микрофон именно тот, что указан? от кнопок гарантированно должно все работать. ещё нужно очень тонко подстраивать под входной сигнал подстроечным резистором. хотя... как раз те, что после первых трех режимов - они встроенные и от входа не зависят. странно. режим 8 от кнопок работает? и стробоскоп? если стробоскоп не работает - пульт свой смотрите. верно ли раскодируются сигналы.
 

onet

✩✩✩✩✩✩✩
15 Янв 2020
13
1
А кто-то пробовал от компьютерного блока питания запитать? Смущает,
что на холостых 5,28V а под нагрузкой (подключил лампочку) 4,8V. Хватит-ли
для ленты на 300 светодиодов?
 

viktor001

★✩✩✩✩✩✩
14 Окт 2019
113
36
(подключил лампочку) 4,8V.
Одну что ли? И какую именно?
Если вы подключили 300 пикселей и у вас теперь 4,8В то этого вполне хватит.
Если нет то попробуйте решить простую задачку по подсчёту номинальной мощности потребления 300 -тами пикселями. Полученный результат в амперах и будет искомая мощность блока питания. Но так как пиксели не работают в полную мощность, то можете БП взять немного слабее.
 

technotrasher

★★★★✩✩✩
14 Ноя 2019
501
223
@Yuriy909, в ходе тестирования выяснилось - конденсаторы С3 и С4 не нужны. заменить перемычками. Резисторы R3, R4 и R5 не нужны. их просто не устанавливать. Попробуйте.