6 BAB II LANDASAN TEORI 2.1 Sistem SCADA 2.1.1 Pengertian

advertisement
 BAB II
LANDASAN TEORI
2.1 Sistem SCADA
2.1.1 Pengertian sistem SCADA
SCADA, sebagaimana yang tertulis dalam SPLN S6.001:2008, yang
dikutip dari [IEC 870-1-3] merupakan singkatan dari Supervisory Control And
Data Acquisition, yang berarti sebuah sistem yang mengawasi dan mengendalikan
peralatan
proses yang tersebar secara geografis. Sistem SCADA terdiri dari 3
bagian utama yaitu: Master Station, Link Komunikasi Data, dan Remote Station.
Master Control mempunyai fungsi memantau (monitoring), mengendalikan
(controlling) dan mengukur (metering) data secara terpadu dalam satuan waktu
tertentu pada sistem yang luas (baca: jauh atau tele), sedangkan Remote Station
adalah stasiun yang dipantau, atau diperintah dan dipantau oleh master station,
yang terdiri dari gateway, IED (Intelligent electronic device), lokal HMI, RTU
dan meter energi analog. Blok diagram sistem SCADA dapat dilihat pada gambar
berikut.
Master Kontrol
Unit
Media Komunikasi
Remote Terminal
WIRELES
S
RTU-1
RTU-2
RS485
RJ 45
Radio Link
RTU-3
RTU-4
Gambar 2.1. Blok Diagram Sistem SCADA
2.1.2 Elemen-elemen sistem SCADA
Elemen penting pada sistem SCADA terdiri dari 3 bagian utama yaitu :
Master Control Unit , Remote Terminal Unit (RTU), dan media komunikasi data.
Dalam proyek akhir ini penulis mengambil fokus pada bagian Master Stationnya /
Master Control Unit sistem SCADA.
6
7
1). Master Control Unit
Berupa Main Komputer (Server). Main Komputer biasanya berjumlah 2
buah.
Hal ini dimaksudkan untuk membentuk dual sistem (Master/Slave)
sehingga
sistem tidak bergantung hanya pada 1 main komputer saja. Hal ini
dimungkinkan karena jika terjadi gangguan pada komputer Master, aplikasi
komputer Master secara otomatis akan stop, dan komputer Slave secara otomatis
akan menggantikannya sebagai Master sehingga availibilitas sistem secara
keseluruhan lebih terjamin. Master Control Unit terdiri atas :
a). Human Machine Interface
Human machine interface (HMI) berfungsi sebagai perantara antara
dispatcher dengan sistem komputer. HMI memudahkan dispatcher dalam
memonitor sistem tenaga listrik yang ada. Peralatan HMI diantaranya adalah:
keyboard, Video Display Unit (VDU) , recorder, printer, logger.
b). Server
Server berfungsi untuk mengolah data yang diterima dari RTU yang
dimonitor oleh dispatcher di Control Center melalui Human Machine Interface,
SCADA Energy Management System, Dispatcher Training Simulation.
c). Front End Processor
Setelah data dikirim ke Control Centre melalui media komunikasi, data ini
diterima melalui Front End komputer dan selanjutnya didistribusikan ke fungsi
pengolahan.
Fungsi utama dari Master Control Unit adalah untuk :
a). Mengatur komunikasi antara dirinya sendiri dengan RTU
b). Mengirim dan menerima data dari RTU kemudian menterjemahkan ke
dalam bentuk informasi yang dapat dimengerti oleh user
c). Mendistribusikan informasi tersebut ke HMI, Mimic Board dan Printer
Logger dan mem-file informasi tersebut
d). Memanagement semua peralatan pusat kontrol yg lain.
Selain 2 buah main komputer, biasanya Pusat Kontrol juga dilengkapi dengan
peripheral lain yang bersama-sama dengan main komputer terhubung dalam
8
suatu jaringan lokal (LAN). Perihperal tersebut adalah :
No.
1.
Tabel 2.1 Tabel Peripheral Master Control Station
Nama
Human Machine Interface
Jumlah
Fungsi
2
Sebagai antar muka antara
(HMI)
user dengan sistem
2.
Mimic Board
1
Menampilkan sistem yang
dikontrol dalam bentuk
diagram statistik display
angka hasil pengukuran
3.
Printer
3
Mencetak informasi yg
didapat, Mencetak data,
gambar & grafik
2). Remote Terminal Unit (RTU)
Agar semua kejadian yang terjadi di gardu PLN, baik Gardu Induk (GI),
Gardu Hubung (GH) dan Gardu Tengah (CDS) dapat dipantau dan dikontrol dari
Pusat Kontrol, maka disetiap gardu tersebut harus dipasang alat yang dapat
melaksanakan
fungsi
TeleSignallings
(TS),
TeleControlling
(TC)
dan
TeleMetering (TM). Alat tersebut adalah RTU (Remote Terminal Unit). RTU
sebenarnya sama saja dengan sebuah komputer, hanya saja tidak dilengkapi
dengan monitor.
Fungsi utama dari suatu RTU adalah :
a). Mendeteksi perubahan posisi saklar (Open/Close/Invalid)
b). Mengetahui besaran tegangan, arus dan frekwensi (di Gardu Induk)
c). Menerima perintah Remote Control dari Pusat Kontrol untuk membuka atau
menutup.
d). Mengirim data dan informasi ke Pusat Kontrol yang terdiri atas :Status saklar
(Open/Close/Invalid) jika ada, hasil eksekusi Remote Control, nilai besar
tegangan, arus dan frekwensi
9
3). Media Komunikasi
Media Komunikasi yaitu perangkat/sarana fisik yang menghubungkan antara
pusat kontrol dengan RTU di gardu distribusi. Pengiriman data dari pusat kontrol
ke RTU atau sebaliknya dari RTU ke pusat kontrol. Sistem komunikasi ini adalah
bagaimana dua perangkat komputer di pusat kontrol dan RTU dapat saling
dihubungkan dan dapat saling berkomunikasi satu dengan yang lainnya.
Pada awalnya, SCADA melakukan komunikasi data melalui radio, modem
atau jalur kabel serial khusus. Saat ini data-data SCADA dapat disalurkan melalui
jaringan Ethernet atau TCP/IP. Untuk alasan keamanan, jaringan komputer untuk
SCADA adalah jaringan komputer lokal (LAN - Local Area Network) tanpa harus
mengekspos data-data penting di Internet.
Komunikasi SCADA diatur melalui suatu protokol, jika jaman dahulu
digunakan protokol khusus yang sesuai dengan produsen SCADA-nya, sekarang
sudah ada beberapa standar protokol yang ditetapkan, sehingga tidak perlu
khawatir masalah kecocokan komunikasi lagi.
Karena kebanyakan sensor dan relai kontrol hanyalah peralatan listrik yang
sederhana, alat-alat tersebut tidak bisa menghasilkan atau menerjemahkan
protokol komunikasi. Dengan demikian dibutuhkan RTU yang menjembatani
antara sensor dan jaringan SCADA. RTU mengubah masukan-masukan sensor ke
format protokol yang bersangkutan dan mengirimkan ke master SCADA, selain
itu RTU juga menerima perintah dalam format protokol dan memberikan sinyal
listrik yang sesuai ke relai kontrol yang bersangkutan. Fungsi Utama media
komunikasi di SCADA ini adalah :
a). Untuk mengetahui posisi saklar (Terbuka atau Tertutup)
b). Remote Control untuk membuka/menutup saklar
c). Mengetahui besaran tegangan, arus dan frekwensi di GI
d). Mengetahui
grafik
beban/arus
atau
tegangan,
sehingga
memprakirakan beban suatu penyulang beberapa jam mendatang.
bisa
10
e). Mengetahui bila beban sudah mendekati maksimum, sehingga dapat
melakukan tindakan untuk mencegah terjadinya beban berlebih.
f). Mengetahui bila tegangan mendekati minimum atau maksimum sehingga
dapat menyesuaikan sadapan trafo.
Tele Control
- Tele Metereing
- Tele Signalling
New Event
HMI
- Tele Signalling
Change State
RTU(s)
- Tele Metereing
SERVER
- Tele Control
- Polling
Metering
Mimic Board
All Event & Status
Event Logger
Gambar 2.2 Blok Diagram Komunikasi Sistem SCADA
2.1.3 Aplikasi sistem SCADA
Biasanya, SCADA digunakan untuk melakukan proses industri yang
kompleks secara otomatis, menggantikan tenaga manusia (bisa karena dianggap
berbahaya atau tidak praktis - konsekuensi logis adalah PHK), dan biasanya
merupakan proses-proses yang melibatkan faktor-faktor kontrol yang lebih
banyak, faktor-faktor kontrol gerakan-cepat yang lebih banyak, dan lain
sebagainya, dimana pengontrolan oleh manusia menjadi tidak nyaman lagi.
Sebagai contoh, SCADA digunakan di seluruh dunia misalnya untuk:
1). Pembangkit, transmisi dan distribusi listrik: SCADA digunakan untuk
mendeteksi besarnya arus dan tegangan, pemantauan operasional circuit
breaker, dan untuk mematikan/menghidupkan the power grid;
2). Penampungan dan distribusi air, SCADA digunakan untuk pemantauan
dan pengaturan laju aliran air, tinggi reservoir, tekanan pipa dan berbagai
macam faktor lainnya.
3). Bangunan, fasilitas dan lingkungan, Manajer fasilitas menggunakan
SCADA untuk mengontrol unit-unit pendingin, penerangan, dan sistem
keamanan.
11
4). Produksi, Sistem SCADA mengatur inventori komponen-komponen,
mengatur otomasi alat atau robot, memantau proses dan kontrol kualitas.
Tentunya, masih banyak lagi aplikasi-aplikasi potensial untuk sistem
SCADA. SCADA saat ini digunakan hampir di seluruh proyek-proyek industri
dan infrastruktur umum. Intinya SCADA dapat digunakan dalam aplikasi-aplikasi
yang membutuhkan kemudahan dalam pemantauan sekaligus juga pengontrolan,
dengan
berbagai macam media antarmuka dan komunikasi yang tersedia saat ini
(misalnya, Komputer, PDA, Touch Screen, TCP/IP, wireless dan lain sebagainya).
2.1.4 SCADA pada sistem distribusi tenaga listrik
Fasilitas SCADA diperlukan untuk melaksanakan pengusahaan tenaga
listrik terutama pengendalian operasi secara realtime. Suatu sistem SCADA terdiri
dari sejumlah RTU, sebuah Master Station / Region Control Center (RCC), dan
jaringan telekomunikasi data antara RTU dan Master Station. RTU dipasang di
setiap gardu induk atau pusat pembangkit hendaknya dipantau. RTU ini bertugas
untuk mengetahui setiap kondisi peralatan tegangan tinggi melalui pengumpulan
besaran listrik, status peralatan, dan sinyal alarm yang kemudian diteruskan ke
Master Station melalui jaringan telekomunikasi data. RTU juga dapat menerima
dan melaksanakan perintah untuk merubah status peralatan tegangan tinggi
melalui sinyal-sinyal perintah yang dikirimkan master station.
Operasi pengawasan pada sistem SCADA memakai metode pemindaian
(scanning) secara berurutan dari RTU-RTU yang terdapat pada Gardu indukGardu induk. Sistem ini mampu mengontrol beberapa RTU dengan banyak
peralatan pada tiap RTU hanya dengan satu Master Station. Lebih lanjut, sistem
ini juga mampu mengirim dari jarak jauh data-data hasil pengukuran oleh RTU ke
Master Station, seperti data analog frekuensi, tegangan, daya dan besaran lain
yang dibutuhkan untuk keseluruhan operasi pengawasan
Master Station secara berurutan memindai beberapa RTU dengan
mengirimkan pesan pendek pada tiap RTU untuk mengetahui jika RTU
mempunyai informasi yang perlu dilaporkan. Jika RTU mempunyai sesuatu yang
12
perlu dilaporakan, RTU akan mengirim pesan balik pada Master Station, dan data
akan diterima dan dimasukan ke dalam memori komputer. Jika diperlukan, pesan
akan dicetak pada mesin printer di Master Station dan ditampilkan pada layar
monitor.
RTU/CDS
RTU
GARDU
DISTRIBUSICONCENTRATOR
GARDU
INDUK
MASTER SCADA
GARDU
DISTRIBUSI
RTU/CDS
GARDU
DISTRIBUSI
RTU/CDS
GARDU
DISTRIBUSI
GARDU
DISTRIBUSI
GARDU
DISTRIBUSI
GARDU
DISTRIBUSI
KONSUMEN
Gambar 2.3 Alur Informasi Sistem SCADA Distribusi Tenaga Listrik
Siklus pindai membutuhkan waktu relatif pendek, sekitar 7 detik (maksimal
10 detik ). Siklus pindai yaitu pemindaian seluruh RTU dalam sistem. Ketika
Master Station memberikan perintah kepada sebuah RTU, maka semua RTU akan
menerima perintah itu, akan tetapi hanya RTU yang alamatnya sesuai dengan
perintah itulah yang akan menjalankannya. Sistem ini dinamakan dengan sistem
polling. Pada pelaksanaan terdapat waktu tunda untuk mencegah kesalahan yang
berkaitan dengan umur data analog.
Selain dengan sistem pemindai, pertukaran data juga dapat terjadi secara
segera setelah aksi manuver terjadi (incidental) misalnya terjadi penutupan switch
Circuit Breaker oleh operator gardu induk, maka RTU secara otomatis akan
segera mengirimkan status CB di gardu induk tersebut ke Master Station.
Dispatcher akan segera mengetahui bahwa CB telah tertutup.
13
Ketika operasi dilakukan dari Master Station, pertama yang dilakukan
adalah memastikan peralatan yang dipilih adalah tepat, kemudian diikuti dengan
pemilihan operasi yang akan dilakukan. Operator pada Master Station melakukan
tindakan
tersebut erdasarkan prosedur yang disebut metode “select before execute
(SBXC)”, seperti dubawah ini:
1). Dispatcher di MTU memilih RTU.
2). Dispatcher memilih peralatan yang akan dioperasikan.
3). Dispatcher mengirim perintah.
4). RTU mengetahui peralatan yang hendak dioperasikan.
5). RTU melakukan operasi dan mengirim sinyal balik pada MTU
ditunjukan dengan penerimaan pesan pada layar monitor dan cetakan
pesan tersebut pada printer.
Jika terjadi gangguan pada RTU, pesan akan dikirim dari RTU yang
mengalami gangguan ke Master Station, dan pemindaian yang normal akan
mengalami penundaan yang cukup lama karena Master Station mendahulukan
pesan gangguan dan menyalakan alarm agar operator dapat mengambil tindakan
yang diperlukan cecepatnya. Pada saat lain, pada kebanyakan kasus, status semua
peralatan pada RTU dapat dimonitor setiap 2 detik, memberikan informasi kondisi
sistem yang terjadi pada operator di pusat kendali.
2.2 Komunikasi Data
Komunikasi data adalah merupakan bagian dari telekomunikasi yang secara
khusus berkenaan dengan transmisi atau pemindahan data dan informasi
diantara komputer-komputer dan piranti-piranti yang lain dalam bentuk
digital
yang
dikirimkan melalui media
komunikasi
data.
Data
berarti
informasi yang disajikan oleh isyarat digital. Komunikasi data merupakan
bagian vital dari suatu masyarakat informasi karena sistem ini menyediakan
infrastruktur yang memungkinkan komputer-komputer dapat berkomunikasi
satu sama lain.
14
Gambar 2.4 Dasar Komunikasi Data
Komunikasi data bisa melakukan transmisi atau proses pengiriman dan
penerimaan data dari dua atau lebih device (sumber), melalui beberapa media.
Media tersebut dapat berupa kabel koaksial, fiber optic (serat optic), microware
dan sebagainya.
Komunikasi Data saat ini menjadi bagian dari kehidupan masyarakat, karena
telah diterapkan dalam berbagai bentuk aplikasi misal: komunikasi antar komputer
yang populer dengan istilah internet, handphone ke komputer, handphone ke
handphone, komputer atau handphone ke perangkat lain misalnya printer, fax,
telepon, camera video dll.
Model Komunikasi data:
1. Komunikasi data Simplex: satu arah
Gambar 2.5 Komunikasi data Simplex
2. Komunikasi data Half Duplex: Dua arah bergantian
Gambar 2.6 Komunikasi data Half Duplex
15
3.
Komunikasi data Full Duplex: Dua arah bersamaan
Gambar 2.7 Komunikasi data Full Duplex
2.2.1 Komunikasi data UART
Ada 2 macam cara komunikasi data serial yaitu Sinkron dan Asinkron. Pada
komunikasi data serial sinkron, clock dikirimkan bersama sama dengan data
serial, tetapi clock tersebut dibangkitkan sendiri – sendiri baik pada sisi pengirim
maupun penerima. Sedangkan pada komunikasi serial asinkron tidak diperlukan
clock karena data dikirimkan dengan kecepatan tertentu yang sama baik pada
pengirim / penerima.
Pada IBM PC kompatibel port serialnya termasuk jenis asinkron. Komunikasi
data serial ini dikerjakan oleh UART (Universal Asynchronous Receiver
Transmitter). IC UART dibuat khusus untuk mengubah data parallel menjadi data
serial dan menerima data serial yang kemudian dirubah lagi menjadi data
parallel.IC UART 8250 merupakan salah satunya. Selain berbentuk IC mandiri
berbagai macam mikrokontroller juga ada yang dilengkapi dengan UART,
misalnya AT89S51/52/53 atau PIC16F877.
Pada UART, kecepatan pengiriman data (atau yang sering disebut dengan
Baud Rate) dan fase clock pada sisi transmitter dan sisi receiver harus sinkron.
Untuk itu diperlukan sinkronisasi antara Transmitter dan Receiver. Hal ini
dilakukan oleh bit “Start” dan bit “Stop”. Ketika saluran transmisi dalam keadaan
idle, output UART adalah dalam keadaan logika “1”.
Ketika Transmitter ingin mengirimkan data, output UART akan diset dulu ke
logika “0” untuk waktu satu bit. Sinyal ini pada receiver akan dikenali sebagai
sinyal “Start” yang digunakan untuk menyinkronkan fase clocknya sehingga
sinkron dengan fase clock transmitter. Selanjutnya data akan dikirimkan secara
16
serial dari bit yang paling rendah (bit 0) sampai bit tertinggi.Selanjutnya akan
dikirimkan sinyal “Stop” sebagai akhir dari pengiriman data serial.
Sebagai contoh misalnya akan dikirimkan data huruf “A” dalam format
ASCII (atau sama dengan 41 heksa atau 0100 0001).
Gambar 2.8 Contoh Pengiriman 1 byte
Kecepatan transmisi (baud rate) dapat dipilih bebas dalam rentang
tertentu.Baud rate yang umum dipakai adalah 110, 135, 150, 300, 600, 1200,
2400, dan 9600 (bit/perdertik).Dalam komunikasi data serial, baud rate dari kedua
alat yang berhubungan harus diatur pada kecepatan yang sama. Selanjutnya harus
ditentukan panjang data (6,7 atau 8 bit), paritas (genap, ganjil, atau tanpa paritas),
dan jumlah bit “Stop” (1, 1 ½ , atau 2 bit).
Untuk dapat menggunakan port serial harus diketahui dahulu alamat dari port
serial tersebut. Biasanya tersedia dua port serial pada CPU, yaitu COM1 dan
COM2. Base Address COM1 biasanya 1016 (3F8h) dan COM2 biasanya 760
(2F8h). Alamat tersebut adalah alamat yang biasa digunakan, tergantung
komputer yang digunakan.Tepatnya kita bisa melihat pada peta memori tempat
menyimpan alamat tersebut, yaitu memori 0000.0400h untuk COM1 dan
0000.0402h untuk COM2.
Gambar 2.9 Nama Register – Register UART
17
2.2.2 Keterangan Register
1). RX Buffer, digunakan untuk menampung dan menyimpan data.
2). TX Buffer, digunakan untuk menampung dan menyimpan data yang akan
dikirim ke port serial.
3). Baud Rate Divisor Latch LSB, digunakan untuk menampung byte bobot
rendah untuk pembagi clock pada IC UART agar didapat baud rate yang
tepat.
4). Baud Rate Divisor Latch MSB, digunakan untuk menampung byte bobot
tinggi untuk pembagi clock pada IC UART sehingga total angka pembagi
adalah 4 byte yang dapat dipilih dari 0001h sampai FFFFh.
Berikut adalah tabel angka pembagi yang sering digunakan :
Gambar 2.10 Komunikasi data Half Duplex
Sebagai catatan, register Baud Rate Divisor Latch ini bisa diisi jika bit 7 pada
register Line Control Register diisi 1.
2.2.3 Pemrograman Port Serial Komputer
Port serial sering digunakan untuk interfacing komputer dan mikrokontroler,
karena kemampuan jarak pengiriman data dibandingkan port paralel. Berikut
contoh
program assembly untuk komunikasi serial antara 2 PC. Untuk
komunikasi ini, yang perlu dihubungkan :
1). Pin TxD ke pin RxD computer lain
2). Pin RXD dihubungkan ke pin TxD komputer lain
3). RTS dan CTS dihubung singkat
18
4). DSR dan DTR dihubung singkat
5). GND dihubungkan ke GND komputer lain
Komunikasi yang dilakukan secara serial mempunyai keuntungan dari sisi
pengkabelan, karena hanya memerlukan tiga buah kabel, TX, RX dan Ground.
2.2.4 Alasan Penggunaan Port Serial
Dibandingkan dengan menggunakan port parallel penggunaan port serial
terkesan lebih rumit. Berikut adalah keuntungan penggunaan port serial
dibandingkan penggunaan port parallel.
1). Pada komunikasi dengan kabel yang panjang, masalah cable loss tidak
akan menjadi masalah besar daripada menggunakan kabel parallel. Port
serial mentransmisikan “1” pada level tegangan -3 Volt sampai -25
Volt dan “0” pada level tegangan +3 Volt sampai +25 Volt, sedangkan
port parallel mentransmisikan “0” pada level tegangan 0 Volt dan “1”
pada level tegangan 5 Volt.
2). Dibutuhkan jumlah kabel yang sedikit, bisa hanya menggunakan 3
kabel yaitu saluran Transmit Data, saluran Receive Data, dan saluran
Ground (Konfigurasi Null Modem)
3). Saat ini penggunaan mikrokontroller semakin populer. Kebanyakan
mikrokontroller sudah dilengkapi dengan SCI (Serial Communication
Interface) yang dapat digunakan untuk komunikasi dengan port serial
komputer.
2.3
Bahasa Pemograman Basic
2.3.1 Tipe data
Tipe data merupakan bagian program yang paling penting karena tipe data
mempengaruhi setiap instruksi yang akan dilaksanakan oleh komputer. Pemilihan
tipe data yang tepat akan membuat operasi data menjadi lebih efesien dan efektif.
Pada tabel 2.2 merupakan tipe-tipe data yang biasa digunakan:
19
Tabel 2.2 Tipe-tipe Data
No
Tipe
Jangkauan
1
Bit
0 atau 1
2
Byte
0 – 255
3
Integer
-32,768 – 32,678
4
Word
0 – 65535
5
Long
-2147483648 – 2147483648
6
Single
1,5 x 10 -45 – 3,4 x 10 38
7
Double
5,0 x 10 -324 – 1,7 x 10 308
8
String
> 254 byte
2.3.2 Konstanta
Konstanta merupakan suatu nilai yang tidak dapat diubah selama proses
program berlangsung. Konstanta nilainya selalu tetap dan harus didefinisikan
terlebih dahulu di awal program. Konstanta dapat bernilai integer, pecahan,
karakter, dan string.
2.3.3 Variabel
Variabel adalah suatu pengenal (identifier) yang digunakan untuk mewakili
suatu nilai tertentu di dalam proses program. Nilai dari suatu variabel bisa diubahubah sesuai dengan kebutuhan. Tetapi programmer tidak bisa terlalu bebas untuk
memberi nama pada sebuah variabel.
Nama dari suatu variabel dapat ditentukan sendiri oleh programmer dengan
aturan sebagai berikut:
1). Terdiri dari gabungan huruf dan angka dengan karakter pertama harus
berupa huruf.
2). Panjangnya maksimum 32 karakter dan tidak boleh mengandung spasi.
20
3). Tidak boleh mengandung simbol-simbol khusus kecuali garis bawah.
Yang termasuk simbol khusus yang tidak diperbolehkan antara lain: $,
?, %, #, !, &, *, (, ), -, +, =, dan sebagainya.
2.3.4 Deklarasi
Deklarasi diperlukan bila kita akan menggunakan pengenal (identifier) dalam
program. Identifier dapat berupa variabel, konstanta, dan fungsi. Macam-macam
deklarasi antara lain:
1). Deklarasi Variabel
Bentuk umum pendeklarasian suatu variable adalah:
Dim Nama_variable As Nama_tipe;
Contoh:
Dim x As Integer
„Deklarasi x bertipe integer‟
2). Deklarasi Konstanta
Dalam Bahasa Basic, konstanta dideklarasikan secara langsung.
Contoh:
S = “Hello world”
„Assign string‟
3). Deklarasi Fungsi
Fungsi merupakan bagian yang terpisah dari program dan dapat diaktifkan
atau dipanggil dimanapun di dalam program. Fungsi dalam bahasa basic ada yang
sudah disediakan sebagai fungsi pustaka seperti print, input, data, dan untuk
menggunakannya tidak perlu dideklarasikan. Sedangkan fungsi yang perlu
dideklarasikan terlebih dahulu adalah fungsi yang dibuat oleh pemrogram. Bentuk
umum deklarasi sebuah fungsi adalah:
TEST [( [BYREF/BYVAL] var as type)] As type
2.3.5 Penyeleksian kondisi
Penyeleksian kondisi digunakan untuk mengarahkan perjalanan suatu proses.
Fungsi penyeleksian kondisi mempunyai arti penting dalam penyusunan bahasa
basic terutama untuk program yang kompleks.
Penyeleksian kondisi terdiri atas:
21
1). Struktur Kondisi “IF...THEN”
Sturktur if…then dibentuk dari pernyataan if dan sering digunakan untuk
menyeleksi suatu kondisi tunggal. Bila proses yang diseleksi terpenuhi atau
bernilai
benar, maka pernyataan yang ada dalam blok if akan diproses dan
dikerjakan. Bentuk umum struktur kondisi if adalah:
If (kondisi) then (pernyataan);
2). Struktur kondisi “IF…ELSE…”
Dalam struktur kondisi if…else… minimal terdapat dua pernyataan. Jika
kondisi yang diperiksa bernilai benar atau terpenuhi maka pernyataan pertama
yang akan dilaksanakan dan jika kondisi yang diperiksa bernilai salah, maka
pernyataan kedua yang dilaksanakan. Bentuk umumya adalah sebagai berikut:
If (kondisi) pernyataan-1
else pernyataan-2
3). Struktur kondisi “SWITCH...CASE...”
Struktur kondisi switch…case…default dapat digunakan untuk penyeleksian
kondisi dengan kemungkinan terjadi cukup banyak. Struktur ini akan
melaksanakan salah satu dari beberapa pernyataan „case‟ tergantung nilai kondisi
yang ada dalam switch. Selanjutnya proses diteruskan hingga ditemukan
pernyataan „break‟. Jika tidak ada nilai pada case yang sesuai dengan nilai
kondisi, maka proses akan diteruskan kepada pernyataan yang ada dibawah
default. Bentuk umum dari struktur kondisi ini adalah:
Select case (kondisi)
{
case 1 : pernyataan-1;
break;
case2 : pernyataan-2;
break;
………
case n : pernyataan-n;
22
break;
default : pernyataan-m
}
4). Perulangan
Dalam bahasa basic tersedia suatu fasilitas yang digunakan untuk melakukan
proses yang berulang-ulang sesuai keinginan kita. Struktur perulangan dalam
bahasa basic mempunyai bentuk bermacam-macam, antara lain:
a). Struktur perulangan “WHILE”
Perulangan while banyak digunakan pada program yang terstruktur.
Perulangan ini banyak digunakan bila jumlah perulangannya belum diketahui.
Proses perulangan akan terus berlanjut selama kondisinya bernilai benar (true)
dan akan berhenti bila kondisinya bernilai salah.
b). Struktur perulangan “DO…LOOP”
Struktur perulangan do…loop digunakan untuk proses perulangan sekurangkurangnya satu kali perulangan.
c). Struktur perulangan “FOR”
Struktur perulangan for biasa digunakan utnuk mengulang suatu proses yang
telah diketahui jumlah perulangannya. Dari segi penulisan, struktur perulangan for
lebih efisien karena susunannya lebih dan sederhana. Bentuk umum perulangan
for adalah sebagai berikut:
FOR var = start TO end [STEP value]
2.3.6 Microsoft Visual Basic 6.0
Visual Basic merupakan salah satu Development Tool yaitu alat bantu untuk
membuat berbagai macam program komputer, khususnya yang menggunakan
sistem operasi Windows yang menawarkan Integrated Development Environment
(IDE) visual untuk membuat program perangkat lunak berbasis sistem operasi
Microsoft Windows dengan menggunakan model pemrograman (COM). Bahasa
pemrograman Visual Basic, yang dikembangkan oleh Microsoft sejak tahun 1991,
merupakan pengembangan dari pendahulunya yaitu bahasa pemrograman BASIC
23
(Beginner‟s All-purpose Symbolic Instruction Code) yang dikembangkan pada era
1950-an.
Ledakan pemakaian Visual Basic ditandai dengan kemampuan Visual
untuk dapat berinteraksi dengan aplikasi lain di dalam sistem operasi
Basic
Windows
dengan
komponen
ActiveX
Control.
Dengan
komponen
ini
memungkinkan penguna untuk memanggil dan menggunakan semua model data
yang ada di dalam sistem operasi windows. Hal ini juga ditunjang dengan teknik
pemrograman di dalam Visual Basic yang mengadopsi dua macam jenis
pemrograman
yaitu Pemrograman Visual dan Object Oriented Programming
(OOP).
Visual Basic 6.0 sebetulnya perkembangan dari versi sebelumnya dengan
beberapa penambahan komponen yang sedang tren saat ini, seperti kemampuan
pemrograman internet dengan DHTML (Dynamic HyperText Mark Language),
dan beberapa penambahan fitur database dan multimedia yang semakin baik.
Hingga akhirnya Visual Basic berkembang menjadi beberapa versi, sampai yang
terbaru, yaitu Visual Basic 2010. Namun bagaimanapun juga Visual Basic 6.0
tetap menjadi versi yang paling populer dan merupakan pilihan pertama di dalam
membuat program aplikasi yang ada di pasar perangkat lunak nasional karena
mudah dalam membuat programnya dan ia tidak menghabiskan banyak memori
serta kemudahan dalam melakukan proses development dari aplikasi yang dibuat.
Itulah mengapa penulis lebih memilih menggunakan Visual Basic 6.0 dibanding
versi terbarunya.
Gambar 2.11 Tampilan awal Visual Basic 6.0 Professional
24
Dalam proses programming VB memiliki setidaknya dua buah form utama,
satu sebagai form interface yang berbasis grafik, dan yang lain sebagai form
source
codenya.
Gambar 2.12 Tampilan form source code Visual Basic 6.0 Professional
Berikut ini adalah source code program sederhana yang menampilkan
message box yang bertuliskan “Hello, World!”, tampilnnya sebagai berikut,
Private Sub Form_Load()
' Execute a simple message box that will say "Hello, World!"
MsgBox "Hello, World!"
End Sub
Untuk menjalankan program klik ikon Run () pada toolbar atau pilih menu
[Run] >> [Start], atau dengan tekan tombol [F5], dan hasilnya bisa dilihat pada
gambar 2.38 dibawah.
Gambar 2.13 Tampilan Execute program message box yang bertuliskan Hello, World!
25
Kemudian beberapa properti penting yang akan digunakan pada pembahasan
bab berikutnya diantaranya adalah.
1). MSComm
Gambar 2.14 Icon Properti MSComm
Properti ini digunakan untuk menjalin komunikasi antara PC (Personal
Computer) dengan menggunakan fasilitas VB6, dengan peralatan diluar baik itu
melalui Hub RJ45, BD15, DB25 (di komputer konvensional) ataupun melalui
USB. Dengan mengatur nomor port yang ingin disambungkan dan menset dimana
divais yang ingin dihubung ke PC dipasang, maka akan terjalin komunikasi
setelah Properti MSComm (ke-n). Portopen di program sama dengan True.
2). MSFlexGrid
Gambar 2.15 Icon Properti MSFlexGrid
Properti ini digunakan sebagai fasilitas record data yang masuk melalui port
input MSComm, sehingga data yang masuk akan dikelompokkan setelah melalui
beberapa fasilitas properti lain dan menempati grid-grid yang telah diberi label
sesuai dengan urutannya.
3). ImageList
Gambar 2.16Icon Properti ImageList
26
Properti ini penggunaannya lebih kearah visualisasi, ImageList ini dapat
memanggil gambar dalam jumlah yang ditentukan dan menampilkannya secara
berurutan. Adapun setting dari interval penampilan gambarnya diatur oleh
properti
lain.
4). CommandButton
Gambar 2.17 Icon Properti CommandButton
Properti CommandButton ini adalah salah satu objek yang paling vital dalam
melakukan fungsi komunikasi secara interface, cara kerajanya adalah dengan
meng-klik CommandButton tersebut pada saat program dalam keadaan running.
Adapun follow up dari meng-klik tombol ini bergantung pada source code yang
tuliskan ke dalamnya.
5). Timer
Gambar 2.18 Icon Properti Timer
Properti timer ini sangat penting dalam melaksanakan fungsi timing, terutama
untuk kerja program yang ingin dibuat bekerja otomatis. Dengan meletakkan
source code kerja dari properti lain, di dalam properti Timer ini, dan mengatur
interval kerja Timer, dalam tenggang waktu (interval) yang diatur sebelumnya,
maka kerja properti yang disimpan di dalam properti Timer ini akan bekerja dan
berulang secara otomatis sesuai setting interval kerja.
Download