Arduinoで15分で部屋の花の自動散水を行います

次の花が枯れた後、散水プロセスを何らかの形で自動化するのがいいと思いました。

それ以上苦労せずに、私は自分ではなく花に水をまく構造を組み立てることにしました。 その結果、私はその任務に完全に対処するような装置を得ました:



画像



2つのレギュレーターを使用すると、一度に散水する水の量と灌漑の間隔を調整できます。 誰が気にする-そのようなデバイスを作成する方法の詳細な手順。



散水を構築するには、一定数のコンポーネントと30分以内の空き時間が必要です。



使用されるコンポーネント:





画像



このスキームに従ってすべてを収集します。

画像



またはより明確に:

画像



ここに私が得たものがあります:

画像



まず、ポンプをテストします。 5Vを与えます。 彼がぶんぶん鳴ったなら、すべてが整然としていて、先に進みます。



次に、ポンプをArduinoに接続します。 ブレッドボードに小さなハーネスを作成して、arduinoでポンプを制御します。

画像



Arduinoでポンプを制御してみましょう。 このコードを記入してください



int pumpPin = 5; void setup() { pinMode(pumpPin, OUTPUT); digitalWrite(pumpPin, LOW); } void loop() { digitalWrite(pumpPin, HIGH); delay(1000); digitalWrite(pumpPin, LOW); delay(1000); }
      
      







彼が定期的にバズを鳴らした場合、再びすべてが整然としています。



次に、2つのコントロールを追加する必要があります。 デバイスの可変抵抗器に接続して、その性能を確認します。

画像



このようなコードをArduinoに入力します



 int volumePin = A0; void setup() { pinMode(volumePin, INPUT); Serial.begin(9600); } void loop() { Serial.println(analogRead(volumePin)); delay(100); }
      
      







シリアルモニターに入り、レギュレーターの回転に対する反応があることを確認します。 約0から1024まで変化するはずです



画像



現在では、すべてを連携させる必要があります。



散水コード自体は次のとおりです。



 //    ,     ( 4  15 ) #define MAX_FLOWTIME 15 // seconds #define MIN_FLOWTIME 4 // seconds //              #define MAX_PERIOD 7 // days #define MIN_PERIOD 1 // days #define MAX 1015 #define MIN 0 int volumePin = A0; // ,    ,      int periodPin = A1; // ,    ,      int pumpPin = 5; // ,      int volume; int period; // ,    ,   volume void water() { digitalWrite(pumpPin, HIGH); //   delay(volume); digitalWrite(pumpPin, LOW); //   delay(period); } void setup() { pinMode(pumpPin, OUTPUT); digitalWrite(pumpPin, LOW); } void loop() { //    ( )       volume = map(analogRead(volumePin), MIN, MAX, MIN_FLOWTIME, MAX_FLOWTIME) * 1000; period = map(analogRead(periodPin), MIN, MAX, MIN_PERIOD, MAX_PERIOD) * 1000 * 60 * 60 * 24; water(); }
      
      







これが作業の最終結果です。





近い将来、タンク内の水位センサーと土壌水分センサーをここに追加することを考えています。



All Articles