結局探しても見つからなかったので、秋月で3軸加速度
センサーを買ってきちゃいました。
以前、可変抵抗3つ繋いで電圧を計測するスケッチを
以前作って置いたので、配線を繋ぐだけでサクッと
動きました。
こんな具合。
スケッチはこんな感じです。
int ledPin = 3; // select the pin for the LED
int analogpin0 = 0; // select the pin for analog0 input
int analogpin1 = 1; // select the pin for analog1 input
int analogpin2 = 2; // select the pin for analog2 input
int data = 0; // input data from ADC
void setup() {
pinMode(ledPin, OUTPUT); // declare the ledPin as an OUTPUT
Serial.begin(9600);
Serial.println("start");
}
void loop() {
data = analogRead(analogpin0); //read data from analog0 pin
Serial.print(" X=");
Serial.print(data - 512 + 11000);
Serial.print(",");
data = analogRead(analogpin1); //read data from analog1 pin
Serial.print(" Y=");
Serial.print(data - 512 + 11000);
Serial.print(",");
data = analogRead(analogpin2); //read data from analog2 pin
Serial.print(" Z=");
Serial.println(data - 512 + 11000);
analogWrite(ledPin, data/4); //(works on pins 3, 5, 6, 9, 10, and 11)
delay(100);
}
LEDは例によってreduino-nanoに合わせてデジタル3番
としています。必要に応じて変更してください。
X軸はアナログ0、Y軸はアナログ1、Z軸はアナログ2
に繋いでいます。
なお、入力した3軸の値はUARTでPCに送信しますが、
座標に11000を足しています。これはなぜかというと…
サンプリングした閾値の桁を安定させるためです。
特に意味はありません。
ただ、こうしておくとPC側画面がスクロールしていった
時に、桁数が一定なので見やすくなります。
もちろん別のものに使う場合にはこんな数字は不要です。
いずれにしても、単に3軸加速度センサーをarduinoに
繋ぐのは簡単でした。
一点ちゃんとしておかないとならないのは、3軸加速度
センサーの電源端子にパスコンを入れておくこと
くらいでしょうか。
(外した状態では実験してないのでどうなるかは
判りませんが、秋月の付録データシートには
パスコンをつけるように書いてあったので。)
それ以外にも、キャラクターLCD表示のライブラリに
ついても実験を行ったのですが、その件はまた後で…。
|