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

  • У нас появились СТАТЬИ! Левая кнопка в меню навигации. Любую тему можно преобразовать в статью (в настройках темы И при её создании): первое сообщение станет текстом статьи, а остальные - комментариями. На форуме много достойных тем, думаю стоит навести порядок в первом сообщении с учётом всех остальных постов, красиво оформить и перевести их в статьи. Хорошие темы должны быть на "витрине"! Данное объявление можно отключить крестиком (куки должны быть включены)

AlexGyver

★★★★★✩✩
Команда форума
30 Июл 2018
125
381
Ветка обсуждения проекта Цветомузыка .
Страница проекта на AlexGyver.ru: https://alexgyver.ru/colormusic/
Репозиторий на GitHub: https://github.com/AlexGyver/ColorMusic
Видео:

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

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

Wan-Derer

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

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

Lordpank

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

Вложения

OlegAnadyr

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

МихаилУ

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

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

Вложения

Последнее редактирование:

Vladimar

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

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

IMG_20190719_164427.jpg
 
Последнее редактирование:
  • Лойс +1
Реакции: Мах

_Григорий_

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

Вложения

  • Лойс +1
Реакции: Хома. и technotrasher

Honest

✩✩✩✩✩✩✩
10 Авг 2019
19
0
Повторил проект в таком виде(делал малому свой MP3 плеер):
IMG_20191003_002525.jpg
IMG_20191003_002535.jpg
IMG_20191003_002544.jpg
IMG_20191003_002553.jpg

 

NikoVonLas

★✩✩✩✩✩✩
29 Сен 2018
25
16
26
Екатеринбург
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
188
65
Привет!!! Переработал я схему да скетч. очень понравился проект, да не понравилась реализация. Хотелось и того и сего и вот так чтобы.
Большая благодарность 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 В для работы от авто акб. Описание работы ЦМУ теперь в начале скетча.
 

Вложения

Последнее редактирование:

ertman1979

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

МихаилУ

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

Вложения

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

mikuz

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

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




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

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


20200208_101026.jpg 20200208_101043.jpg
 
Последнее редактирование:
  • Лойс +1
Реакции: Lesha43rus и technotrasher

Wan-Derer

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

Evro78

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

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

Вложения

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

EGORka

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

shvak

✩✩✩✩✩✩✩
2 Май 2019
6
1
уверен, такого типа светильники продаются везде. недорогие. бери и делай. кстати, первый и второй режимы не работали, пока не подпаял резистор на 45 кОм, как тут советовали
 
  • Лойс +1
Реакции: technotrasher

Slenk

★✩✩✩✩✩✩
21 Янв 2020
33
24
Всем здрасте) Представляю своё видение данного проекта.
Сначала я написал целую простыню на два листа с подробным описанием, а потом решил, что оно никому не надо. Поэтому коротко.
Лента у меня 30 диодов на метр и длинной 102 диода. Жрет в максимальном режиме (белый) 1.7А. Скетч занимает 84% памяти. Приклеена под подоконником на балконе.
Изрядно переписал код (за основу взята прошивка от technotrasher, за что ему респект). Исправил ошибки, оптимизировал код, сделал более логичное меню (на мой взгляд), исправил несколько имеющихся и добавил с дюжину новых эффектов (все которые добавил - на видео), упростил схему (убрал диоды, кнопки и транзистор), добавил индикацию на саму ленту вместо диодов, добавил сброс настроек без перепрошивки. Если будет интерес, то распишу более подробно.
ПС. на фото модуль с Али, цена ~100 рублей, позволяет из высокоуровнего выхода (на колонки), сделать низкоуровневый (aux), а так же имеет независимую регулировку каналов. Аккуратно собран, на борту все необходимое и не надо ничего колхозить.

Дополнение:
Спасибо всем за проявленный интерес! Как обещал выкладываю подробности, а так же схему и скетч.
Убрал из схемы транзистор. У меня переключение с микрофона на линейный вход происходит обычным тумблером. Он же зажигает либо зеленый, либо красный светодиод и отключает питание микрофона аппаратно. Соответственно выпилил часть кода и освободил немного памяти. В итоге программно светодиодов и кнопок не задействовано.

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

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

Удалил дублирующийся эффекты – радуга и смена цвета.

Удалил лишние функции, переменные и тд. Дописал нужные функции. Некоторые исправил. В некоторых местах значительно изменил структуру кода. Поменял вкладки и в целом попытался оптимизировать код. Теперь это больше похоже на единый проект, а не «Франкенштейн». В результате высвободилось процентов 10-15 памяти без потери функционала.
Добавил с дюжину эффектов и «пересобрал» управление всем этим хозяйством – на мой взгляд такое управление более интуитивное и логичное.

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

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

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

Все одноцветные режимы собрал на кнопке «1».

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

Все «разноцветные» режимы на кнопке «2».

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

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

Кнопки «4» - «8» - цветомузыка по частотам. В эти режимы изменения вроде не вносил, только порядок поменял. По-хорошему первые три можно объединить в один и освободить кнопки на пульте.

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

Кнопка «0» - включить/выключить. Но включить теперь можно нажатием на любую из цифр.

Кнопка «ОК» включает режим «Настройки», как и раньше. Но теперь ручная настройка чувствительности производится «*/#» для всех режимов цветомузыки, скетч сам поймет, что настраивать.
У меня тут лаундж, а не дискотека, поэтому упор делал на эффекты и в цветомузыку особо не лез. Возможно при других вводных надо будет что-то корректировать.
Программист я тот еще, всю учебу прогулял и проплатил, а данный текст и скетч писал преимущественно под газом, поэтому получилось, как получилось)))
Обновлено
  • Дальнейшая оптимизация - теперь поддержка до 300 диодов. Благодарность за тестирование и наводку Aleksandr1612
  • Добавлена возможность изменять ориентацию режимов "Шкала громкости" и "Огонь" - от центра/к центру.
  • Эффекты на "Пёрлине" (Плавный огонь, Облака, Плазма и тд.) теперь реагируют на звук. Каждый немного по своему. Если 3 секунды звука нет, то они возвращаются к своему обычному состоянию.
29.05.2020 v2.0:
  • Теперь прошивка совместима со схемой от tehnotraher и OlegAnadyr, в прошивку добавлена соответствующая настройка (протестировать возможности нет, буду рад отзывам)
  • Добавлена настройка отключения индикации на ленте и на диодах
  • Добавлена настройка отключения LINE
  • Добавил несколько цветовых эффектов - ничего особо примечательного, просто для массовки
  • Настройка яркости теперь реализована "правильно" и распространяется на все эффекты
  • Оптимизация - переназначил половину переменных, констант и дефайнов. Оптимизировал функции, дописал новые и тд.
 

Вложения

Последнее редактирование: