辨音識(shí)鍵奏樂(lè)系統(tǒng)(K 題) 【高職高專(zhuān)組】 一、 任務(wù) 設(shè)計(jì)并制作一個(gè)辨音識(shí)鍵的電子琴演奏系統(tǒng),如圖 1 所示,包含:5 個(gè)水杯當(dāng)作琴鍵,1 個(gè)演奏用的敲擊棒,1 個(gè)識(shí)別控制器,具有拾音、分析識(shí)別、顯示、音樂(lè)發(fā)聲等功能。演奏過(guò)程中系統(tǒng)根據(jù)水杯被敲擊時(shí)發(fā)出的聲音識(shí)別出琴鍵(以與位置標(biāo)號(hào)一致的杯號(hào)來(lái)標(biāo)識(shí)),由識(shí)別控制器發(fā)出對(duì)應(yīng)音高(聲音頻率)的聲音。5 個(gè)琴鍵(杯號(hào))與不同音高間的對(duì)應(yīng)關(guān)系由選手自定。
圖 1 系統(tǒng)構(gòu)成示意圖
一、 要求
1. 基本要求 (1)一鍵啟動(dòng)識(shí)別控制器自動(dòng)演奏簡(jiǎn)單樂(lè)曲(如:起床號(hào)、兩只老虎等),時(shí)長(zhǎng)不超過(guò) 15s。 (2)分別敲擊放置在 1、3、5 號(hào)位置上的 3 個(gè)空水杯進(jìn)行識(shí)別學(xué)習(xí)訓(xùn)練,然后逐個(gè)敲擊杯子將杯號(hào)顯示在識(shí)別控制器上,用時(shí)≤90s。 (3)在 3 個(gè)空水杯(2、4、5 號(hào))中各倒入 50、100、150ml 的水,分別進(jìn)行敲擊識(shí)別學(xué)習(xí)訓(xùn)練,然后逐個(gè)敲擊杯子將杯號(hào)顯示在識(shí)別控制器上,用時(shí)≤90s。隊(duì)員敲擊水杯,識(shí)別控制器同時(shí)發(fā)出對(duì)應(yīng)音高的聲音。
2. 發(fā)揮部分 (1)在 5 個(gè)空水杯中由隊(duì)員注入不同容量的水,各杯中水容量之差不小于20ml,分別進(jìn)行敲擊識(shí)別學(xué)習(xí)訓(xùn)練,然后逐個(gè)敲擊杯子將杯號(hào)顯示在識(shí)別控制器上,用時(shí)≤120s。隊(duì)員敲擊水杯演奏簡(jiǎn)單樂(lè)曲(如:起床號(hào)),由識(shí)別控制器發(fā)出樂(lè)曲聲。 (2)在完成發(fā)揮部分任務(wù)(1)的基礎(chǔ)上,再增加 3 個(gè)加有不同水量(30、100、150ml)的杯子,按要求打亂 8 個(gè)杯子排序后并排放置,從其中敲擊識(shí)別出打亂排序前的 1~5 號(hào)杯子,并在敲擊的同時(shí)顯示其杯號(hào),敲到新增杯子后顯示數(shù)字 0,總用時(shí)≤90s。 (3)其他。
二、 說(shuō)明
(1)水杯采用外觀相同的 8 個(gè)容量為 180~220ml 的無(wú)柄玻璃杯,由參賽隊(duì)自備。杯子上不能有任何標(biāo)記和附加物。測(cè)試時(shí)杯子隨機(jī)放置。 (2)敲擊棒自選,要求實(shí)心無(wú)附加裝置,棒上標(biāo)明長(zhǎng)度為 3cm 的敲擊區(qū)范圍。測(cè)試時(shí)統(tǒng)一要求敲擊杯子靠近操作隊(duì)員一側(cè)的上沿。 (3)識(shí)別時(shí)由隊(duì)員在 3s 內(nèi)敲擊同一杯子不超過(guò) 3 次進(jìn)行識(shí)別。 (4)測(cè)試發(fā)揮部分之前按要求用白板筆在杯底外部隨機(jī)標(biāo)記編號(hào),按編號(hào)放置好杯子后啟動(dòng)測(cè)試;疽蟛糠直(hào)為位置號(hào),發(fā)揮部分杯號(hào)為杯底編號(hào)。 (5)識(shí)別控制器演奏音樂(lè)的聲強(qiáng)和音色無(wú)特殊要求,供電方式無(wú)要求。 (6)有時(shí)間要求的任務(wù),超時(shí)以 0 分計(jì)。 (7)注水時(shí)可用注射器或量杯計(jì)量操作。
捕獲聲音信號(hào),做fft,計(jì)算幅值換算距離 應(yīng)該就是用普通的咪頭,靈敏度高。
學(xué)習(xí)訓(xùn)練時(shí),做ADC并FFT后,獲取最高的幾條譜線,并計(jì)算其比例關(guān)系。
識(shí)別時(shí),也是ADC后做FFT,計(jì)算最高的幾條譜線的比例關(guān)系,在一定范圍內(nèi),則為對(duì)應(yīng)的杯子的聲音。
K題求助stc32g單片機(jī)能用的fft函數(shù)
改成STC32G的了,主頻30MHz,先發(fā)程序,使用說(shuō)明還沒(méi)來(lái)得及改。 MCU:STC32G12K128,例子使用實(shí)驗(yàn)箱9.61驗(yàn)證。 主頻:30MHz。 FFT: 256點(diǎn)采樣,128點(diǎn)頻譜顯示,USB-CDC傳給STC-ISP里的示波器界面顯示頻譜。
采樣頻率最高25.6KHz,下面的程序已按樓主要求用12.8KHz采樣,分辨率50Hz。
|