工作と競馬2

電子工作、プログラミング、木工といった工作の記録記事、競馬に関する考察記事を掲載するブログ

水田の水位をリモートで監視するシステムを作る(6)

概要

前回作成した水位センサを田んぼに設置し、1週間程度動作させ、ひとまず無事動作していることを確認した。また、水位を通知する仕組みを構築した。


背景と目的

前回、水位センサシステムの実装が完了した。いよいよ、田んぼに設置し、動作をさせてみる。また、水位の計測結果を通知する仕組みを作る。


詳細

1.設置

本体は、田んぼの入り口付近に塩ビパイプの足を30㎝ほど埋め込み倒れないようにコンクリートブロックとひもで固定。

f:id:dekuo-03:20190525165843j:plain

水位センサ部は、4段階あるセンサのうちの一番低い部分のセンサがギリギリ田んぼ内の地面から1cmほど離した高さで固定。 土が動くと、すぐにセンサにあたりそうではあるが、まあそれも想定しながら様子を見ることにする。

f:id:dekuo-03:20190525165849j:plain

2.動作確認

今回のシステムは、6時間に1回計測して送るという動作をさせているので、1日4回送信される。 ひとまず、1週間ほど動かしてみたところ、一度だけ、送信されなかったが、それ以外はちゃんと6時間ごとに送信された。 SORACOM Harvestで、グラフを表示してみたのが以下。

  • 青は水位
  • 緑は温度
  • 紫は電池電圧[V]を10倍した値(データ送信の都合上10倍している)

f:id:dekuo-03:20190525165507p:plain

2.1 水位

肝心の水位については、この週は火曜日に大雨が降り、1レベル上昇した。そこから、金曜の朝あたりまでレベルを保ち、午後には元のレベルに戻ったようだ。 おそらく、ちゃんと水位を反映したものと思われる。


2.2 温度

温度は、UnaShieldに載っている温度センサの値なので、本体のボックス内の温度といえるが、40度を超えるような状態が簡単に出現する。 この1週間は、22日~25日と晴れの日がつづき、5月にしては暑かったのだが、日が当たるとやはりボックス内は蒸し風呂状態なのだろう。電池(エネループ)の使用温度範囲を超えてしまいそうなので、夏場はこのままではまずい気がする。ボックスを通気できるようにしたり、日差しをもっと防ぐ手を考えたい。


2.3 電池

電池の電圧がずいぶんと変動するのが気になる。周囲温度に依存しているようにみえる。 今回使っているのは、ずいぶん前(多分10年くらい?)に買ったエネループ=ニッケル水素電池で、こちらによれば当然ながら温度依存性がありそう。 とはいえ、そもそも満充電でない電池を使ったので、そろそろ電池切れしかけていること自体が気になる。まず、満充電の電池に交換しよう。


2.4 センサへのごみの付着

センサ設置の写真を見てわかる通り、設置前からかなり気になっていたが、やはり田んぼに浮いているゴミや藻がついてしまう。今のところ誤作動にはなっていないのだが、いずれゴミのせいで誤作動が起きそう。(フロート型なので、ゴミのせいで水が引いても浮きが沈まない可能性がある)網目のもっと細かいカバーをつける必要がありそうだ。


3.通知システム

通知の仕組みは、あまりちゃんと作れていないが、とりあえずセンサ値が送られてきたタイミングでLINEに通知が来るようにした。 AWSを挟んでいるのは、今後いろいろやっていく前提で、とりあえずデータを受けるのと、LINE上のメッセージの形式を整えるのに、 IFTTTだけだとやりづらいため。

  • SORACOM Beamを使って、AWSのエンドポイントに飛ばす
  • AWSで受けたデータを、LambdaからIFTTTのWebhookチャンネルに飛ばす
  • IFTTTのWebhookチャンネルで受けてLINE NotifyでLINEのグループに飛ばす

通知結果は、以下のような感じとした。6時間ごとにこれがくるのはそのうち鬱陶しいと感じそうなので、その時にまた工夫しようと思う。

f:id:dekuo-03:20190525170401p:plain


まとめと今後の課題

水田の水位をリモートで監視するシステムを稼働させることができた。本件のレポートはとりあえずここまで。今のところちゃんと動いてはいるのだが、いくつか課題があるので、徐々に改善していこうと思う。