Daftar Isi:

Sensor Suhu dan Kelembaban Arduino: 7 Langkah
Sensor Suhu dan Kelembaban Arduino: 7 Langkah

Video: Sensor Suhu dan Kelembaban Arduino: 7 Langkah

Video: Sensor Suhu dan Kelembaban Arduino: 7 Langkah
Video: Arduino Sensor Suhu dan Kelembaban DHT22 Dengan Tiga LED Indikator WOKWI Tutorial @tptumetro 2024, November
Anonim

Oleh ThundertronicsIkuti Lainnya oleh penulis:

PIC16F877A Konverter Analog ke Digital (ADC)
PIC16F877A Konverter Analog ke Digital (ADC)
PIC16F877A Konverter Analog ke Digital (ADC)
PIC16F877A Konverter Analog ke Digital (ADC)
Antarmuka LCD Dengan Mikrokontroler PIC16F877A
Antarmuka LCD Dengan Mikrokontroler PIC16F877A
Antarmuka LCD Dengan Mikrokontroler PIC16F877A
Antarmuka LCD Dengan Mikrokontroler PIC16F877A
Catu Daya Bangku Modular DIY
Catu Daya Bangku Modular DIY
Catu Daya Bangku Modular DIY
Catu Daya Bangku Modular DIY

Pada tutorial kali ini saya akan menjelaskan tentang pembuatan sensor suhu dan kelembaban menggunakan board Arduino pro mini dengan sensor DHT11 (atau DHT22).

Langkah 1: Tonton Videonya

Penting untuk melihat video terlebih dahulu sebelum melanjutkan ke langkah berikutnya. Video menjelaskan semuanya dan menunjukkan bagaimana hal itu dilakukan. Namun, dalam posting ini, saya akan menulis lebih banyak data dan detail teknis.

www.youtube.com/watch?v=56LKl7Xd770

Langkah 2: Bagian yang Dibutuhkan

Bagian-bagian yang dibutuhkan untuk proyek ini adalah:

1- Papan mini Arduino pro (atau Arduino apa pun).

2- Sensor suhu dan kelembaban DHT11 (atau DHT22).

3- Layar LCD 16x2.

4- Enklosur pilihan Anda, sebaiknya sama dengan yang digunakan dalam video.

Potensiometer 5-10K.

6- Terminal sekrup.

7- Resistor dengan nilai yang berbeda.

Baterai 8-9v.

sedangkan alat yang dibutuhkan adalah:

1- bor tangan seperti Dremil.

2- mata bor yang berbeda, karena kita akan menggunakan mata bor perata dan mata bor.

3- uluran tangan.

plus, alat elektronik biasa seperti multimeter dan sebagainya.

Langkah 3: Desain Skema

Desain Skema
Desain Skema

Dalam proyek ini, saya telah memilih untuk membuat PCB untuk itu daripada memasangnya sendiri. Jadi saya telah menggunakan alat online EasyEDA untuk pekerjaan yang merupakan pengalaman yang menyenangkan.

Ini adalah halaman proyek di situs easyEDA:

Penjelasan skemanya adalah sebagai berikut:

1- Saya telah menggunakan adaptor ICSP 6-pin untuk memprogram Arduino pro mini karena tidak ada adaptornya. itu adalah J2 di skema.

2- R2 adalah 100 Ohm dan mengatur kecerahan LCD. Pada dasarnya, Anda dapat memberikan resistansi lebih dari 100R jika Anda ingin lampu latar LCD lebih redup. Atau lebih baik lagi, dapatkan potensiometer untuk bertindak sebagai resistansi seri variabel.

3- JP1 hanyalah konektor yang memiliki jejak PCB yang bagus. Saya tidak pernah memasang terminal yang sebenarnya tetapi menyolder kabelnya. Lakukan sesukamu.

4- U2 adalah terminal koneksi baterai. Di sini, saya lebih suka terminal sekrup yang bagus untuk mendapatkan koneksi yang kuat. Anda bisa menyolder kabelnya, tetapi pastikan untuk memasang solder yang cukup untuk membuat sambungan cukup kuat untuk menahan guncangan apa pun.

5- LCD1 adalah komponen LCD di easyEDA. Ini memiliki koneksi dasar ke Arduino pro mini. Pastikan pin di sini identik dengan yang ada di perangkat lunak.

6- RV1 adalah potensiometer 10K untuk mengatur kontras LCD. Ini harus digunakan hanya sekali dan saat pertama kali Anda menyalakan LCD.

Langkah 4: Desain PCB

Desain PCB
Desain PCB
Desain PCB
Desain PCB

Setelah menyelesaikan desain skema dan memahami apa artinya semuanya, sekarang saatnya membuat PCB untuk itu.

Anda harus menekan "Konversi ke PCB" di EasyEDA untuk membuat PCB di editor PCB. Kemudian, mulailah menempatkan suku cadang dan melakukan perutean seperti biasa. Saya sarankan jangan pernah menggunakan router otomatis.

Saya telah menggunakan banyak vias untuk berpindah dari lapisan atas ke bawah karena ruangnya sangat sedikit.

Langkah 5: Buat PCB

Sekarang, desain PCB sudah selesai. Kami memeriksa semuanya dan tidak ada masalah yang ditemukan. Kami perlu mengirim file desain (gerbers) ke perusahaan fabrikasi PCB pilihan kami sehingga dapat melakukannya untuk kami.

Perusahaan pilihan saya adalah JLCPCB. Mereka adalah yang terbaik untuk proyek dan prototyping semacam itu dan mereka hanya menawarkan harga $ 2 untuk keseluruhan 10 buah desain Anda!

Jadi, sekarang kita klik (…) dan pilih JLCPCB. Kami diarahkan ke website JLCPCB karena mereka adalah partner EasyEDA. Sekarang isi semuanya dan lakukan pemesanan. Sekarang tunggu saja sampai PCB tiba.

Perlu disebutkan bahwa JLCPCB tidak hanya memiliki EasyEDA yang terkait dengan mereka, tetapi mereka juga memiliki toko komponen yang besar juga! Manfaatnya di sini adalah membuat pesanan PCB dan pesanan komponen dikirimkan bersama! Ya, tidak perlu menunggu 2 paket datang secara terpisah, tapi malah digabungkan dalam satu paket. Saya sangat merekomendasikan menggunakan ini.

Langkah 6: Perakitan

Kami memiliki PCB sendiri dengan semuanya sekarang. Sudah waktunya untuk mengumpulkan semuanya bersama-sama.

Pertama, kita perlu menyolder elektronik sesuai skema. Ini adalah tugas yang mudah untuk proyek ini.

Setelah selesai menyolder, sekarang potong lubang yang diperlukan di selungkup plastik kemudian pasang PCB dengan komponen lain dengan baik di dalam menggunakan lem panas.

Anda sekarang harus menggunakan potensiometer untuk menyesuaikan kontras LCD, saat memilih katup resistor yang diperlukan untuk kecerahan, saya telah memilih 100R.

Langkah 7: Kode

Kode untuk proyek ini dilampirkan dengan langkah ini, dan penjelasannya adalah sebagai berikut:

// sertakan kode library:#include #include "DHT.h" // setel Pin DHT #define DHTPIN 2

Sertakan perpustakaan yang diperlukan dan tentukan pin 2 Arduino pro mini sebagai pin data untuk sensor. Pastikan untuk menginstal perpustakaan ini jika Anda tidak memilikinya.

// inisialisasi perpustakaan dengan nomor pin antarmuka LiquidCrystal lcd(9, 8, 7, 6, 5, 4); #define DHTTYPE DHT11 DHT dht(DHTPIN, DHTTYPE);

Sekarang inisialisasi perpustakaan LCD dengan pin ini sesuai dengan skema itu sendiri. Gunakan juga pustaka DHT dan pilih DHT11 sebagai sensor yang akan digunakan, jadi jika Anda memiliki DHT22 maka Anda harus mengubahnya.

Baris terakhir mengatakan kami memiliki sensor DHT11 dan pin datanya ada di pin "DHTPIN" yang merupakan pin 2 seperti yang kami definisikan sebelumnya.

void setup() { // mengatur jumlah kolom dan baris LCD: lcd.begin(16, 2); dht.mulai(); lcd.setCursor(0, 0); lcd.print("Suhu dan"); lcd.setCursor(0, 1); lcd.print("sensor kelembaban"); penundaan(3000); lcd.clear(); lcd.setCursor(0, 0); lcd.print("THUNDERTRONIC"); lcd.setCursor(0, 1); lcd.print("Hossam Moghrabi"); penundaan(3000); }

Sekarang saatnya pengaturan! dan inilah yang terjadi:

LCD adalah 16 dengan 2 jenis.

Mulai perintah DHT untuk mendapatkan nilai.

Cetak "Sensor suhu dan kelembaban" pada 2 baris.

Tunda 3 detik.

Hapus tampilan

Cetak "THUNDERTRONICS" di baris pertama lalu cetak "Hossam Moghrabi" di baris ke-2.

Tunda 3 detik.

^Saya telah melakukan ini sebagai layar selamat datang yang berlangsung sekitar 6 detik atau lebih sebelum nilai ditampilkan.

void loop() { // membaca kelembapan int h = dht.readHumidity(); //membaca suhu dalam c int t = dht.readTemperature(); if (isnan(h) || isnan(t)) { lcd.print("ERROR"); kembali; }

Sekarang kita berada di dalam lingkaran abadi kita yang akan terus berulang.

Simpan pembacaan kelembaban di dalam variabel "h" dan pembacaan suhu di dalam variabel "t".

Selanjutnya, kita memiliki pernyataan if. Ini pada dasarnya mengembalikan pesan kesalahan ketika ada kesalahan. Biarkan tanpa mengubahnya.

Sekarang kita memiliki semua nilai yang kita butuhkan.

lcd.setCursor(0, 0); lcd.print("Suhu = "); lcd.print(t); lcd.print(""); lcd.print((char)223); lcd.print("C"); lcd.setCursor(0, 1); lcd.print("Kelembaban = "); lcd.print(h); lcd.print("%"); // lcd.print("Hossam Moghrabi"); penundaan(2000);

Akhirnya, kami menampilkan nilai-nilai ini pada layar LCD. Anda dapat mengubahnya seperti yang Anda inginkan karena hanya mencetak nilai di dalam variabel "h" dan "t". Menempatkan penundaan 2 detik agak opsional tetapi Anda tidak akan mendapat banyak manfaat dari melakukannya lebih cepat karena sensor itu sendiri tidak secepat itu dan bahkan jika ya, tetap saja nilai fisik tidak pernah berubah secepat itu. Jadi 2 detik sangat cepat untuk pekerjaan itu!

Hanya itu saja!

Direkomendasikan: