
Isi kandungan:
2025 Pengarang: John Day | [email protected]. Diubah suai terakhir: 2025-01-23 15:00


Gambaran keseluruhan
Matlamat projek ini adalah untuk membuat peranti kompak yang dapat memantau keadaan tanaman rumah. Peranti ini membolehkan pengguna memeriksa tahap kelembapan tanah, tahap kelembapan, suhu, dan suhu "terasa seperti" dari telefon pintar menggunakan Aplikasi Blynk. Selain itu, pengguna akan menerima amaran e-mel apabila keadaan menjadi tidak sesuai untuk kilang. Sebagai contoh, pengguna akan menerima peringatan untuk menyiram tanaman apabila tahap kelembapan tanah turun di bawah tahap yang sesuai.
Langkah 1: Keperluan



Projek ini menggunakan benda Sparkfun ESP32, sensor DHT22, dan Sensor Kelembapan Tanah Bata Elektronik. Selain itu, rangkaian wifi dan aplikasi Blynk diperlukan. Sebaiknya, penutup kalis air harus dibuat untuk mengandungi barang ESP32. Walaupun contoh ini menggunakan outlet standard untuk sumber kuasa, penambahan bateri yang boleh dicas semula, panel solar, dan pengawal cas akan membolehkan peranti dihidupkan melalui tenaga yang boleh diperbaharui.
Langkah 2: Blynk



Untuk menjadi, muat turun aplikasi Blynk dan buat projek baru. Perhatikan token pengesahan - ia akan digunakan dalam kod. Buat widget paparan baru di aplikasi Blynk dan pilih pin maya yang sesuai yang ditentukan dalam kod. Tetapkan selang penyegaran ke tolak. Setiap widget harus diberikan pin maya sendiri.
Langkah 3: Arduino IDE

Muat turun Arduino IDE. Ikuti arahan muat turun untuk pemacu perkara dan demo ESP32 untuk memastikan sambungan wifi. Muat turun perpustakaan Blynk dan DHT yang termasuk dalam kod. Isi token pengesahan, kata laluan wifi, nama pengguna wifi, dan e-mel dalam kod akhir. Gunakan kod demo untuk sensor kelembapan tanah untuk mencari nilai minimum dan maksimum untuk jenis tanah. Catat dan gantikan nilai-nilai ini dalam kod akhir. Ganti nilai minimum untuk suhu, kelembapan tanah, dan kelembapan untuk tanaman dalam kod akhir. Muat naik kod.
Langkah 4: Bina



Pertama, sambungkan sensor kelembapan tanah ke 3.3V, ground, dan pin input 34. Perhatikan, ia adalah integral suis diatur ke A kerana tetapan analog untuk sensor ini akan digunakan. Seterusnya, sambungkan sensor DHT ke 3.3V, ground, dan pin input 27. Sensor DHT22 memerlukan perintang 10K Ohm antara VCC dan pin keluar data. Pastikan untuk memeriksa rajah DHT untuk memastikannya disambungkan dengan betul. Konfigurasikan ESP32 di dalam penutup kalis air dengan sensor kelembapan di dalam tanah dan sensor DHT di atas permukaan. Sambungkan ke sumber kuasa dan nikmati data di persekitaran kilang anda.
Langkah 5: Kod
// Perpustakaan yang disertakan
#tentukan seri BLYNK_PRINT
#include #include #include #include "DHT.h"
// Maklumat sensor DHT
#define DHTTYPE DHT22 // DHT 22 (AM2302), AM2321 #define DHTPIN 27 // Pin digital yang disambungkan ke sensor DHT DHT dht (DHTPIN, DHTTYPE); // Memulakan sensor DHT.
// tentukan pin input dan output
int tanah_sensor = 34; // tentukan nombor pin input analog yang disambungkan ke sensor kelembapan
int output_value; // tentukan sebagai output
int moisturelevel; // tentukan sebagai output
int diberitahu = 0; // definisikan sebagai 0
int timedelay = 60000L; // tetapkan pemasa untuk menjalankan mendapatkan data sekali setiap minit atau 60, 000 milisaat
// tetapkan nilai minimum untuk tanaman
int min_moisture = 20; int min_temperature = 75; int min_humidity = 60;
// Anda harus mendapatkan Auth Token di Aplikasi Blynk.
char auth = "Auth_Token_Here";
// Kelayakan WiFi anda.
char ssid = "Wifi_Network_Here"; char pass = "Wifi_Password_Here";
Pemasa BlynkTimer;
// Fungsi ini menghantar waktu naik Arduino setiap saat ke Virtual Pin (5).
// Dalam aplikasi, frekuensi membaca Widget harus ditetapkan ke PUSH. Ini bermaksud // bahawa anda menentukan kekerapan menghantar data ke Aplikasi Blynk.
void Sensors () // fungsi utama untuk membaca sensor dan mendorong ke blynk
{output_value = analogRead (tanah_sensor); // Baca isyarat analog dari tanah_sensor dan tentukan sebagai output_value // Peta output_vlaue dari min, nilai maksimum hingga 100, 0 dan had antara 0, 100 // Gunakan contoh kod dan monitor bersiri untuk mencari min dan nilai maksimum untuk sensor individu dan jenis tanah untuk penentukuran kelembapan yang lebih baik = had (peta (output_value, 1000, 4095, 100, 0), 0, 100); apungan h = dht.readHumidity (); // Baca kelembapan kelembapan t = dht.readTemperature (); // Baca suhu sebagai Celsius (lalai) apungan f = dht.readTemperature (benar); // Baca suhu sebagai Fahrenheit (isFahrenheit = true) // Hitung indeks haba di Fahrenheit (lalai) float hif = dht.computeHeatIndex (f, h); // Periksa sama ada bacaan gagal dan keluar lebih awal (untuk mencuba lagi). if (isnan (h) || isnan (t) || isnan (f)) {Serial.println (F ("Gagal membaca dari sensor DHT!")); kembali; } // Ini menghubungkan vales ke pin maya yang ditentukan dalam widget di aplikasi Blynk Blynk.virtualWrite (V5, moisturelevel); // Kirim tahap kelembapan ke pin maya 5 Blynk.virtualWrite (V6, f); // Kirim suhu ke maya pin 6 Blynk.virtualWrite (V7, h); // Kirim kelembapan ke pin maya 7 Blynk.virtualWrite (V8, hif); // Hantar indeks haba ke pin maya 8
jika (diberitahu == 0)
{if (moisturelevel <= min_moisture) // Sekiranya moisturelevel sama dengan atau di bawah nilai min {Blynk.email ("Email_Here", "Monitor Loji", "Loji Air!"); // Hantar e-mel ke loji air} kelewatan (15000); // E-mel Blynk mesti berjarak 15 saat. Kelewatan 15000 milisaat jika (f <= min_temperature) // Sekiranya suhu sama dengan atau di bawah nilai min {Blynk.email ("Email_Here", "Monitor Loji", "Suhu Rendah!"); // Hantar e-mel bahawa suhu rendah
}
kelewatan (15000); // E-mel Blynk mesti berjarak 15 saat. Kelewatan 15000 milisaat jika (h <= min_humidity) // Sekiranya kelembapan sama dengan atau di bawah nilai min {Blynk.email ("Emial_Here", "Monitor Tanaman", "Kelembapan Rendah!"); // Hantar e-mel bahawa kelembapan rendah} diberitahu = 1; timer.setTimeout (timedelay * 5, resetNotified); // darabkan masa dengan jumlah minit yang dikehendaki antara e-mel amaran berulang}}
void resetNotified () // fungsi dipanggil untuk menetapkan semula frekuensi e-mel
{diberitahu = 0; }
persediaan tidak sah ()
{Serial.begin (9600); // Konsol debug Blynk.begin (auth, ssid, pass); // sambungkan ke blynk timer.setInterval (timedelay, Sensor); // Siapkan fungsi yang akan dipanggil setiap minit atau waktu yang ditetapkan ke dht.begin (); // jalankan sensor DHT}
// Gelung kekosongan hanya boleh mengandungi blynk.run dan pemasa
gelung kekosongan () {Blynk.run (); // Jalankan blynk timer.run (); // Memulakan BlynkTimer}
Disyorkan:
Buat Orang Buta Kenali Perkara dengan Menyentuh Perkara Di Sekitar Mereka Menggunakan MakeyMakey: 3 Langkah

Buat Orang Buta Mengenal Perkara dengan Menyentuh Perkara Di Sekitar Mereka Menggunakan MakeyMakey: pengenalanProjek ini bertujuan untuk menjadikan kehidupan orang buta mudah dengan mengenal pasti perkara-perkara di sekitar mereka melalui deria sentuhan. Saya dan anak saya Mustafa berfikir tentang mencari alat untuk menolong mereka dan pada masa kami menggunakan perkakasan MakeyMakey
Menyiram Tumbuhan Dalaman Dengan NodeMCU, Pelayan Blynk Tempatan dan Blynk Apk, Titik Set Boleh Laras: 3 Langkah

Menyiram Tumbuhan Dalaman Dengan NodeMCU, Local Blynk Server dan Blynk Apk, Titik Set Boleh Laras: Saya telah membina projek ini kerana tanaman dalaman saya perlu sihat walaupun saya bercuti untuk jangka masa yang panjang dan saya suka idea untuk mempunyai mengawal atau sekurang-kurangnya memantau semua kemungkinan perkara yang berlaku di rumah saya melalui internet
Pengumpan Tumbuhan Automatik WiFi Dengan Takungan - Persediaan Penanaman Dalaman / Luaran - Tumbuhan Air Secara Automatik Dengan Pemantauan Jauh: 21 Langkah

Pengumpan Tanaman Automatik WiFi Dengan Takungan - Persediaan Penanaman Dalaman / Luaran - Tumbuhan Air Secara Automatik Dengan Pemantauan Jauh: Dalam tutorial ini kita akan menunjukkan cara mengatur sistem pengumpan tanaman dalaman / luaran khusus yang menyiram tanaman secara automatik dan dapat dipantau dari jarak jauh menggunakan platform Adosia
Penyelenggaraan Prediktif Mesin Berputar Menggunakan Getaran dan Bicara Perkara: 8 Langkah

Penyelenggaraan Prediktif Mesin Berputar Menggunakan Getaran dan Perkara Bunyi: Mesin berputar seperti turbin angin, turbin hidro, motor aruhan dan lain-lain menghadapi pelbagai jenis keausan dan Tear. Sebilangan besar kesalahan dan kehausan ini disebabkan oleh getaran tidak normal pada peranti. Mesin-mesin ini sering dikendalikan di bawah alat berat
Automasi Rumah Sederhana Menggunakan Raspberry Pi3 dan Android Perkara: 5 Langkah (dengan Gambar)

Automasi Rumah Sederhana Menggunakan Raspberry Pi3 dan Android Perkara: Ideanya adalah untuk merancang “ RUMAH pintar ” di mana seseorang dapat mengawal peranti isi rumah menggunakan Android Things dan Raspberry Pi. Projek ini terdiri daripada mengendalikan perkakas rumah seperti Cahaya, Kipas, motor dan lain-lain. Bahan yang Diperlukan: Raspberry Pi 3HDMI Ca