Isi kandungan:

Arduino DHT22 Sensor and Soil Moisture Project Dengan Menu: 4 Langkah
Arduino DHT22 Sensor and Soil Moisture Project Dengan Menu: 4 Langkah

Video: Arduino DHT22 Sensor and Soil Moisture Project Dengan Menu: 4 Langkah

Video: Arduino DHT22 Sensor and Soil Moisture Project Dengan Menu: 4 Langkah
Video: Soil Moisture Sensor with Arduino Uno 2024, November
Anonim
Arduino DHT22 Sensor dan Soil Moisture Project Dengan Menu
Arduino DHT22 Sensor dan Soil Moisture Project Dengan Menu

Halo kawan-kawan Hari ini saya membentangkan kepada anda projek kedua mengenai instruksional. Projek ini membentangkan campuran projek pertama saya di mana saya menggunakan sensor Soil Moisture dan sensor DHT22 yang digunakan untuk mengukur suhu dan kelembapan. Projek ini mudah dibuat, dan orang yang menggunakan Arduino akan merasa tenang untuk dibuat. Perbezaan antara projek ini dan yang pertama adalah bahawa dalam projek ini pengguna akan mempunyai menu di mana dia dapat memilih apa yang ingin dilihatnya pada masa ini. Akan ada empat pilihan. Oleh itu, ambil kit anda dan mulakan membuat projek ini yang boleh digunakan di mana-mana rumah.

Langkah 1: Memperolehi Semua Bahagian

Memperolehi Semua Bahagian
Memperolehi Semua Bahagian
Memperolehi Semua Bahagian
Memperolehi Semua Bahagian
Memperolehi Semua Bahagian
Memperolehi Semua Bahagian

Projek ini menggunakan beberapa bahagian. Bahagian ini sangat murah untuk didapatkan, jadi jangan risau tentang harganya. Sebilangan bahagian yang digunakan dalam projek ini boleh diubah jadi projek boleh dibuat lebih murah. Pada bahagian mana yang disyorkan akan anda gunakan dan buat projek ini lebih baik. Bahagian yang digunakan dalam projek ini:

  1. Arduino uno rev3 (Anda juga boleh menggunakan Arduino lain)
  2. Papan roti
  3. Paparan hijau LCD 1602 dengan I2C (anda juga boleh menggunakan paparan dengan I2C tetapi anda memerlukan lebih banyak pin untuk menyambungkannya)
  4. Pad kekunci 16 (Boleh ditukar)
  5. Modul pengesanan hygrometer tanah FC-28-d + sensor kelembapan tanah
  6. Sensor suhu dan kelembapan DHT22 (Anda boleh menggunakan DHT11 yang harganya lebih murah)
  7. Diod LED merah
  8. Diod LED biru
  9. 2 Perintang 220 ohm (digunakan untuk dioda)
  10. Perintang 4k7 digunakan untuk DHT22 pada skema
  11. Penyambung bateri Arduino
  12. Beberapa kabel pelompat untuk menghubungkan semua bahagian

Satu perkara yang perlu saya beritahu sebelum memulakan projek ini ialah papan kekunci tidak diperlukan. Kali ini saya menggunakan papan kekunci kerana pengekod putar saya rosak. Saya rasa projek ini akan sempurna jika mempunyai rotary encoder kerana akan menggunakan pin yang lebih rendah, atau boleh menggunakan 3 butang.

Langkah 2: Menyambungkan Semua Bahagian Bersama

Menghubungkan Semua Bahagian Bersama
Menghubungkan Semua Bahagian Bersama

Pada langkah ini anda dapat melihat skema yang saya buat dengan fritzing. Saya akan menulis panas untuk menghubungkan setiap bahagian penting dalam projek ini.

Seperti yang anda lihat, kami menggunakan 5V dan GND dari arduino untuk menghidupkan papan roti.

LCD:

  • VCC hingga 5v (+ bahagian pada papan roti)
  • GND ke gnd (- bahagian pada papan roti)
  • SDA ke pin analog A4
  • SCL ke pin analog A5

Pad kekunci dengan 16 butang:

Kami menggunakan pin 9, 8, 7, 6, 5, 4, 3, 2 untuk menyambungkan pad kekunci (ini adalah sebab mengapa saya menggunakan pengekod putar, kerana hanya memerlukan 3 pin di papan)

Sensor Kelembapan Tanah:

  • VCC hingga 5v (+ bahagian pada papan roti)
  • GND ke gnd (-bahagian pada papan roti)
  • D0 ke pin digital 0
  • A0 ke pin analog A0

DHT22:

  • VCC hingga 5v (+ bahagian pada papan roti)
  • GND ke gnd (-bahagian pada papan roti)
  • Pin keluar disambungkan ke pin 12

Penyambungan diod:

  • satu bahagian diod masuk - bahagian papan roti
  • bahagian kedua melalui perintang 220 ohm dan selepas itu disambungkan ke pin 10 (diod biru) atau 11 (diod merah)

Langkah 3: Menulis Kod

Saya akan cuba menerangkan kod dalam beberapa bahagian. Terdapat juga kod lengkap yang ditulis supaya anda dapat menyalinnya dan juga mengubahnya jika anda melihat keperluan. Juga dalam kod ini terdapat beberapa kaedah tertulis untuk kerja sensor, tetapi kali ini fokus utama adalah membuat menu yang akan mudah difahami bagi orang yang baru menggunakan Arduino. Kali ini saya tidak menggunakan gangguan tetapi pada projek seterusnya saya akan melakukannya, jadi ingatlah bahawa kod ini dapat menjadi lebih baik dengan gangguan.

  1. Bahagian pertama kod merangkumi semua perpustakaan yang digunakan untuk projek ini. Perlu diingat bahawa untuk semua bahagian yang saya katakan bahawa saya menggunakan anda memerlukan perpustakaan seterusnya: Wire, LiquidCrystal_I2C, Keypad dan DHT. Semua perpustakaan boleh didapati di Arduino IDE jika anda pergi ke bahagian lakaran dan kemudian memasukkan perpustakaan. Ingat juga bahawa jika anda menggunakan sesuatu seperti rotary encoder, anda mungkin perlu mendapatkan perpustakaan baru dan bukannya pad kekunci, yang mungkin adalah rotary.h dan butang. Sekiranya anda menggunakan sensor DHT11, perpustakaan masih DHT.
  2. Di bahagian kedua kod akan ada penentuan semua bahagian terpakai. Pertama sekali ialah LCD. Setelah itu ada sensor DHT yang mewakili seperti objek dengan jenis sensor dht, dan juga pin yang disambungkan. Sensor dan diod kelembapan tanah adalah yang ketiga.
  3. Saya akan menerangkan pad kekunci sedikit lagi. Seperti yang saya katakan pengekod putar saya rosak, jadi saya memutuskan untuk menggunakannya. Untuk projek ini, cukup hanya mempunyai empat butang, malah tiga yang sesuai untuknya. Oleh itu, saya menggunakan empat butang pada papan kekunci untuk satu pilihan sahaja. Anda boleh menggunakan beberapa butang jika anda mahukan sesuatu yang lain jika anda mempunyai idea. Anda perlu menentukan baris dan lajur di bahagian ini. Selepas itu hexaKeys akan mewakili anda pilihan yang digunakan untuk projek ini. Dalam projek saya terdapat B (belakang), U (atas), D (bawah) dan A (terima). Anda boleh membuat setiap butang untuk melakukan perkara lain. Satu butang dapat menghidupkan lampu latar, satu dapat mematikannya. Oleh itu, jangan ragu untuk bermain dengannya lagi
  4. Di bahagian ini terdapat pemboleh ubah global yang digunakan dalam kod. Pemboleh ubah bool digunakan untuk perubahan skrin. Pembolehubah selamat datang adalah benar selama beberapa saat hanya apabila arduino saya dihidupkan, selepas itu ia akan menjadi salah selama ini. Fokus utama adalah pada pemboleh ubah mainScreen. Pemboleh ubah ini digunakan untuk memandu anda dari menu ke pilihan lain dalam kod. Sekiranya pemboleh ubah ini salah maka itu bermaksud bahawa pengguna memutuskan untuk menggunakan salah satu daripada empat pilihan projek ini.
  5. Di sinilah ditulis semua kaedah yang digunakan dalam kod ini. Saya akan cuba menerangkan semua kaedah bertulis di bahagian ini
  • batal startScreen (); // kaedah untuk memulakan projek dan arduino
  • int pilihanNumber (pilihan int); // ini mengubah pilihan pilihan projek anda. Nombor bermula dari 1 hingga 4
  • batal mainScreenP (pilihan int); // akan ditulis empat pilihan peranti yang dibuat
  • bool mainScreenCS (bool mainScreen); // ini menukar mainScreen menjadi false
  • bool mainScreenBack (bool mainScreen); // ini mengubah mainScreen menjadi true
  • kekosongan tempCelsius (); // suhu bacaan dalam pilihan sensor C DHT
  • batal tempFarenheit (); // suhu bacaan dalam pilihan sensor F DHT
  • cetak tidak sah Kelembapan (); // membaca pilihan sensor kelembapan DHT
  • batal bacaSensorData (); // membaca data pada sensor yang disambungkan
  • Rentetan getTemperatureC ();
  • Rentetan getTemperatureF ();
  • String getHumidity ();
  • tanah kosongMoisture (); // ini untuk sensor dan diod lain
  • batal cetakSensorSoilMoisture (); // mencetak bahagian kelembapan tanah pada lcd
  • void diodeLights (nilai int); // menghidupkan dan mematikan dioda
  • void printValue (nilai int);

6. Persediaan untuk arduino adalah bahagian di mana anda memasang sensor LCD dan DHT dan juga dioda

7. Bahagian utama adalah bahagian di mana semua kaedah bertulis di atas digunakan.

Kod penuh projek ini akan dilampirkan pada langkah ini. Perlu diingat bahawa ada kemungkinan pin mungkin tidak tersambung seperti pada skema, saya berpendapat bahawa diodnya diubah.

Langkah 4: Menggunakan Arduino Anda

Menggunakan Arduino Anda
Menggunakan Arduino Anda
Menggunakan Arduino Anda
Menggunakan Arduino Anda
Menggunakan Arduino Anda
Menggunakan Arduino Anda
Menggunakan Arduino Anda
Menggunakan Arduino Anda

Ini mungkin bahagian paling lucu. Sekurang-kurangnya lebih menggembirakan setelah semua pengekodan ditulis. Di bahagian ini anda dapat melihat gambar bagaimana projek berfungsi. Terdapat 4 pilihan.

  1. Suhu bacaan dalam Celsius
  2. Suhu bacaan di Fahrenheit
  3. Kelembapan membaca
  4. Menghidupkan dioda dan membaca nilai sensor kelembapan tanah.

Anda boleh memilih mana-mana pilihan yang mungkin, anda juga boleh kembali dan memilih lagi jika anda ingin melihat sesuatu yang lain. Mudah dan senang digunakan.

Sekiranya ada pertanyaan lain, anda boleh bertanya kepada saya. Terima kasih kerana melihat projek saya. Dengan segala hormatnya. Sebastian

Disyorkan: