超ゆるゆる技術ブログ🌷

プログラミング勉強中です。

【Arduino】振動を測ってみた

振動を読み取るセンサ

f:id:dd15038:20180726153256j:plain
今回は、振動センサーを使ってシリアルモニタでの数字の変化の様子を見ていきたいと思います!

*振動センサの紹介
これが振動センサ。またの名を圧電スピーカー。
f:id:dd15038:20180726153447j:plain
このセンサは、設置場所の振動を検知するものです。
中に圧電素子というのがあるらしく、振動を与えると電圧が発生して振動を検知するようにできています。

また、スピーカーという名前の通り音を出すこともできます。
その場合は逆に、中の圧電素子に電圧をかけて振動を発生させる必要があります。

プログラム

//振動センサを接続するピン
//A0ピンに接続します
const int sPin = A0;

void setup() {
  //9600bpmでシリアル通信
  Serial.begin(9600);
}

void loop() {
  //振動センサの値を取得
  int sValue = analogRead(sPin);

  //シリアルモニタに振動センサからの値を表示
  Serial.println(sValue);

 delay(750);
}

今までやってきたものばかりです。
A0ピンで読み取った振動センサの値を、シリアルモニタへ表示させるプログラムになっています。
今回はdelay()関数で750ミリ秒待たせることにしました。
これぐらいの速度じゃないと振動センサからの値をシリアルモニタで確認しづらい…。

回路図

f:id:dd15038:20180726154844p:plain
振動センサの線って、片方が黒、もう一方が赤で塗られているのにプラスとマイナスは関係ないみたいです。
なのでまぁ適当に、片方はA0ピン、もう片方はGNDピンへつながるようにブレッドボードとジャンパワイヤを使って組みました。

実際のようす

まず、何もしていない普通の状態から。
f:id:dd15038:20180726155505p:plain
数字の変化は小さいです。

↓ここからはいろんな振動を与えてみました↓

1.弱く落とし続けてみる。
f:id:dd15038:20180726155721p:plain
軽~くポンポンポンと振動センサを落とし続けてみただけです。
数字の変化は、何もしていないときに比べれば幅がありますが、小さいです。

2.強く落としてみる。
f:id:dd15038:20180726155829p:plain
ほとんど叩きつけるように強い衝撃を与えてみました。
数字の変化の幅がとても広いです。
500代から一気に200代へ…。

3.叩いてみる。
f:id:dd15038:20180726155958p:plain
指で、デコピンするみたいにコンコンコンとたたき続けてみました。
ちょっと強めに叩いていたからか、数字の変化は大きめです。
かなりまばらにいろいろと動いています。

感想

なんというか…。
これであっているのかよくわかりませんが、シリアルモニタ上の数字は変化しているので良しとしましょう😓
というか、私はこういう事よりも早く、スピーカーというのだから音を出してみたい思いのほうが強いです!
次回以降にはスピーカーで音を出す記事を書きます!