相關(guān)商品



















































【創(chuàng)客學堂】隱形樂器--Arduino助你完成
編輯:Sam2013-08-24 瀏覽次數(shù):1453
藝術(shù)家在舞臺上演奏歌曲時,往往要通過一系列的肢體動作與觀眾互動。而音樂的演奏不僅僅是音樂本身,視覺的享受也占到表演的很大一部分。迎合這種趨勢而開發(fā)的新型樂器就顯得至關(guān)重要了,隱形樂器就此誕生了,今天我?guī)Т蠹矣?span style="color: rgb(255, 0, 0);">Arduino控制器來制作一個隱形樂器,當我們在空中瀟灑的揮動著雙手時,一曲曲優(yōu)美動聽的音樂在耳邊想起。這是一件多么美妙的事情。
下面我?guī)Т蠹疫\用Flex 2.2''彎曲傳感器和Arduino控制器制作一個隱形樂器,先看看我們都用到什么吧,如圖一所示。
圖一 隱形的樂器全家福
接著我們來看下隱形樂器的機械部分,如圖二所示,我們用到的是奧松機器人科技有限公司提供的舵機支架與RB-150MG舵機,這樣使的我們的隱形樂器看起來更加的優(yōu)雅。
圖二 隱形樂器動力部分
機械部分解決完,再來看下電控部分,我這里用的是Arduino UNO 控制器、Flex 2.2''彎曲傳感器,如圖三所示。
圖三 隱形樂器控制部分
現(xiàn)在離我們的目標又近了一步了,我們將安裝到舵機支架上的RB-150MG舵機連接到Arduino 控制器上,如圖四所示。
圖四 隱形樂器的整體部分
硬件部分連接完成,下面就需要我們將代碼通過Arduino IDE下載到Arduino控制器中。
代碼如下:
#include <Servo.h>
#define Servo_1 3 //宏定義鏈接舵機的引腳 3
#define Servo_2 4 //宏定義鏈接舵機的引腳 4
Servo myservo_1,myservo_2; //定義控制舵機的變量
int finger1,finger2;
void setup(){
Serial.begin(9600);
myservo_1.attach(Servo_1); //初始化舵機的控制PWM輸出引腳
myservo_2.attach(Servo_2); //初始化舵機的控制PWM輸出引腳
myservo_1.write(90); //初始化舵機的起始角度
myservo_1.write(90); //初始化舵機的起始角度
delay(100);
}
void loop(){
finger1 = analogRead(0);
finger2 = analogRead(1);
Serial.print("shuzhi: ");
Serial.print(finger1);
Serial.print(",");
Serial.println(finger2);
if(finger1>800) //此處根據(jù)情況 寫具體算法 控制舵機
{
myservo_1.write(170);
delay(500);
Serial.println("-----yes---1");
myservo_1.write(90);
}
else
{
myservo_1.write(90);
}
if(finger2>730) //此處根據(jù)情況 寫具體算法 控制舵機
{
myservo_2.write(10);
delay(500);
Serial.println("-----yes---2");
myservo_2.write(90);
}
else
{
myservo_2.write(90);
}
delay(100);
}
讓我們到視頻中看下實驗效果吧!
當然,在演奏的過程中Arduino 控制器、Flex 2.2''彎曲傳感器、RB-150MG舵機、第三代多功能舵機支架,還是在我們的眼前出現(xiàn)了,接著我們要做的就是把,Flex 2.2''彎曲傳感器放置到手套中,把舵機與舵機支架隱藏在音響旁,當我們帶上手套彎曲手指的時候,就可以演奏出美妙的音樂了!
相關(guān)鏈接
用戶評價
暫時還沒有任何用戶評論