502ATサーミスタ温度計、箱入れ
502ATサーミスタを使った温度計、箱に入れました。
めったに手組み基板の裏側はお見せしないんですが、
まぁこんなもんということで。
全穴の片面ユニバーサル基板です。
両面スルーホール基板の手組みはちょいとやりにく
いんですよね。
ハンダが多く流れ込んでしまって、部品面側に出て
しまう。
配線は部品面で。
ハンダ面は主として電源ライン。
近くのところだけはハンダ面側で飛ばします。
ケースに入れたところ↓
上方の青いのはArduino UNO。
ここのチップを抜き去って、手組み基板に取り付け。
RST、TXD、RXD、GNDの3線をArduinoから引っ張って、
書き込みを行います。
※コメント先
・サーミスタで正確な温度を求める方法 - 抵抗値-温度変換計算の精度と誤差: セッピーナの趣味の天文計算
〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜
こちらでの計算処理方法をまとめてみます。
・サーミスタ(手持ちのセミテック502AT)を0.1mA定電流駆動。
・16bitA/Dコンでサーミスタ両端の電圧を測定して、抵抗値を算出。
・セミテックが公開している5℃ピッチの抵抗値データをテーブルに。
(この抵抗値を神様とする。
測定した抵抗値がこの値なら計算温度もジャストとなる)
・測定抵抗値が5度ごとの抵抗値テーブルの、何度と何度の間に入って
いるかをサーチ。
(バイナリサーチで高速化 最大でも5回の比較)
・二つの温度とテーブルの抵抗値からその区間のB定数を計算。
(5度スパンになるので25〜55℃や25〜85℃より偏差がなく、
抵抗値がジャストだと、温度計算結果もジャストとなる)
・サーチした温度、そして計算したB定数、それと測定抵抗値から
温度を計算。
こんな処理です。
測定抵抗値が5度ごとの抵抗値表と一致したとき、サーチした温度と
同じ温度計算値が返ってきます。
必要なのは温度と抵抗値の表で公開されたB定数は使いません。
B定数はそのつど、表から計算します。
浮動小数点での演算が連続しますが、16MHzで動くArduinoでもいがい
と時間がかかりませんでした。
|
2015年6月23日 09時28分
|
記事へ |
コメント(0) |
トラックバック(0) |
|
・電子回路工作 |
トラックバックURL:http://blog.zaq.ne.jp/igarage/trackback/4162/
※ブログ管理者が承認するまで表示されません