植物モニター:水分
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回の読み取りで十分です。
チャレンジ
簡単土壌の水分を測定しましょう:
readMoisture()を書きましょう: A0を読み取り、map()を使って水分をパーセントで返しますloop()内で、Moisture: 42%として出力し、その後1000 ms待ちます
実行を押して、つまみを回し、その後確認を押します。
自分で試してみよう
// つまみは土壌水分センサーの代わりです
const int sensorPin = A0;
void setup() {
Serial.begin(9600);
}
void loop() {
// センサーの値を読み取り、パーセントに変換して出力し、1秒待つ
}
このレッスンには短いクイズがあります。レッスンを始めて解答し、進捗を記録しましょう。
プロジェクトのすべてのレッスン
自分で練習してみよう: Arduinoプレイグラウンド