首页
/
每日頭條
/
生活
/
電爵士鼓入門
電爵士鼓入門
更新时间:2026-05-28 06:14:16

隻需一塊Arduino MEGA闆,再配置好電腦(Linux操作系統)上免費或者開源的MIDI應用程序,即可制成一套真正能夠用來演奏的電子爵士鼓。根據你的心願,它可以被做成任何樣式:可以是自己設計的鼓架,也可以是薄膜狀,甚至可以用更加高端的傳感器,玩出各種花樣來。

準備材料

筆者的鼓架由Φ28mm的透明PC管和金屬連接件構成,上面安裝有7個鼓面和2個踏闆,有一個腳踏的低音大鼓(Bass Drum,又稱“底鼓”)、一個軍鼓、兩個嗵嗵鼓(Tom-Tom Drum)、一個吊镲(Crash Cymbal)、一個節奏镲(Ride Cymbal)和一個帶踏闆的踩镲(Hi-Hat)。

主要的電子設備是一塊Arduino MEGA開發闆,還有壓電陶瓷片——它可以用電壓表示其表面壓力的變化率,從而起到采集鼓面震動情況的作用。

制作過程

1 先從制作鼓面開始。為了降低敲擊噪聲,我用雙面膠在木闆上粘貼了一層2mm厚的軟橡膠(你也可以用鼠标墊代替)。這樣既可以靈敏地測到數據,木闆本身又不會發出太大的聲響。

電爵士鼓入門(DIY一套便宜好用的電子爵士鼓)1

2 然後在沒有橡膠的一面粘上壓電陶瓷片(也叫壓電震動傳感器,或者piezo)。如果是新的元器件,焊接導線可能有一點難度,需要塗上助焊劑,用合适的溫度快速焊上。此外提醒,傳感器片不可以用502膠水粘貼,502膠水會腐蝕壓電陶瓷。在元器件兩端并聯一個1kΩ的電阻,防止元器件産生太高的電壓。完成後可以用示波器測試元器件的輸出電壓,确保即使大力敲擊木闆,元器件也不會産生高于5V的電壓,因為Arduino的ADC最大隻可以承受5V的輸入。将這些元器件用膠布固定好,制作出不同大小的多個鼓面。

電爵士鼓入門(DIY一套便宜好用的電子爵士鼓)2

3 然後就可以将制作好的鼓面固定在支架上了。我用了M10絲杆和螺帽,以及自己設計的3D打印件。

電爵士鼓入門(DIY一套便宜好用的電子爵士鼓)3

4 踏闆很好制作。如果不需要力度響應,用兩個鍵盤的延音踏闆即可(實際為腳踏開關)。

電爵士鼓入門(DIY一套便宜好用的電子爵士鼓)4

5 接下來測試下位機端的程序。圖中所示為Arduino Nano,因為其模拟輸入口數量不夠,最終換用Arduino MEGA。設計一塊擴展闆,以便用你喜歡的接口連接各個鼓面。

電爵士鼓入門(DIY一套便宜好用的電子爵士鼓)5

6 将鼓面按程序中設定好的順序分别連接闆子的I/O口,硬件部分就全部完成了!

電爵士鼓入門(DIY一套便宜好用的電子爵士鼓)6

PC端軟件

這裡需要在安裝Linux操作系統的PC上安裝以下軟件:

(1)Jackd:這是一個簡單易用的MIDI、ALSA接口管理器;

(2)Qjackctl:Jackd的GUI界面,可能會自動安裝上;

(3)Fluidsynth:MIDI合成器;

(4)Qsynth:Fluidsynth的GUI;

(5)Fluid-soundfont-gm:免費的MIDI音色庫;

(6)Hairless-Midiserial:MIDI-串口轉換器。

如果需要編曲、伴奏等更高級的功能,還需要rosegarden等音序器應用程序。

電爵士鼓入門(DIY一套便宜好用的電子爵士鼓)7

将它們分别打開,進行一些設置。

1 打開Hairless的Settings,設置好對應的波特率,然後選擇Arduino的串口号,在“Serial<->MIDI Bridge On”前打鈎,此時Arduino會重啟。

電爵士鼓入門(DIY一套便宜好用的電子爵士鼓)8

2 打開QSynth的Setup,切換到Soundfonts選項卡,單擊“Open”加載Fluid音色庫。

電爵士鼓入門(DIY一套便宜好用的電子爵士鼓)9

3 最後一步,打開Qjackd 的Connects窗口,在ALSA選項卡中,将Hairless的輸出端口連接到Fluid的輸入端口上,大功告成!

電爵士鼓入門(DIY一套便宜好用的電子爵士鼓)10

4 在QSynth的Channels窗口中選擇第10通道,可以切換很多種鼓的聲音。

電爵士鼓入門(DIY一套便宜好用的電子爵士鼓)11

設置好這些後,就可以試着演奏了,電腦的揚聲器中會實時播放出你敲擊的鼓面所對應的聲音。

MIDI協議

Arduino向PC發送信息的代碼片段如下:

void midiSend (int cmd, int pitch, int velocity) {

Serial.write(cmd);

Serial.write(pitch);

Serial.write(velocity);

}

這種通信協議就是MIDI協議。标準的樂器MIDI有其特定的波特率(31250)。因為我們這裡可以使用串口-MIDI轉換,所以可以随意設置波特率。一句MIDI指令包含3字節數據:

(1)MIDI命令,就是啟動或者停止一個音符;

(2)音符,指定要傳送的是哪個音符;

(3)力度,這個音符的演奏力度強弱。

//Adjust this if your pads are

dull or too sensitive

//{crash, hat, snare, tom_bass, crash_right, tom_high, tom_low}

unsigned char adc_cutoff[7]=

{3,3,10,7,3,3,3};

//minimum strength

unsigned char adc_limit[7]=

{40,10,30,50,40,10,10};

//maximum strength

以上這段代碼是每個鼓面力度範圍設置,請根據制作所用的材料和結構不同進行設置,如果某些鼓面不靈敏,或者過于靈敏,這些值有可能需要大幅調節。

然後,程序會輪詢收集來自各個傳感器的數據并判斷兩個踏闆的開關量。

for(byte count=0;count<=6;count )

{

adc_sample[count]=map(analogRead (adc_channel[count]),0,1023,0,254);

}

因為在一次敲擊過程中,鼓面可能會振動一小段時間,可能會使Arduino采集了太多次,向電腦發送大量數據,導緻電腦停止響應。簡單的解決方法是,在每次采集過程的最後加一句“delay(5);”。這種方法不會降低實時性。

以上這些就是制作這套Arduino架子鼓的一些經驗。基于這種思想,還可以做出很多不一樣的樂器,以及多用途控制器等産品。

,
Comments
Welcome to tft每日頭條 comments! Please keep conversations courteous and on-topic. To fosterproductive and respectful conversations, you may see comments from our Community Managers.
Sign up to post
Sort by
Show More Comments
推荐阅读
迪士尼飛躍地平線項目介紹
迪士尼飛躍地平線項目介紹
“飛越地平線”是上海迪士尼裡面最火的一個項目,但我聽了各種描述以後,一直對之持懷疑态度:這不就是個球幕電影嗎?在VR的時代,這種“傳統”技術的魅力還能維持下去嗎?帶着這個疑問,我來到了上海迪士尼。這是寒冷冬天的非周末時間,學校裡的孩子們還沒...
2026-05-28
人間冷暖須自知
人間冷暖須自知
時之歲末,萬物冬藏。可有三位老友,卻愛極了這寒冷的冬天,他們相約在大雪紛飛的日子,或迎風而舞,或靜數流年,或暗香浮動,它們享受着這歲寒的清歡。古人稱其為“歲寒三友”,不僅因為它們對困境不服輸的态度讓人動容,而是其借助天地大美,賦予了生活永不...
2026-05-28
城鄉居民養老保險一次性能補交
城鄉居民養老保險一次性能補交
近半年來,有許多地區又放開了城鄉居民養老金一次性補繳的通道,這對于很多人來說,是個不可多得的機會。按照《2020年人力資源和社會保障事業發展的統計公報》宣示沒有參加基本養老保險的就業人員數量約為4.5億人,未參保的人群中大部分都是農民,因為...
2026-05-28
tp-link藍牙适配器蘋果手機
tp-link藍牙适配器蘋果手機
TP-Link在2022年CES上宣布了其Tapo品牌智能家居産品新陣容,包括支持HomeKit的智能燈、插頭和一個智能開關。TP-Link自2019年以來一直以Tapo品牌在歐洲銷售智能家居産品,但現在該公司首次将其引入美國。此前,Tap...
2026-05-28
好吃的老北京紅燒排骨
好吃的老北京紅燒排骨
如果現在有誰的家裡冒了煙那可不得了!濃濃的煙霧夾雜着嗆鼻的氣味肯定人人咳嗽打涕,緊随着就有人給119打電話,叫來了物業管理員或居民委員會的幹部,馬上察看這煙霧的來龍去脈!即危險又污染環境,那還了得!逮住了批評!罰款!看你下次還敢不敢放煙!過...
2026-05-28
Copyright 2023-2026 - www.tftnews.com All Rights Reserved