湿度計(その2)

はじめに

高分子湿度センサーを利用した回路をさらに改良し、部品数を減らすことに成功しました。

センサー

入手可能な高分子湿度センサーの特性をまず解説します。
原理は非常に簡単で高分子が湿気を吸収するとインピーダンスが低くなるのを利用しています。
インピーダンスと湿度は指数関係にあります。そのため対数変換させる必要があります。
気温が上昇するとインピーダンスが低くなります。そのため温度補償も必要です。
高分子は直流を掛けると電気分解して劣化するため、交流をかける必要があります。
型番メーカ入手先
HIS-02北陸電気工業千石電商
HS15Pサーモメトリクス秋月電子

仕様

測定範囲15-95[%]、これ以外も測定可能ですが誤差が大きくなります。
電源5V単電源
出力電圧増幅調整後 0 - 1[V]、これを0 - 100[%]と直読できます。


回路図

改良(2010-07-14)
  1. 湿度精度改善のため、 D1 と並列に D6 を追加しました。
  2. これに伴い R10 1K を 200 に変更しました。
改良(2004-04-29)
  1. きれいな正弦波にするため R5 と並列に D4 と D5 を追加しました。
  2. D4 と D5 の追加により、正弦波の出力が 1Vpp になるため R7 と R8 が不要になりました。
  3. 確実に正弦波を発振させるため R4 10K を 9.1K に変更しました。
  4. 出力を安定させるため C5 10uF を 47uF に変更しました。

LM324(Vcc=4pin, Gnd=11pin)
  1. 正弦波発振回路
    ウィーンブリッジによる正弦波発振回路です。発振周波数は設計上約1KHzです。周波数精度が湿度精度に影響するわけではないのであまり気にする必要はありません。
    f=1/(2πCR)
    ただし R=R3=R6, C=C1=C2
    ウィーンブリッジの発振条件は
    R5/R4=2
    ですが、実際には確実に発振させるために若干2より大きめにします。 センサーを壊さないように 1Vpp (ピークトゥピーク)にしています。
    このままでは出力インピーダンスが高いので、センサー駆動に影響を与えるばかりでなく、 そのインピーダンスも測定されてしまいます。 そこでオペアンプのバッファー(ボルテージフォロア)をはさんでインピーダンスを限りなくゼロに近づけます(実際には数10Ωあります)。 コンデンサ(C4)で直流分をカットしてセンサーに正弦波を掛けます。
  2. 対数変換+半波反転整流+平滑回路
    オペアンプと2つのダイオード(D2, D3)で理想ダイオード(半波反転整流)を構成しています。 理想ダイオードとコンデンサ(C5)で平滑します。
    ダイオード(D1+D6)の電流フィードバックで対数変換します。 ダイオードの順方向電圧と電流には指数の関係にありこれを利用しています。 ただし、このダイオードは一般的なシリコンのスイッチング用でなければなりません。 ショットキーなどは立ち上がりが早く、高い電圧で指数から外れるため向いていません。
    例、ショットキー(1SS286), 汎用ダイオード(1S1588)の順方向電圧-電流特性

    概ねショットキーの場合 0.4V まで、汎用ダイオードの場合には 0.8V まで指数を示すことがわかります。 使える電圧範囲が広いことも設計上都合がよく、出力電圧を0.8Vまでとることができます。 さらに、ダイオードは気温が上昇すると電流が多く流れます。 これは、湿度センサーの気温が上昇するとインピーダンスが低くなる性質を相殺するように働き、 温度補償します。 そのため対数変換用ダイオード(D1+D6)と湿度センサーは熱結合していることが望ましく、部品配置を考慮してください。
  3. 動作基準電圧
    単電源オペアンプ(Vcc=5V)でプラスとマイナスの信号を扱う必要があるため、動作基準電圧を作り出します。 出力電圧はこの動作基準電圧を基準にしています。GND ではないので注意してください。 反転出力されるので、出力は概ね 0 から -0.8V になります。
  4. 調整方法
    電圧直読にする場合には、反転増幅回路と減算回路(GND基準)を追加して 0 〜 1V を 0 〜 100% と読むとよいでしょう。
    GND基準になり、増幅度で調整します。
    追加回路の例

    LMC662(Vcc=8pin, Gnd=4pin)
    • HS15Pの場合、センサーの代わりに10Kを接続し、出力が 0.68V(68%) になるように VR を調整します。 100Kを接続したとき、0.46V(46%) 前後になるはずです。
    • LMC662などのCMOSである必要があります。LM358やNJM2904では減算回路が正しく機能しません。
    • PIC などで測定する場合には、反転増幅回路を追加して 0 〜 2V にしてA/D変換すると誤差を減らせます。
      ただし、この場合 LM358 ではなく CMOS の LMC662 を使用する必要があります。LM358 の最大出力振幅が 3.5Vpp しかないため、動作基準電圧 2.5V から ±1.75V しか振ることができません。これでは2.5V+2.0Vを得ることはできません。 LMC662 であれば最大出力振幅が4.5Vpp以上あります。
      HS15Pの場合、センサーの代わりに10Kを接続し、出力が 1.36V(68%) になるように VR を調整します。 100Kを接続したとき、0.92V(46%) 前後になるはずです。
    R10 を調整することで、出力電圧(湿度)の傾きを調整できます。傾きが合わないときは 200 から 1K の間で調整すると良いでしょう。
  5. 応用
    3V対応のCMOS単電源オペアンプ(LMC6482,LMC6484,NJU7032D,NJU7044D)を利用すれば、Vcc=3.3Vでも動作します。3.3V電源仕様のPICにも接続できます。電池駆動(1.5V x2)も可能です。


部品表

備考単価
2001R10 カーボン皮膜抵抗1/4W\10
9.1K1R4 カーボン皮膜抵抗1/4W\10
10K2R1, R2 カーボン皮膜抵抗1/4W\10
15K2R3, R6 カーボン皮膜抵抗1/4W\10
20K1R5 カーボン皮膜抵抗1/4W\10
0.01uF2C1, C2 セラミック\10
10uF2C3, C4 縦型電解コンデンサ(耐圧16V)\10
47uF1C5 縦型電解コンデンサ(耐圧16V)\10
1N41486D1, D2, D3, D4, D5, D6 代替品1S2076AでもOK(ただしショットキーやゲルマニュームは不可)\10
LM3241U1 NJM2902, LMC660, LMC6484, NJU7044DでもOK\100
HS15P1SENSOR HIS-02でもOK(高分子湿度センサーならOK)\500
10K1調整用 カーボン皮膜抵抗1/4W\10
100K1調整用 カーボン皮膜抵抗1/4W\10
合計22
\800
追加回路部品
備考単価
10K5R11, R12, R13, R14, R15 カーボン皮膜抵抗1/4W\10
30K1VR 半固定抵抗\50
LMC6621U2 LMC6482, NJU7032DでもOK\150
合計22
\250

基板例

評価

設計した回路を実際に組み、実測してみました。センサーの代わりに抵抗を接続します。
抵抗(Ω)理想湿度[%](HS15P,25C)測定湿度(改良前)[%]測定湿度(改良後)[%]
10M16%-15.13%
1M30%30.27%29.29%
100K46%46.87%47.11%
10K68%67.13%68.35%
2K88%99.6%85.93%
1K96%-97.41%

PIC湿度計

湿度回路の出力を PIC を使って A/D 変換し、LCD に表示するようにしました。 PIC は最新の 16F88 を使用しました。温度補償するため湿度センサーのそばにダイオードD1を配置しています。
R10 を調整することで、かなり精度のよい湿度計になりました。

キットの流用

秋月のキットを流用する場合は電圧計部を以下のように変更してください。
(当方はキットを持っていませんので、動作確認したわけではありません。)
200mV計測レンジを2V計測レンジに変更します。赤丸の部分が変更点です。
これにより、0V 〜 1V を 0 〜 100% と読むことができます。
(C)2004-2010 All rights reserved by Einstein. inserted by FC2 system