perancangan monitoring power failure pada panel …
TRANSCRIPT
PERANCANGAN MONITORING POWER FAILURE
PADA PANEL KWH BERBASIS IoT
A final project report
presented to
the Faculty of Engineering
By
KARNO FITRIANTO
002201405043
in partial fulfillment
of the requirements of the degree
Bachelor of Science in Electrical Engineering
President University
May 2018
i
DECLARATION OF ORIGINALITY
I declare that this final project report, entitled “PERANCANGAN MONITORING
POWER FAILURE PADA PANEL KWH BERBASIS IoT ” is my own original piece of
work and, to the best of my knowledge and belief, has not been submitted, either in whole or
in part, to another university to obtain a degree. All sources that are quoted or referred to are
truly declared.
Cikarang, Indonesia, May 2018
Karno Fitrianto
ii
HALAMAN PENGESAHAN
PERANCANGAN MONITORING POWER FAILURE
PADA PANEL KWH BERBASIS IoT
Oleh
Karno Fitrianto
002201405043
Disetujui Oleh
Ir. Carolus Kaswandi MT PembimbingTugas Akhir
A. Suhartomo Ph.D Ketua Program Studi Teknik Elektro
iii
KATA PENGANTAR
Puji syukur kehadirat Alloh SWT karena hanya dengan rahmat dan ridho Nya
penyusunan skripsi ini yang berjudul Simulasi Sistim Perancangan Monitoring Power
Failure Pada Panel Kwh Berbasis IoT dapat diselesaikan dengan sebaik-baiknya. Dalam
penulisan skripsi ini penulis tidak sendiri, karya ini dapat diselesaikan dengan baik berkat
bantuan dari beberapa pihak, untuk itu penulis mengucapkan terimakasih kepada :
1. Seluruh keluarga tercinta yang telah memberikan semangat, dorongan dan
dukungan dari semasa perkuliahan sampai pembuatan tugas akhir ini.
2. Dr.-Ing. Erwin Sitompul selaku Dekan Fakultas Teknik President university.
3. Bapak Joni Welman Simatupang.Phd, Kepala Program Studi Teknik Elektro
President University 2017-2018 atas dukungan moral selama perkuliahan.
4. Bapak A. Suhartomo Phd selaku Kepala Program Studi Teknik Elektro President
University saat ini, sekaligus advisor mahasiswa Teknik Elektro kelas malam.
5. Bapak Ir. Carolus Kaswandi MT selaku pembimbing dalam tugas akhir ini yang
telah memberikan arahan arahan dalam pembuatan tugas akhir ini.
6. Bapak Suryoko Hari Nugroho, selaku Manager Operation PT.Bekasi Power yang
telah mendorong memberikan motivasi dan waktu dari mulai perkuliahan sampai
dalam menyelesaikan skripsi ini.
7. Rekan-rekan senior mahasiswa yang telah membantu dan rekan seangkatan yang
telah saling memberi semangat dalam pembuatan skripsi.
8. Semua pihak yang telah membantu penulis hingga terselesaikannya dalam
penyusunan skripsi yang tidak dapat disebutkan satu persatu.
Penulis menyadari dalam Skripsi ini masih jauh dari sempurna, mengingat kemampuan
yang ada pada penulis sendiri sangat terbatas. Oleh karena itu dengan rendah hati
penulis mengharapkan segala kritik dan saran yang membangun untuk lebih
sempurnanya penulisan laporan ini. Akhir kata, semoga laporan skripsi ini dapat
bermanfaat khususnya bagi penulis sendiri dan umumnya bagi mahasiswa-mahasiswi
Program Studi Teknik Elektro President University.
Bekasi, 14 Mei 2018
Penulis
iv
APPROVAL FOR SCIENTIFIC PUBLICATION
I hereby, for the purpose of development of science and technology, certify and approve to
give President University a non-exclusive royalty-free right upon my final project report
with the title:
PERANCANGAN MONITORING POWER FAILURE
PADA PANEL KWH BERBASIS IoT
along with the related software or hardware prototype (if needed). With this non-exclusive
royalty-free right, President University is entitled to conserve, to convert, to manage in a
database, to maintain, and to publish my final project report. These are to be done with the
obligation from President University to mention my name as the copyright owner of my
final project report.
Cikarang, May 2018
Karno Fitrianto
002201405043
v
ABSTRAK
Dalam proses penyaluran energi listrik kepada para pelanggan di kawasan industri, dilakukan melalui suplai 20KV, yang kemudian didistribusikan kepada seluruh pelanggan, baik pelangggan Tegangan Menengah (TM) 20 KV, maupun pelanggan Tegangan Rendah (TR) 380 V. Tenan – tenan yang berada di kawasan ini, adalah bagian yang sangat penting bagi Bekasi Power (BP). Oleh karena itu BP selalu menjaga agar para pelanggan selalu terpenuhi kebutuhan listriknya, dan mendapatkan pelayan yang terbaik. Setiap keluhan dari pelanggan terhadap suplai listrik selalu direspon dengan cepat, dengan adanya tim layanan pelanggan dan tim distribusi yang selau siap menerima setiap pengaduan dan keluhan pelanggan.
Namun sistim ini dinilai masih kurang maksimal, apalagi di era globalisasi ini dimana kepuasan pelanggan adalah menjadi hal utama. Kekurangan itu diantarnya adalah, setiap informasi gangguan suplai listrik, informasi yang pertama didapat adalah dari pelanggan, bukan BP yang lebih dulu menginformasikan ada gangguan. Yang kedua adalah apabila ada gangguan pada KWH meter, yang disebabkan catu daya untuk KWH meter tersebut terputus, tidak bisa langsung diketahui. Hal itu karena tidak setiap hari panel KWH meter itu dicek, dan itu bisa berhari hari, yang akibatnya ketika hal itu terjadi adalah kesulitan perhitungan berapa daya yang terpakai. Hal biasa yang dilakukan adalah dengan menghitung rata rata pemakain sebelumnya. Tapi hal itu di satu sisi bisa merugikan atau menguntungkan satu pihak karena kurang akuratnya perhitungaan pemakaian listrik.
Dalam tugas akhir ini penulis mengajukan rancangan perangkat yang dapat memberitahukan dengan cepat kepada petugas di ruang kontrol apabila terjadi gangguan pada sistim suplai listrik di panel KWH pelanggan, sehingga dapat segera dilakukan tindakan perbaikan dengan cepat. Sistim yang dibuat penulis ini akan dihubungkan langsung dengan suplai listrik yang berada di panel KWH. Melalui perangkat ini setiap kehilangan tegangan baik pada sisi main power maupun pada sisi catu daya untuk KWH meter, segera terdeteksi melalui magnetic relay. Selanjutnya sinyal inputan masuk melalui kontak relay dikirim ke modul Controller ESP8266 - Nodemcu 12N. Sinyal yang masuk diolah dan dikirimkan ke server melalui jaringan wifi. Setiap data yang dikirim oleh Nodemcu ESP8266 akan disimpan di database. Data yang masuk kemudian diambil menggunakan MySqli dan diolah dengan bahasa pemograman PHP. Hasil pengolahan data ditampilakan pada website untuk memantau status suplai listrik pelanggan.
Keyword: Pelanggan, monitoring, ESP8266, suplai listrik
vi
DAFTAR ISI
DECLARATION OF ORIGINALITY ................................................................................... i
HALAMAN PENGESAHAN ............................................................................................... ii
KATA PENGANTAR .......................................................................................................... iii
ABSTRAK ............................................................................................................................ v
DAFTAR ISI ........................................................................................................................ vi
DAFTAR GAMBAR .......................................................................................................... viii
DAFTAR TABEL ................................................................................................................. x
BAB 1 PENDAHULUAN ..................................................................................................... 1
1.1. Latar Belakang .......................................................................................................... 1
1.2. Rumusan Masalah .................................................................................................... 2
1.3. Tujuan ....................................................................................................................... 2
1.4. Ruang Lingkup dan Batasan Masalah ...................................................................... 2
1.5. Garis Besar Tugas Akhir .......................................................................................... 3
BAB II LANDASAN TEORI DAN SPESIFIKASI DESAIN ............................................. 4
2.1. Landasan Teori .......................................................................................................... 4
2.2. Microcontroller .......................................................................................................... 6
2.3. NodeMCU ESP8266 ................................................................................................. 9
2.4. Arduino IDE ........................................................................................................... 13
2.4. HP ............................................................................................................................ 16
2.5. MySQL Database .................................................................................................... 17
2.6. Relay ........................................................................................................................ 18
BAB III IMPLEMENTASI DESAIN ................................................................................ 21
3.1. Pengantar Awal ....................................................................................................... 21
3.2. Implementasi Perangkat Keras ................................................................................ 23
vii
3.2.1. Skema Pengawatan ........................................................................................ 23
3.2.2. Konstruksi Panel ............................................................................................ 25
3.3. Implementasi Perangkat Lunak ........................................................................ 27
3.3.1. Arduino IDE .................................................................................................. 27
3.3.2. XAMPP ......................................................................................................... 30
3.3.3. Notepad++ ..................................................................................................... 31
3.3.4. PHP dan MySQLi .......................................................................................... 32
BAB 4 HASIL UJICOBA DAN ANALISA ....................................................................... 35
4.1. Pengujian Pengiriman Data ke Server Dan Tampilan Monitor .............................. 35
4.2. Analisa Kebutuhan Waktu Pada Aktual Gangguan ................................................ 34
4.3. Kelebihan ................................................................................................................ 38
4.4. Kekurangan ............................................................................................................. 38
BAB V KESIMPULAN DAN SARAN .............................................................................. 39
5.1. Kesimpulan ............................................................................................................. 39
5.2. Saran dan Pengembangan ....................................................................................... 39
DAFTAR PUSTAKA .......................................................................................................... 40
APENDIKS A ARDUINO CODE ...................................................................................... 41
APENDIKS B PHP CODE ................................................................................................. 43
viii
DAFTAR GAMBAR
Gambar 2.1 Sistim Sederhana IoT ......................................................................................... 5
Gambar 2.2 Sistim Penyaluran Daya ..................................................................................... 6
Gambar 2.3 Blok Diagram Microcontroller [1] .................................................................... 7
Gambar 2.4 Tipe Memori Semikonduktor [1] ....................................................................... 6
Gambar 2.5 Block Diagram Nodemcu ESP8266 [4] ............................................................. 9
Gambar 2.6 Nodemcu ESP8266 [7] .................................................................................... 11
Gambar 2.7 Pin Layout Nodemcu ESP8266[6] ................................................................. 11
Gambar 2.8 Arduino IDE .................................................................................................... 14
Gambar 2.9 Halaman Arduino IDE ..................................................................................... 15
Gambar 2.10. Bentuk dan Simbol Relay ............................................................................. 19
Gambar 2.11 Bagian - Bagian Relay ................................................................................... 19
Gambar 3.1 Blok Diagram Sistim ....................................................................................... 21
Gambar 3.2 Flowchart Sistim .............................................................................................. 22
Gambar 3.3 Skema Pengawatan 1 ...................................................................................... 23
Gambar 3.4 Skema Pengawatan 2 ...................................................................................... 24
Gambar 3.5 Skema Pengawatan 3 ...................................................................................... 24
Gambar 3.6 Panel Front View ............................................................................................ 25
Gambar 3.7 Parts Arrangement ......................................................................................... 26
Gambar 3.8 Arduino Declaration Code .............................................................................. 27
Gambar 3.9 Arduino Void Setup .......................................................................................... 28
Gambar 3.10 Program Koneksi ke Server ........................................................................... 29
Gambar 3.11 Program Kirim Data ke Server ...................................................................... 30
Gambar 3.12 Tampilan XAMPP Conttrol Panel ................................................................. 31
Gambar 3.13 Tampilan Notepad++ .................................................................................... 32
Gambar 3.14 Tampilan Aplikasi XAMPP ........................................................................... 32
ix
Gambar 3.15 Tampilan PHP MyAdmin .............................................................................. 33
Gambar 3.16 Tampilan Aplikasi Monitoring ...................................................................... 34
Gambar 4.1 Pengujian 1 Pengirman Data ke Server .......................................................... 35
Gambar 4.2 Pengujian 2 Pengirman Data ke Server .......................................................... 37
x
DAFTAR TABEL
Table 2.1. Spesifikasis ESP8266 [5]......... ............................................................................ 8
Tabel 2.2 Spesifikasi Relay ................................................................................................. 18
Tabel 3.1 Konfigurasi Pin Nodemcu ................................................................................... 24
Tabel 4.1 Hasil Pengujian 1 ................................................................................................ 33
Tabel 4.2 Hasil Pengujian 2 ................................................................................................ 34
President University 1
BAB 1
PENDAHULUAN
1.1. Latar Belakang
Seiring dengan berkembangnya pesatnya dunia industri dan pertumbuhan penduduk, maka
semakin banyak pula dibutuhkan energi sebagai penopang jalannya kehidupan maupun
industri. Tidak mungkin ada perkembangan industri tanpa adanya ketersediaan energi,
terutama energi listrik. Dan tidak mungkin pula di zaman seperti ini manusia mengabaikan
kebutuhan akan energi listrik untuk kehidupan sehari-harinya.
Untuk memenuhi hal tersebut pemerintah dan juga dibantu swasta berusaha memenuhi
akan kebutuhan energi listrik tersebut. Maka dibangunlah pembangit listrik dimana-mana,
dengan menggunakan berbagai sumber energi, baik itu air, gas, batu bara dan lain
sebagainya. Salah satunya adalah PT. Bekasi Power, yang merupakan salah satu
pembangkit listrik swasta, yang di bangun untuk memenuhi kebutuhan listrik di kawasan
industri jababeka dan sekitarnya.
Dalam proses penyaluranya kepada para pelanggan di kawasan industri, di lakukan melalui
suplai 20 KV, yang kemudian dibagi bagi kepada seluruh pelanggan, baik pelangggan
Tegangan Menengah (TM) 20 KV, maupun pelanggan Tegangan Rendah (TR) 380 V. Para
pelanggan yang berada di kawasan industri ini, adalah bagian yang sangat penting bagi
Bekasi Power (BP). Oleh karena itu BP selalu menjaga agar para pelanggan selalu
terpenuhi kebutuhan listriknya, dan mendapatkan pelayan yang terbaik. Setiap keluhan dari
pelanggan terhadap suplai listrik selalu di respon dengan cepat, dengan adanya layanan
pelanggan dan tim distribusi yang selalu siap menerima setiap pengaduan dan keluhan
pelanggan.
Namun sistim ini dinilai masih kurang maksimal, apalagi di era globalisasi ini dimana
kepuasan pelanggan adalah menjadi hal utama. Kekurangan itu diantarnya adalah, setiap
informasi gangguan suplai listrik, informasi yang pertama didapat adalah dari pelanggan,
bukan BP yang lebih dulu menginformasikan ada gangguan. Yang kedua adalah apabila
ada gangguan pada KWH meter, yang disebabkan catu daya untuk KWH meter tersebut
President University 2
terputus, tidak bisa langsung diketahui, karena tidak setiap hari panel KWH meter itu
dicek, dan itu bisa berhari hari, yang akibatnya ketika hal itu terjadi adalah kesulitan
perhitungan berapa daya yang terpakai, biasanya yang dilakukan adalah dengan
menghitung rata rata pemakain sebelumnya. Tapi hal itu di satu sisi bisa merugikan atau
mengungtungkan satu pihak karena kurang akuratnya perhitungaan pemakaian listrik.
Atas alasan di atas maka diperlukan suatu alat yang dapat memberitahukan bahwa di tenant
x telah terjadi gangguan. Sistim yang dibuat penulis buat akan dihubungkan langsung
dengan suplai listrik yang berada di panel KWH.
Perangkat microcontroller dipergunakan untuk membaca sinyal inputan dan mengirimnya
ke server melalui jaringan internet yang akan terbaca di controlroom. Dan petugas
distribusi akan segera datang ke lokasi yang dikirimkan oleh microcontroller tersebut.
Sehingga masalah masalah akan lebih cepat teratasi dan memuaskan semua pihak.
1.2. Rumusan Masalah
Sistim pemberitahuan untuk gangguan suplai listrik yang terjadi pada pelanggan, dinilai
kurang cepat, dan apabila terjadi gangguan pada KWH meter perhitungan dayanya jadi
kurang akurat.
1.3. Tujuan
Tugas akhir yang berjudul Perancangan Monitoring Power Failuire Pada Panel KWH
Berbasis IoT ini bertujuan untuk :
1. Mempercepat respon apabila terjadi gangguan listrik pada pelanggan PT. Bekasi
Power.
2. Merperkecil ketidakakuratan perhitungan daya terpakai apabila terjadi gangguan
pada KWH meter.
1.4. Ruang Lingkup dan Batasan Masalah
Ruang lingkup dari penulisan tugas akhir ini adalah :
1. Pembuatan sistim deteksi power failure, menggunakan magnetic relay
President University 3
2. Penggunaan microcontroller yang terintegrasi wifi NodeMCU ESP-8266
3. Pemograman web server menggunakan PHP dan SQL.
Batasan yang diambil dalam pengerjaan tugas akhir ini adalah:
1. Jumlah Panel KWH yang terhubung pada prototipe ini adalah satu.
2. Jarak antara modul mikrokontrol dan server, tidak mencerminkan jarak yang sebenarnya,
yaitu panel KWH yang berada pada tiap – tiap pelanggan.
1.5 Garis Besar Tugas Akhir
Tugas akhir ini terdiri dari 5 BAB sebagai berikut:
BAB 1 : Pendahuluan, Bab ini terdiri dari latar belakang , landasan masalah, ruang lingkup
dan batasan masalah, dan garis besar tugas akhir.
BAB 2: Dasar teori dan spesifikasi desain, bagian ini mendiskripsikan keseluruhan teori
dari perangkat keras dan perangkat lunak yang digunakan dalam pengerjaaan
tugas akhir ini.
BAB 3: Bab ini berisi tentang implementasi desain yang telah dibahas di bab sebelumnya.
Bab ini juga mencakup desain sistim, desain perangkat, diagram alir, konfigurasi
perangkat keras dan perangkat lunak dan komponen-komponen yang digunakan.
BAB 4: Bab ini berisi tentang hasil uji coba dan analisa . Bab ini menujukkan hasil dari
tugas akhir ini beserta analisanya.
BAB 5: Bab ini berisi tentang kesimpulan yang didapat dari pengerjaan tugas akhir ini,
dan saran untuk pengembangan lebih lanjut di masa depan
President University 4
BAB II
LANDASAN TEORI DAN SPESIFIKASI DESAIN
2.1 Landasan Teori
2.1.1 Internet of Think
Menurut (Burange & Misalkar, 2015) Internet of Things (IoT) adalah struktur di mana
objek, orang disediakan dengan identitas eksklusif dan kemampuan untuk pindah data
melalui jaringan tanpa memerlukan dua arah antara manusia ke manusia yaitu sumber ke
tujuan atau interaksi manusia ke komputer.
Tantangan utama dalam IoT adalah menjembatani kesenjangan antara dunia fisik dan
dunia informasi. Seperti bagaimana mengolah data yang diperoleh dari peralatan eletronik
melakui sebuah perangkat antarmuka antara pengguna dan peralatan itu. sensor
mengumpulkan data mentah fisik dari skenario real time dan mengkonversikan ke dalam
mesin format yang dimengerti sehingga akan mudah dipertukarkan antara berbagai bentuk
format data (Thing) (Suresh, Daniel, & Aswathy, 2014).
Dengan jumlah besar hal / benda dan sensor / aktuator yang terhubung ke internet, besar-
besaran dan dalam beberapa kasus aliran data real-time akan otomatis dihasilkan oleh hal-
hal yang terhubung dan sensor. Dari semua kegiatan yang ada dalam IoT adalah untuk
mengumpulkan data mentah yang benar dengan cara yang efisien; tapi lebih penting adalah
untuk menganalisis dan mengolah data mentah menjadi informasi lebih berharga (C. Wang
et al., 2013). Internet of Things dalam penerapannya juga dapat mengidentifikasi,
menemukan, melacak, memantau objek dan memicu event terkait secara otomatis dan real
time, Pengembangan dan penerapan komputer, Internet dan teknologi informasi dan
komunikasi lainnya (TIK) membawa dampak yang besar pada masyarakat manajemen
ekonomi, operasi produksi, sosial manajemen dan bahkan kehidupan pribadi. (Q. Zhou &
Zhang, 2011). Gambaran sederhana dari sebuah sistim IoT dapat dilihat pada Gambar 2.1
dibawah ini.
President University 5
Gambar 2.1 Sistim Sederhana IoT
2.1.2 Distribusi tenaga listrik
Distribusi pada pelanggan kawasan industri menggunakan sistim tegangan menegah ( 20
KV ) dan tegangan rendah ( 380 V ). Tenaga listrik yang ada di kawasan industri akan
disalurkan kepada pelanggan melalui sebuah panel, yang didalamnya terdapat proteksi
misalkan under dan over voltage, over dan under frekwensi, over current dan lain
sebagainya. Yang kerjanya akan mentripkan breaker bila terjadi gangguan. Kemudian
pemakaian tenaga listrik itu akan dihitung oleh sebuah alat yaitu KWH meter.
Pada sistim penyaluran tegangan menengah, biasanya posisi breaker akan terpisah dengan
dengan posisi KWH meter, karena menyangkut masalah keamanan terhadap bahaya
sengatan listrik yang sangat besar. Sedangan pada sistim tegangan rendah posisi breaker
bersama dengan KWH meter. Pada tegangan menegah tegangan dan arus tidak diukur
secara langsung, tetapi melalui VT dan CT. VT untuk merubah tegangan, biasanya KWH
meter memakai tegangan 100VAC, jadi CT nya yang dipakai adalah 100/5, sedangkan CT
untuk merubah arus, yang biasanya pengukuran di KWH mempunyai besaran 0-5A. jadi
President University 6
jika misalkan pembatas arus maksimalnya adalah 50A, maka CT yang digunakan adalah
50/5. Artinya jika terbaca di KWH 5 ampere maka itu artinya arus yang mengalir
sesungguhnya adalah 50 ampere. Sedangka pada tegangan rendah, tidak digunakan VT
tetapi hanya CT untuk yang arusnya besar, dan untuk arus yang kecil biasanya langsung
masuk KWH meter. Pada Gambar 2.2 terlihat alur dari sistim penyaluran tenaga listrik dari
mulai pembangkit listrik sampai penyaluran kepada pelanggan di kawasan industri.
Gambar 2.2 Sistim Distribusi Daya
2.2 Microcontroller
Microcontroller adalah integrasi dari sebuah microprocessor dengan memori dan penampil
input/output dan perangkat lain seperti timer dalam sebuah chip [1].
President University 7
Gambar 2.3 Blok Diagram Microcontroller[1]
Gambar 2.2 menunjukkan gambaran umum dari sebuah microcontroller. Microcontroller
pada umumnya memiliki pin untuk koneksi eksternal dari input, output, power, clock dan
sinyal control.
• Processor Core
CPU (Central Procesor Unit ) adalah bagian dari sistim processor yang mengolah
data, mengambil data dari memori, decoding (menyusun ulang) dan megeksekusi
[2].
• Memori
Memori dari microcontroller terbagi menjadi volatile dan non-volatile seperti
nampak pada Gambar 2.4. Memori volatile akan menyimpan data selama sistim
diberi catu daya dan memori non-volatile akan tetap menyimpan data walaupun
tidak ada catu daya [2]. Pembagian tipe-tipe memori dari semikonduktor dapat
dilihat pada Gambar 2.4 di bawah ini.
President University 8
Gambar 2.4 Tipe memori semikonduktor[1]
Kebanyakan microcontroller terbaru menggunakan SRAM, dan FLASH EEPROM.
Static Random Access Memory (SRAM) adalah memori semikonduktor yang
menggunakan flip-flop untuk mempertahankan data. FLASH Electrically Erasable
and Programmable Read Only Memory (FLASH EEPROM) biasanya digunakan
untuk program, bukan sebagai memori data dan dapat ditulis dan dihapus secara
elektronik [2].
• Digital I/O
Input output digital adalah bagian dari microcontroller yang dapat mendeteksi
ataupun memberikan keluaran berupa tegangan sebagai nilai digital (HIGH -
LOW)[2] .
• Analog I/O
Analog I/O adalah bagian dari microcontroller yang dapat menerima input atau
memberikan output berupa data analog/ tegangan yang nilainya bervariasi [2].
• Interfaces
Microcontroller umumnya mempunyai sebuah serial interface yang dapat
digunakan untuk mengunduh program dan untuk komunikasi dengan PC secara
umum. Semenjak serial interface juga dapat digunakan untuk komunikasi dengan
semiconductor
memory
volatile
SRAM
DRAM
non volatile
ROM
PROM
EPROM
EEPROM
Flash EEPROM
NVRAM
President University 9
perangkat tambahan lainya, banyak controler menawarkan bermacam macam
interface seperti SCI dan SPI [2].
Microcontroller juga memiliki integrated bus controller untuk mengendalikan
sistim bus pada umumnya, I2C dan CAN digunakan dalam hal ini. Microcontroller
yang lebih besar dapat menggunakan PCI ,USB,atau Ethernet interface [2].
• Debuging unit
Beberapa controller dilengkapi dengan perangkat keras tambahan untuk
memungkinkan remote debuging untuk chip dari PC. Jadi tidak perlu mengunduh
perangkat lunak debuging khusus. Sehingga kode aplikasi yang salah tidak akan
dapat menimpa debugger [2].
2.3 NodeMCU ESP8266
NodeMCU adalah sebuah platform IoT yang bersifat open source.
Terdiri dari perangkat keras berupa System On Chip ESP8266 dari ESP8266
buatan Esperessif System. Block diagram dari ESP8266 ini dapat dilihat pada
Gambar 2.5
Gambar 2.5 Block diagram Nodemcu ESP8266 [3]
President University 10
ESP8266 ini walaupun kecil dari bentuk fisiknya tetapi mempunya spesifikasi yang
dapat memenuhi kebutuhan kontrol yang bersifat nirkabel, seperti dapat dilihat
pada Tabel 2-1 dan bentuk fisiknya bisa dilihat pada Gambar 2.6.
Tabel 2-1. Spesifikasi ESP8266
Kategori Detail Spesifikasi
Wi-Fi
Certification Wi-Fi Alliance
Protocols 802.11 b/g/n
Frequency Range
2.4G ~ 2.5G (2400M ~ 2483.5M)
Tx Power
802.11 b: + 20 dbm 802.11 g: + 17 dBm 802.11 n: + 14 dBm
Rx Sensitivity
802.11 b: –91 dbm (11 Mbps)
802.11 g: –75 dbm (MCS7)
802.11 n: –72 dbm (MCS7)
Antenna
PCB Trace, External, IPEX Connector, Ceramic Chip
Hardware
CPU Tensilica L106 32-bit processor
Peripheral Interface
UART/SDIO/SPI/I2C/I2S/IR Remote Control GPIO/ADC/PWM/LED Light & Button
Operating Voltage 2.5V ~ 3.6V
Operating Current Average value: 80 mA
Operating Temperature Range
–40°C ~ 125°C
Storage Temperature Range –40°C ~ 125°C
Package Size FN32-pin (5 mm x 5 mm)
President University 11
Gambar 2.6 Nodemcu ESP8266
Gambar 2.7 Pin Layout Nodemcu ESP8266 [3]
Pada Gambar 2.7 di atas adalah gambar susunan dari PIN ESP8266-NodeMCU,
dengan fungsi sebagai berikut:
RST : berfungsi mereset modul
ADC: Analog Digital Converter. Rentang tegangan masukan 0-1v, dengan skup
nilai digital 0-1024
President University 12
EN: Chip Enable, Active High
IO16 :GPIO16, dapat digunakan untuk membangunkan chipset dari mode deep
sleep
IO14 : GPIO14; HSPI_CLK
IO12 : GPIO12: HSPI_MISO
IO13: GPIO13; HSPI_MOSI; UART0_CTS
VCC: Catu daya 3.3V (VDD)
CS0 :Chip selection
MISO : Slave output, Main input
IO9 : GPIO9
IO10 GBIO10
MOSI: Main output slave input
SCLK: Clock
GND: Ground
IO15: GPIO15; MTDO; HSPICS; UART0_RTS
IO2 : GPIO2;UART1_TXD
IO0 : GPIO0
IO4 : GPIO4
IO5 : GPIO5
RXD : UART0_RXD; GPIO3
TXD : UART0_TXD; GPIO1
President University 13
NodeMCU bisa dianalogikaan sebagai board arduino yang terkoneksi dengan
ESP8622. NodeMCU telah me-package ESP8266 ke dalam sebuah board yang sudah
terintergrasi dengan berbagai feature selayaknya mikrokontroler dan kapalitas ases
terhadap wifi dan juga chip komunikasi yang berupa USB to serial. Sehingga dala
pemograman hanya dibutuhkan kabel data USB.
Karena Sumber utama dari NodeMCU adalah ESP8266 khusunya seri ESP-12 yang
termasuk ESP-12N. Maka fitur – fitur yang dimiliki oleh NodeMCU akan lebih
kurang serupa dengan ESP-12. Beberapa Fitur yang tersedia antara lain :
1. 10 Port GPIO dari D0 – D10
2. Fungsionalitas PWM
3. Antarmuka I2C dan SPI
4. Antarmuka 1 Wire
5. ADC
ESP8266 menggunakan standar tegangan JEDEC (tegangan 3.3V) untuk bisa berfungsi.
Tidak seperti mikrokontroler AVR dan sebagian besar board Arduino yang memiliki
tegangan TTL 5 volt
2.3 Arduino IDE
Gambar 2.6 merupakan gambar antarmuka dari perangkat lunak Arduino. Ini merupakan
perangkat lunak untuk membuat program Arduino. Perangkat lunak ini dapat diunduh
gratis di https://www.Arduino.cc/en/main/software. Perangkat lunak ini diprogram
menggunakan bahasa pemrograman C dan mempunyai beberapa tipe data yang dapat
digunakan untuk membuat program [4].
President University 14
Gambar 2.8 Arduino IDE
Seperti ditunjukkan dalam Gambar 2.7, Arduino IDE menyerupai pengolah kata sederhana.
IDE ini dibagi menjadi tiga bidang utama: command area, text area , dan message window
area terdapat pula bagian titlebar, Menu items dan icons.
President University 15
Gambar 2.9 Halaman Arduino IDE
2.3.1 Command area
Command area ditampilkan di bagian atas Gambar 2.9 dan termasuk title bar, menu item,
dan icon. Title bar menampilkan nama file sketsa ini (sketch_mar22a), serta versi IDE
(Arduino 1.0). Di bawah ini adalah serangkaian menu items (File, Edit, Sketch, Tools, dan
Help) dan icon, seperti yang dijelaskan selanjutnya [4].
Menu Items
seperti dengan pengolah kata atau editor teks, salah satu item dapat di klik untuk
menampilkan berbagai pilihan.
• File terdiri dari pilihan untuk save, load, and print sketches.
• Edit Berisi copy, paste, dan fungsi pencarian umum untuk setiap pengolah kata
President University 16
• Sketch Berisi fungsi untuk memverifikasi sketsa sebelum mengunggah ke papan
Arduino. dan beberapa folder sketsa dan pilihan impor
• Tools Berisi berbagai fungsi serta perintah untuk memilih jenis papan Arduino dan
port USB
• Help Berisi link ke berbagai topik yang menarik dan versi IDE
Icon
Dibawah toolbar menu terdapat enam icon.Apabila kursor ditempatkan akan muncul
keterangan dari kiri ke kanan sebagai berikut:
• Verify klik ini untuk menetahui apakah ada kesalahan program pada sketsa
Arduino.
• Upload memverifikasi dan mengunggah sketsa di papan Arduino
• New untuk membuat sketsa baru
• Open untuk membuka sketsa yang sudah tersimpan.
• Save untuk menyimpan sketsa anda kedalam memori komputer
• Serial Monitor klik untuk membuka jendela baru yang digunakan untuk menerima
dan mengirim data dari Arduino ke IDE
2.3.2 Text area
Text area ditampilkan di tengah-tengah Gambar 2.9 ini adalah tempat untuk menulis
sketsa. Nama sketsa saat ini akan ditampilkan pada tab di kiri atas area teks. Nama default
adalah tanggal saat ini. Cara mengisi sketsa sama dengan cara mengisi editor teks [4].
2.3.3 Message window area
Message Window Area ditampilkan di bagian bawah Gambar 2.9. Pesan dari IDE muncul
di area hitam. Pesan yang muncul bervariasi, dan akan mencakup pesan tentang
memverifikasi sketsa, update status, dan sebagainya [4]
2.4 PHP
PHP adalah bahasa pemrograman script server-side yang didesain untuk pengembangan
web. Selain itu, PHP juga bisa digunakan sebagai bahasa pemrograman umum (wikipedia).
PHP di kembangkan pada tahun 1995 oleh Rasmus Lerdorf, dan sekarang dikelola oleh
The PHP group. Situs resmi PHP beralamat di http://www.php.net. PHP disebut bahasa
pemrograman server side karena PHP diproses pada komputer server. Hal ini berbeda
President University 17
dibandingkan dengan bahasa pemrograman client-side seperti JavaScript yang diproses
pada web browser (client).
Pada awalnya PHP merupakan singkatan dari Personal Home Page. Sesuai dengan
namanya, PHP digunakan untuk membuat website pribadi. Dalam beberapa tahun
perkembangannya, PHP menjelma menjadi bahasa pemrograman web yang powerful dan
tidak hanya digunakan untuk membuat halaman web sederhana, tetapi juga website
populer yang digunakan oleh jutaan orang seperti wikipedia, wordpress, joomla, dll.
Saat ini PHP adalah singkatan dari PHP: Hypertext Preprocessor, sebuah kepanjangan
rekursif, yakni permainan kata dimana kepanjangannya terdiri dari singkatan itu sendiri:
PHP: Hypertext Preprocessor. Rekursif adalah PHP memiliki kemampuan / fungsi untuk
memanggil dirinya sendiri.
PHP dapat digunakan dengan gratis (free) dan bersifat open source. PHP dirilis dalam
lisensi PHP license, sedikit berbeda dengan lisensi GNU General Public License (GPL)
yang biasa digunakan untuk proyek Open Source.
Fungsi-funsinyanya sangat lengkap termasuk dukungan/support terhadap OOP (Object
Oriented Programming). Dengan support terhadap OOP ini melahirkan framework-
framework PHP seperti Code Igniter, Cakephp, Yii dan lain-lain. PHP juga mendukung
banyak database seperty MySQL. MSSql, Oracle dan lain-lain.
2.5 MySQL Database
MySQL atau Structured Query Language. merupakan suatu tools yang menggunakan
bahasa khusus. Istilah SQL dapat diartikan sebagai suatu bahasa yang digunakan untuk
mengakses suatu data dalam database relasional dan terstruktur sedangkan MySQL dalam
hal ini menjadi software atau tools untuk mengelola atau memanajemen SQL dengan
menggunakan Query atau Bahasa khusus. Pada dasarnya database yang dikelola dalam
MySQL memang tidak jauh berbeda dari Microsoft Acces yakni berbentuk tabel – tabel
yang berisi informasi tertentu. Perbedaannya terletak pada penggunaan serta pengelolaan
database tersebut.
MySQL ini tergolong suatu software yang open source dan berlisensi GPL atau General
Public License. Lisensi GPL ini hanya ditujukan pada perangkat lunak tertentu untuk
President University 18
keperluan proyek GNU, inilah yang menjadi faktor banyaknya pengguna MySQL di
seluruh dunia. Selain mudah digunakan, anda dapat mengelola data dengan lebih efektif
karena menggunakan script atau Bahasa tertentu dan secara otomatis akan menjadi
perintah ke sistim
Berikut beberapa keunggulan MySQL dibandingkan dengan RDBMS lainnya:
1. Speed
2. Reliability
3. Scalability
4. User Friendly
5. Portability and Standard Compliance
6. Multiuser Support
7. Internationalization
8. Wide Application Support
9. Open Source Code
Elemen dari SQL yang paling dasar antara lain :
1. Pernyataan
2. Nama
3. Tipe data
4. Ekspresi
5. Konstanta
6. Fungsi bawaan
2.6 Relay
2.6.1 Pengertian relay dan fungsinya [5]
Relay adalah Saklar (Switch) yang dioperasikan secara listrik dan merupakan komponen
Electromechanical (Elektromekanikal) yang terdiri dari 2 bagian utama yakni
Elektromagnet (Coil) dan Mekanikal (seperangkat Kontak Saklar/Switch). Relay
menggunakan Prinsip Elektromagnetik untuk menggerakkan Kontak Saklar sehingga
dengan arus listrik yang kecil (low power) dapat menghantarkan listrik yang bertegangan
dan berdaya lebih tinggi.
President University 19
Pada Gambar 2.10 dibawah ini adalah gambar bentuk relay dan simbol relay yang sering
ditemukan.
Gambar 2.10 Bentuk dan Simbol Relay
2.6.2 Prinsip kerja relay [5]
Pada dasarnya, relay terdiri dari 4 komponen dasar yaitu :
- Electromagnet (Coil)
- Armature
- Switch Contact Point (Saklar)
- Spring
Pada Gambar 2.11 berikut ini merupakan gambar dari bagian-bagian relay :
Gambar 2.11 Bagian – Bagian Relay
President University 20
Kontak Poin (Contact Point) Relay terdiri dari 2 jenis yaitu :
• Normally Close (NC) yaitu kondisi awal sebelum diaktifkan akan selalu berada di
posisi CLOSE (tertutup)
• Normally Open (NO) yaitu kondisi awal sebelum diaktifkan akan selalu berada di
posisi OPEN (terbuka)
Berdasarkan gambar diatas, sebuah Besi (Iron Core) yang dililit oleh sebuah kumparan
yang berfungsi untuk mengendalikan Besi tersebut. Apabila Kumparan diberikan arus
listrik, maka akan timbul gaya elektromagnet yang kemudian menarik Armature untuk
berpindah dari Posisi sebelumnya (NC) ke posisi baru (NO) sehingga menjadi Saklar yang
dapat menghantarkan arus listrik di posisi barunya (NO). Posisi dimana Armature tersebut
berada sebelumnya (NC) akan menjadi OPEN atau tidak terhubung. Pada saat tidak dialiri
arus listrik, Armature akan kembali lagi ke posisi Awal (NC). Coil yang digunakan oleh
Relay untuk menarik contact point ke posisi close pada umumnya hanya membutuhkan
arus listrik yang relatif kecil. Relay yang digunakan pada tugas akhir ini mempunyai
spesifikasi seperti terlihat pada tabel 2.2.
Tabel 2.2 Spesifikasi Relay
Jumlah Input 2
Jumlah Input 2
Jenis Input Digital
Kapasitas kontak tersedia 3A pada 220VAC
Tegangan maksimal yang diijinkan 250 Volt AC / 24 Volt DC
President University 21
BAB III
IMPLEMENTASI DESAIN
3.1 Pengantar Awal
Bab ini membahas tentang desain prototipe baik program, aplikasi antarmuka dan
perangkat keras rangkaian elektrik yang digunakan. Secara umum prototip ini
menggambarkan keadaan mesin saat digunakan untuk memonitor keadaan suplai listrik
pada pelanggan, dan bagaimana suatu informasi gangguan di sisi pelanggan dapat
disampaikan dan diterima oleh server. Diagram blok prosesnya terlihat pada Gambar 3.1.
Gambar 3.1 Blok Diagram Sistim
Keseluruhan sistim dihubungkan melalui modul NodeMCU ESP8266. Apabila terjadi
kehilangan suplai listrik baik itu di sisi main power ataupun di sisi control KWH meter,
maka hal itu akan dideteksi oleh relay magnetik. Relay yang tadinya selalu bekerja pada
saat suplai normal, maka akan berhenti bekerja ketika kehilangan suplai listrik baik di
main power maupun di power kontrol KWH meter. Pada saat berhenti itulah sinyal yang
Inputan :
Suplai
Normal/Tidak
NodeMCU
ESP8266
Router
Wifi
Server
Normal : Hijau
Abnormal : Merah
& Alarm
President University 22
berada pada kontak NC akan terhubung dan mengalir ke pin digital input dari Nodemcu
ESP8266. Sinyal yang masuk lalu akan terbaca dan diolah oleh modul Nodemcu ESP8266,
yaang kemudian akan dikirimkan lagi ke server melalui jaringan wifi. Pada server sinyal
tersebut akan dimasukan ke dalam data base yang berupa MySQLi, yang kemudian di
ambil menggunakan program PHP, dan ditampilan pada layar monitor. Data akan selalu
diperbaharui sesui dengan settingan refresh yg kita buat pada program. Skema kerja dari
sistim ini bisa dilihat pada Gambar 3.2
Gambar 3.2 Flowchart Sistim
President University 23
3.2 Implementasi Perangkat Keras
Dibagian ini, dijelaskan rencana penggunaan perangkat keras yang akan digunakan .
Perangkat keras yang digunakan adalah:
1. Relay MY2N 220 VAC 4 buah 2. Resistor 10K 2 buah 3. Nodemcu ESP8266 1 buah 4. MCB 1 phasa 4 buah 5. KWH Meter 1 phasa 3buah 6. Terminal block 6 buah 7. Router 1 buah
3.2.1 Skema pengawatan
Sebelum dilakukan pembuatan alat, dilakukan dahulu design sistim, seperti terlihat pada Gambar 3.3 , Gambar 3.4, Gambar 3.5.
Gambar 3.3 Skema Pengawatan 1
President University 24
Gambar 3.4 Skema Pengawatan 2
Gambar 3.5 Skema Pengawatan 3
President University 25
Pada Gambar 3.3 sampai Gambar 3.5 adalah gambar skema pengawatan, yang dibuat untuk mengukur pemakaian daya, memalui kwh meter serta mendeteksi bila ada kehilangan tegangan. Bila tegangan hilang maka relay akan berhenti bekerja dan mengirim sinyal inputan ke modul NodeMCU ESP8266 melalui kontak Normaly Close ( NC ).
3.2.2 Konstruksi panel
Setelah simulasi sistim berhasil dilakukan, maka semuai rangkaian dan komponen
dimasukan ke dalam panel KWH. Pada Gambar 3.6 dan Gambar 3.7 di bawah ini adalah
gambar semua komponen yang dibutuhkan yang telah dimasukan dan disusun dalam
sebuah kotak panel KWH meter.
Gambar 3.6 Tampak Depan Dengan Pintu
President University 26
Gambar 3.7 Susunan Komponen Dalam Panel
Untuk koneksi pada modul ESP8266 NodeMCU dapat dilihat pada Tabel 3.1 di bawah ini.
Tabel 3.1 Konfigurasi Pin Nodemcu ESP8266
NodeMCU 12N Relay
Gnd Pin 9 RYM & RYC
3.3 V Pin 5 RYM & RYC
D1 Pin 5 RYM
D2 Pin 5 RYC
President University 27
3.3 Implementasi Perangkat lunak
3.3.1 Arduino IDE
Arduino IDE pada perancangan prototip ini digunakan untuk memprogram modul
NodeMCU 12N fungsi yang digunakan dalam program Arduino ini adalah
ESP8266WiFi.h dan ArduinoJson.h. ESP8266WiFi.h adalah library khusus untuk
mengidentifikasi modul ESP8266, sedangkan ArduinoJson.h adalah library khusus agar
modul ESP8266 dapat berkomunikasi dengan server.
Gambar 3.8 Arduino declaration code
President University 28
Pada Gambar 3.8 di atas dapat dilihat, bahwa pada program ditentukan dahulu properties
dari jaringan yang akan dimasuki. Pada sistim ini untuk bisa masuk ke jaringan dan
mengirim data ke server, dipakai data sebagai berikut:
Nama ssid = karnotech
Karakter password = 67633159
IP address host = 192.168.0.104
Setelah itu kemudian dilakukan deklarasi dari pin modul NodeMCU yang digunakan:
Pin 5 digunakan untuk input dari relay yang mendeteksi failure dari Suplai main power dan
pin 4 digunakan untuk mendeteksi untuk mendeteksi failure dari control power.
Gambar 3.9 Arduino Void Setup
Pada void setup, dilakukan deklarasi pin sebagai pin input, dan proses perintah untuk mulai
proses koneksi seperti terlihat pada Gambar 3.9.
President University 29
Gambar 3.10 Program Koneksi ke Server
Pada Gambar 3.10 di atas terlihat proses perintah untuk masuk ke jaringan wifi dan
pembacaan dari inputan yang masuk dan proses pengolahan data dari pin digital input.
President University 30
Gambar 3.11 Kirim Data ke Server
Gambar 3.11 menampilkan proses pengiriman data ke server dan balasan dari server jika
sudah terjadi komunikasi.
3.3.2 XAMPP
Aplikasi digunakan pada project ini karena di dalamnya sudah terdapat Apache dan mysql
yang akan berfunsi sebagai localhost dan tempat penyimpanan database. Semua file
pemograman disimpan dalam folder htdocs yang berada di dalam folder xampp.
Untuk memulai web server Apache dan MySQL, adalah dengan membuka XAMPP
Control Panel yang berada di C:\xampp dengan nama xampp-control.exe lalu klik start
President University 31
pada Apache dan dan MySQL nya. Tampilan antar muka dari XAMPP Control Panel ini
ditunjukan pada Gambar 3.12 di bawah ini.
Gambar 3.12 Tampilan XAMPP Conttrol Panel
3.3.3 Notepad++
Aplikasi Notepad++ ini digunakan untuk membuat script pemograman PHP dan MySQL.
Notepad++ ini bisa digunakan untuk membuat script berbagai macam bahasa pemograman,
ektension file pemograman tinggal kita tentukan pada saat menyimpan file. Bemtuk
tampilan dari Notepad++ bisa dilihat pada Gambar 3.13.
President University 32
Gambar 3.13 Tampilan Notepad++
3.3.4 PHP dan MySQL
Pada perancangan prototip ini digunakan pemograman menggunakan bahasa PHP dalam
pembuatan web server yang akan dijadikan interface sebagai tampilan monitoring.
Sedangkan data yang diterima disimpan dalam database yang terkoneksi melaui MySQL.
Pembuatan database dibuat pada aplikasi phpMyAdmin yang merupakan salahsatu tools
bawaan dari XAMPP, seperti terlihat pada Gambar 3.14 dan 3.15 dibawah ini.
President University 33
Gambar 3.14 Tampilan aplikasi XAMPP
Gambar 3.15 Tampilan phpMyAdmin
President University 34
Seperti terlihat pada Gambar 3.15 di atas, pada project ini databasenya diberinama
“nodemcuclientsw”. Semua hasil programing ditampilkan dalam layar monitor seperti
terlihat pada Gambar 3.16 berikut ini.
Gambar 3.16 Tampilan aplikasi monitoring
Seperti terlihat pada Gambar 3.16, tampilan monitor berisi nama pelanggan, waktu update,
dan status dari setiap panel yang dimonitor.
Tombol “Aktifkan Alarm” berfungsi untuk mengaktifkan alarm yang berupa suara. Bila
kondisi normal maka akan tampil kata “OK” dengan latar warna hijau, sedangkan bila
terjadi gangguan maka akan muncul kata “LOSS” dengan latar warna merah, dan suara
alarm bila sudah diaktivasi sebelumnya.
Web tampilan ini di bangun oleh beberapa file yaitu:
- File “connect.php” untuk meghubungkan monitor dengan database
- File”monitor.php” sebagai layar tampilan monitoring
- File “alarmnexta.php”, file “alarm.php” dan file music.mp3 ” sebagai triger
pemanggil alarm suara.
President University 35
BAB IV
HASIL UJICOBA DAN ANALISA
4.1 Pengujian Pengiriman Data Ke Server Dan Tampilan Monitor
Pada pengujian ini akan dilakukan power ON-OFF pada suplai main power dan control
power dan dilihat apakah data terkirim ke server dan muncul di layar monitor atau tidak.
Pada pengujian ini menggunakan 2 buah contoh pelanggan yaitu PT. Alam Teknologi
dengan jarak 1 meter dari router dan PT. Panel Indonesia dengan jarak 5 meter dari router.
Data yang diambil adalah perubahan status pada layar monitor ketika ada peubahan status
gangguan pada panel KWH. Selain itu diukur juga waktu yang diperlukan untuk perubahan
status tersebut. Perhitungan waktu yang dihitung adalah saat ada perubahan status
gangguan pada panel KWH sampai muncul tampilan alarm pada layar monitor dan
mengeluarkan suara alarm . Hasil pengujian untuk PT. Alam Teknologi dapat dilihat pada
Gambar 4.1 untuk database dan Tabel 4.1 untuk hasil pada tampilan layar monitor.
Tiap pengujian dilakukan 4 langkah sesuai dengan kemungkinan gangguan yang akan
terjadi dengan cara mematikan suplai listrik dari MCB dengan urutan langkah sebagai
berikut :
1. MCB main power ON, MCB control power ON
2. MCB main power OFF, MCB control power ON
3. MCB main power ON, MCB control power OFF
4. MCB main power OFF, MCB control power OFF
Setiap data yang dikirim dan masuk kedalam database dipastikan sesuai dengan kondisi
kondisi MCB yaitu :
1. Nilai 27 untuk kondisi main power normal.
2. Nilai 28 untuk kondisi main power ada gangguan.
3. Nilai 31 untuk kondisi control power normal.
4. Nilai 32 untuk kondisi control power ada gangguan.
President University 36
Gambar 4.1 Pengujian 1 Pengiriman Data Ke Server
Tabel 4.1 Hasil Tampilan Layar Monitor Pengujian 1
Suplai Tampilan Waktu
(detik) Remark
Main Control Main ON, Control ON OK OK 6 good Main OFF, Control ON LOSS OK 5 good Main ON, Control OFF OK LOSS 6 good Main OFF, Control OFF LOSS LOSS 6 good
Hasil pengujian untuk PT. Panel Indonesia dapat dilihat pada Gambar 4.2 untuk database
dan Tabel 4.2 untuk hasil pada tampilan layar monitor.
President University 37
Gambar 4.2 Pengujian 2 Pengiriman Data ke Server
Tabel 4.2 Hasil Pengujian 2
Suplai Tampilan Waktu
(detik) Remark
Main Control Main ON, Control ON OK OK 5 good Main OFF, Control ON LOSS OK 5 good Main ON, Control OFF OK LOSS 7 good Main OFF, Control OFF LOSS LOSS 6 good
Pada database seperti terlihat pada Gambar 4.1 dan Gambar 4.2 di atas dapat dilihat bahwa
data yang dikirim dari modul ESP8266-NodeMCU masuk ke dalam database sesuai
dengan urutan waktu. Data yang terbaru berada pada urutan paling atas.
4.2 Analisa Kebutuhan Waktu Pada Aktual Gangguan
Pada analisa ini, digunakan contoh gangguan yang terjadi sesungguhnya di lapangan.
Gangguan yang terjadi pada pelanggan yaitu PT. X pada tanggal 3 Februari 2018.
Gangguan Terjadi pada pukul 10.32, setelah melakukan pengecekan oleh teknisi internal,
pada pukul 10.40 diketahui indikasi low voltage pada phasa R. Lalu dilaporkan kepada
layanan pelanggan PT. Bekasi Power dan keluhan diterima pukul 10.46. Laporan
President University 38
kemudian disampaikan kepada petugas ruang kontrol pada pukul 10.50. Dari urutan
langkah langkah tersebut didapatkan data sejak gangguan terjadi di PT. X bahwa
dibutuhkan waktu 18 menit untuk laporan sampai ke ruang kontrol.
4.3 Kelebihan
1. Prototip ini dapat mengirimkan informasi ganguan secara cepat dan akurat.
2. Prototip ini dapat digunakan untuk media pembelajaran, sehingga mahasiswa dapat
lebih mengenal keadaan sebenarnya yang terjadi di industri.
3. Dengan memanfaatkan modul NodeMCU ESP8266, didapat suatu sistim yang
otomatis dengan biaya yang tidak terlalu besar.
4. Gangguan yang terjadi datanya tersimpan dalam database, sehingga ketika dibutuhkan
investigasi data dapat dibuka kembali.
4.4 Kekurangan:
1. Alat ini memerlukan tambahan router yang berdaya jangkau jauh, agar dapat
menjangkau semua pelanggan di kawasan industri.
2. Penambahan user baru/ perubahan nama memerlukan perubahan pada kode program.
President University 39
BAB V
KESIMPULAN DAN SARAN
5.1 Kesimpulan
Berdasarkan hasil uji coba dan analisa perancangan alat monitoring suplai listrik
pelanggan, didapatkan data waktu terlama informasi masuk ke ruang kontrol paling lama
adalah 7 detik. Sedangkan salah satu contoh kejadian gangguan yang pernah terjadi
dilapangan memerlukan waktu sekitar 18 menit untuk informasi bisa sampai ke ruang
kontrol. Dari data-data tersebut dapat ditarik kesimpulan bahwa :
1. Dengan menggunakan alat ini, maka setiap informasi gangguan akan dengan segera
muncul di control room, sehingga dapat segera dilakukan tindakan
penanggulangannya, sehingga dengan kecepatan respon ini maka pelanggan semakin
senang.
2. Dengan alat ini apabila terjadi gangguan pada sisi control KWH meter, maka
perhitungan KWH yang tidak terhitung, besar nilai ketidak akuratan akan semakin
kecil. Karena besar nilai ketidak akuratan dipengaruhi oleh nilai perkiraan pemakaian
dikali dengan waktu lamanya KWH meter tidak bekerja.
5.2 Saran dan Pengembangan
1. Karena keterbatasan waktu, tampilan dari web server ini masih terlalu sederhana,
sehingga diharapkan bisa lebih dikembangan lagi dengan desain yang lebih menarik
dan pengaman yang memadai.
2. Perlu dibuatkan sistim lokal alarm, sehingga jika suatu ketika ada masalah dengan
sistim monitoring, masih ada alarm yang berbunyi di lokal panel untuk pemberitahuan
gangguan.
President University 40
DAFTAR PUSTAKA
[1] W.Bolton, Mechatronics: Elecronic Control System in Mechanical and Electrical
Engineering.6th edition, United Kingdom, Pearson Education Limited, 2015.
[2] G.Gridling and B.Weitss, Introduction of Microcontroller, Austria, Vienna
University of Technology, March 2016.
[3] http://www.instructables.com/id/Getting-Started-With-ESP8266LiLon-
NodeMCU-V3Flashi/
[4] J.Boxall. Arduino Workshop, San Fransisco: No Starch Press, 2013.
[5] https://teknikelektronika.com/pengertian-relay-fungsi-relay/
[6] M. Fajar Wicaksono & Hidayat, Mudah Belajar Mikrokontroler ARDUINO,
Bandung : Informatika, November 2017.
President University 41
APENDIKS A
ARDUINO CODE [6]
#include <ESP8266WiFi.h> #include <ArduinoJson.h> /* Relay1a PIN 5 --> D1 Relay1b PIN 4 --> D2 */ const char* ssid = "karnotech"; const char* password = "67633159"; const char* host = "192.168.0.104"; //------------------INISIALISASI I/O-------------------- int relaymain1=5; int relaycontrol1=4; String relay1a=""; String relay1b=""; void setup() { pinMode(relaymain1, INPUT); pinMode(relaycontrol1, INPUT); Serial.begin(115200); delay(10); Serial.print("Connecting to "); Serial.println(ssid); WiFi.begin(ssid, password); while (WiFi.status() != WL_CONNECTED) { delay(500); Serial.print ("."); } Serial.println(""); Serial.println("WiFi connected"); Serial.println (WiFi.localIP()); } void loop() { //=========================== ============================ // KIRIM DATA KE SERVER //======================================================= Serial.print("connecting to "); Serial.println(host); WiFiClient client;
Library ESP8266WiFi.H dan ArduinoJson adalah library khusus untuk mengenali modul ESP8266 dan untuk dapat berkomunikasi dengan server.
Posisi pin 5 adalah pada pin terminal D1 dan pin 4 pada terminal D2.
Nama jaringan yang akan dimasuki
Password jaringan yang akan dimasuki.
IP adress dari server yang.
Deklarasi tipe data untuk variabel penampung status dari inputan pada pin yang digunakan.
Rutin setup :
Pada bagian awal dari rutin setup, mulai didefinisikan pin GPIO yang digunakan yaitu relaymain1 dan juga relaycontrol1 sebagai pin INPUT
Pengaturan baudrate yang akan digunakan untuk untuk debug program ke serial monitor Arduino IDE, dan saat ini baudreate yang digunakan adalah 15200bps
Selanjutnya, program akan menampilkan kata “Connecting to” yang disertai alamat server pada serial monitor Arduino IDE.
Program mulai mencoba melakukan koneksi wieless melalui konkesi WiFi.
Jika koneksi ke jaringan belum berhasil dilakukan, maka pada serial monitor Arduino IDE akan dicetak titik-titik samapi koneksi berhasil dengan jeda waktu sebesar 500ms. Jika koneksi berhasil, maka pada serial monitor Arduino IDE akan dicetak “ WiFi Connected”. Dan pada baris selanjutnya akan dimunculkan IP adress modul WiFi NodeMCU ESP8266.
Di awal rutin loop program akan mulai mencetak kata “Connecting to” yang disertai dengan alamat server pada serial monitor
President University 42
const int httpPort = 80; if (!client .connect (host, httpPort)) { Serial.println("connection failed"); return; } //---------------- baca relay1 (main) ---------------- delay(1000); int deteksi1a=(digitalRead(relaymain1)); if(deteksi1a==HIGH){ relay1a="28"; Serial.println("Main_Supply_Loss"); } if(deteksi1a==LOW){ relay1a="27"; Serial.println("Main_Supply_oke"); } //--------------- baca relay2 (control) ------- delay(1000); int deteksi1b=(digitalRead(relaycontrol1)); if(deteksi1b==HIGH){ relay1b="32"; Serial.println("Control1_Supply_Loss"); } if(deteksi1b==LOW){ relay1b="31"; Serial.println("Control1_Supply_oke"); } //======================================================= // KIRIM DATA KE SERVER //======================================================= client .print(String("GET /nodemcuswitch/add2.php?")); client .print("main1="); client .print(relay1a); client .print("&control1="); client .print(relay1b); client .print(" HTTP/1.1\r\nHost: host\r\nConnection:keep-alive\r\nAccept: */*\r\n\r\n"); //------------------baca balasan dari server------ while(client .available()){ String line = client .readStringUntil('\r'); Serial.print(line); } Serial.println(); Serial.println("closing connection"); delay(10); }
Arduino IDE, kemudian mulai koneksi ke server ( sesuai dengan host yang sudah didefinisikan, menggunakan standar port http 80.
Jika koneksi berhasil maka selanjutya akan dimulai proses delay selama 1 detik.
Pembacaan data dari pin input yang diberi nama alias relaymain1 akan dibaca hasilnya berupa nilai High atau LOW, nilai tersebut akan disimpan pada variabel deteksi1a. Setelah mendapatkan nilai, maka nilai tersebuat akan dibandingkan, jika nilai yang dibaca asdalah HIGH maka maka variabel relay1a akan diisi string “1A_Loss”. Sedangkan jika yang terbaca adalah LOW maka variable relay1a akan diisi string “1A_Nrml”.
setelah proses delay selama 1 detik, akan dilakukan pembacaan data dari pin input yang diberi nama alias relaycontrol1 akan dibaca hasilnya berupa nilai High atau LOW, nilai tersebut akan disimpan pada variabel deteksi1a. Setelah mendapatkan nilai, maka nilai tersebuat akan dibandingkan, jika nilai yang dibaca adalah HIGH maka maka variabel relay1b akan diisi string “1B_Loss”. Sedangkan jika yang terbaca adalah LOW maka variable relay1a akan diisi string “1B_Nrml”.
Perintah untuk mengirim data ke server menggunakan metode GET melalui halaman yang ditunjuk, yaitu halaman add2.php yang berada pada folder Nodemcuswitch. String yang dituliskan dengan kata “main1 dan control1 adalah variabel variabel yang akan dikenali oleh PHP.
Membaca balasan dari server dan menutup koneksi
President University 43
APENDIKS B [6]
PHP CODE
1. Koneksi (connect.php)
<?php
$koneksi=mysqli_connect("localhost","root","");
$pilihDB=mysqli_select_db($koneksi,"nodemcuclientsw");
if($koneksi){
echo"";
}
else{
echo "koneksi gagal";
}
?>
Fungsi mysqli_connect digunakan untuk
membuka koneksi dengan server yang di
dalamnya terdapat konfigurasi untuk host, user
dan password.
Fungsi mysqli_select_db digunakan
untukmemilih database yang digunakan, dan
nama yang digunakan adalah “nodemcusw”
Pemeriksaan $koneksi apakah bernilai true
atau false. Jika koneksi berhasil maka tidak
akan menampilkan apa-apa, dan jika gagal
akan menampilakn kalimat “koneksi gagal”
2. Data Input (add2.php)
<?php
include("connect.php");
$main1 = $_GET['main1'];
$control1 = $_GET['control1'];
$main2 = $_GET['main2'];
$control2 = $_GET['control2'];
if(isset($main1,$main2)){
$query = "INSERT INTO datask SET main1='$main1', control1='$control1', main2='$main2', control2='$control2'";
$result= mysqli_query($koneksi,$query);
}
else{
echo " dan data tidak ada <br>";
}
Memasukan file connect.php, untuk membuka koneksi.
Menampung dan memasukan data yang dikirim oleh modul NodeMCU ESP8266 kedalam variabel yang kita buat.
Masuk dalam percabangan dan memeriksa apakah variabel yang kita buat sudah terbentuk. Jika sudah terbentuk maka isi dari variabel tersebut akan dikirim ke database pada tabel datask. Jika nilai pada variabel tersebut tidak terbentuk maka statement “data tidak ada” akan terbentuk.
President University 44
if($result){
echo " ";
}
?>
3. Monitoring (monitor.php)
<?php
include "connect.php";
?>
<html>
<head>
<title>MONITOR KAWASAN</title>
</head>
<style>
div.static {
position: fixed;
bottom: 470;
right: 220;
width: 150px;
<!--border: 3px solid #543535;-->
}
</style>
<div class="static">
<!-- Elemen ini menggunakan position: fixed;-->
<button onClick="newTab();"><h3>Aktifkan Alarm<h3></button>
</div>
<!--<button onClick="newTab();"><h3>Aktifkan Alarm<h3></button>-->
<script>
function newTab(url){
Memasukan file connect.php untuk membuka koneksi.
Nama web page
Menentukan posisi elemen
President University 45
var x = window.open('alarmnexta.php');
x.focus();
}
</script>
<?php
$query="SELECT waktu,main1,control1,waktu FROM datask ORDER BY id DESC LIMIT 1";
//$query="SELECT waktu,main2,control2 FROM datask ORDER BY id DESC LIMIT 1";
$sql = mysqli_query ($koneksi,$query);
while($hasil = mysqli_fetch_array($sql))
{
//$id = $hasil['id'];
$waktu = $hasil['waktu'];
$main1 = $hasil['main1'];
$control1 = $hasil['control1'];
?>
<body>
<h1><center>MONITORING STATUS PANEL KWH<center></h1>
<div align="CENTER">
<table width="500px" border="3">
<tr bgcolor='cyan' align='center'>
<th width="200px"><center><h3>NAMA<h3><center></td>
<th width="100px"><center><h3>WAKTU<h3><center></td>
<th width="100px"><center><h3>MAIN<h3><center></td>
Menentukan fungsi button yaitu membuat tab baru.
Menentukan file yang dibuka pada tab baru, yaitu alarmnexta.php
Query untuk pengambilan data dari tabel datask.
Data yang diambil dari database adalah waktu, main1, control1, main2, control2 dengan batasan tampilan hanya 1 baris.
Eksekusi query, jika berhasil bernilai 1 dan jika gagal bernilai 0, dan hasilnya disimpan pada variabel sql.
Penentuan nama variabel tempat penyimpanan data.
Membuat judul halaman
Membuat tabel beserta isinya dengan posisi di tengah.
President University 46
<th width="100px"><center><h3>CONTROL<h3><center></td>
</tr
<tr>
<td><center><h3> PT. ALAM TEKNOLGI<h3></td>
<td><center><?php echo $waktu; ?></td>
<?php IF($main1 == 27) { ?>
<td><center><h1 style="background-color:rgb(60, 179, 113);">NRML</h1></td>
<?php } ELSE IF ($main1 == 28) { ?>
<td><center> <h1 style="background-color:rgb(255, 0, 0);"> LOSS </h1></td>
<?php } ; ?>
<?php IF($control1 == 31) { ?>
<td><center> <h1 style="background-color:rgb(60, 179, 113);">NRML</h1></td>
<?php } ELSE IF ($control1 == 32) { ?>
<td><center> <h1 style="background-color:rgb(255, 0, 0);"> LOSS </h1></td>
<?php } ; ?>
</tr>
<?php
}
$query="SELECT waktu,sw1,sw2 FROM datanode ORDER BY id DESC LIMIT 1";
//$query="SELECT waktu,main2,control2 FROM datask ORDER BY id DESC LIMIT 1";
$sql = mysqli_query ($koneksi,$query);
while($hasil = mysqli_fetch_array($sql))
{
$waktu = $hasil['waktu'];
$sw1 = $hasil['sw1'];
Membuat logika, jika nilai main1 = 27 maka muncul tulisan OKE dengan background warna hijau, jika nilainya = 28 maka yang muncul adalah LOSS dengan background merah.
Membuat logika, jika nilai control1 = 31 maka muncul tulisan OKE dengan background warna hijau, jika nilainya = 28 maka yang muncul adalah LOSS dengan background merah.
President University 47
$sw2 = $hasil['sw2'];
?>
<body>
<h1><center><center></h1>
<div align="CENTER">
<table width="500px" border="3">
<tr bgcolor='pink' align='center'>
<th width="200px"><center><h2><h2><center></td>
<th width="100px"><center><h2><h2><center></td>
<th width="100px"><center><h2><h2><center></td>
<th width="100px"><center><h2><h2><center></td>
</tr>
<tr>
<td><center><h3> PT. PANEL INDONESIA<h3></td>
<td><center><?php echo $waktu; ?></td>
<?php IF($sw1 == 27) { ?>
<td><center><h1 style="background-color:rgb(60, 179, 113);">NRML</h1></td>
<?php } ELSE IF ($sw1 == 28) { ?>
<td><center> <h1 style="background-color:rgb(255, 0, 0);"> LOSS </h1></td>
<?php } ; ?>
<?php IF($sw2 == 31) { ?>
<td><center> <h1 style="background-color:rgb(60, 179, 113);">NRML</h1></td>
<?php } ELSE IF ($sw2 == 32) { ?>
<td><center> <h1 style="background-color:rgb(255, 0, 0);"> LOSS </h1></td>
<?php } ; ?>
</tr>
Menentukan warna background dari halaman, yaitu pink
President University 48
<?php
}
$url=$_SERVER['REQUEST_URI'];
header("Refresh: 3; URL=$url");
?>
</table>
</body>
</html>
<html>
<head><title>style</title></head>
<body bgcolor="pink"
</body>
</html>
Refresh halaman secara otomatis
4. Alarm 1 (alarmnexta.php) <?php
include "connect.php";
?>
<html>
<head>
<title>TENANT MONITORING_ALM</title>
</head>
<body>
<?php
$query="SELECT waktu,main1,control1,main2,control2 FROM datask ORDER BY id DESC LIMIT 1";
$sql = mysqli_query ($koneksi,$query);
while($hasil = mysqli_fetch_array($sql))
{
Memasukan file connect.php untuk melakukan koneksi.
Membuat judul halaman
Pengambilan data
President University 49
$waktu = $hasil['waktu'];
$main1 = $hasil['main1'];
$control1 = $hasil['control1'];
$main2 = $hasil['main2'];
$control2 = $hasil['control2'];
?>
<?php IF($main1 == 28) { ?>
<?php echo"<meta http-equiv='refresh' content='0;URL=alarm.php' />"; } ELSE IF ($main1 == 27) { ?>
<?php } ;
IF($control1 == 32) { ?>
<?php echo"<meta http-equiv='refresh' content='0;URL=alarm.php' />"; } ELSE IF ($control1 == 31) { ?>
<?php } ;
IF($main2 == 28) { ?>
<?php echo"<meta http-equiv='refresh' content='0;URL=alarm.php' />"; } ELSE IF ($main2 == 27) { ?>
<?php } ;
IF($control2 == 32) { ?>
<?php echo"<meta http-equiv='refresh' content='0;URL=alarm.php' />"; } ELSE IF ($control2 == 31) { ?>
<?php } ;
?>
<?php
}
$url=$_SERVER['REQUEST_URI'];
header("Refresh: 3; URL=$url");
?>
</table>
</body>
Membuat logika, jika nilai main1 = 28 makaakan membuka tab halaman baru alarm.php jika nilainya = 27 maka tidak ada apa-apa.
President University 50
</html>
<html>
<head><title>style</title></head>
<body bgcolor="pink"
</body>
</html>
4. Alarm (alarm.php)
<html>
<head> <meta http-equiv='refresh' content='20;URL=alarm.php' />
</head>
<html>
<head>
<!-- script untuk membuka pop up window berisi audio bunyi alarm otomatis -->
<script>
window.onload = function () {
window.open('pop.html','My Window','height= 240 px,width =320 ,');
};
</script>
</head>
<body>
<div align="CENTER">
<b><h1>Cek Panel KWH<h1></b> <br/><br/>
<br/>
</body>
<html>
Refresh otomatis
Membuka window baru yang berisi file pop.html
Memunculkan kalimat untuk Cek Panel KWH
President University 51
6. Pop up window sound (pop.html)
<html>
<head> <meta http-equiv='refresh' content='30;URL=pop.html' />
</head>
<body>
<b>Cek Panel KWH</b> <br/><br/>
<br/>
</body>
</audio>
</body>
<body>
<audio controls autoplay="autoplay">
<source src="music.mp3" type="audio/mpeg">
</head>
</html>
Refresh otomatis
File sumber yang berupa suara.