AVRで温度計を作るために考える

作りたいと思ってから1ヶ月ほどが経過した。
時間を空けすぎるのはよくないので、作るのに何が必要か、どうやって作るのかを調べることにした。

温度を測るには温度計センサー(LM60BIZ)なるものがあるようで、
こいつを使えば温度によって電圧を返してくれるらしい。
比較的難易度は低そうだ。

実は湿度計も同時に作ろうと思ったのだけど、
安く入手できるHS-15Pを使うとなると、
湿度によって変動するインピーダンスを調べて対数演算が必要らしい。
あほの俺には無理だ。

TDKが出しているCHK-GSSというのを使うと、
電圧の変化で処理できる上に、温度も分かるらしい。俺でも出来そう。
しかし2000円くらいするので尻込みしてしまった。
今回は温度計のみで絞ることにした。

ACアダプタを使う

今まで乾電池から電源を取っていたけど、ACアダプタを使うことにした。
スイッチングACアダプター12V1A(NP12-1S120)を使う予定だ。
12Vの電圧を5Vまで降圧させる必要があるので、3端子レギュレータ(LM7805CV)を使う。

ノイズや発振を防ぐために、前後にコンデンサをかませる必要があるようだ。
0.33μF50Vと0.1μF50Vを使うことにした。

ブレッドボードでも簡単に使えるようになる、
ブレッドボード用DCジャックDIP化キットというものを使う。

7セグLEDを使う

計測した温度を表示するために7セグLEDを利用する。
3桁表示できるC-533Sを使うことにした。

各セグメントに対してマイコンの各ポート接続してしまうと、
ポート数が足りなくなってしまうので、トランジスタで電流を増幅させダイナミック点灯させる。

トランジスタは、2SC1815GRで60V150mAまで増幅出来るようだ。

各セグメント(8本)に対して、10mA程度流せば十分なようなので、
10mA * 8本 = 80mAが必要な計算だ。余裕をもって100mAとした。

トランジスタとマイコンの間には必要以上に電流が流れないように、電流制限抵抗というものが必要らしい。

このトランジスタの電流増幅率(hFE)は100で、
トランジスタを通すことによって0.7Vほど電圧降下がすることを考慮して、以下ように計算した。
(5V – 0.7V) * 100hFE / 100mA = 4.3kΩ
4.3kΩに近い4.7kΩの抵抗を使うこととした。

トランジスタのコレクタとベース間には安定化させるために抵抗が必要らしいので、
10kΩの抵抗を使うことにした。
あとはエミッタと7セグLEDのコモンに接続すればいいはずだ。

続いて、各セグメントとマイコンのポートに接続する。
この時に抵抗も挟む必要があるので、7セグLEDの順方向電圧の1.8Vを差し引いて、抵抗値を以下のように計算した。
(5V – 0.7V – 1.8V) / 0.01A = 250Ω
近い240Ωの抵抗を使うこととした。

必要なもの

これでだいたいの流れを調べたので、必要なものをピックアップする。
マイコンはATTinyしか持っていなかったので、ATMegaも買うことにした。
あとこれから必要になるであろうテスターと、いくつか抵抗も追加で買う。

部品名 型番 値段
AVRマイコン ATMEGA328P-PU 250円
ポケット・デジタルマルチメータ(テスタ)[周波数+容量][オートレンジ] P-10 1000円
7セグメントLED表示器 超高輝度赤色3文字(3桁)(カソードコモン) C-533SR 200円
高精度IC温度センサ LM60BIZ 100円
ブレッドボード用DCジャックDIP化キット 100円
トランジスタ 2SC1815GR 200円
3端子レギュレータ[5V1A] LM7805CV 100円
絶縁型ラジアルリードタイプ積層セラミックコンデンサー0.33μF50V 100円
絶縁型ラジアルリードタイプ積層セラミックコンデンサー0.1μF50V 100円
カーボン抵抗(炭素皮膜抵抗)1/4W 10kΩ 100円
カーボン抵抗(炭素皮膜抵抗)1/4W 4.7kΩ 100円
カーボン抵抗(炭素皮膜抵抗)1/4W 240Ω 100円
カーボン抵抗(炭素皮膜抵抗)1/4W 1kΩ 100円

マイコン先生に確認してみたところ、これで大丈夫らしい。
チェックが入らなかったのは嬉しい。
注文したらいよいよ組み立てることになるからワクワクだ。