BAB II DASAR TEORI
2.1 KAJIAN PUSTAKA
2.2.3 NodeMCU EPS32
Pada dasarnya ESP32 merupakan module Wi-Fi murah yang sangat cocok untuk proyek di bidang Internet of Things (IoT). Modul ini dilengkapi dengan GPIO, dengan fitur protokol seperti SPI, I2C, UART, dan banyak lagi. Bagian yang terbaik yaitu mampu berkoneksi dengan jaringan wifi dan dapat berdiri sendiri atau standalone seperti halnya Arduino. ESP32 merupakan penerus dari module ESP8266. Pada ESP32 terdapat inti CPU serta Wi-Fi yang lebih cepat, GPIO yang lebih, dan mendukung Bluetooth 4.2 konsumsi daya yang rendah. Untuk dapat mengatur sinyal PWM pada GPIO mana pun dengan frekuensi yang dikonfigurasi dan siklus yang diatur pada program kode. Pada ESP32 juga mendukung dua saluran DAC 8-bit.
Selain itu, ESP32 berisi 10 GPIO penginderaan kapasitif, yang mendeteksi sentuhan dan dapat digunakan untuk memicu peristiwa, atau mengaktifkan ESP32 dari mode sleep [8] [9].
Gambar 2.2 ESP32
9 2.2.4 Sensor Turbidity
Sensor Turbidity merupakan sensor yang berfungsi mengukur kualitas air dengan mendeteksi tingkat kekeruhannya. Sensor ini mendeteksi partikel tersuspensi dalam air dengan cara mengukur transmitansi dan hamburan cahaya yang berbanding lurus dengan kadar Total Suspended Solids (TTS).
Semakin tinggi kadar TTS, maka semakin tinggi pula tingkat kekeruhan air tersebut. Sensor ini mendukung dua mode output, digital dan analog sehingga dapat dengan mudah diakses melalui Arduino atau mikrokontroler lainnya. Sensor ini dapat diaplikasikan untuk mengukur tingkat kekeruhan air pada sungai, danau, laboraturium, limbah cair, dsb [10].
Gambar 2.3 Sensor Turbidity Tabel 2.1 Pin Atau Port Sensor Turbidity No. Pin / Port Keterangan
1 VCC Dihubungkan ke 5V
2 OUT Dihubungkan ke pin output
3 GND Dihubungan ke pin grounding
2.2.5 Kabel Jumper
Kabel jumper merupakan kabel elektrik yang berfungsi untuk menghubungkan antar komponen yang ada di breadboard tanpa harus memerlukan solder. Umumnya memang kabel jumper sudah dilengkapi dengan pin yang terdapat pada setiap ujungnya. Pin atau konektor yang digunakan untuk menusuk disebut dengan Male Connector, sementara konektor yang ditusuk disebut dengan Female Connector.
10
Berbagai macam kabel jumper yang pertama adalah kabel jumper yang disebut dengan Male to Male. Kabel ini paling direkomendasikan untuk membuat proyek elektronika pada sebuah breadboard. Ketika anda membeli kabel jumper versi ini, maka nantinya anda akan mendapatkan total kabel sebanyak 65 buah. Sementara untuk warna dari kabel itu sendiri bervariasi, yakni ada yang berwarna hitam, kuning, putih, hijau, merah, dan lain sebagainya [11].
Gambar 2.4 Kabel Jumper Male to Male
Berbagai jenis kabel jumper yang kedua adalah Female to Female. Kabel jumper yang satu ini sangat berguna untuk menghubungkan antar module yang memililki header male yang nantinya akan berperan sebagai outputnya. Adapun panjang dari kabel Female to Female kurang lebih 20 cm dimana nantinya anda akan mendapatkan sebanyak kurang lebih 20 buah [11].
Gambar 2.5 Kabel Jumper Female to Female
11
Untuk jenis kabel yang satu ini disebut dengan Male to Female yang memiliki fungsi sebagai penghubung elektronika pada breadboard. Jenis kabel ini memiliki dua header yang berbeda yang menjadikan jenis kabel jumper yang satu ini disebut dengan kabel jumper Male to Female [11].
Gambar 2.6 Kabel Jumper Male to Female
2.2.6 Perangkat Lunak Arduino IDE
Intergrated Development Environment (IDE) merupakan lingkungan terintegrasi, dinamakan lingkungan karena dengan software inilah dilakukannya pemrograman untuk dapat menjalankan fungsi-fungsi yang dibenamkan melalui sintak pemrograman arduino. Arduino menggunakan bahasa pemrograman yang menyerupai bahasa C. Arduino (sketch) sudah dilakukan perubahan untuk memudahkan seseorang pemula dalam melakukan pemrograman dari bahasa aslinya. Mikrokontroler ini memiliki sebuah IC yang dimana telah ditanamkan suatu program bernama bootlader yang berfungsi sebagai penengah antara compiler arduino dengan mikrokontroler. Kode program Arduino Software (IDE) disebut sebagai sketch. Pada intinya perangkat lunak ini berfungsi sebagai pemrograman pada papan arduino [12].
12
Gambar 2.7Tampilan Software Arduino IDE 2.2.7 GoogleFirebase
Google firebase adalah suatu layanan dari google untuk mempermudah pekerja para pengembang-pengembang aplikasi untuk mengembangkan suatu konsep yang dimilikinya berupa aplikasi. FirebaseBaaS (Backend as a Service) merupakan solusi yang ditawarkan oleh google untuk mempermudah pekerjaan Mobile Apps Developer. Dengan adanya firebase, apps developer bisa fokus mengembangkan aplikasi tanpa harus memberikan effort yang besar untuk urusan backend.
Pada konsepnya firebase adalah layanan databaseas a service yang menggunakan konsep secara real time. Firebase ini memberikan layanan kepada pengembang untuk membangun suatu aplikasi yang dibuat memiliki nilai yang tinggi dan dapat meningkatkan kesuksesan dari bisnis yang dijalankan. Firebase dapat berjalan multi platform dan digunakan sebagai database, menyediakan REST API yang dapat diakses langsung melalui hybrid apps tanpa perlu membangun API menggunakan pemrograman berbasis server. Fitur dari firebase sendiri untuk authentication, realtime database, storage dan cloud messaging [13].
13
Gambar 2.8 Tampilan Awal GoogleFirebase 2.2.8 MIT App Invertor
MIT App Inventor adalah aplikasi inovatif yang dikembangan google dan MIT untuk mengenalkan dan mengembangkan pemrograman android dengan mentrasformasikan bahasa pemrograman yang kompleks berbasis teks menjadi berbasis visual (drag and drop) berbentuk blok-blok. MIT app inventor dikembangkan dengan menggunakan engine pemrograman visual yang dikembangkan google yaitu google blockly, MIT app inventor sendiri memiliki pemrograman visual dengan tujuan untuk mempermudah semua orang untuk melakukan pemrograman tanpa harus mengetahui syntax program. App invertor mempermudah pekerjaan pengembang untuk dapat membuat atau menciptakan aplikasi perangkat lunak yang akan dibuat. App inventor designer merupakan aplikasi yang digunakan untuk mendesain tampilan visual (GUI-graohical user interface) dan memilih komponen yang diperlukan. Sedangkan app inventor blocks editor merupakan aplikasi java untuk mendesain perilaku tiap komponen dengan menyusun blok-blok program secara visual [14] [15].
14
Gambar 2.9 Tampilan MIT App Inventor 2.2.9 Smartphone
Smartphone adalah telepon genggam atau telepon seluler pintar yang dilengkapi dengan fitur yang mutakhir dan berkemampuan tinggi layaknya sebuah komputer. Smartphone dapat juga diartikan sebagai sebuah telepon genggam yang bekerja dengan menggunakan perangkat lunak sistem operasi (OS) yang menyediakan hubungan standar dan mendasar bagi pengembang aplikasi. Smartphone merupakan komputer kecil yang mempunyai kemampuan sebuah telepon. Pertumbuhan permintaan akan alat canggih yang mudah dibawa ke mana-mana membuat kemajuan besar dalam pemroses, pengingatan, layar dan sistem operasi yang diluar dari jalur telepon genggam sejak beberapa tahun ini [16].
Gambar 2.10 Smartphone
15 BAB III
PERANCANGAN SISTEM
3.1 ALAT DAN BAHAN
Dalam pembuatan alat ini dibutuhkan beberapa komponen yang dibutuhkan dalam perancangan sistem, alat dan bahan yang digunakan dapat dilihat pada tabel 3.1 dibawah ini:
Tabel 3.1 Alat dan Bahan No Alat dan Bahan Jumlah
Pada perancangan tugas akhir ini dibutuhkan sebuah laptop yaitu digunakan untuk alat dalam mengolah seluruh bahan data yang ada, selain itu laptop digunakan untuk memberikan pengkodingan pada sistem serta sebagai media pengambilan hasil data. Spesifikasi laptop yang digunakan pada tugas akhir ini yaitu prosessor Inter(R) Celeron(R) CPU N2820, kecepatan clock sebesar 2.13 GHz, dan RAM memory sebesar 2GB.
3.1.2 Smartphone
Pada perancangan alat tugas akhir ini smartphone yang digunakan sebagai alat yang mempunyai aplikasi android dalam perancangan sistem pemantuan ini.
3.1.3 NodeMCU ESP32
Pada perancangan alat tugas akhir ini nodemcu ESP32 sebagai mikropengendali dari sistem ini. Pada perangkat ini digunakan sebagai pengendali utama dan digunakan sebagai media pengiriman hasil data
16
kepada website yang telah tersedia. Pengiriman hasil data tersebut menggunakan modul wifi ESP32 yang telah terpasang pada nodemcu.
3.1.4 Sensor Turbidity
Pada perancangan alat tugas akhir ini sensor turbidity atau sensor kekeruhan pada air digunakan dalam sistem untuk mengukur kekeruhan pada air. Pada saat alat mendeteksi adanya air yang kurang jernih, sensor kekeruhan airakan mengirimkan suatu hasil data ke nodemcu ESP32 yang kemudian akan dikirimkan ke app inventor sebagai notifikasi apabila adanya air yang kurang jernih atau keruh.
3.1.5 Software Arduino
Pada perancangan alat tugas akhir ini software Arduino digunakan untuk memprogram sistem kepada masing-masing perangkat yang digunakan. Pada software arduino bahasa yang digunakan yaitu java, bahasa C dan bahasa C++.
3.1.6 Software Firebase
Pada perancangan alat tugas akhir ini software firebase digunakan untuk menyimpan hasil data dari perancangan atau sebagai database, yang nantinya data ini sebagai acuan untuk diteruskan ke aplikasi android.
3.1.7 Software App Inventor
Pada perancangan alat tugas akhir ini software MIT app inventor digunakan untuk membuat implementasi perancangan sistem pemantuan kekeruhan air pada aquarium menggunakan android, dimana data monitoring tersebut diambil dari database pada software firebase. Design view yang tersedia terdiri dari lima komponen dasar yaitu palette, viewer, component, media and properties. Code block pada app inventor digunakan untuk mengatur dan melakukan jalannya program yang dibuat.
3.2 ALUR PENELITIAN
Alur penelitian yang dilakukan dalam tugas akhir ini yaitu menggunakan studi literatur, dimana pada alur untuk melakukan pengumpulan data refrensi dari buku artikel, jurnal, dan situs yang berkaitan dengan materi tugas akhir. Analisis kebutuhan yang digunakan yaitu kebutuhan fungsional dan non fungsional.
17
Maksud dari kebutuhan fungsional dan non fungsional adalah kebutuhan yang diperlukan pada proses perancangan alat. Perancangan perangkat keras ini dilakukan agar mempermudah proses yang nantinya akan dilakukan secara bertahap. Perancangan perangkat lunak dan instalasi program, dimana pada alur ini dilakukan dengan cara membuat flowchart. Dalam flowchart terdapat step by step proses jalannya perancangan alat.
Dalam perancangan perangkat lunak ini digunakan bahasa pemrograman arduino. Kemudian pada pengujian alat, dimana proses ini bertujuan menguji perangkat atau alat yang telah dibuat sudah sesuai dengan rencana dan dapat berfungsi dengan baik. Pengujian yang akan dilakukan adalah menguji setiap bagian blok sistem, jika ada kesalahan akan dilanjutkan dengan menguji sistem secara keseluruhan. Terakhir Pengumpulan data, setelah alat diuji dan berhasil maka dilanjutkan dengan mengambil dan mengumpulkan data yang diperlukan dari hasil pengujian pada perancangan alat yang dibuat.
Mulai
Gambar 3.1Flowchart Alur Penelitian
18
3.2.1 Blok Diagram Sistem Perangkat Keras
Pada alur tahapan ini akan dijelaskan perancangan sistem dimulai dari perancangan perangkat keras, perancangan perangkat lunak dan pemodelan struktur data. Untuk blok diagram sistem pemantuan kekeruhan air pada akuarium dapat dilihat pada Gambar 3.2 di bawah ini.
Gambar 3.2 Blok Diagram Implementasi Perancangan Sistem Monitoring Kekeruhan air pada Akuarium.
Pada Gambar 3.2 blok diagram implementasi perancangan sistem monitoring kekeruhan air pada Aquarium. Nodemcu ESP32 berfungsi sebagai otak sistem atau mikrokontroler untuk menggerakan sistem yang menerima daya dari power supply, kemudian sensor Turbidity berfungsi sebagai input yang mengirim data ke nodemcu. Setelah menerima data, data tersebut akan di proses dan diteruskan menuju output. Output dari sistem yaitu firebase, dan aplikasi pada android. Jika sensor Turbidity mendeteksi suatu adanya ketidak jernihan air maka nodemcu akan mengirim data ke google firebase, dimana pada web ini data akan disimpan secara real time, data tersebut dikirim ke aplikasi android yang dibuat menggunakan MIT app inventor.
3.2.2 Flowchart Alur Sistem
Pada tugas akhir ini akan dibuat flowchart sebagai sistematika dari perancangan alat. Berikut merupakan flowchart alur perangkat lunak pada mikrokontroler dan flowchart alur perangkat lunak pada aplikasi android:
a. Flowchart Alur Pada Mikrokontroler.
19
Gambar 3.3 Flowchar Alur Mikrokontroler
Diagram alur pada Gambar 3.3 menunjukan alur kerja mikrokontroler sesuai dengan perangkat lunak yang akan dirancang. Mikrokontroler akan melakukan tindakan sesuai program yang dimasukan, dimana semua perangkat yang terhubung akan berjalan dan dikendalikan oleh mikrokontroler. Untuk proses pertama yaitu membaca kekeruhan air yang berada di Aquarium kemudian mengkonversi data apakah air tersebut bisa dikatakan jernih atau tidaknya, kemudian sensor Turbidity akan mengecek kekeruhan air tersebut dan pada keluaran android akan menampilkan data.
b. Flowchart Alur Pada Aplikasi Android.
20
Gambar 3.4 Flowchart Alur Android
Pada Gambar 3.4 untuk langkah awal yaitu melakukan proses inisialisasi sistem, kemudian menyalakan wifi dari android. Apabila namawifi yang dimasukan sudah valid maka akan terhubung dengan alat sistem. Setelah wifi sudah terhubung maka data yang ada pada mikrokontroler akan menuju aplikasi yang akan digunakan. Data sensor kekeruhanakan terus dipantau lewat aplikasi di android. Apabila data yang dikirim menyatakan adanya suatu air yang kurang jernih pada Aquarium maka akan menyalakan notifikasi bahwa air pada Aquarium kurang jernih 3.2.3 Perancangan Perangkat Keras
a. Antarmuka Nodemcu dengan Sensor Turbidity
Pada tugas akhir ini menggunakan mikrokontroler nodemcu yang memiliki spesifikasi yang cukup untuk memenuhi kebutuhan memantau Akuarium menggunakan android dengan sistem pengendali nodemcu ESP32. Sensor Turbidity adalah
21
komponen yang berfungsi untuk mengukur kekeruhan air.
Prinsip kerja dari sensor ini, yaitu pengukuran intensitas kekeruhan air pada akuarium. Sensor ini memiliki tegangan input DC 5 Volt.
Gambar 3.5 Koneksi Pin NodeMCU dengan Sensor Turbidity Koneksi pin antara NodeMCU ESP32 dengan sensor Turbidity dapat dilihat penjelasannya pada Tabel 3.2:
Tabel 3.2 Koneksi Antara NodeMCU Dengan Sensor Turbidity
No. Pin Fungsi
1 VIN Catu Daya Sensor 5V
2 VP Pembaca Sensor Turbidity di PortVP
3 GND Grounding
22
DAFTAR PUSTAKA
[1] Wadu Robinson A, Bungin Ada Yustinus S, and Panggalo Indranata U,
"Rancang Bangun Sistem Sirkulasi Air Pada Akuarium atau Bak Ikan Air Tawar," 2017.
[2] Muhammad Rivain and Muhammad Syaif Ramadhan, "Sistem Kontrol Tingkat Kekeruhan Pada Akuarium Menggunakan Arduino Uno," Teknik ITS, 2018.
[3] Muchammad Cholilulloh, Dahnial Syauqy, and Tibyani , "Implementasi Metode Fuzzy Pada Kualitas Air Kolam Bibit Lele Berdasarkan Suhu dan Kekeruhan," Jurnal Pengembangan Teknologi Informasi dan Ilmu Komputer, 2018.
[4] Trimas Manalu, Rozeff Pramana, Eko Prayetno, and Sapta Nugraha,
"Rancang Bangun Sistem Kontrol pH Air pada Palka Ikan," Jurnal Hasil Penelitian dan Industri Terapan, 2018.
[5] M.Irfan Sanni, Prisdon Sinaga, Rahman Noviyanto, and Tesar Triansyah,
"Rancang Bangun Pemberi Makan Dan Pemantau Akuarium," Seminar Nasional Multi Disiplin Ilmu, 2017.
[6] Asmanditya Hibatullah, "SMART AQUARIUM BERBASIS IOT," 2019.
[7] Ma'aruf Shidiq. (2018, Juni) Pengertian Internet of Things. [Online].
http://otomasi.sv.ugm.ac.id/2018/06/02/pengertian-internet-of-things-iot/
[8] Agus Faudin, "Perbedaan Module Wifi ESP8266 vs ESP32," Nyebarilmu, November 2018.
[9] Tedy Tri Saputro. (2017, April) Mengenal NodeMCU. [Online].
https://embeddednesia.com/v1/tutorial-nodemcu-pertemuan-pertama/
[10] Prayoga, "Pengukur Tingkat Kekeruhan Keasaman Dan Suhu Air Menggunakan Mikrokontroler Atmega328p Berbasis Android," Jurnal Informatika, 2018.
[11] Author, "Berbagai Macam Kabel Jumper Yang Harus Anda Ketahui,"
Belajar IOT, Agustus 2018.
[12] Sinau Arduino. (2016, Maret) Mengenal Arduino Software IDE. [Online].
https://www.sinauarduino.com/artikel/mengenal-arduino-software-ide/
[13] Mirza Ilhami, "Pengenalan Google Firebase Untuk Hybrid Mobile Apps Berbasis Cordova," November 2017. [Online].
http://saptaji.com/2016/11/21/iot-dengan-arduino-dan-thingspeak/
23
[14] Kartika Dwintaputri , "App Inventor," Coloring The Global Future, 2017.
[15] Risma, "PENGEMBANGAN ANDROID MOBILE LEARNING MENGGUNAKAN MIT APP INVENTOR SEBAGAI MEDIA
PEMBELAJARAN MATEMATIKA PADA MATERI DASAR-DASAR LOGIKA," 2019.
[16] Max Man. (2017) Pengertian Smartphone. [Online].
https://www.maxmanroe.com/vid/teknologi/mobile-app/pengertian-smartphone.html