極客DIY:使用Arduino制作電子鼓
發(fā)表時(shí)間:2023-07-31 來源:明輝站整理相關(guān)軟件相關(guān)文章人氣:
[摘要]我一直想學(xué)打鼓,但卻始終遭到父母的反對(duì),理由是噪音太大,而且十分占空間。多年后,當(dāng)我掌握了很多電子方面的知識(shí)之后,我制作了一個(gè)簡(jiǎn)單的電子鼓,那些問題便迎刃而解,而我也得償所愿。center"...
我一直想學(xué)打鼓,但卻始終遭到父母的反對(duì),理由是噪音太大,而且十分占空間。多年后,當(dāng)我掌握了很多電子方面的知識(shí)之后,我制作了一個(gè)簡(jiǎn)單的電子鼓,那些問題便迎刃而解,而我也得償所愿。
DIY材料:
4*壓電材料、4*CD、鼠標(biāo)墊(足夠削減成八個(gè)CD大。、Arduino、USB接口、1.0M Ohm 的電阻器、PCB、若干導(dǎo)線、4*3.5mm的插頭、插座。
具體步驟:
STEP1
首先將導(dǎo)線與壓電片進(jìn)行連接。我在壓電片上加了一個(gè)金屬帽和一根較短的導(dǎo)線,如果嫌麻煩你可以只需要焊接導(dǎo)線在壓電片上即可。
另外,如果你選擇了使用插頭、插座,導(dǎo)線的另一邊顯然是要焊接到插頭上的。
STEP2
在完成壓電片的導(dǎo)線焊接之后,如原理圖連接壓電片導(dǎo)線至電阻,將壓電片的地線與Arduino的地線進(jìn)行連接。將壓電片的其他導(dǎo)線與Arduino的模擬引腳進(jìn)行連接。
對(duì)于其余不使用的引腳進(jìn)行接地處理,否則可能會(huì)出現(xiàn)不必要的噪音。
然后你需要做的就是按圖所示進(jìn)行焊接,就像我做的一樣。
STEP3
好了,焊接的部分結(jié)束了,接下來要做的是鼓墊。
把CD放在鼠標(biāo)墊上,畫出相同大小剪下。然后用膠帶將壓電片貼在CD上,完成后用膠將鼠標(biāo)墊與CD粘連,我用了一點(diǎn)點(diǎn)強(qiáng)力膠。
對(duì)了,要確保膠水不會(huì)碰到壓電片,否則可能會(huì)造成損壞。
在CD片的邊緣涂上膠水,然后和鼠標(biāo)墊塑制的一面進(jìn)行粘合。另一面也做相同的事,確保鼠標(biāo)墊泡沫的部分在外面。最后對(duì)伸出的導(dǎo)線進(jìn)行一些必要的整理粘合,確?雌饋磔^為好看。
STEP4
上面這些完成后,就剩下最后一步連接電腦了。
連接的方法有好幾種,但經(jīng)過我的測(cè)試后發(fā)現(xiàn), Ardrumo(僅可在Mac OS)是最容易使用的。加載 Arduino 程序后打開Ardrumo 和 Garageband,就可以通過選擇不同的鼓面在 Ardrumo 的界面中看到了。
代碼如下:
/* * Ardrumo sketch * * Use with the Ardrumo software here: * <a href="http://code.google.com/p/ardrumo/" rel="nofollow"> <a href="http://code.google.com/p/ardrumo/"> <a href="http://code.google.com/p/ardrumo/"> http://code.google.com/p/ardrumo/ </a> </a> </a> * This is designed to let an Arduino act as a drum machine * in GarageBand (sorry, Mac OS X only). */ #define LEDPIN 13 // status LED pin #define PIEZOTHRESHOLD 5 // analog threshold for piezo sensing #define PADNUM 6 // number of pads int val; void setup() { pinMode(LEDPIN, OUTPUT); Serial.begin(57600); // set serial output rate } void loop() { // Loop through each piezo and send data // on the serial output if the force exceeds // the piezo threshold for(int i = 0; i < PADNUM; i++) { val = analogRead(i); if( val >= PIEZOTHRESHOLD ) { digitalWrite(LEDPIN,HIGH); // indicate we're sending MIDI data Serial.print(i); Serial.print(","); Serial.print(val); Serial.println(); digitalWrite(LEDPIN,LOW); } } }
觀看視頻:
[參考來源Instructables,譯/Change,轉(zhuǎn)載請(qǐng)注明來自Freebuf黑客與極客]
上面是電腦上網(wǎng)安全的一些基礎(chǔ)常識(shí),學(xué)習(xí)了安全知識(shí),幾乎可以讓你免費(fèi)電腦中毒的煩擾。