PIC16F84電子遊戯(65) |
最終更新日:2002年3月11日 |
サーミスター温度計 (1ページ) (2ページ)へ (3ページ)へ |
|
サーミスター温度計を作ろう
|
ついに登場しました。サーミスターを使った温度計です。もちろんA/Dコンバーターは使用しません。半導体の温度センサーより抵抗値の変化するサーミスターのほうが使い安いです。まあ、精度はそれなりですが・・・・・
でも実用に耐えられると思いますので今回発表いたします。 |
サーミスター温度計のサーミスターを知る
|
今回の製作はサーミスターが最も重要です。去年、部品の買出し(?)に日本橋に出かけたときに「シリコンハウス共立」で入手しました。
石塚電子株式会社の「103AT−1」というサーミスターです。樹脂でモールドされていて、長いリード線がついているので大変使いやすいと思います。
温度範囲は-50〜+105℃で、25℃の抵抗値が10kΩ、B定数は3435Kのものです。
部品の詳細は石塚電子株式会社のホームページへどうぞ。 |
|
さてサーミスターは温度によってどのように変化するのでしょうか。
部品のHPには詳しい資料が準備されていますが、簡単に説明します。
まずは次の式を見て下さい。 |
|
まず判っている定数を入れてみましょう。B定数は3435K、25℃のときの抵抗値は10kΩですから絶対温度に換算するとT1=273+25になり、R1=10kとなります。
これより、例えば0℃のときの抵抗値を求めてみます。T2=273としてR2を導く計算をすると約28.7kΩとなります。
そうですね、温度が下がれば抵抗値が大きく、上がれば抵抗値が小さくなるのです。
しかし、上記式はサーミスターの変化の近似式になっており、温度による正確な抵抗値は部品のHPよりダウンロードするのがベストです。温度の低い部分と高い部分で微妙に抵抗値が計算値と変わってきます。
石塚電子のHPより技術データのページに移動すると、「103AT−1」の抵抗値データのエクセルファイルがあります。これをダウンロードして使用します。 |
サーミスター温度計の原理 |
さてこの温度による抵抗値の変化をどのようにして電気的に処理すればいいのでしょうか。
一般的には、コンデンサによる充電時間を計測する方法があります。
このコンデンサの充電を基準にサーミスターによる電圧を比較して、その時間を計測することによりサーミスターの変化を時間の変化に置き換える方法です。 |
|
PICからトリガを掛けてコンデンサの充電をスタートさせます。同時にPIC内部のタイマーをスタートさせます。サーミスタのつながった回路からの電圧とコンデンサの充電電圧をOPアンプで比較して、一致すれば(正確には超えると)OPアンプの出力が反転するので、その信号でPIC内部のタイマーをストップさせます。
そのタイマーが動いている時間を計測すればよいことになります。
もう少し具体的な回路でかんがえましょう。
次の図はこのコンデンサの充電とサーミスタの電圧を比較する部分の回路をシミュレーションしたものです。 |
|
トランジスタのベースがPICからトリガする部分と考えて下さい。(Aポイント)
ここをHからLにすることによってトランジスタのコレクタがOFFとなり5VからR6(200kΩ)を通してコンデンサC1(0.1uF)に充電がスタートします。
一方サーミスタ(この場合R4)も5Vから抵抗分割して接続されており、この分割ポイントの電圧(Bポイント)とコンデンサの充電電圧(Cポイント)をOPアンプで比較するものです。コンデンサの充電電圧がサーミスターの分割電圧を越えればOPアンプの出力が反転します。
PICはこの信号を読み取りタイマーをストップさせます。
上図はサーミスタ(R4)を低温側に振ったとき(R4=68KΩ)の抵抗値でシミュレーションしたものです。
タイマースタートから約2.4msecでOPアンプの出力が反転しました。 |
|
上図はサーミスタ(R4)を高温側に振ったとき(R4=1kΩ)の抵抗値でシミュレーションしたものです。この場合約12.9msecで出力が反転しています。
これらの時間を温度に換算すれば温度計が出来上がるというわけです。
ちなみにこの電子回路シミュレータについては姉妹HPの電子回路シミュレータで遊ぼうへお越しください。
このようにして回路シミュレータでPICでカウントすべき時間を推測することが出来ます。 |
サーミスター温度計の回路 |
かなり早いですが、今回製作する回路を下図に示します。私は16ドットのマトリックスLEDで表示部を組み立てましたが、計測の原理さえマスターすれば表示方法は皆さんの自由にどうぞ。 |
|
ということで今回はここまでとしておきましょう。 |
これからも益々面白くなる「PIC16F84電子遊戯」をよろしくお願いいたします。 |
|
不明点などあればメールお願いいたします。nonchansoft@nifty.com |
|
|