BAB 3 ANALIS IS DAN PERANCANGAN
3.1.
Analisis Masalah dan Kebutuhan Sistem Sistem yang sedang berjalan saat ini adalah pengawasan genset dengan metode manual dan console connection. M etode 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. M enurut spesifikasi controller genset produksi Deep Sea Electronics, dijelaskan bahwa controller dilengkapi protokol M odbus sehingga data dapat dikomunikasikan secara serial. Selain itu dispesifikasikan juga bahwa antara satu controller genset dengan yang lainnya dapat terkoneksi dengan kabel serial RS485 atau dengan kata lain dapat membentuk suatu CAN. M elalui 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
42
43 suatu aplikasi yang dapat berkomunikasi dengan protokol M odbus 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. M engingat 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. M asalah 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 M odbus 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 M odbus. 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 M onitoring 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 L2-L3 Voltage Generator L3-L1 Voltage Generator L1 Current Generator L2 Current Generator L3 Current Generator Earth Current Generator current lag/lead M ains Frequency Generator Phase Rotation Bus Frequency
Page 4
Generator L1-L2 Voltage
45 Coolant Pressure
Turbo Pressure Exhaust Temperature
Page 5
Fuel Pressure
Fuel Consumption Generator Total Watts Generator Total VA
Generator Percentage of Full Power
Page 6
Generator Total Var
M ains Total Watts
Number of Starts Fuel Used
Page 7
Engine Run Time
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 Tabe l : ms_slave Ke te rangan : untuk mencatat daftar ge nse t yang (pe rnah) te rkoneksi pada sistem dan status te rakhir (online / tidak) Atribut id_gense t
Keterangan Alamat genset (Primary
Tipe
Null
Varchar(3)
Tidak
Binary(1)
Tidak
Timestamp
Tidak
Char(1)
Tidak
Char(1)
Tidak
Ke y) status
Status genset (1= online, 0= offline)
time
Tanggal dan wak tu record disimpan
mode
Mode kontrol ge nse t (1= auto, 2= manual)
control
Pe rintah kontrol mode dari use r (0= tidak ada, 1= auto, 2= manual)
Tabel 3.3. Rancangan Entity dari tabel trans Nama Tabe l : trans Ke te rangan : untuk mencatat se tiap hasil re trie ve data dari gense t Atribut id
Keterangan Nomor re cord (Primary
Tipe
Null
Inte ge r
Tidak
Ke y) id_gense t
Alamat genset (fore ign ke y)
Varchar(3)
Tidak
id_page
Kode page dan offse t data
Varchar(6)
Tidak
value
Nilai dari data
Varchar(20)
Ya
47 Tabel 3.4. Rancangan Entity dari tabel ms_page Nama Tabe l : ms_page Ke te rangan : untuk membe rikan de sk ripsi dari kode page dan offse t (id_de tail pada tabe l trans). Tabe l ini tidak untung digabungkan de ngan trans untuk mengurangi redundansi Atribut id_page
Keterangan Kode page dan offse t data
Tipe
Null
Varchar(6)
Tidak
Varchar(20)
Tidak
(Primary Ke y) description
Desk ripsi dari kode page dan offse t yang be rsangkutan
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 Tabe l : ms_use r Ke te rangan : untuk mendata use rname dan password untuk autentikasi use r Atribut
Keterangan
Tipe
Null
id
Penomoran (Primary Ke y)
Inte ge r
Tidak
use rname
Nama identifikasi use r
Varchar(20)
Tidak
Varchar(20)
Tidak
(unik) password
3.3.
password
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. M elalui 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. M ula-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. M isalnya 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 M ode genset
Gambar 3.24. Rancangan Interface Kontrol M ode