Menu
CoddyTech

植物モニター:水分

CoddyのArduinoジャーニー「プロジェクト」セクションの一部。レッスン 17/24。

このプロジェクトでは、観葉植物の土の湿り具合、乾燥・適度・湿潤を示す色付きライト、土が乾燥したままのときのアラーム、画面上のレポートを監視します。

実際に作る場合は、土壌水分センサーを鉢に差し込みます。土の湿り具合に応じて変化する電圧を出力し、analogRead()で読み取ります。シミュレーターには土がないため、A0に接続したポテンショメーター(つまみ)で代用します。乾燥した土を表すにはつまみを下げ、湿った土を表すには上げます。どちらの場合もスケッチは同じです。

0~1023よりもパーセントのほうが読み取りやすくなります。0%は完全に乾燥、100%は水浸しです。map()で一方の範囲をもう一方に変換します。

int reading = analogRead(A0);
int moisture = map(reading, 0, 1023, 0, 100);

土が乾くには何時間もかかるため、1秒に1回の読み取りで十分です。

challenge icon

チャレンジ

簡単

土壌の水分を測定しましょう:

  • readMoisture()を書きましょう: A0を読み取り、map()を使って水分をパーセントで返します
  • loop()内で、Moisture: 42%として出力し、その後1000 ms待ちます

実行を押して、つまみを回し、その後確認を押します。

自分で試してみよう

// つまみは土壌水分センサーの代わりです
const int sensorPin = A0;

void setup() {
  Serial.begin(9600);
}

void loop() {
  // センサーの値を読み取り、パーセントに変換して出力し、1秒待つ

}
quiz icon腕試し

このレッスンには短いクイズがあります。レッスンを始めて解答し、進捗を記録しましょう。

プロジェクトのすべてのレッスン

自分で練習してみよう: Arduinoプレイグラウンド