giaie inc.

Solving social problems with Creativity and Technology.

自動給水システム [プロトタイプ]

自動給水システム [プロトタイプ]

開発背景

知り合いのイチゴ農業ハウスの従事者から、

「養液供給は自動化されているものの、土壌に養液がきちんと浸透しているかの測定までは自動化できていない。」

というお話しを伺いました。
一方、会社でも家庭でも観葉植物はよくあるものの、その手入れ、特に定期的な水やりは何かの都合でできない場合があり、そのために枯らしてしまったという話しもお聞きします。

自動的に給水するツールはよくあるものの、一方的に決まった量を給水するために、過剰な給水で根腐れしたり、逆に水が不足する場合など、なかなか難しい現実があります。

そのような背景のなか、今回はプロトタイプ(試作モデル)として、土の湿度を計測しながら、その湿度に合わせて供給する水を制御するものを開発しました。

完成画面

センサーを表示するウェブアプリケーションをクラウド(Heroku)にセットして、ログイン後の画面で土壌湿度の状況を確認できるようにしました。
ログインはメールアドレスで行っています。

土壌湿度センサーと室内温度のセンサー登録例
土壌湿度をグラフ化したもの(サンプルデータ)

必要なパーツ

今回の開発で使用した主なパーツは次のとおりです。詳細な仕様はリンク先をご覧下さい。

  • Raspberry Pi
  • 土壌湿度センサー
    Arduino用 土壌湿度センサー Soil Moisture Sensor
  • 給水ポンプ
    水中ポンプ DC 12V 小型ポンプ 吐出量240L/H
  • リレーモジュール
    リレーモジュール 1チャンネル DC 5V 高低レベル トリガー フォトカプラ付き
  • SORACOMドングル
    3G対応データ通信端末 AK-020
  • その他(給水のためのチューブ、水タンク、試用のための観葉植物、ポンプ駆動電源など)
       

IoTシステムの構成図

当システムの構成は次のとおりです。

開発手順

ラズパイ側とサーバー側の開発に分かれます。

ラズパイ側 開発

  • ラズパイのOSをSDカードに書き込み、SORACOMの3G USBドングルでインターネット接続できるようにセットアップします。
    参考:Raspberry Pi と USB モデム
  • 土壌湿度センサー、リレーモジュール、電源、給水ポンプを接続します。(下図の通りです)
配線図
  • ラズパイに湿度センサーのデータ取得のプログラムを作成します。
  • ラズパイに給水ポンプを起動するためのリレーモジュールを動作させるプログラムを作成し、指定する土壌湿度の閾値を下回った場合に給水が行われるようにします。
  • サーバーと通信するプログラムを用意し、湿度センサーのデータを定期的にサーバーにアップします。

これらの3の機能を持つプログラムは次のとおりです。

プログラム中の「XXXX」には、それぞれ開発者が設定するものになります。

参考サイト:
ハウス栽培5:土壌センサを使って土壌の湿気計測
[Python] Djangoチュートリアル – WebAPIサーバの簡単構築方法
ラズパイとリレーモジュール

サーバー側 開発

 サーバー側の開発コードについては、業務に関わるので控えさせていただきます。上記のサイトをご参考ください。グラフ表示等は、導入ハードルの低いSORACOM Lagoonをご利用いただくことも可能だと思います。
 → SORACOM Lagoon

次の画面は、ラズパイでセンシングプログラムを起動させた場合のデバッグ文です。デバッグ文は、上のソースプログラムに記載の通りです。

次の画面はサーバーのログ表示を行ったものです。ラズパイからJSON形式の土壌湿度センサーデータを受け取っていることがおわかりかと思います。

次の画面は、サーバー側のグラフ表示です。土壌湿度はこのシステムでリアルに計測した数値になります。

これらのプロトタイプは次のように接続して行いました。右側の土壌湿度センサーで取得したデータをもとに、左側にあるリレーのON/OFFを制御し、ONのときにタンクに入れているポンプから鉢に給水します。

今後の展開

今回の開発はプロトタイプになり、このまま販売商品にできるものではありませんが、今後は次の機能を追加していきたいと考えています。

  • PC側、またはスマホ側からポンプから給水する場合の湿度閾値の設定とポンプ起動時間を設定できるようにする。
  • 1台のラズパイで、複数の土壌湿度センサーによるセンシングと複数の給水ポンプを制御し、最大8箇所の自動給水システムを稼働させ、またラズパイ自体の個数を追加できる仕様とすることにより、広いハウス内での給水、または養液の注水を制御できるようにする。
  • 各給水ポンプが取水するための給水センタータンクへの給水も自動制御する。養液の場合には少なくなったら、アラームが上がるようにする。

以上です。ご参考になれば幸いです。
開発のご要望等がございましたら、お気軽に弊社GIAIE合同会社にお問合せください。

​齋藤浩昭 Hiro SAITO


※ 今回のシステム紹介を下部のYoutubeで行っています。 あとで確認すると途中で差し込んだ動画に入れたはずのキャプチャーが消えてしまっていたので、差し込んだ動画で説明したのを次に示しておきます。

  • 右側のブラウザ画面は DjangoのREST Frameworkを使用したデバッグ画面です。ラズパイからネット回線を通してサーバーに送り込まれているJSONデータを表示させています。
  • 左側の下のブラウザ画面はユーザーがログインしたあとに見られるデータグラフです。横軸に時間、縦軸に土壌湿度を表しています。
  • 予め設定した閾値(しきいち)は300です。それを下回ると給水ポンプは起動します。給水ポンプは3秒間動くように設定しています。またセンシング間隔は10秒です。
  • 動画は、一度、土壌湿度を下げるために、手動でセンサーを土から少し出しています。そうすると土壌湿度が300以下になるのでポンプから水が送られます(実際は鉢ではなく、タンク内で水を出しています)。その後、センサーを土の中に入れて、一旦土壌湿度を上げていますが、再度、センサーを持ち上げて土壌湿度を下げて、給水ポンプが動作するようにしています。

LEAVE A REPLY

*
*
* (公開されません)