自動潅水システムをさらに拡張(2023)

以前制作し、運用中の自動潅水システムですが、貯水タンクの水位を計測して表示・警告する機能が欲しくなったため、水位センサーを自作することにしました。 初回 自動灌水システムを最終的に自分で構築した話。 前回 自動潅水システムの拡張と電子工作について

今回は、電極を露出したくない&無段階で計測したかったため、静電容量式の水位センサーを作ることに。

Web上にある先人の知識から、静電容量センサーを複数作成しました。しかし、なかなか特性が良いセンサーをつくることができず数か月ほど苦労していました。

下にあるのが最終的なセンサー。上は絶縁が破壊された試作品。

センサー本体の静電容量を稼ぐためには、感度を上げる必要があり、絶縁体を薄くする・センサーの金属面積を増やすなどが考えられます。そこで、0.1mm厚の銅板とラミネートフィルムで実装することにしました。根本はエポキシパテで絶縁&防水しています。これで140pfから800pf程度の静電容量を得ることができました。だたし、ESP32で利用している3.3vの電圧では静電容量を電圧に変換しても数mV程度にしかならないため、A/D変換の前段にオペアンプを設置することにしました。 適当な回路はこちら。(素人設計)

半固定抵抗で感度を調整できるようにし、オペアンプ(LM358)で増幅しています。 また、OSIからの電圧・周波数を上げるなどで感度の調整ができますが、あまり周波数を上げすぎても良くないようです。今回は3.3V(これはマイコン側の電源なので固定) 1MHz 方形波に落ち着きました。

Webコンソールでは棒グラフで貯水量を表示するように対応してみました。

その他ノウハウ

  • センサーと回路を繋ぐためのケーブルには、静電容量に悪影響を与えないためにシールドケーブルを利用する
  • ラミネートフィルムや銅板は角が立っていると、そこからダメージを受ける可能性があるため、角を丸く加工する。
  • ラミネートフィルムのフチは5mm以上残さないと強度が維持できない。
  • 水より比重の重い棒(アクリルやPOM)を接着して曲がらないようにする

今回は水位が30mm~270mmの範囲で計測することができましたが、感度の調整によってより大きいセンサーも作れそうです。(ロングサイズのラミネートフィルムもあるようなので)

今回は水位センサーメインで話しましたが、モーターの駆動をPWMによる制御に変更し、DC/DCコンバーターを外すような対応も加えています。また、httpのAPIで水位と電圧も取得できるようにしたため、定期的に情報を取得して水位や電圧が下がった際に通知するような仕組みも構築しました。ひとまず必要だった機能は全て実装した感じです。

参考文献 http://www5b.biglobe.ne.jp/~YASUSI/gallery/electronics/080817/080817.htm https://www.macnica.co.jp/business/semiconductor/articles/texas_instruments/122553/

この記事へのコメント