Isi kandungan:

Tanah Moister Dengan Node: 7 Langkah
Tanah Moister Dengan Node: 7 Langkah

Video: Tanah Moister Dengan Node: 7 Langkah

Video: Tanah Moister Dengan Node: 7 Langkah
Video: Soil Moisture Sensor with Arduino Uno 2024, November
Anonim
Image
Image
Tanah Lembap Dengan Node
Tanah Lembap Dengan Node
Tanah Lembap Dengan Node
Tanah Lembap Dengan Node
Tanah Lembap Dengan Node
Tanah Lembap Dengan Node

Dalam manual ini saya akan menunjukkan kepada anda cara membuat sensor tanah homade untuk sistem kesihatan kebun. Saya akan menunjukkan apa yang anda perlukan, berikan beberapa contoh kod dan cara melaksanakan kod tersebut.

Pada akhir arahan, anda akan mengetahui cara menukar warna jalur yang dipimpin ketika tanah basah, sedikit basah atau kering.

Dalam manual ini saya akan menggunakan:

  • Versi Arduino 1.8.9
  • Perpustakaan Adafruit_NeoPixel.h

Bekalan

Anda memerlukan:

  • NodeMCU 1.0 (modul ESP-12E)
  • 1 kabel wanita ke wanita
  • Jalur LED
  • (Pilihan) Sensor tanah Homade (Tonton video di atas hingga 00:36)

Langkah 1: Persediaan

Persediaan
Persediaan
Persediaan
Persediaan
Persediaan
Persediaan
Persediaan
Persediaan
  • Ambil simpul dan sensor tanah anda.
  • Sambungkan sensor tanah ke A0. (Foto 1) (sebagai alternatif mengambil kabel wanita stript dan sambungkan ke A0 (Foto 3)

Ambil jalur LED anda dan letakkan GND di G, 5V pada 3V dan kabel tengah di D5. (Foto 2)

Sekarang ia akan kelihatan seperti foto terakhir.

Langkah 2: Menambah Kod untuk Soil Sensor

Menambah Kod untuk Sensor Tanah
Menambah Kod untuk Sensor Tanah
  • Buat projek baru di arduino IDE
  • Melewati kod berikut:

/ * Input analog, output analog, output bersiri

Membaca pin input analog, memetakan hasilnya ke jarak antara 0 hingga 255 dan menggunakan hasilnya untuk mengatur modulasi lebar denyut (PWM) pin output. Juga mencetak hasilnya ke Serial Monitor.

Litar: - potensiometer disambungkan ke pin analog 0. Pin tengah potensiometer menuju ke pin analog. pin sisi potensiometer pergi ke + 5V dan ground - LED disambungkan dari pin digital 9 ke ground

dibuat 29 Dis 2008 diubah 9 Apr 2012 oleh Tom Igoe

Contoh kod ini berada di domain awam.

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

/ Pemalar ini tidak akan berubah. Mereka digunakan untuk memberikan nama pada pin yang digunakan: const int analogInPin = A0; // Pin input analog bahawa potensiometer dilekatkan pada const int analogOutPin = D5; // Pin output analog yang dipasang pada LED

int sensorValue = 0; // nilai yang dibaca dari periuk

batal persediaan () {// memulakan komunikasi bersiri pada 9600 bps: Serial.begin (9600); }

gelung void () {// baca nilai analog: sensorValue = analogRead (analogInPin);

// mencetak hasilnya ke Serial Monitor: Serial.print ("sensor ="); Serial.print (sensorValue); Cetakan bersiri ("\ n"); // Serial.println (outputValue);

// tunggu 1 milisaat sebelum gelung seterusnya agar penukar analog-ke-digital // selesai selepas bacaan terakhir: kelewatan (1000); }

Sekarang anda boleh memeriksa sama ada sensor anda memberikan nilai.

Sentuh hujung skru atau kabel dan anda akan melihat sesuatu seperti foto 1

Sekiranya tidak berfungsi, periksa kabel anda. Adakah mereka dihubungkan dengan betul?

Langkah 3: Perpustakaan Neopixel

Perpustakaan Neopixel
Perpustakaan Neopixel
  • Muat turun perpustakaan adafruit_neopixel (Sekiranya anda belum melakukannya).

    • Pergi ke alat> uruskan perpustakaan
    • cari gambar neopixel adafruit 1
    • Pasang versi 1.2.5

Langkah 4: Penyediaan Kod Neopixel

  • Tambahkan yang berikut di bahagian atas projek anda
    • #sertakan
    • #sertakan
    • #masuk "Adafruit_NeoPixel.h"
  • Di bawah itu:

char ssid = "SSID"; // SSID rangkaian anda (nama)

kata laluan char = "kata laluan"; // kata laluan rangkaian anda

Dan di bawah itu

#tentukan PIXEL_PIN D5 # tentukan PIXEL_COUNT 30 // ubah kepada bagaimana maney led berada di jalur anda

#tentukan PIXEL_TYPE NEO_GRB + NEO_KHZ800

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

Langkah 5: Persediaan Tidak Sah

Masukkan kod berikut dalam penyediaan suara ()

piksel.begin (); // MEMULAKAN objek jalur NeoPixel (DIPERLUKAN) piksel. Tunjukkan (); // Matikan semua piksel ASAP

piksel.setBrightness (50); // mestilah antara 0 dan 255 jika anda mahu jalur yang dipimpin lebih cerah anda boleh menambah bilangannya

Langkah 6: Gelung Void

Dalam gelung kekosongan () dan di bawah kelewatan (1000); masukkan kod berikut

jika (sensorValue == 0 || sensorValue <= 200) {

untuk (int i = 0; i

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

piksel.show ();

}

} lain jika (sensorValue> 200 || sensorValue <= 500) {

untuk (int i = 0; i

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

piksel.show ();

}

} lain jika (sensorValue> 500) {

untuk (int i = 0; i

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

piksel.show ();

}

}

}

Langkah 7: Periksa

Periksa
Periksa
Periksa
Periksa

Tahniah! Anda baru sahaja membuat sistem yang dapat menunjukkan sama ada tanah basah atau kering.

Sekarang apabila anda meletakkan sensor di tanah basah, LED akan menjadi hijau dan ketika berada di tanah kering, ia akan menjadi merah. Seperti gambar di atas.

Disyorkan: