## EMITOR: Jurnal Teknik Elektro
Rancang Bangun Aplikasi Pengontrol Sistem Penyiram Tanaman Berbasis Arduino dan Android
Ayasha Ninda Maharani ∗ , Bana Handaga
Program Studi Teknik Informatika/Fakultas Komunikasi dan Informatia − Universitas Muhammadiyah Surakarta Surakarta, Indonesia ∗ ayashanm@gmail.com
Abstract − The existence of plants as living things is very important for human life. Plants survive by utilizing water. The process of watering plants that are not controlled can have a negative impact on their survival. The watering process that is done manually is very inefficient because the owner must be in the same place with his plants. The purpose of this research is to design an application for controlling an automatic plant watering system based on Android and Arduino so that it can be used for mobility. The application is designed using the SDLC waterfall method using Flutter’s toolkit with the darts programming language. While the system design uses Arduino IDE software. The results of this study are an android application that can monitor the value of soil moisture in plants in units of time and an on/off button that can turn on and off the water pump for watering plants. Users can see the value of soil moisture in real time through the android application using an internet connection. This usage uses the firebase server as a database by utilizing the firebase server’s realtime firebase database feature. The systems and applications that have been designed are tested for usability with the final test of the application using usability testing. The results of the survey on usability testing found that the application was functioning as it should and got the ”Very Good” category of 94.44% of the respondents.
Abstrak − Keberadaan tanaman sebagai makhluk hidup sangat penting bagi kehidupan manusia. Tanaman bertahan hidup dengan memanfaatkan air. Proses penyiraman tanaman yang tidak terkontrol dapat berakibat buruk pada kelangsungan hidupnya. Serta proses penyiraman yang dilakukan secara manual sangat tidak efisien karena pemilik harus berada dalam satu tempat dengan tanaman miliknya. Tujuan dari penelitian ini adalah untuk merancang aplikasi pengontrol sistem penyiraman tanaman otomatis yang berbasis android dan arduino supaya dapat digunakan secara mobilitas. Aplikasi dirancang dengan metode SDLC waterfall menggunakan toolkit milik Flutter dengan bahasa perogaman dart. Sedangkan perancangan sistem menggunakan software Arduino IDE. Hasil dari penelitian ini berupa aplikasi android yang dapat memonitor nilai kelembapan tanah pada tanaman dalam satuan waktu dan tombol on/off yang dapat menghidupkan dan mematikan pompa air penyiram tanaman. Pengguna dapat melihat nilai kelembapan tanah secara realtime melalui aplikasi android dengan menggunakan koneksi internet. Penggunaan ini menggunakan server firebase sebagai database dengan memanfaatkan fitur realtime firebase database milik server firebase. Sistem dan aplikasi yang telah dirancang diuji kegunaannya dengan pengujian terakhir aplikasi menggunakan usability testing. Hasil dari survey pada usability testing mendapatkan hasil bahawa aplikasi berfungsi sebagaimana semestinya dan mendapat kategori “Sangat Baik” sebesar 94,44% dari responden.
Kata Kunci − Watering plants; Android; Arduino; Firebase; Flutter

## I. P ENDAHULUAN
Manusia bukan merupakan satu-satunya makhluk hidup yang ada di bumi. Manusia hidup di bumi berdamping- an dengan makhluk hidup lainnya, salah satunya ialah tanaman. Keberadaan tanaman sebagai makhluk hidup sangat penting bagi kehidupan manusia. Tanaman me- miliki banyak manfaat yang berguna untuk manusia.
Naskah diterima 16 Juni 2021, diterima setelah revisi 29 Juni 2021, terbit online 25 Februari 2022. Emitor merupakan jurnal Teknik Elektro Universitas Muhammadiyah Surakarta yang terakreditasi Sinta 4 dengan alamat Gedung H Lantai 2 UMS, Jalan Ahmad Yani Tromol Pos 1 Surakarta Indonesia 57165.
Untuk mendapatkan manfaat tersebut, tanaman harus tetap hidup tumbuh. Faktor penunjang tumbuh dan berkembangnya tanaman ialah pada proses penyiram- an [1]. Tanaman bergantung kepada air untuk dapat bertahan hidup [2]. Air dari dalam tanah akan diserap oleh tanaman sesuai jumlah yang dibutuhkan. Apa- bila kandungan air dalam tanah sangat kering dapat menyebabkan tanaman menjadi layu, sedangkan jika kandungan air dalam tanah sangat berlebihan dapat menyebabkan turunnya kadar oksigen dalam tanah [3]. Kedua hal tersebut dapat berakibat buruk pada kondisi tanaman yang dapat menyebabkan tanaman menjadi
doi: 10.23917/emitor.v22i1.14876
mati. Kurang optimalnya perawatan tanaman tersebut dapat disebabkan oleh faktor waktu dan tenaga bagi pemilik tanaman [3]. Fleksibilitas waktu yang dimiliki pemilik tanaman dan sifat dasar manusia yang mudah lupa berdampak pada kelangsungan hidup tanaman.
Proses penyiraman tanaman pada saat ini masih dilakukan secara manual dengan menyalakan pompa air secara manual maupun dengan mengambil air dari sumur yang masih membutuhkan waktu dan tenaga pe- milik tanaman [4]. Cara tersebut sangat tidak efisien karena pemilik tanaman harus mengontrol secara lang- sung di taman atau kebun. Era globalisasi menuntut manusia untuk hidup berdampingan dengan teknologi. Seluruh kegiatan manusia hampir tidak pernah luput dari teknologi [5]. Kemajuan dan perkembangan tek- nologi menciptakan ponsel pintar yang biasa disebut sebagai smartphone . Smarthpone sendiri menggunak- an sistem operasi yang berbeda-beda. Namun sistem operasi yang sedang banyak digunakan adalah sistem operasi milik google yaitu Android [6]. Saat ini ham- pir seluruh dunia menggunakan smartphone untuk ber- aktifitas [4]. Sebelumnya telah dilakukan penelitian oleh [4] dengan membuat Sistem Penyiram Perkebunan Berbasis Android dan Arduino Uno untuk menjalank- an sistem. Peneliti menggunakan Modul GSM untuk mengirimkan SMS sebagai perintah menyalakan dan mematikan pompa ketika sedang berada jauh dari ta- naman. Selain itu [3] melakukan penelitian dengan membuat Alat Penyiram Tanaman Otomatis menggu- nakan Sensor Kelembaban Tanah dengan Notifikasi Whastapp. Pengujian yang dilakukan peneliti terdiri da- ri pengujian sensor soil moisture , pengujian lampu led, pengujian lcd, pengujian relay, pengujian pompa air dan pengujian whatsapp. Hasil pengujian didapatk- an apabila kelembaban tanah yang didapat sensor soil moisture melebihi 6,5 maka pompa air akan menyala secara otomatis. Peneliti akan mendapat notifikasi me- lalui whatsapp setiap proses penyiraman dan mempe- roleh informasi kelembaban tanah melalui lcd. Sistem Penyiram Tanaman Pintar Menggunakan Smartphone dan Mikrokontroler Arduino Berbasis Internet of Thing juga telah dibuat [7]. Sistem tersebut dirancang pe- neliti menggunakan aplikasi smartphone Blynk yang telah terhubung dengan mikrokontroler Arduino uno R3. Dilengkapi dengan pompa air yang telah terhu- bung dengan Relay 5V. Apabila nilai kandungan tanah di atas nilai 900 maka kondisi tanah membutuhkan air sedangkan jika nilai dibawah nilai 400 maka kandung- an tanah sedang lembab. Dengan smartphone yang telah terinstall aplikasi Blynk peneliti dapat menggu- nakan tombol on/off dalam aplikasi tersebut untuk
menyiram tanaman.
Berdasar rumusan masalah dan penelitian sebe- lumnya, penulis akan merancang Aplikasi Pengontrol Sistem Penyiraman Tanaman Otomatis berbasis Ardu- ino dan Android. Sensor moisture soil akan dile- takkan di dalam tanah yang terhubung dengan mikro- kontroller ESP32 berbasis arduino. Hasil pembacaan sensor kelembaban tanah yang diterima oleh mikrokon- troller akan di update ke realtime database meng- gunakan platform Firebase . Kemudian data dari pembacaan sensor tersebut akan dipanggil ke dalam aplikasi android yang telah dirancang menggunakan bahasa pemrograman dart berbasis Flutter. Selain mem- berikan output data dari realtime database , apli- kasi android tersebut juga dapat memberikan input button ke realtime database yang akan dibaca oleh mikrokontroller untuk diteruskan ke relay guna menyalakan dan mematikan pompa air. Perbedaan de- ngan penelitian yang telah dilakukan sebelumnya yaitu sistem penyiram tanaman ini dapat dilakukan pengon- trolan kelembaban tanah dengan menyalakan tombol on/off secara langsung dari aplikasi mobile berbasis android, serta dapat memonitor pergerakan kelembaban tanah secara realtime yang berubah setiap saat. Sistem ini dapat mengontrol area dengan luas 1 m 2 . Dalam area 1 m 2 tersebut terdapat 6 tanaman dalam bentuk pot. Diharapkan sistem ini dapat mempermudah pemilik tanaman untuk mengontrol tanaman dari jarak jauh.

## II. M ETODE P ENELITIAN
Metode pengembangan yang digunakan penulis pa- da sistem ini adalah SDLC (System Development Life Cycle) dengan model waterfall . Metode SDLC dengan model waterfall merupakan model terbaik dimana seti- ap tahap dimulai dan diakhiri sebelum tahap selanjut- nya dikerjakan sehingga setiap tahapan tidak tumpang tindih dalam proses pengerjaannya [8]. Gambaran me- tode System Development Life Cycle [9] dijelaskan pada Gambar 1 sebagai berikut.

## i. Requirements Analysis
Kebutuhan sistem perangkat lunak dan perangkat keras dialokasikan pada tahap perancangan sistem dengan membentuk arsitektur sistem secara keseluruhan [10]. Desain arsitektur sistem dan aplikasi ditampilkan da- lam bentuk Arsitektur Sistem, Sketsa Lahan, Use Case Diagram , dan Activity Diagram untuk memudahkan pemahaman user .
Arsitektur sistem dari pengontrol penyiraman ta- naman ini terdiri dari software dan hardware . Software yang digunakan dalam sistem meliputi software yang terdapat di dalam mikrokontroller, software aplikasi da- lam android, serta server database untuk penyimpanan database . Hardware yang digunakan dalam sistem ini terdiri dari mikrokontroller, sensor moisture soil , relay, dan smartphone android. Gambaran arsitektur sistem dijelaskan dalam Gambar 2.
Gambar 2: Arsitektur Sistem
Sistem ini menggunakan sensor moisture soil FC-28 yang terhubung secara langsung dengan mikro- kontroller dan bekerja dengan membaca data kelembab- an tanah untuk kemudian dikirim ke mikrokontroller. Sensor moisture soil FC-28 memiliki spesifikasi te- gangan input 3,3 Volt atau 5 Volt, tegangan output 0 – 4,2 Volt, arus 35 mA dan value range ADC sebesar 1024 bit [11].
Mikrokontroller yang digunakan adalah ESP32 berbasis Arduino dengan spesifikasi RAM 520K, Pro- sesor Tensilica L108 32 bit, Kecepatan Prosesor Dual 160MHz, tegangan 3,3 Volt, dan dilengkapi WiFi yang tertanam dalam mikrokontroller [12]. Mikrokontroller diprogram dengan bahasa pemrograman C menggunak- an software Arduino IDE [11] untuk memberi perintah kepada sensor dan relay.
Perintah yang didapat relay dari mikrokontroller adalah untuk menyalakan atau mematikan pompa air. Pompa air terhubung dengan relay dan arus listrik se- cara langsung. Relay tersebut memiliki spesifikasi te-
Gambar 3: Implementasi Sketsa Lahan
gangan AC 125 V atau 250 V, arus 10 A, dan daya 1250 W atau 2500 W serta tegangan DC 28 V atau 30 V, arus 10 A, dan daya 128 W atau 300 W [13].
Data hasil pembacaan sensor yang diterima oleh mikrokontroller kemudian akan diteruskan ke Server Firebase . Firebase merupakan platform milik Go- ogle yang memberikan layanan servis dan alat yang dibutuhkan web development maupun mobile develo- pment untuk mengembangkan aplikasi [14]. Data ke- lembaban tanah tersebut disimpan dalam platform firebase yang berupa hosting cloud atau yang biasa disebut firebase realtime database [15].

## Gambar 4: Use case diagram
Selain menyimpan data kelembaban tanah, firebase realtime database juga menyimpan perintah menyalakan dan mematikan pompa air untuk diteruskan ke mikrokontroller. Data kelembaban ta- nah dan perintah on/off pompa air ditampilkan dalam aplikasi android yang telah diprogram menggunakan toolkit flutter . Android, server firebase dan mikrokontroller harus terhubung dengan internet untuk dapat menjalankan sistem dengan baik.
Berdasarkan arsitektur sistem pada Gambar 2, di- buatlah sketsa implementasi lahan yang dapat dilihat pada Gambar 3. Terdapat ruangan berisi mikrokontro- ller yang terhubung dengan arus listrik dan relay di sampingnya. Relay terhubung langsung dengan pompa air untuk mengambil air pada galon di bawahnya pada jarak 1 m, sedangkan sensor moisture soil tertanam
doi: 10.23917/emitor.v22i1.14876
dalam tanaman dengan luas 1 m 2 di luar ruangan. Interaksi antara user dengan sistem dijelaskan da- lam use case diagram . Interaksi yang dijelaskan dalam use case berupa apa yang dilakukan user terhadap sis- tem dan apa yang disampaikan sistem kepada user [16]. Use case diagram sistem dapat dilihat pada Gambar 4. Interaksi user dengan sistem dijelaskan dalam acti- vity diagram yang dapat dilihat pada Gambar 5.
Gambar 5: Activity Diagram
Sistem membaca sensor kelembaban tanah seca- ra berkala tanpa henti ketika mendapat jaringan inter- net. Data pembacaan sensor akan disimpan dalam realtime firebase database . Saat aplikasi da- lam android dijalankan, maka data yang tersimpan da- lam database akan ditampilkan. Selain menampilkan data pembacaan sensor, aplikasi juga dapat membe- ri perintah on/off untuk menyalakan atau mematikan pompa air. Ketika tombol on dipilih, maka perintah akan di input ke database guna diteruskan ke sistem untuk menyalakan pompa air. Begitu pula jika tombol off dipilih, maka perintah sebaliknya yang akan diker- jakan oleh sistem. Desain User Interface dari aplikasi android dapat dilihat pada Gambar 6, yang meliputi grafik data kelembaban tanah dalam satuan waktu, da- ta kelembaban tanah dalam persen, serta button on/off untuk menyalakan atau mematikan pompa.
Setelah melewati tahap analisis kebutuhan dan de- sain, tahap selanjutnya adalah implementasi. Alur kerja dari aplikasi dan sistem secara keseluruhan ditampilkan dalam bentuk flowchart seperti Gambar 7.

## ii. Implementation
Perancangan sistem ini diawali dengan merancang aplikasi yang akan dibuat menggunakan toolkit flutter dan bahasa pemrograman dart dengan software aplikasi Visual Code. Database yang telah dibuat di server firebase memiliki JSON file yang nantinya akan digunakan dalam proses pembuatan aplikasi. File JSON yang telah di download di input ke dalam folder aplikasi yang dibuat. Koneksi dengan firebase
Gambar 6: Desain User Interface
kemudian dibuat dengan fungsi final dbRef = FirebaseDatabase.instance.reference(); . Fungsi tersebut nantinya akan digunakan untuk mengambil data dalam firebase dan meng input data boolean ke firebase .
Menggunakan fungsi yang telah dibuat, da- ta dalam firebase database dipanggil dengan metode stream yang dideklarasikan stream : dbRef.child(\Data").onValue, . Metode stream tidak lepas dari metode builder . Pada metode builder , library yang digunakan ialah library snapshot dengan fungsi untuk mengimplementasikan data dari JSON ke class data . Jika hasil snapshot ditemukan data dan data tersebut tidak error serta value dari data tidak kosong if (snapshot.hasData !snapshot.hasError snapshot.data.snapshot.value != null) ma- ka data akan muncul dengan memanggil metode return .
Dengan fungsi yang sama, dibuatlah metode baru untuk memberikan input ke firebase database . Sebelum membuat metode baru tersebut, digunakan framework setState(() value = !value) ; yang berfungsi mengubah objek yang akan di input antara true atau fal- se . Selanjutnya dibuat metode yang mendeklarasikan fungsi dan framework writeData() dbRef.child (\Water").set(\Status": !value); untuk memberi input ke firebase yang mana akan
diterima oleh mikrokontroller dan perintah \Status":
!value tersebut dikerjakan oleh relay. Aplikasi tersebut kemudian dihubungkan dengan sistem yang dibuat menggunakan software Arduino IDE pada mikrokontroller ESP32.
Sebelumnya mikrokontroller dihubungkan dengan relay dan sensor moisture soil menggunakan kabel jumper . Relay terhubung dengan mikrokontroller pada pin out 27 menggunakan kabel jumper serta terhubung dengan pompa air yang langsung teraliri arus listrik. Sensor moisture soil terhubung dengan mikrokon- troller pada pin out A0 menggunakan kabel jumper . Ketika lahan yang menjadi target memiliki jarak yang cukup jauh, maka kabel jumper pada sensor disambung menggunakan kabel LAN.
Rangkaian hardware yang telah terpasang selanjut- nya diinisialisasi menggunakan software Arduino IDE pada mikrokontroller ESP32. Mikrokontroller diinisia- lisasi dengan jaringan WiFi rumah dan server firebase serta dihubungkan dengan sensor moisture soil dan relay. Inisialisasi dengan jaringan WiFi rumah dilakuk- an dengan memasukkan WiFi SSD dan password WiFi pada software Arduino IDE. Selanjutnya proses inisi- alisasi terhadap server firebase dengan memasukkan host dan auth yang terdapat dalam server firebase pada project masing-masing. Setelah terinisialisasi dengan
WiFi dan firebase , mikrokontroller melalui pin out nya terhubung dengan sensor moisture soil dan relay menggunakan kabel jumper . Dengan kabel jumper relay terhubung dengan mikrokontroller pada pin 27 const int relay = 27; dan sensor moisture soil pada pin A0 const int moisturePin = A0;. Data kelembaban tanah didefinisikan de- ngan int moisturePercentage ; dan selan- jutnya dipanggil untuk diolah menggunakan perhitungan rumus moisture % = ( 100 . 00 − (( analogRead(moisturePin) / 4095 . 00 ) × 100% )) ; . Data hasil perhitungan akan diterusk- an ke server firebase Firebase.setDouble (firebaseData, "/Data/Moisture", moisturePercentage) ; sesuai dengan nama databa- se yang telah dibuat pada project firebase . Apabi- la sensor memberikan data, maka berbanding terbalik dengan relay yang mendapatkan data untuk kemudian dikerjakan. Jika data yang didapat relay berasal dari fi- rebase berupa Firebase.getBool(firebaseData,
"Water/Status") maka akan dibaca relay dengan tipe data Boolean RelayStatus =
firebaseData.boolData() ;. Relay berada pa- da kondisi active low , sehingga jika data true maka relay akan menyala if (RelayStatus == true)digitalWrite(relay,LOW); sedangk- an jika data false maka relay akan mati else digitalWrite(relay,HIGH); . Mikrokontroller yang telah selesai diprogram kemudian dihubungkan dengan arus listrik secara langsung untuk selanjutnya sistem dapat bekerja bersamaan dengan aplikasi yang telah dirilis.

## iii. Testing
Setelah proses pembuatan sistem pada tahap imple- mentasi dilakukan proses pengujian atau testing . Pe- ngujian dilakukan setelah aplikasi selesai dibuat guna menemukan kesalahan dan menilai efisiensi serta kee- fektifan aplikasi. Selain itu pengujian juga dilakukan terhadap sensor dan relay yang digunakan. Jenis pengu- jian yang digunakan pada aplikasi android yaitu black box testing . Pengujian black box testing ber- pusat pada spesifikasi fungsional perangkat lunak [17]. Pengujian pada sensor dan relay dilakukan dengan me- lihat tingkat keberhasilan dan keakuratan perangkat keras terhadap input yang diberikan. Pengujian pa- da perangkat keras dilakukan dengan menghubungkan ESP32 ke laptop. Sensor moisture soil yang terhu- bung dengan ESP32 akan memberikan hasil pembacaan yang akurat dimulai dari angka 0 ketika tidak terkena air, dan akan bertambah perlahan jika terkena air. Ha-
Gambar 8: Tampilan Splash screen
sil tersebut akan terlihat dalam Serial Monitor pada Arduino IDE. Setelah diuji melalui Arduino IDE, sen- sor kemudian diuji dengan firebase apakah nilai hasil pembacaan sensor dapat ditampilkan dalam database . Pengujian pada relay dilakukan melalui firebase database yang telah terhubung dengan ESP32. Dalam firebase diberikan input terhadap relay untuk kemudian dikerjakan. Jika input yang diberikan TRUE maka lampu pada relay akan menyala dan Serial Monitor menampilkan nilai 1. Jika input yang diberikan FALSE maka lampu pada relay akan mati dan dan Serial Monitor menampilkan nilai 0. Selanjutnya relay diuji dalam kondisi telah terhubung dengan pompa air. Pengujian ini dilakukan untuk mengetahui apakah input yang diberikan ke relay berpengaruh terhadap pompa air. Jika input yang diberikan melalui firebase berupa TRUE maka pompa air akan bekerja, dan jika input berupa FALSE maka pompa air akan berhenti bekerja.
Pengujian selanjutnya dilakukan pada aplikasi android dan sistem secara bersamaan. Hal ini dila- kukan untuk mengetahui apakah aplikasi dan sistem dapat berjalan sesuai yang diharapkan. Aplikasi akan menerima hasil pembacaan sensor dari firebase . Nilai akan akurat jika aplikasi menampilkan data realtime yang selalu berubah sesuai dengan yang terdapat dalam firebase . Dalam aplikasi juga
terdapat button yang jika ditekan ON mengartikan pompa air akan bekerja dan jika ditekan OFF pompa air akan berhenti bekerja. Pengujian terakhir yaitu usability testing dengan menggunakan instrumen penelitian SUPR-Q (Standardized Universal
Percentilr Rank Questionnarie) sebagai tolak ukur bagaimana sebuah perangkat lunak dikatakan mudah saat digunakan [18].
iv. Maintenance
Tahap akhir dari metode waterfall adalah maintenance atau pemeliharaan. Pemeliharaan dilakukan pada sis- tem yang sudah jadi untuk mengatasi munculnya bug atau error . Pengecekan terhadap sistem dilakukan se- cara berkala pada pemeliharaan guna menjaga kualitas aplikasi tetap baik.

## III. H ASIL P ENELITIAN DAN D ISKUSI
Bagian ini membahas tentang impelementasi aplikasi dan sistem serta pengujiannya. Saat aplikasi dibuka pertama kali akan muncul splash screen seperti pa- da Gambar 8. Splash screen ini berfungsi sebagai loading sebelum masuk ke halaman utama pada apli- kasi. Tampilan dalam splash screen tersebut berupa logo pohon dengan tulisan “ Plant ” di atasnya. Logo tersebut melambangkan tumbuhan yang berkaitan de- ngan aplikasi ini. Setelah melewati splash screen muncul halaman utama apilkasi seperti pada Gambar 9. Dalam halaman utama aplikasi terdapat data kelembab- an tanah berbentuk grafik dan dalam bentuk progress control dengan label “ Plant Moisture ”. Terdapat 3 warna indikator dalam progress control berupa warna merah, oranye, dan hijau sesuai dengan data yang direspon. Tombol dalam halaman utama aplika- si juga akan berubah ketika ditekan. Jika tombol da- lam keadaan OFF ditekan, maka tombol tersebut akan berubah tampilan menjadi tombol ON dan begitu juga sebaliknya. Implementasi dari sistem adalah terhubung- nya seluruh perangkat keras seperti relay dan sensor moisture soil ke ESP32, relay dengan pompa air serta sensor moisture soil dengan tanaman seperti pada Gambar 10.
Pengujian dilakukan sebanyak 6 tahap. Pada apli- kasi pengujian dilakukan menggunakan black box testing . Pengujian terhadap sensor dan relay masing- masing 2 tahap. Tahap pengujian terakhir yaitu pada ke- seluruhan sistem dan aplikasi. Black box testing digunakan sebagai pengujian pada aplikasi. Berikut hasil dari black box testing pada Tabel 1. Penguji- an tahap 1 dilakukan terhadap sensor moisture soil .
Tabel 1: Black box testing
Kelas Uji Pengujian Input Output Hasil Mulai aplikasi User membuka aplika- si Menekan logo aplikasi Menampilkan splash screen Valid Tampilan awal aplika- si Loading Loading Menampilkan halaman utama Valid Halaman utama apli- kasi Melihat data kelem- bapan tanah Tidak ada input dari user Menampilkan data kelembapan tanah secara berkala dalam bentuk grafik dan indikator persen Valid Halaman utama apli- kasi User menekan tombol pada water controller Menekan tombol ON Tombol men-switch menjadi tombol OFF Valid Halaman utama apli- kasi User menekan tombol pada water controller Menekan tombol OFF Tombol men-switch menjadi tombol ON Valid Keluar dari aplikasi User menutup aplikasi Menekan tombol keluar pada per- angkat mobile Menutup aplikasi Valid Pengujian dilakukan untuk mengetahui apakah sensor berfungsi dengan baik dalam pembacaan kelembaban tanah. Pada tahap ini pengujian sensor dimonitor meng- gunakan software Arduino IDE. Pengujian dilakukan pada 04 Juni 2021 sebanyak 60 kali percobaan dengan pembagian waktu yang berbeda. Hasil dari pengujian sensor menampilkan nilai 40% - 45% pada pukul 07.24 – 07.25 WIB dengan kondisi tanah yang lembab, lalu nilai 55% - 54% pada pukul 12.09 – 12.10 WIB de- ngan kondisi tanah masih lembab, kemudian nilai 53% - 51% pada pukul 16.02 – 16.03 WIB dengan kondisi tanah yang masih tetap lembab, dan nilai 65% - 63% pada pukul 20.15 – 20.16 WIB dengan kondisi tanah
(a) (b) (c)
Gambar 10: Implementasi perangkat keras (a) Hubung- an sensor moisture soil dengan tanaman (b) Hubungan relay dan sensor moisture soil ke ESP32 (c) Hubungan relay dengan pompa air
yang basah. Hasil pembacaan sensor tersebut sesuai de- ngan kondisi tanah dimana jika nilai yang ditampilkan kurang dari 20% maka kondisi tanah kering dan mem- butuhkan air, lalu jika nilai yang ditampilkan antara 20% dan 60% maka kondisi tanah lembab, sedangk- an jika nilai yang ditampilkan lebih dari 60% maka kondisi tanah masih basah.
Setelah dilakukan pengujian menggunakan softwa- re Arduino IDE, sensor diuji dengan membandingkan antara nilai yang muncul pada serial monitor Ardu- ino IDE dan nilai yang muncul pada firebase . Pengu- jian dilakukan secara bersamaan dengan pengujian sen- sor sebelumnya terhadap tanggal, waktu, dan banyak-
doi: 10.23917/emitor.v22i1.14876
nya percobaan. Nilai yang muncul pada firebase selalu sama dengan nilai yang muncul pada serial monitor seperti pada Gambar 11.
Gambar 11: Perbandingan nilai pada firebase dan serial monitor
Selanjutnya pengujian terhadap relay. Pengujian dilakukan dengan memberi input perintah berupa data boolean dari firebase database . Pengujian relay yang pertama dilihat dari respon indikator LED yang terdapat pada relay. Jika input yang diberikan TRUE maka indikator LED akan menyala, dan jika FALSE maka indikator LED akan mati. Pengujian dilakukan pada tanggal 01 Juni 2021 dan 03 Juni 2021 sebanyak 31 kali percobaan dengan rentang waktu yang berbeda. Hasil dari pengujian tersebut menyatakan bahwa ketika input TRUE diberikan maka LED akan menyala dan ketika FALSE maka LED akan mati dengan delay 0 detik atau tanpa delay.
Jika pengujian relay terhadap indikator LED telah selesai, selanjutnya dilakukan pengujian relay terhadap pompa air. Seperti dengan pengujian relay sebelum- nya, input diberikan dari firebase berupa kondisi TRUE dan FALSE . Apabila input TRUE maka pompa air akan menyala dan bekerja. Apabila input FALSE maka pompa air akan mati dan berhenti bekerja. Pe- ngujian dilakukan secara bersamaan dengan pengujian relay sebelumnya terhadap tanggal, waktu, dan banyak- nya percobaan. Hasil pengujian menyatakan bahwa ketika diberi input TRUE maka pompa air menyala dan bekerja, sedangkan jika diberi input FALSE ma- ka pompa air akan mati dan berhenti bekerja dengan delay 0 detik atau tanpa delay.
Tahap selanjutnya adalah menguji sistem dan apli- kasi android secara keseluruhan. Hasil pengujian ini menentukan apakah sistem dan aplikasi android telah bekerja sesuai dengan yang diharapkan. Pengujian di- lakukan pada tanggal 04 Juni 2021 sebanyak 60 kali
percobaan dengan pembagian waktu yang berbeda. Ha- sil dari percobaan tersebut menyatakan bahwa nilai yang ditampilkan pada aplikasi android bernilai sama dengan nilai yang ditampilkan dalam firebase . Keti- ka tombol ON ditombol maka relay akan menyala dan menyiram, sedangkan jika tombol OFF ditombol maka relay akan mati dan berhenti menyiram dengan delay 0 detik atau tanpa delay.
Setelah dilakukan beberapa pengujian sistem, se- lanjutnya dilakukan usability testing dengan me- nyebarkan kuisioner terhadap 30 responden dari mini- mal 20 responden [19]. Dilakukan pada orang-orang di lingkungan tempat pemasangan hardware karena harus menyaksikan hardware dan lahan untuk menilai apakah aplikasi berjalan dengan semestinya. Pengujian aplikasi dilakukan dalam rentang waktu 2 – 3 menit setiap sekali uji pada pengguna android usia 18 – 58 tahun. Dari survey tersebut didapat perolehan hasil perhitungan pada kategori “Baik” sebesar 10% dan ka- tegori “Sangat Baik 90%” dengan proses perhitungan berdasarkan SUPR-Q. Rata-rata presentase yang dipe- roleh dari perhitungan berkeseluruhan ialah 94,44% dengan kategori “Sangat Baik”.

## IV. K ESIMPULAN
Aplikasi pengontrol sistem penyriman tanaman ini te- lah selesai dirancang. Dengan dikombinasikan bersama perangkat keras ESP32 yang saling terhubung dengan sensor moisture soil dan relay. Aplikasi ini memi- liki fitur untuk melihat data kelembaban tanaman seca- ra realtime dari sensor dan tombol untuk mengontrol aktifitas pompa air yang terhubung ke relay. Berda- sarkan hasil pengujian black box fitur dalam aplikasi telah berjalan dengan semestinya. Dari usability testing dihasilkan rata-rata presentase sebesar 94,4% dengan kategori “Sangat Baik” yang artinya para res- ponden setuju aplikasi ini membantu pekerjaan mereka.

## D AFTAR P USTAKA
[1] N. Azzaky dan A. Widiantoro, “Alat penyiram tanaman oto- matis berbasis arduino menggunakan internet of things (iot),” J-Eltrik , vol. 2, no. 2, pp. 86–91, 2020.
[2] K. Sreeram, R. S. Kumar, S. V. Bhagavath, K. Muthumee- nakshi, dan S. Radha, “Smart farming—a prototype for field monitoring and automation in agriculture,” in 2017 Inter- national Conference on Wireless Communications, Signal Processing and Networking (WiSPNET) . IEEE, 2017, pp. 2189–2193.
[3] Y. F. Hidayat, A. H. Hendrawan, dan R. Ritzkal, “Purwa- rupa alat penyiram tanaman otomatis menggunakan sensor kelembaban tanah dengan notifikasi whatsapp,” Prosiding
Semnastek , 2019.
[4] D. Satria, “Desain prototype penyiraman perkebunan berba- sis android,” Jaringan Sistem Informasi Robotik-JSR , vol. 3, no. 2, pp. 250–256, 2019.
[5] R. Ridarmin dan Z. P. Pertiwi, “Prototype penyiram tanaman hias dengan soil moisture sensor berbasis arduino,” Informa- tika , vol. 10, no. 1, pp. 7–11, 2018.
[6] I. Warangkiran, S. T. Kaunang, A. S. Lumenta, dan A. M. Ru- magit, “Perancangan kendali lampu berbasis android,” Jurnal Teknik Elektro Dan Komputer , vol. 3, no. 1, pp. 65–72, 2014.
[7] A. S. Pambudi, S. Andryana, dan A. Gunaryati, “Rancang ba- ngun penyiraman tanaman pintar menggunakan smartphone dan mikrokontroler arduino berbasis internet of thing,” Jurnal Media Informatika Budidarma , vol. 4, no. 2, pp. 250–256, 2020.
[8] A. Alshamrani dan A. Bahattab, “A comparison between three sdlc models waterfall model, spiral model, and incre- mental/iterative model,” International Journal of Computer Science Issues (IJCSI) , vol. 12, no. 1, p. 106, 2015.
[9] W. Hardyanto, A. Purwinarko, F. Sujito, D. Alighiri et al. , “Applying an mvc framework for the system development life cycle with waterfall model extended,” in Journal of Physics:
Conference Series , vol. 824, no. 1. IOP Publishing, 2017, p. 012007.
[10] G. W. Sasmito, “Penerapan metode waterfall pada desain sistem informasi geografis industri kabupaten tegal,” Jurnal Informatika: Jurnal Pengembangan IT , vol. 2, no. 1, pp. 6–12,
2017.
[11] H. Husdi, “monitoring kelembaban tanah pertanian menggu- nakan soil moisture sensor fc-28 dan arduino uno,” ILKOM Jurnal Ilmiah , vol. 10, no. 2, pp. 237–243, 2018.
[12] H. Kusumah dan R. A. Pradana, “Penerapan trainer inter- facing mikrokontroler dan internet of things berbasis esp32 pada mata kuliah interfacing,” Journal Cerita , vol. 5, no. 2, pp. 120–134, 2019.
[13] M. R. Nurkamiden, M. E. Najoan, dan M. D. Putro, “Ran- cang bangun sistem pengendalian perangkat listrik berbasis
web server menggunakan mini pc raspberry pi studi kasus ge- dung fakultas teknik universitas sam ratulangi,” Jurnal Teknik Informatika , vol. 11, no. 1, 2017.
[14] A. Rajappa, A. Upadhyay, A. S. Sabitha, A. Bansal, B. White, dan L. Cottrell, “Implementation of pinger on android mobile devices using firebase,” in 2020 10th International Confe- rence on Cloud Computing, Data Science & Engineering (Confluence) . IEEE, 2020, pp. 698–703.
[15] A. Al-Kababji, L. Shidqi, I. Boukhennoufa, A. Amira, F. Ben- saali, M. S. Gastli, A. Jarouf, W. Aboueata, dan A. Ab- dalla, “Iot-based fall and ecg monitoring system: wireless communication system based firebase realtime database,” in 2019 IEEE SmartWorld, Ubiquitous Intelligence & Com- puting, Advanced & Trusted Computing, Scalable Compu- ting & Communications, Cloud & Big Data Computing, Internet of People and Smart City Innovation (SmartWor- ld/SCALCOM/UIC/ATC/CBDCom/IOP/SCI) . IEEE, 2019, pp. 1480–1485.
[16] M. Muslihudin, W. Renvillia, T. Taufiq, A. Andoyo, dan F. Susanto, “Implementasi aplikasi rumah pintar berbasis android dengan arduino microcontroller,” Jurnal Keteknikan dan Sains (JUTEKS) , vol. 1, no. 1, pp. 23–31, 2018.
[17] T. Hidayat dan M. Muttaqin, “Pengujian sistem informasi pendaftaran dan pembayaran wisuda online menggunakan black box testing dengan metode equivalence partitioning dan boundary value analysis,” Jutis (Jurnal Teknik Informatika) , vol. 6, no. 1, pp. 25–29, 2020.
[18] B. Pramitasari dan N. Nurgiyatna, “Sistem informasi unit kegiatan mahasiswa marching band universitas muhammadi- yah surakarta berbasis web,” Emitor: Jurnal Teknik Elektro , vol. 19, no. 2, pp. 59–65, 2019.
[19] T. Kallio, A. Kaikkonen et al. , “Usability testing of mobile applications: A comparison between laboratory and field testing,” Journal of Usability studies , vol. 1, no. 4-16, pp. 23–28, 2005.