LoginSignup
7
5

More than 5 years have passed since last update.

ジャイロセンサーでMIDIエフェクター

Last updated at Posted at 2014-08-13

Arduino + Gyro + MIDI

やりたい事

  • ボタンやつまみ以外の方法のMIDIコントローラーをつくる
  • Gyroセンサーを搭載したArduinoでDAWソフトを操作、エフェクターをつくる
  • できれば無線で

イメージ

IMG_0006.JPG

環境

Mac/Arduino/東芝ジャイロ/
Ableton Live(DAW)/hairless/Audio MIDI設定/

目次

  1. ジャイロの値をArduinoで計算、角度を算出
  2. 角度を整形してMIDIデータとしてシリアルで送信
  3. ソフトウェア経由でシリアルデータをDAWに喰わせる
  4. 送信部分をBluetoothで実装

ジャイロの値をArduinoで計算、角度を算出

値は角度ではないのでそのまま使えません。

qiita.ino

int xPin = A0;
int yPin = A1;

double xVal = 0;
double yVal = 0;
double xPast = 0;

#define gyro_DEFAULT 288
#define gyro_MIN 0
#define gyro_MAX 650
#define midi_MIN 0
#define midi_MAX 127

double xResult = 0;

void setup() {
  //  Set MIDI baud rate:

  Serial.begin(9600);
}

void loop() {

  xVal=analogRead(xPin);
  yVal=analogRead(yPin);

  xResult = map(xVal, gyro_MIN, gyro_MAX, midi_MIN, midi_MAX);

  //Serial.println(xVal);
  Serial.println(xResult);
  Serial.println("");

  delay(40);
}

エフェクターを実装するにあたり、角度が必要。
でもジャイロの値は角速度(?)かなんかなので、そのまま使えません。

角度を整形してMIDIデータとしてシリアルで送信

ジャイロの値は角度ではないのでそのまま使えません。

ソフトウェア経由でシリアルデータをDAWに喰わせる

ソフトウェアにデータを読ませる為にアプリを経由する必要があります。

シリアルデータ > hairless > Audio MIDI設定 > DAWソフト

送信部分をBluetoothで実装

ジャイロの値は角度ではないのでそのまま使えません。

7
5
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
7
5