ARDUINO Цветомузыка на Arduino

Ветка обсуждения проекта Цветомузыка .
Страница проекта на AlexGyver.ru: https://alexgyver.ru/colormusic/
Репозиторий на GitHub: https://github.com/AlexGyver/ColorMusic
Видео:

Делитесь своими вариантами изготовления, модификациями и улучшениями!

====================================================================
Сюда выкладываем только ваши реализации данного проекта.
Для проблем и вопросов есть отдельная тема. Здесь вопросы считаются оффтопом и молча удаляются, а авторы получают баллы нарушений.
Если у вас есть отличная идея как улучшить данный проект, но сами вы этим заниматься не будете, попробуйте
написать сюда.
 
Изменено:

Комментарии

Wan-Derer

★★★★★✩✩
Команда форума
31 Июл 2018
2,003
406
Москва
wan-derer.ru
Сюда размещаем вашу реализацию этого проекта. Хорошие фото приветствуются. Если сделали что-то по-своему, опишите это. Если есть отличия в схеме/конструкции/скетче, приведите их.
Если у вас есть проблемы с реализацие данного проекта, ищите отдельную ветку в разделе "Электроника": https://community.alexgyver.ru/threads/cvetomuzyka-na-arduino-obsuzhdenie-proekta.126/post-12660

В этой ветке сообщения с вопросами считаются оффтопом и молча удаляются
 
Изменено:

Lordpank

✩✩✩✩✩✩✩
31 Июл 2018
1
8
Закрепил всё это чудо на гардине на алюминиевый профиль выглядит бомбезно.Пока что реализовал всё с пульта,сей час дорабатываю прошивку под wi fi модуль.
 

Вложения

OlegAnadyr

★★✩✩✩✩✩
30 Ноя 2018
8
51
Всем доброго времени суток.
Впервые узнал об ARDUINO от AlexGyver месяц назад и очень понравилась идея цветомузыки. Повторил. Закрепил дюралевый уголок с лентой на расстоянии 10-15 см от потолка (смотрите рисунок). Смотрится очень красиво.
Доработал схему и изменил прошивку под себя. Все началось с убитой DVB-T2 приставки, точнее с корпуса от нее.


Доработал схему (на рисунке).

Доработка прошивки:
= Режим «три» (цветомузыка 5 полос) – добавил подрежимы, меняющий местами цвета (GBRBG-BGRGB-BRGRB-GRBRG-RGBGR-RBGBR).
= Режим «четыре» (цветомузыка 3 полосы) – добавил подрежимы, меняющий местами цвета (RGB-RBG-BRG и т.д.).
= На пульте «0» поставил световые эффекты (меняются «#»).
= Калибровка шума «переехала» на кнопку «ОК» - последовательно нажать 4 раза. Причем калибровка шума для линейного входа и микрофона раздельная, т.е. если сигнал от микрофона, то калибровка шума микрофона, если линейный вход, то. . .
= Выбор с пульта источника сигнала: микрофон/линейный вход.
= Ручная регулировка уровня шума с пульта (очень полезная и нужная вещь!) для микрофона и линейного входа раздельная.


В программировании я новичок, сильно не пинайте за косяки в прошивке. В комментарий в начале скетча изменений почти не вносил – ориентируйтесь на инструкцию.

При включении в сеть, ЦМУ будет в выключенном состоянии. Убрал сохранение в память состояние вкл/выкл (ONstate).
При включении с пульта включается «цветовая подстветка» (7 режим) и убрал сохранение в памяти режима (this_mode). Сделал, чтобы при включении не сидеть в темноте.


Параметры шума при калибровки шума при линейном входе задаются «явно» (найдете в скетче строчку):
LOW_PASS_line = 300; SPEKTR_LOW_PASS_line = 40; MAX_COEF_FREQ_line = 1,2; в функции autoLowPass()
Можете подставить свои параметры. Для меня они оптимальны.


Настройка своего пульта:
найти в скетче строку //Serial.println(IRdata, HEX); в функции remoteTick()
уберите //, компилируете и загружаете скетч, открываете монитор, нажимаете кнопки на пульте и записываете их в скетч в нужное место.
 

Вложения

Изменено:

NikoVonLas

★✩✩✩✩✩✩
29 Сен 2018
25
19
30
Екатеринбург
antiit.ru
Сделал настройку по WiFi, Со сменой всех настроек, которые можно было с пульта настраивать(извиняюсь за тавтологию), плюс изменение цветов(низкие, средние, высокие, строб и не горящие). Заморочился сильно, изначально хотел сделать на слабеньких ESP-01, но из-за ряда причин пока взял NodeMCU, т.к. только он под рукой был. В ближайшее время запилю где-нибудь статью и выкину прошивку на гитхаб. И да, управление с пульта вырезал, иначе память забита была бы полностью.
Для веб страницы использовал dot.js шаблонизатор(~2кб) + ajax + milligram микрофреймворк для стилей (~2кб).
Без названия.png
Изолированый проводок на фото - выход AREF с чипа, т.к. на pro-mini по какой-то причине он не выведен. Знаю, компоновка оставляет желать лучшего, но не кидайте тапками, т.к. первая макетная плата в жизни :)IMG_20190106_173950.jpg
Сейчас есть проблема с тем, что иногда(достаточно редко) не доходят все данные от NodeMCU до Ардуинки и приходится заново менять настройку. Ещё пока не реализовал двусторонний обмен, чтоб ардуина отправляла текущие настройки при инициализации, для того, чтоб в интерфейсе стоял и сразу актуальные.
 
Изменено:

МихаилУ

★✩✩✩✩✩✩
8 Дек 2018
18
42
спасибо за проекты !!!!
сделал по проекту использовал в качестве экрана светильник Хольме ..лента ws2811 5 метров...намотана по кругу

жду вариант с wifi
видео -
 

Вложения

Изменено:

Vladimar

★✩✩✩✩✩✩
22 Июл 2019
18
33
Повторил... Спасибо Алекс!!!
Лента установлена в кабель-канал. Крепление к багете - сантех крепёж для трубы 25 мм (багета 28 мм)

Подключена на выход усилителя. Сопротивления на входе заменены на 3,3К, в теории должно "держать" до 20V.

IMG_20190719_164427.jpg
 
Изменено:

_Григорий_

✩✩✩✩✩✩✩
27 Авг 2019
5
5
Реализовал голой Atmega328p. Насколько я правильно понимаю, что в проекте светомузыки, что в проекте с анализатором частот ты снимаешь только верхнюю часть аудиопотока, то есть все что выше нуля, в то время как сам аудиосигнал колеблется вокруг нуля, то есть ты забиваешь и теряешь часть сигнала.Следовательно и частоты у тебя будут ползти и по факту после преобразования фурье ты получаешь не то что у тебя в действительности должно быть. Необходимо сначала внести постоянную составляющую - поднять звук чтобы ты весь диапазон мог оцифровать, а потом после оцифровки отнять её.
 

Вложения

NikoVonLas

★✩✩✩✩✩✩
29 Сен 2018
25
19
30
Екатеринбург
antiit.ru
Сделал настройку по WiFi, Со сменой всех настроек, которые можно было с пульта настраивать(извиняюсь за тавтологию), плюс изменение цветов(низкие, средние, высокие, строб и не горящие). Заморочился сильно, изначально хотел сделать на слабеньких ESP-01, но из-за ряда причин пока взял NodeMCU, т.к. только он под рукой был. В ближайшее время запилю где-нибудь статью и выкину прошивку на гитхаб. И да, управление с пульта вырезал, иначе память забита была бы полностью.
Для веб страницы использовал dot.js шаблонизатор(~2кб) + ajax + milligram микрофреймворк для стилей (~2кб).
Посмотреть вложение 1701
Изолированый проводок на фото - выход AREF с чипа, т.к. на pro-mini по какой-то причине он не выведен. Знаю, компоновка оставляет желать лучшего, но не кидайте тапками, т.к. первая макетная плата в жизни :)Посмотреть вложение 1702
Сейчас есть проблема с тем, что иногда(достаточно редко) не доходят все данные от NodeMCU до Ардуинки и приходится заново менять настройку. Ещё пока не реализовал двусторонний обмен, чтоб ардуина отправляла текущие настройки при инициализации, для того, чтоб в интерфейсе стоял и сразу актуальные.
Проект перерос в отдельный: https://community.alexgyver.ru/threads/simplelight.1929/
 

technotrasher

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

в ходе тестирования выяснилось - конденсаторы С3 и С4 не нужны. заменить перемычками. Резисторы R3, R4 и R5 не нужны. их просто не устанавливать.


10 апреля 2020 год.
Всем привет! я сделал новую версию! полностью переработал некоторые части. исправил баги. доработал работу с микрофоном. Кое какие идеи взял у mikuz (благодарность!). Все работает идеально. и от линии и от микрофона. Все проверенно неоднократно. Именно так как есть. Читайте документацию. которую вот нифига не читаете. в начале скетча все подробно так же расписано. прибор перед эксплуатацией требует настройки. шумы. регулировки. согласование уровней. смотря от чего будете подавать сигнал.
Обновление. добавленны два огненных эффекта. fireLinePerlin: плавный огонь на шуме Перлина и fireLineZones: огонь с фиксированным количеством зон.
Вызываются кнопкой 0 на пульте и далее # до нужного эффекта.
осталось 12% не занятой памяти...
обновление. исправлен "дубляж" сохранения шумов. и отключено чтение значений шумов при старте из памяти. тестирование показало - приводит к многим проблемам. ручная настройка рулит!
так же обновлена библиотека EEPROM.
23 мая 2020 год.
Доработал и разгрузил память. убрал несколько лишних эффектов. убрал пару режимов в цветомузыке. Доделал сброс настроек через кнопку на пульте (благодарю за идею Slenk). Убрал багу с выводом параметров для тестирования. Сразу все "вздохнуло с облегчением" :). режим 2 пока пуст. очень не хочется туда ставить эффект для подсветки ресторана или бара. Хочется режим ЦМУ. ну и корпус в автокаде. в корпус помещается сама плата, БП, и преобразователь 12 в 5 В для работы от авто акб. Описание работы ЦМУ теперь в начале скетча.

4.07.2020 - новая версия ЦМУ. добавлены новые режимы. Особая благодарность Slenk. без его доработок не было бы очень интересного режима работы!!!
18.08.2020 - доработки. освобождена память. что то убрано, что то добавлено. оптимизированно.
6.09.2020 - ещё добавлен один эффект.

скеч удален. новый проект на MSGEQ7 и второй проект на фильтрах. https://community.alexgyver.ru/threads/cvetomuzyka-na-msgeq7.5624/
 

Вложения

Изменено:

ertman1979

✩✩✩✩✩✩✩
25 Дек 2019
2
3
Повторил, но не довел до ума. Прикрепил просто к алюминиевому карнизу, но лента и без него не греется.
 
  • Лойс +1
Реакции: dimonqrz и Maxim Golyakov

МихаилУ

★✩✩✩✩✩✩
8 Дек 2018
18
42
переделал внутреннюю часть светильника на фото было стало и крепление снизу и сверху
 

Вложения

  • Лойс +1
Реакции: VovFka

mikuz

✩✩✩✩✩✩✩
20 Окт 2019
2
8
МОИ ФАЙЛЫ СЛИШКОМ БОЛЬШИЕ НЕ МОГУ ЗАГРУЗИТЬ НА САЙТ.
Если нельзя оставлять ссылки как у меня просто удалите сообщение.

Буду очень краток:
Цветомузыка исправлена и дополнена следующими вещами:
  • Схема аппаратного АРУ ( больше не надо крутить ручку чуствительносьти)
  • Фильтр НЧ в аналоговом тракте (для корректности анализа спектра)
  • Смещение по постоянному напряжению на входе АЦП (для корректности анализа спектра)
  • Потенциометр для регулировки яркости ( в левом положении управляется с ПДУ)
  • Кнопка для перебора режимов
  • Исправлены глюки с ПДУ
  • Ведена индикация режим/подрежим
  • Введена индикация нажатия кнопки
  • Исправлена частота дискретизации для отображения основных тонов (психологически верно)
  • 3Д модель для обрисовывания корпусом.
  • и пр.
ДОПОЛНЕНИЕ ПО ЗАМЕЧАНИЯМ МОДЕРАТОРА:
  • попытка изготовить плату при помощи ЛУТ обернулись провалом пришлось заказывать тут (там простая инструкция для генерации gerber файлов)
  • KiCAD можно скачать тут . Это открытое ПО свободное для использования.
  • ПО для просмотра и правки корпуса тут. Тоже свободное.
  • Печать очень кривая и не ЛУТ и не заказ, не то не се. Была принята серия промежуточных решений, по принципу: "куда кривая выведет"
  • По мере появления свободного времени будут исправляться недочеты, но (времени) его очень мало
  • Прошу понять мою готовность делиться наработками, но неготовность заниматься этим проектом как приоритетным




P.S. Проект будет явно сложноват для начинающих. ТАМ НЕТ ARDUINO там микроконтроллер. И там не "красивая" печатная плата.
Да прибудет Бог с рискнувшим повторить проект.

Это ПО в PlatformIO2.2 МБ
Это схема и печать в KiCAD2.48 МБ
box.zip6.14 МБ


20200208_101026.jpg 20200208_101043.jpg
 
Изменено:

Wan-Derer

★★★★★✩✩
Команда форума
31 Июл 2018
2,003
406
Москва
wan-derer.ru
@mikuz, не у всех есть кикад. Добавь схему и печатку в формате PDF. На печатке должны быть размеры чтобы можно было сделать плату с помощью ЛУТ.
Также добавь gerber если предполагается заказ платы на заводе.
 

Evro78

✩✩✩✩✩✩✩
18 Фев 2020
3
5
Сюда размещаем вашу реализацию этого проекта. Хорошие фото приветствуются. Если сделали что-то по-своему, опишите это. Если есть отличия в схеме/конструкции/скетче, приведите их.
Если у вас есть проблемы с реализацие данного проекта, ищите отдельную ветку в разделе "Электроника": https://community.alexgyver.ru/threads/cvetomuzyka-na-arduino-obsuzhdenie-proekta.126/post-12660

В этой ветке сообщения с вопросами считаются оффтопом и молча удаляются
Собрал свою цветомузыку на вот такой подставке от телевизора.
Проэкт брал от сюда
 

Вложения

EGORka

★✩✩✩✩✩✩
15 Мар 2020
87
36
Проэкт брал от сюда
С Cine-Lights общался по поводу и лампы и Vu метров. Давал ссылки на проекты Алекса . У Алекса есть разделения по частотам. У Cine-Lights красивые эффекты. В итоге что-то взял у одного,что-то у другого, добавил оформление и получился вообще набор башен в стиле "манхеттен"
 

shvak

✩✩✩✩✩✩✩
2 Май 2019
8
8
уверен, такого типа светильники продаются везде. недорогие. бери и делай. кстати, первый и второй режимы не работали, пока не подпаял резистор на 45 кОм, как тут советовали
 

Slenk

★★★★★★✩
21 Янв 2020
382
588
34
Краснодар
Всем здрасте) Представляю своё видение данного проекта.
Коротко:
Лента у меня 30 диодов на метр и длинной 102 диода. Приклеена под подоконником на балконе. Жрет в максимальном режиме (белый) 1.7А.
Изрядно переписал код (за основу взята прошивка от technotrasher, за что ему респект). Сделал более логичное меню (на мой взгляд), исправил несколько имеющихся и добавил пару десятков новых эффектов (часть из них на видео), добавил упрощенный вариант схемы без диодов, кнопок и транзистора, добавил индикацию на саму ленту, добавил сброс настроек без перепрошивки.
ПС. на фото модуль с Али, цена ~100 рублей, позволяет из высокоуровнего выхода (на колонки), сделать низкоуровневый (aux), а так же имеет независимую регулировку каналов. Аккуратно собран, на борту все необходимое и не надо ничего колхозить.
Добавил упрощенную схему без транзистора и диодов. У меня переключение с микрофона на линейный вход происходит обычным тумблером. Он же зажигает либо зеленый, либо красный светодиод и отключает питание микрофона аппаратно.

Добавил аппаратную кнопку выключения питания, мне кажется не гоже БП быть постоянно под напряжением.

В качестве корпуса использовал пластиковую белую (есть еще цвета под дерево, да и покрасить легка) распределительную коробку из Леруа размером 10х10х3. Вообще они есть разных размеров, в аналогичной коробке (только меньше) в свое время собирал мини лабораторник, так что возьмите на заметку.

Задействовал китайский модуль преобразования высокоуровневого сигнала.

Значительно изменил структуру кода, удалил лишние функции, переменные и тд., дописал нужные функции. Поменял вкладки и в целом попытался оптимизировать код. Теперь это больше похоже на единый проект, а не «Франкенштейн».

Добавил пару десятков эффектов и «пересобрал» управление всем этим хозяйством – на мой взгляд такое управление более интуитивное и логичное.

Добавил сброс на стандартные параметры без перепрошивки (4 раза «ОК» в выключенном состоянии).

Добавил индикацию нажатия кнопок, а так же режима «Выключено» и режима «Настройки» на самой ленте (зачем паять и программировать дополнительные светодиоды если у нас и так есть +/- сотня диодов на ленте, да и наглядней так). «Выключено» - первый диод на ленте тускло мигает красным. «Настройки» - 8 первых диодов на ленте горят «радугой».

Подрежимы у меня переключаются «*» в одну сторону и «#» в другую.

Все одноцветные режимы собрал на кнопке «1».
Добавил туда просто белый с возможностью изменения температуры и яркости («ОК» - сбрасывает температуру). Затем идет один выбранный цвет. Затем плавная смена цвета. Добавил пульсацию случайным цветом и резкую смену на случайный цвет.

Все «разноцветные» режимы на кнопке «2».
Поменял очередность. Чуть доработал «Радугу». Переписал сомнительный симметричный огонь из центра на более плавные и независимые огни с краёв, перевел на другое цветовое пространство, что дало ряд плюшек. И теперь можно менять цвет этих огней с пульта. На основе этого добавил эффект: «Лёд и Пламень» - с одной стороны натуральный, а с другой синий огонь и они типо борются между собой. Добавил «пестрящий» огонь – цвет так же можно менять. Добавил огонь на шуме Перлина и на его основе еще несколько эффектов: «Облака», «Бассейн», «Плазма» и тд., можно еще поиграться с параметрами и хоть десяток добавить, в памяти они ничего не занимают, лишь разные вводные для функции задаются. Цвета этих эффектов так же можно менять с пульта и у них есть реакция на звук.

На кнопке «3» у меня стробоскоп, с возможностью изменения цвета пультом.

Кнопки «4» - «7» - цветомузыка по частотам.

На кнопке «8» - Тестовый эффект «Огоньки наперегонки»

На кнопке «9» собрал режимы цветомузыки которые зависят от громкости – «Градиент», «Радуга» и добавил к ним «Огонь», цвет которого так же можно менять с пульта.

Кнопка «0» - режим ожидания. Включить можно нажатием на любую из цифр.

Кнопка «ОК» включает режим «Настройки», как и раньше. Но теперь ручная настройка чувствительности производится «*/#» для всех режимов цветомузыки, скетч сам поймет, что настраивать.
П.С. большая благодарность всем кто отписывает на форуме, это сильно помогает и вдохновляет.
Обсуждать здесь. Порядок постепенно наведу.
 

Вложения

Изменено:

GARAGE-28

★✩✩✩✩✩✩
21 Июл 2020
2
16
Мой вариант)
Никаких переделок в плане скетча, в плане электроники просто сделал мобильный переносной вариант светомузыки и функцию повербанка. Реально в режиме ожидания одного АКБ 18650b 3000 мА/ч хватает на неделю с лишним. Цветомузыка висит в гараже и не выключается, и даже с закрытыми дверями она срабатывает на грёбаных чаек, которые стаями летают над гаражами. Я думал за пару суток акб сядет, но нет, хватает с выходных до выходных. В переделках всё просто, пара выключателей, акб, платка контроллера зарядки акб, стабилизатор напряжения 5вольт с юсб разьёмом, и по сути то всё.