
大家好!
新的一年即将来临,您需要以某种原始方式为假期装饰房间。 为此,基于Arduino和ws2812b LED灯带的彩色音乐是理想的选择。
去年,我收集了彩色音乐,组装大约花了3个小时,花了很多时间来解析和修改代码,还花了很多时间在商店里寻找铝型材和按钮。
彩色音乐的独特之处在于它不需要连接到音频信号源,因为它内置了MAX9812麦克风模块,因此可以接收音频数据。 它通过电压放大器连接到Arduino ADC。 该放大器组装在KT3102晶体管上,该晶体管具有许多外国类似物。
有两个按钮可以选择彩色音乐,颜色和图案中的模式。 彩色按钮切换配色方案,只有3种,而色排按键则切换彩色音乐的动态模式,只有8种。
为了调节灵敏度和亮度,安装了一个参数电位计,它是一个可变电阻,其可变电阻为0至10 kOhm。 它还连接到ADC,并且根据其位置,对参数进行软件处理。 您可以修改代码并安装编码器而不是电位计,但这已在另一个项目中实现。
在设置中,您还可以选择磁带中使用的LED 60、120或180的数量,并将频率滤波器调整为8个频率范围,为此,使用了基于快速傅里叶变换算法的软件频率滤波器。
LED灯带基于ws2812b全彩可控可寻址LED。 磁带的密度,我每1米选择60个LED。 我认为,这是许多任务的最佳比率。 LED灯带的功率应予以认真考虑,因为每1米最大消耗功率高达3.6A。 当然,在这种情况下,彩色音乐打开所有白色LED并仍保持全功率的情况的可能性为零。 但是,最好立即获得良好的电源。 至少5伏和5安。
彩色音乐方案。
该计划没有什么特别的评论。 只需调整KT3102晶体管上放大器的中点。 该设置减少为选择200 kOhm的偏置电阻或1 kOhm的负载电阻,您需要在晶体管的集电极或输入A0处获得一半的电源电压。 该晶体管可以用任何NPN模拟代替。
最好使用线性电阻为10至50 kOhm的电位计。
如果要在项目中使用Arduino pro mini控制器,请立即将0.1 F陶瓷电容焊接到ATmega328微控制器的第20针(ARef)。 使用Arduino Nano时,您无需焊接电容器,因为电容器已经焊接在板上。
主要组成Arduino Pro迷你版WS2812B上的LED灯条带放大器的麦克风20kΩ电位器5V,5A电源适配器Arduino的草图我在我的项目中使用
Lumazoid彩色音乐代码,并对其进行了少量修改。 原始草图可以从
github下载。
您还需要将其他库
NeoPixel.h和
ffft.h添加到项目中使用的库文件夹中
如果您没有在草图中注册LED灯带的参数,则可以更改它们。 为此,请在不释放图案的情况下按下图案按钮,然后打开电源。 旋转电位计,您需要根据发光的红色LED选择使用的LED灯带的密度:第一个是60,第二个是120,第三个是180。 要将参数保存在EEPROM中,请再次按图案按钮。
要调节亮度,请按住颜色按钮,然后打开电源。 默认情况下,草图中注册了8个LED,它们将以原色发光。 使用参数电位器,可以更改其亮度。 要将参数保存在EEPROM中,请再次按颜色按钮。
配色方案最好选择第三个,因为它是最鲜艳的。 在此模式下,每种颜色都有其自己的频率范围。 我仅列出了8个频率范围,从最低到最高列出了它们的颜色:红色,橙色,黄色,绿色,青色,蓝色,紫色,白色。
如果按住颜色,图案按钮并旋转参数电位器,则可以通过将高-中频等移至最低频率(红色LED)来限制频率范围。 例如,如果您希望彩色音乐仅对低频声音做出反应,那么仅保留低频范围就足够了。
演示彩色音乐可能性的视频。
立即请您为我的视频质量辩解,我用便宜的智能手机拍摄了它。
聚苯乙烯
在NG之前,我想简化麦克风连接图,我将使用max9814,而无需进行额外的捆扎。 MAX9814中带有AGC将使彩色音乐在不同的音量下不会过载。
希望我什么都没错过。 如果您有任何疑问,我将很乐意回答。