![見出し画像](https://assets.st-note.com/production/uploads/images/26640197/rectangle_large_type_2_37a48957bc347deee2cb077a0a440097.jpg?width=1200)
【SALZ製作日誌】2020.05.25 SALZ2ロードテストの状況報告
SAL2はSALZ1の筐体にESP32のマイコンに変え、Amazonで購入した水やりキットを接続した水やり装置です。
簡単なテストを行い、暫定の閾値を3000にセット。5/10から動作テストを開始しました。
土壌水分センサーは、電極式から静電容量方式に変わりました。
水分計の指し示す値は、抵抗値ではなく、乾き量を示すようになりました。
マイコンをESP32に変えたことで、自由にプログラムができるようになりました。
obnizのjavascriptでは、マルチタスク処理が基本で逐次処理ではないため、wait一つ入れるのもおっかなびっくりで、今動いているプログラムを怖くていじることができませんでした。
ESP32になってC言語でプログラムができるようになり、自在に操れるようになってきました。
そこで、センサーから返ってくる計測値の信頼性をあげるため、単純な方法ですが、小学校で習った方法、複数回測って平均を取る方法を用いました。
こんな感じで、
float val = 0.0;
for (int i = 0; i < 5; i++) {
val += analogRead(wlPin);
}
moistureLevel = val / 5;
センサも今回、キットを使用したため、静電容量方式に変更されています。
水分計の性能が良いのか、複数回計測の平均が良いのか、わかりませんが、時間ごとの計測値が安定しています。
これにより、解析ツールを使わなくても、きれいなグラフが書けるようになりました。
稼働テストを始めた後、水分計の閾値を適当に決めていたことに気づき、閾値を3000から2200に変更しました。
[水分変化グラフ]
[閾値を2200してからの水分変化グラフ]
給水時間:
May 10, 2020 at 04:10PM 2613.6 3000
May 13, 2020 at 12:14PM 3001.8 3000
-------------------------------------------------
May 16, 2020 at 04:35PM 2619.8 2200
May 18, 2020 at 11:58AM 2250.0 2200
May 19, 2020 at 09:20PM 2223.8 2200
May 20, 2020 at 05:41PM 2240.4 2200
May 22, 2020 at 01:02AM 2210.0 2200
May 23, 2020 at 03:49PM 2221.6 2200
May 24, 2020 at 05:10PM 2228.0 2200
給水時間を調べました。
閾値が3000のとき、
80:04:00(約3日半)
76:21:00(約3日)
閾値が2200のとき、
43:23:00(約2日)
33:22:00(約2日半)
20:21:00
31:21:00
38:47:00
25:21:00
という結果でした。
雨降りの日は装置も濡れるので、水分計も変化してます。
うーん、ちょっと長いかな。もう少し下げてもいいかな。感覚的には半日ぐらいで給水してくれてると、自動潅水機らしさが出るんですが、どうなんでしょ。
本来であれば、今までの経験を活かし目で見て、自分の感覚で、閾値を決めるべきなのでしょうが、その辺りの厳格さは後回しにして、思うがままに作っています。
この装置はしばらくこのまま稼働させ、開発は後継機のSALZ3で進めていきたいとおもいます。