SVX日記
2006-05-14(Sun) オペアンプ実装
もう1年弱が経とうとしているのか、秋月でTGS2450という硫黄化合物ガス検知センサパーツを買ってから。アナログメータ式のニオイセンサを作ろうと思いつつ、すっかり放置してしまっていた。しかし、最近になって、必死に完成させようとしている。やはり、一度、志したモノを放置しておくのは気持ちが悪い。先日、オペアンプをゴニョゴニョしていたのも、実はコレの完成を目的としていたものだ。
しかし、アレだ。TGS2450でググっても、2006年5月15日現在、ウチ以外には製造元と秋月以外、ほとんど引っかからないってどういうコトよ!? このTGS2450という部品は、オレサマ専用なのか!? いや、違うな……ウチのサイトのリンク元情報によれば、ソコソコ多くのドコかのダレかがTGS2450でググってウチのページに飛んで来ている。きっとこの部品の使い方に困ってウチに辿り着いたに違いない……がッ!! しかーしッ!! オイラも同じ状況なのだよッ!! うまくセンサの出力を引き出せず、オイラ自身も毎度のようにググっては、自分のページに行き当たっているのだ……。
Rs= 各種ガス濃度雰囲気中におけるセンサ抵抗値
Ro= 清浄大気中におけるセンサ抵抗値
……とあり、Rs/Roは、ガスを検知するしたがって、0.1〜0.01に加速度的に低下するという仕様だとある。しかし、オイラが晩酌に一杯やった後に酒クサい息を「ハァ〜」とやっても、ちっとも変化がないのである。Rsを検知するためのRLとして10kΩなんてデカい抵抗をくっつけているから? しかしそれは、データシートにRoは5.62k〜56.2kΩであると書いてあって、それがガスの濃度によって、1/10や1/100になるっていうからチョイスしたのだ。間違ってないハズなのだが……。
究極にやっかいなのは、このセンサは、ヒータにもセンサにも間欠的に電流を与えなくてはならないという制約があるコト。つまり、フツーに電池とテスタで計測することができないのだ。結果、PICで制御しつつ、PICでA/D変換サンプリングして、データをとらなければならない。そうでなければ、オシロ。このよーな状態では、センサの挙動がマズいのか、プログラムがマズいのか、さては回路がマズいのか、その切り分けがとてもムズいのである。
で、ここ数週間、ボチボチとネチっこく、アレコレとイジっているウチに、どうも、センサの挙動が……つまりはデータシートが疑わしくなってきたのである……いや、どこかでオイラが間違っているのかもしれない……そうかもしれないのではあるが、少なくともオイラの回路上において、オイラのプログラムでは、センサは高々数100Ω程度をウロチョロするだけなのである。少なくとも、オイラの手元にある複数のセンサがそういう挙動をしているのだ。こりゃもう、そういうモンだと思うしか仕方がない。
こーなれば、10kΩというRLを小さめに変更するテもあるが、電源が単三電池2本である以上、そんなにドバッと電流を流すわけにもいかない。結果としてオペアンプの登場なのである。RLが10kΩのままで、センサの抵抗変化による電圧変化は小さいものの、そいつを10倍くらいに増幅する。でもって、それをPICでA/D変換してやれば、なんとか十分な分解能を確保できるだろう。