BAB IV HASIL DAN PEMBAHASAN
B. Pembahasan Hasil Unjuk Kerja
B. Pembahasan Hasil Unjuk Kerja
Berikut ini hasil pembahasan unjuk kerja alat, meliputi perancangan kode program:
1. Kode Program sensor Yl-69 dengan NodeMCU ESP8266.
Program Arduino IDE ini digunakan untuk menghubungkan pembacaan sensor YL-69 dengan NodeMCU ESP8266.. Cara menghubungkan sensor DHT11 dengan ESP8266 pada program Arduino IDE dapat dilihat pada gambar dibawah ini.
Gambar 4.3 Kode program YL-69 dengan NodeMCU ESP8266
Pada gambar 4.3 kita mendeklarasikan variabel adc dan kelembaban. Variable adc = analogRead(A0), memiliki maksud jika varialbel adc adalah nilai dari pembacaan sensor YL-69, yang mana jika sensor YL-69 mendeteksi tanah yang kering, maka akan tercetak nilai maksimal 1023, sedangkan jika tanah mulai basah, nilai akan turun.
Hal ini berkebalikan dengan prinsip kelembaban, yang kita butuhkan adalah nilai yang apabila kelembaban naik maka nilai juga akan naik pada rentang 0 – 100 % , maka dari kebutuhan tersebut, kita menggunakan deklarasi variabel kelembaban = (1023-adc)/10.23.
Dengan rumus tersebut, apabila kelembaban naik maka nilai persentase yang tercetak pada display juga naik, dan jika kelembaban turun maka nilai persentase yang tercetak pada display juga akan turun.
2. Kode Program NodeMCU ESP8266 dengan LCD.
Program Arduino IDE ini digunakan untuk menghubungkan atau mengkoneksikan NodeMCU ESP8266 dengan LCD. Hal ini berfungsi untuk data yang diolah NodeMCU ESP8266 dapat ditampilkan pada LCD. Cara menghubungkan NodeMCU ESP8266 dengan LCD pada program Arduino IDE dapat dilihat pada gambar dibawah ini.
44
Gambar 4.4 Kode program NodeMCU ESP8266 dengan LCD
Pada gambar 4.4 Wire.begin (D2,D1) berfungsi untuk mengalamatkan pin NodeMCU yang akan dihubungkan dengan pin SDA dan SCL pada pin I2C. Progam lcd.init(); adalah progam untuk menginisialisasikan lcd. Pemanggilan include library #include <Wire.h>
berfungsi untuk mengkonversi jalur paralel lcd menjadi jalur serial I2C dan #include <LiquidCrystal_I2C.h> bertujuan untuk meng-include library LCD. LiquidCrystal_I2C lcd(0x27,20,4); berfungsi untuk menentukan alamat I2C. lcd.begin(20,4); berfungsi untuk
menginisialisasi tampilan layar LCD dan menentukan dimensi dari layar LCD. lcd.backlight(); untuk menghidupkan cahaya latar belakang pendukung pada LCD. Untuk perintah lcd.setCursor(0,0) berfungsi untuk menentukkan posisi cursor mulai penulisan. lcd.print("Kelembaban:");
berfungsi untuk menampilkan nilai dari data sensor suhu pada display berfungsi untuk menampilkan nilai dari data kelembaban tanah dan nilai input yang digunakan pada sistem.
3. Kode Program Koneksi NodeMCU ESP8266 dengan WiFi.
Program Arduino IDE ini digunakan untuk menghubungkan atau mengkoneksikan NodeMCU ESP8266 dengan WiFi. Hal ini berfungsi supaya alat khususnya NodeMCU ESP8266 dapat mengakses internet.
Cara menghubungkan ESP8266 dengan WiFi SSID tertentu pada Arduino IDE dapat dilihat pada gambar dibawah ini.
Gambar 4.5 Kode program koneksi NodeMCU ESP8266 dengan WiFi
46
Pada gambar 4.5 pemanggilan library #include <ESP8266WiFi.h>
digunakan supaya dapat menggunakan fungsi WiFi pada NodeMCU ESP8266. Untuk perintah WiFi.begin(ssid, pass); berfungsi untuk menghubungkan NodeMCU ESP8266 dengan SSID WiFi, dimana ssid adalah nama dari SSID WiFi dan pass adalah Pasword dari WiFi yang akan dihubungkan dengan NodeMCU ESP8266.
4. Kode Program Koneksi NodeMCU ESP8266 untuk mengirim data ke Blynk
Program Arduino IDE ini digunakan oleh NodeMCU ESP8266 untuk mingirim data ke Blynk . Program ini hanya dapat bekerja jika NodeMCU ESP8266 sudah terhubung dengan WiFi yang sesuai dengan progam dan kode authorize yang sesuai dengan project yang telah dibuat.
Gambar 4.6 Kode program Mengirim Data Blynk
Pada gambar 4.6 pemanggilan library #include
<BlynkSimpleEsp8266.h> bertujuan untuk include library Blynk . Char auth[] = "snpyCj-seRAfrznyK4hQ7IvuAlcL9wHn"; adalah baris kode yang menghubungkan NodeMCU dengan project Blynk yang dibuat.
Blynk.virtualWrite(V6, kelembaban); adalah baris progam untuk menuliskan data pada pin virtual Blynk yang tekah dipilih saat konfigurasi widged Blynk. V6 adalah pin virtual 6 , kelembaban adalah data persentase kelembaban yang akan dihubungkan dengan widged Blynk.
Blynk.virtualWrite(V0,nba); adalah baris progam untuk menuliskan data pada pin virtual Blynk yang tekah dipilih saat konfigurasi widged Blynk. V0 adalah pin virtual 0 , nba adalah data nilai batas atas yang akan dihubungkan dengan widged Blynk.
Blynk.virtualWrite(V1,nbb); adalah baris progam untuk menuliskan data pada pin virtual Blynk yang tekah dipilih saat konfigurasi widged Blynk. V1 adalah pin virtual 0 , nbb adalah data nilai batas bawah yang akan dihubungkan dengan widged Blynk.
5. Kode Progam untuk mengendalikan pompa air.
Program Arduino IDE ini digunakan mengendalikan kondisi pompa air untuk penyiraman tanaman. Berikut adalah bagian progam yang mengendalikan kondisi dari pompa air.
48
Gambar 4.7 Kode progam untuk mengendalikan kondisi pompa air
Pada gambar 4.7 baris progam if ((kelembaban<nbb)||
(kelembaban<nba)){digitalWrite(pompa,HIGH);
lcd.setCursor(0,3);lcd.print("Pompa : Hidup"); memiliki fungsi jika nilai persentase kelembaban lebih kecil daripada nilai batas atas dan nilai batas bawah, maka pin D8 pada NodeMCU akan berlogika HIGH yang dihubungkan dengan relay dan akan menghidupkan pompa air, pada waktu yang sama perintah tersebut juga akan mencetak ke LCD yaitu”POMPA : Hidup”.
if(kelembaban>nba){digitalWrite(pompa,LOW); lcd.setCursor(0,3);
lcd.print("Pompa : Mati"); memiliki fungsi jika nilai persentase kelembaban lebih besar daripada nilai batas atas, maka pin D8 pada NodeMCU akan berlogika LOW yang dihubungkan dengan relay dan akan mematikan pompa air, pada waktu yang sama perintah tersebut juga akan mencetak ke LCD yaitu”POMPA : Mati”.
42
BAB V PENUTUP
Dalam bab terakhir laporan Tugas Akhir (TA) terdapat simpulan yang diperoleh dari hasil pembuatan alat berdasarkan rumusan masalah serta saran untuk perkembangan penelitian selanjutnya.
A. Simpulan
Berdasarkan hasil unjuk kerja dan pembahasan mengenai Alat Penyiram Tanaman Otomatis Dengan Acuan Kelembaban Tanah yang Dapat Dipantau dengan Android Berbasis Arduino penulis mendapatkan simpulan:
1. Untuk memaksimalkan kebutuhan air pada tanaman berdasarkan kelembaban tanah, yang perlu kita lakukan adalah melakukan riset kelembaban tanah dengan sensor kelembaban tanah YL-69, dan mencatat rentang kriteria kelembaban tanah yang dibutuhkan sesuai jenis tanaman.
2. Perancangan perangkat keras (hardware) untuk rancang bangun Alat Penyiram Tanaman Otomatis Dengan Acuan Kelembaban Tanah yang Dapat Dipantau dengan Android Berbasis NodeMcu ESP8266 menggunakan input berupa sensor kelembaban tanah YL-69 dan nilai rentang penguncian kelembaban. Kemudian proses berupa NodeMCU ESP8266 serta Output berupa LCD, Blynk, Relay dan Smartphone.
3. Perancangan perangkat lunak (software) untuk rancang bangun Alat Penyiram Tanaman Otomatis Dengan Acuan Kelembaban Tanah yang Dapat Dipantau dengan Android Berbasis NodeMcu ESP8266 dibuat dengan software Arduino IDE. Software Arduino IDE digunakan sebagai pembuatan source code program yang menggunakan bahasa C++, source code program berfungsi untuk menjalankan NodeMCU ESP8266. Dalam program Arduino IDE terdapat beberapa library untuk menjalankan komponen-komponen yang digunakan dalam tugas akhir.
4. Untuk memantau kondisi kelembaban tanah dari perangkat android, kita harus menghubungkan NodeMcu dengan project aplikasi Blynk.
43
B. Saran
Didalam pembuatan Alat ini masih banyak kekurangan , maka dari itu penulis menyarankan sebagai berikut.
1. Gunakan koneksi jaringan internet atau signal yang stabil untuk pengiriman dan penerimaan data.
2. Alat ini dapat bekerja berdasarkan kelembaban tanah yang dideteksi dengan sensor kelembaban YL-69 yang berjumlah 1 sensor, pastikan penempatan sensor dapat mewakili keadaan dari kelembaban tanah di area yang disirami air oleh pompa air.
3. Alat ini dapat dikembangkan tidak hanya untuk menonitoring jarak jauh, namun juga bisa mengendalikan batas atas dan batas bawah dari jarak jauh.
4. Karena NodeMcu ESP8266 hanya memiliki 1 pin Analog, jika ingin menigkatkan presisi pembacaan kelembaban tanah maka harus menambahkan sensor YL-69 dengan menggunakan IC Multiplexer.
44
DAFTAR PUSTAKA
Asriya, P. 2016, Rancang Bangun Sistem Monitoring Kelembaban Tanah Menggunakan Wireless Sensor Berbasis Arduino Uno. Padang : Jurnal Fisika Uiversitas Andalas.
Haidar, Muhammad (2014) Rancang Bangun Alat Pengendali Kelembapan Tanah Pada Tanaman Buah Tin Menggunakan Mikrokontroler AVR. Other thesis, Politeknik Negeri Sriwijaya
Ibrahim, A., 2011, Pengembangan Sistem Informasi Monitoring Tugas Akhir Berbasis Short Message Service (SMS) Gateway, Jurnal Jurusan Sistem Informasi, Fakultas Ilmu Komputer, Universitas Sriwijaya.
Prayitno, W. A. 2017, Sistem Monitoring Suhu, Kelembaban, dan Pengendali Penyiraman Tanaman Hidroponik menggunakan Blynk Android.
Malang : J-PTIIK Universitas Brawijaya
Stevanus dan Setiadi, K.. D., 2013, Alat Pengukur Kelembaban Tanah Berbasis Mikrokontroler, Jurnal Teknik Elektro Universitas Kristen Maranatha, Bandung.
Viktorianus, R. J. 2014, Prototype Alat Penyemprot Air Otomatis Pada Kebun Pembibitan Sawit Berbasis Sensor Kelembaban dan Mikrokontroler AVR Atmega8, Universitas Tanjungpura.
Yahwe, C. P. 2016, Rancang Bangun Prototype System Monitoring Kelembaban Tanah Melalui Sms Berdasarkan Hasil Penyiraman Tanaman “Studi Kasus Tanaman Cabai Dan Tomat”. Kendari : Teknik Informatika Universitas Halu Oleo.
45
Lampiran
Lampiran 1
1. Dokumentasi Alat.
47
49
51
53
55
57