• Tidak ada hasil yang ditemukan

BAB III ANALISA DAN PERANCANGAN APLIKASI

N/A
N/A
Protected

Academic year: 2023

Membagikan "BAB III ANALISA DAN PERANCANGAN APLIKASI"

Copied!
53
0
0

Teks penuh

(1)

BAB III

ANALISA DAN PERANCANGAN APLIKASI

3.1. Analisa Kebutuhan Aplikasi

Analisa kebutuhan aplikasi ini merupakan aktivitas awal dari siklus pengembangan perangkat lunak. Tahapan ini merupakan tahapan pengumpulan kebutuhan dari seluruh elemen sistem perangkat lunak yang akan dibangun.

Kegunaan analisa aplikasi adalah untuk memodelkan permasalahan dunia nyata agar dimengerti. Permasalahan dunia nyata harus dipelajari dan dipahami supaya spesifikasi kebutuhan perangkat lunak dapat diungkapkan. Tujuan aktivitas ini adalah untuk mengetahui ruang lingkup perangkat lunak dan pemakai yang menggunakannya.

Pada penelitian ini penulis menemukan permasalahan yang terjadi, masalah yang dihadapi petani dengan sitem Akuaponik adalah sulitnya pemonitoran serta kontrol perkebunan Akuaponik dengan jumlah yang besar yang harus dilakukan secara manual. Dengan menjelaskan secara umum tentang analisis yang dibutuhkan, penulis menemukan permasalahan dan menguraikan solusi permasalahan dengan mendesain rancang bangun sebuah aplikasi sebagai solusi dari permasalahan yang ada. Software yang digunakan penulis untuk merancang sebuah aplikasi yang akan dibuat adalah Android Studio dan beberapa komponen elektronika berbasis Internet of Things (IoT).

Bahasa yang digunakan dalam perancangan ini adalah pengembangan dari bahasa pemrograman Java. Android Studio menyediakan plugin yaitu Android develover Tools (ADT) dan juga terintegrasi dengan Android Software develover

(2)

Kit (SDK) yang menyediakan berbagai alat pengembangan untuk membuat sebuah aplikasi yang berbasis Android.

3.1.1. Identifikasi Masalah

Pada identifikasi masalah ini bertujuan untuk mengetahui permasalahan apa saja yang terjadi. Menganalisis yang terjadi merupakan awal yang harus dilakukan. Permasalahannya sebagai berikut:

1. Bagaimana cara mengurangi kesalahan dalam pengawasan atau monitoring Akuaponik apabila sudah dalam jumlah yang besar atau skala bisnis.

2. Bagaimana cara melakukan pengawasan keadaan air dan pengendalian pompa air serta pakan ikan secara mobile

3.1.2. Analisa Kebutuhan Aplikasi

Berdasarkan identifikasi masalah yang telah diuraikan, penulis mencoba menganalisa dan merumuskan kebutuhan pengguna sebagai panduan dasar dalam menyelesaikan permasalahan yang ada, adapun kebutuhan-kebutuhan tersebut adalah:

1. Analisa Kebutuhan Software

a. Sistem Operasi Windows 10 64-bit b. Android Studio

c. Android SDK Manager d. Arduino IDE

e. Firebase Real Time Database

(3)

2. Analisa Kebutuhan Hardware a. PC

- Processor Intel Core i3 - RAM sebesar 4GB b. Arduino

- Wemos D1 WiFi ESP8266 - pH Sensor Module V.1.1 - pH sensor probe MSP340

- Temperature probe sensor waterproof DS18B20 - Motor Servo Micro SG90

- Relay module 3. Analisa Kebutuhan Pengguna

a. Hanya dapat digunakan di platform Android

b. Minimal dapat digunkan di Android versi 4.4 Kitkat

Hasil dari analisa kebutuhan aplikasi yang telah dirumuskan oleh penulis, menjadi dasar untuk membangun sebuah aplikasi Android menggunakan Internet of Things (IoT) untuk aplikasi monitoring dan controlling Akuaponik.

3.2. Desain

Tahapan desain ini adalah bagian dalam menterjemahkan kebutuhan- kebutuhan software yang sudah dianalisa, pada sebuah perancangan perangkat lunak yang dapat diperkirakan sebelum melakukan pengkodean atau implementasi program.

(4)

3.2.1. Database

Perancangan basis data digunakan untuk memodelkan aplikasi yang akan dibangun berdasarkan sudut pandang struktur basis datanya (database). Pada penelitian ini, perancangan basis data dilakukan dengan menggunakan NoSQL embedded documents data modeling. Hal ini dilakukan karena Firebase real time database menyimpan data dalam bentuk single JSON document. Proses perancangan basis data ini, menghasilkan sebuah rancangan single document database model yang di tunjukan dalam gambar 3.2 berikut:

Gambar III. 1. Single Document database model

3.2.2. Software Architecture

Untuk pengembangan aplikasi yang berkualitas, dibutuhkan prosedur- prosedur perancangan yang sesuai dengan pengembangan sistem informasi SDLC.

Berikut adalah gambaran dari aplikasi yang menggunakan pemodelan Unified Modelling Language (UML). Proses dan data model pada aplikasi dimodelkan menggunakan Use case Diagram, Activity Diagram, Sequence Diagram, dan Class Diagram.

(5)

A. Use case Diagram

Use Case diagram digunakan untuk menggambarkan sistem dari sudut pandang pengguna sistem tersebut (user) sehingga pembuatan use case diagram lebih dititik beratkan pada fungsionalitas yang ada pada sistem, bukan berdasarkan alur atau urutan kejadian. Sebuah use case diagram mempresentasikan sebuah interaksi antara aktor dengan sistem. Kemampuan aplikasi untuk dapat berinteraksi dengan pengguna digambarkan dalam use case diagram pada gambar III.3.

Gambar III.2. Use Case Pengguna

Dari gambar III.3 dapat dilihat sistem ini terdiri dari 1 aktor dan 6 usecase.

Untuk lebih jelasnya, spesifikasi dari usecase diagram (pengaksesan melalui perangkat android) dapat dilihat pada tabel III.1 berikut.

(6)

Tabel III.1. Spesifikasi Monitor dan Control Akuaponik

Actor Use

Use Case Monitor dan Control Akuaponik

Description User membuat akun dan masuk dengan menggunakan akun tersebut sebelum memilih Fragment Monitor atau Control untuk melakukan monitoring dan controlling Akuaponik Pre Condition Sistem menampilkan menu awal

Post Condition Aktor berhasil membuat akun dan masuk ke aplikasi dengan menggunakan akun tersebut dan melakukan monitoring pH dan suhu air dan kontrol pompa air dan pakan, serta membuat jadwal pakan ikan pada Akuaponik,

B. Activity Diagram

Activity diagram merupakan alur kerja pada setiap usecase. Activity diagram pada analisa ini mencakup activity diagram setiap usecase.

1. Activity Diagram Login

Activity menu awal user memilih aplikasi, sistem memproses lalu menampilkan menu Login. User mengisi akun terdaftar, sistem memproses validasi data masuk akun lalu terjadi keputusan apakah berhasil Login atau tidak, jika tidak, interface tidak akan berpindah ke activity lain, jika berhasil, user akan di arakan ke menu utama.

(7)

Gambar III.3. Activity diagram Login

2. Activity Diagram Register

User yang belum memiliki akun dapat melakukan registrasi pada menu Register dengan mengisikan Email dan password yang kemudian data tersebut tersimpan di Firebase. Setelah berhasil, user diarahkan kembali ke menu Login dan memasukkan Email dan password yang telah dibuat, jika berhasil, sistem menampilkan menu Utama.

(8)

Gambar III.4. Activity diagram Register

3. Activity Diagram Menu Utama

Pada menu utama, terdiri dari 3 Fragment sebagai berikut:

a. Fragment Monitor, merupakan tampilan awal setelah user berhasil Login. Fragment Monitor menampilkan grafik dan angka dari pembacaan sensor pH dan suhu.

(9)

Gambar III.5. Activity diagram Fragment Monitor

b. Fragment Control, terdiri dari tombol yang dapat menghidupkan dan mematikan aliran listrik pada pompa air dan membuka pakan ikan, serta membuat jadwal untuk pemberian pakan ikan.

(10)

Gambar III.6. Activity diagram Fragment Control

c. Fragment About menampilkan deskripsi dari aplikasi yang dibuat.

Gambar III.7. Activity diagram Fragment About

(11)

4. Activity Diagram Logout

Gambar III.8. Activity diagram Logout

Activity Diagram Logout mengeluarkan user dari akses yang kemudian antarmuka menampilkan menu Login. Logout action dapat dipilih di setiap Fragment.

C. Sequence Diagram

Setiap sistem memiliki proses dan setiap proses memiliki dua kriteria yaitu proses sederhana dan kompleks. Sequence Diagram tidak menampilkan seluruh proses pada sistem melainkan hanya garis besarnya saja.

(12)

1. Sequence Diagram Login

Gambar III.9. Sequence Diagram Login

Dari gambar III.9 merupakan Sequence Diagram Login menuju menu utama atau Fragment Monitor, user menginput Email dan password akun yang sudah terdaftar pada form Login, kemudian memproses validasi akun, setelah itu user dapat mengakses menu utama aplikasi yaitu Fragment Monitor.

(13)

2. Sequence Diagram Register

Gambar III.10. Sequence Diagram Register

Gambar III.10 menunjukkan user menginput Email dan password pada form Register untuk membuat akun, kemudian akun tersebut diproses dengan menyimpan data yang diinput ke database, kemudian user diarahkan kembali ke form Login dan masuk dengan akun yang sudah dibuat.

3. Sequence Diagram Control

Fragment Control memiliki 3 fungsi yang memiliki Sequence Diagram yaitu Sequence Diagram Pompa, Sequence Diagram Pakan dan Sequence Diagram Jadwal pakan.

(14)

a. Sequence Diagram Pompa

Gambar III.11. Sequence Diagram Pompa

Gambar III.11 menunjukkan apabila user ingin mengontrol pompa, user memilih tombol pompa, kemudian pada database nilai auto_pompa diubah menjadi “ON”, dan pompa air menyala.

b. Sequence Diagram Pakan

Gambar III.12. Sequence Diagram Pakan

(15)

Pada gambar III.12 apabila user ingin menyalakan pakan ikan, user memilih tombol pakan, kemudian pada database nilai auto_pakan diubah menjadi

“ON”, dan pakan ikan terbuka.

c. Sequence Diagram Jadwal Pakan

Gambar III.13. Sequence Diagram Jadwal Pakan

Jika user ingin membuat jadwal pemberian pakan, user memilih “Buat jadwal” kemudian mengatur jam berapa pakan akan terbuka setiap harinya, kemudian sistem memasukkan data jam sudah di buat di database, dan mengubah nilai auto_pakan menjadi “ON” dan pakan terbuka setiap jam yang sudah ditentukan, seperti yang terlihat pada gambar III.13.

(16)

4. Sequence Diagram About

Gambar III.14. Sequence Diagram About

Dari gambar III.14, user dapat melihat uraian tentang deskripsi aplikasi pada halaman About dengan memilih Fragment About.

5. Sequence Diagram Logout

Gambar III.15. Sequence Diagram Logout

(17)

4. Class Diagram

Gambar III.16. Class Diagram

Class Diagram pada aplikasi ini memiliki 4 tabel yaitu User yang dapat mengakses Sensors, Schedule dan Control, dengan 1 User dapat melihat (get) nilai sensor, menyimpan (save), mengedit (update), menghapus (delete), dan melihat (get) jadwal pakan, serta dapat mengubah (update) dan melihat (get) fungsi kontrol pompa dan pakan ikan, sebagaimana terlihat pada gambar III.16.

3.2.3. User Interface

Desain antarmuka (interface) adalah desain masukan (input) yang akan diguanakan untuk memasukan data ke dalam sistem. Berikut desain interface aplikasi monitoring dan controlling Akuaponik.

(18)

A. Splash Screen

Saat pertama kali user membuka aplikasi, maka akan tampil logo dari aplikasi selama beberapa detik.

Gambar III.17. Splash Screen

B. Menu Login

Setelah splash screen tampil dalam beberapa saat, user langsung diarahkan ke menu Login agar mempermudah user yang sudah memiliki akun. Setelah user menginput Email dan password, dan mengklik Button Masuk, akan berpindah ke activity menu utama atau Fragment Monitor.

(19)

Gambar III.18. Menu Login C. Menu Register

Untuk user yang belum memiliki akun dapat mengklik TextView buat akun pada menu Login, kemudian aplikasi berpindah ke activity menu register. User menginput Email dan password, setelah validasi selesai, sistem mengarahkan kembali pada activity menu Login dan user dapat masuk dengan mengisi kembali Email dan password yang telah dibuat.

Gambar III.19. Menu Register

(20)

D. Menu Utama

Pada menu utama terdiri dari 3 Fragment yaitu:

1. Fragment Monitor

Gambar III.20. Fragment Monitor

Pada Fragment Monitor atau saat Fragment Monitor aktif, terdapat sebuah ImageView atau gambar, kemudian 5 TextView yang 2 diantaranya adalah hasil pembacaan dari sensor suhu dan sensor pH yang dapat berubah-ubah setiap kali ada perubahaan suhu atau pH pada Akuaponik. Pada Action Bar terdapat Logout untuk keluar akun. Logout dapat dilakukan di semua Fragment.

(21)

2. Fragment Control

Gambar III.21. Fragment Control

Saat Fragment Control aktif, terdapat 2 CardView untuk melakukan pengontrolan pompa air dan pakan ikan, 1 TextView, 1 TimePicker untuk mengatur waktu atau jadwal pemberian pakan dan 1 Switch untuk mengaktifkan jadwal yang telah dibuat.

Apabila CardView di klik akan mengubah nilai pada database dan membuka atau menutup pompa atau pakan pada Akuaponik. Pompa atau pakan yang aktif akan ditandain dengan berubahnya warna CardView menjadi warna hijau, sedangkan pompa atau pakan yang tidak aktif ditandai dengan CardView yang berwarna abu-abu.

(22)

3. Fragment About

Gambar III.22. Fragment About

Saat Fragment About aktif, terdapat 2 TextView yang berfungsi untuk menampilkan deskripsi singkat tentang aplikasi.

3.2.4. Desain Mikrokontroler

Desain mikrokontroler yang dibuat sebagai berikut.

A. Rangkaian Mikrokontroler

Gambar III.23. Rangkaian Alat

(23)

Desain rangkaian mikrokontroler dapat dilihat pada gambar III.23 yang dapat diuraikan sebagai berikut:

1. Mikrokontroler Wemos ESP8266 dengan Wifi shield

2. Sensor pH Module sensor pH V.1.1 dan pH Probe MSP340, dihubungkan pada port A0 yang ditandai dengan kabel berwarna hijau dan kabel merah sebagai kabel positif di tegangan 5 volt

3. Relay pada port D3 ditandai dengan kabel berwarna biru, membutuhkan tegangan listrik sebesar 3,3 volt

4. Sensor Suhu DS18B20 Waterproof dihubungkan pada port D4 ditandai dengan kabel berwarna ungu, dan tegangan listrik sebesar 5v dihubungkan melalui Breadboard

5. Motor Servo dihubungkan pada port D2 ditandai dengan kabel berwarna kuning, membutuhkan tegangan sebesar 5 volt

6. Breadboard digunakan untuk menghubungkan komponen elektronika tanpa harus melakukan penyolderan.

(24)

B. Skema Relasi Mikrokontroler dan Aplikasi

Gambar III.24. Skema Mikrokontroler dengan Aplikasi

Gambar III.24 menunjukkan bagaimana mikrokontroler dan aplikasi dapat saling terhubung melalui internet, beserta perubahan data dan aksi dari aplikasi Android yang disimpan pada basis data Firebase yang juga membutuhkan internet.

3.3. Testing

Testing atau pengujian sistem merupakan hal yang paling penting yang bertujuan untuk menemukan kesalahan-kesalahan atau kekurangan-kekurangan

(25)

pada aplikasi yang akan diuji. Pengujian ini bermaksud untuk mengetahui aplikasi maupun alat yang dibuat sesuai dengan kinerjanya dan juga sesuai dengan perancangan aplikasi dan alat.

3.3.1. Black Box Testing pada Aplikasi

Pengujian ini bermaksud untuk mengetahui setiap pilihan menu atau opsi yang berada dalam program sesuai proses yang tepat dan sesuai dengan rancangan yang telah dibuat, sehingga output yang dihasilkan sesuai dengan yang di harapkan dan mewakili setiap langkah yang telah di proses.

Berikut ini pengujian Black Box aplikasi Monitoring dan Controlling Akuaponik yang telah penulis buat:

A. Pengujian Black Box Login

Tabel III.2. Pengujian Black Box Login No Pengujian Test Case Hasil yang

diharapkan

Keterangan 1 Email dan

Password tidak diisi kemudian klik tombol Login

Email: (kosong) Password:

(kosong)

Sistem akan menolak dan menampilkan pesan “Harap isi Email dan password

[√] Berhasil [ ] Tidak Berhasil 2 Mengetikkan

Email, dan password tidak diisi atau kosong

kemudian klik tombol Login

Email:

kaka@gmail.com Password:

(kosong)

Sistem akan menolak dan menampilkan pesan “Password belum diisi”

[√] Berhasil [ ] Tidak Berhasil

3 Mengetikkan Password, dan Email tidak diisi atau kosong

kemudian klik tombol Login

Email: (kosong) Password:

123456

Sistem akan menolak dan menampilkan pesan “Email belum diisi”

[√] Berhasil [ ] Tidak Berhasil

(26)

4 Mengetikkan Email dan/atau password tidak sesuai,

kemudian klik tombol Login

Email:

kakagmail.com Password: 123

Sistem akan menolak dan menampilkan pesan “Email atau Password yang anda masukan salah”

[√] Berhasil [ ] Tidak Berhasil

5 Mengetikkan Email dan password (diisi),

kemudian klik tombol Login

Email:

kaka@gmail.com Password:

123456

Sistem menerima akses Login dan kemudian menampilkan halaman utama

[√] Berhasil [ ] Tidak Berhasil

B. Pengujian Black Box Register

Tabel III.3. Pengujian Black Box Register No Pengujian Test Case Hasil yang

diharapkan

Keterangan 1 Email dan

Password tidak diisi kemudian klik tombol Daftar

Email: (kosong) Password:

(kosong)

Sistem akan menolak dan menampilkan pesan “Harap isi Email dan password

[√] Berhasil [ ] Tidak Berhasil 2 Mengetikkan

Email, dan password tidak diisi atau kosong

kemudian klik tombol Daftar

Email:

nurariska@gmail.

com Password:

(kosong)

Sistem akan menolak dan menampilkan pesan “Password belum diisi”

[√] Berhasil [ ] Tidak Berhasil

3 Mengetikkan Password, dan Email tidak diisi atau kosong

kemudian klik tombol Daftar

Email: (kosong) Password: qwerty

Sistem akan menolak dan menampilkan pesan “Email belum diisi”

[√] Berhasil [ ] Tidak Berhasil

4 Mengetikkan Email dan/atau password tidak sesuai,

kemudian klik tombol Daftar

Email:

nurariskagmai Password: qwe

Sistem akan menolak dan menampilkan pesan “Email atau Password yang anda masukan salah”

[√] Berhasil [ ] Tidak Berhasil

(27)

5 Mengetikkan Email dan password (diisi),

kemudian klik tombol daftar

Email:

nurariska@gmail.

com

Password: qwerty

Sistem menerima akses Login dan kemudian menampilkan Menu Login

[√] Berhasil [ ] Tidak Berhasil

C. Pengujian Black Box Fragment Monitor

Tabel III.4. Pengujian Black Box Fragment Monitor No Pengujian Test Case Hasil yang

diharapkan

Keterangan 1 Aplikasi

menampilkan pembacaan sensor suhu secara realtime

- Derajat suhu air

tampil pada

antarmuka aplikasi dan berubah-ubah sesuai suhu air sebenarnya

[√] Berhasil [ ] Tidak Berhasil 2 Aplikasi

menampilkan pembacaan sensor pH secara realtime

- Ukuran pH air

tampil pada

antarmuka aplikasi dan berubah-ubah sesuai pH air sebenarnya

[√] Berhasil [ ] Tidak Berhasil

D. Pengujian Black Box Fragment Control

Tabel III.5. Pengujian Black Box Fragment Control No Pengujian Test Case Hasil yang

diharapkan

Keterangan 1 Menyalakan

pompa

Mengklik

CardView pompa

Pompa air menyala,

CardView berubah warna menjadi hijau, status pompa menjadi ON, dan muncul toast

“Pompa Dinyalakan”

[√] Berhasil [ ] Tidak Berhasil

2 Mematikan pompa

Mengklik

CardView pompa

Pompa air mati, CardView kembali berwarna menjadi abu-abu, status pompa menjadi

[√] Berhasil [ ] Tidak Berhasil

(28)

OFF, dan muncul toast “Pompa Dimatikan”

3 Membuka tangki pakan

Mengklik

CardView pakan

Tangki pakan terbuka dalam beberapa detik, CardView berubah warna menjadi hijau, status pakan menjadi ON, dan muncul toast

“Pakan Dihidupkan”

[√] Berhasil [ ] Tidak Berhasil

4 Mengatur waktu jadwal pemberian pakan ikan tanpa

mengaktifkan tombol switch

Menentukan waktu pada TimePicker

Muncul satuan waktu yang telah ditentukan

[√] Berhasil [ ] Tidak Berhasil

5 Mengatur waktu jadwal pemberian pakan ikan dan mengaktifkan tombol switch

Menentukan waktu pada TimePicker dan Mengklik switch button

Muncul satuan waktu yang ditentukan, tersimpan di Firebase, muncul toast “Jadwal Dihidupkan”, dan tangki pakan terbuka setiap jam yang telah

ditentukan

[√] Berhasil [ ] Tidak Berhasil

6 Mengaktifkan tombol switch tanpa

mengatur waktu jadwal

Mengklik switch button

Muncul toast

“Jadwal Belum Ditentukan”

[√] Berhasil [ ] Tidak Berhasil

(29)

E. Pengujian Black Box Fragment About

Tabel III.6. Pengujian Black Box Fragment About No Pengujian Test Case Hasil yang

diharapkan

Keterangan 1 Aplikasi

menampilkan deskripsi aplikasi

Memilih

Fragment About

Deskripsi aplikasi tampil pada antarmuka

[√] Berhasil [ ] Tidak Berhasil

F. Pengujian Black Box Logout

Tabel III.7. Pengujian Black Box Logout No Pengujian Test Case Hasil yang

diharapkan

Keterangan 1 Logout Mengklik Logout

pada Action Bar

Keluar dari akses user dan kembali ke Menu Login

[ √] Berhasil [ ] Tidak Berhasil 3.3.2. Black Box Testing pada Alat

Pengujian ini bermaksud untuk mengetahui apakah alat atau sistem mikrokontroler yang dibuat sudah sesuai dengan yang diharapkan. Berikut pengujian yang dilakukan sebanyak 10 kali dengan menggunakan server Firebase:

A. Pengujian Sensor

Tabel III.8. Pengujian Sensor

No Pengujian Hasil yang diharapkan Keterangan 1 Sensor pH Angka pH tampil pada aplikasi [ √] Berhasil

[ ] Tidak Berhasil 2 Sensor suhu Derajat suhu tampil pada aplikasi [ √] Berhasil

[ ] Tidak Berhasil

(30)

B. Pengujian Proses

Tabel III.9. Pengujian Proses

No Pengujian Hasil yang diharapkan Keterangan 1 Daya Seluruh komponen yang memerlukan

daya listrik dapat dihubungkan satu sama lain dan dapat bekerja

sebagaimana mestinya

[ √] Berhasil [ ] Tidak Berhasil 2 Pompa air Pompa air pada akuarium dapat

menyala dan mati yang dapat dikontrol pada aplikasi

[ √] Berhasil [ ] Tidak Berhasil 3 Pakan ikan Tangki pakan ikan pada akuarium

dapat membuka dan menutup yang dapat dikontrol pada aplikasi

[ √] Berhasil [ ] Tidak Berhasil 4 Jadwal Pakan Tangki pakan ikan pada akuarium

dapat membuka dan menutup sesuai jadwal yang telah ditentukan

[ √] Berhasil [ ] Tidak Berhasil

C. Pengujian pengiriman data sensor

Tabel III.10. Pengujian pengiriman data sensor dari Sistem ke Android No Jenis Sensor Jaringan

Smartphone

Waktu respon mikrokontroler

Jumlah tidak ada respon

1 Sensor pH EDGE 5-6 detik 2

3G 3-4 detik 1

4G 2-3 detik 1

2 Sensor suhu EDGE 5-6 detik 2

3G 3-4 detik 1

4G 2-3 detik 1

(31)

D. Pengujian Pengiriman Perintah

Tabel III.11. Pengiriman perintah dari Android ke Sistem No Jenis

Perintah

Jaringan Smartphone

Waktu respon mikrokontroler

Jumlah tidak ada respon 1 Buka-tutup

Pompa air

EDGE 6-7 detik 3

3G 3-4 detik 2

4G 2-3 detik 1

2 Buka-tutup Pakan Ikan

EDGE 6-10 detik 4

3G 5-6 detik 4

4G 3-4 detik 3

3 Jadwal pakan

EDGE 5-6 detik 3

3G 3-4 detik 2

4G 2-3 detik 1

Berdasarkan hasil pengujian blackbox yang telah dilakukan dapat ditarik kesimpulan bahwa pada proses masih memungkinkan terjadi kesalahan, namun secara fungsionalitas sistem sudah dapat menghasilkan output yang diharapkan.

3.4. Implementasi

Aplikasi Monitoring dan Controlling Akuaponik berbasis Internet of Things ini dibuat dengan 2 jenis implementasi, yaitu implementasi dalam segi aplikasi dan implementasi dalam segi alat atau mikrokontroler yang dipasang pada Akuaponik.

3.4.1. Aplikasi

Implementasi antarmuka dibuat berdasarkan aplikasi yang sudah dibangun, berikut adalah beberapa tampilan implementasi antarmuka.

(32)

A. Splash Screen

Gambar III.25. Antarmuka Splash screen

Splash screen menampilkan logo dari aplikasi yang dibuat, muncul ketika user memilih atau mengklik ikon aplikasi, splash screen tampil selama beberapa detik.

(33)

B. Menu Login

Gambar III.26. Antarmuka Menu Login

Menu Login menampilkan TextView nama aplikasi, 2 EditText yang harus diisi dengan form Login berupa Email dan password dengan panjang 6 karakter dan Button Masuk untuk berpindah ke menu utama atau Fragment Monitor. Bagi user yang belum memiliki akun, user dapat memilih clickable TextView “Daftar Sekarang” yang akan mengarahkan aplikasi ke Menu Register.

(34)

C. Menu Register

Gambar III.27. Antarmuka Menu Register

Menu Register memiliki tampilan yang hampir sama dengan menu Login, user mengisi form Register, dan mengklik Button Daftar, dan kembali ke menu Login.

(35)

D. Fragment Monitor

Gambar III.28. Antarmuka Fragment Monitor

Pada Fragment Monitor terdapat sebuah ImageView atau gambar, kemudian 5 TextView yang 2 diantaranya adalah hasil pembacaan dari sensor suhu dan sensor pH yang dapat berubah-ubah setiap kali ada perubahaan suhu atau pH pada Akuaponik. Pada Action Bar terdapat Logout untuk keluar akun. Logout dapat dilakukan di semua Fragment. Apabila user tidak melakukan Logout, antarmuka aplikasi akan langsung menampilkan Fragment Monitor saat user mengklik ikon aplikasi tanpa harus Login kembali.

(36)

E. Fragment Control

Gambar III.29. Antarmuka ketika Status Control OFF

Gambar III.27 menampilkan semua fungsi pada fagment Control mati termasuk jadwal pemberian pakan yang belum ditentukan.

(37)

Gambar III.30. Tampilan database awal pada Firebase

Selain hasil pembacaan sensor suhu dan sensor pH, setiap aksi pada Fragment Control akan mengubah nilai pada Firebase. Pada gambar III.32 terlihat nilai dari

“ph_value” dan “temperature_value” memiliki nilai berupa angka pH dan derajat suhu terakhir, sedangkan “feed_schedule” masih kosong karena jadwal pemberian pakan belum ditentukan. Nilai dari “feed_status” dan “pump_status” masih OFF karena tombol pompa dan pakan belum diklik.

(38)

Gambar III.31. Antarmuka Pompa dinyalakan

Ketika CardView pompa di tekan sekali, tampilan pada antarmuka aplikasi menunjukkan perubahan warna CardView Pompa yang semula berwarna abu-abu menjadi hijau, status pompa menjadi ON dan muncul toast “Pompa Dinyalakan”.

(39)

Gambar III.32. Tampilan Firebase Status Pompa ON

Pada gambar III.30 terdapat perubahan nilai “pump_status” dari OFF menjadi ON setelah tombol pompa ditekan.

(40)

Gambar III.33. Antarmuka Pompa dimatikan

Jika user menekan kembali CardView pompa, maka warna akan kembali menjadi abu-abu, status pompa kembali menjadi OFF dan muncul toast “Pompa Dimatikan” pada tampilan antarmuka aplikasi.

(41)

Gambar III.34. Antarmuka Pakan dinyalakan

Sama seperti saat menghidupkan pompa, jika CardView pakan di tekan sekali, tampilan pada antarmuka aplikasi menunjukkan perubahan warna CardView pakan yang semula berwarna abu-abu menjadi hijau, status pakan menjadi ON dan muncul toast “Pakan Dinyalakan”.

(42)

Gambar III.35. Tampilan Firebase Status Pakan ON

Gambar III.33 menunjukkan adanya perubahan nilai dari “feed_status”

menjadi ON setelah tombol pakan ditekan.

(43)

Gambar III.36. Antarmuka Mengatur Jadwal

Ketika user ingin membuat jadwal pemberian pakan ikan, yang perlu dilakukan adalah scrolling atau memilih jam, menit serta memilih am/pm pada TimePicker yang tersedia.

(44)

Gambar III.37. Antarmuka Jadwal telah dibuat

Waktu yang sudah ditetapkan belum tersimpan pada Firebase, untuk mengaktifkan jadwal, user harus menekan atau mengaktifkan Switch sehingga berubah warna dari abu-abu menjadi biru, maka jadwal telah tersimpan dan muncul toast “Alarm is Set”.

(45)

Gambar III.38. Tampilan Firebase Jadwal dihidupkan

Setelah Switch diaktifkan, otomatis waktu yang telah dipilih sebagai jadwal pakan akan tersimpan di database dan nilai “feed_status” akan menjadi ON pada jam tersebut.

(46)

Gambar III.39. Antarmuka Jadwal dimatikan

Untuk menghentikan atau mematikan jadwal, user hanya perlu menekan atau menonaktifkan Switch, maka akan muncul toast “Alarm is stop”, dan jadwal yang sebelumnya tersimpan di Firebase akan tehapus.

(47)

F. Fragment About

Gambar III.40. Antarmuka Fragment About

Saat Fragment About aktif, dapat dilihat bahwa terdapat deskripsi tentang aplikasi yang dibuat seperti pada gambar III.38.

(48)

Gambar III.41. Antarmuka Log out

Logout dapat dilakukan di Main Activity di semua Fragment dengan menekan option menu dan memilih Logout, kemudian antarmuka dikembalikan ke Menu Login.

(49)

3.4.2. Alat

Gambar III.42. Rangkaian komponen alat

Gambar III.40 menunjukkan seluruh komponen alat yang digunakan dalam aplikasi monitoring dan controlling Akuaponik berbasis IoT yang dihubungkan dengan mikrokontroler dan daya disambungkan dengan Breadboard. Wemos membutuhkan daya dari lisrik secara langsung, dapat menggunakan kabel USB atau kabel power supply.

(50)

Gambar III.43. Sambungan dengan Relay

Gambar III.41 menunjukkan Relay yang tersambung dengan pompa air yang berguna untuk memutus atau menyambungkan dengan aliran listrik, sehingga fungsi ON/OFF pompa pada aplikasi dapat diterapkan. Relay dipasang pada port D3 yang disambungkan dengan daya 3,3V dan pompa langsung dihubungkan dengan listrik.

(51)

Gambar III.44. Sambungan dengan pH module

Gambar III.42, pH module yang disambungkan dengan pH probe dipasang pada port A0, membutuhkan daya sebesar 5V melalu Breadboard.

Gambar III.45. Sambungan dengan Servo dan Sensor Suhu

(52)

Motor servo dipasang pada port D2 membutuhkan daya sebesar 5V dan Sensor suhu waterproof dipasang pada port D4 membutuhkan daya 5V yang dapat dilihat pada gambar III.43.

Gambar III.46. Akuarium tampak samping

Akuarium yang dipasang pompa air, pH probe dan sensor suhu waterproof dapat dilihat pada gambar III.44.

(53)

Gambar III.47. Akuarium tampak atas

Akuarium yang dipasang pompa air, pH probe dan sensor suhu waterproof tampak atas dapat dilihat pada gambar III.45.

Gambar

Gambar III.6. Activity diagram Fragment Control
Gambar III.8. Activity diagram Logout
Gambar III.9. Sequence Diagram Login
Gambar III.10. Sequence Diagram Register
+7

Referensi

Dokumen terkait

Sequence Diagram Diagram Sequence mengambarkan kelakuan objek pada use case dengan mendeskripsikan waktu hidup objek dan pilih menu aplikasi tekan tombol select KSD/tersedia