- 追加された行はこの色です。
- 削除された行はこの色です。
#topicpath
** LM35DZ を使う [#u4f7a7d2]
*** LM35DZ とは [#jbf7b187]
-- 概要~
ポピュラーな温度センサなので、情報が多い。~
電圧をかけると、0℃〜100℃に対応して 0mV 〜 1000mV の電圧を出力する。~
~
-- 資料~
[[データシート>http://www.national.com/JPN/ds/LM/LM35.pdf]]~
[[秋月電子>http://akizukidenshi.com/catalog/g/gI-00116/]]
*** Arduino で使う [#q91f4ba3]
-- 接続~
--- 電源~
LM35DZ の3つのピンのうち2つは電源(+とGND)に接続する。~
~
--- 出力~
LM35DZ の出力ピンは、Arduino のアナログ入力ピンに接続する。~
ここで、アナログ入力ピンは、A0〜A5 で表示されている。~
&ref(http://arduino.cc/en/uploads/Main/ArduinoUno_r2_front.jpg,,30%);&ref(http://arduino.cc/en/uploads/Main/ArduinoDuemilanove.jpg,,50%);~
~
-- プログラミング~
・参考資料1 : [[リファレンスマニュアル analogRead>http://www.musashinodenpa.com/arduino/ref/index.php?f=0&pos=2079]]~
・参考資料2 : [[リファレンスマニュアル analogReference>http://www.musashinodenpa.com/arduino/ref/index.php?f=0&pos=2170]]~
・参考資料3 : [[PlayGround>http://www.arduino.cc/playground/Main/LM35HigherResolution]]~
~
--- プログラム例~
例えば LM35DZ の出力ピンを A3 ピンに接続したとする。~
int analogPin = 3; // A3 に電圧信号がくる場合
float temperature = 0.0; // 読み取った温度を格納する変数
void setup() {
analogReference(INTERNAL); // 1.1V を最大にするような読み取り
}
void loop() {
temperature = analogRead(analogPin) / 9.31; // アナログピンを読み取り、温度の値にする。
…
}
*** 注意 [#h3a9454b]
- インピーダンスに注意~
-- [[AVR(Arduino)にLM35温度センサをつなげた場合に正しくA/D変換出来ないトラブル>http://homepage3.nifty.com/sudamiyako/zk/AVR_ADC/AVR_ADC.html]] 参照~
教訓的。