Визуализатор звука. Ищу разработчика. Дерзкий проект.

Sergey_ko

✩✩✩✩✩✩✩
2 Ноя 2024
2
2
Привет. .

Коротко о себе. Я Дизайнер интерфейсов. Увлекаюсь музыкой. С ребятами решили сделать крутой визуализатор звука, используя свои навыки в сфере дизайна.
Мы не программисты.

ТЗ писал с помощью GPT. Так что на некоторые технические моменты можно делать скидку.
Проект за деньги, не на альтруизме


gradient equalizer.png
weather.png
greetings.png
white equalizer.png


Техническое задание для разработки визуализатора звука на Arduino
1. Введение
Цель проекта — разработка визуализатора звука на базе адресной светодиодной ленты, который будет отображать аудиосигналы в виде цветных и монохромных световых эффектов. Устройство должно работать от сети, показывать время в отсутствие звукового сигнала и выводить текстовое приветствие при включении.

2. Задачи проекта
  • Исследовать и выбрать подходящую адресную светодиодную ленту, например WS2812B или SK6812, которые обеспечат высокую цветовую насыщенность и яркость.
  • Интегрировать один или два микрофона для захвата звукового сигнала, рассматривая модели с усилителем, такие как MAX4466, для точного улавливания уровня звука в условиях окружающего шума.
  • Разработать алгоритмы визуализации звука с возможностью выбора цветного или монохромного режима.
    • Включить алгоритмы сглаживания сигнала или фильтрации по уровню громкости и частоте для создания плавных переходов и динамичных эффектов.
    • Рассмотреть реализацию алгоритма Fast Fourier Transform (FFT) для различения низких, средних и высоких частот, что позволит отображать их в разных частях светодиодной ленты.
  • Реализовать функциональность двух кнопок:
    • Первая кнопка — для включения и выключения устройства.
    • Вторая кнопка — с многофункциональными действиями:
      • Двойной клик — смена режима индикации.
      • Клик и удержание — смена яркости.
      • Тройной клик — переход в режим часов.
    • Добавить обратную связь для индикации текущего режима, например, кратковременное изменение цвета ленты или мигание светодиодов при каждом переключении.
  • Обеспечить отображение времени в отсутствие входящего сигнала.
  • Создать эффект бегущей строки с текстом приветствия при включении устройства.
  • Реализовать интеллектуальный режим, при котором устройство отключает питание и переходит в режим ожидания при отсутствии звукового сигнала на протяжении заданного времени (например, 5 минут). Рассмотреть возможность пробуждения по звуку или нажатию кнопки.
  • Интегрировать блок питания в корпус устройства с возможностью отсоединения шнура питания.
  • Создать схему подключения всех компонентов.
  • Написать программное обеспечение для управления визуализацией и функциональностью.
3. Оборудование
  • Arduino Uno или аналогичный: основной контроллер.
  • Адресная светодиодная лента: для визуализации звука (например, WS2812B или SK6812).
  • Один или два микрофонных модуля: для захвата звука (например, MAX4466 для более точной фиксации звука).
  • Две кнопки:
    • Первая для включения и выключения устройства.
    • Вторая для многофункционального управления (двойной клик, клик и удержание, тройной клик).
  • Блок питания: интегрированный в корпус с возможностью отсоединения шнура.
  • Резисторы: для защиты компонентов.
  • Бредборд и провода: для сборки схемы.
  • Часы реального времени (RTC): для отображения времени.
  • Корпус устройства с вентиляционными отверстиями для предотвращения перегрева при длительной работе.
  • Дополнительные компоненты: при необходимости.
4. Программное обеспечение
  • Arduino IDE: для разработки и загрузки кода.
  • Библиотеки для работы с адресной светодиодной лентой, аудиосигналами и RTC (например, Adafruit NeoPixel для ленты и RTClib для часов).
5. Функциональные требования
  • Визуализатор должен изменять яркость и цвет светодиодов в зависимости от уровня звука с двумя режимами: цветной и монохромный.
  • Реализация динамичных световых эффектов с помощью сглаживания и фильтрации сигналов.
  • Поддержка алгоритма FFT для различения низких, средних и высоких частот, которые будут отображаться на разных участках ленты.
  • При отсутствии входящего сигнала устройство должно отображать текущее время.
  • При включении на дисплее должно выводиться текстовое приветствие в виде бегущей строки.
  • Возможность переключения между режимами визуализации и регулировка яркости через многофункциональную кнопку с обратной связью для пользователя.
  • Интеллектуальный режим, который отключает питание и переводит устройство в режим ожидания при отсутствии звукового сигнала на протяжении заданного времени.
6. Нефункциональные требования
  • Устройство должно быть компактным и удобным в использовании.
  • Питание от сети с возможностью отсоединения шнура питания.
  • Простой интерфейс управления с индикацией текущего режима.
  • Простота сборки и настройки.
 

Вложения

Геннадий П

★★★★★★✩
14 Апр 2021
1,962
630
44
Экран 9х31, технарь с опытом никогда бы такого не допустил, он бы сделал 8х32, либо 16х32.
И да, арбуина это все дело не потащит.
Ну и написали бы бюджет.
 
Изменено:
  • Лойс +1
Реакции: Divin

Cherence

✩✩✩✩✩✩✩
28 Окт 2023
11
7
@Sergey_ko,Интересный проект, но стоить разработка такого устройства будет вообще немало. Вам наверное проще купить уже готовое устройство, если вы не планируете серийно выпускать такие устройства. Каковы приблизительные сроки и примерный бюджет?
 
Изменено:

Cherence

✩✩✩✩✩✩✩
28 Окт 2023
11
7
@Геннадий П, А какая разница, с точки зрения кода больших проблем это всё равно не создаст, тем более матрица адресных светодиодов, а там особой роли это не сыграет
 
  • Лойс +1
Реакции: Sergey_ko

Cherence

✩✩✩✩✩✩✩
28 Окт 2023
11
7
@Эдуард Анисимов, Да, я понимаю, но возможно шрифты будут хуже выглядеть на такой матрице. Проблема действительно в том, что готовую матрицу использовать не получится, это да. Но тут уже важно, как заказчик приоритеты расставляет
 

Alex_Sen

✩✩✩✩✩✩✩
30 Окт 2022
15
3
Крутой и интересный проект. Я как раз в этом направлении занимаюсь и заканчиваю похожую разработку, могу заняться и сделать
 
  • Лойс +1
Реакции: Sergey_ko

Sergey_ko

✩✩✩✩✩✩✩
2 Ноя 2024
2
2
@Геннадий П,
Я смотрел в сторону готовых матриц кратностью 8. Но в таком виде мне не нравится расположения текста.

Про бюджет.
Это селфпроджект. Делаю на свои для себя. По бюджету,к сожалению, не сориентирую, тк жду оценку отразработчика исходя из ТЗ и опыта.
Спасибо за комментарий.
 

Вложения