土壌水分センサー自作!農業IoTと静電容量式の精度

土壌水分センサーを自作して農業IoTを始めませんか?ArduinoやESP32を使った格安で高精度なセンサーの作り方、失敗しない防水加工、そしてプロ仕様のTDR方式まで徹底解説します。あなたの畑に最適なのは?
土壌水分センサー自作の要点
🌾
農業IoTの第一歩

ArduinoやESP32を使えば、市販の1/10以下の価格で土壌水分管理システムが構築可能です。

⚖️
方式の選び方が重要

「抵抗式」は安価ですが腐食に弱く、「静電容量式」は長寿命。本格派なら「TDR」も自作可能です。

🌧️
野外運用の壁

防水加工とキャリブレーション(校正)が、実用的なデータ取れるかどうかの分かれ道です。

土壌水分センサーを自作する

農業のIT化、いわゆる「スマート農業」や「農業IoT」において、最も基本的かつ重要なデータの一つが土壌水分量です。作物の生育に最適な水やり(灌水)のタイミングを知るためには、勘や経験だけでなく、客観的な数値データが不可欠です。しかし、メーカー製のプロ用土壌水分センサーは1本数万円から数十万円することも珍しくありません。広大な畑の複数箇所を測定したい場合、コストが導入の最大の障壁となります。

 

参考)https://www.mdpi.com/1424-8220/20/2/363/pdf

そこで注目されているのが、「土壌水分センサーの自作」です。Amazonや秋葉原の電子パーツショップで数百円で売られているセンサーモジュールと、Arduino(アルドゥイーノ)やESP32といった安価なマイコンを組み合わせることで、1セットあたり数千円以下という格安コストで独自の測定システムを構築できます。

 

参考)自動水やり機の作り方 土壌センサ編|キム日記

もちろん、安価な自作センサーには「精度のバラつき」や「耐久性」といった課題もあります。しかし、適切なセンサー方式を選び、正しい防水加工と校正(キャリブレーション)を行えば、農業現場でも十分に実用的なデータを取ることが可能です。この記事では、初心者でも失敗しない自作センサーの選び方から、プロも唸る高精度な測定方法までを深掘りしていきます。

 

静電容量式と抵抗式の比較:農業向きはどっち?

 

自作で使われる土壌水分センサーには、大きく分けて「抵抗式」「静電容量式(キャパシタンス式)」の2種類があります。結論から言うと、農業IoTとして長期的に運用するなら迷わず「静電容量式」を選ぶべきです。それぞれの特徴と理由を詳しく見ていきましょう。

 

抵抗式センサー(Resistive Sensor)

仕組みは非常に単純で、2本の電極を土に挿し、その間の電気抵抗値を測ります。水は電気を通しやすいため、水分が多いほど抵抗値が下がり、乾燥していると抵抗値が上がります。

 

参考)【ラズパイ】格安な抵抗式・静電容量式の土壌湿度センサーを実際…

  • メリット:
    • 非常に安価(1個100円〜200円程度)。
    • 構造がシンプルで自作しやすい(釘2本でも代用可能)。
  • デメリット:
    • 致命的な腐食(電食): 測定のために電流を流すと、電気分解が起こり、電極が急速に腐食して溶け出します。数週間から数ヶ月で測定不能になることが多く、長期的な農業利用には向きません。

      参考)マイクロビットを使ってみる 〜土壌水分センサを自作する - …

    • 肥料の影響を受けやすい: 土壌中の塩分濃度(肥料成分)が高いと、水分が少なくても電気が流れやすくなり、誤差が大きくなります。

    静電容量式センサー(Capacitive Sensor)

    電極間の静電容量(キャパシタンス)の変化を利用して水分量を測る方式です。土(比誘電率 約3〜5)と水(比誘電率 約80)の比誘電率の圧倒的な差を利用します。水分が増えると誘電率が上がり、静電容量が変化します。

     

    参考)301 Moved Permanently

    • メリット:
    • デメリット:
      • 抵抗式よりわずかに高価(それでも数百円程度)。
      • 製品ごとの個体差がある場合がある。

      参考リンク:土壌水分センサーの仕組みと研究グレードの違い(METER Group) - 各方式の科学的な精度の違いについて詳しく解説されています
      農業現場では「設置したら数ヶ月は放置したい」というのが本音でしょう。そのため、耐久性の面で静電容量式一択と言えます。代表的なモジュールとして「Capacitive Soil Moisture Sensor v1.2」などが広く流通しており、黒い基板の見た目が特徴です。

       

      参考)電子工作で自作した植物の自動水やり機から土壌データをAWS …

      ArduinoとESP32で土壌水分センサーを自作する

      センサーを選んだら、次はマイコンとの接続です。ここでは、電子工作の定番Arduinoと、Wi-Fi機能内蔵でIoTに最適なESP32を使った基本的な構成を紹介します。

       

      用意するもの

      • マイコンボード: Arduino Uno(入門用)または ESP32(Wi-Fi通信用)
      • 静電容量式土壌水分センサー: 「Capacitive Soil Moisture Sensor v1.2」など
      • ジャンパーワイヤー: メス-オス、またはオス-オス
      • ブレッドボード: 配線用

      接続の基本

      静電容量式センサーは通常、アナログ電圧を出力します。マイコンのアナログ入力ピン(ADC)に接続して値を読み取ります。​

      センサー側のピン 接続先 (Arduino/ESP32) 備考
      VCC 3.3V または 5V ESP32の場合は3.3V推奨。5Vで駆動すると出力電圧がESP32の入力許容範囲(3.3V)を超える可能性があるため注意。
      GND GND グランドを共通にします。
      AOUT アナログ入力ピン ArduinoならA0、ESP32ならGPIO32, 34など(ADC1を使用推奨)。

      コードのポイント(Arduino IDE)

      プログラムは非常にシンプルです。

      analogRead()関数を使ってセンサーからの値を読み取るだけです。

       

      1. 生データの確認: まずは何も計算せず、空気中(乾燥状態)と水の中(湿潤状態)での数値をシリアルモニタで確認します。
        • 空気中: 値は大きくなる傾向があります(例:Arduinoで約600〜800、ESP32で約3000など)。これが「水分0%」の基準になります。
        • 水中: 値は小さくなります(例:Arduinoで約200〜300、ESP32で約1000など)。これが「水分100%」に近い基準になります。
        • ※使用するセンサーやマイコンのADC分解能(Arduino Unoは10bit=0-1023、ESP32は12bit=0-4095)によって数値は異なります。

          参考)安価な静電容量式の土壌水分センサーの校正 #IoT - Qi…

      2. マッピング: 取得した最大値と最小値を使って、0%〜100%の水分量に変換します。Arduinoのmap()関数が便利ですが、より正確にするならキャリブレーション式を自分で作る必要があります(後述)。

      const int AirValue = 620; // 空気中での計測値(乾燥)
      const int WaterValue = 310; // 水中での計測値(湿潤)
      int sensorPin = A0;

       

      void loop() {
      int val = analogRead(sensorPin);
      // 値を%に変換(乾燥状態で値が大きい場合)
      int percent = map(val, AirValue, WaterValue, 0, 100);
      // 0〜100の範囲に収める
      percent = constrain(percent, 0, 100);

       

      Serial.print("水分量: ");
      Serial.print(percent);
      Serial.println("%");
      delay(1000);
      }

      ESP32を使えば、読み取った値をWi-Fi経由でGoogleスプレッドシートに送信したり、LINEに「水やりが必要!」と通知したりするシステムも簡単に作れます。これが自作IoTの醍醐味です。

       

      参考)ESP32で作るセンサーノード by airpocket

      精度を左右するキャリブレーションとデータ補正

      「センサーを土に挿して、表示された数字をそのまま信じる」のは、実は大きな間違いです。自作センサー、特に静電容量式はあくまで「電圧の変化」を見ているだけで、本当の「土壌体積含水率(VWC: Volumetric Water Content)」を示しているわけではありません。農業で使えるレベルのデータにするには、キャリブレーション(校正)が不可欠です。

       

      参考)https://www.semanticscholar.org/paper/06c699e24c1fe151958c54d9e68f775ad03490bf

      なぜ校正が必要なのか?

      実践!簡易キャリブレーションの手順

      専門的な機器がなくても、キッチンスケールとオーブン(または電子レンジ)があれば、そこそこの精度で校正式を作ることができます。

       

      参考)http://soillab.ag.saga-u.ac.jp/com/calib1.pdf

      1. サンプルの準備: 畑の土を容器(紙コップなど)に入れ、完全に乾かします(風乾、またはオーブンで乾燥)。
      2. 乾燥重量の計測: 乾燥した土の重さを測ります。センサーを挿して、その時の「アナログ値(Dry)」を記録します。
      3. 加水と計測: 土に少しずつ水(例:10gずつ)を加えてよく混ぜます。その都度、センサーを挿して「アナログ値」を記録し、現在の水分量(加えた水の重さ ÷ 全体の体積)を計算します。
      4. グラフ化: 横軸に「センサーのアナログ値」、縦軸に「計算した水分率(%)」を取り、プロットします。
      5. 近似曲線の作成: Excelなどで近似曲線(一次関数または二次関数)を引き、その式(y = ax + b)をマイコンのプログラムに組み込みます。

      参考リンク:低コスト土壌水分センサーの校正と評価(METER Group) - 校正手順のグラフやデータ補正の具体的な考え方が学べます
      このひと手間をかけるだけで、数百円のセンサーが「なんとなく乾いているかわかるおもちゃ」から「栽培管理に使える計測機器」へと進化します。特に、粘土質の土壌や有機物が多い土壌では、メーカー推奨のデフォルト値と大きくズレることがあるため、この作業は必須です。

       

      腐食と失敗を防ぐ!野外での防水加工テクニック

      自作センサーを室内プランターで使う分には問題ありませんが、農業の現場である「野外」に出した途端、過酷な環境が牙を剥きます。多くの自作IoTチャレンジャーが、「雨」と「結露」によるショートでデバイスを全滅させています。

       

      センサー基板の弱点

      市販の静電容量式センサーは、土に挿す「プローブ部分」はコーティングされていますが、上部の「回路部品(チップやコネクタ)」はむき出しです。ここに雨水がかかったり、土からの湿気で結露したりすると、一瞬でショートして誤作動したり壊れたりします。

       

      最強の防水:UVレジンとシリコン

      野外運用のための防水加工として、以下の方法が有効です。

       

      • 電子部品ごとかためる:

        センサー上部の回路実装部分(黒い四角いチップやコンデンサがある場所)を、100円ショップでも買えるUVレジンエポキシ接着剤で完全に覆って固めます。透明なレジンならLEDの光も見えます。

         

      • ケーブル接続部の保護:

        コネクタ部分は最も腐食しやすい箇所です。直接ハンダ付けしてしまい、その上からバスコーク(シリコンコーキング剤)ホットボンド(グルーガン)で分厚く覆います。さらに熱収縮チューブで補強すれば完璧です。

         

        参考)https://agrinfo.en.a.u-tokyo.ac.jp/meetings/240911/5.pdf

      • ケースへの格納:

        マイコン本体(Arduino/ESP32)は、タッパーや防水電気ボックスに入れます。ケーブルを通す穴は必ず下向きにし、隙間をパテやコーキング剤で埋めます。「水は上から入るだけでなく、ケーブルを伝って入ってくる」ことを忘れないでください。

         

      失敗談あるある:土との接触不良

      防水以外で多い失敗が、「センサーと土の間に隙間ができる」ことです。センサーが風で揺れたり、植物の根が動いたりして土との間に隙間(Air Gap)ができると、センサーは「空気」を検知してしまい、「乾燥している」と誤判定します。

       

      格安でもTDR?2万円で挑む高精度測定の世界

      ここまでは数百円の静電容量式センサーの話でしたが、最後に「もっと本気で測りたい」というマニアックな農家向けのトピックを紹介します。それが、TDR(Time Domain Reflectometry:時間領域反射率測定法)方式の自作です。

       

      TDRとは?

      プロの研究機関や高度な農業制御で使われる「本物」の測定方式です。電気信号(パルス)を金属ロッドに流し、それが先端で反射して返ってくるまでの「時間」を測ります。土壌中の水分が多いほど誘電率が高くなり、パルスの伝播速度が遅くなる性質を利用します。

       

      参考)https://nnhiroba.xsrv.jp/nnTechBlog/Article/Article?ID=60

      • 最大の特徴: 土壌の塩分濃度(EC)や温度の影響を非常に受けにくく、圧倒的に高精度です。
      • 価格の壁: 通常、TDRセンサーは安くても数万円、計測器を含めると10万円以上する高級品です。

      自作TDRへの挑戦

      しかし近年、高速なパルス生成・計測ICやマイコンの進化により、材料費約2万円程度でTDRセンサーシステムを自作する強者が現れています。

       

      参考)https://nnhiroba.xsrv.jp/nnTechBlog/Article/Article?ID=63

      • 必要なもの:
        • 高速な信号処理ができる回路(専用設計の基板が必要になることが多い)。
        • 同軸ケーブルとステンレスのロッド(プローブ)。
        • Raspberry Piなどの処理ユニット。
      • 仕組み: 数ピコ秒(1兆分の1秒)オーダーの信号遅延を計測するため、Arduino単体では難しく、専用の回路設計知識が必要ですが、GitHubなどで設計図やコードを公開しているプロジェクトもあります(例:SoilMoistureSensorTDRなど)。​

      「静電容量式ではどうしても肥料の影響で誤差が出る」「論文レベルのデータを取りたいが予算がない」という場合、この「自作TDR」は電子工作上級者にとって非常に魅力的な選択肢となります。数百円のセンサーから始めて、物足りなくなったらTDRへステップアップするのも、自作農業IoTの深い沼(楽しみ)の一つと言えるでしょう。

       

      参考リンク:材料費2万円で作るTDR土壌水分センサーとデータロガー(nnTechBlog) - TDR方式を低コストで自作するための詳細な回路設計や理論が公開されています

       

      自作の土壌水分センサーは、単なるコスト削減だけでなく、「自分の畑の土を知る」ための最高の学習ツールになります。まずは数百円の静電容量式センサーとマイコン1つから、小さな「デジタル農業」を始めてみてはいかがでしょうか?

       

       


      ユニバーサルスタイラスペン(4本入)静電容量式タッチペン。iphone、ipad、android携帯電話、タブレット、2 in 1 グラフィック、クリック、スライドスクリーンのデジタルペンシル