まさかの悲劇が起こる
12月に入って、子どもがまさかの胃腸炎でダウン。私の入社時期とも重なってしまい、イチゴの苗が一部枯れてしまいました。ああ、、ショック・・・ 水やりを忘れないために、土壌湿度センサーを導入しました。
Aitendoの土壌湿度センサー [M-SMS393]を購入。500円程度で買えるので、お財布に優しい。 電圧コンパレータLM393を使った土壌湿度センサーの完成品なので、はんだ付け不要です。
用意するもの
今回はArduinoを使用します。
- Arduino UNO
- 土壌湿度センサー [M-SMS393]
- ブレッドボード
- ジャンパーピン(オスxオス)
- 土(鉢植え)
配線方法
プローブで土壌の湿度を測定し、Arduinoのアナログ入力でその数値を取得しています。今回は、Windows10の端末からシリアル接続してセンサーの数値を確認しています。よって、Arduino側の配線はアナログ側を使用します。(写真のように配線します)
事前確認
まず、水に浸したコップにプローブを入れて湿度100%の状態を測定しました。その数値は202。そして水からプローブを取り出して表面が乾いた状態だと1023でした。よって、測定可能な数値の範囲は202から1023までであることが分かりました。水は東京都の水道水を使用しているため、環境によっては結果が異なるかもしれません。
- 202 水に浸した状態
- 1023 何もしていない状態(完全に乾いている状態)
水やりした土と、乾いた土を用意
次に、水やりした土と、5日間水をあげていない乾いた土を用意して、どちらも数値化しています。 今回は土壌湿度の数値が400未満だと十分な水やりができていて、それ以上だと水やりが必要ということにしました。水やりが必要となる数値は土壌の肥料の状態や植物の種類によって変動するかと思いますので、参考程度にしてください。
今回は実験でサボテンの鉢植えを利用しました。ちなみに、キャンドゥで購入した100円のサボテンになります。
Arduinoのスケッチ
事前に確認した情報を元にスケッチをします。
int sensorPin = A0; // select the input pin for the potentiometer int ledPin = 13; // select the pin for the LED int sensorValue = 0; // variable to store the value coming from the sensor void setup() { // declare the ledPin as an OUTPUT: pinMode(ledPin, OUTPUT); Serial.begin(9600); } void loop() { // read the value from the sensor: sensorValue = analogRead(sensorPin); Serial.println(sensorValue); if (sensorValue < 400) { Serial.println("*WET*"); } else { Serial.println("*DRY.NEED WATER.*"); } digitalWrite(ledPin, HIGH); delay(1000); digitalWrite(ledPin, LOW); delay(5000); }
出力結果
Arduinoに書き込んだ後、ツールからシリアルコンソールを開きます。水やりの前後で土壌湿度の変化が可視化されました。
次回は、土壌湿度の数値取得後をIoT化して楽しんでみましょう。次の更新をお楽しみに。
活用方法
最近、オフィスの乾燥が気になるお年頃なのでお肌の潤いチェックに使えないか実験中です。しかし実際にお肌の潤いを測定してみると、カラカラに乾いてるわ~私のお肌・・・というショックな現実にぶち当たっておりますので、公開は先になるかもしれません。

- 出版社/メーカー: スイッチサイエンス
- メディア: Personal Computers
- 購入: 2人 クリック: 15回
- この商品を含むブログを見る
続きはこちら
関連ページ