arduinoで温度計を作ってみた(回路編)

こんにちはkazuです。
本日はarduinoで温度計を作ってみたので
解説していきます。

はじめに

まずは今回どのようなものを作成したかといいますと、
温度センサから温度を取得してそれをセグメント(LED)に
温度を表示させる。
さらに取得した温度をpythonを使用してcsvとして出力させる
ということを目標としました。
正直に言いすとこの記事を書いている時は
まだ不完全です。
どのように不完全かといいますとセグメントを表示したままcsvを出力させると
0.01秒ごとでcsv出力させるしかないのです。
それで完成したと言われればまだ改良の余地がありますが、
セグメントに関してはなくてぶっちゃけなくても良いので
ひとまず個人としては完成しています。
せっかくですので今回のコードを記事にすることにしました。
何かの役に立てば幸いです。

使用した部品

まず今回使用した部品を紹介します。

  1. 220Ωの抵抗 : 7個
  2. LM35DZ 温度センサIC : 1個
  3. NAR161-B セグメントLED : 2個
  4. ジャンパーワイヤー
  5. ブレッドボード : 1枚
  6. arduino UNO : 1個

を使用しました。

arduinoでの使用ピン

aruduinoで
実際に使用したピンを記載していきます。
温度センサ – arduino
Vout – A0
+Vs – 5V
GND – GND

セグメント – arduino
1(e) – Digital(6)
2(d) - Digital(5)
3(GND) – なし
4(c) – Digital(4)
5(D.P.) – なし
6(b) – Digital(3)
7(a) – Digital(2)
10の位の8(GND) – Digital(11)
1の位の8(GND) – Digital(13)
9(f) – Digital(7)
10(g) - Digital(8)

上のセグメント対応表をみてGNDだけ、「ん?」と
思った方もいると思いますので
少し解説します。
ちなみにですが、GND以外は同じ番号どうし渡らせているだけです。
話は戻りますが、このGNDが切り替えつまりスイッチのような役割をしています。
どういうことかといいますと10の位の処理をしている間は1の位の13番ピンをLOWにして
0Vにする処理をしてGNDの役目をさせています。
また1の位の時は10の位の逆で1の位の処理をしている間は11番ピンをLOWにして
0VにしてGNDの役目をさせています。
セグメントが1つだけなら普通にGNDで問題ないのですが温度は2桁で設定していますので
今回は上記のように配線をしました。

実際に見てみよう

文字だけではわかりずらいと思いますので
完成したものを見てみてください。

ちょっとわかりずらいですかね?
上の通りに配線すると画像の通りになります。
今回は私は右側に温度センサそして
左側にセグメントを置いています。

最後に

いかがでしたでしょうか?
今回は温度計の回路を紹介してみました。
次回はarduinoのコードを紹介していきます。
最後までご覧いただきありがとうございました。

関連記事

こんにちはkazuです。 arduinoで温度計を作ってみたので 解説していきます。 今回はプログラミング編です。 センサから温度取得 まずは温度センサから温度を取得するためのコードになります。 まだセグメントは関係ないです。 […]

関連記事

こんにちはkazuです。 arduinoで温度計を作ってみたので 解説していきます。 今回はpythonプログラミング編です。 pythonでのcsv取得 pythonからのcsv作成はあまり難しいことは ありません。 コード[…]