LED RGB куб 4x4x4 для візуалізації музики
У цій статті ми розповімо про досвід складання куба 4x4x4 на RGB-світлодіодах, а також розробку програмного забезпечення, необхідного для використання куба як візуалізатора звуку. Використовується мікроконтролер Arduino Uno.

Підготовка
Чарліплексинг

схема стовпчика світлодіодів
Припустимо, що ми хочемо запалити LED1 зеленим кольором. Якщо простежити по синій лінії, видно, що необхідно подати "+" на вхід 1. Простеживши за червоною лінією, розуміємо, що потрібно подати "-" на вхід 3. На решту входів нічого не подається.
Візуалізація
Вирішили, що весь аналіз музики буде проводитися на підключеному до куба ПК. Основна ідея: ПК аналізує канал запису звуку, перетворює звук в інформацію про частоти та передає дані про ритм музики в Arduino. Далі мікроконтролер на основі цієї інформації підсвічує певні світлодіоди.
Збираємо стовпчик

Перед з'єднанням світлодіодів в стовпець необхідно в кожному з чотирьох світлодіодів вигнути ноги так, щоб кожна нога складала з сусідньої 90 °.


Потім кожен із світлодіодів потрібно обертати по черзі на 90° (кожен наступний має бути повернутий на 90° за годинниковою стрілкою по відношенню до попереднього). Попередньо одну з ніг можна помітити (у нас вона позначена зеленим лаком), щоб не заплутатися.


З'єднуємо наші світлодіоди у стовпчик. Після з'єднання світлодіодів обрізаємо кінці ніг, що виступають.





Розміщуємо стовпчики
15 стовпчиків, що залишилися, збираються аналогічним чином.

Стовпчики розставляються на платі на однаковій відстані один від одного, формуючи таким чином куб зі стороною, що дорівнює 4світлодіодів. Всі стовпчики повинні бути повернені в однаковому напрямку (тут дуже стане в нагоді попереднє маркування «опорної» ноги).




З'єднуємо стовпчики між собою
Перевертаємо конструкцію та починаємо приєднувати дроти. Усього проводів 16, з'єднання проводилося у 4 етапи.









Залишилося підключити до Arduino – і можна приступати до програмування.
Підключаємо до Arduino
Автори Чарлікуба передбачили бібліотеку cubeplex для зручного програмування куба з Arduino. Для того, щоб цю бібліотеку можна було використовувати без модифікацій, необхідно підключати наші дроти в наступному порядку (нумерація відповідає дротам на зображеннях з попереднього розділу):


Програмуємо Arduino
Базовий функціонал
Обмін повідомленнями з ПК
Програмування для світломузики
Аналіз звуку на JRuby
Демонстрація роботи
Посіслов'я
Нам вдалося отримати візуалізатор звуку у зв'язці з пк. Надалі можна покращити алгоритм визначення ритму (стандартні засоби визначення ритму бібліотеки Minim далекі від ідеалу), також на куб можна виводити інформацію про частоти. Як бачите, куб нескладний у побудові та програмуванні; крім того, він задіює мінімум компонентів.
АвториМакоєд Віктор та Євген Куниця, студенти 3 курсу БДУіР ВМСіС
Ви можете допомогти і перевести небагато коштів на розвиток сайту
Коментарі (13):
Чудовий проект! В ідеалі підключити це все до NodeMCU, щоб отримати зовнішній візуалізатор. Крім того, начебто сама плата здатна впоратися з аналізом звуку, судячи з цієї посадиhttps://m.geektimes.ru/post/277276/.
А взагалі давно мрію зібрати подібний куб, тільки досвіду в пайці недостатньо. До речі, з чого робилися ніжки, якими з'єднували світлодіоди?
взагалі це мідний дріт, ми використовували кабель ВВГ 3*1,5