それ以上苦労せずに、私は自分ではなく花に水をまく構造を組み立てることにしました。 その結果、私はその任務に完全に対処するような装置を得ました:
2つのレギュレーターを使用すると、一度に散水する水の量と灌漑の間隔を調整できます。 誰が気にする-そのようなデバイスを作成する方法の詳細な手順。
散水を構築するには、一定数のコンポーネントと30分以内の空き時間が必要です。
使用されるコンポーネント:
- Arduino Mega(彼女はすぐ近くにいましたが、他の人はそうするでしょう)
- ポンプとシリコーンチューブ
- 電源
- 調整する2つの可変抵抗器(任意)
- トランジスタIRL3705N
- 2つの抵抗器(100オームと100 kOhm)
- ダイオード(任意)
- 水タンク(私の場合、イケアのプラスチックの箱)
- ブレッドボード
このスキームに従ってすべてを収集します。
またはより明確に:
ここに私が得たものがあります:
まず、ポンプをテストします。 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(); }
これが作業の最終結果です。
近い将来、タンク内の水位センサーと土壌水分センサーをここに追加することを考えています。