Arduino 資料一覧
温度センサー(LM61BIZ)の値を読み取る
2016/12/24更新
対応バージョン: Arduino IDE 1.8.0
Arduinoで温度センサー(LM61BIZ)の値を読み取る。
LM61BIZ 温度センサIC (スイッチサイエンス)
Arduino IDEを動かす母艦はUbuntu 16.04とする。
結線
センサーのピンは3つで刻印面に向かって左から+Vs(電源電圧)、Vout(出力電圧)、GND(グラウンド)。これをArduinoの5V、A0、GNDにそれぞれ接続する。


ソース
Vout(出力電圧)は0℃の時600mVで1℃あたり10mV変化するので例えば20℃の室温の場合、Voutは以下の値になる。
Vout = 600(mV) + (10(mV/℃) * 20(℃)) = 800(mV)
温度を求めるにはセンサーから取得した値、出力電圧、温度それぞれ取り得る値を相互変換すればよい。
具体的にはまずセンサー値(0〜1023)を電圧(0〜5000)に変換し、次にこのセンサーの計測範囲の電圧(300〜1600)を温度(-30〜100)に変換する。
センサー値を電圧に変換
map(センサー値, 0, 1023, 0, 5000)
電圧を温度に変換
map(電圧, 300, 1600, -30, 100)
上記をコードにすると以下のようになるのでArduino IDEでコンパイルしてArduinoに書き込む。
void setup() { Serial.begin(9600); } void loop() { int val = analogRead(A0); float volt = map(val, 0, 1023, 0, 5000); float temp = map(volt, 300, 1600, -30, 100); Serial.println("val = " + String(val) + ", volt = " + String(volt) + ", temp = " + String(temp)); delay(1000); }
Arduino IDEのシリアルモニターには1秒おきに以下のような内容が出力される。

このセンサーに指を触れると体温でセンサーが温まって温度が上昇する。


関連資料・記事
参考サイト
Arduino (Wikipedia)
Arduino技術情報 (Qiita)
Arduino関連情報 (Device Plus)
Arduino記事一覧 (Think IT)
エレクトロニクス豆知識 (ROHM)