IoT入門!センサーを使いこなす
- 電子工作
ブログ4週目担当の高橋知成です。先月の投稿ではブレッドボードで初歩的な間違いをしてしまいました。。。なので今回は前半でブレッドボードなどの基本をおさらいします。そして後半は加速度センサーを使って実際に配線をして値をとってみようと思います。
今回は配線図を書くのにFritzing(ダウンロードページ)を使いました。とても便利。
ブレッドボード
ブレッドボードは電子工作を始めた人が必ず使うもののひとつですね。ブレッドボードは、無数の空いてある穴を用いてハンダ付けを必要としないで配線を行うことができます。プロトタイプ用なので取り外しが簡単に行えます。
ブレッドボードの仕組みをみてみましょう。
ポイントは「どの穴とどの穴がつながっているか」を把握することです。
繋がっている穴同士を同じ色でつないでみました。上下の4本は横に。中央部分は縦につながっています。
パーツを配線をする際は必ず、つながっていない2列にまたがるようにします。
前回は2列にまたがらず配線をしていたので、LEDがつかなかったんですね。
【下の写真は配線のNG例です 】
上の写真では、1列に配線してしまったのでLEDがつきませんでした。
中央にある溝はセンサーなどを付けるときに利用できます。
例えば今回使う加速度センサーの底には配線用の凸があります。ブレッドボードの溝がよくできていて、このように固定することができます。
写真のように固定することで、センサーの凸がそれぞれ独立した列に刺さるようになっています。
GND
つぎによく見る表記の1つ「GND」(グランド)。正確な表現ではありませんが、電池のマイナス極と似た役割をもっていると考えると理解しやすくなると思います。
パーツの配線の終わりがGNDに収束するように繋ぐことがポイントです。
デジタルとアナログ
Arduinoなどのボードはデジタルとアナログの入出力に対応しています。そもそもデジタルとアナログの違いってなんでしょう。
簡単に説明してしまうと、
- デジタルは High or Low つまり On か Off だけを扱うことができます。
- アナログは値を細かく読み取りたいときに使えます。
デジタルは電圧がかかっているかいないかしかわかりません。反対にアナログは0Vから5Vの範囲で電圧値がわかります。
センサーを使ってみる
それでは早速センサーをつないで使ってみましょう。今回はセンサーの値の変動を可視化のためにArduinoを使います。
加速度センサー
加速度センサー「KXR94-2050」を使って実際に配線をしてみます。
各番号のピンが以下のような役割を持っていることがわかります。
- Vdd – 電源入力( 2.5v 〜5.25v)
- Enable – Vddに接続
- GND
- 接続しない
- SelfTest – GNDに接続
- X 軸出力
- Y軸出力
- Z軸出力
指示に従って配線をします。
int sensorX = A3;
int sensorY = A4;
int sensorZ = A5;
void setup() {
// 初期化
Serial.begin(9600) ;
}
void loop() {
x = analogRead(sensorX) ; // X軸
y = analogRead(sensorY) ; // Y軸
z = analogRead(sensorZ) ; // Z軸
Serial.println(x); // X軸をグラフで表示
delay(50) ;
}
このコードをArduinoに実行させます。
結果が表示されました。 Arduinoのシリアルプロッタは指定した値のグラフを表示してくれるので直感的にセンサーの値を確認できるので便利ですね。
センサーからのアナログ出力をArduino側でアナログ入力として受け取ったので、センサーからの値を細かく計測することができました。ちゃんと値が取れています。
Fritzingについて
Fritzingとは、無料でオープンソースの回路図作成用ソフトです。回路図を書くときに使用しました。
Fritzingの中にはブレッドボードなど、電子工作で使うパーツがすでに入っています。なので画像を用意する必要がなく、すぐに回路図を書くことができました。
ダウンロード
下のリンクからダウンロードができます。使ってみてください。
まとめ
今回は配線の練習をかねてセンサーを使ってみました。センサーも、少しのルールと用語を覚えておくだけでしっかりと動かせることがわかりました。
また配線描画ツールを初めて使ってみましたがとても使いやすかったです。
次回も電子工作シリーズです。