PURWARUPA MONITORING BAHAN BAKAR …eprints.akakom.ac.id/8447/1/1_163310023_HALAMAN_DEPAN.pdfvi...
Transcript of PURWARUPA MONITORING BAHAN BAKAR …eprints.akakom.ac.id/8447/1/1_163310023_HALAMAN_DEPAN.pdfvi...
PROYEK AKHIR
PURWARUPA MONITORING BAHAN BAKAR MINYAK
PADA TANKI PENDAM SPBU MENGGUNAKAN SENSOR
HC-SR04 DAN NODEMCU DEVKIT BERBASIS WEB YANG
TERINTEGRASI DENGAN MQTT SERVER
Oleh :
Firman Agus Saputro
163310023
PROGRAM STUDI TEKNIK KOMPUTER
SEKOLAH TINGGI MANAJEMEN INFORMATIKA DAN KOMPUTER
AKAKOM
YOGYAKARTA
2019
i
PROYEK AKHIR
PURWARUPA MONITORING BAHAN BAKAR MINYAK
PADA TANKI PENDAM SPBU MENGGUNAKAN SENSOR
HC-SR04 DAN NODEMCU DEVKIT BERBASIS WEB YANG
TERINTEGRASI DENGAN MQTT SERVER
Karya Tulis Diajukan Sebagai Salah Satu Syarat
untuk Memperoleh Gelar Ahli Madya Komputer
Program Studi Teknik Komputer
Oleh :
Firman Agus Saputro
163310023
PROGRAM STUDI TEKNIK KOMPUTER
SEKOLAH TINGGI MANAJEMEN INFORMATIKA DAN KOMPUTER
AKAKOM
YOGYAKARTA
2019
ii
iii
iv
HALAMAN PERSEMBAHAN
Proyek Akhir ini penulis persembahkan untuk:
Allah SWT
Ibu Titik Rukmini dan Bapak Agus Lukito
Adikku Ivandi Lukito Saputro dan Kurnia Lukito Wati
Sahabat Teknik Komputer Angkatan 2016
Seluruh penikmat kemajuan dan perkembangan teknologi
.
v
MOTTO
Memulai dengan penuh keyakinan
Menjalankan dengan penuh keikhlasan
Menyelesaikan dengan penuh kebahagiaan
Jika mereka mendustakan kamu, maka katakanlah: “Bagiku
pekerjaanku dan bagimu pekerjaanmu. Kamu berlepas diri
terhadap apa yang aku kerjakan dan akupun berlepas diri
terhadap apa yang kamu kerjakan”
(Q.S. Yunus: 41)
vi
INTISARI
Purwarupa Monitoring Bahan Bakar Minyak Pada Tanki Pendam SPBU
Menggunakan Sensor HC-SR04 Dan NodeMCU DevKit Berbasis Web Yang
Terintegrasi Dengan MQTT Server
Oleh
Firman Agus Saputro
163310023
Program Studi Teknik Komputer
Sekolah Tinggi Manajemen Informatika dan Komputer
AKAKOM Yogyakarta
Berbagai permasalahan yang terjadi pada sistem monitoring tangki
pendam SPBU dapat menyebabkan tidak efisien dan efektifnya dalam memantau
berapa debit dan volume cairan pada tangki pendam SPBU. Dengan
demikian,diperlukan sistem monitoring yang dapat terintegrasi dengan perangkat
komputer dan internet. Sistem monitoring ini berfungsi memberikan informasi
yang terjadi di dalam tangki pendam SPBU. Konsep Internet of Things (IoT)
membuat sebuah perangkat dapat berkomunikasi seperti mengirim dan menerima
data melalui jaringan internet.
Penelitian ini bertujuan untuk merancang sistem monitoring bahan bakar
pada tanki pendam SPBU dengan menggunakan NodeMCU DevKit, sensor
ultrasonic, dan MQTT Server. Framework yang digunakan adalah Flask dan Dash
Python yang mampu memberikan informasi secara real time kepada pengguna
sehingga dapat memantau keadaan secara terus menerus tanpa harus mengecek ke
lapangan.
Hasil pengujian menunjukkan bahwa sistem mampu memantau dan
mengirimkan data volume cairan dengan terus menerus. Dengan sistem ini
diharapkan dapat membuat pekerjaan lebih efisien dan efektif untuk pengelola
SPBU.
Kata kunci: Dash Python, Flask, Internet of Things, MQTT, NodeMCU DevKit.
vii
ABSTRACT
Prototype of Fuel Oil in Gas Station Tanks Using Integrated Web-Based
HC-SR04 and NodeMCU DevKit Sensors with MQTT Server
By
Firman Agus Saputro
163310023
Computer Engineering Study Program College of Informatics and
Computer Management AKAKOM Yogyakarta
Various problems that occur in the monitoring system of the
SPBU tank can cause inefficiency and effectiveness in monitoring how much
the discharge and the volume of liquid in the gas station's gas tank. Thus, a
monitoring system is needed that can be integrated with computer and
internet devices. This monitoring system functions to provide information
that occurs in the gas tank of the gas station. The concept of Internet of
Things (IoT) makes a device able to communicate such as sending and
receiving data over the internet network. This study aims to design a fuel monitoring system in gas
stations with NodeMCU DevKit, ultrasonic sensors, and MQTT Server. The
framework used is Flask and the Python Dash which are able to provide
information in real time to users so that they can monitor the situation
continuously without having to check into the field.
The test results show that the system is able to monitor and
transmit fluid volume data continuously. With this system it is expected to
make work more efficient and effective for gas station managers.
Keywords: Dash Python, Flask, Internet of Things, MQTT, NodeMCU DevKit.
viii
KATA PENGANTAR
Puji syukur dan terima kasih kepada Allah SWT atas segala karunia-NyaN
sehingga Proyek Akhir dengan judul “Purwarupa Monitoring Bahan Bakar
Minyak Pada Tanki Pendam SPBU Menggunakan Sensor HC-SR04 Dan
NodeMCU DevKit Berbasis Web Yang Terintegrasi Dengan MQTT Server”
ini dapat diselesaikan dengan baik. Penelitian yang berupa Proyek Akhir ini
merupakan salah satu syarat kelulusan bagi mahasiswa Program Studi Teknik
Komputer di STMIK AKAKOM Yogyakarta. Penelitian ini dapat diselesaikan
dengan baik atas bantuan, gagasan dan dukungan dari berbagai pihak. Oleh
karena itu, peneliti ingin mengucapkan terima kasih kepada:
1. Bapak Ir. Totok Suprawoto, M.M., M.T., selaku Ketua Sekolah Tinggi
Manajemen Informatika dan Komputer Akakom Yogyakarta.
2. Bapak Ir. Muhammad Guntara, M.T. selaku Wakil Ketua 1 Sekolah Tinggi
Manajemen Informatika dan Komputer Akakom Yogyakarta.
3. Bapak Adi Kusjani, S.T., M.T., selaku Dosen Pembimbing yang telah
banyak meluangkan waktu untuk memberikan bimbingan, pengetahuan,
diskusi, arahan, kritik dan saran kepada peneliti sehingga penulisan Proyek
Akhir ini dapat diselesaikan.
4. Bapak dan Ibu Dosen yang telah memberikan semangat, pengetahuan dan
bimbingan kepada peneliti selama kuliah di STMIK AKAKOM.
5. Bapak dan ibu tercinta, adikku Ivandi Lukito Saputro dan Kurnia
Lukitowati, serta semua keluarga yang telah memberikan semangat dan
dukungan dalam penyelesaian Proyek Akhir ini.
6. Teman-teman seperjuangan jurusan Teknik Komputer angkatan 2016
untuk kebersamaan dan dukungannya.
7. Semua pihak yang tidak bisa peneliti sebutkan satu-persatu atas bantuan,
bimbingan, kritik dan saran.
Penulis sangat mengharapkan kritik dan saran yang dapat membangun
serta menyempurnakan tulisan. Semoga Proyek Akhir ini dapat dimanfaatkan dan
ix
dikembangkan lebih lanjut oleh peneliti lain sehingga tulisan ini dapat lebih
bermanfaat bagi perkembangan teknologi IT di indonesia.
Yogyakarta, 17 April 2019
Firman Agus Saputro
x
DAFTAR ISI
HALAMAN JUDUL ................................................................................................ i
HALAMAN PERSETUJUAN ................................................................................ ii
HALAMAN PENGESAHAN ................................................................................ iii
HALAMAN PERSEMBAHAN ............................................................................. iv
MOTTO ................................................................................................................... v
INTISARI ............................................................................................................... vi
ABSTRACT ............................................................................................................ vii
KATA PENGANTAR .......................................................................................... viii
DAFTAR ISI ........................................................................................................... x
DAFTAR GAMBAR ............................................................................................ xii
DAFTAR TABEL ................................................................................................ xiii
DAFTAR LISTING PROGRAM ......................................................................... xiv
BAB I PENDAHULUAN ....................................................................................... 1
1.1. Latar Belakang ......................................................................................... 1
1.2. Rumusan masalah ..................................................................................... 1
1.3. Tujuan ....................................................................................................... 2
1.4. Batasan Masalah ....................................................................................... 2
BAB II DASAR TEORI DAN TINJAUAN PUSTAKA ........................................ 3
2.1. Dasar Teori ............................................................................................... 3
2.1.1 Modul Sensor Ultrasonik .................................................................. 3
2.1.2 NodeMCU DevKit ............................................................................ 4
2.1.4 MQTT ............................................................................................... 6
2.1.5 Database InfluxDB ............................................................................ 8
2.1.6 Framework DASH Python dan Flask ................................................ 8
2.1.7 Python 3.5.2 ...................................................................................... 9
2.2. Tinjauan Pustaka ...................................................................................... 9
BAB III RANCANGAN SISTEM ........................................................................ 11
3.1 Deskripsi Sistem ..................................................................................... 11
3.2. Analisa Kebutuhan Sistem .................................................................... 11
3.3. Rancangan Sistem .................................................................................. 12
xi
3.4. Rancangan Hardware.............................................................................. 14
3.5. Rancangan Perangkat Lunak .................................................................. 14
3.5.1 Diagram Alir Pada Node Sensor ..................................................... 14
3.5.2 Diagram Alir Pada Node Monitor ................................................... 15
3.6 Rancangan database InfluxDB ............................................................... 18
BAB IV IMPLEMENTASI DAN PEMBAHASAN ............................................ 19
4.1. Implementasi Pada Node Sensor ............................................................ 19
4.1.1 Implementasi Pada Perangkat Keras Node Sensor.......................... 19
4.1.2 Implementasi Pada Perangkat Lunak Node Sensor ........................ 20
4.2. Implementasi Pada Node Monitor .......................................................... 24
4.2.1 Mencari Volume Bahan Bakar Pada Tanki Pendam ....................... 24
4.2.2 Menyimpan Data Sensor Ke Database InfluxDB ................................ 26
4.2.3 Implementasi Framework Dash Python Dengan Flask ................... 26
4.2.4 Implementasi halaman login ........................................................... 26
4.2.5 Implementasi tampilan grafik pada halaman dashboard ................. 28
4.3. Pengujian Keseluruhan Sistem ............................................................... 29
4.3.1 Pengujian pada node sensor ............................................................ 29
4.3.2 Pengujian pada database InfluxDB ................................................. 31
4.3.3 Pengujian node monitor .................................................................. 32
4.3.4 Pengujian berjalanya sistem secara keseluruhan............................. 36
BAB V KESIMPULAN DAN SARAN ................................................................ 38
5.1. KESIMPULAN ...................................................................................... 38
5.2. SARAN ................................................................................................... 38
DAFTAR PUSTAKA ........................................................................................... 40
LAMPIRAN .......................................................................................................... 41
xii
DAFTAR GAMBAR
Gambar 2.1 Ilustrasi Cara Kerja Sensor Ultrasonic ............................................... 4
Gambar 2.2 Pin mapping NodeMCU DevKit ........................................................ 5
Gambar 2.3 Diagram Fungsional NodeMCU DevKit .......................................... 5
Gambar 2.4 Arduino IDE ...................................................................................... 6
Gambar 2.5 Ilustrasi kerja dari protokol MQTT .................................................... 7
Gambar 3.1 Diagram Blok Sistem ....................................................................... 13
Gambar 3.2. Diagram Blok Hardware ................................................................. 14
Gambar 3.3. Diagram Alir Program Pada Node Sensor ...................................... 15
Gambar 3.4. Diagram Alir Subscribe Event Handler .......................................... 16
Gambar 3.5. Diagram Alir Tampilan Web Dashboard Monitoring ..................... 17
Gambar 3.6. Rancangan Database data_BB ........................................................ 18
Gambar 3.6. Rancangan Database login .............................................................. 18
Gambar 4.1.1 Rangkaian perangkat keras Node Sensor ..................................... 20
Gambar 4.3.1 Pengujian jarak dengan sensor HC-SR04 ..................................... 29
Gambar 4.2 pengujian volume dengan sensor ultrasonic HC-SR04 ................... 30
Gambar 4.3 Menjalankan server influxd ............................................................. 31
Gambar 4.4 Mengetahui versi influxDB dan mencoba influx client ................... 31
Gambar 4.5 akses langsung halaman dash_app tanpa login ............................... 32
Gambar 4.6 akses langsung halaman dashboard tanpa login .............................. 32
Gambar 4.7 akses langsung halaman adminsetting tanpa login .......................... 33
Gambar 4.8 user berhasil login ........................................................................... 34
Gambar 4.9 Pengujian halaman dashboard ......................................................... 34
Gambar 5.0 Pengujian notifikasi email saat kondisi dibawah 0.5 liter ............... 35
Gambar 5.1 Pengujian notifikasi email saat kondisi dibawah 0.5 liter ............... 35
xiii
DAFTAR TABEL
Tabel 4.1 Hasil perbandingan pengujian jarak dengan sensor HC-SR04 .......... 29
Tabel 4.2 Hasil perbandingan pengujian volume dengan sensor HC-SR04 ....... 30
Tabel 4.3 perbandingan data volume pada halaman web dengan alat ukur ........ 36
xiv
DAFTAR LISTING PROGRAM
Listing 4.1.1 Proses Include Library ................................................................... 21
Listing 4.1.2 Inisialisasi Sever MQTT ................................................................ 21
Listing 4.1.3 Inisialisasi ESP8266 Wifi .............................................................. 21
Listing 4.1.4 Scribt ProgramKoneksi ESP8266 Wifi ke Akses Point ................. 22
Listing 4.1.5 Scribt Program Koneksi ke MQTT Server .................................... 22
Listing 4.1.6 Scribt program untuk membaca data sensor HC-SR04 ................. 23
Listing 4.1.7 Script publish data sensor ke MQTT Server .................................. 23
Listing 4.2.1 Scribt program mencari rumus bahan bakar pada tanki pendam ... 24
Listing 4.2.2 Menyimpan Data Sensor Ke Database InfluxDB .......................... 25
Listing 4.2.3 Implementasi Framework Dash Python Dengan Flask .................. 25
Listing 4.2.4 Routing dan Authentikasi user ....................................................... 26
Listing 4.2.5 Program Callback untuk menampilkan grafik sensor ................... 27