電子發(fā)燒友App

硬聲App

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示
創(chuàng)作
電子發(fā)燒友網(wǎng)>電子資料下載>電子資料>制作可聽音樂的便攜式設(shè)備

制作可聽音樂的便攜式設(shè)備

2023-06-19 | zip | 0.00 MB | 次下載 | 免費(fèi)

資料介紹

描述

Tinkercad 項(xiàng)目 ?

你能給聚會帶來光明,讓它變得更有趣嗎?

這就是問題所在。答案是肯定的(當(dāng)然)。

教程是關(guān)于制作一個可聽音樂的便攜式設(shè)備,并使用 NeoPixel LED 的同心環(huán)創(chuàng)建音樂可視化。

試圖讓設(shè)備“跳舞”,即隨著音樂的節(jié)拍移動,但事實(shí)證明節(jié)拍檢測比聽起來更復(fù)雜(不是雙關(guān)語),所以“跳舞”有點(diǎn)尷尬,但仍然存在。

該設(shè)備支持藍(lán)牙,并將響應(yīng)文本命令。我沒有時間編寫應(yīng)用程序來控制派對燈(AndroidiOS)。如果你能勝任這項(xiàng)任務(wù) - 請告訴我?。。?/font>

如果您喜歡本教程,請在Make It Glow比賽中投票!

補(bǔ)給品:

要構(gòu)建派對燈,您將需要:

  • STM32F103RCBT6 Leaflabs Leaf Maple Mini USB ARM Cortex-M3 Module for Arduino(鏈接在這里)-設(shè)備的大腦。這些相對便宜的設(shè)備非常強(qiáng)大,不清楚你為什么會回到 Arduino。
  • MSGEQ7頻段圖形均衡器 IC DIP-8 MSGEQ7(鏈接在這里
  • HC-05HC-06藍(lán)牙模塊(鏈接在這里
  • Adafruit MAX9814麥克風(fēng)(鏈接在這里
  • 一個標(biāo)準(zhǔn)的伺服電機(jī)(鏈接在這里)是你想讓你的設(shè)備“跳舞”
  • CJMCU 61位WS2812 5050 RGB LED驅(qū)動開發(fā)板(鏈接在這里
  • TTP223觸摸按鍵模塊電容式可設(shè)置自鎖/無鎖開關(guān)板(鏈接在這里
  • 超緊湊5000-mah雙 USB 輸出超薄移動電源(鏈接在這里
  • 電阻、電容、電線、膠水、螺絲、原型板等。

第 1 步:想法

?
?
?
?
poYBAGOYvtKAZHd7AAzoyfF2ZVM868.jpg
?
1 / 2
?

這個想法是有一個便攜式設(shè)備,可以放置在靠近音樂源的地方,這將創(chuàng)建豐富多彩的音樂可視化。您應(yīng)該能夠通過按鈕(觸摸)和藍(lán)牙控制設(shè)備行為。

目前,Party Lights 實(shí)現(xiàn)了 7 個可視化(如果您有更多想法,請告訴我?。?/font>

  • 同心彩色圓圈
  • 馬耳他十字
  • 脈動燈
  • 壁爐(我個人最喜歡的)
  • 行車燈
  • 光樹
  • 橫向段

默認(rèn)情況下,設(shè)備將每分鐘循環(huán)一次可視化。但是,用戶可以選擇堅持使用一種可視化和/或手動循環(huán)瀏覽它們。

如果用戶喜歡特定的顏色組合,則旋轉(zhuǎn)其調(diào)色板的可視化也可能被“凍結(jié)”。

作為更多控制,用戶可以更改麥克風(fēng)靈敏度并啟用/禁用伺服電機(jī)“跳舞”模式。

第 2 步:原理圖和聲音處理

?
?
?
?
pYYBAGOYvtSAdwnGAAAwDZRwBDA218.jpg
?
1 / 4
?

一個fritzing原理圖文件包含在Github上的“files”子文件夾中。

基本上,MSEQ7 芯片進(jìn)行音頻處理,將音頻信號分成 7 個頻段:63Hz、160Hz、400Hz、1kHz、2.5kHz、6.25kHz 和 16kHz

微控制器使用這 7 個波段來創(chuàng)建各種可視化,基本上將各自的波段幅度映射到 LED 光強(qiáng)度和顏色組合。

聲源是具有 3 級增益控制的麥克風(fēng)。您可以根據(jù)聲源的遠(yuǎn)近/響亮,使用其中一個按鈕循環(huán)切換增益設(shè)置。

微控制器還嘗試在 63Hz“低音”頻帶上執(zhí)行“節(jié)拍”檢測。我仍在研究一種可靠的方法來檢測和保持節(jié)拍對齊。

“觸摸”按鈕的使用是一項(xiàng)實(shí)驗(yàn)。我認(rèn)為它們工作得很好,但是,缺乏新聞反饋有點(diǎn)令人困惑。

第 3 步:LED 輪

?
?
?
?
poYBAGOYvteAWH4cAAC_fN0Esz0768.png
?
1 / 3
?

可視化的核心是一個 61 LED 輪。

請注意,這部分是單獨(dú)的戒指,您必須將它們放在一起。我寧愿認(rèn)為銅線用于電源線(也可以很好地將環(huán)固定在一起)和細(xì)信號線。

LED 編號為 0 到 60,從底部外部 LED 開始,順時針向內(nèi)。中心 LED 為 60 號。

每個可視化都依賴于二維數(shù)據(jù)陣列,將每個 LED 映射到目標(biāo)可視化段的特定位置。

例如,對于同心圓,有 5 個段:

  • 外圈,LED 0 - 23, 24 LED 長
  • 第二個外圈,24 - 39 個 LED,16 個 LED 長
  • 第三個圓圈(中心),LED 40 - 51,12 個 LED 長
  • 第二個內(nèi)圈,LED 52 - 59,8 個 LED 長
  • 內(nèi)部 LED, LED 60, 1 LED 長

可視化映射了 7 個音頻通道中的 5 個,并根據(jù)它們在圓形頻帶中的位置與頻帶中的聲音級別成比例地逐漸點(diǎn)亮 LED。

其他可視化使用不同的數(shù)據(jù)結(jié)構(gòu)和格式,但想法始終是由數(shù)據(jù)數(shù)組驅(qū)動可視化,而不是由代碼驅(qū)動。通過這種方式,可以將可視化調(diào)整為不同的形狀(更多或更少的 LED,更多的 EQ 波段),而無需更改代碼,只需更改數(shù)據(jù)數(shù)組中的值。

例如,這是可視化 1 的數(shù)據(jù)結(jié)構(gòu)在草圖中的樣子:

// Visualization 1 & 3 - full 5 circles
const byte TOTAL_LAYERS1 = 5;
const byte LAYERS1[TOTAL_LAYERS1][25] = {
//00  01  02  03  04  05  06  07  08  09  10  11  12  13  14  15  16  17  18  19  20  21  22  23  24
{ 24,   0,  1,  2,  3,  4,  5,  6,  7,  8,  9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23 },
{ 16,  24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39 },
{ 12,  40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51 },
{ 8,   52, 53, 54, 55, 56, 57, 58, 59 },
{ 1,   60 }
};

第 4 步:可視化

?
?
?
?
pYYBAGOYvtmAMlmZAAEIR-QZ4Bo621.png
?
1 / 7
?

到目前為止,有 7 個可視化和一個啟動動畫:

開機(jī)動畫

當(dāng)設(shè)備打開時,會顯示模仿煙花。這應(yīng)該是一個 LED 和伺服測試序列,但后來演變成此類測試的動畫版本

同心彩色圓圈

燈光以與相應(yīng) eq 波段的幅度成比例的同心圓環(huán)繞顯示屏。在順時針和逆時針之間隨機(jī)切換,并在 256 色輪上緩慢旋轉(zhuǎn)顏色

馬耳他十字

一個波段是中心 LED。另一個波段是 LED 的垂直和水平線,其余部分代表每個 EQ 波段。所有段都在 128 偏移中旋轉(zhuǎn)顏色以保持對比度。

脈動燈

每個圓圈為一個專用的 eq 波段一致地點(diǎn)亮所有 LED,同時緩慢旋轉(zhuǎn)顏色并略微偏移。EQ 頻段逐漸從一個圓圈移動到下一個圓圈,從而產(chǎn)生向外的進(jìn)展。

壁爐

這些帶是從底部到頂部點(diǎn)亮的半圓形,從鮮紅色開始,然后在上升的過程中添加黃色,模擬壁爐中燃燒的火焰。偶爾明亮的白色“火花”會隨機(jī)射出。沒有顏色旋轉(zhuǎn)

行車燈

每個同心圓都是一個單獨(dú)的 EQ 頻段。領(lǐng)先的 LED 是位于中心 LED 下方垂直線上的 LED。一旦 LED 點(diǎn)亮與波段幅度成正比,它就會開始圍繞相應(yīng)的圓圈“運(yùn)行”,強(qiáng)度逐漸降低。支持時鐘和逆時針旋轉(zhuǎn),隨機(jī)切換。

光樹

這些部分從底部 LED 以一條直線向上點(diǎn)亮,然后以同心半圓形向側(cè)面點(diǎn)亮,模仿棕櫚樹。顏色旋轉(zhuǎn)。

橫向段

這是以前馬耳他十字的一個版本,僅使用了 2 個對角線段。應(yīng)該類似于聲波的圖標(biāo)。

第 5 步:觸摸按鈕控件

?
poYBAGOYvtuAVzhuAAD8c2GgQj0190.jpg
?

有 4 個觸摸感應(yīng)按鈕:

  • 循環(huán)顯示可視化并保持當(dāng)前的狀態(tài),直到選擇另一個(默認(rèn)情況下,可視化每 30 秒循環(huán)一次)
  • “凍結(jié)”/“解凍”當(dāng)前配色方案 - 如果您喜歡特定的顏色組合,您可以將其凍結(jié) - 顏色旋轉(zhuǎn)被禁用,可視化將繼續(xù)使用此調(diào)色板
  • 調(diào)整麥克風(fēng)靈敏度
  • 打開/關(guān)閉“跳舞模式”

在跳舞模式下,設(shè)備會嘗試檢測當(dāng)前播放音樂的“節(jié)拍”,并根據(jù)節(jié)拍轉(zhuǎn)動頭部。說實(shí)話,到目前為止,“跳舞”不是很漂亮,而是尷尬。

第 6 步:節(jié)拍檢測和伺服“跳舞”

?
pYYBAGOYvt6AOU_AAACgetrJaBI282.png
?

該設(shè)備不斷嘗試將當(dāng)前曲調(diào)的“節(jié)拍”檢測為 63Hz 頻帶的連續(xù)峰值之間的距離。一旦檢測到(并且僅在舞蹈模式打開時),設(shè)備將激活其伺服電機(jī)根據(jù)節(jié)拍隨機(jī)向左或向右轉(zhuǎn)動。

歡迎任何關(guān)于如何使其更可靠的好主意!

“Music_Test_LED”草圖以適合使用 Arduino IDE 繪圖的方式輸出 7 個 EQ 頻段。

第 7 步:3D 形狀

?
?
?
?
poYBAGOYvwGARn3-AAsIXlxRwJs360.jpg
?
1 / 3
?

整個派對燈組件是使用 Autodesk TinkerCAD 從頭開始??設(shè)計的。

原始設(shè)計位于此處github.com 上的“files/3D”文件夾包含 STL 模型。

此設(shè)計說明了設(shè)備的組裝方式。

所有組件都經(jīng)過打印,然后組裝/粘合在一起。

“圓頂”承載著微控制器、藍(lán)牙板和麥克風(fēng)。微控制器放置在 40 毫米 x 60 毫米板上,并由指定的導(dǎo)軌支撐。

伺服系統(tǒng)位于圓頂?shù)摹巴取敝?,而按鈕位于底座中。

電池倉專為耗材部分中提到的電池類型而印刷。如果您選擇使用不同的電池,隔間將不得不進(jìn)行相應(yīng)的重新設(shè)計。

第 8 步:電源

?
?
?
?
pYYBAGOYvwOAU0juAABLamXiNzo929.jpg
?
1 / 2
?

一個超緊湊的 5000 毫安雙 USB 輸出超薄移動電源似乎提供了足夠的電力運(yùn)行數(shù)小時。

電池盒的設(shè)計使其與設(shè)備的其余部分分離,并且可以更換為專為不同類型電池設(shè)計的電池盒。

USB 插頭已定位并熱粘合到位,以便在電池滑入時連接電池。

第 9 步:藍(lán)牙控制

?
poYBAGOYvwWARQlNAAD6SmxFjGE751.jpg
?

添加了一個 HC-05 模塊以提供一種無線控制設(shè)備的方法。

打開時,設(shè)備會創(chuàng)建一個名為“ LEDDANCE ”的藍(lán)牙連接,您可以將其與手機(jī)配對。

理想情況下,應(yīng)該有一個允許控制 PartyLights 的應(yīng)用程序(選擇調(diào)色板、模擬按鈕按下等)。然而,我還沒有寫過一篇。

如果您有興趣幫助為 Party Lights 編寫 Android 或 iOS 應(yīng)用程序,請告訴我!

控制設(shè)備,目前可以使用藍(lán)牙終端應(yīng)用,發(fā)送如下命令:

LEDDSTAT - 返回一個由 '0' 和 '1' 組成的 3 字符數(shù)字:

  • 第一個位置:'0' - 顏色不旋轉(zhuǎn),'1' - 顏色正在旋轉(zhuǎn)
  • 第二個位置:'0' - 跳舞模式關(guān)閉,'1' - 跳舞模式開啟
  • 第三個位置:'0' - 麥克風(fēng)處于正常增益,'1' - 麥克風(fēng)處于高增益
  • LEDDBUTT n - 其中n為“1”、“2”、“3”或“4”模擬按下相應(yīng)按鈕。例如:LEDDBUTT1
  • LEDDCOLR c - 其中c是從 0 到 255 的數(shù)字 - 色輪上所需顏色的位置。設(shè)備將切換到指定的 LED 顏色。

第十步:基于Blynk控制App

?
?
?
?
pYYBAGOYvwmAWFzpAAFy75Fvkcw760.jpg
?
1 / 7
?

Blynk ( blynk.io ) 是一個與硬件無關(guān)的物聯(lián)網(wǎng)平臺。我在我的物聯(lián)網(wǎng)自動植物灌溉系統(tǒng)教程中使用了 Blynk,對該平臺的易用性和穩(wěn)健性印象深刻。

Blynk 支持通過藍(lán)牙連接到邊緣設(shè)備——這正是 PartyLights 所需要的。

如果您還沒有,請下載Blynk 應(yīng)用程序,使用此步驟附帶的屏幕截圖注冊并重新創(chuàng)建 Blynk PartyLights 應(yīng)用程序。請確保虛擬引腳分配與屏幕截圖上的相同,否則應(yīng)用程序上的按鈕將無法按預(yù)期工作。

文件“ blynk_settings.h ”包含我個人的 Blynk UID。當(dāng)你創(chuàng)建你的項(xiàng)目時,它會被分配一個新的供你使用。

上傳PartyLightsBlynk.ino草圖,啟動應(yīng)用程序。與藍(lán)牙設(shè)備配對,享受派對。

第 11 步:草圖和庫

?
pYYBAGOYvwyAE_RfAAB9nAmB1do138.png
?

主要草圖和支持文件位于 Github.com。

Party Lights 草圖中使用了以下庫:

  • TaskScheduler - 協(xié)作式多任務(wù)處理 -在這里(由我開發(fā))
  • AverageFilter - 模板化平均過濾器 -在這里(由我開發(fā))
  • Servo - 伺服控制 - 是一個標(biāo)準(zhǔn)的 Arduino 庫
  • WS2812B -NeoPixel 控制 - 作為 STM32 封裝的一部分

Wiki 頁面解釋了如何將 STM32 板與 Arduino IDE 一起使用。

第 12 步:未來的改進(jìn)

在這個設(shè)計中可以改進(jìn)一些事情,如果你開始這個項(xiàng)目,你可能會考慮:

  • 使用ESP32代替 Maple Mini 板。ESP32 有 2 個 CPU、藍(lán)牙和 WiFi 堆棧,可以運(yùn)行在 60MHz、120MHz 甚至 240MHz。
  • 更小的設(shè)計——由此產(chǎn)生的設(shè)備很大。可能更緊湊(特別是如果你放棄跳舞的想法和相關(guān)的伺服)
  • 節(jié)拍檢測可以無限改進(jìn)。對我們?nèi)祟悂碚f自然而然的事情,對計算機(jī)來說似乎是一項(xiàng)艱巨的任務(wù)
  • 可以設(shè)計和實(shí)施更多的可視化。
  • 而且,當(dāng)然,可以編寫一個應(yīng)用程序來通過一個很酷的 UI 無線控制設(shè)備。

下載該資料的人也在下載 下載該資料的人還在閱讀
更多 >

評論

查看更多

下載排行

本周

  1. 1山景DSP芯片AP8248A2數(shù)據(jù)手冊
  2. 1.06 MB  |  532次下載  |  免費(fèi)
  3. 2RK3399完整板原理圖(支持平板,盒子VR)
  4. 3.28 MB  |  339次下載  |  免費(fèi)
  5. 3TC358743XBG評估板參考手冊
  6. 1.36 MB  |  330次下載  |  免費(fèi)
  7. 4DFM軟件使用教程
  8. 0.84 MB  |  295次下載  |  免費(fèi)
  9. 5元宇宙深度解析—未來的未來-風(fēng)口還是泡沫
  10. 6.40 MB  |  227次下載  |  免費(fèi)
  11. 6迪文DGUS開發(fā)指南
  12. 31.67 MB  |  194次下載  |  免費(fèi)
  13. 7元宇宙底層硬件系列報告
  14. 13.42 MB  |  182次下載  |  免費(fèi)
  15. 8FP5207XR-G1中文應(yīng)用手冊
  16. 1.09 MB  |  178次下載  |  免費(fèi)

本月

  1. 1OrCAD10.5下載OrCAD10.5中文版軟件
  2. 0.00 MB  |  234315次下載  |  免費(fèi)
  3. 2555集成電路應(yīng)用800例(新編版)
  4. 0.00 MB  |  33566次下載  |  免費(fèi)
  5. 3接口電路圖大全
  6. 未知  |  30323次下載  |  免費(fèi)
  7. 4開關(guān)電源設(shè)計實(shí)例指南
  8. 未知  |  21549次下載  |  免費(fèi)
  9. 5電氣工程師手冊免費(fèi)下載(新編第二版pdf電子書)
  10. 0.00 MB  |  15349次下載  |  免費(fèi)
  11. 6數(shù)字電路基礎(chǔ)pdf(下載)
  12. 未知  |  13750次下載  |  免費(fèi)
  13. 7電子制作實(shí)例集錦 下載
  14. 未知  |  8113次下載  |  免費(fèi)
  15. 8《LED驅(qū)動電路設(shè)計》 溫德爾著
  16. 0.00 MB  |  6656次下載  |  免費(fèi)

總榜

  1. 1matlab軟件下載入口
  2. 未知  |  935054次下載  |  免費(fèi)
  3. 2protel99se軟件下載(可英文版轉(zhuǎn)中文版)
  4. 78.1 MB  |  537798次下載  |  免費(fèi)
  5. 3MATLAB 7.1 下載 (含軟件介紹)
  6. 未知  |  420027次下載  |  免費(fèi)
  7. 4OrCAD10.5下載OrCAD10.5中文版軟件
  8. 0.00 MB  |  234315次下載  |  免費(fèi)
  9. 5Altium DXP2002下載入口
  10. 未知  |  233046次下載  |  免費(fèi)
  11. 6電路仿真軟件multisim 10.0免費(fèi)下載
  12. 340992  |  191187次下載  |  免費(fèi)
  13. 7十天學(xué)會AVR單片機(jī)與C語言視頻教程 下載
  14. 158M  |  183279次下載  |  免費(fèi)
  15. 8proe5.0野火版下載(中文版免費(fèi)下載)
  16. 未知  |  138040次下載  |  免費(fèi)