5. BAB 3 - thesis.binus.ac.idthesis.binus.ac.id/Doc/Bab3/2009-1-00207-IF bab 3.pdf · ... maka satu...
Transcript of 5. BAB 3 - thesis.binus.ac.idthesis.binus.ac.id/Doc/Bab3/2009-1-00207-IF bab 3.pdf · ... maka satu...
42
BAB 3
ANALISIS DAN PERANCANGAN
3.1. Analisis Masalah dan Kebutuhan Sistem
Sistem yang sedang berjalan saat ini adalah pengawasan genset dengan
metode manual dan console connection. Metode manual berarti teknisi genset
melihat informasi genset-genset pada panel-panelnya secara langsung.
Pengawasan melalui panel ini tidak memberikan informasi yang lengkap, karena
tidak semua data pada controller ditampilkan di panel. Untuk melihat data yang
lebih lengkap, teknisi dapat menggunakan console connection. Namun ini harus
dilakukan satu per satu pada setiap genset. Demikian pula pada aktivitas
controlling dapat dilakukan secara manual atau melalui console satu per satu
pada setiap controller genset. Permasalahannya dapat dijelaskan bahwa metode
monitoring dan controlling yang berjalan saat ini kurang efektif terutama jika
terdapat multiple genset yang diinstalasikan.
Menurut spesifikasi controller genset produksi Deep Sea Electronics,
dijelaskan bahwa controller dilengkapi protokol Modbus sehingga data dapat
dikomunikasikan secara serial. Selain itu dispesifikasikan juga bahwa antara satu
controller genset dengan yang lainnya dapat terkoneksi dengan kabel serial RS-
485 atau dengan kata lain dapat membentuk suatu CAN. Melalui informasi ini
dapat diketahui bahwa seandainya ada satu komputer yang terkoneksi dengan
CAN tersebut, maka satu komputer ini dapat menarik data pada multiple genset
yang ada dalam CAN serta mengontrolnya. Untuk mewujudkannya diperlukan
43
suatu aplikasi yang dapat berkomunikasi dengan protokol Modbus pada
controller tersebut.
Permasalahan lebih lanjut adalah jika akhirnya sudah diciptakan aplikasi
yang dapat berkomunikasi dengan multiple genset, tersedia kemudahan akses
dari mana saja. Hal ini tidak lepas kaitannya dengan tuntutan mobilitas yang
semakin tinggi serta kemudahan akses dari mana saja.
Secara umum sistem ini memerlukan sebuah aplikasi yang dapat
mengakses multiple genset pada suatu CAN dan mengembalikan data dari
masing-masing genset. Data tersebut akan disimpan dalam database. Mengingat
data diperlukan untuk tujuan monitoring, maka data tersebut harus diperbaharui
terus menerus. Akhirnya disediakan web interface sebagai tempat bagi user
untuk mengakses data monitoring. Web merupakan sarana antarmuka yang
terbaik dalam memecahkan masalah, karena selain kemudahan akses melalui
browser, ia memungkinkan pengaksesan dari mana saja melalui dukungan
jaringan komputer, di samping manfaat lain seperti kemungkinan bagi thin client
untuk melakukan aktivitas tersebut.
Masalah pertama yang paling kritis adalah mengenai protokol agar client
dapat berkomunikasi dengan database yang diperoleh dari genset controller.
Informasi yang dikirimkan genset controller melalui protokol Modbus ke
daemon hingga sampai ke client yang menggunakan protokol TCP/IP, tentunya
memerlukan protokol sebagai penengah komunikasi tersebut. Hal ini
berhubungan dengan cara mengolah informasi mentah yang diterima dari
protokol Modbus. Persoalan selanjutnya yang perlu dipikirkan adalah latency
44
komunikasi. Tentu saja latency diharapkan seminimal mungkin agar data
ditampilkan secara real time.
Permasalahan selanjutnya adalah mengorganisasikan data-data yang
diperlukan dalam monitoring ke dalam halaman-halaman web. Data-data genset
yang diperlukan dalam aktivitas monitoring antara lain:
Tabel 3.1. Data Untuk Aktivitas Monitoring
Nama Informasi No. Page
Oil Pressure
Coolant Temperature
Oil Temperarute
Battery Voltage
Engine Speed
Generator Frequency
Generator L1-N Voltage
Generator L2-N Voltage
Generator L3-N Voltage
Generator L1-L2 Voltage
Generator L2-L3 Voltage
Generator L3-L1 Voltage
Generator L1 Current
Generator L2 Current
Generator L3 Current
Generator Earth Current
Generator current lag/lead
Mains Frequency
Generator Phase Rotation
Bus Frequency
Page 4
45
Coolant Pressure
Fuel Pressure
Turbo Pressure
Exhaust Temperature
Fuel Consumption Page 5
Generator Total Watts
Generator Total VA
Generator Total Var
Generator Percentage of Full
Power
Mains Total Watts
Page 6
Engine Run Time
Number of Starts
Fuel Used
Page 7
Akhirnya, untuk fungsi kontrol diperlukan suatu interface yang berfungsi
untuk memindah kontrol mode genset dari automatic menjadi manual atau
sebaliknya. Diperlukan juga suatu pencegahan kesalahan untuk aksi redundan
dan akses bersamaan dari lebih dari satu user pada genset yang sama.
3.2. Perancangan Database
Keperluan sistem database adalah untuk menyimpan berbagai data yang
diambil dari semua genset yang terkoneksi pada sistem dan mengetahui bilamana
ada perintah kontrol. Oleh karena itu pertama-tama, diperlukan database untuk
mencatat daftar genset yang online, kemudian database untuk mencatat setiap
hasil retrieve data dari genset dan database untuk mencatat perintah kontrol dari
user. Database sistem akan terdiri dari 3 tabel:
46
Tabel 3.2. Rancangan Entity dari tabel ms_slave
Nama Tabel : ms_slave
Keterangan : untuk mencatat daftar genset yang (pernah) terkoneksi
pada sistem dan status terakhir (online / tidak)
Atribut Keterangan Tipe Null
id_genset Alamat genset (Primary
Key)
Varchar(3) Tidak
status Status genset (1= online,
0= offline)
Binary(1) Tidak
time Tanggal dan waktu record
disimpan
Timestamp Tidak
mode Mode kontrol genset (1=
auto, 2= manual)
Char(1) Tidak
control Perintah kontrol mode dari
user (0= tidak ada, 1=
auto, 2= manual)
Char(1) Tidak
Tabel 3.3. Rancangan Entity dari tabel trans
Nama Tabel : trans
Keterangan : untuk mencatat setiap hasil retrieve data dari genset
Atribut Keterangan Tipe Null
id Nomor record (Primary
Key)
Integer Tidak
id_genset Alamat genset (foreign key) Varchar(3) Tidak
id_page Kode page dan offset data Varchar(6) Tidak
value Nilai dari data Varchar(20) Ya
47
Tabel 3.4. Rancangan Entity dari tabel ms_page
Nama Tabel : ms_page
Keterangan : untuk memberikan deskripsi dari kode page dan offset
(id_detail pada tabel trans). Tabel ini tidak untung digabungkan dengan
trans untuk mengurangi redundansi
Atribut Keterangan Tipe Null
id_page Kode page dan offset data
(Primary Key)
Varchar(6) Tidak
description Deskripsi dari kode page
dan offset yang
bersangkutan
Varchar(20) Tidak
Di bawah ini terdapat Entity Relationship Diagram (ERD) dari perancangan
database sistem :
Gambar 3.1. Entity Relationship Diagram Database Sistem
Di samping database sistem, diperlukan juga database untuk user
mengingat user akan mengakses informasi melalui web interface. Database user
berguna untuk mendata siapa saja yang berhak mengakses sekaligus menjadi
sumber autentikasi bagi web server.
48
Database untuk user hanya akan terdiri dari satu tabel yang berisi field
username dan password.
Tabel 3.5. Rancangan Entity dari tabel ms_user
Nama Tabel : ms_user
Keterangan : untuk mendata username dan password untuk autentikasi
user
Atribut Keterangan Tipe Null
id Penomoran (Primary Key) Integer Tidak
username Nama identifikasi user
(unik)
Varchar(20) Tidak
password password Varchar(20) Tidak
3.3. Perancangan Sistem
Berikut adalah perancangan topologi sistem:
Gambar 3.2. Topologi Sistem
49
Topologi dimulai dengan menghubungkan multiple genset satu sama lain.
Salah satu dari kumpulan genset yang saling terhubung tersebut akan
dihubungkan dengan komputer server. Komputer ini akan secara aktif
memonitor genset. Data hasil monitoring akan disimpan pada database yang
mana data ini akan disajikan secara online melalui website. Akhirnya data-data
hasil monitoring genset akan dapat diakses melalui internet.
Multiple genset saling terhubung dengan kabel RS-485. Genset terhubung
dengan komputer server melalui port serial (RS-232) pada komputer. Oleh
karena itu diperlukan converter dari RS-485 ke RS-232.
Komputer server akan aktif secara berkala me-retrieve data dari setiap
genset. Hasilnya akan langsung ditampung pada database. Sementara itu
diinstalasikan juga web server untuk mempublikasikannya di internet. Melalui
web server data juga dapat disajikan up to date secara periodik. Website akan
menyajikan data-data genset yang sedang online (terhubung pada sistem dan
tidak mati).
User yang berkepentingan akan mengakses data monitoring melalui
internet. Untuk mengakses data akan dilakukan autentikasi dengan username dan
password. Bila autentikasi berhasil, user akan mendapat akses ke halaman utama
di mana tersaji data-data monitoring genset.
3.4. Flow Chart Subsistem
Sistem yang berjalan dapat dibagi menjadi 3 subsistem. Subsistem
pertama adalah proses kerja hubungan antara multiple genset dengan komputer
server yang memantau. Subsistem kedua adalah web server yang siap sedia
50
untuk menangani request data mengenai status genset yang tersimpan di
database. Akhirnya subsistem terakhir adalah web interface yang berinteraksi
dengan user yang berkepentingan mengakses data. Pembagian dalam ketiga
subsistem dalam digambarkan sebagai berikut:
Gambar 3.3. Subsistem-Subsistem pada Topologi Jaringan
51
3.4.1. Subsistem I
Gambar 3.4. Proses Kerja Multiple Genset Dengan Komputer
Pemantau
Subsistem I memerlukan suatu aplikasi yang dapat aktif
memantau genset secara bergantian. Mula-mula aplikasi harus mendata
jumlah genset yang terhubung dan online. Setelah itu secara bergantian
aplikasi meminta data dari genset tersebut secara terus menerus.
Aplikasi memonitor data dari genset pertama hingga genset terakhir
yang setelahnya akan berulang ke genset pertama.
Selain memonitor, aplikasi ini juga mungkin untuk melakukan
kontrol terhadap mode genset (manual/auto). Bila ada user yang
memberikan perintah pada kontrol mode genset, aplikasi harus secepat
mungkin menangani perintah tersebut.
52
Permasalahan yang mungkin terjadi adalah bila salah satu genset
mendadak offline. Aplikasi harus dengan cermat menangani keadaan
tersebut. Berikut adalah flowchart proses pada subsistem yang pertama:
Gambar 3.5. Flow Chart Subsistem I
Demikianlah cara kerja perancangan secara teknis. Sistem akan
melakukan polling untuk mengetahui genset mana saja yang sedang
online. Selanjutnya alamat genset-genset yang sedang online akan
dicatat dalam database. Setelah mendata genset-genset yang online,
dimulailah monitoring genset secara satu per satu dimulai dari alamat
yang paling kecil. Setiap selesai me-retrieve data, sistem akan
53
menyimpannya dalam database dan beralih ke genset berikutnya.
Demikian seterusnya hingga genset terakhir dan berulang ke genset
pertama. Jika ada genset yang tidak merespon permintaan, maka sistem
akan menghitung kegagalan tersebut dimulai dari nol kemudian beralih
ke genset berikutnya. Suatu genset akan dinyatakan offline apabila dia
tidak memberikan respon hingga pada putaran ketiga. Segera genset
yang dinyatakan offline akan dicatat pada database.
Sebelum aplikasi melanjutkan akses data ke genset berikutnya, ia
akan melakukan fungsi kontrol jika ada. Hal ini dimaksudkan agar
ketika ada perintah kontrol dari user, aplikasi dapat menangani secepat
mungkin. Di bawah ini adalah flowchart kerja sistem dalam hal
pengontrolan:
Gambar 3.6. Flow Chart Fungsi Kontrol Subsistem I
54
Aplikasi akan mengakses database untuk mengetahui bila ada
perintah kontrol dari user yang tercatat. Jika tidak ada, ia akan
melanjutkan proses akses data ke genset berikutnya. Fungsi kontrol
akan dilakukan satu per satu bergantian. Kegagalan mengontrol satu
genset yang sama secara 3 kali berturut-turut akan menyebabkan sistem
mengabaikan kontrol terhadap genset tersebut dan melanjutkan ke tugas
berikutnya.
3.4.2. Subsistem II
Gambar 3.7. Proses Kerja Web Server
Subsistem ini merupakan proses kerja yang terdapat dalam web
server. Pada sistem inilah permintaan user/client akan data monitoring
55
genset ditangani. Sistem ini tidak berinteraksi langsung dengan genset
untuk menyajikan datanya, melainkan menampilkan data dari database
yang terus menerus di-update oleh subsistem yang pertama. Web server
juga memiliki fasilitas untuk menangani permintaan kontrol mode
genset dari user. Sistem ini juga tidak berinteraksi langsung dengan
genset yang hendak dikontrol.
Berikut ini adalah flowchart dari sistem kerja web server untuk
mengakses data:
Gambar 3.8. Flow Chart Subsistem II
56
Proses dimulai dengan mengakses database untuk mengetahui
daftar alamat genset-genset yang sedang online. Kemudian sistem akan
menampilkan alamat semua genset yang sedang online beserta sebagian
data monitoring tiap genset tersebut. Informasi yang ditampilkan ini
akan di-refresh setiap 5 detik. Jika tidak ada genset yang sedang online,
maka akan ditampilkan sebaris pesan bahwa tidak ada genset yang
sedang online pada halaman yang sama. Demikian karena halaman ini
di-refresh setiap 5 detik, maka jika pada interval waktu berikutnya
terdapat genset yang online, informasi akan segera ditampilkan.
Untuk menampilkan data monitoring yang lebih lengkap, user
dapat memilih salah satu genset yang sedang online. Data monitoring
yang ditampilkan juga akan di-refresh setiap 5 detik sekaligus untuk
memastikan bahwa ia masih online. Jika tidak akan ditampilkan sebaris
pesan, dan user dapat menavigasikan kembali pada halaman utama
dimana terdapat daftar genset yang sedang online.
Berikut ini adalah flowchart dari sistem kerja web server untuk
menangani permintaan kontrol dari user:
57
Gambar 3.9. Flow Chart Fungsi Kontrol Pada Subsistem II
Pengontrolan dimulai dengan mengakses database mengenai
genset mana saja yang online. Hanya genset yang sedang online yang
dapat dikontrol. Pengecekan ini dilakukan berkala setiap 5 detik.
Kemudian server akan menyajikan list genset yang online serta fungsi
kontrol yang mungkin dilakukan. Perintah user terhadap suatu genset
akan segera dicatat dalam database.
Permasalahan yang mungkin muncul dan perlu diantisipasi adalah
perintah redundan. Misalnya genset sedang melakukan perpindahan
58
mode kontrol ke auto dan ada user yang memberikan perintah kontrol
yang sama. Demikian juga jika genset sudah berada dalam mode
kontrol auto dan user ingin memberikan perintah yang sama. Untuk
mengantisipasinya diberikan algoritma sebagai berikut ketika hendak
menyajikan daftar genset dan fungsi kontrolnya:
Gambar 3.10. Flow Chart Antisipasi Perintah Redundan Pada
Subsistem II
Sistem akan mengecek apakah genset sedang sibuk (melakukan
perpindahan mode). Jika ya, maka sementara fungsi kontrol tidak
diberikan. Pada refresh berikutnya, ketika genset sudah selesai
melakukan perpindahan mode, barulah fungsi kontrol dimungkinkan.
59
User akan diberikan informasi mengenai mode kontrol genset yang
sedang berjalan sekarang, dan fungsi untuk mengganti mode kontrol.
3.4.3. Subsistem III
Gambar 3.11. Proses Kerja Website dengan Data Monitoring Genset
Subsistem ini merupakan website sebagai interface client untuk
melihat data monitoring genset. Tentunya agar data aman dari akses
sembarang orang, user perlu melalui proses autentikasi. Berikut adalah
flowchart subsistem ini:
60
Gambar 3.12. Flow Chart Subsistem III
61
User akan disambut dengan halaman login dan diharuskan
mengisi username dan password sebagai komponen autentikasi. Bila
autentikasi berhasil, maka akan diciptakan session untuk user tersebut
sebagai hak untuk mengakses data dan beralih ke halaman utama, jika
gagal user akan diumpankan kembali ke halaman login.
Pada halaman utama akan ditampilkan beberapa data monitoring
beserta menu untuk mengakses data lainnya. Setiap kali data hendak
diakses, akan dilakukan pengecekan session. Jika tidak ada session atau
session telah expired, maka data tidak akan ditampilkan dan user
diumpankan kembali ke halaman login. Pengecekan ini berfungsi untuk
menanggulangi usaha user yang tak berwenang untuk mengakses
halaman dengan langsung mengetikkan URL lengkap beserta
parameternya. Untuk mengakhiri akses user dapat melakukan log off
untuk menutup session dan kembali kepada halaman login.
Di bawah ini adalah perancangan sitemap untuk website tersebut sehubungan dengan
pengorganisasian data-data monitoring:
Gambar 3.13. Diagram Sitemap Website
62
Keterangan:
- Data monitoring yang ditampilkan ialah berdasarkan page
- Untuk setiap page akan ditampilkan seluruh genset yang online beserta sebagian data
dari page yang bersangkutan
- Detail data setiap page ditampilkan per genset yang dipilih
Di bawah ini disajikan juga State Transition Diagram dari subsistem ini:
63
Gambar 3.14. State Transition Diagram Subsistem III
64
Perancangan layar untuk website adalah sebagai berikut :
Halaman login:
Gambar 3.15. Rancangan Input Form Login
Halaman utama (page#4)
Gambar 3.16. Rancangan Output Page 4 (Basic Instrumentation)
65
Halaman detail genset pada page#4
Gambar 3.17. Rancangan Output Detail Page 4 (Basic Instrumentation)
Halaman page#5
Gambar 3.18. Rancangan Output Page 5 (Extended Instrumentation)
66
Halaman detail genset pada page#5
Gambar 3.19. Rancangan Output Detail Page 5 (Extended Instrumentation)
Halaman page#6
Gambar 3.20. Rancangan Output Page 6 (Derived Instrumentation)
67
Halaman detail genset pada page#6
Gambar 3.21. Rancangan Detail Output Page 6 (Derived Instrumentation)
Halaman page#7
Gambar 3.22. Rancangan Output Page 7 (Accumulated Instrumentation)
68
Halaman detail genset pada page#7
Gambar 3.23. Rancangan Detail Output Page 7 (Accumulated Instrumentation)
Halaman Kontrol Mode genset
Gambar 3.24. Rancangan Interface Kontrol Mode