土壌センサーはラズパイに直接つないでも、正確な数値はほぼ読み取れません。
農業で土壌の水分量を把握したいとき、最初に手が届く選択肢が土壌センサーとラズパイの組み合わせです。しかし、ここで多くの方がつまずくポイントがあります。それがアナログ信号とデジタル信号の違いです。
土壌水分センサーのほとんどは「アナログ出力」といって、0〜5Vの間で連続的に変化する電圧信号を出力します。一方、ラズパイのGPIO(入出力ピン)はデジタル信号しか処理できず、しかも扱える電圧は最大3.3Vです。つまり、センサーからの5V信号をそのままGPIOに接続すると、ラズパイが破損する危険があります。
そのためには、ADコンバーター(アナログ→デジタル変換IC)が必要です。代表的なICとしては「MCP3002」(2チャンネル)や「MCP3208」(8チャンネル)があります。これらをブレッドボード上に挿して、ラズパイとSPI通信でつなぐことで、センサーの数値をPythonプログラムで読み取れるようになります。
ADコンバーターが必須です。
よく使われる土壌水分センサーには、YL-69(抵抗式・安価)と静電容量式センサーの2種類があります。抵抗式は価格が安く1,000円以下から入手できますが、電極が腐食しやすく屋外での長期使用には向きません。静電容量式は腐食に強く長期間安定して動作しますが、価格はやや高め(1,000〜3,000円程度)です。
農業での実用を考えるなら、静電容量式センサーを選ぶのが原則です。
参考:土壌水分センサーの接続方法と制御プログラムの書き方が手順ごとに公開されています。
【手順を完全公開】土壌水分センサーデータをラズパイで自動取得 – 構築編
ラズパイで土壌センサーを動かすために必要な部品は、以下の5点です。
合計でも、ラズパイ本体を除けば1,500〜3,000円程度で揃います。これは市販のスマート農業向けセンサーシステム(数万〜数十万円)と比べると圧倒的に安価です。
配線はハンダ付け不要です。
接続の基本手順は次のとおりです。まずADコンバーターIC(MCP3002)をブレッドボードの中央の溝をまたいで挿します。次に土壌水分センサーの「VCC」ピンをブレッドボードの3.3V電源ライン、「GND」をGNDライン、「AO(アナログ出力)」をMCP3002のCH0ピンに接続します。最後にMCP3002とラズパイをSPI通信でつなぎます(CLK・MISO・MOSI・CE0の4本)。
注意点として、ラズパイのGPIOは3.3V系です。センサーや周辺ICの電源も必ず3.3Vで揃えてください。5Vを直接GPIOに加えるとラズパイが壊れます。また配線作業中は必ずラズパイの電源を切っておきましょう。
接続後、ラズパイのOSで「SPI通信」を有効化する設定が必要です。ターミナルで`ls -l /dev/spi*`と入力してspidev0.0などが表示されれば問題ありません。次に、Pythonライブラリ「adafruit-circuitpython-mcp3xxx」をインストールし、プログラムを実行するとADC値と電圧値が取得できます。
参考:ラズパイとMCP3208を使ったSPI通信接続の手順が詳しく説明されています。
Raspberry PiでADコンバータ(MCP3208)を使う – Naviplus Tech Blog
土壌センサーの値をラズパイで取得するPythonコードの基本構成は、次のとおりです。
```python
import busio
import digitalio
import board
import adafruit_mcp3xxx.mcp3002 as MCP
from adafruit_mcp3xxx.analog_in import AnalogIn
# SPI通信の初期化
spi = busio.SPI(clock=board.SCK, MISO=board.MISO, MOSI=board.MOSI)
cs = digitalio.DigitalInOut(board.CE0)
mcp = MCP.MCP3002(spi, cs)
# CH0にアナログ入力チャンネルを作成
chan = AnalogIn(mcp, MCP.P0)
# センサー値の取得
print('ADC生の値: ', chan.value)
print('電圧: ' + str(chan.voltage) + 'V')
```
このコードを実行すると、センサーが土に挿さっている状態に応じて0〜65535の間の数値と電圧が表示されます。土が乾燥していれば電圧が高く、湿っていれば低くなります。この特性を使って、「電圧が2.0V以下なら給水不要、2.5V以上なら水やり実行」といった閾値(しきいち)を設けることで、自動給水システムの判定ロジックが作れます。
つまり電圧の高低で乾湿を判断します。
実際の農業応用では、以下のような拡張がよく行われます。
プログラム経験が浅い方でも、コピペとターミナルの操作だけで動かせる点がラズパイの大きな強みです。コードを書き換える必要があるのは主に閾値の数値だけなので、まずは動かしてみてデータを観察することが大切です。
これは使えそうですね。
農業で使う土壌水分センサーは、大きく3種類に分類されます。それぞれ価格・精度・耐久性が大きく異なるため、用途に合わせた選択が重要です。
まず「抵抗式(電気抵抗式)」は、YL-69に代表されるもっとも安価なタイプです。土の中の電気抵抗を測定して水分量を推定します。価格は1個500円以下から入手でき、入門用として手軽ですが、電極がサビやすく外での長期連続使用には不向きです。家庭菜園の試験用や室内栽培向けと考えると良いでしょう。
次に「静電容量式」は、土壌の誘電率変化から水分量を測定する方式です。電極が腐食しにくく、圃場での連続使用に適しています。精度は±3%程度と十分実用的で、価格は1,000〜3,000円程度です。農業用の自動灌水システムには静電容量式が最適です。
そして「TDR(時間領域反射)式」は、もっとも精度が高い方式です。本来は数十万円する専用機器が必要でしたが、ベクトルネットワークアナライザー(NanoVNA、約9,000円)とラズパイを組み合わせることで、合計2万円以下で製作できます。測定精度が高く多地点計測も可能なため、研究や大規模農場への応用が期待されます。
| センサー種類 | 価格の目安 | 耐久性 | 精度 | 主な用途 |
|---|---|---|---|---|
| 抵抗式(YL-69) | 500円以下 | 低(腐食あり) | △ | 入門・室内栽培 |
| 静電容量式 | 1,000〜3,000円 | 高 | ○(±3%) | 農場・ハウス栽培 |
| TDR式(DIY) | 約2万円(全体) | 高 | ◎ | 研究・大規模農業 |
TDRならDIYで精度が出ます。
参考:材料費2万円以下でTDR式土壌水分センサーを自作する方法が詳しく解説されています。
材料費2万円で作るTDR土壌水分センサーとデータロガー【前編】
土壌センサーとラズパイを農業に活かす最大の応用が、自動灌水システムです。土が乾いたら水やりを自動でスタートし、十分に湿ったら停止するという仕組みを、材料費数千円〜数万円で構築できます。
システムの基本構成は次の4要素です。
動作の流れはシンプルです。センサーが「土が乾燥している(電圧が閾値以上)」と判定したらGPIOをHIGHにしてリレーをON、ポンプが動く。センサーが「十分に湿った」と判定したらGPIOをLOWにしてポンプを停止する。この判定と動作を1時間に1回など定期的に繰り返せば、無人での自動水やりが実現します。
自動化すると見回り不要になります。
スマート農業の先進事例では、IoTシステム導入後に10アール(1,000㎡)あたり年間約30.5時間かかっていた水管理作業が大幅に短縮されたという報告があります。従来の「感覚と経験」による水やりから、センサーデータを基準にした管理に切り替えることで、過剰灌水や過少灌水を防ぎ、作物の品質向上にもつながります。
さらにGoogle スプレッドシートへの自動記録機能を追加すれば、毎日の土壌水分データが蓄積されていきます。1週間・1か月単位で傾向を確認することで、圃場ごとの保水特性の違いや、気温との関係性も見えてきます。「データを育てる農業」の第一歩として、ラズパイによる自動記録は非常に有効です。
参考:ゼロアグリによる自動灌水システムの農業事例で、年間30.5時間の水管理作業削減が紹介されています。
AIで水やりと施肥を自動化・最適化。小さく始めるスマート農業 – リゾートテック
実際にIoT土壌センサーシステムを農業に導入すると、どのくらいの効果が出るのでしょうか。農林水産省や農研機構のスマート農業実証プロジェクトでは、具体的な数字が報告されています。
まず作業時間については、センサーによる環境監視の自動化で「見回り作業が60〜80%削減」された事例が複数確認されています。例えば10haの施設園芸では、従来1日3回・合計3時間かかっていた巡回確認が、アラート対応のみの約30分に短縮されました。1日2.5時間の削減は、年間換算で約900時間以上になります。時給換算にすると、年間100万円以上の人件費節減に相当します。
節水効果も見逃せません。土壌水分センサーと制御システムを組み合わせた灌水管理では、通常のタイマー灌水と比べて約70%以上の節水効果が実証されています。秋や梅雨時期にはさらに節水率が上がるケースもあります。水道代・ポンプの電気代の削減にも直接つながります。
収量・品質向上についても、以下の数字が報告されています。
収量10〜25%向上が基本です。
農業用IoTセンサー全体の経済効果としては、年間330万円程度の総合効果が試算されています(年間売上1,000万円規模の農家の場合)。初期投資の回収期間は3〜5年程度が目安で、経営規模が大きいほど短縮されます。ラズパイを使ったDIYシステムはその初期投資を10分の1以下に抑えられるため、回収も早くなります。
参考:農業用IoTセンサーの仕組み・種類・導入効果が体系的に解説されています。
農業用IoTセンサー設置の仕組み・種類・導入効果を徹底解説 – Megdai
「プログラムに自信がない」「配線を間違えそうで不安」という農業従事者には、DIYキットから始める方法があります。専用のキットを使えば、部品の選定・組み立て・初期設定のハードルが大幅に下がります。
代表的な製品として、㈱ワビットの「Arsprout DIYキット2 内気象ノード」があります。ラズパイ本体・専用拡張ボード・ADC・ケースが一式セットになっており、温湿度・CO2センサーに加えてアナログ系のセンサー(土壌水分センサーを含む)も接続できます。Wi-FiでLANに接続すれば、スマホやPCから現在の計測データをどこからでも確認可能です。
クラウド連携機能も充実しています。「Arsproutクラウド」サービスを使えば、3G無線通信で広い圃場もカバーでき、月額1,700円からという比較的リーズナブルな価格で使い始められます。
大規模農場での多地点計測にも対応できます。
ただしコストは割高になります。
スマート農業DIYの入口として「Raspberry Pi Pico W」を使う方法も注目されています。Pico Wは本体価格が約1,000円と非常に安価でありながら、Wi-Fi機能を内蔵しています。土壌水分センサーと組み合わせてFirestoreなどのクラウドDBにデータを送信するシステムは、材料費合計3,000〜5,000円程度で構築できます。まずは圃場の一角でテスト運用し、効果を確認してから拡大するという段階的なアプローチが現実的です。
参考:DIYキットでスマート農業を始めるための製品解説と構成が詳しく紹介されています。
DIYキットではじめる低コストなスマート農業 – タコスキングダム
圃場でラズパイ・センサーシステムを実際に動かすとき、室内テストでは出なかったトラブルが発生することがあります。事前に把握しておけば対策できるポイントを整理します。
最も多いトラブルが「防水・防塵対策の不足」です。ラズパイ本体は屋外環境に対してそのままでは弱く、雨や結露で基板が損傷します。防水ケース(IP65以上の規格品)に収納し、ケーブル引き込み口にはコーキングやグランドを使って密封することが必須です。ハウス内であっても霧状の水分が機器に触れると故障の原因になります。
次に「GPIOへの5V印加によるラズパイ破損」です。土壌センサーの電源は5Vで供給できますが、センサーのアナログ出力をGPIOに直結すると5V信号が流れ込み、3.3V動作のラズパイが破損します。ADコンバーター(MCP3002/3208)を必ず経由させることで、電圧変換が行われて安全に信号を読み取れます。
また「センサーの校正不足」も精度に直結します。同じ土壌センサーでも個体差があり、ADC値と実際の含水率(体積含水率%)の関係は土質によっても変わります。購入直後は必ず「完全に乾いた状態」と「水を十分含んだ状態」の両端の値を記録し、その範囲でスケーリングするキャリブレーション作業が必要です。
対策は3点だけ覚えれば大丈夫です。
電源管理も課題になります。ラズパイ3B+の消費電力は最大で約15W(5V×3A)です。圃場に電源がない場合は、20W以上のソーラーパネルと大容量モバイルバッテリーを組み合わせるシステムが現実的です。ただし冬季は日照時間の短縮とバッテリー性能低下(低温で30〜50%低下することがある)が重なるため、余裕を持った容量設計が必要です。
土壌センサーで取得したデータを「記録して活用する」段階に進むと、クラウドへの接続が重要になります。Raspberry Pi Pico WはWi-Fiを内蔵しており、クラウドデータベースへの書き込みが比較的簡単に実装できます。
Firestoreへのデータ送信のおおまかな流れは次のとおりです。まずPico WのMicroPythonで土壌センサーのADC値を読み取ります。次にHTTPS経由でFirestoreのREST APIにデータをPOST送信します。Firestoreのコンソール画面でデータが更新されているか確認します。最後にGoogle Looker StudioやスプレッドシートでFirestoreのデータを可視化すれば、スマホから圃場の状態をリアルタイムで把握できます。
クラウド化すればスマホで確認できます。
さらにLine Notifyを組み合わせると、土壌水分が設定した閾値を下回ったとき(例:体積含水率30%以下)に、スマホのLINEに「水やりのタイミングです」という通知を自動送信できます。圃場が自宅から遠い場合や、複数の圃場を管理している農業従事者にとっては特に有効な仕組みです。
データを蓄積し続けることで、圃場ごとの「保水パターン」が見えてきます。例えば「砂質土の圃場Aは雨から3日後に水分が40%を下回る」「粘土質の圃場Bは同じ天気でも5日持つ」といったパターンがデータとして可視化されると、次第に勘ではなく数字で管理できるようになります。
これが精密農業の本質です。
一般的なラズパイ活用事例では、1台のセンサーで1か所の土壌水分を測定するのが主流です。しかし、センサーを複数使って圃場内の複数地点を同時計測する「圃場マッピング」という活用法は、まだあまり語られていません。
同じ圃場でも、端と中央では日当たり・排水状況・土質が異なります。水やりを均一に行っても、乾きやすい場所と保水しやすい場所ができ、作物の生育に差が出ていることがあります。圃場マッピングでは、3〜5か所にセンサーを配置して同時計測し、どこが先に乾くかのパターンを把握します。
MCP3208(8チャンネルADC)を1個使えば、最大8個のアナログセンサーを1台のラズパイで同時に読み取れます。センサー8個+MCP3208の追加コストは1〜2万円程度です。これでハウス全体の水分分布マップを週次で作成し、スプレッドシートに色分けして可視化すれば、灌水量の偏りを数字で把握できます。
この手法が生産物の品質均一化につながります。均一に水分管理できた圃場では、収穫物の大きさ・糖度のばらつきが減り、規格外品の割合が下がります。規格外品が10%減るだけで、農家の収益改善に直結します。大規模導入の前に、小さな圃場でこの多点計測を試してみる価値は十分にあります。
ラズパイを使ったDIYシステムであっても、スマート農業に関連する補助金制度を活用することができます。農業のデジタル化・省力化を支援する公的な補助制度は複数存在します。
農林水産省の「スマート農業推進総合パッケージ」では、IoTセンサーや自動化機器の導入に対して国の補助率1/2、さらに地方自治体の上乗せ補助を組み合わせることで、自己負担を大幅に削減できる仕組みになっています。また2024年10月に施行された「農業技術活用促進法(スマート農業技術活用促進法)」により、スマート農業への取り組みを支援する制度的な枠組みが整備されました。
補助金申請の前に知っておきたい点があります。補助金の対象となるのは「計画的な導入」であることが多く、試験的なDIY工作では対象外になるケースもあります。事前に地元の農業振興事務所や農業協同組合の担当者に相談し、補助対象機器・申請書類・スケジュールを確認しましょう。申請前に動かし始めると対象外になる制度もあります。
申請前確認が条件です。
スマート農業の市場規模は拡大を続けており、2024年度には国内で約332億円規模に達したとの調査報告もあります。今後さらに補助制度や普及支援の充実が見込まれるため、情報収集を続けながらタイミングを見て導入するのが賢明な判断です。
参考:農研機構によるスマート農業技術の活用手引きで、導入前の準備から経済効果の算出方法まで解説されています。
電子工作もプログラミングも初めてという農業従事者が、土壌センサー×ラズパイに取り組む場合、どの順番で進めると効率的でしょうか。
最初の1週間は「ラズパイを動かすこと」だけに集中してください。OSをmicroSDにインストールし、モニターとキーボードをつないで起動する。
ターミナルで簡単なコマンドを打ってみる。
これだけで十分です。Pythonで`print("Hello")` を実行できれば準備完了です。
2週目は「LEDの点滅」から始めるのがおすすめです。GPIOピンに抵抗とLEDをつないで、Pythonでピンを制御してLEDを点滅させる。部品代は100円以下で、電子工作の基本(GPIO・電圧・回路)が体感できます。
3週目に「土壌センサーとADCの接続」に進みます。この記事で紹介した配線を組み立てて、土に差し込み、ADC値が変化するのをターミナルで確認します。乾いた土と湿った土で数値がどう変わるか記録しましょう。
1週間・2週間・3週間で段階を踏みます。
その後、自動水やり・クラウド記録・LINE通知と機能を少しずつ追加していくのが理想的な進め方です。一度に全部作ろうとするのではなく、「動くものを一つ作る→確認する→次の機能を足す」というサイクルで進めると、トラブルが起きたときの原因特定も容易になります。
学習コミュニティとしては、QiitaやZennといった技術情報サイトに実際の製作記録が多数公開されています。「Raspberry Pi 土壌センサー」で検索するとコードや配線図が豊富に見つかります。困ったときは同じ構成で試した方の記事を参考にすることで、大抵の問題は解決できます。