sistem data logger peralatan elektronik … · nomor mahasiswa : 135114006 demi ... dari...
TRANSCRIPT
TUGAS AKHIR
SISTEM DATA LOGGER PERALATAN ELEKTRONIK
BERBASIS ANDROID
Diajukan untuk memenuhi salah satu syarat
memperoleh gelar Sarjana Teknik
Program Studi Teknik Elektro
disusun oleh:
FLORUS HERMAN SOMARI
NIM : 135114006
PROGRAM STUDI TEKNIK ELEKTRO
FAKULTAS SAINS DAN TEKNOLOGI
UNIVERSITAS SANATA DHARMA
YOGYAKARTA
2017
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
FINAL PROJECT
DATA LOGGER SYSTEM FOR ELECTRONIC APPLIANCE
BASED ON ANDROID
Presented as partial fulfillment of the requirements
for the degree of Sarjana Teknik
in Electrical Engineering Study Program
By:
FLORUS HERMAN SOMARI
Student’s Number: 135114006
ELECTRICAL ENGINEERING STUDY PROGRAM
FACULTY OF SCIENCE AND TECHNOLOGY
SANATA DHARMA UNIVERSITY
YOGYAKARTA
2017
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
iii
LEMBAR PERSETUJUAN
TUGAS AKHIR
SISTEM DATA LOGGER PERALATAN
ELEKTRONIK BERBASIS ANDROID
(DATA LOGGER SYSTEM FOR ELECTRONIC
APPLIANCE BASED ON ANDROID)
disusun oleh:
FLORUS HERMAN SOMARI
NIM : 135114006
Telah disetujui oleh:
Pembimbing
Djoko Untoro Suwarno, S.Si., M.T. Tanggal: _________________
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
iv
LEMBAR PENGESAHAN
TUGAS AKHIR
SISTEM DATA LOGGER PERALATAN
ELEKTRONIK BERBASIS ANDROID
disusun oleh:
FLORUS HERMAN SOMARI
NIM : 135114006
Telah dipertahankan di depan tim penguji
pada tanggal : ________________
dan dinyatakan memenuhi syarat
Susunan Tim Penguji :
Nama Lengkap Tanda Tangan
Ketua : Ir. Theresia Prima Ari Setiyani, M.T. _____________
Sekretaris : Djoko Untoro Suwarno, S.Si., M.T. _____________
Anggota : Ir. Tjendro, M.Kom. _____________
Yogyakarta, …………………………
Fakultas Sains dan Teknologi
Universitas Sanata Dharma
Dekan,
Sudi Mungkasi, S.Si., M.Math.Sc., Ph.D.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
v
PERNYATAAN KEASLIAN KARYA
Saya menyatakan dengan sesungguhnya bahwa tugas akhir ini tidak memuat karya
atau bagian karya orang lain, kecuali yang telah disebutkan dalam kutipan dan daftar pustaka
sebagaimana layaknya karya tulis ilmiah.
Yogyakarta, ……………………...
Florus Herman Somari
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
vi
HALAMAN PERSEMBAHAN DAN MOTTO HIDUP
Motto:
Ora et Labora, Victory or Nothing!
Skripsi ini ku persembahkan untuk:
Tuhan Yesus Kristus dan Bunda Maria
Apak Silvanus Budang dan Umak Donata
Kakak-kakak, adik ku dan Sahabat-sahabat ku, Intan
Teman-teman Teknik Elektro USD 2013
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
vii
LEMBAR PERNYATAAN PERSETUJUAN PUBLIKASI KARYA
ILMIAH UNTUK KEPENTINGAN AKADEMIS
Yang bertanda tangan di bawah ini, saya mahasiswa Universitas Sanata Dharma:
Nama : Florus Herman Somari
Nomor Mahasiswa : 135114006
Demi pengembangan ilmu pengetahuan, saya memberikan kepada perpustakaan Universitas
Sanata Dharma karya ilmiah saya yang berjudul:
SISTEM DATA LOGGER PERALATAN
ELEKTRONIK BERBASIS ANDROID
Beserta perangkat yang diperlukan (bila ada). Dengan demikian saya memberikan kepada
Perpustakaan Universitas Sanata Dharma hak untuk menyimpan, mengalihkan dalam bentuk
media lain, mengelolanya dalam bentuk pangkalan data, mendistribusikan secara terbatas,
dan mempublikasikanya di internet atau media lain untuk kepentingan akademis tanpa perlu
meminta ijin dari saya maupun memberikan royalti kepada saya selama tetap mencantumkan
nama saya sebagai penulis.
Demikian pernyataan ini yang saya buat dengan sebenarnya.
Yogyakarta, ………………………
Florus Herman Somari
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
viii
INTISARI
Energi listrik dalam kehidupan sehari-hari telah menjadi hal yang pokok pada arus
waktu sekarang. Dari pabrik-pabrik yang membutuhkan energi listrik yang sangat besar
hingga rumah-rumah. Salah satu kebiasaan sederhana yang berhubungan dengan energi
listrik adalah saat menggunakan lampu di malam hari, menyalakan televisi, menggunakan
pompa air, hingga menyalakan kipas angin. Namun, penggunaan energi listrik ini harus
diimbangi dengan kepedulian hemat energi listrik. Salah satu contoh sederhana dalam
menghemat energi listrik adalah mematikan peralatan elektronik jika tidak digunakan.
Mengetahui besarnya energi listrik yang digunakaan juga adalah salah satu sifat kepedulian
dalam penggunaan energi listrik.
Sistem data logger peralatan elektronik berbasis Android adalah salah satu perangkat
keras sekaligus aplikasi yang membantu manusia untuk mengetahui penggunaan energi
listrik. Data logger dilengkapi dengan micro SD Card untuk menyimpan data dari dua
sensor, yaitu sensor arus dan sensor tegangan. Tampilan di LCD adalah data terakhir
pengukuran sensor arus dan tegangan beserta pewaktuan. Aplikasi Android terhubung
dengan subsistem data logger dengan jaringan komunikasi WiFi ESP8266. Pada Aplikasi
akan ditampilkan data sensor arus dan sensor tegangan.
Aplikasi Android dan perangkat keras sistem data logger peralatan elektronik berbasis
Android sudah dapat diimplementasikan pada monitoring penggunaan energi listrik. Sistem
ini sudah diuji dengan penyimpanan data secara rutin dan pengujian jarak yang bervariasi
dari 1 m s.d. 40 meter dalam proses pengiriman. Dari hasil pengujian tersebut menunjukan
bahwa sistem sudah dapat menyimpan data dan proses pengiriman dapat dilaksanakan
maksimal pada jarak koneksi lebih kecil sama dengan 40 meter dengan tingkat keakurasian
sensor arus 92,44%, dan sensor tegangan 97,36%.
Kata kunci: Sistem data logger, Energi listrik, ESP8266, Arduino, NodeMCU, Android
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
ix
ABSTRACT
Electrical energy in daily life has been the principal at the current time now. From
factories that require very large electrical energy even at homes. One of the simple habits
associated with electrical energy is when using the lights at the night, turn on the TV, use a
water pump, and to turn on the fan. However, the use of the electrical energy must be
balanced with concern for energy saving electricity. One of the simple example for saving
electrical energy is to turn off electronic equipment if not in use. Knowing the amount of
electrical energy used is also one of the nature of concern in the use of electrical energy.
Data logger system for electronic appliance based on android is one of the hardware
as well as applications that help humans to know the use of electrical energy. Data logger is
equipped with a micro SD Card to store data from two sensors, i.e current sensors and voltage
sensors. The LCD display is the last data measurement of the current and voltage sensor
along with the timing. The Android applications is connected with a data logger subsystem
with WiFi communication network ESP8266. In the applications will be displayed current
sensor and voltage sensor data.
Android applications and hardware data logger system for electronic appliance based
on android can already be implemented in monitoring the use of electrical energy. This
system has been tested with routine data storage and testing of varying distance of 1-40
meters in the delivery process. From the test results showed that the system can already be
able to store data and the delivery process can be implemented maximum at a smaller
connection distance equal to 40 meters with the accuracy of the current sensor 92.44%, and
the voltage sensor 97.36%.
The keywords : Data logger system, Electrical Energy, ESP8266, Arduino, NodeMCU,
Android.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
x
KATA PENGANTAR
Syukur dan terima kasih kepada Tuhan Yesus Kristus atas segala rahmat dan berkat-
Nya, maka tugas akhir dengan judul “Sistem Data Logger Peralatan Elektronik Berbasis
Android” dapat diselesaikan dengan baik adanya. Selama menulis tugas akhir ini, penulis
menyadari bahwa ada begitu banyak pihak yang dengan cara mereka masing-masing telah
memberikan bantuan, hingga tugas akhir ini selesai. Oleh karena itu, penulis ingin
mengucapkan terima kasih kepada:
1. Bapak Sudi Mungkasi, S.Si., M.Math.Sc., Ph.D., selaku Dekan Fakultas Sains dan
Teknologi, Universitas Sanata Dharma.
2. Bapak Petrus Setyo Prabowo, S.T., M.T., selaku Ketua Program Studi Teknik Elektro,
Universitas Sanata Dharma.
3. Bapak Djoko Untoro Suwarno, S.Si., M.T., selaku Dosen Pembimbing tugas akhir
yang dengan kesabaran membimbing, mengarahkan, memberi wawasan, serta
memberi saran dan kritik yang membantu penulis dalam menyelesaikan tugas akhir
ini.
4. Ibu Ir. Theresia Prima Ari Setiyani, M.T., dan Bapak Ir. Tjendro, M.Kom., selaku
dosen penguji.
5. Semua dosen dan laboran yang selama masa perkuliahan telah memberikan
pengetahuan.
6. Apak Silvanus Budang dan Umak Donata yang aku kasihi, serta kakak-kakak dan adik
ku yang selalu memberikan dukungan secara rohani dan jasmani kepada saya.
7. Keluarga besar dari Yohanes Lansang (Alm.), yang telah memberikan masukan-
masukan dan warna dalam kehidupan masa kecil ku hingga sekarang ini.
8. Intan, yang selalu memberikan motivasi dan selalu mengingatkan dalam
menyelesaikan tugas akhir ini.
9. Teman-teman Teknik Elektro angkatan 2013, atas kebersamaan dan kerjasamanya
selama masa perkuliahan.
10. Semua pihak yang tidak dapat penulis sebutkan satu per satu atas bantuan, bimbingan,
kritik, dan saran dalam menyelesaikan tugas akhir ini.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
xi
Dengan segala kerendahan hati, penulis menyadari bahwa tugas akhir ini masih jauh
dari kata sempurna, oleh karena itu dengan hati terbuka penulis mengharapkan adanya kritik
dan saran demi perbaikan dan pengembangan tugas akhir ini. Akhir kata, semoga tugas akhir
ini dapat bermanfaat bagi semua pihak, terima kasih.
Yogyakarta, ……………………….
Florus Herman Somari
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
xii
DAFTAR ISI
Halaman
HALAMAN SAMPUL (Bahasa Indonesia)…….………………………....…….. i
HALAMAN SAMPUL (Bahasa Inggris)………..………………………………. ii
LEMBAR PERSETUJUAN……………………………………………………... iii
LEMBAR PENGESAHAN……………………………………………………… iv
PERNYATAAN KEASLIAN KARYA………………………………………….. v
HALAMAN PERSEMBAHAN DAN MOTTO HIDUP……………………...... vi
LEMBAR PERNYATAAN PERSETUJUAN PUBLIKASI KARYA ILMIAH
UNTUK KEPENTINGAN AKADEMIS…………………………………….......
vii
INTISARI……………………………………………………………………….... viii
ABSTRACT………………………………………………………………………. ix
KATA PENGANTAR……………………………………………………………. x
DAFTAR ISI……………………………………………………………………… xii
DAFTAR GAMBAR……………………………………………………………... xv
DAFTAR TABEL………………………………………………………………… xvii
BAB I. PENDAHULUAN………………………………………………………... 1
1.1. Latar Belakang………………………………………………………………
1.2. Tujuan dan Manfaat Penelitian………………………………….…………...
1.3. Batasan Masalah……………………………………………………….…….
1.4. Metodologi Penelitian………………………………………………..……...
1
2
2
3
BAB II. DASAR TEORI…………………………………………………………. 5
2.1. Energi Listrik…………………………………………………….…….…….
2.2. Sensor Arus ACS712………………………………………………….….….
2.3. Sensor Tegangan ZMPT101B…………………………………………….…
2.4. Arduino UNO R3……………………………………………………………
2.4.1. Spesifikasi Board Arduino UNO……………………………………...
2.4.2. Pemrograman Arduino IDE…………………………………………...
2.4.3. Komunikasi Serial Arduino…………………………….…….……….
2.5. NodeMCU……………………………………………………….….……….
2.6. Log Data…………………………………….………………………….…....
2.6.1. Kartu Memori …………………………………………………….…...
2.6.2. Real Time Clock (RTC)……………………………………….……….
2.7. Liquid Cell Display (LCD) ..............................................................................
2.8. WiFi ESP8266……………………………………………………………….
2.8.1. Spesifikasi ESP8266…………………………………………………..
2.8.2. Memori ESP8266……………………………………………………...
2.8.3. Konfigurasi Pin WiFi ESP8266EX……………………………………
2.8.4. Protokol IEEE 802.11 b/g/n………...…….......……………………….
2.9. Android Sudio untuk Membuat Aplikasi Android…………………………...
5
6
7
8
10
11
12
14
16
16
17
18
19
20
21
22
23
24
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
xiii
BAB III. RANCANGAN PENELITIAN………………………………………... 26
3.1. Konsep Dasar………………………………………………………………..
3.2. Perancangan Hardware dan Software Data Logger…………………………
3.2.1. Sensor Arus……………………………………………………………
3.2.2. Sensor Tegangan………………………………………………………
3.2.3. Arduino UNO…………………………………………………………
3.2.4. NodeMCU…………………………………………………………….
3.2.5. LCD…………………………………………………………………...
3.3. Perancangan Software Aplikasi Android………………………….….……...
3.4. Perancangan Format Paket Data dan Kartu Memori…………………………
3.5. Perancangan Koneksi WiFi………………………………………………….
3.6. Diagram Alir Sistem………………………………………….……………...
3.6.1. Diagram Alir Subrutin Pengolahan Data Arus dan Tegangan…………
3.6.2. Pengolahan Data Energi……………………………………………….
3.6.3. Diagram Alir Subrutin Penyimpanan Data……………………….……
3.6.4. Diagram Alir Subrutin Pengiriman Data………………………………
A. Diagram Alir Subrutin di Sisi Pengirim…………………………...
B. Diagram Alir Subrutin di Sisi Penerima…………………………..
3.7. Perancangan Box Perangkat Keras…………………………………………..
26
27
27
28
29
30
30
31
31
32
33
33
34
35
36
36
37
37
BAB IV. HASIL DAN PEMBAHASAN………………………………………… 39
4.1. Pengujian Sensor…………………………………………………………….
4.1.1. Multiplexer (CD4066BCN dan HD74LS04P) ………………………..
4.1.2. Sensor Tegangan………………………………………………………
4.1.3. Sensor Arus……………………………………………………………
4.2. Pengujian Data Logger………………………………………….…………...
4.2.1. RTC DS3231……………………………………………………….…
4.2.2. LCD 16x2……………………………………………………………..
4.2.3. Penyimpanan Data Logger…………………………………….……...
4.3. WiFi ESP8266……………………………………………………………….
4.3.1. AT Command…………………………………………………….........
A. ESP8266 Sebagai Access Point (AP)……………………………...
B. ESP8266 Sebagai Client…………………………………………..
4.3.2. Konsumsi Arus………………………………………………………..
4.4. Aplikasi Android…………………………………………………………….
4.5. Hasil Pengujian Sistem Keseluruhan………………………………………...
4.5.1. Pengujian Penyimpanan Data Logger…………………………………
4.5.2. Pengujian Pengiriman Data……………………………………………
A. Jarak Koneksi……………………………………………………...
B. Pengiriman Data ke Aplikasi Android……………………………..
39
39
41
44
45
46
47
48
50
51
52
54
57
58
60
61
62
62
63
BAB V. KESIMPULAN DAN SARAN………………………………………….. 67
5.1. Kesimpulan……………………………………………………………….....
5.2. Saran………………………………………………………………………...
67
67
DAFTAR PUSTAKA…………………………………………………………….. 68
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
xiv
LAMPIRAN………………………………………………………………………. 70
LAMPIRAN I. Manual Book (Langkah Penggunaan) Perangkat…………………..
LAMPIRAN II. AT Command ESP8266 Seri 01 dengan Arduino UNO…………..
LAMPIRAN III. ESP8266 Sebagai Client dalam Mengirim Data ke Web Browser..
LAMPIRAN IV. ESP8266 Sebagai Access Point dalam Mengirim Data ke Web
Browser …………………………………………………………
LAMPIRAN V. NodeMCU ESP8266MOD Sistem Data Logger………………….
LAMPIRAN VI. Aplikasi Android Sistem Data Logger…………………………...
LAMPIRAN VII. Data Pengujian…………...……………………………………..
LAMPIRAN VIII. Data Logger …………………………………………………...
LAMPIRAN IX. Dokumentasi Perangkat………………………………………….
70
71
77
83
87
94
101
115
119
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
xv
DAFTAR GAMBAR
Halaman
Gambar 1.1. Blok Diagram Perancangan……………………………………….…. 4
Gambar 2.1. Rangkaian Sensor Arus ACS712…………………………………..… 7
Gambar 2.2. Sensor Tegangan ZMPT101B………………………………………... 8
Gambar 2.3. Papan Sistem Minimum Mikrokontroler Arduino UNO R3…………. 9
Gambar 2.4. Pin Mapping ATmega328……………………………………………. 11
Gambar 2.5. Tampilan Software IDE Arduino Versi 1.6.10……………………….. 12
Gambar 2.6. Format Frame Komunikasi UART…………………………………... 13
Gambar 2.7. Board NodeMCU…………………………………………………….. 15
Gambar 2.8. Standar Penomoran Terminal SD Card………………………………. 16
Gambar 2.9. Modul Micro SD Card……………………………………………….. 17
Gambar 2.10. Rangkaian RTC DS3231……………………………………………. 17
Gambar 2.11. Rangkaian LCD Karakter 16x2……………………………………... 18
Gambar 2.12. Blok Diagram ESP8266…………………………………………….. 19
Gambar 2.13. Board Modul WiFi ESP8266 Seri 01……………………………….. 20
Gambar 2.14. Penempatan Pin-Pin ESP8266EX…………………………………... 22
Gambar 2.15. Jendela Utama Android Studio dan Bagiannya……………………... 25
Gambar 3.1. Blok Diagram Perancangan Secara Keseluruhan……………………. 26
Gambar 3.2. Bentuk Fisik Sensor Arus ACS712………………………………….. 28
Gambar 3.3. Bentuk Fisik Sensor Tegangan ZMPT101B…………………………. 28
Gambar 3.4. Tampilan Arduino UNO dengan Eagle………………………………. 29
Gambar 3.5. Bentuk Fisik NodeMCU……………………………………………... 30
Gambar 3.6. Bentuk Fisik I2C Module…………………………………………….. 30
Gambar 3.7. Bentuk Fisik Modul LCD 16x2………………………………………. 31
Gambar 3.8. Layout Aplikasi Android Sistem Data Logger……………………….. 31
Gambar 3.9. Wiring Pin Antara Arduino dan ESP8266……………………………. 33
Gambar 3.10. Diagram Alir Utama Sistem Data Logger Berbasis Android……….. 34
Gambar 3.11. Diagram Alir Subrutin Pengolahan Data Arus dan Tegangan………. 35
Gambar 3.12. Diagram Alir Subrutin Pengolahan Data Energi……………………. 35
Gambar 3.13. Diagram Alir Subrutin Penyimpanan Data………………………….. 36
Gambar 3.14. Diagram Alir Subrutin Pengiriman Data di Sisi Pengirim………….. 36
Gambar 3.15. Diagram Alir Subrutin Pengiriman Data di Sisi Penerima………….. 37
Gambar 3.16. Prototipe Beban 5 Lampu (60 Watt) dengan Variabel Tegangan AC
0~240 Volt…………………………………………………………..
37
Gambar 3.17. Perancangan Perangkat Keras Sistem Data Logger………………… 38
Gambar 3.17.(a). Tampak Kanan………………………………………………….. 38
Gambar 3.17.(b). Tampak Kiri…………………………………………………….. 38
Gambar 4.1. Rangkaian Multiplexer untuk Sensor Arus dan Tegangan……………. 40
Gambar 4.2. Pinmode NodeMCU…………………………………………………. 40
Gambar 4.3. Loop Kondisi Pin D0 NodeMCU…………………………………….. 41
Gambar 4.4. Sketch Arduino IDE untuk Pensamplingan Tegangan……………….. 41
Gambar 4.5. Grafik Nilai Urms Terhadap Vrms…………………………………… 43
Gambar 4.6. Sketch Arduino IDE untuk Pensamplingan Arus…………………….. 44
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
xvi
Gambar 4.7. Prototipe Rangkaian Beban Listrik 5 Lampu Pijar (60 Watt)………… 45
Gambar 4.8. Sketch Program Arduino IDE untuk RTC DS3231…………………... 46
Gambar 4.8.(a). Bagian Header……………………………………………………. 46
Gambar 4.8.(b). Bagian Inisialisasi………………………………………………... 46
Gambar 4.9. Loop RTC pada Arduino IDE……………………………………….... 46
Gambar 4.10. Hasil Tampilan RTC DS3231 pada Serial Monitor Arduino IDE….. 47
Gambar 4.11. Sketch Program Arduino IDE untuk LCD…………………………... 47
Gambar 4.12. Looping Print Karakter pada LCD………………………………….. 48
Gambar 4.13. Tampilan LCD 16x2………………………………………………... 48
Gambar 4.14. Sketch Arduino IDE untuk Micro SD Card…………………………. 49
Gambar 4.15. Void loop ( ) dari Micro SD Card…………………………………… 49
Gambar 4.16. Hasil Tampilan Micro SD Card dalam Ekstensi .csv……………….. 50
Gambar 4.17. Wiring ESP8266 Seri 01 dengan Arduino UNO…………………….. 51
Gambar 4.18. Wiring ESP8266 dengan Arduino UNO Serta Dua Masukan Sensor.. 52
Gambar 4.19. Sketch Program Arduio IDE ESP8266 Seri 01……………………… 52
Gambar 4.20. Setup Perintah AT Command ESP8266……………………………... 52
Gambar 4.21. Sketch Program Arduino IDE untuk Rutin Jika Ada Refresh Web
dengan Alamat 192.168.4.1…………………………………………
53
Gambar 4.22. Respon ESP8266 pada Serial Monitor……………………………… 53
Gambar 4.23. Respon pada Serial Monitor Saat Akses Web 192.168.4.1…………. 54
Gambar 4.24. Hasil Pengiriman Data Sensor pada Web Browser 192.168.4.1…….. 54
Gambar 4.25. Pengaturan ESP8266………………………………………………... 55
Gambar 4.26. Tethering Smartphone Sebagai Access Point……………………….. 55
Gambar 4.27. Respon pada Serial Monitor………………………………………… 56
Gambar 4.28. Respon pada Serial Monitor Setelah Refresh Web Browser ……….. 56
Gambar 4.29. Hasil Tampilan Pengiriman Data pada Web Browser ………………. 56
Gambar 4.30. Konsumsi Arus ESP8266 Berdasarkan Datasheet…………………... 57
Gambar 4.31. Aplikasi Android…………………………..………………………... 58
Gambar 4.32. Sketch Android untuk Koneksi ke Internet………………………….. 58
Gambar 4.33. Perangkat Keras Sistem Data Logger………………………………. 60
Gambar 4.33.(a). Perangkat Tampak Kanan……………………………………….. 60
Gambar 4.33.(b). Perangkat Tampak Kiri…………………………………………. 60
Gambar 4.34. Pengukuran Arus dan Tegangan Tiap 1 Detik......………………….. 61
Gambar 4.35. Grafik Penggunaan Energi Versus Waktu………………………….. 62
Gambar 4.36. Kekuatan Sinyal ESP8266 Terhadap Jarak…………………………. 63
Gambar 4.37. Sketch Program Arduino IDE untuk Pengiriman Data ke Aplikasi
Android……………………………………………………………..
63
Gambar 4.38. Hasil Pengiriman Data ke Aplikasi Android……………………….. 64
Gambar 4.39. Ilustrasi Pengujian Pengiriman Data………………………………... 64
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
xvii
DAFTAR TABEL
Halaman
Tabel 2.1. Keterangan Terminal Sensor Arus ACS712……………………………. 7
Tabel 2.2. Keterangan Bagian Arduino UNO R3…………………………………... 10
Tabel 2.3. Spesifikasi Arduino UNO………………………………………………. 11
Tabel 2.4. Deskripsi Pin SPI pada Arduino UNO………………………………….. 14
Tabel 2.5. Keterangan Bagian NodeMCU…………………………………………. 15
Tabel 2.6. Keterangan Terminal Kartu SD………………………………………… 16
Tabel 2.7. Konfigurasi Pin LCD 16x2……………………………………………... 18
Tabel 2.8. Keterangan Bagian Modul WiFi ESP8266 Seri 01……………………... 20
Tabel 2.9. Spesifikasi ESP8266EX………………………………………………... 21
Tabel 2.10. Keterangan Pin-Pin ESP8266EX……………………………………… 22
Tabel 3.1. Pembagian Pin pada Arduino UNO dalam Penelitian………………….. 29
Tabel 3.2. Pembagian Pin-Pin NodeMCU…………………………………………. 30
Tabel 3.3. Format Paket Data Pewaktuan………………………………………….. 32
Tabel 3.4. Format Paket Data Pengukuran…………………………………………. 32
Tabel 3.5. Keterangan Gambar Perangkat Keras Sistem Data Logger…………….. 38
Tabel 4.1. Nilai Sensor Tegangan dan Perolehan Persamaan……………………… 42
Tabel 4.2. Pengukuran Sensor Arus pada 5 Lampu 60 Watt Saat Tegangan 200
Volt……………………………………………………………………...
45
Tabel 4.3. Konsumsi Arus ESP8266……………………………………………….. 57
Tabel 4.4. Pengujian Pengiriman Data Secara Autorefresh pada Aplikasi
Android…………………………………………………………………
59
Tabel 4.5. Hasil Penyimpanan Data Logger……………………………………….. 61
Tabel 4.6. Kekuatan Sinyal AP (ESP8266) Terhadap Jarak……………………….. 62
Tabel 4.7. Hasil Pengiriman Data ke Aplikasi Android……………………………. 64
Tabel 4.8. Status Koneksi Antara Access Point dengan Client…………………….. 65
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
1
BAB I
PENDAHULUAN
1.1. Latar Belakang
Sebagai masyarakat yang hidup di zaman modern dalam era teknologi sekarang,
hendaknya dapat menghitung pemakaian energi listrik secara cerdas. Dapat memprediksi
seberapa besar pemakaian energi listrik di masa yang akan datang dengan cara
membandingkan pemakaian energi listrik yang telah digunakan pada waktu yang lalu dengan
pemakaian energi listrik di waktu sekarang. Mengetahui seberapa besar pemakaian energi
listrik pada peralatan elektronik di rumah adalah salah satu sikap peduli yang sangat
sederhana terhadap pemakaian energi listrik.
Kepedulian terhadap pemakaian energi listrik dari sekarang dapat menghemat energi
listrik hari ini dan di masa yang akan datang. Sebagai contoh kecil dalam menghemat energi
listrik adalah mematikan peralatan elektronik yang tidak digunakan. Kepedulian untuk
mengetahui seberapa besar pemakaian energi listrik pada peralatan elektronik di rumah
masih belum sepenuhnya dilaksanakan. Diperlukan suatu sistem untuk membantu manusia
dalam mengetahui seberapa besar pemakaian energi listrik di rumah dalam sebuah aplikasi
sistem data logger peralatan elektronik berbasis Android.
Sebuah konektivitas WiFi berfungsi untuk menghubungkan Android dengan
subsistem data logger. Koneksi WiFi ini menggunakan modul WiFi ESP8266. Perintah dari
aplikasi di android akan diterima subsistem data logger melalui ESP8266 dan subsistem
data logger akan mengirim data yang diminta aplikasi Android. Komunikasi akan terjadi
apabila subsistem data logger terkoneksi dengan aplikasi Android melalui ESP8266. Proses
pengiriman data dilakukan secara real time, dimana data dari hasil baca sensor tegangan dan
sensor arus akan dikirm ke aplikasi Android.
Penerapan sistem data logger sudah pernah diteliti oleh Luluk Arianto dalam “Sistem
Data Logger Kincir Angin Propeler Berbahan Kayu” [1]. Dalam penelitian tersebut, data
ditampilkan pada sebuah modul LCD dengan karakter 16x2 dan tersimpan pula dalam
sebuah kartu memori sehingga dapat diakses pada waktu tertentu dengan menggunakan
perangkat komputer. Dari penelitian tersebut [1], penulis terdorong untuk mencoba
menerapkannya dalam penelitian ini, yaitu pada “Sistem Data Logger Peralatan Elektronik
berbasis Android”. Data yang didapat dari sensor arus dan sensor tegangan diproses dalam
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
2
Arduino UNO/NodeMCU dan disimpan sebagai data logger dalam sebuah kartu memori
(micro SD Card). Di samping data logger peralatan elektronik yang disimpan dalam kartu
memori, data sensor tegangan dan sensor arus dari peralatan elektronik yang diukur akan
ditampilkan pada modul LCD karakter 16x2 serta dikirim menggunakan modul WiFi
ESP8266 pada aplikasi Android di smartphone.
1.2. Tujuan dan Manfaat Penelitian
Tujuan penelitian ini adalah menghasilkan perangkat sistem data logger dari pemantau
seberapa besar energi yang digunakan dan durasi waktu menyala peralatan elektronik.
Sistem data logger tersebut ditunjang oleh Arduino UNO/NodeMCU, modul RTC (Real
Time Clock) DS3231, slot memori penyimpanan data (micro SD module adapter), modul
I2C untuk penampil karakter pada modul LCD 16x2. Data kemudian dikirim menggunakan
modul WiFi ESP8266 untuk ditampilkan pada aplikasi Android, jika ada perintah dari
aplikasi. Data logger akan disimpan pada kartu memori (micro SD Card) pada subsistem
data logger dengan ekstensi .csv.
Manfaat penelitian ini adalah untuk mengetahui seberapa besar energi listrik dan
durasi menyala peralatan elektronik yang diukur pada hari tertentu. Caranya adalah dengan
deteksi arus (current sensing), on atau off, deteksi tegangan (voltage sensing), mengolah data
(data processing), menyimpan log data (data logger), dan mengirim data menggunakan
modul WiFi ESP8266 (sending), kemudian data tersebut diterima oleh smartphone berbasis
Android dengan koneksi WiFi.
1.3. Batasan Masalah
Batasan masalah diperlukan supaya penelitian ini bisa mengarah pada tujuan dan
menghindari munculnya permasalah yang kompleks. Batasan masalahnya adalah:
1. Menggunakan Arduino UNO/NodeMCU sebagai pengolah data. Arduino UNO ini
menggunakan Integrated Circuit (IC) ATmega328 dan NodeMCU terintegrasi dengan
modul WiFi ESP8266MOD serta LCD karakter 16x2 digunakan sebagai penampil
data pada bagian subsistem data logger peralatan elektronik yang diukur.
2. Menggunakan sensor ACS712 20A sebagai deteksi arus dengan sensitivitas 100 mV/A
[2], dengan range arus yang diukur dari 0A sampai dengan 2A AC. Serta
menggunakan sensor ZMPT101B sebagai sensor tegangan AC dengan range tegangan
yang diukur dari 20 sampai dengan 240 Volt.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
3
3. Peralatan elektronik yang digunakan sebagai objek penelitian adalah 5 lampu pijar 60
Watt/220 Volt.
4. Menggunakan modul RTC DS3231 sebagai IC Real Time Clock (RTC) untuk
menghitung pewaktuan, serta micro SD module adapter untuk penyimpanan data
peralatan elektronik yang diukur.
5. Menggunakan modul WiFi ESP8266 sebagai pengirim data ke Android.
6. Menggunakan smartphone berbasis Android sebagai penampil data peralatan
elektronik yang diukur.
7. Data yang disimpan dalam kartu memori berupa data Tanggal, Jam, Arus, Tegangan,
Durasi menyala, Energi, serta disimpan dalam ekstensi .csv pada kartu memori.
8. Data yang ditampilkan dalam aplikasi Android berupa data sensor tegangan dan sensor
arus.
9. Akurasi data dilakukan dengan perbandingan antara hasil data sensor arus dan sensor
tegangan dengan hasil pembacaan atat ukur yang terstandarisasi (multimeter).
1.4. Metodologi Penelitian
Berdasarkan pada tujuan yang ingin dicapai, metode-metode yang digunakan dalam
penyusunan tugas akhir ini adalah:
1. Studi literatur, yaitu dengan cara mendapatkan data dengan membaca buku-buku,
jurnal-jurnal, dan sumber internet yang terpercaya yang berkaitan dengan
permasalahan yang dibahas dalam tugas akhir ini.
2. Eksperimen, yaitu dengan langsung melakukan beberapa praktek maupun pengujian
terhadap hasil pembuatan alat dalam tugas akhir ini.
3. Perancangan subsistem hardware dan software. Tahap ini bertujuan untuk mencari
bentuk model yang optimal dari sistem yang akan dibuat dengan mempertimbangkan
dari berbagai faktor permasalahan dan kebutuhan yang telah ditentukan serta untuk
memperoleh akurasi yang baik. Pada Gambar 1.1. menunjukan gambar blok diagram
sistem yang akan dirancang.
4. Pembuatan subsistem hardware. Berdasarkan Gambar 1.1. sensor arus dan sensor
tegangan akan membaca arus dan tegangan saat pearlatan elektronik dalam keadaan
menyala untuk kemudian diolah oleh mikrokontroler dan disimpan dalam kartu
memori. Modul WiFi ESP8266 digunakan untuk mengirim data pada tampilan aplikasi
Android.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
4
Gambar 1.1. Blok Diagram Perancangan
5. Proses pengambilan data. Pengambilan data dilakukan setelah alat sistem data logger
peralatan elektronik ini jadi yaitu dari saat menyimpan data pada data logger dan
mengirim data pada aplikasi Android, dan juga pengambilan data berdasarkan kedua
sensor, arus dan tegangan. Pengkalibrasian alat dengan cara membandingkan hasil dari
alat ini dengan alat ukur standar (multimeter).
6. Analisis dan penyimpulan hasil percobaan. Analisis dilakukan dengan mengecek
perform alat (apakah kartu memori sudah bisa menyimpan data secara benar dan
apakah aplikasi android sudah bisa menerima data). Penyimpulan data dapat dilakukan
setelah melakukan analisis.
Sensor Tegangan dan Arus
Kartu Memori dan RTC
LCD
Arduino UNO /
NodeMCU ESP8266 Android
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
5
BAB II
DASAR TEORI
2.1. Energi Listrik
Dalam alat ukur amperemeter atau voltmeter, yang diukur dari sebuah beban adalah
nilai efektifnya. Misalnya, tegangan yang tersedia pada stop kontak rumah terukur 211 Volt.
Nilai 211 Volt ini jelas bukan merujuk ke tegangan sesaat, karena tegangan sesaat tidak
bernilai konstan. Nilai 211 Volt juga bukan merupakan amplitudo gelombang tegangan.
Nilai 211 Volt tidak pula dikatakan nilai rata-rata, karena nilai rata-rata gelombang sinus
adalah nol. Nilai 211 Volt dapat dikatakan sebagai magnitudo rata-rata untuk setengah siklus
positif, atau negatif dari gelombang tegangan. Tegangan efektif dapat dikatakan untuk
menyatakan 211 Volt ini. Nilai efektif adalah ukuran yang menyatakan seberapa efektifnya
sebuah sumber tegangan memberikan daya ke sebuah beban resistif. Nilai efektif diperoleh
dengan pertama-tama mengambil kuadrat dari fungsi waktu, kemudian menghitung nilai
rata-rata dari fungsi yang telah dikuadratkan ini untuk satu periode, dan akhirnya mengambil
akar kuadrat dari nilai rata-rata fungsi terkuadratkan. Dalam bahasa yang lebih pendek,
proses penghitungan sebuah nilai efektif mengharuskan kita mengambil akar (root) dari nilai
rata-rata (mean) dari sebuah nilai kuadrat (square). Oleh sebab itu, nilai efektif seringkali
disebut juga sebagai nilai root-mean-square (rms) [3].
Fungsi periodik terpenting di dalam analisis rangkaian listrik adalah gelombang
sinusoidal. Bila diasumsikan sebuah arus sinusoid ditunjukan pada persamaan (2.1)
𝑖(𝑡) = 𝐼𝑚 cos(𝜔𝑡 + ∅)
yang memiliki periode
𝑇 = 2𝜋
𝜔
dan kemudian masukan persamaan arus ini kedalam persamaan berikut, untuk mendapatkan
nilai efektif arus ditunjukan pada persamaan (2.3)
𝐼𝑒𝑓𝑓 = √1
𝑇∫ 𝐼𝑚
2 cos2(𝜔𝑡 + ∅)𝑑𝑡𝑇
0
(2.1)
(2.2)
(2.3)
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
6
= 𝐼𝑚√𝜔
2𝜋∫ [
1
2+
1
2cos(2𝜔𝑡 + ∅) ] 𝑑𝑡
2𝜋/𝜔
0
= 𝐼𝑚√𝜔
4𝜋 [𝑡]0
2𝜋/𝜔
= 𝐼𝑚
√2
untuk tegangan efektif
𝑉𝑒𝑓𝑓 = 𝑉𝑚
√2
Dari persamaan di atas, maka dapat dicari nilai daya, lebih tepatnya daya semu.
Apabila tegangan yang diberikan dan arus tanggapan yang dihasilkan adalah besaran-
besaran DC, maka daya rata-rata yang dipasok ke rangkaian dapat diketahui sebagai sekadar
hasil perkalian antara nilai arus dan tegangan ini. Dengan menerapkan teknik DC ini ke
rangkaian sama dengan nilai efektif tegangan dikalikan dengan nilai efektif arus. Hasil kali
antara nilai-nilai efektif tegangan dan arus ini didefinisikan sebagai daya semu (apparent
power) ditunjukan pada persamaan (2.6) [3].
𝑃 = 𝑉𝑒𝑓𝑓𝐼𝑒𝑓𝑓 cos(𝜃 − ∅)
Daya semu dapat dihitung dengan persamaan (2.7)
|𝑆| = 𝑉𝑒𝑓𝑓𝐼𝑒𝑓𝑓
𝑃 = |𝑆| ; ℎ𝑎𝑛𝑦𝑎 𝑢𝑛𝑡𝑢𝑘 𝑏𝑒𝑏𝑎𝑛 − 𝑏𝑒𝑏𝑎𝑛 𝑦𝑎𝑛𝑔 𝑚𝑢𝑟𝑛𝑖 𝑟𝑒𝑠𝑖𝑠𝑡𝑖𝑓 [3]
Efisiensi proses pemindahan daya listrik terkait langsung dengan biaya energi listrik,
yang pada gilirannya menjelma menjadi biaya yang harus dibayar oleh konsumen. Energi
listrik ini secara matematis dapat dihitung dengan persamaan (2.8)
𝑊 = 𝑃. ∆𝑡
dimana:
W = energi listrik (j)
P = daya (Watt)
∆t = selang waktu (s)
2.2. Sensor Arus ACS712
Sensor yang digunakan dalam mendeteksi arus peralatan elektronik dalam penelitian
ini menggunakan sensor arus ACS712. Sensor ini dapat mendeteksi baik itu arus bolak balik
(2.4)
(2.5)
(2.6)
(2.7)
(2.8)
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
7
(arus AC) dan arus searah (arus DC). ACS712 adalah sensor arus yang bekerja dengan
konsep hall effect. Konsep hall effect bekerja dengan mendeteksi adanya perubahan medan
magnet yang terjadi dikarenakan perpindahan muatan elektron pada suatu penghantar. Pada
Gambar 2.1. menunjukan rangkaian sensor arus ACS712, dengan pin-pin sensor arus ini
dapat dilihat pada Tabel 2.1.
Gambar 2.1. Rangkaian Sensor Arus ACS712 [2]
Sensor arus ACS712 bekerja pada tegangan catu tipikal VCC +5 Volt. Memiliki
sensitivitas sebesar 100 mV/A, dengan kemampuan pengukuran arus sebesar -20 A s.d. +20
A. Setiap kenaikan arus 1 A maka keluaran sensor arus ACS712 20A bertambah sebesar 100
mV [2].
Tabel 2.1. Keterangan Terminal Sensor Arus ACS712 [2]
No Nama Fungsi
1 dan 2 IP+ Terminal untuk arus yang akan diukur; internal satu
3 dan 4 IP- Terminal untuk arus yang akan diukur; internal satu
5 GND Terminal ground
6 FILTER Terminal untuk kapasitor eksternal pengaturan
bandwidth
7 VIOUT Terminal sinyal output analog
8 VCC Terminal catu daya
2.3. Sensor Tegangan ZMPT101B
Sensor tegangan yang digunakan dalam penelitian ini adalah sensor tegangan
ZMPT101B. Didalam sensor tegangan ZMPT101B ini sudah terdapat micro voltage
transformer dan memiliki kelebihan dalam pengukuran yang akurat dan bentuk fisik yang
berukuran kecil. Pada Gambar 2.2. menunjukan rangkaian sensor tegangan ZMPT101B
dimana U1 tegangan yang diukur dan U2 adalah keluaran dari sensor.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
8
Gambar 2.2. Sensor Tegangan ZMPT101B [4] [5]
Sensor ini dapat digunakan untuk mengukur tegangan AC dengan maksimum
tegangan 1000 VAC. Prinsip kerja dari sensor ini adalah dengan cara mengambil satu kali
pensamplingan, yaitu [4]:
- Untuk bipolar (satu kali looping pensamplingan dilakukan dengan membaca nilai
kedua kutub tegangan AC), kutub negatif (-) dan kutub positif (+), dengan persamaan:
𝑈𝑚𝑎𝑥 = 𝑝𝑒𝑎𝑘 𝑣𝑜𝑙𝑡𝑎𝑔𝑒
√2
- Untuk unipolar (satu kali looping pensamplingan dilakukan dengan membaca satu
kutub tegangan AC), kutup positif (+), dengan persamaan:
𝑈𝑚𝑎𝑥 = 𝑝𝑒𝑎𝑘 𝑣𝑜𝑙𝑡𝑎𝑔𝑒
2√2
Dimana Umax adalah nilai tegangan maksimum yang akan terukur pada mikrokontroler
dengan asumsi untuk nilai tegangan referensi 5 Volt dan 0~3,3 Volt, sebagai berikut [4].
- Untuk tegangan referensi 5 Volt, tegangan maksimum pada transformer:
𝑈𝑚𝑎𝑥 =5 𝑉𝑜𝑙𝑡
√2= 3,52 𝑉𝑜𝑙𝑡
- Untuk tegangan referensi 0~3,3 Volt, tegangan maksimum pada transformer:
𝑈𝑚𝑎𝑥 =3,3 𝑉𝑜𝑙𝑡
2√2= 1,16 𝑉𝑜𝑙𝑡
2.4. Arduino UNO R3
Arduino adalah sebuah board mikrokontroler yang bersifat open source, dimana
desain skematik dan PCB bersifat open source, sehingga dapat digunakan maupun
melakukan modifikasi [6]. Board Arduino menggunakan Chip/Integrated Circuit (IC)
mikrokontroler Atmel AVR, misalnya Arduino UNO menggunakan IC ATmega328,
Arduino MEGA menggunakan IC Atmega2560, Arduino LILYPAD menggunakan IC
Atmega168, Arduino NANO menggunakan IC Atmega168 atau bisa juga menggunakan IC
(2.9)
(2.10)
(2.11)
(2.12)
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
9
Atmega328. Nama Arduino tidak hanya dipakai sebagai penamaan board rangkaiannya saja,
tetapi juga digunakan untuk menamai software dan bahasa pemrogramannya.
Software untuk membuat, mengkompilasi, dan meng-upload program Arduino yaitu
Arduino IDE atau disebut juga Arduino software yang juga bersifat open source. Program
mikrokontroler yang digunakan memiliki kemiripan syntax dengan bahasa pemrograman C.
Karena bersifat open source (terbuka bagi siapa saja), maka skema software Arduino dapat
diunduh oleh siapa saja untuk digunakan dan dikembangkan.
Kelebihan-kelebihan dari board arduino diantaranya adalah [1] [6]:
1. Tidak perlu perangkat chip programmer karena di dalamnya memiliki bootloader
yang akan menangani program yang di-upload dari komputer.
2. Bahasa pemrogramannya relatif mudah (memiliki kemiripan syntax dengan bahasa
pemrograman C), dan software arduino mudah dioperasikan karena berbentuk
Graphical User Interface (GUI), Integrated Development Environment (IDE),
memiliki library yang cukup lengkap serta gratis dan open source.
3. Komunikasi serial dan komunikasi untuk upload program menggunakan jalur yang
sama, yaitu melalui jalur USB.
4. Integrated Development Environment (IDE) arduino merupakan multiplatform yang
dapat dijalankan diberbagai sistem Operating System (OS), seperti Windows,
Macintosh, dan Linux.
5. Memiliki begitu banyak pengguna dan komunitas di internet yang dapat membantu
setiap kesulitan dalam pengoperasian arduino baik hardware maupun software.
Gambar 2.3. menunjukan bentuk fisik Arduino UNO bersama dengan bagian-bagian
beserta pin yang ada pada board Arduino UNO. Penjelasan bagian-bagian Arduino dapat
dilihat pada Tabel 2.2.
Gambar 2.3. Papan Sistem Minimum Mikrokontroler Arduino UNO R3
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
10
Tabel 2.2. Keterangan Bagian Arduino UNO R3
No Keterangan
1 Pin SCL
2 Pin SDA
3 Referensi tegangan analog
4 Pin ground digital
5 I/O analog dan digital pin 2-13, pin PWM (3,5,6,9,10, dan 11)
6 Keluaran serial (Tx) pin 1
7 Masukan serial (Rx) pin 0
8 Tombol reset
9 Masukan USB
10 Pin ICSP
11 Chip mikrokontroler ATmega328
12 Catu daya eksternal (power jack)
13 Adaptasi tegangan pada papan shield
14 Pin reset
15 Pin 3,3 V
16 Pin 5 V
17 Pin ground
18 Tegangan masukan
19 Masukan analog (A0-A5)
2.4.1. Spesifikasi Board Arduino UNO
Arduino UNO adalah board mikrokontroler berbasis pada ATmega328. Arduino UNO
memiliki 14 pin input/output digital (diantaranya 6 pin dapat digunakan sebagai output
PWM), memiliki 6 input analog, dengan 16 MHz crystal oscillator, sebuah koneksi USB,
power jack, soket In-Circuit System Programming (ICSP header), dan tombol reset.
Spesifikasi Arduino UNO dapat dilihat pada Tabel 2.3.
Papan Arduino UNO berbasis mikrokontroler ATmega328 keluarga AVR.
Mikrokontroler ini merupakan bagian utama dalam board Arduino UNO, sehingga
pengguna dapat menerapkan program kontrol untuk menjalankan perintah masukan dan
keluaran board Arduino UNO. Pengguna juga dapat menggantikan mikrokontroler
ATmega328 dengan mikrokontroler ATmega8/ATmega168 sesuai dengan kebutuhan
pengguna. Pin mapping ATmega328 dapat dilihat pada Gambar 2.4.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
11
Tabel 2.3. Spesifikasi Arduino UNO [7]
Mikrokontroler ATmega328
Tegangan kerja 5 Volt
Tegangan input
(direkomendasikan)
7-12 V
Tegangan input (batas) 6-20 V
Pin digital I/O 14 (6 diantaranya output PWM)
Pin digital I/O PWM 6
Pin input analog 6
Arus DC setiap pin I/O 20 Ma
Arus DC untuk pin 3,3 V 50 Ma
Flash memory 32 KB (ATmega328) 0,5 KB digunakan untuk
bootloader
SRAM 2 KB (ATmega328)
EEPROM 1 KB (ATmega328)
Clock speed 16 MHz
LED_BUILTIN 13
Panjang 68,6 mm
Lebar 53,4 mm
Berat 25 g
Gambar 2.4. Pin Mapping ATmega328 [7]
2.4.2. Pemrograman Arduino IDE
Lingkungan pemrograman Arduino disebut Integrated Environment Development
(IDE). Software IDE Arduino adalah pengendali mikro single-board yang bersifat open
source, diturunkan dari platform wiring. Dirancang untuk memudahkan penggunaan
elektronik dalam berbagai bidang, khususnya pengguna yang baru belajar mikrokontroler
dengan software development. Hardware-nya menggunakan processor Atmel AVR dan
software-nya memiliki bahasa pemrograman C++ yang sederhana dan fungsi-fungsinya
yang lengkap, sehingga Arduino mudah dipelajari oleh pemula [6].
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
12
Software IDE Arduino dilengkapi dengan library C/C++, membuat operasi
input/output jauh lebih mudah dipahami. Pengguna hanya perlu mendefinisikan dua fungsi
untuk membuat program dapat dijalankan ketika dieksekusi pada board Arduino UNO.
Fungsi tersebut, yaitu [1] [6]:
1. Setup( ), fungsi berjalan satu kali pada awal dari sebuah program yang dapat
menginisialisasi masukan dan keluaran pada board Arduino UNO.
2. Loop( ), fungsi yang dieksekusi berulangkali sampai board Arduino UNO dalam
kondisi di non-aktifkan.
Tampilan awal software IDE Arduino versi 1.6.10 ketika pertama kali dibuka dapat
dilihat pada Gambar 2.5.
Gambar 2.5. Tampilan Software IDE Arduino Versi 1.6.10
2.4.3. Komunikasi Serial Arduino
Komunikasi serial pada Arduino UNO pada dasarnya terletak pada pin serial 0 (Rx)
dan pin serial 1(Tx) pada board Arduino UNO. Komunikasi yang disediakan adalah
Universal Asynchronous Receiver/Transmitter (UART) TTL (5 Volt). Board Arduino UNO
dilengkapi dengan mikrokontroler ATmega16U2 yang memungkinkan komunikasi serial
melalui USB dan muncul sebagai COM Port Virtual (pada komputer), sehingga board
Arduino UNO dapat berinteraksi dengan perangkat komputer. Firmware ATmega16U2
tidak membutuhkan driver eksternal karena menggunakan driver standar USB COM. Fitur
yang tersedia pada IDE Arduino berupa serial monitor memungkinkan data tekstual
sederhana dikirim dari dan ke board Arduino UNO. Mikrokontroler ATmega328P pada
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
13
board Arduino UNO mendukung 12C Two Wire Interface (TWI) menggunakan berkas
library Wire dan komunikasi Serial Pheripheral Interface (SPI) menggunakan berkas
library SPI [7].
Universal Asynchronous Receiver/Transmitter (UART) adalah metode komunikasi
serial yang sederhana dalam rangkaian embedded. Komunikasi UART dalam mode full-
duplex menggunakan satu pin Tx dan satu pin Rx. Half-duplex menggunakan satu pin
bersama untuk Tx dan Rx (biasa disebut single-wire UART atau 1-Wire Comm). Format
frame-nya dapat dilihat pada Gambar 2.6.
Gambar 2.6. Format Frame Komunikasi UART [8]
Keterangan:
St : Bit start (selalu low)
(n) : Data bit (0 sampai 8)
P : Bit parity (ganjil atau genap)
Sp : Bit stop (selalu high)
IDLE : Tidak ada transfer pada jalur komunikasi (RxD dan TxD), kondisi IDLE selalu high
SPI adalah salah satu protokol komunikasi sinkron serial yang popular dalam
rangkaian embedded. Komunikasi SPI melibatkan 1 atau lebih master dan satu atau lebih
slave yang menggunakan 1 bus bersama. Full-duplex atau 4-wire SPI menggunakan 2 jalur
data, jalur clock bersama, dan 1 jalur slave select. Half-duplex atau 3-wire SPI menggunakan
1 jalur data bersama. Pada Arduino protokol komunikasi SPI pada pin 10, 11, 12, dan 13.
Deskripsi pin SPI pada Arduino UNO dapat dilihat pada Tabel 2.4.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
14
Tabel 2.4. Deskripsi Pin SPI pada Arduino UNO
Pin Deskripsi
10 (SS) Slave Select, ini digunakan untuk memilih slave mana yang akan diajak
berkomunikasi oleh master (dengan asumsi lebih dari 1 slave). Slave akan
menerima data jika pin SS aktif low.
11 (MOSI) Master Out, Slave In, ini adalah sinyal output dari master yang merupakan
shift register menuju input slave.
12 (MISO) Master In, Slave Out, ini adalah input dari master untuk menerima data
shift register dari slave menuju master.
13
(SCK/SCLK)
Serial Clock, ini adalah clock yang dihasilkan master menandakan
komunikasi SPI dan untuk melakukan shifting terhadap shift register dari
kedua device.
2.5. NodeMCU
NodeMCU adalah board modul WiFi ESP8266MOD yang terintegrasi dengan
mikrokontroler. Sama halnya dengan board Arduino, NodeMCU juga bersifat open source
IoT platform. Untuk membuat, mengkompilasi, dan meng-upload program pada NodeMCU
dapat digunakan software Arduino IDE dan LUA. Dengan menggunakan Arduino IDE,
maka dibutuhkan library board NodeMCU 1.0 (ESP-12E Module) supaya saat meng-upload
program ke dalam NodeMCU dapat dilakukan. Untuk berkas library dibutuhkan header
ESP8266WiFi.h.
Pada NodeMCU terdapat modul WiFi ESP8266MOD dan dilengkapi IC CP2102,
yaitu IC interface USB to UART yang digunakan untuk proses uploading program dari
Arduino IDE ke NodeMCU. Kapasitas memori untuk pemrograman mencapai 1MB atau
1.044.464 byte, yang menjadikan NodeMCU unggul dibandingkan dengan Arduino UNO
yang hanya memiliki 32 KB atau sekitar 32.256 byte [9].
Pada Gambar 2.7. ditampilkan bentuk fisik, bersama dengan bagian-bagian pin yang
ada pada board NodeMCU. Penjelasan bagian-bagian NodeMCU dapat dilihat pada Tabel
2.5. NodeMCU menggunakan modul WiFi ESP8266MOD, dimana modul ini dapat
digunakan sebagai client atau Access Point (AP) dalam membangun sebuah sistem kontrol
maupun monitoring.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
15
Gambar 2.7. Board NodeMCU
Tabel 2.5. Keterangan Bagian NodeMCU
No Keterangan
1 GPIO16, USER, WAKE
2 GPIO5
3 GPIO4
4 GPIO0, FLASH
5 GPIO2, TXD1
6 3,3 Volt
7 GND
8 GPIO14, HSCLK
9 GPIO12, HMISO
10 GPIO13, RXD2, HMOSI
11 GPIO15, TXD2, HCS
12 GPIO3, RXD0
13 GPIO1, TXD0
14 GND
15 3,3 Volt
16 Vin 5 Volt
17 GND
18 RST
No Keterangan
19 EN
20 3,3 Volt
21 GND
22 SCLK, SDCLK
23 MISO, SDD0
24 CS, SDCMD
25 MOSI, SDD1
26 GPIO9, SDD2
27 GPIO10, SDD3
28 RESERVED
29 RESERVED
30 ADC0, TOUT
31 ESP8266MOD
32 Reset
33 Masukan USB
34 CP2102
35 Push Button Flash
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
16
2.6. Log Data
Data Logger adalah suatu perangkat khusus yang mampu menyimpan data dalam
jangka waktu tertentu. Data yang disimpan memiliki jumlah karakter tertentu untuk
disimpan dalam media penyimpanan seperti pada kartu memori. Proses penyimpanan data
ini biasa disebut data logging. Data yang disimpan dapat dari berbagai masukan, yang
kemudian data masukan tersebut diperlukan dalam sebuah penelitian. Dalam merekam data
ini, data logger memerlukan waktu yang akurat, maka dari itu diperlukan suatu Real Time
Clock (RTC), dan format data yang akan disimpan dalam memori, diperlukan juga sebuah
memori untuk menyimpan data.
2.6.1. Kartu Memori
Kartu SD adalah kartu memori yang dirancang khusus untuk memenuhi keamanan,
kapasitas, kinerja, dan kebutuhan yang erat kaitannya pada peralatan elektronik audio dan
video. Kartu SD harus meliputi mekanisme perlindungan konten yang sesuai dengan standar
keamanan SDMI dan lebih cepat serta memiliki kapasitas penyimpanan lebih besar [10].
Kartu SD memiliki kecepatan transfer data yang tinggi, dan memerlukan konsumsi daya
yang rendah. Kartu SD menyediakan enkripsi konten-konten yang dilindungi untuk
memastikan distribusi yang aman. Dalam perkembangannya, kartu SD diproduksi juga
dalam ukuran yang lebih kecil seperti Mini SD dan Micro SD.
Gambar 2.8. Standar Penomoran Terminal SD Card [10]
Tabel 2.6. Keterangan Terminal Kartu SD [10]
Pin Nama Tipe Keterangan
1 CD/DAT3 I/O/PP Card Detect/Data Line [Bit 3]
2 CMD I/O/PP Command/Response
3 VSS1 S Supply Voltage Ground
4 VDD S Supply Voltage;Typical 3,3 Volt
5 CLK I Clock
6 VSS2 S Supply Voltage Ground
7 DAT0 I/O/PP Data Line [Bit 0]
8 DAT1 I/O/PP Data Line [Bit 1]
9 DAT2 I/O/PP Data Line [Bit 2]
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
17
Kartu SD dapat bekerja dengan menggunakan catu daya tegangan sebesar 2,7 Volt
hingga 3,6 Volt. Pada Gambar 2.8. menunjukan standar penomoran terminal dan bentuk
kartu SD serta keterangan terminal kartu SD dapat dilihat pada Tabel 2.6. Pada Gambar 2.9.
ditunjukan gambar rangkaian modul micro SD Card yang digunakan untuk penyimpanan
data pada penelitian ini.
Gambar 2.9. Modul Micro SD Card [11]
2.6.2. Real Time Clock (RTC)
IC DS3231 adalah IC Real Time Clock (RTC) yang digunakan untuk menyimpan
waktu, khususnya digunakan dalam sistem pencatat data yang memerlukan data waktu yang
cukup akurat. IC ini dapat menyimpan data waktu, mulai dari detik, menit, jam, maupun
tanggal, bulan, tahun. IC DS3231 bekerja dengan menggunakan komunikasi serial I2C.
Semua data yang diterima dari IC DS3231 sudah berupa data Binary Coded Decimal (BCD).
Pertukaran data menggunakan antarmuka I2C, untuk memulai pertukaran data, master
device harus menginisialisasi keadaan START dan diakhiri dengan keadaan STOP.
Gambar 2.10. Rangkaian RTC DS3231 [12]
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
18
Rangkaian RTC DS3231 dilengkapi dengan catuan dari Lithium Cell CR 2032 3 Volt.
Ketika catu daya utama tidak aktif maka RTC DS3231 ini akan secara otomatis akan
berpindah ke catu Lithium Cell CR 2032 3 Volt. Rangkaian RTC DS3231 dapat dilihat pada
Gambar 2.10.
2.7. Liquid Cell Display (LCD)
Liquid Cell Display (LCD) merupakan salah satu komponen elektronika yang
berfungsi untuk menampilkan data berupa karakter. LCD tipe 16x2 memiliki 2 baris dan
masing-masing baris memuat 16 karakter. LCD ini sangat mudah dioperasikan, serta catu
tegangan kerja LCD ini membutuhkan 5 Volt. Pada Gambar 2.11. ditampilkan rangkaian
dari LCD 16x2 dan konfigurasi pin-pinnya dapat dilihat pada Tabel 2.7.
Gambar 2.11. Rangkaian LCD Karakter 16x2
Tabel 2.7. Konfigurasi Pin LCD 16x2 [13]
No Simbol Level Fungsi
1 Vss -- 0 Volt Power Supply
2 Vdd -- +5 Volt
3 V0 -- For LCD
4 RS H/L Register Select: H: Data Input, L : Instruction Input
5 R/W H/L H--Read, L – Write
6 E H, H-L Enable Signal
7 DB0 H/L Data bus used in 8 bit transfer
8 DB1 H/L
9 DB2 H/L
10 DB3 H/L
11 DB4 H/L Data bus for both 4 and 8 bit transfer
12 DB5 H/L
13 DB6 H/L
14 DB7 H/L
15 BLA -- BLACKLIGHT +5 Volt
16 BLK -- BLACKLIGHT 0 Volt
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
19
2.8. WiFi ESP8266
WiFi ESP8266 merupakan System on Chip (SOC), dengan stack protokol yang
terintegrasi, sehingga mudah diakses menggunakan mikrokontroler melalui komunikasi
serial 801.11 b/g/n WiFi Direct (P2P) dengan konektivias antarmuka SPI/SDIO atau
I2C/UART. WiFi ESP8266 dapat berfungsi sebagai host maupun sebagai modul transfer
data dalam jaringan WiFi. ESP8266 dirancang untuk keperluan mobile, dalam dunia
elektronik, dan aplikasi Internet of Things (IoT) dengan arsitektur konsumsi daya yang
rendah. Arsitektur hemat daya terutama beroperasi dalam 3 mode, yaitu mode aktif, mode
sleep, dan mode deep sleep. Blok diagram ESP8266 dapat dilihat pada Gambar 2.12.
Gambar 2.12. Blok Diagram ESP8266 [14]
ESP8266 memiliki beberapa fitur sebagai berikut [14]:
1. 802.11 b/g/n
2. Terintegrasi daya rendah 32-bit Multipoint Control Unit (MCU)
3. Terintegrasi 10-bit Analog Digital Convertion (ADC)
4. Terintegrasi stack protokol Transmission Control Protocol/Internet Protocol (TCP/IP)
5. Terintegrasi TR Switch, balun, LNA, Power Amplifier dan jaringan
6. Terintegrasi PLL, Regulator, dan Pengelola daya terpadu
7. Mendukung berbagai macam antena
8. WiFi 2,4 GHz, Mendukung WPA/WPA2
9. Mendukung mode operasi STA/AP/STA+AP
10. Antarmuka SDIO 2.0, (H)SPI, UART, I2C, I2S, IR Remote Control, PWM, GPIO
11. Temperatur -40oC sampai dengan 125oC
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
20
2.8.1. Spesifikasi ESP8266
ESP8266 adalah modul WiFi yang dapat berdiri sendiri (stand alone) atau
dihubungkan dengan mikrokontroler dalam koneksinya. Saat modem-sleep, diperlukan CPU
untuk bekerja, sebagaimana dalam PWM atau aplikasi I2S. Berdasarkan standar 802.11
(seperti U-APSD), CPU menyimpan daya untuk shut down rangkaian modem WiFi sambil
mempertahankan koneksi WiFi saat tidak ada data yang dikirim, besarnya 15 mA. Selama
light-sleep, CPU dihentikan dalam aplikasi, tanpa transmisi data, rangkaian modem WiFi
dapat dimatikan dan CPU ditangguhkan untuk menyimpan daya berdasarkan standar 802.11
(U-APSD), besarnya 0,9 mA. Deep-sleep tidak memerlukan koneksi WiFi untuk
dipertahankan, besarnya arus rata-rata kurang dari 1 Ma [14]. Modul ESP8266 memiliki
banyak kelebihan, disamping SoC, modul ini dapat bekerja sebagai mikrokontroler sendiri
dalam suatu sistem tanpa perlu mikrokontroler tambahan. Dengan adanya fitur pin GPIO
memungkinkan ESP8266 ini dapat mengatur dan mengontrol input dan output secara
langsung. Untuk board modul WiFi ESP8266 Seri 01 dapat dilihat pada Gambar 2.13. di
bawah ini dan keterangan bagian-bagian modul pada Tabel 2.8. Untuk spesifikasi modul
WiFi ESP8266 dapat dilihat pada Tabel 2.9.
Gambar 2.13. Board Modul WiFi ESP8266 Seri 01
Tabel 2.8. Keterangan Bagian Modul WiFi ESP8266 Seri 01
No Fungsi Keterangan
1 Tx Transmit
2 CH-PD Chip Enable. Selalu logika 1 saat kondisi aktif.
0-Disable; 1-Enable
3 RST Reset Eksternal.
0-Reset; 1-Normal
4 VCC 3,3 Volt
5 GND Ground
6 GPIO2 Harus logika 1 saat boot
7 GPIO0 Harus logika 1 saat boot, 0 untuk flash update
8 Rx Receive
9 ESP8266EX Chip ESP8266EX
10 Antena Transceiver
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
21
Tabel 2.9. Spesifikasi ESP8266EX [14]
Kategori Isi Keterangan
Parameter WiFi Sertifikat FCC/CE/TELEC/SRRC
Protokol WiFi 802.11 b/g/n
Rentang Frekuensi 2,4 GHz-2,5 GHz (2400M-2483,5M)
Tx Power 802.11 b: +20dBm
802.11 g: +17dBm
802.11 n: +14 dBm
Rx Power 802.11 b: -91 dBm (11 Mbps)
802.11 g: -75 dBm (54 Mbps)
802.11 n: -72 dBm (MCS7)
Tipe Antena PCB Trace, Eksternal, IPEX Connector, Chip
Keramik
Parameter
Hardware
Peripher Bus UART/SDIO/SPI/I2C/I2S/IR Remote
Control
GPIO/PWM
Tegangan Kerja 3,0 ~ 3,6 Volt
Arus Kerja Nilai Rata-rata: 80 mA
Rentang Temperatur -40C ~ 125C
Rentang Suhu
Ruangan
Suhu Normal
Ukuran 5x5 mm
Antarmuka Eksternal N/A
Parameter
Software
Mode WiFi Station/SoftAP/SoftAP+Station
Keamanan WPA/WPA2
Enkripsi WEP/TKIP/AES
Firmware Upgrade UART Download/OTA (Via Network)
Pengenbangan
Software
Mendukung Pengembangan Cloud
Server/SDK untuk pengembangan firmware
Protokol Jaringan IPv4, TCP/UDP/HTTP/FTP
Konfigurasi User Perintah AT, Cloud Server, Android/Ios App
2.8.2. Memori ESP8266
Modul WiFi ESP8266EX telah dilengkapi dengan kontrol memori, seperti SRAM dan
ROM. Multipoint Control Unit (MCU) dapat berinteraksi dengan memori melalui antarmuka
iBus dan Advanced High Performance Bus (AHB). Semua unit memori dapat berkomunikasi
sesuai dengan permintaan yang diterima oleh prosesor berdasarkan urutan waktu. Ruang
SRAM yang tersedia sebagai berikut:
1. Ukuran SRAM < 36 kB, ketika ESP8266EX bekerja dalam mode station dan
dikoneksikan sebagai router, ruang program oleh user sekitar 36 kB.
2. Tidak ada program ROM pada SoC, sehingga program user harus disimpan dalam
flash SPI eksternal.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
22
Flash SPI eksternal digunakan bersama-sama dengan ESP8266EX untuk menyimpan
program user. Secara teoritis, kapasitas memori yang dapat didukung sekitar sampai dengan
16 Mbyte. Disarankan kapasitas flash memori SPI, saat Over-the-air programming (OTA)
di non-aktifkan, memori yang dapat didukung adalah 512 kByte, dan saat OTA diaktifkan
memori yang dapat didukung adalah 1 MByte. Beberapa mode SPI dapat didukung,
termasuk standar SPI, Dual SPI, DIO SPI, QIO SPI, dan Quad SPI [14].
2.8.3. Konfigurasi Pin WiFi ESP8266EX
Pada Gambar 2.14. ditampilkan penempatan pin-pin untuk modul WiFi ESP8266EX.
Terdapat 33 pin yang ada pada modul WiFi ESP8266EX. Untuk keterangan pin-pin dapat
dilihat pada Tabel 2.10.
Gambar 2.14. Penempatan Pin-Pin ESP8266EX [14]
Tabel 2.10. Keterangan Pin-Pin ESP8266EX [14]
Pin Nama Fungsi Keterangan
1 VDDA P Analog Power 3,0~3,6 Volt
2 LNA I/O Antena RF Interface. Dengan output impedansi 50 ohm, tipe-n
3 VDD3P3 P Amplifier Power 3,0~3,6 Volt
4 VDD3P3 P Amplifier Power 3,0~3,6 Volt
5 VDD_RTC P NC (1.1V)
6 TOUT I Pin ADC
7 CHIP-EN I Chip Enable, High (on), Low (off)
8 XPD_DCDC I/O Mode Deep-Sleep Wakeup, GPIO16
9 MTMS I/O GPIO14, HSPI_CLK
10 MTDI I/O GPIO12, HSPI_MISO
11 VDDPST P Digital/IO Power Supply (1,8~3,3 Volt)
12 MTCK I/O GPIO13, HSPI_MOSI, UART0_CTS
13 MTDO I/O GPIO15, HSPI_CS, UART0_RTS
14 GPIO2 I/O UART Tx selama pemrograman, GPIO2
15 GPIO0 I/O GPIO0, SPI_CS2
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
23
Tabel 2.10. (Lanjutan) Keterangan Pin-Pin ESP8266EX [14]
16 GPIO4 I/O GPIO4
17 VDDPST P Digital/IO Power Supply (1,8~3,3 Volt)
18 SDIO_DATA_2 I/O Koneksi ke SD_D2 (seri R:200 ohm), SPIHD, HSPIHD, GPIO9
19 SDIO_DATA_3 I/O Koneksi ke SD_D3 (seri R:200 ohm), SPIWP, HSPIWP,
GPIO10
20 SDIO_CMD I/O Koneksi ke SD_CMD (seri R:200 ohm), SPI_CS0, GPIO11
21 SDIO_CLK I/O Koneksi ke SD_CLK (seri:200 ohm), SPI_CLK, GPIO6
22 SDIO_DATA_0 I/O Koneksi ke SD_D0 (seri R:200 ohm), SPI_MISO, GPIO7
23 SDIO_DATA_1 I/O Koneksi ke SD_D1 (seri R:200 ohm), SPI_MOSI, GPIO8
24 GPIO5 I/O GPIO5
25 U0RXD I/O UART Rx saat flash program, GPIO3
26 U0TXD I/O UART Tx saat flash program, GPIO1, SPI_CS1
27 XTAL_IN I/O Koneksi ke output kristal osilator
28 XTAL_IN I/O Koneksi ke input kristal osilator
29 VDDD P Analog Power 3,0~3,6 Volt
30 VDDA P Analoga Power 3,0~3,6 Volt
31 RES12K I Koneksi serial dengan resistor 12k ohm, dan konek ground
32 EXT_RSTB I Sinyal eksternal reset (aktif:low)
33 GND P Ground
2.8.4. Protokol IEEE 802.11 b/g/n
WiFi merupakan teknologi yang digunakan untuk melakukan perpindahan data dari
satu perangkan ke perangkat lainnya tanpa menggunakan kabel sebagai media transmisinya.
WiFi atau disebut juga sebagai Wireless LAN (WLAN) memanfaatkan radiasi
elektromagnetik atau disebut juga sebagai gelombang radio dalam proses transmisi. Pada
jaringan WiFi terdapat suatu standarisasi yang digunakan untuk mengatur regulasi
penggunaan jaringan nirkabel ini. IEEE adalah sebuah lembaga yang telah menetapkan dan
menyetujui IEEE 802.11 sebagai standar regulasi untuk pengguna jaringan nirkabel secara
global.
Dalam perkembangannya IEEE 802.11 telah beberapa kali mengalami perubahan.
Perubahan pertama untuk standar jaringan nirkabel diawali oleh IEEE 802.11 a, diikuti
dengan IEEE 802.11 b, IEEE 802.11 g, dan IEEE 802.11 n. Namun sampai dengan
ditetapkannya IEEE 802.11 n sebagai standar, masih terdapat keterbatasan-keterbatasan
pada standar tersebut. Pada awal 2014, IEEE menyetujui untuk menetapkan IEEE 802.11 ac
sebagai standar terbaru untuk teknologi nirkabel yang menyediakan kecepatan data rate
hingga 7 Gbps dengan pita frekuensi 5 GHz [15].
IEEE 802.11 b merupakan ekstensi untuk Higher-Speed Physical Layer yang
beroperasi pada pita frekuensi 2,4 GHz. Metode penyebaran spektrum radio standar IEEE
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
24
802.11 b menggunakan HR/DSSS untuk mendukung peningkatan data rate sampai dengan
11 Mbps. Standar IEEE 802.11 g dinamakan dengan Further Higher Data Rate Extension
in the 2,4 GHz band. Standar ini menetapkan metode penyebaran spektrum radio
menggunakan OFDM yang dapat mendukung data rate sampai dengan 54 Mbps dan
beroperasi pada pita frekuensi 2,4 GHz. Setelah adanya standar IEEE 802.11 g ini,
berdampak signifikan terhadap kenaikan data rate dimana sebelumnya 802.11 b HR/DSSS
hanya mendukung 1, 2, 5,5, dan 11 Mbps kemudian dapat mendukung penambahan data
rate 6, 9, 12, 18, 24, 36, 48, dan 54 Mbps. Standar IEEE 802.11 n mampu mentrasmisikan
data dengan kecepatan 600 Mbps. IEEE 802.11 n menggunakan HT-OFDM yang dapat
beroperasi pada pita frekuensi 2,4 GHz dan 5 GHz [15].
2.9. Android Studio untuk Membuat Aplikasi Android
Android Studio adalah software dengan pengembangan terpadu, Integrated
Development Environtment (IDE) untuk pengembangan aplikasi Android, berdasarkan
IntelliJ IDEA. Android Studio merupakan editor kode IntelliJ dan alat pengembang yang
berdaya guna. Android Studio menawarkan fitur-fitur yang lebih banyak untuk
meningkatkan produktivitas saat membuat aplikasi Android. Beberapa fitur yang tersedia
adalah [16]:
1. Sistem versi berbasis Gradle yang fleksibel.
2. Emulator yang cepat dan kaya fitur.
3. Lingkungan yang menyatu untuk pengembangan bagi semua perangkat Android.
4. Instant Run untuk mendorong perubahan ke aplikasi yang berjalan tanpa membuat
APK baru.
5. Template code dan integrasi GitHub untuk membuat fitur aplikasi yang sama dan
mengimpor kode contoh.
6. Alat pengujian dan kerangka kerja yang ekstensif.
7. Alat Lint untuk meningkatkan kinerja, kegunaan, kompatibilitas versi, dan masalah-
masalah lain.
8. Dukungan C++ dan NDK.
9. Dukungan bawaan untuk Google Cloud Platform, mempermudah pengintegrasian
Google Cloud Messaging dan App Engine.
Gambar 2.15. menujukan tampilan awal dari jendela utama Android Studio beserta
bagiannya [16].
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
25
Gambar 2.15. Jendela Utama Android Studio dan Bagiannya [16]
Keterangan Gambar 2.15 [16]:
1. Bilah alat memungkinkan untuk melakukan berbagai jenis tindakan, termasuk
menjalankan aplikasi dan meluncurkan alat Android.
2. Bilah navigasi membantu untuk navigasi di antara proyek, dan membuka file untuk
diedit. Bilah ini memberikan tampilan struktur yang terlihat lebih ringkas dalam
jendela project.
3. Jendela editor adalah tempat untuk membuat dan memodifikasi kode. Bergantung
pada jenis file, dan editor dapat berubah. Misalnya, ketika melihat file tata letak, editor
menampilkan Layout Editor.
4. Bilah jendela alat muncul di luar jendela IDE dan berisi tombol yang
memungkinkan untuk meluaskan atau menciutkan jendela alat individual.
5. Jendela alat memberi akses ke tugas tertentu seperti pengelolaan proyek,
penelusuran, kontrol versi, dan banyak lagi, serta bisa meluaskan dan juga
menciutkannya.
6. Bilah status menampilkan status proyek dan IDE itu sendiri, serta setiap peringatan
atau pesan.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
26
BAB III
RANCANGAN PENELITIAN
3.1. Konsep Dasar
Gambar 3.1. Blok Diagram Perancangan Secara Keseluruhan
Sistem data logger peralatan elektronik berbasis Android dirancang dengan mengukur
seberapa besar arus dan tegangan, serta durasi waktu menyala pada peralatan elektronik
dalam selang hari tertentu. Sensor arus dan sensor tegangan akan mengukur seberapa besar
arus dan tegangan yang dibutuhkan suatu peralatan elektronik pada saat menyala. Pada
subsistem data logger terdapat slot memori dan RTC, serta penampil LCD. Fungsi slot
memori untuk slot kartu memori sebagai penyimpan data logger dan DS3231 (RTC) untuk
pewaktuan supaya data tersimpan dalam akurasi waktu, serta LCD untuk penampil waktu
dan besarnya arus dan tegangan saat diukur.
Data logger disimpan dalam kartu memori untuk kemudian dikirim ke smartphone
berbasis Android dengan menggunakan modul WiFi ESP8266. Proses pengiriman tersebut
dilaksanakan jika ada perintah dari Android, yaitu perintah untuk menampilkan data pada
saat diukur. Perintah tersebut akan diproses dalam mikrokontroler untuk mengirim data
secara real time ke aplikasi Android sekaligus menyimpan data dalam bentuk data logger.
Arduino UNO
/NodeMCU
Sensor Arus
Sumber AC
Sensor Tegangan
LCD
Data Logger
RTC Kartu Memori
Peralatan
Elektronik Subsistem Data Logger
ESP8266
Subsistem
Pengirim Subsistem Penerima
Data
Reset
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
27
Blok diagram sistem data logger peralatan elektronik berbasis Android secara
keseluruhan dapat dilihat pada Gambar 3.1. Rancangan penelitian ini dikelompokan
berdasarkan subbab perancangan besar, yaitu:
1. Perancangan hardware dan software subsistem data logger terdiri dari perancangan
sensor arus dan sensor tegangan dengan melihat karakteristik masukan analog Arduino
UNO (ATmega328)/NodeMCU. Konfigurasi data logger yang terdiri dari RTC
dengan IC DS3231 dan slot memori (micro SD Card module adapter). Konfigurasi
LCD karakter 16x2 untuk tampilan data secara real time pada bagian subsistem data
logger. Perancangan box perangkat keras untuk membuat subsistem data logger lebih
optimal dan prototipe beban (rangkaian 5 buah lampu pijar 60 Watt).
2. Perancangan software aplikasi Android sistem data logger, yaitu membuat aplikasi
Android untuk menampilkan data.
3. Perancangan format paket data terdiri dari jumlah karakter data logger yang akan
disimpan dalam sebuah kartu memori, serta jumlah data yang akan disimpan dalam
selang waktu tertentu dalam 1 file.
4. Perancangan koneksi WiFi untuk menghubungkan antara subsistem data logger
sebagai penyedia dengan aplikasi Android yang dihubungkan oleh interface modul
WiFi ESP8266.
3.2. Perancangan Hardware dan Software Data Logger
3.2.1. Sensor Arus
Sensor arus yang digunakan dalam penelitian ini menggunakan sensor arus ACS712
20A dalam bentuk modul. Berdasarkan datasheet modul ACS712 10A, sensor ini dapat
digunakan untuk mendeteksi arus AC maupun DC, dengan sensitivitas 100 mV/A [2]. Arus
maksimum yang dapat dideteksi adalah sebesar 10 A. Keluaran dari sensor ini adalah analog
tegangan DC, jika terdeteksi arus sebesar 0 A maka keluaran dari tegangan arus ini sebesar
VCCx0,5 Volt = 5 x 0,5 = 2,5 Volt, saat terdeteksi arus 5 A maka tegangan keluaran dari
sensor arus ini sebesar 5x100 mV ditambah dengan 2,5 Volt, yaitu 4,5 Volt. Bentuk fisik
modul sensor arus ACS712 dapat dilihat pada Gambar 3.2.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
28
Gambar 3.2. Bentuk Fisik Sensor Arus ACS712
3.2.2. Sensor Tegangan
Sensor tegangan yang digunakan dalam penelitian ini menggunakan sensor tegangan
ZMPT101B. Sensor tegangan ini digunakan untuk mengukur tegangan AC dengan jarak
ukur dari 20 Volt sampai dengan 240 Volt AC. Sensor ini aktif dengan catuan tipikal 5 Volt
dan terdapat micro transformer pada rangkaian sensor ini. Transformer ini berfungsi untuk
menurunkan tegangan yang akan diukur dengan perbandingan rasio, jika menggunakan
tegangan referensi 3,3 Volt maka rasionya adalah 1000:1,16. Sedangkan menggunakan
tegangan referensi 5 Volt maka rasionya adalah 1000:3,53. Proses dari pembaca sensor
tegangan ini adalah dengan cara pensamplingan. Perlu diketahui bahwa ADC tidak bisa
membaca sinyal negatif maka dari itu tegangan negatif harus dinaikkan offset-nya ke 2,5
volt, sehingga terdapat space untuk nilai negatif dan positif. Untuk menaikkan tegangan AC
ini, bisa menggunakan rangkaian summing amplifier, namun pada sensor ZMPT101B sudah
terdapat rangkaian summing amplifier sehingga tidak perlu menambahkan rangkaian
eksternal summing amplifier. Gambar 3.3. menunjukan bentuk fisik sensor tegangan
ZMPT101B.
Gambar 3.3. Bentuk Fisik Sensor Tegangan
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
29
3.2.3. Arduino UNO
Arduino UNO adalah board mikrokontroler yang telah berbentuk minimum sistem.
Arduino UNO menggunakan chip keluarga AVR yaitu ATmega328P atau bisa juga
menggunakan ATmega8 atau ATmega168 berdasarkan kebutuhan.
Gambar 3.4. Tampilan Arduino UNO dengan Eagle
Tampilan bagian Arduino UNO dengan Eagle dapat dilihat pada Gambar 3.4. dan
dalam penelitian ini perancangan pin masukan dan keluaran ditunjukan pada Tabel 3.1.
Dengan pembagian pin seperti pada Tabel 3.1., yang memiliki fungsi masing-masing untuk
menjalankan program yang ada diharapkan tidak akan terjadi tabrakan di dalam pin itu
sendiri.
Tabel 3.1. Pembagian Pin pada Arduino UNO dalam Penelitian
No Nama masukan/keluaran Pin yang digunakan Keterangan
1 Sensor Arus Analog 0 (A0) Sebagai masukan
2 Sensor Tegangan Analog 1 (A1) Sebagai masukan
3 Real Time Clock (RTC) Analog 4 (A4) Sebagai Serial Data
Analog 5 (A5) Sebagai Serial Clock
Pin 10 (10) Sebagai Chip Select
4 LCD Pin 4 (4) Sebagai keluaran
Pin 5 (5) Sebagai keluaran
Pin 6 (6) Sebagai keluaran
Pin 7 (7) Sebagai keluaran
Pin 8 (8) Sebagai keluaran
Pin 9 (9) Sebagai keluaran
5 Kartu Memori (SD Card) Pin 10 (10) Sebagai Chip Select
Pin 11 (11) Sebagai MOSI
Pin 12 (12) Sebagai MISO
Pin 13 (13) Sebagai Clock
6 Tombol Reset Sebagai tombol reset
7 Transceiver Tx Sebagai pengirim
Rx Sebagai penerima
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
30
3.2.4. NodeMCU
NodeMCU adalah board modul WiFi ESP8266MOD yang bersifat open source
terintegrasi dengan mikrokontroler. Pada Gambar 3.5. ditunjukan bentuk fisik dari
NodeMCU beserta pembagian pin-pinnya pada Tabel 3.2.
Gambar 3.5. Bentuk Fisik NodeMCU
Tabel 3.2. Pembagian Pin-Pin NodeMCU
No Nama
masukan/keluaran
Pin yang
digunakan
Keterangan
1 Multiplexer Sensor A0 Menggunakan multiplexer eksternal
untuk analog in (A0), dari sensor
tegangan dan sensor arus
D0 Sebagai kontrol switch untuk
multiplexer
2 Micro SD Card D5 Sebagai SCK
D6 Sebagai MISO
D7 Sebagai MOSI
D8 Sebagai CS
3 RTC DS3231 D1 Sebagai SCL
D2 Sebagai SDA
4 I2C Module for LCD D1 Sebagai SCL
D2 Sebagai SDA
3.2.5. LCD
LCD pada penelitian ini digunakan untuk menampilkan secara real time seberapa
besar arus dan tegangan yang terpakai. Untuk dapat digunakan pada NodeMCU maka modul
LCD ditambahkan dengan I2C module supaya dapat berkomunikasi dengan NodeMCU.
Gambar 3.6. menunjukan bentuk fisik I2C module untuk LCD dan Gambar 3.7. Fisik modul
LCD 16x2.
Gambar 3.6. Bentuk Fisik I2C Module
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
31
Gambar 3.7. Bentuk FisikModul LCD 16x2
3.3. Perancangan Software Aplikasi Android
Perancangan aplikasi Android dalam penelitian ini menggunakan Android Studio.
Aplikasi ini berfungsi sebagai penampil dari data peratalan elektronik yang diukur. Data
akan ditampilkan pada aplikasi Android ini jika ada suatu perintah dari aplikasi untuk
menampilkan data pada aplikasi. Kemudian data akan dikirim ke aplikasi melalui
komunikasi WiFi modul ESP8266. Layout aplikasi Android sistem data logger peralatan
elektronik berbasis Android dapat dilihat pada Gambar 3.8.
Gambar 3.8. Layout Aplikasi Android Sistem Data Logger
3.4. Perancangan Format Paket Data dan Kartu Memori
Format paket data yang akan disimpan memiliki 47 karakter dan disimpan dalam kartu
memori setiap 5 menit (300 detik). Format paket data yang digunakan adalah berekstensi
.csv. Karakter-karakter yang disimpan dalam kartu memori adalah tanggal, jam, tegangan,
arus, durasi waktu menyala, energi. Berikut format data di dalam paket data:
dd-mm-yyyy,HH:MM:SS,vvvvv,ccccc,tttttt,WWWWWWWW
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
32
Dari format data tersebut dapat dijelaskan pada Tabel 3.3. dan Tabel 3.4.
Tabel 3.3. Format Paket Data Pewaktuan
Tanggal Jam
dd mm Yyyy - HH MM SS :
Jumlah Karakter 2 2 4 2 2 2 2 2
Tabel 3.4. Format Paket Data Pengukuran
Tegangan (v) Arus (i) Durasi
menyala (s)
Energi
(j)
,
Jumlah Karakter 5 5 6 8 5
Data yang telah diolah akan disimpan dalam bentuk data logger pada sebuah kartu
memori. Jenis kartu memori yang digunakan adalah jenis micro SD 4 GB. Untuk mengetahui
besarnya kapasitas memori yang digunakan dalam penelitian ini dengan perhitungan sebagai
berikut: untuk setiap penyimpanan ada 47 karakter yang akan tersimpan setiap 5 menit (5 x
60 = 300 detik), 1 karakter = 1 byte, jadi 47 karakter = 47 byte.
1 hari = 24 jam x 60 menit = 1440 menit x 60 detik = 86400 detik
1 hari = 86400 detik, dengan 86400 : 300 = 288 x 47 byte = 13536 byte
Jadi dalam 1 hari kartu memori menyimpan data sebesar 13536 byte atau 13,536 Kbyte
Dalam 1 bulan = 30 hari x 13536 = 406080 byte atau 406,080 Kbyte
Kartu memori yang dipakai sebesar 4 GB, jadi perhitungannya adalah:
4 𝑥 106 𝐾𝐵
406,080 𝐾𝐵 = 9850,27 Bulan (panjang waktu penuh micro SD Card 4 GB)
3.5. Perancangan Koneksi Wifi
Sistem data logger peralatan elektronik berbasis Android menggunakan modul WiFi
ESP8266 dalam interface antara subsistem data logger dengan penampil aplikasi Android.
Modul WiFi ESP8266 dihubungkan dengan perangkat Arduino UNO menggunakan AT
command. Fungsi AT command adalah untuk pengaturan modul WiFi ESP8266 sehingga
dapat digunakan. Perintah AT command digunakan untuk berkomunikasi atau berhubungan
antar perangkat dengan terminal, dalam penelitian ini adalah modul WiFi ESP8266. AT
command digunakan untuk mengetahui kondisi aktivasi, mengirim pesan, membaca pesan
dan sebagainya. Wiring antara pin Arduino UNO dengan pin modul WiFi ESP8266 dapat
dilihat pada Gambar 3.9.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
33
Gambar 3.9. Wiring Pin Antara Arduino dan ESP8266
Untuk NodeMCU, modul WiFi telah tertanam pada board (System on Chip), sehingga
proses pengaturan komunikasi WiFi tidak membutuhkan AT Command seperti jika ESP8266
dihubungkan dengan Arduino UNO.
3.6. Diagram Alir Sistem
Diagram alir sistem data logger peralatan elektronik berbasis Android secara
keseluruhan dapat dilihat pada Gambar 3.10. Pertama, mikrokontroler akan menginisialisasi
beberapa port yang digunakan, pewaktuan, nilai awal, serta sambungan WiFi. Setelah proses
penginisialisasian selesai, sensor arus dan sensor tegangan mulai membaca besar arus dan
tegangan. Selanjutnya, data tersebut diproses dalam Arduino UNO/NodeMCU dan disimpan
pada micro SD Card. Proses pengiriman pada aplikasi Android saat subsistem data logger
terkoneksi pada Access Point (AP)/tethering smartphone. Kemudian, data akan ditampilkan
pada aplikasi Android.
3.6.1. Diagram Alir Subrutin Pengolahan Data Arus dan Tegangan
Gambar 3.11. menunjukan diagram alir untuk proses pengolahan data tegangan dan
arus. Dalam subrutin ini, sensor arus dan sensor tegangan mulai membaca dan menghitung
seberapa besar arus dan tegangan yang ada dalam setiap waktu (durasi waktu). Setelah
proses deteksi dan menghitung besarnya arus dan tegangan, proses selanjutnya adalah data
dari sensor tersebut disimpan sebagai data logger.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
34
Gambar 3.10. Diagram Alir utama dari data logger
3.6.2. Pengolahan Data Energi
Gambar 3.12. menunjukan diagram alir untuk proses pengolahan data energi. Arus
terdeteksi dihitung kemudian dicari nilai RMS dari arus tersebut, sama halnya dengan nilai
tegangan dicari nilai RMS dari tegangan. Setelah proses ini, energi akan dihitung dengan
rumus (W = V.I.t), dan kemudian akan disimpan pada kartu memori.
Mulai
Pengolahan data tegangan dan arus,
serta durasi waktu menyala
Pengolahan data energi
Penyimpanan data
Selesai
Kirim
data ?
Ya
Tidak
Proses
ulang
Tidak
Ya
Inisialisasi pewaktuan, Inisialisasi port masukan, Inisialisasi nilai awal
Kirim data ke Android
Baca arus,
Baca tegangan
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
35
Gambar 3.11. Diagram Alir Subrutin Pengolahan Data Arus dan Tegangan
Gambar 3.12. Diagram Alir Subrutin Pengolahan Data Energi
3.6.3. Diagram Alir Subrutin Penyimpanan Data
Diagram alir subrutin penyimpanan data dapat dilihat pada Gambar 3.13. Subrutin
penyimpanan data dilakukan untuk menyimpan proses hasil hitungan energi dan durasi
waktu menyala peralatan elektronik. Data yang disimpan adalah data berupa besarnya energi
yang digunakan dalam selang hari tertentu. Proses penyimpanan dilakukan setiap 5 menit
(300 detik).
Penyimpanan data arus, tegangan, dan durasi waktu
Kembali
Baca arus
Baca tegangan
Baca lama waktu
Subrutin pengolahan data arus dan tegangan
Pengolahan data arus, tegangan, dan durasi waktu
Hitung energi (W = V.I.t)
Penyimpanan data energi
Kembali
Pengolahan data energi
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
36
Gambar 3.13. Diagram Alir Subrutin Penyimpanan Data
3.6.4. Diagram Alir Subrutin Pengiriman Data
Subrutin pengiriman data dibagi dalam dua sisi, yaitu sisi pengirim dan sisi penerima.
Hal ini bertujuan untuk memudahkan dalam perancangan software sistem. Proses
pengiriman data terjadi pada saat ada perintah dari aplikasi Android untuk menampilkan data
pada aplikasi.
A. Diagram Alir Subrutin di Sisi Pengirim
Gambar 3.14. menunjukan diagram alir subrutin sisi pengirim. Pengiriman dilakukan
setelah ada perintah yang diterima mikrokontroler melalui interface modul WiFi ESP8266
dari aplikasi Android. Mikrokontroler akan mengirim data sekaligus menyimpan data pada
micro SD Card.
Gambar 3.14. Diagram Alir Subrutin Pengiriman Data di Sisi Pengirim
Kembali
Hitung energi
Baca tanggal, bulan,
tahun, jam, menit, detik
Simpan data dengan format
dd-mm-yyyy,HH:MM:SS,vvvvv,ccccc,tttttt,WWWWWWWW
Hitung tegangan rms
Hitung arus rms
Subrutin penyimpanan data
Mulai
Terima
perintah
kirim ?
Ambil data di SD Card
Selesai
Ya
Tidak Kirim data
Kirim
perintah
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
37
B. Diagram Alir Subrutin di Sisi Penerima
Diagram alir subrutin sisi penerima dapat dilihat pada Gambar 3.15. di bawah. Perintah
dari Android untuk meminta data dari subsistem data logger dilakukan dengan pertama-
tama memasukan IP ESP8266 modul WiFi untuk terkoneksi dengan sistem. Setelah
terkoneksi, perintah selanjutnya adalah mulai kirim data.
Gambar 3.15. Diagram Alir Subrutin Pengiriman Data di Sisi Penerima
3.7. Perancangan Box Perangkat Keras
Pada Gambar 3.16. ditampilkan prototipe beban dengan 5 buah lampu pijar dan
perancangan box perangkat keras dalam penelitian ini pada Gambar 3.17.
Gambar 3.16. Prototipe Beban 5 Lampu (60 Watt) dengan Variabel Tegangan AC
0~240Volt
Mulai
Masukan IP
ESP8266
Perintah
tampilkan data
Terima data
Tampilan data
Selesai
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
38
(a) (b)
Gambar 3.17. Perancangan Perangkat Keras Sistem Data Logger, (a) tampak kanan, (b)
tampak kiri
Perancangan perangkat keras sistem data logger ini berukuran dengan panjang box 18
cm, lebar 11 cm, dan tinggi 6 cm. Untuk keterangan Gambar 3.17. dapat dilihat pada Tabel
3.5. di bawah ini.
Tabel 3.5. Keterangan Gambar Perangkat Keras Sistem Data Logger
No Keterangan
1 LCD, sebagai penampil tanggal, jam, dan arus, tegangan
2 Kotak kontak, sebagai terminal beban (ke prototipe 5
lampu pijar 60 Watt)
3 Kontak tusuk, sebagai penghubung ke variabel tegangan
AC
4 Colokan USB, untuk upload program ke dalam
mikrokontroler sistem
5 Slot micro SD Card, slot kartu memori penyimpanan
data logger sewaktu-waktu dapat dilepas-pasang
6 Pin Amperemeter, untuk pengukuran arus dengan
multimeter
7 Saklar, sebagai switch pengukuran sensor arus dengan
multimeter atau sensor
8 Pin Voltmeter, untuk pengukuran tegangan dengan
multimeter
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
39
BAB IV
HASIL DAN PEMBAHASAN
Bab ini berisi tentang hasil dan pembahasan sistem data logger peralatan elektronik
berbasis Android yang terdiri dari, hasil penyimpanan data secara log pada kartu memori di
subsistem pengiriman, karakteristik komunikasi WiFi ESP8266, serta pengiriman data pada
aplikasi subsistem Android yang telah dibuat. Karakteristik komunikasi WiFi ESP8266
dilakukan dengan pengujian modul ESP8266 seri 01 dengan Arduino UNO, dan pengiriman
data dilakukan dengan dua cara, yaitu untuk yang pertama dengan menggunakan ESP8266
seri 01 dan Arduino UNO, dan yang kedua adalah dengan NodeMCU ESP8266MOD. Hasil
pengujian berupa data-data yang diperoleh untuk memperlihatkan bagaimana kemampuan
perangkat keras dan perangkat lunak yang dirancang apakah bekerja dengan baik atau tidak.
Dari data-data tersebut, dapat dilakukan analisis kinerja perangkat secara keseluruhan
berdasarkan pengujian dari masing-masing subsistem untuk mendapatkan hasil yang lebih
akurat. Serta, dapat digunakan untuk mengambil kesimpulan akhir terhadap perangkat
sistem data logger peralatan elektronik berbasis Android.
4.1. Pengujian Sensor
Pengujian sensor dilakukan untuk mendapatkan nilai baca sensor agar mendekati nilai
akurasi yang baik. Hasil baca sensor dibandingkan dengan hasil baca multimeter untuk
mengetahui keakurasian sensor. Hasil pengujian yang diperoleh berupa sensor yang telah
diakurasi untuk digunakan pada perangkat keras.
4.1.1. Multiplexer (CD4066BCN dan HD74LS04P)
NodeMCU hanya memiliki satu pin analog input (A0) yang menjadi kekurangan pada
modul WiFi ini. Untuk menambahkan pin analog input (A0) pada NodeMCU harus
menambahkan multiplexer eksternal yang diaktifkan dengan pin-pin digital (D0-D8) pada
NodeMCU. Pada penelitian ini, menggunakan IC CD4066BCN sebagai switching [17].
Fungsi IC ini sebagai switch terhadap sensor tegangan dan sensor arus yang akan dibaca,
dengan pin kontrol yang ada pada IC CD4066BCN maka dapat dilakukan secara bergantian
dalam membaca sensor untuk masuk dan dibaca pada pin analog input (A0) di NodeMCU.
Karena pin digital (D0-D8) pada NodeMCU telah digunakan untuk I2C modul LCD 16x2,
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
40
RTC DS3231, Micro SD Card module, dan hanya D0 yang belum digunakan, maka dalam
penelitian ini menggunakan gerbang NOT untuk mengaktifkan kontrol A (pin 13 pada IC
CD4066BCN) sebagai kontrol sensor arus, dan kontrol B (pin 5 pada IC CD4066BCN)
sebagai kontrol sensor tegangan. Digunakan IC HD74LS04P sebagai gerbang NOT [18].
Fungsi gerbang NOT ini adalah untuk dapat mendapatkan dua keluaran, yaitu saat 1 dan saat
0 yang digunakan dalam kontrol sensor-sensor pada multiplexer CD4066BCN. Pada Gambar
4.1. tampak rangkaian multiplexer untuk kedua sensor menggunakan aplikasi Proteus ISIS.
Gambar 4.1. Rangkaian Multiplexer untuk Sensor Arus dan Tegangan
Prinsip kerja rangkaian di atas (Gambar 4.1.) adalah, jika Pin D0 pada NodeMCU
bernilai 1 (HIGH) maka pin CONT A (kontrol switch A pada CD4066BCN) bernilai 1
(HIGH) dan pin CONT B (kontrol switch B pada CD4066BCN) bernilai 0 (LOW), sehingga
input Analog (A0) NodeMCU akan membaca sensor arus (Current Sensor in). Jika Pin D0
pada NodeMCU bernilai 0 (LOW) maka pin CONT A bernilai 0 (LOW) dan CONT B
bernilai 1 (HIGH), maka input Analog (A0) NodeMCU akan membaca sensor tegangan
(Voltage Sensor in). Untuk program Arduino IDE nya dapat dilihat pada Gambar 4.3. dan
Pinmode NodeMCU pada Gambar 4.2.
Gambar 4.2. Pinmode NodeMCU
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
41
Gambar 4.3. Loop Kondisi Pin D0 NodeMCU
4.1.2. Sensor Tegangan
Sensor tegangan yang digunakan dalam penelitian ini menggunakan modul sensor
ZMPT1010B. Pada penelitian ini, tegangan referensi modul ZMPT101B menggunakan
tegangan 5 Volt. Dengan sketch persamaan pada program Arduino IDE dapat dilihat pada
Gambar 4.4.
Gambar 4.4. Sketch Arduino IDE untuk Pensamplingan Tegangan
Dari Gambar 4.4. diperoleh getVPP( ), dengan Umax sebesar 3,52 Volt. Umax mewakili
nilai tegangan pada transformator terhadap nilai VPeak pada tegangan listrik. Dalam
penelitian ini, diperoleh tabel nilai yang digunakan untuk akurasi data sensor tegangan, yaitu
Urms terhadap Vrms (Multimeter) dapat dilihat pada Tabel 4.1. untuk memperoleh persamaan
yang digunakan dalam pengolahan hasil baca mikrokontroler. Untuk memperoleh nilai
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
42
tegangan yang bervariasi (0 sampai dengan 240 Volt), maka dalam penelitian ini
menggunakan variabel tegangan AC. Fungsi dari variable tegangan AC ini untuk
mengetahui dan mencari karakteristik serta sensitivitas sensor tegangan ZMPT101B. Dari
variabel tegangan AC ini maka didapat nilai pengukuran pada Tabel 4.1.
Tabel 4.1. Nilai Sensor Tegangan dan Perolehan Persamaan
Vrms
Multimeter
(Volt)
Urms
(Volt)
Dengan
persamaan (Volt)
Error
(%)
0.304 0.05 2.0255 -566.283
10 0.07 7.1733 28.267
20 0.12 20.0428 -0.214
30 0.15 27.7645 7.451667
40 0.2 40.634 -1.585
50 0.25 53.5035 -7.007
60 0.27 58.6513 2.247833
70 0.31 68.9469 1.504429
80 0.35 79.2425 0.946875
90 0.39 89.5381 0.513222
100 0.43 99.8337 0.1663
110 0.48 112.7032 -2.45745
120 0.5 117.851 1.790833
130 0.55 130.7205 -0.55423
140 0.59 141.0161 -0.72579
150 0.63 151.3117 -0.87447
160 0.66 159.0334 0.604125
170 0.7 169.329 0.394706
180 0.75 182.1985 -1.22139
190 0.79 192.4941 -1.31268
200 0.83 202.7897 -1.39485
210 0.86 210.5114 -0.24352
220 0.9 220.807 -0.36682
230 0.93 228.5287 0.639696
240 0.95 233.6765 2.634792
Dari hasil Vrms dan Urms, dapat dibuat dalam bentuk grafik untuk memperoleh nilai
persamaan dapat dilihat pada Gambar 4.5.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
43
Gambar 4.5. Grafik nilai Urms Terhadap Vrms
Dari grafik di atas (Gambar 4.5.) dapat diambil persamaan dengan bantuan Excel pada
format trendline. Pada trendline options dipilih linear dan centang display Equation on char
untuk menampilkan hasil persamaan dan display R-squared value on char untuk mengetahui
nilai kepresisian yang didapat. Terlihat bahwa nilai R2 = 0,9991, ini menunjukan bahwa
sensor dapat bekerja dengan baik. Nilai skala presisi memiliki jangkauan -1, 0, 1. Jika nilai
R2 mendekati nilai 1 maka nilai presisinya baik, namun jika nilai R2 mendekati nilai 0 maka
nilai presisinya buruk, dan jika nilai R2 mendekati nilai -1 maka nilai presisi berkebalikan
dari nilai presisi yang sebenarnya.
Pada Tabel 4.1. dapat dihitung nilai error, dimana nilai yang diukur dibandingkan
dengan nilai yang didapat dalam persen. Terlihat bahwa dari nilai 0,304 Volt, nilai error
sebesar -566,283% dan nilai 10 Volt nilai error sebesar 28,267%. Ini menunjukan bahwa
sensor saat membaca nilai minimum sebesar 10 Volt kebawah sudah tidak efektif dan tidak
akurat lagi. Sedangkan untuk pengukuran tegangan maksimum mencapai 240 Volt, sensor
masih dalam jangkauan error yang ditoleransi, error hanya sekitar 2,634%. Untuk membuat
perangkat yang baik dalam mengukur tegangan maka diambil batasan nilai yang dapat dikur
sensor, yaitu dari 20 Volt sampai dengan 240 Volt.
Dari perhitungan dan pengujian yang didapat, dapat disimpulkan bahwa kemampuan
baca sensor tegangan sebesar 97,36%. Angka ini didapat dari 100% dikurangkan dengan
pengambilan nilai rata-rata error hasil baca (100%-2,634%=97,36%). Dengan demikian,
sensor tegangan dapat dikatakan mampu mengukur tegangan dengan akurasi yang baik pada
rentang tegangan yang diukur dari 20 Volt sampai dengan 240 Volt.
y = 257.39x - 10.844R² = 0.9991
0
50
100
150
200
250
300
0 0.2 0.4 0.6 0.8 1
Vrm
s (V
olt
)
Urms (Volt)
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
44
4.1.3. Sensor Arus
Sensor arus yang digunakan dalam penelitian ini menggunakan sensor arus ACS712
10A. Untuk menghindari lonjakan arus makan sensor arus dipilih dengan maksimum arus
sebesar 10 Ampere. Sensor ACS712 ini dapat mengukur nilai arus DC maupun AC. Sensor
ini memiliki sensitivitas sebesar 100mV/A [2], yaitu setiap kenaikan 1 A maka keluaran
sensor sebesar 100mVolt.
Pada Gambar 4.6 dapat dilihat sketch program Arduino IDE untuk pensamplingan
sensor arus.
Gambar 4.6. Sketch Arduino IDE untuk Pensamplingan Arus
Hasil pengukuran sensor arus dapat dilihat pada Tabel 4.2., dimana tegangan tetap
(konstan) sebesar 200 Volt, dengan beban 5 lampu (lampu pijar 60 Watt). Untuk beban
lampu tersebut dirancang rangkaian beban pada Gambar 4.7. Rangkaian beban lampu ini
dirangkai secara paralel untuk mendapatkan nilai arus yang bervariasi. Tegangan 200 Volt
didapat dari variabel tegangan AC dan persamaan daya terhadap tegangan dan arus dapat
dilihat pada Persamaan (2.7).
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
45
Gambar 4.7. Prototipe Rangkaian Beban Listrik 5 Lampu Pijar (60 Watt)
Tabel 4.2. Pengukuran Sensor Arus pada 5 Lampu 60 Watt Saat Tegangan 200 Volt
Multimeter
(Ampere)
Sensor
(Ampere)
Dengan Rumus
(I=W/V) error(%)
0 0 0 0
0.24 0.2 0.3 16.66667
0.5 0.47 0.6 6
0.77 0.8 0.9 -3.8961
1.03 1.09 1.2 -5.82524
1.29 1.36 1.4 -5.42636
Terlihat pada Tabel 4.2. bahwa sensor arus pada perangkat dalam penelitian sudah
dapat bekerja dengan baik, dengan error terbesar adalah saat mengukur arus yang lebih kecil
dari 0,24 Ampere. Secara matematis hasil rata-rata error yang terjadi dalam pengukuran
adalah sebesar 7,56%.
Dari perhitungan dan pengujian yang didapat, dapat disimpulkan bahwa kemampuan
baca sensor arus sebesar 92,44%. Angka ini didapat dari 100% dikurangkan dengan
pengambilan nilai rata-rata error hasil baca (100%-7,56%=92,44%). Dengan demikian,
sensor arus dapat dikatakan mampu mengukur arus dengan akurasi yang baik pada rentang
arus yang diukur dari 0,24 Ampere sampai dengan 1,29 Ampere.
4.2. Pengujian Data Logger
Pengujian ini dilakukan untuk mengetahui kemampuan subsistem data logger
(perangkat keras) dalam menyimpan data dalam bentuk log data. Penyimpanan data ini
dilengkapi dengan akurasi pewaktuan menggunakan RTC DS231 dan digunakan pula LCD
16x2. RTC digunakan untuk mengetahui data yang disimpan pada micro SD Card pada saat
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
46
jam atau waktu tertentu. Ekstensi penyimpanan ini adalah dalam bentuk .csv. Estensi .csv
(comma separated value) adalah ekstensi dimana secara otomatis akan memisahkan dua atau
lebih data dalam bentuk tabel jika terdeteksi ada koma (,) yang memisahkan kedua atau lebih
data tersebut. Ekstensi .csv ini dapat dibuka dengan Excel.
4.2.1. RTC DS3231
Pewaktuan digunakan untuk mengetahui saat kapan suatu data disimpan pada micro
SD Card (kartu memori). Pewaktuan pada penelitian ini menggunakan DS3231. Untuk
sketch program Arduino IDE nya dapat dilihat pada Gambar 4.8.
(a) (b)
Gambar 4.8. Sketch Program Arduino IDE, (a) Bagian Header, dan (b) Bagian Inisialisasi
untuk RTC DS3231
Untuk pengaturan waktu, diatur pada Gambar 4.8.(b), dimana format pengaturan
waktunya adalah, tahun, bulan, tanggal, jam, menit, detik. RTC DS3231 menggunakan
komunikasi I2C dengan NodeMCU. Pengujian RTC dilakukan dengan cara melihat apakah
RTC dapat bekerja secara konstan dalam penghitung waktu, tidak jauh selisihnya dengan
waktu normal. Pada Gambar 4.9. di bawah ditunjukan sketch program Arduino IDE untuk
RTC DS3231.
Gambar 4.9. Loop RTC pada Arduino IDE
Hasil dari sketch program (Gambar 4.8. dan Gambar 4.9.) tersebut dapat dilihat pada
serial monitor. Serial monitor berfungsi untuk mengetahui apakah sketch program yang
dibuat dapat bekerja dengan semestinya. Untuk hasil dari RTC DS3231 dapat dilihat pada
Gambar 4.10.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
47
Gambar 4.10. Hasil Tampilan RTC DS3231 pada Serial Monitor Arduino IDE
4.2.2. LCD 16x2
Pada perangkat keras dalam penelitian ini dibutuhkan penampil hasil baca sensor dan
pewaktuan secara real time. Maka dibutuhkan LCD dengan tampilan karakter 16x2. Untuk
menghubungkan LCD 16x2 dengan NodeMCU, dibutuhkan modul I2C. Ditambahkan
modul I2C pada NodeMCU untuk menghindari kesibukan mikrokontroler yang harus
mengendalikan pin-pin I/O. Pada NodeMCU terdapat pin SDA dan SCL, dan pin SDA serta
SCL ini masing-masing pada pin D1 dan D2 pada NodeMCU.
Pada umumnya modul LCD dikendalikan secara paralel baik untuk jalur data maupun
kontrolnya. Kekurangan pada jalur paralel adalah pada sisi mikrokontrolernya, dimana jalur
paralel akan memakan banyak pin-pin. Setidaknya untuk mengendalikan modul LCD
dibutuhkan 6 atau 7 pin. Maka dari itu, untuk NodeMCU yang memiliki keterbatasan dalam
pin tersebut digunakan modul I2C untuk menampilkan atau mengendalikan tampilan data di
LCD. Pada Gambar 4.11. dan Gambar 4.12. diperlihatkan sketch program Arduino IDE
untuk kendali LCD.
Gambar 4.11. Sketch Program Arduino IDE untuk LCD
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
48
Gambar 4.12. Looping Print Karakter pada LCD
Wire.h adalah header untuk komunikasi I2C, dan LiquidCrystal_I2C.h adalah header
untuk tampilan LCD. Pada Gambar 4.12. terlihat bagaimana cara untuk menampilkan
karakter dari nilai sensor yang diolah dalam mikrokontroler NodeMCU berdasarkan waktu.
Untuk hasil tampilan LCD 16x2 dapat dilihat pada Gambar 4.13.
Gambar 4.13. Tampilan LCD 16x2
4.2.3. Penyimpanan Data Logger
Pengujian penyimpanan data logger bertujuan untuk mengetahui kemampuan SD
Card menyimpan data. Kartu memori yang digunakan untuk menyimpan data berukuran
Micro SD Card. Untuk penyimpanan data tersebut perangkat dilengkapi dengan rangkaian
Micro SD module. Dengan komunikasi Serial Pheripheral Interface (SPI) maka
penyimpanan data pada Micro SD Card membutuhkan berkas pada library SPI. Sketch
program Arduino IDE untuk komunikasi penyimpanan data (Micro SD module) dengan
mikrokontroler (NodeMCU) dapat dilihat pada Gambar 4.14. Data-data yang disimpan
dalam kartu memori ini adalah data pewaktuan dan data dari sensor arus dan sensor
tegangan.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
49
Gambar 4.14. Sketch Arduino IDE untuk Micro SD Card
Pada Gambar 4.14. pertama kali mikrokontroler NodeMCU akan mendeteksi apakah
ada komunikasi secara serial. Jika tidak ada (!Serial) maka mikrokontroler NodeMCU akan
menunggu port serial terkoneksi. Setelah koneksi serial terdeteksi, maka mikrokontroler
NodeMCU akan mendeteksi apakah ada Micro SD Card yang tersambung. Dengan syntax
if(!SD.begin(chipSelect)), maka pada serial monitor akan muncul print (“Card failed, or not
present”), berarti bahwa Micro SD Card tidak terdeteksi. Untuk sebaliknya, mikrokontroler
NodeMCU mendeteksi adanya Micro SD Card dan akan di-print pada serial monitor (“Card
initialized”). Sketch program pada Gambar 4.15. akan menampilkan void loop( ) (fungsi
looping) dari Micro SD Card.
Gambar 4.15. Void Loop ( ) dari Micro SD Card
Pada Gambar 4.15. adalah rutin looping dari Micro SD Card. Pertama, Micro SD Card
akan dibuka untuk menyimpan data. File baru akan diberi nama TA dengan ekstensi .csv,
dan diakhiri dengan kata, FILE_WRITE untuk menulis pada file TA apa yang akan ditulis
atau di-print dalam file TA tersebut. Di dalam file TA.csv tersebut akan di-print hasil bacaan
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
50
sensor serta pewaktuan. Setiap print terdapat tanda pemisah koma (,) ini berfungsi saat
membuka file TA, secara otomatis file tersebut akan terbuka pada sebuah tabel (dapat dibuka
dengan Excel). Untuk lebih jelasnya hasil dari pengujian penyimpanan data logger dapat
dilihat pada Gambar 4.16. di bawah ini.
Gambar 4.16. Hasil Tampilan Micro SD Card dalam Ekstensi .csv
4.3. WiFi ESP8266
Proses pengiriman dari subsistem data logger ke aplikasi Android menggunakan
modul WiFi ESP8266. Untuk mengetahui karakteristik dari modul WiFi ESP8266, dalam
penelitian ini menggunakan ESP8266 seri 01. ESP8266 seri 01 ini dihubungkan dengan
Arduino UNO untuk menjalankan perintah AT Command melalui serial monitor. Pada
Gambar 4.17. dapat dilihat wiring dari ESP8266 seri 01 dengan Arduino UNO dengan
menggunakan perangkat lunak simulasi Proteus. Gambar 4.17. digunakan untuk memberi
perintah AT Command pada ESP8266 menggunakan serial monitor Arduino IDE.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
51
Gambar 4.17. Wiring ESP8266 Seri 01 dengan Arduino UNO
4.3.1. AT Command
Perintah AT Command digunakan untuk mengatur ESP8266. Perintah ini mulai dari
restart hingga pengaturan komunikasi, ESP8266 sebagai Access Point (AP) hingga sebagai
client dalam suatu jaringan nirkabel. Dalam penelitian ini AT Command untuk mengetahui
karakteristik dan respon ESP8266 itu sendiri ketika dimasukan perintah AT Command. Dari
AT Command ini diketahui bagaimana mengatur ESP8266 sebagai interface antara
subsistem data logger dengan aplikasi Android.
Pada pengujian ini, perintah AT Command akan dimasukan kedalam program Arduino
IDE, sehingga tidak perlu memberikan perintah AT Command pada serial monitor.
Fungsinya adalah untuk menerima data dari sensor-sensor tegangan dan sensor arus untuk
ditampilkan pada web browser. Pada pengujian ini dilakukan dengan dua percobaan, yaitu
saat ESP8266 diatur sebagai client dimana ESP8266 akan terkoneksi dengan AP yang
terhubung, yaitu SSID: Transformers, dan Password: bumble bee (tethering smartphone),
dan saat ESP8266 sebagai AP, dimana smartphone atau perangkat browser lainya akan
terhubung pada ESP8266. Gambar 4.18. menunjukan wiring ESP8266 serial 01 dengan
Arduino UNO untuk mengirim data analog dari Arduino ke web browser. Analog in 0 (A0)
berupa sensor tegangan, dan Analog in 1 (A1) berupa sensor arus.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
52
Gambar 4.18. Wiring ESP8266 dengan Arduino UNO Serta Dua Masukan Sensor
A. ESP8266 Sebagai Access Point (AP)
Pada percobaan ini, ESP8266 diatur sebagai Access Point (AP), sedangkan perangkat
browser seperti smartphone sebagai client. Untuk sketch program Arduino IDE nya dapat
dilihat pada Gambar 4.19. di bawah ini.
Gambar 4.19. Sketch Arduino IDE ESP8266 Seri 01
Pada Gambar 4.19. ditunjukan bahwa Arduino membutuhkan berkas software serial.
Komunikasi antara ESP8266 dengan Arduino UNO menghubungkan pin Tx dan Rx pada
ESP8266 masing-masing terhubung pada pin 2 dan pin 3 pada Arduino UNO. Untuk
perintah AT Command dimasukan pada sketch program Arduino IDE, dapat dilihat pada
Gambar 4.20. di bawah ini.
Gambar 4.20. Setup Perintah AT Command ESP8266
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
53
Pada Gambar 4.20. pengaturan ESP8266 diatur dengan memberi perintah AT
Command pada sketch program Arduino IDE. Setelah diatur sebagai Access Point (AP),
maka Arduino UNO akan bekerja secara rutin dengan mengolah hasil baca kedua sensor
analog. Kedua sensor itu, yaitu sensor tegangan dan sensor arus. Jika ada yang terkoneksi
dengan AP ESP8266 dan mengakses pada web browser dengan memberikan alamat
192.168.4.1 maka secara non-autorefresh Arduino UNO melalui ESP8266 mengirim hasil
baca sensor tegangan dan sensor arus. Untuk lebih jelasnya sketch program dapat dilihat
pada Gambar 4.21.
Gambar 4.21. Sketch Program Arduino IDE Untuk Rutin Jika ada Refresh Web dengan
Alamat 192.168.4.1
Hasil dari sketch program Arduino IDE untuk ESP8266 sebagai AP dengan
penyimpanan data logger (RTC DS1307, LCD, SD Card) dapat dilihat pada serial monitor.
Dimana mikrokontroler dapat bekerja dengan baik. Pada Gambar 4.22. dapat dilihat respon
dari ESP8266 pada serial monitor dan Gambar 4.23. adalah respon pada serial monitor saat
ada yang akses web dengan alamat 192.168.4.1.
Gambar 4.22. Respon ESP8266 pada Serial Monitor
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
54
Gambar 4.23. Respon pada Serial Monitor Saat Akses Web 192.168.4.1
Hasil dari percobaan ini, dapat dilihat pada Gambar 4.24. dimana pengiriman melalui
modul WiFi ESP8266 Seri 01 dapat dilakukan dengan baik. Pengiriman hasil sensor
tegangan dan sensor arus ke web server yang terkoneksi pada AP ESP8266 membutuhkan
waktu tunda rata-rata 2 hingga 3 detik.
Gambar 4.24. Hasil Pengiriman Data Sensor pada Web Browser 192.168.4.1
B. ESP8266 Sebagai Client
Berbeda dengan pengujian sebelumnya, yaitu ESP8266 sebagai AP, maka pada
pengujian ini ESP8266 diatur sebagai client. Untuk mengatur ESP8266 sebagai client maka
sama halnya dengan pengaturan ESP8266 sebagai AP. Pengaturan dilakukan dengan cara
memberikan perintah AT Command pada sketch program Arduino IDE. Program Arduino
IDE untuk pengaturan ini dapat dilihat pada Gambar 4.25.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
55
Gambar 4.25. Pengaturan ESP8266
Sebagai client, ESP8266 harus terkoneksi pada AP atau tethering smartphone. Maka
dari itu, diatur tethering pada smartphone. Gambar 4.26. merupakan pengaturan dan
membuat smartphone sebagai Access point (AP).
Gambar 4.26. Tethering Smartphone Sebagai Access Point
Untuk mengirim data sensor ke web browser, ESP8266 secara otomatis akan
terkoneksi ke smartphone yang memiliki tethering dengan nama SSID: Transformers dan
Password: bumble bee. Setelah WiFi terkoneksi maka pengiriman data dapat dilakukan.
Pada Gambar 4.27.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
56
Gambar 4.27. Respon pada Serial Monitor
Setelah semua siap (ESP8266 meminta refresh halaman web browser) maka web
browser di-refresh dengan alamat 192.168.43.100. Untuk respon ESP8266 pada serial
monitor setelah refresh halaman web browser dapat dilihat pada Gambar 4.28 dibawah.
Gambar 2.28. Respon pada Serial Monitor Setelah Refresh Web Browser
Untuk hasil dari percobaan ini (ESP8266 sebagai client), dapat dilihat pada Gambar
4.29. Dimana data dari Arduino UNO dikirim ke web browser dengan menggunakan modul
WiFi ESP8266.
Gambar 4.29. Hasil Tampilan Pengiriman Data pada Web Browser
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
57
4.3.2. Konsumsi Arus
Percobaan ini untuk mengetahui seberapa besar arus yang dikonsumsi oleh ESP8266
saat sebelum di-upload program Arduino IDE, hingga mode pengiriman data. Pada Tabel
4.3. ditunjukan hasil dari percobaan ini, dan pada Gambar 4.30. adalah gambar konsumsi
arus ESP8266 berdasarkan datasheet.
Tabel 4.3. Konsumsi Arus ESP8266
Parameter Konsumsi Arus (mA)
Kondisi mati 0
Kondisi menyala, sebelum di-upload program 30.4 ~ 34.6
Setting Status ESP8266 (Kirim AT Command) 79.1~158.0
Kirim data ke web browser 79,1~90,0
Gambar 4.30. Konsumsi Arus ESP8266 Berdasarkan Datasheet [14]
Terlihat pada Tabel 4.3. bahwa konsumsi arus ESP8266 tidak tetap. Pada saat sebelum
ESP8266 di-upload program Arduino IDE, konsumsi arus kecil, yaitu hanya sebesar kurang
lebih 30,4 sampai dengan 34,6 mA. Pada saat diatur menggunakan perintah AT Command,
konsumsi arus semakin bertambah, nilainya yaitu sebesar kurang lebih 79,1 sampai dengan
158,0 mA. Disini terjadi lonjakan konsumsi arus, dimana sebelum dimasukan program arus
yang dibutuhkan kecil, sedangkan saat diberi perintah AT Command konsumsi arus
meningkat. Pada saat pengiriman data ke web browser konsumsi arus kisaran antara 79,1
hingga 90,0 mA. Ini membuktikan bahwa, untuk menggunakan ESP8266 sebagai perangkat
aplikasi elektronik dibutuhkan suatu kontrol arus, untuk mengatur penggunaan konsumsi
arus yang terintegrasi.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
58
4.4. Aplikasi Android
Aplikasi Android dalam penelitian ini dirancang dan dibuat dengan program Android
Studio. Pembuatan aplikasi ini bertujuan untuk memudahkan dalam memonitoring, dimana
nilai sensor akan secara langsung dikirim ke aplikasi. Pada Gambar 4.31. merupakan hasil
dari rancangan dan pembuatan aplikasi sistem data logger peralatan elektronik berbasis
Android.
Gambar 4.31. Aplikasi Android
Untuk dapat terkoneksi dengan jaringan WiFi maka pada pemrograman aplikasi di
Android Studio digunakan perizinan untuk mengakses ke internet. Fungsi ini adalah supaya
aplikasi dapat mengakses data dari modul WiFi NodeMCU. Untuk lebih jelas dapat dilihat
pada Gambar 4.32. adalah sketch program ke internet.
Gambar 4.32. Sketch Android untuk Koneksi ke Internet
Pengujian aplikasi Android dilakukan dengan menghubungkan modul WiFi
NodeMCU ke Access Point (AP) tethering smartphone. Setelah NodeMCU terkoneksi pada
tethering smartphone selanjutnya buka aplikasi sistem data logger peralatan elektronik.
Setelah dibuka, akan muncul tampilan awal aplikasi dapat dilihat pada Gambar 4.31.
sebelumnya. Pada aplikasi tersebut terdapat text box. Pada text box tersebut diketik nomor
IP, dimana NodeMCU terkoneksi pada AP. Setelah diketik, maka klik button mulai baca.
Untuk melihat hasil dari pengiriman data dari NodeMCU akan ditampilkan setiap 2 detik.
Pengujian ini dapat dilihat pada Tabel 4.4.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
59
Tabel 4.4. Pengujian Pengiriman Data Secara Autorefresh pada Aplikasi Android
Pengukuran Multimeter Hasil Autorefresh Aplikasi 2 detik
Tegangan: 210,12 Volt
Arus: 0.20 Ampere
Tegangan: 209.03 Volt
Arus: 0,50 Ampere
Data yang dikirim (pada serial monitor):
Pada waktu 11:06:19, terjadi proses pengiriman ke aplikasi Android dengan besar
tegangan yang terukur menggunakan multimeter sebesar 210,12 Volt dan arus sebesar 0,20
Ampere. Proses penerimaan data oleh aplikasi Android berlangsung per 2 detik, maka pada
aplikasi Android akan menerima data pada waktu 11:06:21 dengan data diterima dapat
dilihat pada Tabel 4.4. di atas (data yang dikirim ke aplikasi Android terlihat pada serial
monitor besar tegangan 209,07 Volt dan arus 0,16 Ampere). Proses pengiriman berlangsung
dengan data yang berbeda, dengan pengiriman selanjutnya adalah tegangan 209,03 Volt dan
arus 0,50 Ampere. Data akan diterima aplikasi Android pada waktu 11:06:22 dengan data
yang diterima dapat dilihat pada Tabel 4.4 (data yang dikirim ke aplikasi Android terlihat
pada serial monitor besar tegangan 207,74 Volt dan arus 0,47 Ampere). Pengiriman data
secara autorefresh pada aplikasi Android berhasil dengan penerimaan data berkala setiap 2
detik sekali dalam menampilkan data.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
60
4.5. Hasil Pengujian Sistem Keseluruhan
Perangkat sistem data logger yang telah dibuat dalam penelitian ini meliputi beberapa
subsistem. Terdapat tiga subsistem utama dalam sistem data logger peralatan elektronik
berbasis Android, yaitu subsistem prototipe peralatan elektronik, subsistem data logger,
subsistem pengirim, dan subsistem penerima (aplikasi Android). Pengujian dilakukan pada
sub-subsistem yang telah dibahas masing-masih pada subbab sebelumnya, dan dilakukan
juga pengujian pada saat setelah perangkat sistem data logger ini selesai dibuat. Untuk
pengujian perangkat, meliputi pengujian proses pengiriman data pada variasi jarak untuk
tegangan dan arus (beban) yang bervariasi dan penyimpanan data logger. Pengujian
pengiriman data bertujuan untuk mengetahui jangkauan NodeMCU sebagai modul WiFi
dalam proses pengiriman ke aplikasi Android, dan pengujian penyimpanan data dilakukan
untuk mengetahui apakah perangkat keras bisa menyimpan data.
Perangkat keras sistem data logger peralatan elektronik ini berbentuk persegi panjang,
dengan panjang 18 cm, lebar 11 cm, dan tinggi 6 cm. Gambar 4.33. menunjukan perangkat
keras sistem data logger peralatan elektronik berbasis Android.
(a) (b)
Gambar 4.33. Perangkat Keras Sistem Data Logger, (a) Perangkat Tampak Kanan, (b)
Perangkat Tampak Kiri
Pada Gambar 4.33. adalah hasil dari perancangan sistem data logger peralatan
elektronik berbasis Android yang telah dibuat. Pada bagian kanan (Gambar 4.33.a)
menampilkan dua pasang pin. Dua pasang pin ini masing-masing adalah untuk mengukur
besar arus dan besar tegangan menggunakan multimeter. Fungsinya adalah untuk
membandingkan hasil baca sensor dengan alat ukur yang telah standar (multimeter) dalam
pengambilan data. Pada bagian kiri (Gambar 4.33.b) menampilkan dua buah slot. Masing-
masing slot berfungsi untuk slot Micro SD Card dan slot upload untuk memasukan program
ke mikrokontroler modul WiFi NodeMCU ESP8266MOD.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
61
4.5.1. Pengujian Penyimpanan Data Logger
Pada pengujian ini, dilakukan pengambilan data secara keseluruhan dari penyimpanan
data, hingga pengiriman data ke aplikasi Android. Pada Tabel 4.5. menampilkan hasil dari
pengujian penyimpanan data setiap 5 menit. Penyimpanan data ini dengan ekstensi .csv.
Pengujian dilakukan pada peralatan elektronik (5 lampu pijar 60 Watt) yang dinyalakan
bervariasi maka dapat dilihat penggunaan energi listrik yang terjadi, yaitu semakin
meningkat pada periode waktu tertentu.
Tabel 4.5. Hasil Penyimpanan Data Logger
Tanggal Waktu Arus (A) Tegangan (V) E(WS)
6/1/2017 7:55:00 0.16 196.63 6813.64
6/1/2017 8:00:00 0.52 200.63 32407.74
6/1/2017 8:05:00 0.82 193.97 70085.06
6/1/2017 8:10:00 1.09 196.63 119186.20
6/1/2017 8:15:00 1.42 203.30 185072.00
6/1/2017 8:20:00 0.82 204.18 226498.50
6/1/2017 8:25:00 0.27 198.41 239567.10
6/1/2017 8:30:00 0.51 201.96 263769.60
6/1/2017 8:35:00 0.00 181.53 264247.60
6/1/2017 8:40:00 0.15 198.41 270985.30
6/1/2017 8:45:00 0.73 194.41 304311.20
6/1/2017 8:50:00 0.46 191.75 328372.30
6/1/2017 8:55:00 1.04 194.85 375199.30
6/1/2017 9:00:00 0.15 197.96 387057.30
Pengambilan data ini berdasarkan pengukuran besarnya arus dan tegangan pada
setiap detik. Hasil dari pengukuran sensor tersebut akan dikalikan setiap detik sehingga
didapat daya pada setiap detik. Energi listrik adalah besarnya konsumsi daya total yang
dibutuhkan alat elektronik untuk menyala pada rentang waktu tertentu. Maka, hasil dari
penyimpanan data logger setiap 5 menit ini adalah hasil dari penjumlahan daya tiap 1 detik.
Pada Gambar 4.34. memperlihatkan tampilan pengukuran arus dan tegangan untuk
mendapatkan besar energi yang dibutuhkan pada peralatan elektronik.
Gambar 4.34. Pengukuran Arus dan Tegangan Tiap 1 Detik
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
62
Grafik antara penggunaan energi terhadap waktu dapat dilihat pada Gambar 4.35.
Penggunaan energi semakin meningkat linear dengan bertambahnya waktu dalam
pengukuran.
Gambar 4.36. Grafik Penggunaan Energi Versus Waktu
4.5.2. Pengujian Pengiriman Data
A. Jarak Koneksi
Pengujian ini dilakukan untuk mengetahui kekuatan sinyal jangkauan modul WiFi
ESP8266 serta seberapa jauh jarak yang dapat dijangkau oleh ESP8266. Kekuatan sinyal
ditandai dengan seberapa besar dBm-nya. Pada Tabel 4.6. dapat dilihat bahwa kekuatan
sinyal ESP8266 terhadap jarak yang masih dapat dijangkau oleh ESP8266.
Tabel 4.6. Kekuatan Sinyal AP (ESP8266) Terhadap Jarak
Jarak ESP8266 terhadap client (m) Kekuatan Sinyal (dBm)
1 -22
5 -40
10 -58
15 -60
20 -64
25 -69
40 -72
Terlihat pada Tabel 4.6. dan Gambar 4.36. bahwa kekuatan sinyal berbanding terbalik
dengan jarak yang dijangkau oleh WiFi ESP8266. Saat jarak AP (ESP8266) terhadap client
(penerima AP/smartphone) berjarak 1 m, maka besarnya kekuatan sinyal adalah -22 dBm.
Kekuatan sinyal sebesar -22 dBm berarti bahwa terjadi redaman/loss. Tanda negatif (-)
menunjukan terjadinya loss pada sebuah jaringan WiFi. Besar kecilnya dBm menunjukan
kekuatan sinyal yang berkaitan dengan daya sistem. Semakin kecil nilai dBm yang terdeteksi
0
50000
100000
150000
200000
250000
300000
350000
400000
450000
0 10 20 30 40 50 60 70
Ener
gi (
Wat
tSek
on
)
Waktu (Menit)
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
63
maka semakin besar kekuatan sinyal pancaran ESP8266. Gambar 4.36. menunjukan grafik
kekuatan sinyal terhadap jarak yang dijangkau ESP8266.
Gambar 4.36. Kekuatan Sinyal ESP8266 Terhadap Jarak
B. Pengiriman Data ke Aplikasi Android
Proses pengiriman data dari sensor tegangan dan sensor arus melalui modul WiFi
NodeMCU ESP8266MOD. Pengiriman dilakukan secara real time, dimana pada aplikasi
Android digunakan auto-refresh selama 2 detik. Pada Gambar 4.37. ditampilkan program
Arduino IDE untuk pengiriman data.
Gambar 4.37. Sketch Program Arduino IDE untuk Pengiriman Data ke Aplikasi Android
Dari Gambar 4.37. dapat dilihat bahwa terdapat variabel s. Variabel s ini digunakan
untuk inisialisasi pada aplikasi Android. Pada aplikasi Android akan di-print nilai yang
terdapat pada variabel s. Nilai pada variabel s ini adalah nilai dari sensor tegangan dan sensor
arus. Untuk hasil tampilan aplikasi maka dapat dilihat pada Gambar 4.38. dimana hasil dari
pengiriman menggunakan modul WiFi NodeMCU ESP8266MOD ditampilkan pada aplikasi
Android.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
64
Gambar 4.38. Hasil pengiriman Data ke Aplikasi Android
Aplikasi Android digunakan untuk memonitoring seberapa besar arus dan tegangan
yang terukur pada peralatan elektronik (5 lampu pijar 60 Watt). Pengiriman dilakukan
dengan berbagai variasi jarak. Pengiriman data ini berdasarkan jarak antara Access Point
(AP), yaitu tethering Smartphone dengan Client, yaitu perangkat keras data logger. Variasi
jarak pengujian pengiriman data dilakukan mulai dari 1 meter hingga koneksi WiFi terputus,
yaitu 40 meter. Gambar 4.39. menunjukan gambaran denah pengujian pengiriman data.
Gambar 4.39. Ilustrasi Pengujian Pengiriman Data
Pengujian dilakukan di lorong laboratorium Teknik Tenaga Listrik, Teknik Elektro,
Universitas Sanata Dharma. Panjang lorong tersebut adalah 70 meter, namun dalam
pengujian dilakukan dengan batas 40 meter. Tabel 4.7. menunjukan hasil pengujian
pengiriman data ke aplikasi Android.
Tabel 4.7. Hasil Pengiriman Data ke Aplikasi Android
Jarak (meter) Tampilan Aplikasi Android Keterangan
1
1 Lampu 60 Watt
Arus: 0.23 Ampere
Tegangan: 200 Volt
5
1 Lampu 60 Watt
Arus: 0.23 Ampere
Tegangan: 200 Volt
Lab. TTL
40 meter
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
65
Tabel 4.7. (Lanjutan) Hasil Pengiriman Data ke Aplikasi Android
10
1 Lampu 60 Watt
Arus: 0.23 Ampere
Tegangan: 200 Volt
15
1 Lampu 60 Watt
Arus: 0.23 Ampere
Tegangan: 200 Volt
20
1 Lampu 60 Watt
Arus: 0.23 Ampere
Tegangan: 200 Volt
25
1 Lampu 60 Watt
Arus: 0.23 Ampere
Tegangan: 200 Volt
40
1 Lampu 60 Watt
Arus: 0.24 Ampere
Tegangan: 200 Volt
Tabel 4.8. Status Koneksi Antara Access Point dengan Client
Jarak Koneksi (meter) Status
1 Terkoneksi
5 Terkoneksi
10 Terkoneksi
15 Terkoneksi
20 Terkoneksi
25 Terkoneksi
40 Terkoneksi
45 Terputus
50 Terputus
Pada Tabel 4.8. menunjukan bahwa pada saat jarak lebih kecil dari 40 meter status
koneksi adalah terkoneksi. Berbeda pada saat jarak bertambah, yaitu pada saat 45 meter
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
66
koneksi WiFi sudah terputus dan proses pengiriman tidak dapat dilakukan. Dari kondisi ini,
pengiriman dengan modul WiFi NodeMCU 8266MOD dapat dilakukan dengan jarak efisien
maksimum adalah kurang lebih 40 meter.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
67
BAB V
KESIMPULAN DAN SARAN
5.1. Kesimpulan
Dari hasil percobaan, pengujian dan pengambilan data pada sistem data logger
peralatan elektronik berbasis Android, didapat kesimpulan sebagai berikut:
1. ESP8266 seri 01 dapat bekerja dengan baik, sebagai Access Point (AP) atau sebagai
client untuk proses pengiriman data ke web browser.
2. Selain sebagai modul WiFi ESP8266MOD, NodeMCU secara terintegrasi dengan
mikrokontroler dapat mengolah data, dan mengirim data.
3. NodeMCU sebagai client dapat mengirim data dari kedua sensor (sensor tegangan dan
sensor arus) ke aplikasi android setiap 2 detik.
4. Data logger dapat bekerja dan menyimpan data dengan menggunakan NodeMCU
sebagai pengolahan data dari sensor arus dan sensor tegangan dengan ekstensi .csv.
5. Tingkat keberhasilan sensor arus sebesar 92,44%, dan sensor tegangan sebesar
97,36%.
5.2. Saran
Saran-saran untuk pengembangan sistem data logger peralatan elektronik berbasis
Android selanjutnya adalah:
1. Mengoptimalkan power control consumption pada modul WiFi ESP8266 seri 01 untuk
lebih dikembangkan pada aplikasi teknologi berbasis wireless, mengingat bahwa arus
teknologi sekarang mengutamakan low cost namun berdayaguna.
2. Aplikasi Android dioptimalkan dengan menambahkan beberapa fitur yang mendukung
berkomunikasi dengan NodeMCU maupun ESP8266 seri 01 pada aplikasi kontrol
ataupun monitoring sebuah sistem.
3. Pengembangan perangkat sistem data logger peralatan elektronik berbasis Android ini
belum sepenuhnya diuji pada semua perangkat elektronik, maka dari itu untuk
menambah keakurasian pembaca perangkat dapat dilakukan pengujian-pengujian pada
perangkat elektronik yang lebih bervariasi lagi.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
68
DAFTAR PUSTAKA
[1] Arianto, Luluk, 2016, Sistem Data Logger Kincir Angin Propeler Berbahan Kayu,
Tugas Akhir, Jurusan Teknik Elektro, FST, Universitas Sanata Dharma, Yogyakarta.
[2] Allegro, 2013, ACS712 Fully Integrated, Hall Effect-Based Linear Current Sensor
IC with 2.1 kVRMS Isolation and a Low-Resistance Current Conductor, Allegro
MicroSystems, LLC, Allegromicro.com.
[3] Jr,H.H.Wiliam, Kemerly, J.E., Durbin, S.M., 2005, Edisi Keenam Rangkaian Listrik
Jilid 1, Erlangga, Jakarta.
[4] ----,ZMPT101B (ZMPT107) voltage transformer operating guide,----.
[5] Interplus Industry Co. Ltd. http://www.interplus -industry. fr/index.php?option
=com _content&view=article&id=52&Itemid=173&lang=en, diakses pada 21
Oktober 2016.
[6] Andrianto, Heri, Darmawan, Aan, 2016, ARDUINO Belajar Cepat dan
Pemrograman, INFORMATIKA Bandung, Bandung.
[7] Arduino. https://www.arduino.cc/en/Main/ArduinoBoardUno, diakses tanggal 14
Oktober 2016.
[8] Schmit, Scott, 2014, Frequently Asked Questions-Embedded Systems Design,
Atlassian Confluence 5.7.4, Team Collaboration Software.
[9] NodeMCU Documentation. https://nodemcu.readthedocs.io/en/master/, diakses
tanggal 15 Januari 2017.
[10] ----, August 10, 2016, SD Specifications Part 1 Physical Layer Simplified
Specification Version 5.00, Technical Committee SD Card Association.
[11] ----, 2013, Manual Micro SD Card Adapter, www.indo-ware.com.
[12] ----, 2015, Extremely Accurate I2C-Integrated RTC/TCXO/Crystal DS3231, Maxim
Integrated Product, Inc, www.maximintegrated.com
[13] ----, ----, Spesification for LCD Module 1602-A1 (V1.2), Shenzen Eone Electronic,
CO., LTD.
[14] ----, 2015, ESP8266EX Datasheet Version 4.3, Espressife Systems IOT Team.
[15] Afdhal, Elizar, 2014, IEEE802.11 ac sebagai Standar Pertama untuk Gigabit
Wireless LAN, Jurnal Rekayasa Elektronika, Vol. 11, No. 1, hal 36-44.
[16] Android Studio, https://developer.android.com/studio/intro/index.html, diakses pada
tanggal 23 Apri 2017.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
69
[17] ----, 2016, CD4066 CMOS Quad Bilateral Switch, Texas Instruments Incorporated.
[18] ----, 2005, HD74LS04/HD74LS05 Hex Inverters/Hex Inverters (with Open Collector
Output), Renesas Technology Corp, Japan.
[19] GitHub, Inc. https://github.com/nodemcu/nodemcu-devkit, diakses tanggal 4 April
201
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
70
LAMPIRAN I
Manual Book (Langkah penggunaan) Perangkat
Untuk menjalankan perangkat Sistem Data Logger Peralatan Elektronik Berbasis
Android ini, dapat mengikuti langkah-langkah berikut:
1. Sambungkan perangkat keras Sistem Data Logger ini ke sumber AC, dengan cara
hubungkan kontak tusuk pada perangkat ke kotak kontak pada sumber AC (sumber
listrik).
2. Siapkan koneksi WiFi, dengan membuat Access Point (AP) pada tethering smartphone
(hotspot seluler), dan setting konfigurasi tethering tersebut: SSID: “Transformers”,
Password: “bumble bee”.
3. Nyalakan perangkat keras dengan sumber tegangan DC sebesar 5 Volt, tunggu
beberapa saat proses sedang bekerja, dari deteksi SD Card, konfigurasi RTC, hingga
perangkat keras terhubung dengan tethering smartphone.
4. Perhatikan pada konfigurasi hotspot seluler sebagai Access Point (AP) tersebut apakah
WiFi ESP8266 telah terkoneksi, perangkat keras terkoneksi dengan nama:
ESP_0658E5 (default) jika belum diubah nama client (ESP8266) tersebut pada
konfigurasi hotspot seluler.
5. LCD akan aktif, dan sambungkan peralatan elektronik yang akan diukur, dengan
menghubungkan kontak tusuk pada beban listrik ke kotak kontak yang tersedia pada
perangkat keras.
6. Untuk proses pengiriman ke aplikasi Android, buka aplikasi Sistem Data Logger
Peralatan Elektronik Berbasis Android dengan mode layar landscape.
7. Pada bagian bawah aplikasi ketik alamat IP dimana perangkat keras terhubung ke
tethering smartphone, IP: 192.168.43.54 kemudian tekan tombol: MULAI BACA
pada aplikasi untuk memulai pengiriman.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
71
LAMPIRAN II
AT Command ESP8266 Seri 01 dengan Arduino UNO
Gambar LII-1. Wiring ESP8266 Seri 01 dengan Arduino UNO
Tabel LII-1. Wiring ESP8266 dengan Arduino UNO
ESP8266 Seri 01 Arduino UNO
VCC +3,3 Volt Out LM1117 3,3 Volt, in VCC +5Volt
GND GND
CH_PD Out LM1117
Tx Pin Tx
Rx Pin Rx
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
72
Tabel LII-2. AT Command dan Respon pada Serial Monitor
AT Command Respon ESP8266
AT (Working)
Keterangan: AT awal mengaktifkan ESP8266
AT+RST (Restart)
Keterangan: restart ESP8266, pada AT ini
ditunjukan tempat produksi ESP8266, yaitu
Ai-Thinker Technology CO.,Ltd.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
73
AT+GMR (Firmware Version)
Keterangan: mengetahui versi firmware dari
ESP8266, diproduk pada tanggal 11
September 2015
AT+CWLAP (List access point)
Keterangan: Ada 2 AP yang terdeteksi, yaitu
SSID: Andromax-M2Y-F466, dan SSID:
Transformers
AT+CWJAP?
Keterangan: ESP8266 telah terkoneksi ke
SSID: Transformers, jika tidak terkoneksi
maka akan muncul No AP
AT+CWJAP=”Transformers”,”bumble bee”
(joint AP)
Keterangan: ESP8266 koneksi ke SSID:
Transformers
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
74
AT+CWQAP (Quit AP)
Keterangan: ESP8266 memutuskan
sambungan dengan AP
AT+CIFSR (Get IP)
Keterangan: ESP8266 memperoleh IP, IP
sebagai AP, dan IP sebagai STA, serta MAC
AT+CWSAP?
Keterangan: ESP8266 menampilkan SSID dan
Password AP
AT+CWSAP=”ESP8266”,”1234567890”,11,0
(Set parameter AP)
Keterangan: ESP8266 diatur sebagai AP,
dengan SSID: ESP8266, dan
password:1234567890
AT+CWMODE? (Wifi Mode)
AT+CWMODE=1/2/3
Keterangan: 1 STA, 2 AP, 3 Both, pada respon
muncul 3, berarti ESP8266 sebagai STA dan
AP
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
75
AT+CIPMUX? (TCP/UDP Connection)
AT+CIPMUX=0/1
Keterangan: 0 single, 1 multiple, pada respon
ESP8266 muncul 0, berarti ESP8266 single
AT=CIPSERVER=mode,port (Set as server)
Keterangan: ESP8266 sebagai server degan
mode 0 close, atau mode 1 open, port default
80
Refresh web browser dengan alamat:
192.168.43.100
AT+CIPSEND=0,56 (Send data)
Keterangan: ESP8266 mengirim data karakter,
dengan jumlah 56 karakter
SISTEM DATA LOGGER PERALATAN
ELEKTRONIK BERBASI ANDROID
Keterangan: ketik pada serial monitor karakter
yang akan dikirim ke web browser
AT+CIPCLOSE=0 (send close)
Keterangan: selalu diakhiri dengan AT ini
untuk mengirim data
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
76
Lihat tampilan di web browser dengan alamat:
192.168.43.100
Keterangan: Karakter yang dikirim akan
ditampilkan pada web browser
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
77
Lampiran III
ESP8266 Sebagai Client dalam Mengirim Data ke Web Browser
Gambar LIII-1. Wiring ESP8266 Sebagai Client Pengiriman Data
Tabel LIII-1. Wiring ESP8266 Sebagai Client Pengiriman Data
ESP8266 Seri 01 Arduino UNO
Tx Pin 2
Rx Pin 3
CH_PD VCC +3,3 Volt from LM1117
VCC VCC +3,3 Volt from LM1117
GND GND
- Pin A0 (Voltage Sensor)
- Pin A1 (Current Sensor)
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
78
Program LIII-1. ESP8266 Seri 01 Sebagai Client dengan Arduino IDE
1. #include<SoftwareSerial.h> //header komunikasi serial
2.
3. SoftwareSerial client(2,3);//2—Tx, 3—Rx
4.
5. String s=""; //webpage
6. int i=0, k=0;
7. int x=0;
8. String readString;
9. boolean No_IP=false;
10. String IP="";
11.
12. /*inisialisasi pin sensor*/
13. const int sensortegangan = A0; //pin sensor tegangan
14. const int sensorarus = A1; //pin sensor arus
15.
16. /*inisialisasi nilai sensor*/
17. double Voltage = 0;
18. double V = 0;
19. double Vrms = 0;
20.
21. /*sensitivitas sensor = 100 mV/A*/
22. int mVperAmp = 100;
23.
24. double Current = 0;
25. double I = 0;
26. double Irms = 0;
27.
28. void setup()
29. {
30. Serial.begin(115200);//start serial
31. client.begin(115200);
32. pengaturan_wifi();//memanggil fungsi pengaturan_wifi()
33. Serial.println("Good job Florus...");
34. }
35.
36. void pengaturan_wifi() //fungsi pengaturan_wifi
37. {
38. kirim_command_wifi("AT",100); //AT Command pertama
39. kirim_command_wifi("AT+RST",1000);//reset ESP8266
40. kirim_command_wifi("AT+CWMODE=3",100); //mode esp8266,0- query,1-
station,2-access point,3-keduanya
41. kirim_command_wifi("AT+CWQAP",100); //mendeteksi apakah ada AP
42. periksa_IP(5000); //memanggil fungsi periksa_IP()
43. if(!No_IP) //jika tidak terdeteksi IP
44. {
45. Serial.println("koneksikan wifi....");
46. kirim_command_wifi("AT+CWJAP=\"Transformers\",\"bumble
bee\"",7000); //koneksi ke WiFi HP, dengan
SSID=Transformers dan PASSWORD=bumble bee
47. }
48. else //else nope
49. {
50. }
51. Serial.println("wifi telah terkoneksi");
52. memperoleh_IP(); //memanggil fungsi memperoleh_ip()
53. kirim_command_wifi("AT+CIPMUX=1",100); //TCP multiple, 0=single,
1=multiple
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
79
54. kirim_command_wifi("AT+CIPSERVER=1,80",100); //0=close server,
1=open server
55. }
56.
57. void kirim_command_wifi(String cmd, int t) //fungsi
kirim_command_wifi
58. {
59. int temp=0, i=0;
60. while(1)
61. {
62. Serial.println(cmd);
63. client.println(cmd);
64. while(client.available())
65. {
66. if(client.find("OK"))
67. i=8;
68. }
69. delay(t);
70. if(i>5)
71. break;
72. i++;
73. }
74. if(i==8)
75. Serial.println("OK");
76. else
77. Serial.println("Error");
78. }
79.
80. void periksa_IP(int t1) //fungsi periksa_IP
81. {
82. int t2=millis();
83. while(t2+t1>millis())
84. {
85. while(client.available()>0)
86. {
87. if(client.find("WIFI GOT IP"))
88. {
89. No_IP=true;
90. }
91. }
92. }
93. }
94.
95. void memperoleh_IP() //fungsi memproleh_IP
96. {
97. IP="";
98. char ch=0;
99. while(1)
100. { 101. client.println("AT+CIFSR"); 102. while(client.available()>0) 103. { 104. if(client.find("STAIP,")) 105. { 106. delay(100); 107. Serial.print("IP Address:"); 108. while(client.available()>0) 109. { 110. ch=client.read(); 111. if(ch=='+')
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
80
112. break; 113. IP+=ch; 114. } 115. } 116. if (ch=='+') 117. break; 118. } 119. if(ch=='+') 120. break; 121. delay(1000); 122. } 123. Serial.print(IP); 124. Serial.print("Port:"); 125. Serial.println(80); 126. } 127. 128. void loop() 129. { 130. /*void loop untuk sensor tegangan*/ 131. Voltage = getVPP(); 132. V = (Voltage/2.0) *0.707; 133. 134. /*Kalibrasi sensor*/ 135. Vrms = (((247.27*V)-7.0872)/0.9903)+2.4; 136. /*nilai tegangan yang terukur*/ 137. Serial.print("Tegangan AC = "); 138. Serial.print(Vrms); 139. Serial.print(" Volt"); 140. 141. /*void loop untuk sensor arus*/ 142. Current = getIPP(); 143. I = (Current/2.0)*0.707; 144. Irms = (I*1000)/mVperAmp; 145. Serial.print(" Arus AC = "); 146. Serial.print(Irms); 147. Serial.println(" Ampere"); 148. 149. k=0; 150. Serial.println("Refresh halaman..."); 151. while(k<100) 152. { 153. k++; 154. while(client.available()) 155. { 156. if(client.find("0,CONNECT")) 157. { 158. Serial.println("Start printing"); 159. Send(); //memanggil fungsi send() 160. Serial.println("Done printing"); 161. delay(1000); 162. } 163. } 164. delay(1000); 165. } 166. } 167. 168. /*mendapatkan nilai vpp dengan proses pensamplingan*/ 169. float getVPP() 170. { 171. float resultV;
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
81
172. int readValueV; 173. int maxValueV = 0; 174. int minValueV = 1024; 175. 176. uint32_t start_time = millis(); 177. while((millis()-start_time) < 1000) 178. { 179. readValueV = analogRead(sensortegangan); 180. if (readValueV > maxValueV) 181. { /*record the maximum sensor value*/ 182. maxValueV = readValueV; 183. } 184. if (readValueV < minValueV) 185. { /*record the maximum sensor value*/ 186. minValueV = readValueV; 187. } 188. } // Subtract min from max 189. resultV = ((maxValueV - minValueV) * 5.0)/1024.0; 190. return resultV; 191. } 192. 193. /*mendapatkan nilai ipp dengan pensamplingan*/ 194. float getIPP() 195. { 196. float resultA; 197. int readValueA; 198. int maxValueA = 0; 199. int minValueA = 1024; 200. 201. uint32_t start_time = millis(); 202. while((millis()-start_time) < 1000) 203. { 204. readValueA = analogRead(sensorarus); 205. if (readValueA > maxValueA) 206. { /*record the maximum sensor value*/ 207. maxValueA = readValueA; 208. } 209. if (readValueA < minValueA) 210. { /*record the maximum sensor value*/ 211. minValueA = readValueA; 212. } 213. } // Subtract min from max 214. resultA = ((maxValueA - minValueA) * 5.0)/1024.0; 215. return resultA; 216. } 217. 218. void Send() //fungsi Send 219. { 220. s="<h1>SISTEM DATA LOGGER PERALATAN ELEKTRONIK BERBASIS
ANDROID</h1><body bgcolor=f0f0f0>";
221. s+="<p>Arus=</p>"; 222. s+=Irms; 223. s+="<p>Tegangan=<p>"; 224. s+=Vrms; 225. kirim_ke_web(s); //memanggil fungsi kirim_ke_web(webpage)
delay(1000);
226. client.println("AT+CIPCLOSE=0"); 227. } 228. 229. void kirim_ke_web(String s) //fungsi kirim_ke_web
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
82
230. { 231. int ii=0; 232. while(1) 233. { 234. unsigned int l=s.length(); 235. Serial.print("AT+CIPSEND=0,"); 236. client.print("AT+CIPSEND=0,"); 237. Serial.println(l+2); 238. client.println(l+2); 239. delay(100); 240. Serial.println(s); 241. client.println(s); 242. while(client.available()) 243. { 244. if(client.find("OK")) 245. { 246. ii=11; 247. break; 248. } 249. } 250. if(ii==11) 251. break; 252. delay(100); 253. } 254. }
Gambar LIII-2. Hasil Pengujian ESP8266 Sebagai Client
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
83
LAMPIRAN IV
ESP8266 Sebagai Access Point dalam Mengirim Data ke Web Browser
Gambar LIV-1. Wiring ESP8266 Sebagai Access Point Pengiriman Data
Tabel LIV-1. Wiring ESP8266 Sebagai Access Point Pengiriman Data
ESP8266 Seri 01 Arduino UNO
Tx Pin 2
Rx Pin 3
CH_PD VCC +3,3 Volt from LM1117
VCC VCC +3,3 Volt from LM1117
GND GND
- Pin A0 (Voltage Sensor)
- Pin A1 (Current Sensor)
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
84
Program LIV-1. ESP8266 Seri 01 Sebagai Access Point dengan Arduino IDE
1. #include <SoftwareSerial.h>
2.
3. #define DEBUG true
4.
5. SoftwareSerial esp8266(2,3); //Tx—2, Rx—3
6.
7. /*inisialisasi pin sensor*/
8. const int sensortegangan = A0; //pin sensor tegangan
9. const int sensorarus = A1; //pin sensor arus
10. /*inisialisasi nilai sensor*/
11. double Voltage = 0;
12. double V = 0;
13. double Vrms = 0;
14. /*sensitivitas sensor = 100 mV/A*/
15. int mVperAmp = 100;
16. double Current = 0;
17. double I = 0;
18. double Irms = 0;
19.
20. void setup()
21. {
22. Serial.begin(115200);
23. esp8266.begin(115200);
24. kirimdata("AT+RST\r\n",2000,DEBUG);
25. delay(4000);// reset module
26. kirimdata("AT+CWMODE=2\r\n",1000,DEBUG); // configure as AP
27. delay(1000);
28. kirimdata("AT+CIFSR\r\n",1000,DEBUG); // get ip address
29. delay(5000);
30. kirimdata("AT+CIPMUX=1\r\n",1000,DEBUG); // configure for
multiple connections
31. delay(1000);
32. kirimdata("AT+CIPSERVER=1,80\r\n",1000,DEBUG); // turn on
server on port 80
33. delay(1000);
34. Serial.println("ESP8266 Readi as AP!!!");
35. }
36.
37. void loop()
38. {
39. if(!esp8266.available())
40. {
41. /*void loop untuk sensor tegangan*/
42. Voltage = getVPP();
43. V = (Voltage/2.0) *0.707;
44.
45. /*Kalibrasi sensor*/
46. Vrms = (((247.27*V)-7.0872)/0.9903)+2.4;
47. /*nilai tegangan yang terukur*/
48. Serial.print("Tegangan AC = ");
49. Serial.print(Vrms);
50. Serial.print(" Volt");
51.
52. /*void loop untuk sensor arus*/
53. Current = getIPP();
54. I = (Current/2.0)*0.707;
55. Irms = (I*1000)/mVperAmp;
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
85
56. Serial.print(" Arus AC = ");
57. Serial.print(Irms);
58. Serial.println(" Ampere");
59. delay(1000);
60. }
61.
62. if(esp8266.available()) // check if the esp is sending a
message
63. {
64. if(esp8266.find("+IPD"))
65. {
66. delay(100);
67.
68. String webpage="<p>Tegangan=</p>";
69. webpage+=Vrms;
70. webpage+="<p>Arus=</p>";
71. webpage+=Irms;
72.
73. String cipSend = "AT+CIPSEND=0,";
74. cipSend +=webpage.length();
75. cipSend +="\r\n";
76.
77. kirimdata(cipSend,100,DEBUG);
78. kirimdata(webpage,100,DEBUG);
79. kirimdata("AT+CIPCLOSE=0\r\n",100,DEBUG);
80. }
81. }
82. delay(2000);
83. }
84.
85. /*mendapatkan nilai vpp dengan proses pensamplingan*/
86. float getVPP()
87. {
88. float resultV;
89. int readValueV;
90. int maxValueV = 0;
91. int minValueV = 1024;
92.
93. uint32_t start_time = millis();
94. while((millis()-start_time) < 1000)
95. {
96. readValueV = analogRead(sensortegangan);
97. if (readValueV > maxValueV)
98. { /*record the maximum sensor value*/
99. maxValueV = readValueV;
100. } 101. if (readValueV < minValueV) 102. { /*record the maximum sensor value*/ 103. minValueV = readValueV; 104. } 105. } // Subtract min from max 106. resultV = ((maxValueV - minValueV) * 5.0)/1024.0; 107. return resultV; 108. } 109. 110. /*mendapatkan nilai ipp dengan pensamplingan*/ 111. float getIPP() 112. { 113. float resultA; 114. int readValueA;
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
86
115. int maxValueA = 0; 116. int minValueA = 1024; 117. 118. uint32_t start_time = millis(); 119. while((millis()-start_time) < 1000) 120. { 121. readValueA = analogRead(sensorarus); 122. if (readValueA > maxValueA) 123. { /*record the maximum sensor value*/ 124. maxValueA = readValueA; 125. } 126. if (readValueA < minValueA) 127. { /*record the maximum sensor value*/ 128. minValueA = readValueA; 129. } 130. } // Subtract min from max 131. resultA = ((maxValueA - minValueA) * 5.0)/1024.0; 132. return resultA; 133. } 134. 135. String kirimdata(String command, const int timeout, boolean debug) 136. { 137. String response = ""; 138. 139. esp8266.print(command); // send the read character to the
esp8266
140. 141. long int time = millis(); 142. 143. while( (time+timeout) > millis()) 144. { 145. while(esp8266.available()) 146. { 147. 148. // The esp has data so display its output to the serial
window
149. char c = esp8266.read(); // read the next character. 150. response+=c; 151. } 152. } 153. 154. if(debug) 155. { 156. Serial.print(response); 157. } 158. 159. return response; 160. }
Gambar LIV-2. Hasil Pengujian ESP8266 Sebagai Access Point
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
87
LAMPIRAN V
NodeMCU ESP8266MOD Sistem Data Logger
Gambar LV-1.Konfigurasi NodeMCU [19]
Gambar LV-2. Rangkaian NodeMCU [19]
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
88
Gambar LV-3. Rangkaian Utama Sistem Data Logger
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
89
Gambar LV-4. Pin Mapping Sistem Data Logger
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
90
Program LV-1. Sistem Data Logger Peralatan Elektronik Berbasis Android
1. /* SISTEM DATA LOGGER PERALATAN ELEKTRONIK BERBASIS ANDROID
2. Nama : Florus Herman Somari
3. NIM : 135114006
4. Jurusan : Teknik Elektro
5. Fakultas : Sains dan Teknologi
6. Universitas : Sanata Dharma Yogyakarta */
7.
8. #include <ESP8266WiFi.h> //header librari WiFi
9. #include <Wire.h> //header librari I2C
10. #include <RtcDS3231.h> //header librari RTC
11. #include <SPI.h> //header librari SPI
12. #include <SD.h> //header librari kartu SD
13. #include <LiquidCrystal_I2C.h>
14.
15. /*koneksi ke AP---tethering Hp sebagai AP*/
16. const char WiFiSSID[] = "Transformers"; //SSID, nama AP
17. const char WiFiPSK[] = "bumble bee"; //Kata sandi AP
18. WiFiServer server(80); //default syntax
19. RtcDS3231 rtcObject; //sintak RTC library
20. LiquidCrystal_I2C lcd(0x3F, 16, 2);
21. /*inisialisasi pin sensor A0*/
22. int sensorPin = A0;
23. /*sensitivitas sensor = 100 mV/A*/
24. int mVperAmp = 100;
25. /*nilai awal sensor arus*/
26. float Current = 0;
27. float I = 0;
28. float Irms = 0;
29. /*nilai awal sensor tegangan*/
30. float Voltage = 0;
31. float V = 0;
32. float Vrms = 0;
33. /*inisialisasi Micro SD Card*/
34. const int chipSelect = 10;
35. File myFile;
36.
37. void setup()
38. {
39. Serial.begin(9600); //Start serial monitor
40.
41. /*pinmode pada NodeMCU*/
42. pinMode(D0,OUTPUT); //digunakan sebagai digital output (0/1)
untuk kontrol Mux
43. pinMode(A0,INPUT); //digunakan sebagai analog input dari Mux
44. connectWiFi(); //memanggil fungsi connectWiFi(), untuk
menyambungkan
NodeMCU ke AP (AP adalah tethering HP)
45. server.begin(); //jika sudah terkoneksi maka start server
46. cekSDCard(); //memanggil fungsi cekSDCard(), untuk
memeriksa Kartu
Memori sudah siap
47. cekRTC(); //memanggil fungsi cekRTC(), untuk
memeriksa RTC DS3231
sebagai current timer
48. lcd.init();
49. lcd.backlight();
50. lcd.setCursor(0,0);
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
91
51. lcd.print("SD Card OK!");
52. delay(1000);
53. lcd.clear();
54. lcd.setCursor(0,0);
55. lcd.print("RTC OK!");
56. delay(1000);
57. lcd.clear();
58. lcd.setCursor(0,0);
59. lcd.print("WiFi terkoneksi!");
60. delay(1000);
61. lcd.setCursor(0,1);
62. lcd.print("Good Job Florus!");
63. delay(2000);
64. }
65.
66. void loop()
67. {
68. RtcDateTime currentTime = rtcObject.GetDateTime(); //menerima data
waktu dari RTC
69. char tanggal[10];
70. sprintf(tanggal,"%d-%d-
%d",currentTime.Year(),currentTime.Month(),currentTime.Day());
71. char waktu[6];
72. sprintf(waktu,"%d:%d:%d",currentTime.Hour(),currentTime.Minute(),cur
rentTime.Second());
73.
74. Serial.print(tanggal);
75. Serial.print(" ");
76. Serial.print(waktu);
77.
78. /*void loop untuk sensor arus*/
79. digitalWrite(D0,HIGH);
80. Current = getIPP();
81. I = (Current/2.0)*0.707;
82. Irms = ((I*1000)/mVperAmp)-0.20;
83. Serial.print(" Irms = ");
84. Serial.print(Irms);
85. Serial.print(" Ampere");
86.
87. /*void loop untuk sensor tegangan*/
88. digitalWrite(D0,LOW);
89. Voltage = getVPP();
90. V = (Voltage/2.0) *0.707;
91.
92. /*Kalibrasi sensor tegangan*/
93. Vrms = ((257.39*V) - 10.844);
94. Serial.print(" Vrms = ");
95. Serial.print(Vrms);
96. Serial.println(" Volt");
97.
98. /*tampilan LCD*/
99. lcd.clear();
100. lcd.setCursor(0,0); 101. lcd.print(tanggal); 102. lcd.setCursor(0,1); 103. lcd.print(waktu); 104. lcd.setCursor(10,0); 105. lcd.print("V="); 106. lcd.setCursor(12,0); 107. lcd.print(Vrms);
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
92
108. lcd.setCursor(10,1); 109. lcd.print("I="); 110. lcd.setCursor(12,1); 111. lcd.print(Irms); 112. 113. /*menyimpan data*/ 114. myFile = SD.open("1m.csv",FILE_WRITE); //nama file yang akan
disimpan pada Kartu
Memori (ekstensi .txt atau .csv)
115. { 116. myFile.print(tanggal); 117. myFile.print(" "); 118. myFile.print(waktu);//waktu 119. myFile.print(","); 120. myFile.print(Irms); 121. myFile.print(","); 122. myFile.println(Vrms); 123. myFile.close(); 124. } 125. delay(1000); 126. 127. void connectWiFi() 128. { 129. byte ledStatus = LOW; 130. Serial.println(); 131. Serial.println("Connecting to: " + String(WiFiSSID)); 132. WiFi.mode(WIFI_STA); 133. WiFi.begin(WiFiSSID, WiFiPSK); 134. while (WiFi.status() != WL_CONNECTED) 135. { 136. ledStatus = (ledStatus == HIGH) ? LOW : HIGH; 137. delay(100); 138. } 139. Serial.println("WiFi connected"); 140. Serial.println("IP address: "); 141. Serial.println(WiFi.localIP()); 142. delay(1000); 143. } 144. 145. void cekSDCard() 146. { 147. while (!Serial) 148. { 149. ; // wait for serial port to connect. Needed for native USB port
only
150. } 151. Serial.print("Initializing SD card..."); 152. // see if the card is present and can be initialized: 153. if (!SD.begin(chipSelect)) 154. { 155. Serial.println("Card failed, or not present"); 156. // don't do anything more: 157. return; 158. } 159. Serial.println("card initialized."); 160. delay(1000); 161. } 162. 163. void cekRTC() 164. {
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
93
165. rtcObject.Begin(); //mulai I2C 166. RtcDateTime currentTime = RtcDateTime(17,04,26,19,26,30); 167. //tahun,bulan,tanggal,jam,menit,detik (format atur waktu) 168. rtcObject.SetDateTime(currentTime); //konfigurasi RTC 169. } 170. 171. /*mendapatkan nilai ipp*/ 172. float getIPP() 173. { 174. float resultA; 175. int readValueA; 176. int maxValueA = 0; 177. int minValueA = 1024; 178. 179. uint32_t start_time = millis(); 180. while((millis()-start_time) < 500) 181. { 182. readValueA = analogRead(sensorPin); 183. if (readValueA > maxValueA) 184. { /*record the maximum sensor value*/ 185. maxValueA = readValueA; 186. } 187. if (readValueA < minValueA) 188. { /*record the maximum sensor value*/ 189. minValueA = readValueA; 190. } 191. } // Subtract min from max 192. resultA = ((maxValueA - minValueA) * 5.0)/1024.0; 193. return resultA; 194. } 195. 196. /*mendapatkan nilai vpp dengan proses pensamplingan*/ 197. float getVPP() 198. { 199. float resultV; 200. int readValueV; 201. int maxValueV = 0; 202. int minValueV = 1024; 203. uint32_t start_time = millis(); 204. while((millis()-start_time) < 500) 205. { 206. readValueV = analogRead(sensorPin); 207. if (readValueV > maxValueV) 208. { /*record the maximum sensor value*/ 209. maxValueV = readValueV; 210. } 211. if (readValueV < minValueV) 212. { /*record the maximum sensor value*/ 213. minValueV = readValueV; 214. } 215. } // Subtract min from max 216. resultV = ((maxValueV - minValueV) * 5.0)/1024.0; 217. return resultV;
218. }
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
94
LAMPIRAN VI
Aplikasi Android Sistem Data Logger
Program LVI-1. Activity_main.xml (Layout)
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
android:paddingBottom="@dimen/activity_vertical_margin"
android:orientation="vertical"
tools:context=".MainActivity"
android:weightSum="1"
android:background="#fdf86a">
<LinearLayout
android:orientation="horizontal"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_gravity="right"
android:weightSum="1">
<LinearLayout
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_gravity="left|center_horizontal">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textSize="30dp"
android:textAlignment="center"
android:text="Pembaca Sensor Arus dan Tegangan"
android:id="@+id/textView3"
android:textAppearance="?android:attr/textAppearanceLarge"
android:textStyle="bold"
android:layout_gravity="center_horizontal" />
<Space
android:layout_width="match_parent"
android:layout_height="27dp"
android:layout_gravity="center_horizontal" />
<ImageView
android:layout_width="match_parent"
android:layout_height="4dp"
android:id="@+id/imageView"
android:layout_gravity="center_horizontal"
android:background="#000000" />
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="80dp"
android:layout_gravity="center_horizontal"
android:background="@android:color/background_light">
<TextView
android:id="@+id/info2"
android:layout_width="100dp"
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
95
android:layout_height="81dp"
android:textSize="30dp"
android:textAppearance="?android:attr/textAppearanceLarge"
android:textStyle="bold"
android:text=" "
android:layout_weight="0.30"
android:layout_alignParentBottom="true"
android:layout_centerHorizontal="true"
android:autoText="false" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Tegangan"
android:textSize="30dp"
android:textAppearance="?android:attr/textAppearanceLarge"
android:textStyle="bold"
android:id="@+id/textView"
android:layout_weight="0.30"
android:layout_above="@+id/textView2"
android:layout_alignLeft="@+id/textView2"
android:layout_alignStart="@+id/textView2" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Arus"
android:textSize="30dp"
android:textAppearance="?android:attr/textAppearanceLarge"
android:textStyle="bold"
android:id="@+id/textView2"
android:layout_alignParentBottom="true"
android:layout_alignParentLeft="true"
android:layout_alignParentStart="true"
android:layout_marginLeft="65dp"
android:layout_marginStart="65dp" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Volt"
android:textSize="30dp"
android:textAppearance="?android:attr/textAppearanceLarge"
android:textStyle="bold"
android:id="@+id/textView4"
android:layout_alignTop="@+id/textView"
android:layout_toRightOf="@+id/info2"
android:layout_toEndOf="@+id/info2"
android:layout_marginLeft="39dp"
android:layout_marginStart="39dp" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Ampere"
android:textSize="30dp"
android:textAppearance="?android:attr/textAppearanceLarge"
android:textStyle="bold"
android:id="@+id/textView5"
android:layout_below="@+id/textView4"
android:layout_alignLeft="@+id/textView4"
android:layout_alignStart="@+id/textView4" />
</RelativeLayout>
<LinearLayout
android:orientation="horizontal"
android:layout_width="match_parent"
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
96
android:layout_height="wrap_content"
android:layout_gravity="center_horizontal"
android:weightSum="1">
</LinearLayout>
<LinearLayout
android:orientation="horizontal"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_gravity="center_horizontal"
android:weightSum="1">
</LinearLayout>
<LinearLayout
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="wrap_content">
<Space
android:layout_width="match_parent"
android:layout_height="19dp"
android:layout_gravity="center_horizontal" />
<ImageView
android:layout_width="match_parent"
android:layout_height="4dp"
android:id="@+id/imageView2"
android:layout_gravity="center_horizontal"
android:background="#000000" />
<Space
android:layout_width="match_parent"
android:layout_height="22dp"
android:layout_gravity="center_horizontal" />
</LinearLayout>
<LinearLayout
android:orientation="horizontal"
android:layout_width="wrap_content"
android:layout_height="match_parent">
<Space
android:layout_width="80dp"
android:layout_height="match_parent" />
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="MULAI BACA "
android:textSize="30dp"
android:textAppearance="?android:attr/textAppearanceLarge"
android:textStyle="bold"
android:id="@+id/baca" />
<Space
android:layout_width="wrap_content"
android:layout_height="match_parent" />
<EditText
android:id="@+id/ip"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textSize="30dp"
android:textAppearance="?android:attr/textAppearanceLarge"
android:textStyle="bold"
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
97
android:text="" />
</LinearLayout>
</LinearLayout>
<Space
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:layout_gravity="bottom" />
</LinearLayout>
</LinearLayout>
Program LVI-2. MainActivity.Java
package com.example.arduinoesp;
import android.app.Activity;
import android.os.Bundle;
import android.os.CountDownTimer;
import android.view.View;
import android.widget.Button;
import android.widget.TextView;
import android.app.ProgressDialog;
import android.content.Context;
import android.content.Intent;
import android.os.AsyncTask;
import android.os.Bundle;
import android.support.v7.app.ActionBarActivity;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import org.apache.http.HttpResponse;
import org.apache.http.client.ClientProtocolException;
import org.apache.http.client.HttpClient;
import org.apache.http.client.methods.HttpGet;
import org.apache.http.impl.client.DefaultHttpClient;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.net.URI;
import java.net.URISyntaxException;
import java.util.Timer;
import java.util.TimerTask;
import android.app.ProgressDialog;
import android.content.Context;
import android.content.Intent;
public class MainActivity extends ActionBarActivity {
Button Baca;
EditText editIp;
TextView textInfo2;
CountDownTimer countdowntimer;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
editIp = (EditText)findViewById(R.id.ip);
textInfo2 = (TextView)findViewById(R.id.info2);
Baca = (Button)findViewById(R.id.baca);
Baca.setOnClickListener(new View.OnClickListener() {
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
98
@Override
public void onClick(View v) {
countdowntimer = new CountDownTimerClass(2000, 2000);
countdowntimer.start();
}
});
}
public class CountDownTimerClass extends CountDownTimer {
public CountDownTimerClass(long millisInFuture, long countDownInterval) {
super(millisInFuture, countDownInterval);
}
@Override
public void onTick(long millisUntilFinished) {
int progress = (int) (millisUntilFinished/2000);
}
@Override
public void onFinish() {
String serverIP = editIp.getText().toString()+":80";
TaskEsp taskEsp = new TaskEsp(serverIP);
String onoff;
onoff="1";
taskEsp.execute(onoff);
countdowntimer = new CountDownTimerClass(2000, 2000);
countdowntimer.start();
}
}
private class TaskEsp extends AsyncTask<String, Void, String> {
String server;
TaskEsp(String server){
this.server = server;
}
@Override
protected String doInBackground(String... params) {
String val = params[0];
final String p = "http://"+server+"?led="+val;
runOnUiThread(new Runnable(){
@Override
public void run() {
}
});
String serverResponse = "";
HttpClient httpclient = new DefaultHttpClient();
try {
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
99
HttpGet httpGet = new HttpGet();
httpGet.setURI(new URI(p));
HttpResponse httpResponse = httpclient.execute(httpGet);
InputStream inputStream = null;
inputStream = httpResponse.getEntity().getContent();
BufferedReader bufferedReader =
new BufferedReader(new InputStreamReader(inputStream));
serverResponse = bufferedReader.readLine();
inputStream.close();
} catch (URISyntaxException e) {
e.printStackTrace();
serverResponse = e.getMessage();
} catch (ClientProtocolException e) {
e.printStackTrace();
serverResponse = e.getMessage();
} catch (IOException e) {
e.printStackTrace();
serverResponse = e.getMessage();
}
return serverResponse;
}
@Override
protected void onPostExecute(String s) {
String test = s;
textInfo2.setText(s);
}
}
}
Program LVI-3. AndroidManifest.xml
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.example.arduinoesp" >
<uses-permission android:name="android.permission.INTERNET" />
<application
android:allowBackup="true"
android:icon="@mipmap/ic_launcher"
android:label="Smart Energy"
android:theme="@style/AppTheme" >
<activity
android:name=".MainActivity"
android:label="Sistem Data Logger Peralatan Elektronik Berbasis
Android" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
</application>
</manifest>
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
100
Gambar LVI-1. Aplikasi Android
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
101
Lampiran VII
Data Pengujian
1. Jarak 1 meter, AP (Aplikasi) ke NodeMCU (-22 dBm)
Variasi Tegangan
(volt) dengan beban
1 lampu 60 watt
arus multi
(Ampere)
tegangan
lcd
arus
lcd Tampilan Aplikasi
20 0 18.03 -0.11
50 0.1 47.80 0.01
100 0.15 98.89 0.08
150 0.2 151.76 0.15
200 0.23 205.07 0.18
220 0.25 219.29 0.20
240 0 232.17 -0.10
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
102
Variasi beban (lampu)
dengan tegangan tetap
200 Volt
arus
(multi)
arus
lcd
tegangan
lcd Tampilan Aplikasi
1 0.23 0.18 204.63
2 0.49 0.47 204.18
3 0.75 0.77 203.30
4 1.01 1.09 202.85
5 1.28 1.41 202.85
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
103
2. Jarak 5 meter, AP (Aplikasi) ke NodeMCU (-40 dBm)
Variasi Tegangan
(volt) dengan beban
1 lampu 60 watt
arus multi
(Ampere)
tegangan
lcd
arus
lcd Tampilan Aplikasi
20 0.06 16.26 -0.03
50 0.1 48.24 0.02
100 0.15 99.34 0.09
150 0.19 151.76 0.13
200 0.23 204.63 0.18
220 0.25 220.18 0.20
240 0 232.17 -0.10
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
104
Variasi beban (lampu)
dengan tegangan tetap
200 Volt
arus
(multi)
arus
lcd
tegangan
lcd Tampilan Aplikasi
1 0.23 0.20 204.18
2 0.49 0.46 204.18
3 0.76 0.78 202.85
4 1.02 1.08 202.85
5 1.29 1.39 202.85
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
105
3. Jarak 10 meter, AP (Aplikasi) ke NodeMCU (-58 dBm)
Variasi Tegangan
(Volt) dengan beban
1 lampu 60 Watt
arus multi
(Ampere)
tegangan
lcd
arus
lcd Tampilan Aplikasi
20 0.06 16.26 -0.03
50 0.1 47.36 0.01
100 0.15 98.45 0.09
150 0.19 151.32 0.13
200 0.23 205.52 0.18
220 0.25 220.18 0.20
240 0 233.06 -0.10
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
106
Variasi beban (lampu)
dengan tegangan tetap
200 Volt
arus
(multi) arus lcd
tegangan
lcd Tampilan Aplikasi
1 0.24 0.20 204.63
2 0.50 0.47 204.18
3 0.77 0.77 202.85
4 1.04 1.09 202.85
5 1.33 1.42 201.52
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
107
4. Jarak 15 meter, AP (Aplikasi) ke NodeMCU (-60 dBm)
Variasi Tegangan
(Volt) dengan beban
1 lampu 60 Watt
arus multi
(Ampere)
tegangan
lcd
arus
lcd Tampilan Aplikasi
20 0.06 16.26 -0.03
50 0.1 46.91 0.02
100 0.15 98.89 0.08
150 0.2 149.54 0.18
200 0.23 206.85 0.20
220 0.25 220.18 0.21
240 0 232.17 -0.10
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
108
Variasi beban (lampu)
dengan tegangan tetap
200 Volt
arus
(multi)
arus
lcd
tegangan
lcd Tampilan Aplikasi
1 0.24 0.18 204.18
2 0.50 0.46 205.07
3 0.76 0.77 204.18
4 1.02 1.08 203.30
5 1.30 1.41 203.30
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
109
5. Jarak 20 meter, AP (Aplikasi) ke NodeMCU (-64 dBm)
Variasi Tegangan
(Volt) dengan beban
1 lampu 60 Watt
arus multi
(Ampere)
tegangan
lcd
arus
lcd Tampilan Aplikasi
20 0.07 20.26 -0.03
50 0.1 48.69 0.02
100 0.16 99.78 0.09
150 0.20 150.87 0.13
200 0.24 203.30 0.18
220 0.25 219.73 0.20
240 0 232.17 -0.11
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
110
Variasi beban (lampu)
dengan tegangan tetap
200 Volt
arus
(multi)
arus
lcd
tegangan
lcd Tampilan Aplikasi
1 0.24 0.20 205.96
2 0.50 0.47 204.63
3 0.77 0.77 205.07
4 1.04 1.09 203.30
5 1.29 1.41 203.74
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
111
6. Jarak 25 meter, AP (Aplikasi) ke NodeMCU (-69 dBm)
Variasi Tegangan
(Volt) dengan beban
1 lampu 60 Watt
arus multi
(Ampere)
tegangan
lcd
arus
lcd Tampilan Aplikasi
20 0.06 19.37 -0.03
50 0.1 47.80 0.02
100 0.15 102.45 0.08
150 0.2 151.76 0.13
200 0.24 205.96 0.18
220 0.25 220.62 0.20
240 0 233.51 -0.06
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
112
Variasi beban (lampu)
dengan tegangan tetap
200 Volt
arus
(multi)
arus
lcd
tegangan
lcd Tampilan Aplikasi
1 0.24 0.18 201.96
2 0.49 0.47 203.74
3 0.76 0.75 200.63
4 1.02 1.09 201.96
5 1.29 1.39 199.30
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
113
7. Jarak 40 meter, AP (Aplikasi) ke NodeMCU (-72 dBm)
Variasi Tegangan
(Volt) dengan beban
1 lampu 60 Watt
arus multi
(Ampere)
tegangan
lcd
arus
lcd Tampilan Aplikasi
20 0.06 18.92 -0.03
50 0.1 50.91 0.02
100 0.15 100.22 0.08
150 0.2 150.87 0.11
200 0.23 200.63 0.18
220 0.25 220.62 0.20
240 0 233.06 -0.06
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
114
Variabel beban (lampu)
dengan tegangan tetap
200 Volt
arus
(multi)
arus
lcd
tegangan
lcd Tampilan Aplikasi
1 0.24 0.18 200.63
2 0.49 0.47 200.63
3 0.75 0.78 200.19
4 1.01 1.09 198.85
5 1.30 1.39 198.41
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
115
LAMPIRAN VIII
Data Logger
Tanggal Waktu I (Ampere) V (Volt) Daya (Watt) Daya*300s Energi (Watt detik) Energi (KWH) ((Energi/1000)*(1/3600))
4/26/2017 17:03:00 0.27 193.97 52.3719 15711.57 15711.57 0.004364325
4/26/2017 17:08:00 0.28 195.74 54.8072 16442.16 32153.73 0.008931592
4/26/2017 17:13:00 0.18 192.63 34.6734 10402.02 42555.75 0.011821042
4/26/2017 17:18:00 0.2 193.08 38.616 11584.8 54140.55 0.015039042
4/26/2017 17:23:00 0.18 193.97 34.9146 10474.38 64614.93 0.017948592
4/26/2017 17:28:00 0.3 194.41 58.323 17496.9 82111.83 0.022808842
4/26/2017 17:33:00 0.2 193.52 38.704 11611.2 93723.03 0.026034175
4/26/2017 17:38:00 0.25 193.52 48.38 14514 108237.03 0.030065842
4/26/2017 17:43:00 0.28 193.97 54.3116 16293.48 124530.51 0.034591808
4/26/2017 17:48:00 0.21 192.63 40.4523 12135.69 136666.2 0.037962833
4/26/2017 17:53:00 0.51 193.97 98.9247 29677.41 166343.61 0.046206558
4/26/2017 17:58:00 0.52 193.52 100.6304 30189.12 196532.73 0.054592425
4/26/2017 18:03:00 0.61 193.52 118.0472 35414.16 231946.89 0.064429692
4/26/2017 18:08:00 0.51 193.08 98.4708 29541.24 261488.13 0.072635592
4/26/2017 18:13:00 0.52 193.08 100.4016 30120.48 291608.61 0.081002392
4/26/2017 18:18:00 0.51 192.63 98.2413 29472.39 321081 0.089189167
4/26/2017 18:23:00 0.51 193.08 98.4708 29541.24 350622.24 0.097395067
4/26/2017 18:28:00 0.56 193.97 108.6232 32586.96 383209.2 0.106447
4/26/2017 18:33:00 0.49 194.41 95.2609 28578.27 411787.47 0.114385408
4/26/2017 18:38:00 0.52 193.08 100.4016 30120.48 441907.95 0.122752208
4/26/2017 18:43:00 0.78 193.97 151.2966 45388.98 487296.93 0.135360258
4/26/2017 18:48:00 0.8 192.19 153.752 46125.6 533422.53 0.148172925
4/26/2017 18:53:00 0.87 189.97 165.2739 49582.17 583004.7 0.16194575
4/26/2017 18:58:00 0.78 191.75 149.565 44869.5 627874.2 0.1744095
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
116
4/26/2017 19:03:00 0.8 191.75 153.4 46020 673894.2 0.187192833
4/26/2017 19:08:00 0.84 191.75 161.07 48321 722215.2 0.200615333
4/26/2017 19:13:00 0.8 192.63 154.104 46231.2 768446.4 0.213457333
4/26/2017 19:18:00 0.78 190.41 148.5198 44555.94 813002.34 0.225833983
4/26/2017 19:23:00 0.77 191.75 147.6475 44294.25 857296.59 0.238137942
4/26/2017 19:28:00 0.82 192.19 157.5958 47278.74 904575.33 0.251270925
4/26/2017 19:33:00 1.16 190.86 221.3976 66419.28 970994.61 0.269720725
4/26/2017 19:38:00 1.09 191.3 208.517 62555.1 1033549.71 0.287097142
4/26/2017 19:43:00 1.11 191.3 212.343 63702.9 1097252.61 0.304792392
4/26/2017 19:48:00 1.06 191.3 202.778 60833.4 1158086.01 0.321690558
4/26/2017 19:53:00 1.06 191.3 202.778 60833.4 1218919.41 0.338588725
4/26/2017 19:58:00 1.06 191.75 203.255 60976.5 1279895.91 0.355526642
4/26/2017 20:03:00 1.09 191.75 209.0075 62702.25 1342598.16 0.372943933
4/26/2017 20:08:00 1.15 190.41 218.9715 65691.45 1408289.61 0.391191558
4/26/2017 20:13:00 1.18 190.86 225.2148 67564.44 1475854.05 0.409959458
4/26/2017 20:18:00 1.08 189.97 205.1676 61550.28 1537404.33 0.427056758
4/26/2017 20:23:00 1.49 190.86 284.3814 85314.42 1622718.75 0.450755208
4/26/2017 20:28:00 1.41 191.3 269.733 80919.9 1703638.65 0.473232958
4/26/2017 20:33:00 1.37 191.3 262.081 78624.3 1782262.95 0.495073042
4/26/2017 20:38:00 1.37 192.19 263.3003 78990.09 1861253.04 0.517014733
4/26/2017 20:43:00 1.46 192.19 280.5974 84179.22 1945432.26 0.54039785
4/26/2017 20:48:00 1.37 192.19 263.3003 78990.09 2024422.35 0.562339542
4/26/2017 20:53:00 1.39 191.3 265.907 79772.1 2104194.45 0.584498458
4/26/2017 20:58:00 1.47 191.3 281.211 84363.3 2188557.75 0.607932708
4/26/2017 21:03:00 1.39 191.3 265.907 79772.1 2268329.85 0.630091625
4/26/2017 21:08:00 1.41 191.75 270.3675 81110.25 2349440.1 0.65262225
4/26/2017 21:13:00 1.09 192.19 209.4871 62846.13 2412286.23 0.670079508
4/26/2017 21:18:00 1.13 191.3 216.169 64850.7 2477136.93 0.688093592
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
117
4/26/2017 21:23:00 1.15 191.3 219.995 65998.5 2543135.43 0.706426508
4/26/2017 21:28:00 1.09 192.19 209.4871 62846.13 2605981.56 0.723883767
4/26/2017 21:33:00 1.04 191.75 199.42 59826 2665807.56 0.7405021
4/26/2017 21:38:00 1.09 191.75 209.0075 62702.25 2728509.81 0.757919392
4/26/2017 21:43:00 1.18 192.63 227.3034 68191.02 2796700.83 0.776861342
4/26/2017 21:48:00 1.08 191.75 207.09 62127 2858827.83 0.794118842
4/26/2017 21:53:00 1.11 191.75 212.8425 63852.75 2922680.58 0.811855717
4/26/2017 21:58:00 1.16 192.19 222.9404 66882.12 2989562.7 0.830434083
4/26/2017 22:03:00 0.82 193.08 158.3256 47497.68 3037060.38 0.843627883
4/26/2017 22:08:00 0.84 192.63 161.8092 48542.76 3085603.14 0.857111983
4/26/2017 22:13:00 0.92 193.08 177.6336 53290.08 3138893.22 0.871914783
4/26/2017 22:18:00 0.82 193.52 158.6864 47605.92 3186499.14 0.88513865
4/26/2017 22:23:00 0.84 193.08 162.1872 48656.16 3235155.3 0.89865425
4/26/2017 22:28:00 0.9 193.52 174.168 52250.4 3287405.7 0.91316825
4/26/2017 22:33:00 0.82 192.63 157.9566 47386.98 3334792.68 0.9263313
4/26/2017 22:38:00 0.84 193.52 162.5568 48767.04 3383559.72 0.9398777
4/26/2017 22:43:00 0.78 193.52 150.9456 45283.68 3428843.4 0.9524565
4/26/2017 22:48:00 0.78 193.97 151.2966 45388.98 3474232.38 0.96506455
4/26/2017 22:53:00 0.51 193.97 98.9247 29677.41 3503909.79 0.973308275
4/26/2017 22:58:00 0.54 193.97 104.7438 31423.14 3535332.93 0.982036925
4/26/2017 23:03:00 0.61 193.97 118.3217 35496.51 3570829.44 0.991897067
4/26/2017 23:08:00 0.51 193.52 98.6952 29608.56 3600438 1.000121667
4/26/2017 23:13:00 0.54 193.97 104.7438 31423.14 3631861.14 1.008850317
4/26/2017 23:18:00 0.59 193.52 114.1768 34253.04 3666114.18 1.01836505
4/26/2017 23:23:00 0.52 193.97 100.8644 30259.32 3696373.5 1.026770417
4/26/2017 23:28:00 0.49 193.08 94.6092 28382.76 3724756.26 1.034654517
4/26/2017 23:33:00 0.47 193.97 91.1659 27349.77 3752106.03 1.042251675
4/26/2017 23:38:00 0.52 194.41 101.0932 30327.96 3782433.99 1.050676108
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
118
4/26/2017 23:43:00 0.52 194.85 101.322 30396.6 3812830.59 1.059119608
4/26/2017 23:48:00 0.52 194.85 101.322 30396.6 3843227.19 1.067563108
4/26/2017 23:53:00 0.58 195.3 113.274 33982.2 3877209.39 1.077002608
4/26/2017 23:58:00 0.51 195.3 99.603 29880.9 3907090.29 1.085302858
4/27/2017 0:03:00 0.54 194.85 105.219 31565.7 3938655.99 1.094071108
4/27/2017 0:08:00 0.56 194.41 108.8696 32660.88 3971316.87 1.103143575
4/27/2017 0:13:00 0.49 194.85 95.4765 28642.95 3999959.82 1.11109995
4/27/2017 0:18:00 0.51 194.41 99.1491 29744.73 4029704.55 1.119362375
4/27/2017 0:23:00 0.46 193.97 89.2262 26767.86 4056472.41 1.126797892
4/27/2017 0:28:00 0.51 194.85 99.3735 29812.05 4086284.46 1.135079017
4/27/2017 0:33:00 0.23 195.74 45.0202 13506.06 4099790.52 1.1388307
4/27/2017 0:38:00 0.28 195.74 54.8072 16442.16 4116232.68 1.143397967
4/27/2017 0:43:00 0.21 194.85 40.9185 12275.55 4128508.23 1.146807842
4/27/2017 0:48:00 0.21 195.3 41.013 12303.9 4140812.13 1.150225592
4/27/2017 0:53:00 0.21 195.3 41.013 12303.9 4153116.03 1.153643342
4/27/2017 0:58:00 0.25 195.74 48.935 14680.5 4167796.53 1.157721258
4/27/2017 1:03:00 0.23 195.3 44.919 13475.7 4181272.23 1.161464508
4/27/2017 1:08:00 0.23 194.85 44.8155 13444.65 4194716.88 1.165199133
4/27/2017 1:13:00 0.25 195.3 48.825 14647.5 4209364.38 1.169267883
4/27/2017 1:18:00 0.3 195.3 58.59 17577 4226941.38 1.174150383
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
119
LAMPIRAN IX
Dokumentasi Perangkat
Gambar LIX-1. Uji Coba Sistem Data Logger dengan NodeMCU
Gambar LIX-2. Uji Coba Sistem Data Logger dengan Arduino dan ESP8266 Seri 01
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
120
Gambar LIX-3. Perangkat Keras Sistem Data Logger
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI