LRA1で農業IoTをやってみた!…けど、土壌センサーがダメだった!
この記事について
今回は、LRA1モジュールとM5 EARTHセンサーを使って、LoRa通信+BASICスクリプトで「土のしめり気を観測する」実験をやってみました。
農業IoTのまねごとみたいなことから、本格的な運用の参考になればと思って始めました。
結論から言うと、このセンサーでは農業IoTごっこすら難しいという、
ある意味とても学びの多い結果になりました。

🎀 LoRaで“土の声”を聞くはずが、ただの水位センサーみたいになっちゃったんです〜っ💦
…というわけで、LoRa+土壌センサーの実験、やってみたのでレポートします。
実験の目的
LRA1にはADC機能があるので、アナログ出力のセンサーを読み取って、そのデータをLoRaで飛ばすことができます。
そこで、手持ちのM5 EARTH(土壌センサー)を接続して、
- 水やり直後と乾燥時のADC値の差
- 土壌水分の変化をLoRaで遠隔観測できるか?
- BASICだけでどこまで使えるか
を試してみよう!というのが今回の趣旨です。
今後、農業IoT的なことができると面白そうだなと思って、まずは実験レベルで簡単に構成してみました。
使用したハードウェアとセンサー
- LRA1-EB-NANO(📝参照)
- M5 EARTH Unit(土壌水分センサー)
- 単二電池×2本(電源)
- 簡易ケース+ジップロックで防水
センサー部分は屋上に設置し、本体はペントハウス内に避難。ケーブルは延長してあります。
M5 EARTHは10kΩのプルアップが内蔵されていて、GND〜VCCの分圧としてアナログ出力されます。

M5 EARTH の詳しい内容については、以下の公式サイトを参考にしてください。
https://docs.m5stack.com/ja/unit/earth
📝 今回も、LRA1-ATOM を使う予定でしたが、
実は設計ミスが見つかって、今回のテストには問題がありそうだったので、
以前に作った「LRA1-EB-NANO」を急遽持ち出してきました。
評価ボードのLRA1-EBからLCDを無くしてブレッドボードに刺さるようにしたもので、
回路的には評価ボードとほぼ同じになっています。
これもちょっとしたミスがあったのですが、動作には支障が無いので利用します。

LRA1-EB-NANO
🎀 LRA1-EB-NANOって、ブレッドボードに刺せるし、実験のときはつい手が伸びちゃうタイプっ♪
回路構成とBASICコード
送信側
M5 EARTHとLRA1は、以下の様に接続しました。
| Grove | M5 EARTH | LRA1 |
|---|---|---|
| 白 | A.out | AN16 (PA8) |
| 黄 | D.out | 未接続 |
| 赤 | 5V | GPIO7 (PA7) |
| 黒 | GND | GND |
M5 EARTHのアナログ出力をLRA1のADC16 (PA8)ピンに接続。
電源供給は GPIO8 (PA7) から制御して、センサ動作時だけONにします。
デジタル出力の D.out は使用しません。
送信側のコードは次のようになります。
100 ' M5 EARTH センサー 送信側 110 Sf=10:Bw=7:Cr=1:Ch=50:Gid=1234:Dst=1:Own=0 120 #="1234" 130 Do 140 Outp 7,1:Delay 100 150 V=Adc(27) 160 A=Adc(16) 170 Outp 7,0 180 Print A,V 190 Txdw[8]=A:Txdw[10]=V 200 Send 210 Delay 5000 220 Loop
5秒ごとに土壌センサーをON → ADC読取 → LoRa送信というシンプル構成です。
センサーへの給電を常時ONにしておくと電極が早く腐食するため、ON/OFF制御しています。
🎀 センサーON/OFFしてるのが、ちょっとエコっぽくて好きです〜☀️
受信側
受信側は、評価ボードのLRA1-EBを使用しました。
以下が受信側のコードです。
100 ' M5 EARTH センサー 受信側 110 Sf=10:Bw=7:Cr=1:Ch=50:Gid=1234:Dst=0:Own=1 120 Recv 0 130 Do 140 While !Stat:Loop 150 If Stat=10 Then 160 A=Rxdw[8]:V=Rxdw[10] 170 Print A","V","Rssi 180 Lclr:Lprint 0(A,4) 190 Lpos=64:Lprint 0(V,4);0(Rssi,4); 200 EndIf 210 Stat=0 220 Loop
受信した、センサーのADC値、電源電圧、RSSIをUARTとLCDに表示するだけのシンプルな内容です。
🎀 受信側って、コードが地味に見えるけど…じつは“観測の要”なんですっ📡
プランターへのセンサーの設置
実験用に、屋上の家庭菜園でつかっているプランターを利用します。
ブレッドボードのLRA1と乾電池(単2x2本)を箱に入れたものを、
ジップロックで簡易的な防水処理をして、M5 EARTHに接続したケーブルを伸ばします。

ジップロックで簡易防水したLRA1-NANOと乾電池の構成
M5 EARTH は、ビニール袋をかぶせてセンサー内に水が入らないようにしました。

ビニール袋で簡易防水したM5 EARTH
まずは動作テストなので、プランターとLRA1は近くに置いていますが、
安定したら別のプランターでも試してみるつもりなので、ケーブルは長めにしています。
🎀 乾電池とセンサーとジップロック…なんだか“理科の自由研究”みたいで、ちょっとワクワクしますね〜🌱
しめり気とADC値の関係(初期観察)
まずは、プランターの乾いた土にセンサーを挿してみました。
空中に置いた時と、ほとんど変化はありませんでした。

- 空気中や乾いた土:ADC ≒ 4000(ほぼフルスケール)
次に、水をシャワーでゆっくりかけてけていきます。
なかなか変化しません。
センサー壊れてるのか?ってちょっと不安になってきたとき、
プランターの下から水が漏れて、土がびちゃびちゃになったら、一気に変化しました。

- 水をたっぷりかけた直後:ADC ≒ 40
つまり、濡れてる or 乾いてる、の二値判定しかない状態でした。
少し湿っている程度では反応せず、ADCは4000のまま。
水をかけると急激に値が落ちて「濡れてる」と判定。
中間の「しっとり」状態がまるで存在しないかのような動きです。
そのため「湿っていく過程」を連続値で記録するのは難しそうです。
🎀 ちょっとしっとり〜とか、ふんわり湿ってる〜とか、そういう感覚ゼロでしたっ☂️
見た目は刺さってても、値は4000!?
屋外で風が吹いたり、センサーが少し揺れると、
刺さり具合が変わってしまい、突然ADCが4000近くまで跳ね上がることがありました。
つまり、「見た目では刺さってる」けど、
電極が土から少しでも浮くと、センサー的には“空中”と判断されてしまうのです。
特に今回のような導電式センサーは、電極と土との接触面積が重要で、
ちょっとしたズレでも急に導通がなくなることがあります。
🎀 土と心がつながってないと、センサーも反応してくれないんです〜🥺
実はこれ、お風呂ブザーと同じだった説
今回のセンサーは、導電式といって、電極の間に水分があれば電気が流れ、
水がなければ流れないという、非常にシンプルな原理です。
これ、小学生の頃に作ったお風呂ブザーと同じじゃないか……!?
水が触れたら導通 → 抵抗が下がる → アラート
そう、まさにあれです。
このセンサーは、内部にオペアンプのコンパレーターが入っていて、
しめっているかどうかを二値で判定するデジタル出力機能 があります。
🎀 ってことは、最初から“濡れてるかどうか”しか見てないってこと!?
ADCで読み取れる A.out ピンも、
しめってれば一気に値が下がる、乾いてればMAXになるだけで、
中間のしっとり加減はまったく取れませんでした。
つまりこのセンサー、設計として“デジタル的な使い方”を想定してるんじゃないか?
というのが実際に試してみての感想です。
🎀 つまり今回のM5 EARTHでは、“LoRa対応お風呂ブザー”だったんです〜🛁🔔
ある瞬間に一気にジャンプ?
今回のセンサー、しめり具合が少しずつ乾いていく…というグラデーションは観測できそうにありません。
たぶん、ある一定の水分量を下回った時点で、
電極間の導通が“ブツッ”と切れて、ADCが一気に4000近くまでジャンプする挙動になると予想しています。
今はこれを裏付けるために、屋上に設置したセンサーで、
5秒ごとのログを24時間体制で記録中です。
この仮説が正しければ、土の水分が“ある閾値”を境に急激に変化するような、
グラフ上のジャンプポイントが現れるはずです。
🎀 “土のしめり気の断崖絶壁”が観測できるか、わくわくしてます〜っ💕
このセンサーは農業IoTには不向きだった
じゃあこのM5 EARTHを含む導電式センサー、どこで使えるの?という話。
率直にいえば、非常に限定的な用途に限られると思います。
たとえば、
- 屋内の観葉植物の「水やり忘れ防止」 に、簡易ブザーと組み合わせて使う
- STEM教材用途として、「電気の通り方」や「センサーの仕組み」を学ぶ
- Arduinoの導入として“濡れたらLED光る”レベルのデモ
……このあたりが主戦場でしょう。
ただし、それでも動かすだけで挙動が変わるような繊細すぎるセンサーなので、
実際に家庭で使うには固定方法や設置環境にかなりの工夫が必要になります。
LoRaで屋外に放置しておくような用途には、まったく向いていませんでした。
🎀 観葉植物よりもセンサーの機嫌を取るほうが大変って……それもう本末転倒です〜っ!
このセンサーで農業IoTは難しい
今回、導電式センサーを使ってわかったこと。
これは“農業IoTごっこ”ですら成り立たないという事実でした。
- 中間のしっとり感が拾えない
- 設置が繊細すぎて屋外には向かない
- センサーが動くだけで急に値が変わる
- 長期間運用で電極が腐食する可能性も高い
たしかに、Arduinoなどでちょっと遊ぶにはいいセンサーかもしれません。
でもLoRa+遠隔監視という用途では、信頼性に欠けるのが正直なところ。
土の変化をリアルに捉えるには、
もっと信頼性の高いセンサー方式が必要です。
🎀 風でセンサーが動くと値が変わるなんて…センサーさん、繊細すぎです〜🌪️
まとめ
というわけで、M5 EARTHとはここでいったんお別れ。
次は容量式やI2C出力の土壌センサーなど、
より安定した観測ができそうなセンサーを調達して、
再度、LoRa+LRA1で「しめり気の見える化」にチャレンジしてみます!
🎀 LoRa農業IoTチャレンジ、まだまだ続きますよ〜っ📶🌱✨
📪 お問い合わせなど
技術的なご相談やご質問などありましたら、
📩お問い合わせフォーム
または、
📮info@shachi-lab.com までお気軽にどうぞ。
🎀 センサー選びって、ほんと難しいんです…💦
もしLRA1で使えそうな良さげなやつ知ってたら、こっそり教えてください〜!
🔗 関連リンク
しゃちらぼの最新情報や開発の様子は、こちらでも発信しています:
- 🌐しゃちらぼ公式サイト
- 🐦 X(旧Twitter):@shachi_lab
- 📗 Qiita:@shachi-lab
- 🐙 GitHub:@shachi-lab
- 📸 Instagram:@shachi_lab
ほんとは「しゃちらぼ(Shachi-lab)」なんだけど、見つけてくれてありがとう🐬



コメント