概要
【スマートビニールハウス:遠隔計測と自動制御の連携】
おいしい野菜を育てるには、ハウス内の環境を常に最適に保つ必要があります。このシステムは、1台の送信機(ハウス側)が「今の環境」を報告し、複数の受信機(管理PC側)がその情報を受け取って、屋根を動かしたり水をまいたりするIoT(モノのインターネット)の仕組みを学ぶ教材です。

用意する物
センサー側(複数セット)
- PC
- タコラッチ・ミニ
- 役割に応じて以下
- 防水温度センサー(オプション)
- 手作りスイッチ
- ワニグチクリップ
中央制御側(1セット)
- PC
- タコラッチ・ミニ
アクチュエーター側(複数セット)
- PC
- タコラッチ・ミニ
- 役割に応じて以下
- サーボモーター(オプション:屋根の開閉用)
- ポンプ(オプション:灌水用)
- 制御フィルムターミナル(換気扇・ライト用)
準備
- 事前に『計測・制御』の教材を通して、カードの使い方や問題解決の手法を習得しておく必要があります。
活動
センサー側(複数)と中央制御側(1台)、アクチュエーター側(複数)のように役割分担をして活動を行います。
1. 工作
【センサー側】 (役割に応じてセンサーを接続)
- 温度センサーを「デジタルA」端子に接続します。
- 土の乾きを測る「手作りスイッチ」を「アナログA1」端子と「5V」端子に接続します。
【アクチュエーター側】 (役割に応じてアクチュエーターを接続)
- 換気用のサーボモーターを「デジタルA」端子に接続します。
- 灌水用のポンプやライトを制御スイッチ経由で接続します。
2. プログラミング
センサー側は 「計測値の送信」、中央制御側は 「判断・指示」、アクチュエーター側は 「動作」 と役割を分担させましょう。
-
通信設定: 全てのPCで
[ ネットに接続する ]ブロックで共通の通信グループID(例:[日付][クラス][グルプ名])を入力して決定します。
【センサー側:計測値送信】
使うカードの例
- 通信 01:データを送る(インターネット間通信(送信))
- 役割に応じて以下
- 計測 01:暗くなった(明るさセンサー)
- 計測 10:温度が上がった/下がった(温度センサー(オプション))
- 計測 11:土が乾いた(電圧)

プログラム例
- 気温
-
[ ずっと ]ブロックの中で、 -
[ (通信 気温A) = (水温デジタルAの温度(℃) を送る ]
-
- 明るさ
-
[ ずっと ]ブロックの中で、 -
[ (通信 明るさA) = (明るさ) を送る ]
-
- 水分量
-
[ ずっと ]ブロックの中で、 -
[ (通信 水分量A) = (電圧 を送る ]
-
このように、各センサーの値をそのまま中央制御側へ送り続けます。



【中央制御側:判断・指示】
使うカードの例
- 通信 02:データを受け取る(インターネット間通信(受信))
- 通信 01:データを送る(インターネット間通信(送信))

プログラム例
-
[ ずっと ]ブロックの中で、- 換気
-
もし[ 通信 (気温A) の値 > (28) なら ] -
[ (通信 換気A) = (1) を送る ] -
でなければ[ (通信 換気) = (0) を送る ] - 補光
-
もし[ 通信 (明るさA) の値 < (20) なら ] -
[ (通信 照明A) = (1) を送る ] -
でなければ[ (通信 照明) = (0) を送る ] - 灌水
-
もし[ 通信 (水分量A) の値 < (3.5) なら ] -
[ (通信 灌水A) = (1) を送る ] -
でなければ[ (通信 灌水A) = (0) を送る ]
このように、各センサーの値から判断をし、指示をアクチュエーター側へ送り続けます。(※数字は環境に合わせて正しく動作するように調整してください。)

【アクチュエーター側(受信側):届いた指示で動く】
使うカードの例
- 通信 02:データを受け取る(インターネット間通信(受信))
- 役割に応じて以下
- 制御 01:明かりをつける(カラーLED)
- 制御 04:角度を指定して回す(サーボモーター(オプション))
- 制御 06:水をまく(ポンプ(オプション))

プログラム例
-
共通:
[緑の旗が押されたとき]、[ ネットに接続する ] -
共通の通信グループID(例:[日付][クラス][グルプ名])を入力して決定します。
-
換気用窓の開閉:
-
[ 通信 (換気A) を受け取ったとき ] -
[ ずっと ]ブロックの中で、 -
[ もし (通信 換気 の値 = 1) なら ]、 -
[ サーボ デジタルA(A1) を 速度30% で 90 度にする ] - でなければ、
[ サーボ デジタルA(A1) を 速度30% で 0 度にする ]を実行します。
-

-
明かりのON/OFF:
-
[ 通信 (照明A) を受け取ったとき ] -
[ ずっと ]ブロックの中で、 -
[ もし (通信 照明 の値 = 1) なら ]、 -
[ 明かりをON ] - でなければ、
[ 明かりをOFF ]を実行します。
-

-
灌水用ポンプのON/OFF:
-
[ 通信 (灌水A) を受け取ったとき ] -
[ ずっと ]ブロックの中で、 -
[ もし (通信 灌水A の値 = 1) なら ]、 -
[デジタルA(A1) を ( 1 ) にする ] - でなければ、
[デジタルA(A1) を ( 0 ) にする ]を実行します。
-

3. 動作確認
- 遠隔テスト: センサー側のセンサーを温めたり隠したりしたとき、離れた場所にあるアクチュエーター側のモーターやポンプが反応するか確かめます。
- しきい値の調整: 実際の土の湿り具合を見ながら、ポンプが動く電圧の数値を微調整しましょう。
発展
AIとクラウドによる高度な農場管理 「[AkaDako Cloud Plus](https://akadako.com/plus/) のアクセスキー」を使うことで、さらに高度な管理が可能です。
-
異常通知: 深刻な水不足を検知したら
[ 通信 03:LINEにメッセージを送る+アクセス ]でスマホに知らせてみましょう。 -
データ分析:
[ 通信 05:明るさを記録する+アクセス ]を使い、1日の環境変化をGoogleスプレッドシートに記録して分析します。 -
生育診断:
[ AI 03:ステージ表示されている物についてたずねる+アクセス ]を活用します。画面右上のボタンでカメラモードに切り替えて作物を映し、生成AIに「収穫時期はいつですか?」と相談してみましょう。 ※AI 03の利用には、[AkaDako Cloud Plus](https://akadako.com/plus/) のアクセスキーが必要です。