センサーの値を読む

最も簡単なセンサーである、可変抵抗の値をArduinoで取得する方法を解説する。
可変抵抗とは、上記左図のような見た目で、中身は右図のようになっている。
つまみを回すと、回した度合いに応じて、A-W間の抵抗値が変わる仕組みだ。
Arduinoの5V端子をA、GNDをBにつなぐと、W端子の電圧が0〜5Vで変化する。
電源をつなぐと、測定値を電圧で教えてくれる、センサーの基本形だ。




可変抵抗の赤ピンをArduinoの5Vに、黒ピンをGNDに、白ピンをA0に入れる。
すると、可変抵抗の回転度合いをA0から読み込む事ができる。
読み込んだ値は0〜1023に変換される。
これをアナログ/デジタル変換(A/D変換)という。
プログラム


読み込んだ可変抵抗の値は、開発環境上部のシリアルモニタ(上記赤丸を押す)から確認できる。
このようにして、Arduinoは様々なセンサーから0〜5Vのアナログ情報を読み込む事ができる。



A/D変換(サンプリングレートと分解能)


デジタル変換は、もとの波形を完全に再現できるわけではない(つまり劣化する)。
一定時間内のサンプル数が多いほど再現性が良くなる。


本来のデータを正しく再生するには、サンプル速度だけでなく、
サンプルの細かさ(分解能)も重要だ。右図では、縦方向が分解能が8段階しかない。
Arduinoは0〜5Vを1024段階(10bit)で変換している。




戻る