ESP32-S3 水切れ植物アラーム

鉢に挿した静電容量式の土壌水分センサーが、土が乾くと赤い LED を点灯し、水をやるまで2秒ごとにビープ音を鳴らします。センサーはキットのボリュームの代わりにアナログ入力につなぎます。はんだ付けも、インターネット接続も不要です。

プログラム

Chip BASIC:1行が1つの命令で、読んで変更できます。コンパイラーはサイトのリリースごとにチェックしています。

10 LET a = AREAD()
20 IF a > 2500 THEN LED red, on : SOUND "beep"
30 IF a <= 2500 THEN LED red, off
40 WAIT 2s
50 GOTO 10

こうなります: 土が湿っているときはすべてオフ、乾くと赤い LED が点灯して2秒ごとに鳴ります。シミュレーターでは、アナログ入力のスライダーを上げると土が乾いた状態になります。

▶ IDE で開く

シミュレーターでは、ハードウェアなしでロジックがすぐに動くのを確認できます。シミュレーターは配線をチェックしません。配線はボードで確認し、IDE の配線チェックが手順を案内します。

部品

コンパイラーがプログラムから部品を見つけます。各部品には専用のページがあり、全体を作る前に実行できるテスト用プログラムがあります。

  • LED(抵抗付き:220 Ω、UNO R4 では 470 Ω)
  • パッシブブザー
  • アナログセンサー(ボリュームまたは LDR)

ESP32-S3 への配線方法

  1. 信号 → ESP32-S3: GPIO9
  2. VCC → ESP32-S3: 3V3
  3. GND → ESP32-S3: GND共通グラウンド:この接続は必須です。
  4. + → ESP32-S3: GPIO5
  5. − → ESP32-S3: GND
  6. + 赤 → ESP32-S3: GPIO4220 Ω の抵抗を通す
  7. − → ESP32-S3: GND共通グラウンド:この接続は必須です。

動かないとき

ライト: プログラムは動いているが、何も起きない
LED の向きが逆か、直列の抵抗が付いていません。 長い足をボードのピン側に、短い足を GND 側に付け、間に抵抗(220 Ω、UNO R4 では 470 Ω)を入れます。
ブザー: プログラムは動いているが、何も起きない
信号がブザーに届いていません。配線が別のピンにあるか、マイナス側が GND につながっていません。 信号は図のピンに、マイナス側は GND につなぎます。
アナログセンサー: プログラムは動いているが、何も起きない
信号線がアナログピンにつながっていないか、ボリュームの中央のピンと端のピンが入れ替わっています。 中央のピンを図のアナログピンに、両端のピンを 3.3 V と GND につなぎます(5 V は使わないでください)。

変更できること

しきい値は20行目と30行目の 2500 です。鉢で実測(水やり直後と乾いたときの値)して、その間の値にします。光だけで十分なら20行目の SOUND を消すか、2秒ごとではなく1時間に1回のチェックにするよう Chip に頼んでください。

対応するボード

  • ESP32-S3 Freenove: 対応
  • Nordic nRF54LM20 DK: 対応
  • Arduino UNO R4 WiFi: 対応