【Arduino】DS18B20温度センサで簡易温度計を作る!

今回は、センサーを使った電子工作です。
回路もプログラムも超簡単なのですぐにできると思います。使用するソフトがちょっと多いので躓くかもしれませんが要所要所で説明していきます。

使う部品

  • DS18B20 温度センサー
  • 4.7kΩの抵抗
  • ジャンパーワイヤー
  • ブレッドボード

それと、Arduinoです。

温度センサーは秋月電子とかで売ってるので、買ってみてください。
http://akizukidenshi.com/catalog/g/gI-05276/

温度センサーのデータシートを確認

まずは、ピン配置を知らなければならないので、とりあえずデータシートを見てみます。

↓DS18B20のデータシート
https://datasheets.maximintegrated.com/en/ds/DS18B20.pdf

データシートからピン配置は左から、グランド(-)、真ん中がデータ、一番右側がVcc(+)となっていると様です。

回路作成

データシートには、ご丁寧丸パクリできそうな回路が組んであったので、それで組んでみようと思います。(応用の前に基本からですね)

で、今回は上の図でいうと右のところの

この回路を使います。

配線

とりあえず、データシートの方に書いてあった回路図そのまま配線していきます。

私の場合はこんな感じになりました。

プログラム

 

 

これをArduinoに書き込んでください。
説明をすると、
5行目
#define ONE_WIRE_BUS 2
で、使用するピンを定義して、

19行目 Serial.println(sensors.getTempCByIndex(0));
取得した温度をそのままプリント

12行目
  Serial.begin(9600); //温度表示確認用
シリアルスピード 9600でプリントされたものをかき出しますよ


という、単純なコード

書き込み時に注意するのは、下で説明するシリアルモニタを先に開かないことです。開いてたら書き込みに失敗します。

温度の確認

温度の確認は、「ツール」から「シリアルモニタ」をクリックしてシリアルモニタを開いてください。


もしほかのソフト(teraterm)とかでCOMポートを使用中の場合エラーが出ることがあります。

こんな感じで、温度が表示されてたら完成です。

お疲れ様でした!!