İçindekiler:

Düğümlü Toprak Nemlendiricisi: 7 Adım
Düğümlü Toprak Nemlendiricisi: 7 Adım

Video: Düğümlü Toprak Nemlendiricisi: 7 Adım

Video: Düğümlü Toprak Nemlendiricisi: 7 Adım
Video: Bunu da sadece müslümanlar anlıyacak 🙃 #shorts 2024, Kasım
Anonim
Image
Image
Düğümlü Toprak Nemlendiricisi
Düğümlü Toprak Nemlendiricisi
Düğümlü Toprak Nemlendiricisi
Düğümlü Toprak Nemlendiricisi
Düğümlü Toprak Nemlendiricisi
Düğümlü Toprak Nemlendiricisi

Bu kılavuzda size gardenhealth sistemi için ev yapımı bir toprak sensörünün nasıl yapıldığını göstereceğim. Size neye ihtiyacınız olduğunu göstereceğim, bazı kod örnekleri vereceğim ve kodun nasıl uygulanacağını göstereceğim.

Talimatların sonunda, toprak ıslak, biraz ıslak veya kuru olduğunda bir led şeridin rengini nasıl değiştireceğinizi öğreneceksiniz.

Bu kılavuzda kullanacağım:

  • Arduino sürümü 1.8.9
  • Adafruit_NeoPixel.h kitaplığı

Gereçler

İhtiyacınız olacak:

  • NodeMCU 1.0 (ESP-12E modülü)
  • 1 dişi dişi kablo
  • bir LED şerit
  • (Opsiyonel) Ev yapımı toprak sensörü (Yukarıdaki videoyu 00:36'ya kadar izleyin)

Adım 1: Kurulum

Kurmak
Kurmak
Kurmak
Kurmak
Kurmak
Kurmak
Kurmak
Kurmak
  • Düğümünüzü ve toprak sensörünüzü alın.
  • Toprak sensörünü A0'a bağlayın.(Fotoğraf 1) (alternatif olarak bir şerit dişi kablo alın ve A0'a bağlayın (Foto 3)

LED şeridinizi alın ve GND'yi G'ye, 5V'yi 3V'a ve orta kabloyu D5'e koyun.(Fotoğraf 2)

Şimdi son fotoğraf gibi bir şey görünecek.

Adım 2: Toprak Sensörü İçin Kod Ekleme

Toprak Sensörü İçin Kod Ekleme
Toprak Sensörü İçin Kod Ekleme
  • arduino IDE'de yeni bir proje yapın
  • Aşağıdaki kodda geçmiş:

/* Analog giriş, analog çıkış, seri çıkış

Bir analog giriş pinini okur, sonucu 0 ile 255 aralığında eşler ve sonucu bir çıkış pininin darbe genişlik modülasyonunu (PWM) ayarlamak için kullanır. Ayrıca sonuçları Seri Monitöre yazdırır.

Devre: - potansiyometre analog pin 0'a bağlanır. Potansiyometrenin merkez pini analog pin'e gider. potansiyometrenin yan pimleri +5V'a gider ve toprak - LED dijital pim 9'dan toprağa bağlanır

29 Aralık 2008 oluşturuldu 9 Nisan 2012 Tom Igoe tarafından değiştirildi

Bu örnek kod, kamu malıdır.

www.arduino.cc/en/Tutorial/AnalogInOutSeri… *

/ Bu sabitler değişmeyecek. Kullanılan pinlere isim vermek için kullanılırlar: const int analogInPin = A0; // Potansiyometrenin bağlı olduğu analog giriş pini const int analogOutPin = D5; // LED'in bağlı olduğu analog çıkış pini

int sensörDeğeri = 0; // pottan okunan değer

void setup() { // seri iletişimi 9600 bps'de başlat: Serial.begin(9600); }

void loop() { // değerdeki analogu oku: sensorValue = analogRead(analogInPin);

// sonuçları Seri Monitöre yazdırın: Serial.print("sensor = "); Serial.print(sensorValue); Seri.print("\n"); // Serial.println(outputValue);

// analogdan dijitale dönüştürücünün son okumadan sonra oturması için bir sonraki döngüden önce 1 milisaniye bekleyin: delay(1000); }

Artık sensörünüzün bir değer verip vermediğini kontrol edebilirsiniz.

Vidanın veya kablonun ucuna dokunduğunuzda fotoğraf 1'deki gibi bir şey göreceksiniz.

Çalışmazsa kablolarınızı kontrol edin. Doğru bağlanmışlar mı?

3. Adım: Neopiksel Kitaplığı

Neopiksel Kitaplığı
Neopiksel Kitaplığı
  • adafruit_neopixel kitaplığını indirin (Henüz yapmadıysanız).

    • Araçlara gidin> özgürlükleri yönetin
    • adafruit neopixel fotoğraf 1 ara
    • 1.2.5 sürümünü yükleyin

Adım 4: Neopiksel Kod Kurulumu

  • Aşağıdakileri projenizin en üstüne ekleyin

    • #Dahil etmek
    • #Dahil etmek
    • #include "Adafruit_NeoPixel.h"
  • Bunun altında:

char ssid = "SSID"; // ağ SSID'niz (ad)

char şifre = "şifre"; // ağ şifreniz

Ve bunun altında

#define PIXEL_PIN D5#define PIXEL_COUNT 30 //şeritinizde maney ledlerinin nasıl olduğunu değiştirin

#define PIXEL_TYPE NEO_GRB + NEO_KHZ800

Adafruit_NeoPixel piksel = Adafruit_NeoPixel(PIXEL_COUNT, PIXEL_PIN, PIXEL_TYPE);

Adım 5: Kurulumu İptal Etme

Aşağıdaki kodu void kurulumuna yerleştirin ()

piksel.begin(); // BAŞLAT NeoPixel şerit nesnesi (GEREKLİ)pixels.show(); // En kısa sürede tüm pikselleri KAPATIN

piksel.setBrightness(50); //0 ile 255 arasında olmalıdır led şeridin daha parlak olmasını isterseniz sayıyı artırabilirsiniz

Adım 6: Geçersiz Döngü

void döngüsünde() ve gecikmenin(1000) altında; aşağıdaki kodu girin

if (sensorValue == 0 || sensörValue <= 200) {

for(int i=0; ben

piksel.setPixelColor(i, 255, 0, 0);

piksel.göster();

}

}else if (sensorValue > 200 || sensorValue <= 500) {

for (int i=0; ben

piksel.setPixelColor(i, 0, 255, 0);

piksel.göster();

}

} else if (sensorValue > 500) {

for(int i=0; ben

piksel.setPixelColor(i, 0, 0, 255);

piksel.göster();

}

}

}

7. Adım: Kontrol Edin

Kontrol etmek
Kontrol etmek
Kontrol etmek
Kontrol etmek

Tebrikler! Az önce toprağın ıslak mı yoksa kuru mu olduğunu gösteren bir sistem yaptınız.

Şimdi sensörü ıslak toprağa koyduğunuzda LED yeşile, kuru toprağa düştüğünde kırmızıya dönecek. Yukarıdaki resimdeki gibi.

Önerilen: